File Information hashes and primary classification
File name
3c47eccd8fc8d9a9ce087c5ff5f9dce08d5dd15123b84a44301ca98b6a4f797d
File size
7.4 MiB
Architecture
X86
- MD5
- 024167c8527d96ebbb87014e191023d4
- SHA1
- 7088b2676ee2e21244846435d71c939f2d661940
- SHA256
- 3c47eccd8fc8d9a9ce087c5ff5f9dce08d5dd15123b84a44301ca98b6a4f797d
- TLSH
- T14e768c9ee622c205fc1e1c751c756c8c2ca421a862e1fedd4ab4380d55b1e7f4afd29e
- Imphash
- 9db8fb801c5bd8b1a1aa19f58cc65475
- Rich header
- b76d6bc4f64ed34ad62170e8b5a115f0
Metadata parser-extracted fields
YARA Signatures 5 matching rules
Type.UNCOMMON
persistence
AutorunKey
lateral movement
RunShell
Type.INFO
compiler
Rust
MSVC_2022_linker
MSVS2022 v17.14.2-pre.1.0
Kesakode similarity verdict
DustyHammock
18.6%
Spankrat
0.6%
13 malware hits
17 library hits
666 clean hits
Anomalies signals worth reviewing
entropy:
BigBufferNoXrefMediumToHighEntropy
UnknownOverlayMediumToHighEntropy
strings:
BigStringHiScore
DynamicString
FewStrings
HugeStringBase64
StringBase64
time:
DebugTimeDifferentThanTimeDateStamp
headers:
GuiSubsystemNoWindowApi
WeirdDebugInfoType
code:
HighXrefLoopingFunction
ManyHighValueImmediates
ManyUniqueImmediateBytes
SpaghettiFunction
StackArrayInitialisationX86
XorInLoop
integrity:
InvalidChecksum
rich:
RichUnknownTool
sections:
SectionNameUnknown
Constants identified constants and patterns
crypto:
B64EncodeTable__8_byt_ASC_64
1
base64_map__8_byt_80
1
registry:
HKEY_CURRENT_USER
4
HKEY_LOCAL_MACHINE
2
autorun
1
HKEY_USERS
1
runtime:
msvc_locale
2
msvc_date
1
Strings highest-value extracted strings
| Address | String | Refs | Encoding | Score |
|---|---|---|---|---|
| 0xB19A13 | LOCALAPPDATAMicrosoftWindowsMediaC:\Windows\Temp\WindowsMediaregaddHKCU\Software\Microsoft\Windows\CurrentVersion\Run... | 1 | ASCII | 243 |
| 0x40C6CC | 0000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000003000000A4C3B... | 1 | BINARY | 216 |
| 0x40C852 | 0100000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000003000000A4C3B... | 1 | BINARY | 211 |
| 0x42196A | 060000000000000006000000000000000600000000000000000000000000000000000000000000000000000004000000000000000000008000000... | 1 | BINARY | 211 |
| 0xB1D59C | \cmd.exe | 4 | ASCII | 206 |
| 0x421634 | 2D362799AB4DC06407E23358BE7E902C | 1 | BINARY | 200 |
| 0x4110B4 | 6D5DCBD62C50EB637841A657711B8BB9 | 1 | BINARY | 199 |
| 0xB1D215 | m | 2 | ASCII | 181 |
| 0x814200 | mKioqK/uXl5v7j+vnV6ebr+fm5uIqKiorjqrS3qrqqrKyq46q2quPu6/7rp7T6yP/+/uXkw+Ts5ae059XjyeX/5P6Kiub62O/p/oqK4u7piq+6uO6wr7q... | 0 | ASCII | 164 |
| 0xB1C6A0 | note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.\n__rust_end_short_backtrace__... | 1 | ASCII | 163 |
| 0x812290 | Xl+u/kioqKiun+5tX64+Tt5O/+iun+5tXk7/795fjh+YqKiorp/ubV6Pjj7u3v5Ovn74qK6f7m1fjv5+X+7+Tr5++Kiun+5tXk7/7k6+fviun+5tXj5Pn... | 0 | ASCII | 162 |
| 0xB1CED8 | NTDLL.DLL | 1 | UTF16 | 162 |
| 0xB1ED54 | mscoree.dll | 1 | UTF16 | 154 |
| 0xB1B984 | assertion failed: match track_edge_idx {\n LeftOrRight::Left(idx) => idx <= old_left_len,\n LeftOrRight::Right(... | 2 | ASCII | 153 |
| 0xB1BD14 | AccessErrorcannot access a Thread Local Storage value during or after destruction: | 1 | ASCII | 152 |
| 0xB1B290 | {size limit reached}`fmt::Error` from `SizeLimitedFmtAdapter` was discarded | 1 | ASCII | 152 |
| 0xB1C788 | PATHfatal runtime error: thread local panicked on drop, aborting\n | 1 | ASCII | 151 |
| 0xB1BB84 | Utf8Errorvalid_up_toerror_lenNoneSomeTryFromIntError: | 1 | ASCII | 150 |
| 0xB1B190 | {invalid syntax}{recursion limit reached}?'for<> , []::{closureshim# as mut const ; dyn + unsafe extern " | 26 | ASCII | 148 |
| 0xB1B49C | 0123456789abcdef | 24 | ASCII | 148 |
| 0xB1B7FC | assertion failed: edge.height == self.node.height - 1 | 1 | ASCII | 147 |
| 0xB1DA10 | dbghelp.dll | 1 | ASCII | 147 |
| 0xB1B6D8 | assertion failed: edge.height == self.height - 1| | 1 | ASCII | 146 |
| 0xB1A240 | ==assertion `left right` failed\n left: \n right: | 1 | ASCII | 144 |
| 0xB1C346 | a formatting trait implementation returned an error when the underlying stream did notF | 2 | ASCII | 143 |
| 0xB1B8F8 | assertion failed: old_left_len + count <= CAPACITY | 1 | ASCII | 143 |
| 0xB1B844 | assertion failed: old_right_len + count <= CAPACITY | 1 | ASCII | 142 |
| 0xB1B888 | assertion failed: old_left_len >= count | 1 | ASCII | 142 |
| 0xB1CB88 | Local\RustBacktraceMutex00000000 | 1 | ASCII | 142 |
| 0xB1AFB4 | `fmt::Error`s should be impossible without a `fmt::Formatter` | 2 | ASCII | 141 |
| 0xB1A208 | panic in a function that cannot unwind | 1 | ASCII | 141 |
| 0xB1D400 | \\?\UNC\ | 1 | UTF16 | 141 |
| 0xB1BA24 | assertion failed: new_left_len <= CAPACITY | 1 | ASCII | 140 |
| 0xB1B93C | assertion failed: old_right_len >= count| | 1 | ASCII | 140 |
| 0xB1FC40 | api-ms-win-core-localization-obsolete-l1-2-0 | 1 | UTF16 | 139 |
| 0xB1D924 | assertion failed: is_unlocked(state) | 1 | ASCII | 139 |
| 0xB1FE30 | api-ms-win-security-systemfunctions-l1-1-0 | 1 | UTF16 | 138 |
| 0xB1DADF | SymGetLineFromInlineContextW | 1 | ASCII | 138 |
| 0xB1A460 | [...]begin <= end ( <= ) when slicing ``e | 1 | ASCII | 137 |
| 0xB1B8C0 | internal error: entered unreachable code| | 14 | ASCII | 137 |
| 0xB1CA08 | Box<dyn Any>aborting due to panic at | 1 | ASCII | 137 |
| 0xB1B770 | assertion failed: self.height > 0 | 1 | ASCII | 137 |
| 0xB1DAFC | SymAddrIncludeInlineTrace | 1 | ASCII | 137 |
| 0xB1D5E4 | \\?\UNC | 1 | UTF16 | 137 |
| 0xB1BAF0 | assertion failed: self.is_char_boundary(new_len)/rustc/1159e78c4747b02ef996e55082b704c09b970588\library\alloc\src\raw... | 1 | ASCII | 136 |
| 0xB1FED0 | ext-ms-win-ntuser-windowstation-l1-1-0 | 1 | UTF16 | 136 |
| 0xB1C488 | ..extension cannot contain path separators: | 2 | ASCII | 136 |
| 0xB1FDE0 | api-ms-win-rtcore-ntuser-window-l1-1-0 | 1 | UTF16 | 135 |
| 0xB1D3C4 | \\?\ | 2 | UTF16 | 135 |
| 0xB1FCA0 | api-ms-win-core-processthreads-l1-1-2 | 1 | UTF16 | 134 |
| 0xB2003C | AppPolicyGetProcessTerminationMethod | 2 | ASCII | 134 |
| 0xB1DA6B | EnumerateLoadedModulesW64 | 1 | ASCII | 134 |
| 0xB1B2EC | SizeLimitExhausted/rustc/1159e78c4747b02ef996e55082b704c09b970588\library\alloc\src\collections\btree\navigate.rs | 1 | ASCII | 133 |
| 0xB1DA59 | SymSetSearchPathW | 1 | ASCII | 133 |
| 0xB1BFC8 | entity not foundpermission deniedconnection refusedconnection resethost unreachablenetwork unreachableconnection abor... | 1 | ASCII | 132 |
| 0xB1FBF8 | api-ms-win-core-localization-l1-2-1 | 1 | UTF16 | 132 |
| 0xB1FF58 | api-ms-win-appmodel-runtime-l1-1-2 | 1 | UTF16 | 132 |
| 0xB1B4CC | called `Result::unwrap()` on an `Err` value | 4 | ASCII | 132 |
| 0xB1DAC9 | SymFromInlineContextW | 1 | ASCII | 132 |
| 0xB1FFB0 | ext-ms- | 1 | UTF16 | 132 |
| 0xB1B7A4 | assertion failed: src.len() == dst.len()| | 6 | ASCII | 131 |
| 0xB1CC08 | assertion failed: len >= 0 | 1 | ASCII | 131 |
| 0xB1DA47 | SymGetSearchPathW | 1 | ASCII | 131 |
| 0xB1C678 | stack backtrace:\n | 1 | ASCII | 131 |
| 0xB1B060 | internal error: entered unreachable code: str::from_utf8() = was expected to have 1 char, but chars were found` | 1 | ASCII | 130 |
| 0xB1EC9C | InitializeCriticalSectionEx | 2 | ASCII | 130 |
| 0xB1DA91 | SymFunctionTableAccess64 | 1 | ASCII | 130 |
| 0xB1D121 | SetThreadDescription | 1 | ASCII | 130 |
| 0xB1DB16 | SymQueryInlineTrace | 1 | ASCII | 130 |
| 0xB1FE88 | ext-ms-win-ntuser-dialogbox-l1-1-0 | 1 | UTF16 | 129 |
| 0xB1FAD0 | api-ms-win-core-datetime-l1-1-1 | 1 | UTF16 | 129 |
| 0xB1E1B8 | Unknown exception | 1 | ASCII | 129 |
| 0xB1A2E0 | {\n,\n(\n0001020304050607080910111213141516171819202122232425262728293031323334353637383940414243444546474849505... | 2 | ASCII | 128 |
| 0xB2515A | api-ms-win-core-synch-l1-2-0.dll | 1 | ASCII | 128 |
| 0xB1D53C | .exeprogram not found | 1 | ASCII | 128 |
| 0xB1BE78 | mainmain | 4 | ASCII | 128 |
| 0xB1CC64 | NotFoundPermissionDeniedConnectionRefusedConnectionResetHostUnreachableNetworkUnreachableConnectionAbortedNotConnecte... | 3 | ASCII | 127 |
| 0xB1FD28 | api-ms-win-core-sysinfo-l1-2-1 | 1 | UTF16 | 127 |
| 0xB1EBAC | api-ms-win-core-fibers-l1-1-1 | 1 | UTF16 | 127 |
| 0xB1ED6C | CorExitProcess | 1 | ASCII | 127 |
| 0xB1FCEC | api-ms-win-core-string-l1-1-0 | 1 | UTF16 | 126 |
| 0xB1FB10 | api-ms-win-core-fibers-l1-1-2 | 1 | UTF16 | 126 |
| 0xB1FD68 | api-ms-win-core-winrt-l1-1-0 | 1 | UTF16 | 126 |
| 0xB22238 | CONOUT$ | 1 | UTF16 | 126 |
| 0xB1A153 | RefCell already borrowedcalled `Option::unwrap()` on a `None` valuelibrary\core\src\panicking.rs | 1 | ASCII | 125 |
| 0xB1DAAA | SymGetModuleBase64 | 1 | ASCII | 125 |
| 0xB1DA2A | SymSetOptions | 1 | ASCII | 125 |
| 0xB1DA85 | StackWalk64 | 1 | ASCII | 125 |
| 0xB1DABD | StackWalkEx | 1 | ASCII | 125 |
| 0xB1D040 | main | 1 | UTF16 | 125 |
| 0xB1D9A0 | fatal runtime error: the global allocator may not use TLS with destructors, aborting\n | 1 | ASCII | 124 |
| 0xB1C904 | note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace\n | 1 | ASCII | 124 |
| 0xB1BDB0 | RUST_MIN_STACKfatal runtime error: something here is badly broken!, aborting\n | 1 | ASCII | 124 |
| 0xB1B100 | boolcharstri8i16i32i64i128isizeu8u16u32u64u128usizef32f64!_... | 1 | ASCII | 124 |
| 0xB1FDA4 | api-ms-win-core-xstate-l2-1-0 | 1 | UTF16 | 124 |
| 0xB1AD88 | EmptyInvalidDigitPosOverflowNegOverflowZeroParseIntError | 1 | ASCII | 124 |
| 0xB1FB84 | api-ms-win-core-file-l1-2-2 | 1 | UTF16 | 124 |
| 0xB1EC38 | api-ms- | 2 | UTF16 | 124 |
| 0xB2560A | ntdll.dll | 1 | ASCII | 124 |
| 0xB19DF8 | Impossible: must only have 0 to 8 input bytes in last chunk, with no invalid lengths | 1 | ASCII | 123 |
| 0xB1D717 | Windows stdio in console mode does not support writing non-UTF-8 byte sequences | 1 | ASCII | 123 |
| 0xB1FB4C | api-ms-win-core-file-l1-2-4 | 1 | UTF16 | 123 |
| 0xB1FBBC | api-ms-win-core-file-l2-1-4 | 1 | UTF16 | 123 |
| 0xB1ABC0 | copy_from_slice: source slice length () does not match destination slice length ( | 1 | ASCII | 122 |
| 0xB1DA38 | SymInitializeW | 1 | ASCII | 122 |
| 0xB1DA1C | SymGetOptions | 1 | ASCII | 122 |
| 0xB1C95C | <unnamed> | 1 | ASCII | 122 |
| 0xB1D118 | kernel32 | 1 | ASCII | 122 |
| 0xB1B20C | " fn( -> = falsetrue{ { }0x | 1 | ASCII | 121 |
| 0xB20024 | LocaleNameToLCID | 2 | ASCII | 121 |
| 0xB1FFC4 | AreFileApisANSI | 2 | ASCII | 121 |
| 0xB1D560 | exe\\.\NUL | 5 | ASCII | 121 |
| 0xB1D794 | Unexpected number of bytes for incomplete UTF-8 codepoint. | 1 | ASCII | 120 |
| 0xB1CA48 | \nthread panicked while processing panic. aborting.\n | 1 | ASCII | 120 |
| 0xB1EC64 | FlsFree | 2 | ASCII | 120 |
| 0xB1BE26 | failed to generate unique thread ID: bitspace exhausted | 1 | ASCII | 119 |
| 0xB1E1D8 | bad exception | 1 | ASCII | 119 |
| 0xB1EC50 | FlsAlloc | 2 | ASCII | 119 |
| 0xB1B718 | internal error: entered unreachable code: empty internal node | 1 | ASCII | 118 |
| 0xB1C768 | <unknown> | 3 | ASCII | 118 |
| 0xB1D29C | Windows file names may not contain `"` or end with `\` | 1 | ASCII | 117 |
| 0xB1CA94 | thread caused non-unwinding panic. aborting.\n | 1 | ASCII | 117 |
| 0xB1FFF4 | FlsGetValue2 | 2 | ASCII | 117 |
| 0xB1EC88 | FlsSetValue | 2 | ASCII | 117 |
| 0xB1EC74 | FlsGetValue | 2 | ASCII | 117 |
| 0xB1EF78 | ja-JP | 3 | UTF16 | 117 |
| 0xB1EF90 | ko-KR | 3 | UTF16 | 117 |
| 0xB1B3A9 | (): /rustc/1159e78c4747b02ef996e55082b704c09b970588\library\core\src\str\pattern.rs | 3 | ASCII | 115 |
| 0xB1EBE8 | api-ms-win-core-synch-l1-2-0 | 2 | UTF16 | 115 |
| 0xB1B23C | .llvm./rust/deps\rustc-demangle-0.1.25\src\lib.rs | 1 | ASCII | 115 |
| 0xB1BE9C | RUST_BACKTRACElibrary\std\src\sys_common\wtf8.rs | 1 | ASCII | 115 |
| 0xB1E9D4 | `eh vector vbase copy constructor iterator' | 1 | ASCII | 115 |
| 0xB19B4C | internal error: entered unreachable code: | 1 | ASCII | 115 |
| 0xB1EA64 | `vector vbase copy constructor iterator' | 1 | ASCII | 115 |
| 0xB1CFC4 | \??\PIPE\ | 1 | UTF16 | 115 |
| 0xB255B0 | KERNEL32.dll | 1 | ASCII | 115 |
| 0xB1B024 | punycode{-0 | 1 | ASCII | 115 |
| 0xB1D084 | strings passed to WinAPI cannot contain NULs | 1 | ASCII | 114 |
| 0xB1D888 | Once instance has previously been poisoned | 1 | ASCII | 114 |
| 0xB1EA90 | `managed vector copy constructor iterator' | 1 | ASCII | 114 |
| 0xB1BCB0 | too many running threads in thread scope | 1 | ASCII | 114 |
| 0xB1C3C4 | advancing io slices beyond their length | 1 | ASCII | 114 |
| 0xB1E868 | `eh vector vbase constructor iterator' | 1 | ASCII | 114 |
| 0xB1FFDC | CompareStringEx | 2 | ASCII | 114 |
| 0xB1A4A8 | is not a char boundary; it is inside (bytes ) of ` | 1 | ASCII | 113 |
| 0xB1E95C | `managed vector constructor iterator' | 1 | ASCII | 113 |
| 0xB1E7E4 | `vector vbase constructor iterator' | 1 | ASCII | 113 |
| 0xB1E9AC | `eh vector copy constructor iterator' | 1 | ASCII | 112 |
| 0xB1E984 | `managed vector destructor iterator' | 1 | ASCII | 112 |
| 0xB1E8D8 | `local vftable constructor closure' | 1 | ASCII | 112 |
| 0xB1BF30 | failed to write the buffered data | 1 | ASCII | 112 |
| 0xB1A1C4 | index out of bounds: the len is but the index is | 1 | ASCII | 111 |
| 0xB1D818 | Unexpected error in MultiByteToWideChar | 1 | ASCII | 111 |
| 0xB1EA40 | `vector copy constructor iterator' | 1 | ASCII | 111 |
| 0xB1E824 | `eh vector constructor iterator' | 1 | ASCII | 111 |
| 0xB2000C | LCMapStringEx | 2 | ASCII | 111 |
| 0xB1C404 | advancing IoSlice beyond its length | 1 | ASCII | 110 |
| 0xB1AB8C | slice index starts at but ends at | 1 | ASCII | 110 |
| 0xB1C8A8 | memory allocation of bytes failed\n | 1 | ASCII | 110 |
| 0xB1C848 | lies between surrogate codepoints | 1 | ASCII | 110 |
| 0xB1E848 | `eh vector destructor iterator' | 1 | ASCII | 110 |
| 0xB1E7A4 | `vector constructor iterator' | 1 | ASCII | 110 |
| 0xB1EF84 | zh-CN | 3 | UTF16 | 110 |
| 0xB1EF9C | zh-TW | 3 | UTF16 | 110 |
| 0xB1D388 | failure getting env string from OS: | 1 | ASCII | 109 |
| 0xB1E764 | `default constructor closure' | 1 | ASCII | 109 |
| 0xB1E7C4 | `vector destructor iterator' | 1 | ASCII | 109 |
| 0xB2224C | log10 | 3 | ASCII | 109 |
| 0xB2226C | sqrt | 2 | ASCII | 109 |
| 0xB2225C | asin | 2 | ASCII | 109 |
| 0xB22264 | acos | 2 | ASCII | 109 |
| 0xB1D8BC | too many active read locks on RwLock | 1 | ASCII | 108 |
| 0xB1D48C | comparing environment keys failed: | 1 | ASCII | 108 |
| 0xB1BF93 | failed to write whole buffer | 1 | ASCII | 108 |
| 0xB1E5B8 | __preserve_none | 1 | ASCII | 108 |
| 0xB1CF78 | (FormatMessageW() returned invalid UTF-16) | 1 | ASCII | 107 |
| 0xB1D270 | batch file arguments are invalidp | 1 | ASCII | 107 |
| 0xB1D0EC | nul byte found in provided data | 1 | ASCII | 107 |
| 0xB1E890 | `copy constructor closure' | 1 | ASCII | 107 |
| 0xB1FF34 | kernelbase | 1 | UTF16 | 107 |
| 0xB1EA1C | `dynamic atexit destructor for ' | 1 | ASCII | 106 |
| 0xB1D510 | program path has no file name | 1 | ASCII | 106 |
| 0xB1E784 | `scalar deleting destructor' | 1 | ASCII | 106 |
| 0xB1E744 | `vector deleting destructor' | 1 | ASCII | 106 |
| 0xB1E5C8 | __clrcall | 1 | ASCII | 106 |
| 0xB1BEFC | WouldBlockfailed to create whole tree | 3 | ASCII | 105 |
| 0xB1C87C | is not a codepoint boundary | 1 | ASCII | 105 |
| 0xB198D3 | ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/ | 0 | ASCII | 104 |
| 0xB1D4B8 | library\std\src\sys\process\windows.rs | 10 | ASCII | 104 |
| 0xB1E93C | `placement delete[] closure' | 1 | ASCII | 104 |
| 0xB1EB4C | Class Hierarchy Descriptor' | 1 | ASCII | 104 |
| 0xB1EABC | `local static thread guard' | 1 | ASCII | 104 |
| 0xB1E920 | `placement delete closure' | 1 | ASCII | 104 |
| 0xB1FF4C | ntdll | 1 | UTF16 | 104 |
| 0xB1CEEC | OS Error (FormatMessageW() returned error | 2 | ASCII | 103 |
| 0xB1D164 | library\std\src\sys\args\windows.rs | 17 | ASCII | 103 |
| 0xB1EB1C | Base Class Descriptor at ( | 1 | ASCII | 103 |
| 0xB1E808 | `virtual displacement map' | 1 | ASCII | 103 |
| 0xB1EB88 | `anonymous namespace' | 1 | ASCII | 103 |
| 0xB1FF20 | advapi32 | 1 | UTF16 | 103 |
| 0xB1EAE8 | operator co_await | 1 | ASCII | 102 |
| 0xB1A28C | right` failed: \n left: | 1 | ASCII | 101 |
| 0xB1EB6C | Complete Object Locator' | 1 | ASCII | 101 |
| 0xB1A504 | is out of bounds of ` | 1 | ASCII | 101 |
| 0xB1CB68 | at | 1 | ASCII | 101 |
| 0xB1E608 | __restrict | 1 | ASCII | 101 |
| 0xB1E59C | __fastcall | 1 | ASCII | 101 |
| 0xB19D58 | C:\Users\sharl\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\base64-0.21.7\src\engine\general_purpose\decode_s... | 3 | ASCII | 100 |
| 0xB1B608 | /rustc/1159e78c4747b02ef996e55082b704c09b970588\library\alloc\src\collections\btree\map\entry.rs | 1 | ASCII | 100 |
| 0xB1D136 | ' has overflowed its stack\n | 1 | ASCII | 100 |
| 0xB1EA00 | `dynamic initializer for ' | 1 | ASCII | 100 |
| 0xB1CFE0 | failed to spawn thread | 1 | ASCII | 100 |
| 0xB1AB6C | range end index l | 1 | ASCII | 100 |
| 0xB1C81C | byte index is out of bounds | 5 | ASCII | 99 |
| 0xB1E5A8 | __vectorcall | 1 | ASCII | 99 |
| 0xB1E57C | __cdecl | 1 | ASCII | 99 |
| 0xB19B80 | C:\Users\sharl\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\base64-0.21.7\src\engine\general_purpose\decode.rs | 22 | ASCII | 98 |
| 0xB1B430 | /rustc/1159e78c4747b02ef996e55082b704c09b970588\library\core\src\iter\traits\iterator.rs | 1 | ASCII | 98 |
| 0xB1E70C | `local static guard' | 1 | ASCII | 98 |
| 0xB1EB38 | Base Class Array' | 1 | ASCII | 98 |
| 0xB1E658 | operator | 1 | ASCII | 98 |
| 0xB1FFA0 | user32 | 1 | UTF16 | 97 |
| 0xB1E614 | __unaligned | 1 | ASCII | 97 |
| 0xB1EAFC | operator<=> | 1 | ASCII | 97 |
| 0xB22E10 | _nextafter | 1 | ASCII | 97 |
| 0xB1E590 | __thiscall | 1 | ASCII | 97 |
| 0xB1E5F4 | __swift_3 | 1 | ASCII | 97 |
| 0xB1E584 | __stdcall | 1 | ASCII | 97 |
| 0xB1E5DC | __swift_1 | 1 | ASCII | 97 |
| 0xB1E5E8 | __swift_2 | 1 | ASCII | 97 |
| 0xB22D98 | atan | 1 | ASCII | 97 |
| 0xB1E730 | `vbase destructor' | 1 | ASCII | 96 |
| 0xB1B370 | capacity overflow | 1 | ASCII | 96 |
| 0xB1E8AC | `udt returning' | 1 | ASCII | 96 |
| 0xB1EAD8 | operator "" | 1 | ASCII | 96 |
| 0xB1ACE4 | /rustc/1159e78c4747b02ef996e55082b704c09b970588\library\core\src\ops\function.rs | 1 | ASCII | 95 |
| 0xB1EC24 | kernel32 | 2 | UTF16 | 95 |
| 0xB1E5D4 | __eabi | 1 | ASCII | 95 |
| 0xB22DA0 | atan2 | 1 | ASCII | 95 |
| 0xB1E8C0 | `RTTI | 1 | ASCII | 95 |
| 0xB22DBC | floor | 1 | ASCII | 95 |
| 0xB1BA90 | /rustc/1159e78c4747b02ef996e55082b704c09b970588\library\alloc\src\vec\mod.rs | 1 | ASCII | 94 |
| 0xB1BC1C | /rustc/1159e78c4747b02ef996e55082b704c09b970588\library\alloc\src\slice.rs | 1 | ASCII | 94 |
| 0xB1EB08 | Type Descriptor' | 1 | ASCII | 94 |
| 0xB1E634 | delete | 1 | ASCII | 94 |
| 0xB1E600 | __ptr64 | 1 | ASCII | 94 |
| 0xB1E8C8 | `local vftable' | 1 | ASCII | 93 |
| 0xB1E904 | delete[] | 1 | ASCII | 93 |
| 0xB1E620 | restrict( | 1 | ASCII | 93 |
| 0xB1C978 | \nthread '' panicked at \nx | 2 | ASCII | 92 |
| 0xB1B67C | /rustc/1159e78c4747b02ef996e55082b704c09b970588\library\alloc\src\collections\btree\node.rs | 15 | ASCII | 91 |
| 0xB1E910 | `omni callsig' | 1 | ASCII | 91 |
| 0x80F100 | Xo4O/p/qqv8qaq+ | 0 | ASCII | 90 |
| 0xB232DC | wallpaper_manager.pdb | 0 | ASCII | 89 |
| 0xB1F45C | en-US | 2 | UTF16 | 89 |
| 0xB1E6EC | `vbtable' | 1 | ASCII | 89 |
Functions high-value functions
Function listings
0x40CA90 sub_40ca90 str 9 api 17 imm 20 Malware
sub_40ca90() {
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x70
mov [ebp-0x1C], esp
mov dword ptr [ebp-0x10], 0xFFFFFFFF
mov dword ptr [ebp-0x14], SEH.11()
lea eax, [ebp-0x18]
mov ecx, fs:[0x0]
mov [ebp-0x18], ecx
mov fs:[0x0], eax
mov edi, [0xB269A8]
test edi, edi
jz .7
.1:
push 0x00
push 0xFFFFFFFF
push edi
call [kernel32.WaitForSingleObjectEx]
mov eax, [0xB269C4]
test eax, eax
jnz .2
push "dbghelp.dll"
call [kernel32.LoadLibraryA]
test eax, eax
mov [0xB269C4], eax
jz .10
.2:
xor ebx, ebx
cmp byte ptr [0xB269AC], 0x00
jnz .24
mov ecx, [0xB269C8]
test ecx, ecx
jnz .3
push "SymGetOptions"
push eax
call [kernel32.GetProcAddress]
test eax, eax
jz .23
mov ecx, eax
mov [0xB269C8], eax
.3:
call ecx
mov ecx, eax
mov eax, [0xB269CC]
test eax, eax
jnz .4
mov esi, ecx
push "SymSetOptions"
push [0xB269C4]
call [kernel32.GetProcAddress]
test eax, eax
jz .23
mov ecx, esi
mov [0xB269CC], eax
.4:
or ecx, 0x04
push ecx
call eax
mov esi, [0xB269D0]
test esi, esi
jnz .5
push "SymInitializeW"
push [0xB269C4]
call [kernel32.GetProcAddress]
test eax, eax
jz .23
mov esi, eax
mov [0xB269D0], eax
mov dword ptr [ebp-0x10], 0x00
.5:
mov [ebp-0x30], edi
call [kernel32.GetCurrentProcess]
push 0x01
push 0x00
push eax
call esi
mov dword ptr [ebp-0x2C], 0x00
mov dword ptr [ebp-0x28], 0x02
mov dword ptr [ebp-0x24], 0x00
mov byte ptr [ebp-0x1D], 0x00
mov dword ptr [ebp-0x10], 0x00
lea ecx, [ebp-0x2C]
xor edx, edx
push 0x02
push 0x02
push 0x400
call sub_4315c0()
add esp, 0x0C
mov esi, [ebp-0x28]
mov ebx, [ebp-0x24]
lea eax, [esi+ebx*2]
push 0x7FE
push 0x00
push eax
call _memset()
add esp, 0x0C
mov word ptr [esi+ebx*2+0x7FE], 0x00
add ebx, 0x400
mov edi, [0xB269D4]
mov [ebp-0x24], ebx
test edi, edi
jnz .6
push "SymGetSearchPathW"
push [0xB269C4]
call [kernel32.GetProcAddress]
test eax, eax
jz .25
mov edi, eax
mov [0xB269D4], eax
.6:
call [kernel32.GetCurrentProcess]
push ebx
push esi
push eax
call edi
cmp eax, 0x01
jnz .12
push esi
call [kernel32.lstrlenW]
test eax, eax
js .27
cmp eax, ebx
jbe .15
jmp .16
.7:
lea eax, [ebp-0x58]
push 0x21
push "Local\\RustBacktraceMutex00000000"
push eax
call sub_422cb0()
add esp, 0x0C
call [kernel32.GetCurrentProcessId]
test eax, eax
jz .9
mov ecx, 0x1F
nop
.8:
cmp ecx, 0x20
jnbe .28
mov edx, eax
mov esi, eax
and dl, 0x0F
mov dh, dl
mov ebx, edx
add bl, 0x37
or dh, 0x30
cmp dl, 0x0A
movzx edx, dh
movzx ebx, bl
cmovb ebx, edx
shr esi, 0x04
mov [ebp+ecx*1-0x58], bl
dec ecx
cmp eax, 0x10
mov eax, esi
jnb .8
.9:
movsd xmm1, qword ptr [ebp-0x48]
movzx eax, byte ptr [ebp-0x38]
movsd xmm0, qword ptr [ebp-0x40]
movsd xmm2, qword ptr [ebp-0x58]
movsd [ebp-0x6C], xmm1
movsd xmm1, qword ptr [ebp-0x50]
mov [ebp-0x5C], al
lea eax, [ebp-0x7C]
movsd [ebp-0x64], xmm0
movsd [ebp-0x7C], xmm2
movsd [ebp-0x74], xmm1
push eax
push 0x00
push 0x00
call [kernel32.CreateMutexA]
test eax, eax
jz .11
mov edi, eax
xor eax, eax
lock cmpxchg [0xB269A8], edi
jz .1
mov esi, eax
push edi
call [kernel32.CloseHandle]
mov edi, esi
jmp .1
.10:
push edi
call [kernel32.ReleaseMutex]
.11:
mov ebx, 0x01
jmp .24
.12:
mov dword ptr [ebp-0x24], 0x00
mov eax, [ebp-0x2C]
test eax, eax
jnz .13
lea ecx, [ebp-0x2C]
mov edx, 0xB1CBE8
mov byte ptr [ebp-0x1D], 0x00
call loc_40e240
mov eax, [ebp-0x2C]
mov esi, [ebp-0x28]
.13:
cmp eax, 0x01
mov word ptr [esi], 0x2E
mov dword ptr [ebp-0x24], 0x01
jnz .14
lea ecx, [ebp-0x2C]
mov edx, 0xB1CBF8
mov byte ptr [ebp-0x1D], 0x00
call loc_40e240
mov esi, [ebp-0x28]
.14:
mov eax, 0x02
mov word ptr [esi+0x02], 0x3B
.15:
mov [ebp-0x24], eax
.16:
; listing truncated
/* DISPLAY WARNING: Type casts are NOT being printed */
undefined8 sub_40ca90(void)
{
uint16_t uVar1;
int32_t iVar2;
undefined8 *puVar3;
code *pcVar4;
uint32_t uVar5;
int32_t iVar6;
uint32_t uVar7;
int32_t iVar8;
uint8_t uVar9;
undefined4 uVar10;
undefined2 *puVar11;
int32_t **unaff_FS_OFFSET;
bool bVar12;
undefined8 uVar13;
undefined8 uStack_80;
undefined8 uStack_78;
undefined8 uStack_70;
undefined8 uStack_68;
undefined uStack_60;
uint8_t uStack_5d;
undefined8 uStack_5c;
int32_t iStack_54;
int32_t iStack_50;
undefined8 uStack_4c;
undefined8 uStack_44;
undefined uStack_3c;
int32_t iStack_38;
int32_t iStack_34;
int32_t iStack_30;
undefined2 *puStack_2c;
uint32_t uStack_28;
undefined uStack_21;
undefined8 *puStack_20;
int32_t *piStack_1c;
code *pcStack_18;
undefined4 uStack_14;
puStack_20 = &uStack_80;
uStack_14 = 0xffffffff;
pcStack_18 = SEH.11;
piStack_1c = *unaff_FS_OFFSET;
*unaff_FS_OFFSET = &piStack_1c;
iVar6 = [0x0xb269a8];
iVar8 = [0x0xb269a8];
puVar3 = &uStack_80;
if ([0x0xb269a8] == 0) {
sub_422cb0(&uStack_5c, "Local\\RustBacktraceMutex00000000", 0x21);
uVar5 = (*kernel32.GetCurrentProcessId)();
if (uVar5 != 0) {
uVar7 = 0x1f;
do {
if (0x20 < uVar7) {
uStack_14 = 0xffffffff;
uVar13 = func_0x00430f93(0xb1cbd8);
if (iStack_50 != 0) {
uVar13 = sub_402bb0();
}
return uVar13;
}
uVar9 = uVar5;
uVar1 = CONCAT11(uVar9, uVar9) & 0xf0f;
uVar9 = (uVar9 & 0xf) + 0x37;
if (uVar1 < 10) {
uVar9 = uVar1 >> 8 | 0x30;
}
*(&uStack_5c + uVar7) = uVar9;
uVar7 = uVar7 - 1;
bVar12 = 0xf < uVar5;
uVar5 = uVar5 >> 4;
} while (bVar12);
}
uStack_70 = uStack_4c;
uStack_78._4_4_ = iStack_50;
uStack_60 = uStack_3c;
uStack_68 = uStack_44;
uStack_80 = uStack_5c;
iVar8 = (*kernel32.CreateMutexA)(0, 0, &uStack_80);
iStack_34 = iVar6;
if (iVar8 != 0) {
iVar6 = 0;
LOCK();
bVar12 = [0x0xb269a8] != 0;
iVar2 = iVar8;
if (bVar12) {
iVar6 = [0x0xb269a8];
iVar2 = [0x0xb269a8];
}
[0x0xb269a8] = iVar2;
UNLOCK();
puVar3 = puStack_20;
if (bVar12) {
(*kernel32.CloseHandle)(iVar8);
iVar8 = iVar6;
puVar3 = puStack_20;
}
goto code_r0x0040cacb;
}
}
else {
code_r0x0040cacb:
puStack_20 = puVar3;
(*kernel32.WaitForSingleObjectEx)(iVar8, 0xffffffff, 0);
iStack_34 = iVar8;
if (([0x0xb269c4] != 0) || (00b269c4 = (*kernel32.LoadLibraryA)("dbghelp.dll"), 00b269c4 != 0)) {
uVar10 = 0;
if ([0x0xb269ac] != '\0') goto code_r0x0040ce56;
pcVar4 = 0xb269c8;
if (((0xb269c8 != 0x0) || (pcVar4 = (*kernel32.GetProcAddress)([0x0xb269c4], "SymGetOptions"), pcVar4 != 0x0))
&& ((0xb269c8 = pcVar4, uVar5 = (*0xb269c8)(), pcVar4 = 0xb269cc, 0xb269cc != 0x0 ||
(pcVar4 = (*kernel32.GetProcAddress)([0x0xb269c4], "SymSetOptions"), pcVar4 != 0x0)))) {
0xb269cc = pcVar4;
(*0xb269cc)(uVar5 | 4);
if (0xb269d0 == 0x0) {
pcVar4 = (*kernel32.GetProcAddress)([0x0xb269c4], "SymInitializeW");
if (pcVar4 == 0x0) goto code_r0x0040ce4f;
uStack_14 = 0;
pcRam00b269d0 = pcVar4;
}
pcVar4 = 0xb269d0;
uVar10 = (*kernel32.GetCurrentProcess)();
(*pcVar4)(uVar10, 0, 1);
iStack_30 = 0;
puStack_2c = 0x2;
uStack_28 = 0;
uStack_21 = 0;
uStack_14 = 0;
sub_4315c0(0x400, 2, 2);
iVar6 = uStack_28;
puVar11 = puStack_2c;
_memset(puStack_2c + uStack_28, 0, 0x7fe);
puVar11[iVar6 + 0x3ff] = 0;
uVar5 = iVar6 + 0x400;
pcVar4 = 0xb269d4;
uStack_28 = uVar5;
if ((0xb269d4 == 0x0) &&
(pcVar4 = (*kernel32.GetProcAddress)([0x0xb269c4], "SymGetSearchPathW"), iVar6 = iStack_34, pcVar4 == 0x0)) {
iStack_34 = iVar6;
if (iStack_30 != 0) {
sub_402bb0();
iStack_34 = iVar6;
}
}
else {
0xb269d4 = pcVar4;
pcVar4 = 0xb269d4;
uVar10 = (*kernel32.GetCurrentProcess)();
iVar6 = (*pcVar4)(uVar10, puVar11, uVar5);
if (iVar6 == 1) {
uVar7 = (*kernel32.lstrlenW)(puVar11);
if (uVar7 < 0) {
uStack_21 = 0;
sub_4310e0(0xb1cc24);
do {
invalidInstructionException();
} while( true );
}
if (uVar5 < uVar7) {
uVar7 = uStack_28;
}
}
else {
uStack_28 = 0;
if (iStack_30 == 0) {
uStack_21 = 0;
func_0x0040e240();
puVar11 = puStack_2c;
}
*puVar11 = 0x2e;
uStack_28 = 1;
if (iStack_30 == 1) {
uStack_21 = 0;
func_0x0040e240();
puVar11 = puStack_2c;
}
puVar11[1] = 0x3b;
uVar7 = 2;
}
uStack_28 = uVar7;
uStack_80 = CONCAT44(puStack_2c, iStack_30);
uStack_78 = CONCAT44(uStack_78._4_4_, uStack_28);
pcVar4 = 0xb269dc;
if ((0xb269dc == 0x0) &&
(pcVar4 = (*kernel32.GetProcAddress)([0x0xb269c4], "EnumerateLoadedModulesW64"), pcVar4 == 0x0)) {
iVar6 = uStack_80;
}
else {
0xb269dc = pcVar4;
pcVar4 = 0xb269dc;
uVar10 = (*kernel32.GetCurrentProcess)();
(*pcVar4)(uVar10, sub_40e2d0, &uStack_80);
uStack_5c = uStack_80;
uVar13 = uStack_5c;
iStack_54 = uStack_78;
uStack_5c._0_4_ = uStack_80;
bVar12 = uStack_78 == uStack_5c;
iVar8 = uStack_78;
iVar6 = uStack_5c;
uStack_5c = uVar13;
if (bVar12) {
iStack_38 = uStack_78;
uStack_14 = 1;
func_0x0040e240();
iVar8 = iStack_38;
iVar6 = uStack_5c;
}
iVar2 = uStack_5c._4_4_;
*(uStack_5c._4_4_ + iVar8 * 2) = 0;
pcVar4 = 0xb269d8;
if ((0xb269d8 != 0x0) ||
(pcVar4 = (*kernel32.GetProcAddress)([0x0xb269c4], "SymSetSearchPathW"), pcVar4 != 0x0)) {
0xb269d8 = pcVar4;
pcVar4 = 0xb269d8;
uVar10 = (*kernel32.GetCurrentProcess)();
(*pcVar4)(uVar10, iVar2);
/* listing truncated */
0x412766 sub_412766 str 4 api 0 imm 7 Malware
sub_412766() {
mov eax, [eax+0x04]
mov [ebp-0x30], eax
mov eax, [esi+0x04]
push 0x02
push 0xB1C2B5
push [esi]
call [eax+0x0C]
add esp, 0x0C
mov [ebp-0x38], esi
lea esi, [ebp-0x38]
mov [ebp-0x34], al
mov byte ptr [ebp-0x33], 0x00
lea eax, [ebp-0x30]
mov edx, 0xB1C2B7
mov ecx, esi
push sub_413650()
push eax
push 0x04
call sub_403f80()
add esp, 0x0C
mov ecx, [ebp-0x30]
call sub_4129d0()
mov [ebp-0x1D], al
lea eax, [ebp-0x1D]
mov ecx, esi
mov edx, 0xB1C2BB
push sub_413620()
push eax
push 0x04
call sub_403f80()
add esp, 0x0C
mov edx, [ebp-0x30]
lea edi, [ebp-0x2C]
mov ecx, edi
call sub_4130d0()
mov dword ptr [ebp-0x10], 0x00
mov ecx, esi
mov edx, 0xB1C2BF
push sub_413600()
push edi
push 0x07
call sub_403f80()
add esp, 0x0C
lea ecx, [ebp-0x38]
call sub_404ce0()
cmp dword ptr [ebp-0x2C], 0x00
jz .1
mov ecx, [ebp-0x28]
mov edx, 0x01
mov ebx, eax
call sub_402bb0()
mov eax, ebx
jmp .1
.1:
mov ecx, [ebp-0x18]
mov fs:[0x0], ecx
add esp, 0x2C
pop esi
pop edi
pop ebx
pop ebp
ret
}
/* DISPLAY WARNING: Type casts are NOT being printed */
undefined4 sub_412766(void)
{
undefined uVar1;
int32_t in_EAX;
undefined4 uVar2;
int32_t unaff_EBP;
undefined4 *unaff_ESI;
undefined4 *unaff_FS_OFFSET;
*(unaff_EBP + -0x30) = *(in_EAX + 4);
uVar1 = (**(unaff_ESI[1] + 0xc))(*unaff_ESI, 0xb1c2b5, 2);
*(unaff_EBP + -0x38) = unaff_ESI;
*(unaff_EBP + -0x34) = uVar1;
*(unaff_EBP + -0x33) = 0;
sub_403f80(4, unaff_EBP + -0x30, sub_413650);
uVar1 = sub_4129d0();
*(unaff_EBP + -0x1d) = uVar1;
sub_403f80(4, unaff_EBP + -0x1d, sub_413620);
sub_4130d0();
*(unaff_EBP + -0x10) = 0;
sub_403f80(7, unaff_EBP + -0x2c, sub_413600);
uVar2 = sub_404ce0();
if (*(unaff_EBP + -0x2c) != 0) {
sub_402bb0();
}
*unaff_FS_OFFSET = *(unaff_EBP + -0x18);
return uVar2;
}
0x4204F0 sub_4204f0 str 3 api 0 imm 11 Malware
sub_4204f0() {
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x44
mov eax, [ecx+0x0C]
mov edx, [ecx+0x14]
movzx ebx, word ptr [eax+0x1EA]
movzx edi, word ptr [edx+0x1EA]
lea esi, [ebx+edi*1+0x01]
cmp esi, 0x0C
jnb .5
mov [ebp-0x14], edx
mov edx, [ecx]
mov [ebp-0x24], esi
mov esi, [ecx+0x10]
mov [ebp-0x18], eax
mov eax, [ecx+0x04]
mov [ebp-0x30], esi
movzx esi, word ptr [edx+0x1EA]
mov [ebp-0x34], eax
mov eax, [ebp-0x18]
mov [ebp-0x20], edx
mov [ebp-0x2C], esi
mov esi, [ecx+0x08]
mov ecx, [ebp-0x24]
mov [eax+0x1EA], cx
lea eax, [esi+esi*8]
lea ecx, [eax+eax*2]
add ecx, esi
mov eax, [edx+ecx*1+0xCC]
mov [ebp-0x38], eax
lea eax, [edx+ecx*1+0xB4]
movsd xmm0, qword ptr [edx+ecx*1+0xC4]
mov [ebp-0x10], eax
mov eax, esi
not eax
add eax, [ebp-0x2C]
movsd [ebp-0x40], xmm0
movsd xmm0, qword ptr [edx+ecx*1+0xB4]
movsd xmm1, qword ptr [edx+ecx*1+0xBC]
lea ecx, [edx+ecx*1+0xD0]
lea edx, [eax+eax*8]
mov [ebp-0x28], eax
lea edx, [edx+edx*2]
add edx, eax
lea eax, [ebx+0x01]
movsd [ebp-0x48], xmm1
movsd [ebp-0x50], xmm0
mov [ebp-0x1C], eax
push edx
push ecx
push [ebp-0x10]
call sub_422cb0()
add esp, 0x0C
movsd xmm0, qword ptr [ebp-0x50]
movsd xmm1, qword ptr [ebp-0x48]
mov edx, [ebp-0x18]
lea eax, [ebx+ebx*8]
lea eax, [eax+eax*2]
add eax, ebx
movsd [edx+eax*1+0xB4], xmm0
movsd [edx+eax*1+0xBC], xmm1
movsd xmm0, qword ptr [ebp-0x40]
movsd [edx+eax*1+0xC4], xmm0
mov ecx, [ebp-0x38]
mov [edx+eax*1+0xCC], ecx
mov eax, [ebp-0x14]
add eax, 0xB4
mov [ebp-0x10], eax
mov eax, [ebp-0x1C]
lea ecx, [eax+eax*8]
lea ecx, [ecx+ecx*2]
add ecx, eax
lea ecx, [edx+ecx*1+0xB4]
lea edx, [edi+edi*8]
lea edx, [edx+edx*2]
add edx, edi
push edx
push [ebp-0x10]
push ecx
call sub_422cb0()
add esp, 0x0C
mov edx, [ebp-0x20]
mov eax, esi
shl eax, 0x04
lea ecx, [edx+eax*1]
movsd xmm0, qword ptr [edx+eax*1]
movsd xmm1, qword ptr [edx+eax*1+0x08]
lea eax, [edx+eax*1+0x10]
mov edx, [ebp-0x28]
shl edx, 0x04
movsd [ebp-0x48], xmm1
movsd [ebp-0x50], xmm0
push edx
push eax
push ecx
call sub_422cb0()
add esp, 0x0C
movsd xmm0, qword ptr [ebp-0x50]
movsd xmm1, qword ptr [ebp-0x48]
mov ecx, [ebp-0x18]
mov eax, ebx
mov edx, edi
shl eax, 0x04
shl edx, 0x04
movsd [ecx+eax*1], xmm0
movsd [ecx+eax*1+0x08], xmm1
mov eax, [ebp-0x1C]
shl eax, 0x04
add eax, ecx
push edx
push [ebp-0x14]
push eax
call sub_422cb0()
add esp, 0x0C
mov edx, [ebp-0x28]
mov ecx, [ebp-0x20]
lea eax, [esi+0x01]
mov [ebp-0x10], eax
lea eax, [ecx+esi*4+0x1F0]
lea ecx, [ecx+esi*4+0x1F4]
shl edx, 0x02
push edx
push ecx
push eax
call sub_422cb0()
mov edx, [ebp-0x2C]
mov ecx, [ebp-0x20]
add esp, 0x0C
cmp [ebp-0x10], edx
jnb .2
dec edx
nop cs:[eax+eax*1], ax
nop [eax+eax*1], eax
.1:
mov eax, [ecx+esi*4+0x1F0]
inc esi
cmp edx, esi
mov [eax+0xB0], ecx
mov [eax+0x1E8], si
jnz .1
.2:
dec word ptr [ecx+0x1EA]
cmp dword ptr [ebp-0x34], 0x02
mov esi, [ebp-0x18]
jb .4
mov eax, [ebp-0x24]
inc edi
sub eax, ebx
cmp edi, eax
jnz .6
mov ecx, [ebp-0x1C]
lea eax, [esi+0x1EC]
lea edx, [edi*4]
lea eax, [eax+ecx*4]
mov ecx, [ebp-0x14]
add ecx, 0x1EC
push edx
push ecx
push eax
call sub_422cb0()
add esp, 0x0C
add ebx, 0x7C
nop [eax], eax
.3:
mov eax, [esi+ebx*4]
lea ecx, [ebx-0x7B]
inc ebx
dec edi
mov [eax+0xB0], esi
mov [eax+0x1E8], cx
jnz .3
.4:
mov ecx, [ebp-0x14]
mov edx, 0x04
call sub_402bb0()
mov edx, [ebp-0x30]
mov eax, esi
add esp, 0x44
pop esi
pop edi
pop ebx
pop ebp
ret
.5:
mov ecx, "assertion failed: new_left_len <= CAPACITY"
mov edx, 0x2A
push 0xB1BA50
call sub_4310e0()
.6:
mov ecx, "assertion failed: src.len() == dst.len()|"
mov edx, 0x28
push 0xB1B7CC
call sub_4310e0()
}
/* DISPLAY WARNING: Type casts are NOT being printed */
undefined8 __fastcall sub_4204f0(int32_t *param_1)
{
int32_t iVar1;
uint32_t uVar2;
undefined8 uVar3;
undefined8 uVar4;
int32_t iVar5;
int32_t iVar6;
uint32_t uVar7;
undefined4 uVar8;
code *pcVar9;
int16_t iVar10;
int32_t iVar11;
int32_t iVar12;
uint32_t uVar13;
int32_t iVar14;
uint32_t uVar15;
uint32_t uVar16;
uint32_t uVar17;
int32_t iVar18;
undefined8 uVar19;
iVar5 = param_1[3];
iVar14 = param_1[5];
uVar13 = *(iVar5 + 0x1ea);
uVar17 = *(iVar14 + 0x1ea);
uVar2 = uVar13 + 1 + uVar17;
if (uVar2 < 0xc) {
iVar18 = *param_1;
iVar6 = param_1[4];
uVar7 = param_1[1];
uVar15 = *(iVar18 + 0x1ea);
uVar16 = param_1[2];
*(iVar5 + 0x1ea) = uVar2;
iVar12 = uVar16 * 0x1c;
uVar8 = *(iVar18 + 0xcc + iVar12);
uVar19 = *(iVar18 + 0xc4 + iVar12);
iVar11 = ~uVar16 + uVar15;
uVar3 = *(iVar18 + 0xb4 + iVar12);
uVar4 = *(iVar18 + 0xbc + iVar12);
iVar1 = uVar13 + 1;
sub_422cb0(iVar18 + 0xb4 + iVar12, iVar18 + 0xd0 + iVar12, iVar11 * 0x1c);
iVar12 = uVar13 * 0x1c;
*(iVar5 + 0xb4 + iVar12) = uVar3;
*(iVar5 + 0xbc + iVar12) = uVar4;
*(iVar5 + 0xc4 + iVar12) = uVar19;
*(iVar5 + 0xcc + iVar12) = uVar8;
sub_422cb0(iVar5 + 0xb4 + iVar1 * 0x1c, iVar14 + 0xb4, uVar17 * 0x1c);
iVar12 = uVar16 * 0x10;
uVar19 = *(iVar18 + iVar12);
uVar3 = *(iVar18 + 8 + iVar12);
sub_422cb0(iVar18 + iVar12, iVar18 + 0x10 + iVar12, iVar11 * 0x10);
*(iVar5 + uVar13 * 0x10) = uVar19;
*(iVar5 + 8 + uVar13 * 0x10) = uVar3;
sub_422cb0(iVar1 * 0x10 + iVar5, iVar14, uVar17 << 4);
sub_422cb0(iVar18 + 0x1f0 + uVar16 * 4, iVar18 + 500 + uVar16 * 4, iVar11 * 4);
if (uVar16 + 1 < uVar15) {
do {
iVar12 = *(iVar18 + 0x1f0 + uVar16 * 4);
uVar16 = uVar16 + 1;
*(iVar12 + 0xb0) = iVar18;
*(iVar12 + 0x1e8) = uVar16;
} while (uVar15 - 1 != uVar16);
}
*(iVar18 + 0x1ea) = *(iVar18 + 0x1ea) + -1;
if (1 < uVar7) {
iVar18 = uVar17 + 1;
if (iVar18 != uVar2 - uVar13) goto code_r0x00420785;
sub_422cb0(iVar5 + 0x1ec + iVar1 * 4, iVar14 + 0x1ec, iVar18 * 4);
iVar14 = uVar13 + 0x7c;
do {
iVar1 = *(iVar5 + iVar14 * 4);
iVar10 = iVar14;
iVar14 = iVar14 + 1;
iVar18 = iVar18 + -1;
*(iVar1 + 0xb0) = iVar5;
*(iVar1 + 0x1e8) = iVar10 + -0x7b;
} while (iVar18 != 0);
}
sub_402bb0();
return CONCAT44(iVar6, iVar5);
}
sub_4310e0(0xb1ba50);
code_r0x00420785:
sub_4310e0(0xb1b7cc);
pcVar9 = swi(3);
uVar19 = (*pcVar9)();
return uVar19;
}
0x411F10 sub_411f10 str 1 api 0 imm 9 Malware
sub_411f10() {
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x54
mov [ebp-0x1C], esp
mov dword ptr [ebp-0x10], 0xFFFFFFFF
mov dword ptr [ebp-0x14], SEH.34()
lea eax, [ebp-0x18]
test ecx, ecx
mov esi, fs:[0x0]
mov [ebp-0x18], esi
mov fs:[0x0], eax
mov eax, "<unknown>"
mov dword ptr [ebp-0x60], 0xB1D154
mov dword ptr [ebp-0x5C], 0x02
mov dword ptr [ebp-0x50], 0x00
mov dword ptr [ebp-0x30], 0x00
mov byte ptr [ebp-0x2C], 0x00
cmovnz eax, ecx
mov ecx, 0x09
mov [ebp-0x38], eax
lea eax, [ebp-0x38]
cmovnz ecx, edx
lea edx, [ebp-0x40]
mov [ebp-0x48], eax
lea eax, [ebp-0x48]
mov [ebp-0x34], ecx
mov dword ptr [ebp-0x44], sub_403230()
lea ecx, [ebp-0x30]
mov [ebp-0x58], eax
lea eax, [ebp-0x60]
mov dword ptr [ebp-0x54], 0x01
push eax
push ecx
push edx
call sub_40af30()
add esp, 0x0C
movzx eax, byte ptr [ebp-0x40]
cmp al, 0x04
jz .3
cmp al, 0x03
jnz .3
mov eax, [ebp-0x3C]
mov ecx, [eax]
mov [ebp-0x28], eax
mov eax, [eax+0x04]
mov [ebp-0x20], eax
mov eax, [eax]
mov [ebp-0x24], ecx
test eax, eax
jz .1
mov dword ptr [ebp-0x10], 0x00
push [ebp-0x24]
call eax
add esp, 0x04
.1:
mov eax, [ebp-0x20]
mov ecx, [ebp-0x24]
cmp dword ptr [eax+0x04], 0x00
jz .2
mov edx, [eax+0x08]
call sub_402bb0()
.2:
mov ecx, [ebp-0x28]
mov edx, 0x04
call sub_402bb0()
.3:
mov eax, [ebp-0x18]
mov fs:[0x0], eax
add esp, 0x54
pop esi
pop edi
pop ebx
pop ebp
ret
}
/* DISPLAY WARNING: Type casts are NOT being printed */
void __fastcall sub_411f10(int32_t param_1,undefined4 param_2)
{
int32_t **unaff_FS_OFFSET;
undefined4 uStack_64;
undefined4 uStack_60;
int32_t **ppiStack_5c;
undefined4 uStack_58;
undefined4 uStack_54;
int32_t *piStack_4c;
code *pcStack_48;
char acStack_44 [4];
undefined4 *puStack_40;
int32_t iStack_3c;
undefined4 uStack_38;
undefined4 uStack_34;
undefined uStack_30;
undefined4 *puStack_2c;
undefined4 uStack_28;
code **ppcStack_24;
undefined4 *puStack_20;
int32_t *piStack_1c;
code *pcStack_18;
undefined4 uStack_14;
puStack_20 = &uStack_64;
uStack_14 = 0xffffffff;
pcStack_18 = SEH.34;
piStack_1c = *unaff_FS_OFFSET;
*unaff_FS_OFFSET = &piStack_1c;
uStack_64 = 0xb1d154;
uStack_60 = 2;
uStack_54 = 0;
uStack_34 = 0;
uStack_30 = 0;
iStack_3c = "<unknown>";
if (param_1 != 0) {
iStack_3c = param_1;
}
piStack_4c = &iStack_3c;
uStack_38 = 9;
if (param_1 != 0) {
uStack_38 = param_2;
}
ppiStack_5c = &piStack_4c;
pcStack_48 = sub_403230;
uStack_58 = 1;
sub_40af30(acStack_44, &uStack_34, &uStack_64);
if ((acStack_44[0] != '\x04') && (acStack_44[0] == '\x03')) {
uStack_28 = *puStack_40;
puStack_2c = puStack_40;
ppcStack_24 = puStack_40[1];
if (*ppcStack_24 != 0x0) {
uStack_14 = 0;
(**ppcStack_24)(uStack_28);
}
if (ppcStack_24[1] != 0x0) {
sub_402bb0();
}
sub_402bb0();
}
*unaff_FS_OFFSET = piStack_1c;
return;
}
0x411AC0 sub_411ac0 str 0 api 0 imm 11 Malware
sub_411ac0() {
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x34
mov [ebp-0x1C], esp
mov dword ptr [ebp-0x10], 0xFFFFFFFF
mov dword ptr [ebp-0x14], SEH.33()
mov edi, ecx
call .1
.1:
pop eax
mov ecx, fs:[0x0]
mov [ebp-0x30], eax
lea eax, [ebp-0x18]
mov [ebp-0x18], ecx
mov fs:[0x0], eax
cmp byte ptr [edi+0x0C], 0x00
jnz .14
lea eax, [edi+0x0D]
mov dword ptr [ebp-0x20], 0x00
mov [ebp-0x28], edi
mov [ebp-0x38], eax
jmp .2
cmp byte ptr [edx+0x08], 0x23
jnz .7
.2:
mov edx, [edi+0x08]
mov ecx, [ebp-0x20]
mov esi, edx
sub esi, ecx
jbe .5
mov byte ptr [edi+0x0C], 0x01
mov dword ptr [ebp-0x10], 0x01
mov edx, 0xFFFFFFF5
mov eax, [edi+0x04]
add eax, ecx
lea ecx, [ebp-0x40]
push [ebp-0x38]
mov [ebp-0x2C], esi
push esi
push eax
call sub_40b610()
add esp, 0x0C
movzx eax, byte ptr [ebp-0x40]
mov edx, [ebp-0x3C]
cmp al, 0x04
jz .3
test al, al
setz al
cmp edx, 0x06
setz cl
and cl, al
cmp cl, 0x01
jz .4
.3:
mov ebx, [ebp-0x40]
mov edi, [ebp-0x28]
movzx eax, bl
mov byte ptr [edi+0x0C], 0x00
mov eax, [eax*4+0x411DD4]
add eax, [ebp-0x30]
jmp eax
mov eax, ebx
and eax, 0xFF00
cmp eax, 0x2300
jz .2
jmp .7
.4:
mov edi, [ebp-0x28]
mov edx, [ebp-0x2C]
mov byte ptr [edi+0x0C], 0x00
mov eax, [ebp-0x20]
test edx, edx
jz .6
add eax, edx
mov [ebp-0x20], eax
jmp .2
.5:
test ecx, ecx
jz .14
cmp edx, ecx
jb .17
xor esi, esi
mov ebx, 0x04
jmp .10
.6:
mov ebx, 0x02
mov edx, 0xB1BF54
.7:
mov eax, [ebp-0x20]
test eax, eax
jz .8
mov [ebp-0x24], edx
mov edx, [edi+0x08]
mov esi, edx
sub esi, eax
jb .16
mov dword ptr [edi+0x08], 0x00
jnz .9
mov edx, [ebp-0x24]
.8:
cmp bl, 0x04
jnz .11
jmp .14
.9:
mov eax, [edi+0x04]
mov ecx, [ebp-0x20]
add ecx, eax
push esi
push ecx
push eax
call sub_422cb0()
add esp, 0x0C
mov edx, [ebp-0x24]
.10:
mov [edi+0x08], esi
cmp bl, 0x04
jz .14
.11:
cmp bl, 0x03
jnz .14
mov eax, [edx]
mov [ebp-0x24], edx
mov [ebp-0x20], eax
mov eax, [edx+0x04]
mov [ebp-0x30], eax
mov eax, [eax]
test eax, eax
jz .12
mov dword ptr [ebp-0x10], 0x03
push [ebp-0x20]
call eax
add esp, 0x04
.12:
mov eax, [ebp-0x30]
mov ecx, [ebp-0x20]
cmp dword ptr [eax+0x04], 0x00
jz .13
mov edx, [eax+0x08]
call sub_402bb0()
.13:
mov ecx, [ebp-0x24]
mov edx, 0x04
call sub_402bb0()
mov edi, [ebp-0x28]
.14:
cmp dword ptr [edi], 0x00
jz .15
mov ecx, [edi+0x04]
mov edx, 0x01
call sub_402bb0()
.15:
mov eax, [ebp-0x18]
mov fs:[0x0], eax
add esp, 0x34
pop esi
pop edi
pop ebx
pop ebp
ret
.16:
mov ecx, [ebp-0x20]
mov dword ptr [ebp-0x10], 0x00
push 0xB1BAE0
call sub_431070()
add esp, 0x04
jmp .18
.17:
mov dword ptr [ebp-0x10], 0x00
push 0xB1BAE0
call sub_431070()
add esp, 0x04
.18:
ud2
}
/* WARNING: Removing unreachable block (ram,0x00411c6c) */
/* DISPLAY WARNING: Type casts are NOT being printed */
void __fastcall sub_411ac0(int32_t *param_1)
{
undefined4 *puVar1;
char cVar2;
int32_t iVar3;
int32_t **unaff_FS_OFFSET;
uint32_t uStack_44;
int32_t iStack_40;
int32_t iStack_3c;
code **ppcStack_34;
int32_t iStack_30;
int32_t *piStack_2c;
undefined4 *puStack_28;
undefined4 *puStack_24;
uint32_t *puStack_20;
int32_t *piStack_1c;
code *pcStack_18;
undefined4 uStack_14;
puStack_20 = &uStack_44;
uStack_14 = 0xffffffff;
pcStack_18 = SEH.33;
piStack_1c = *unaff_FS_OFFSET;
ppcStack_34 = 0x411ae1;
*unaff_FS_OFFSET = &piStack_1c;
if (*(param_1 + 3) == '\0') {
iStack_3c = param_1 + 0xd;
puStack_24 = 0x0;
piStack_2c = param_1;
puStack_20 = &uStack_44;
while( true ) {
puVar1 = piStack_2c[2];
iVar3 = puVar1 - puStack_24;
if (puVar1 < puStack_24 || iVar3 == 0) break;
*(piStack_2c + 3) = 1;
uStack_14 = 1;
iStack_30 = iVar3;
sub_40b610(piStack_2c[1] + puStack_24, iVar3, iStack_3c);
param_1 = piStack_2c;
if ((uStack_44 == '\x04') || (iStack_40 != 6 || uStack_44 != '\0')) {
*(piStack_2c + 3) = 0;
/* WARNING: Could not recover jumptable at 0x00411b9a. Too many branches */
/* WARNING: Treating indirect jump as call */
(*(*((uStack_44 & 0xff) * 4 + 0x411dd4) + ppcStack_34))();
return;
}
*(piStack_2c + 3) = 0;
if (iStack_30 == 0) {
cVar2 = '\x02';
if (puStack_24 != 0x0) {
puStack_28 = 0xb1bf54;
iVar3 = piStack_2c[2] - puStack_24;
if (piStack_2c[2] < puStack_24) {
uStack_14 = 0;
sub_431070(0xb1bae0);
goto code_r0x00411d28;
}
piStack_2c[2] = 0;
if (iVar3 != 0) {
sub_422cb0(piStack_2c[1], puStack_24 + piStack_2c[1], iVar3);
puVar1 = puStack_28;
goto code_r0x00411c84;
}
}
puVar1 = 0xb1bf54;
goto code_r0x00411c8c;
}
puStack_24 = puStack_24 + iStack_30;
}
param_1 = piStack_2c;
if (puStack_24 != 0x0) {
if (puVar1 < puStack_24) {
uStack_14 = 0;
sub_431070(0xb1bae0);
code_r0x00411d28:
do {
invalidInstructionException();
} while( true );
}
iVar3 = 0;
cVar2 = '\x04';
code_r0x00411c84:
param_1[2] = iVar3;
if (cVar2 != '\x04') {
code_r0x00411c8c:
if (cVar2 == '\x03') {
puStack_24 = *puVar1;
ppcStack_34 = puVar1[1];
puStack_28 = puVar1;
if (*ppcStack_34 != 0x0) {
uStack_14 = 3;
(**ppcStack_34)(puStack_24);
}
if (ppcStack_34[1] != 0x0) {
sub_402bb0();
}
sub_402bb0();
param_1 = piStack_2c;
}
}
}
}
if (*param_1 != 0) {
sub_402bb0();
}
*unaff_FS_OFFSET = piStack_1c;
return;
}
0x41A5D0 sub_41a5d0 str 0 api 0 imm 4 Malware
sub_41a5d0() {
push ebp
sub esp, 0x28
add ebp, 0x0C
cmp dword ptr [ebp-0x98], 0x00
jz .1
mov ecx, [ebp-0x94]
mov edx, 0x02
call sub_402bb0()
.1:
add esp, 0x28
pop ebp
ret
}
/* DISPLAY WARNING: Type casts are NOT being printed */
void sub_41a5d0(void)
{
int32_t unaff_EBP;
if (*(unaff_EBP + -0x8c) != 0) {
sub_402bb0();
}
return;
}
0x41E500 sub_41e500 str 0 api 0 imm 4 Malware
sub_41e500() {
push ebp
sub esp, 0x10
add ebp, 0x0C
cmp dword ptr [ebp-0x24], 0x00
jz .1
mov ecx, [ebp-0x28]
mov edx, 0x02
call sub_402bb0()
.1:
mov byte ptr [ebp-0x1D], 0x00
add esp, 0x10
pop ebp
ret
}
/* DISPLAY WARNING: Type casts are NOT being printed */
void sub_41e500(void)
{
int32_t unaff_EBP;
if (*(unaff_EBP + -0x18) != 0) {
sub_402bb0();
}
*(unaff_EBP + -0x11) = 0;
return;
}
0x41E8D0 sub_41e8d0 str 0 api 0 imm 4 Malware
sub_41e8d0() {
push ebp
sub esp, 0x10
add ebp, 0x0C
cmp dword ptr [ebp-0x24], 0x00
jz .1
mov ecx, [ebp-0x28]
mov edx, 0x02
call sub_402bb0()
.1:
mov byte ptr [ebp-0x1D], 0x00
add esp, 0x10
pop ebp
ret
}
/* DISPLAY WARNING: Type casts are NOT being printed */
void sub_41e8d0(void)
{
int32_t unaff_EBP;
if (*(unaff_EBP + -0x18) != 0) {
sub_402bb0();
}
*(unaff_EBP + -0x11) = 0;
return;
}
0x40C120 sub_40c120 str 0 api 0 imm 3 Malware
sub_40c120() {
push ebp
sub esp, 0x10
lea esi, [ebp-0x29C]
mov ebp, [esi+0x288]
mov eax, [esi+0x08]
mov ecx, [esi+0x04]
cmp dword ptr [eax+0x04], 0x00
jz .1
mov eax, [esi+0x08]
mov edx, [eax+0x08]
call sub_402bb0()
.1:
mov ecx, [esi+0x10]
mov edx, 0x04
call sub_402bb0()
add esp, 0x10
pop ebp
ret
}
/* DISPLAY WARNING: Type casts are NOT being printed */
void sub_40c120(void)
{
int32_t unaff_EBP;
if (*(*(unaff_EBP + -0x294) + 4) != 0) {
sub_402bb0();
}
sub_402bb0();
return;
}
0x40C160 sub_40c160 str 0 api 0 imm 3 Malware
sub_40c160() {
push ebp
sub esp, 0x10
lea esi, [ebp-0x29C]
mov ebp, [esi+0x288]
mov eax, [esi+0x04]
mov ecx, [esi+0x0C]
cmp dword ptr [eax+0x04], 0x00
jz .1
mov eax, [esi+0x04]
mov edx, [eax+0x08]
call sub_402bb0()
.1:
mov ecx, [esi+0x08]
mov edx, 0x04
call sub_402bb0()
add esp, 0x10
pop ebp
ret
}
/* DISPLAY WARNING: Type casts are NOT being printed */
void sub_40c160(void)
{
int32_t unaff_EBP;
if (*(*(unaff_EBP + -0x298) + 4) != 0) {
sub_402bb0();
}
sub_402bb0();
return;
}
0x40C1A0 sub_40c1a0 str 0 api 0 imm 3 Malware
sub_40c1a0() {
push ebp
sub esp, 0x10
lea esi, [ebp-0x29C]
mov ebp, [esi+0x288]
mov eax, [esi+0x14]
mov ecx, [esi+0x10]
cmp dword ptr [eax+0x04], 0x00
jz .1
mov eax, [esi+0x14]
mov edx, [eax+0x08]
call sub_402bb0()
.1:
mov ecx, [esi+0x18]
mov edx, 0x04
call sub_402bb0()
add esp, 0x10
pop ebp
ret
}
/* DISPLAY WARNING: Type casts are NOT being printed */
void sub_40c1a0(void)
{
int32_t unaff_EBP;
if (*(*(unaff_EBP + -0x288) + 4) != 0) {
sub_402bb0();
}
sub_402bb0();
return;
}
0x40C1E0 sub_40c1e0 str 0 api 0 imm 3 Malware
sub_40c1e0() {
push ebp
sub esp, 0x10
lea esi, [ebp-0x29C]
mov ebp, [esi+0x288]
mov eax, [esi+0x04]
mov ecx, [esi+0x0C]
cmp dword ptr [eax+0x04], 0x00
jz .1
mov eax, [esi+0x04]
mov edx, [eax+0x08]
call sub_402bb0()
.1:
mov ecx, [esi+0x08]
mov edx, 0x04
call sub_402bb0()
add esp, 0x10
pop ebp
ret
}
/* DISPLAY WARNING: Type casts are NOT being printed */
void sub_40c1e0(void)
{
int32_t unaff_EBP;
if (*(*(unaff_EBP + -0x298) + 4) != 0) {
sub_402bb0();
}
sub_402bb0();
return;
}
0x4012A4 sub_4012a4 str 0 api 0 imm 2 Malware
sub_4012a4() {
push ebp
push ebx
push edi
push esi
mov edi, [edx+0xB0]
mov ebx, [esp+0x14]
mov eax, edx
mov esi, ecx
test edi, edi
jz .1
inc ebx
mov ebp, ebx
movzx ebx, word ptr [eax+0x1E8]
jmp .2
.1:
mov ebp, eax
.2:
push 0x04
pop edx
mov ecx, eax
call sub_402bb0()
mov [esi], edi
mov [esi+0x08], ebx
mov [esi+0x04], ebp
pop esi
pop edi
pop ebx
pop ebp
ret
}
/* DISPLAY WARNING: Type casts are NOT being printed */
void __fastcall sub_4012a4(int32_t *param_1,int32_t param_2,uint32_t param_3)
{
int32_t iVar1;
int32_t iVar2;
iVar1 = *(param_2 + 0xb0);
if (iVar1 != 0) {
iVar2 = param_3 + 1;
param_3 = *(param_2 + 0x1e8);
param_2 = iVar2;
}
sub_402bb0();
*param_1 = iVar1;
param_1[2] = param_3;
param_1[1] = param_2;
return;
}
0x4138E0 sub_4138e0 str 81 api 0 imm 31 Unknown
sub_4138e0() {
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x50
mov edi, [ebp+0x08]
mov eax, [ebp+0x0C]
mov [ebp-0x24], ecx
call .1
.1:
pop ecx
mov dword ptr [ebp-0x5C], 0x00
mov dword ptr [ebp-0x48], 0x00
mov [ebp-0x28], edx
mov [ebp-0x20], ecx
add eax, edi
mov [ebp-0x34], edi
mov [ebp-0x2C], eax
mov [ebp-0x30], eax
xor eax, eax
.2:
mov esi, eax
jmp .5
mov word ptr [ebp-0x18], 0x6E5C
nop cs:[eax+eax*1], ax
nop [eax], eax
.3:
mov dword ptr [ebp-0x12], 0x00
mov dword ptr [ebp-0x16], 0x00
mov bh, 0x02
mov dword ptr [ebp-0x1C], 0x00
.4:
movzx eax, word ptr [ebp-0x10]
movsd xmm0, qword ptr [ebp-0x18]
lea edx, [ebp-0x58]
mov esi, 0x01
mov [edx+0x08], ax
movsd [edx], xmm0
mov edx, [ebp-0x1C]
mov al, 0x01
.5:
cmp dl, bh
setb bl
and bl, al
cmp bl, 0x01
jz .16
cmp edi, [ebp-0x2C]
jz .19
movzx edx, byte ptr [edi]
movzx eax, dl
test dl, dl
js .6
inc edi
jmp .8
.6:
movzx esi, byte ptr [edi+0x01]
and eax, 0x1F
and esi, 0x3F
cmp dl, 0xDF
jbe .7
movzx ecx, byte ptr [edi+0x02]
shl esi, 0x06
and ecx, 0x3F
or ecx, esi
cmp dl, 0xF0
jb .10
movzx esi, byte ptr [edi+0x03]
shl ecx, 0x06
and eax, 0x07
shl eax, 0x12
and esi, 0x3F
or esi, ecx
mov ecx, [ebp-0x20]
or esi, eax
cmp esi, 0x110000
jz .19
add edi, 0x04
cmp esi, 0x27
jbe .9
jmp .11
.7:
shl eax, 0x06
add edi, 0x02
or eax, esi
.8:
mov esi, eax
cmp esi, 0x27
jnbe .11
.9:
mov eax, [esi*4+0x413B74]
add eax, ecx
jmp eax
mov word ptr [ebp-0x18], 0x305C
jmp .3
.10:
shl eax, 0x0C
add edi, 0x03
or ecx, eax
mov esi, ecx
mov ecx, [ebp-0x20]
cmp esi, 0x27
jbe .9
.11:
cmp esi, 0x5C
jnz .12
mov word ptr [ebp-0x18], 0x5C5C
jmp .3
.12:
cmp esi, 0x2FF
jbe .13
mov ecx, esi
call sub_403a60()
test al, al
jnz .14
.13:
mov ecx, esi
call sub_403950()
test al, al
jz .14
mov al, 0x80
mov [ebp-0x18], esi
mov bh, 0x81
mov [ebp-0x1C], eax
jmp .15
.14:
mov eax, esi
mov byte ptr [ebp-0x16], 0x00
mov word ptr [ebp-0x18], 0x00
mov bh, 0x0A
or eax, 0x01
bsr eax, eax
xor eax, 0x1C
shr eax, 0x02
lea ecx, [eax-0x02]
mov [ebp-0x1C], ecx
mov ecx, esi
shr ecx, 0x14
movzx ecx, byte ptr [ecx+"0123456789abcdef"]
mov [ebp-0x15], cl
mov ecx, esi
shr ecx, 0x10
and ecx, 0x0F
movzx ecx, byte ptr [ecx+"0123456789abcdef"]
mov [ebp-0x14], cl
mov ecx, esi
shr ecx, 0x0C
and ecx, 0x0F
movzx ecx, byte ptr [ecx+"0123456789abcdef"]
mov [ebp-0x13], cl
mov ecx, esi
shr ecx, 0x08
and ecx, 0x0F
movzx ecx, byte ptr [ecx+"0123456789abcdef"]
mov [ebp-0x12], cl
mov ecx, esi
and esi, 0x0F
shr ecx, 0x04
movzx edx, byte ptr [esi+"0123456789abcdef"]
and ecx, 0x0F
movzx ecx, byte ptr [ecx+"0123456789abcdef"]
mov [ebp-0x11], cl
mov [ebp-0x10], dl
mov byte ptr [ebp-0x0F], 0x7D
mov word ptr [ebp+eax*1-0x1A], 0x755C
mov byte ptr [ebp+eax*1-0x18], 0x7B
.15:
mov ecx, [ebp-0x20]
jmp .4
.16:
cmp bh, 0x80
mov [ebp-0x5C], esi
mov [ebp-0x34], edi
mov [ebp-0x4B], bh
jbe .17
mov eax, [ebp-0x58]
jmp .18
.17:
movzx eax, dl
movzx eax, byte ptr [ebp+eax*1-0x58]
.18:
inc dl
mov [ebp-0x1C], edx
push eax
push [ebp-0x24]
mov eax, [ebp-0x28]
call [eax+0x10]
mov edx, [ebp-0x1C]
add esp, 0x08
mov ecx, [ebp-0x20]
test al, al
mov eax, esi
jz .2
.19:
mov eax, ebx
add esp, 0x50
pop esi
pop edi
pop ebx
pop ebp
ret
}
/* DISPLAY WARNING: Type casts are NOT being printed */
uint32_t __fastcall sub_4138e0(undefined4 param_1,uint32_t param_2,uint8_t *param_3,int32_t param_4)
{
uint8_t *puVar1;
int16_t iVar2;
char cVar3;
undefined4 uVar4;
uint32_t uVar5;
uint32_t uVar6;
int32_t iVar7;
uint8_t uVar8;
uint8_t uVar9;
uint32_t unaff_EBX;
undefined4 uVar10;
undefined8 uStack_5c;
undefined2 uStack_54;
uint8_t uStack_4f;
undefined4 uStack_4c;
uint8_t *puStack_38;
uint8_t *puStack_34;
uint8_t *puStack_30;
uint32_t uStack_2c;
undefined4 uStack_28;
int32_t iStack_24;
undefined4 uStack_20;
undefined2 uStack_1c;
undefined uStack_1a;
undefined uStack_19;
undefined uStack_18;
undefined uStack_17;
undefined uStack_16;
undefined uStack_15;
undefined uStack_14;
undefined uStack_13;
uStack_28 = param_1;
uVar10 = 0;
uStack_4c = 0;
uStack_2c = param_2;
iStack_24 = 0x4138f7;
puStack_38 = param_3;
puStack_30 = param_3 + param_4;
puStack_34 = param_3 + param_4;
uVar4 = 0;
iVar7 = iStack_24;
uVar5 = param_2;
while( true ) {
while( true ) {
uVar9 = unaff_EBX >> 8;
uVar8 = uVar5 < uVar9 & uVar4;
unaff_EBX = CONCAT31(unaff_EBX >> 8, uVar8);
if (uVar8 != 1) break;
puStack_38 = param_3;
uStack_4f = uVar9;
if (uVar9 < 0x81) {
uVar6 = *(&uStack_5c + (uVar5 & 0xff));
}
else {
uVar6 = uStack_5c;
}
uStack_20 = CONCAT31(uVar5 >> 8, uVar5 + 1);
uVar10 = uVar4;
cVar3 = (**(uStack_2c + 0x10))(uStack_28, uVar6, uVar4);
iVar7 = iStack_24;
uVar5 = uStack_20;
if (cVar3 != '\0') {
return unaff_EBX;
}
}
if (param_3 == puStack_30) {
return unaff_EBX;
}
uVar8 = *param_3;
uVar5 = uVar8;
if (uVar8 < '\0') {
puVar1 = param_3 + 1;
if (uVar8 < 0xe0) {
param_3 = param_3 + 2;
uVar5 = (uVar5 & 0x1f) << 6 | *puVar1 & 0x3f;
}
else {
uVar6 = param_3[2] & 0x3f | (*puVar1 & 0x3f) << 6;
iVar7 = iStack_24;
if (uVar8 < 0xf0) {
param_3 = param_3 + 3;
uVar5 = uVar6 | (uVar5 & 0x1f) << 0xc;
}
else {
uVar5 = param_3[3] & 0x3f | uVar6 << 6 | (uVar5 & 7) << 0x12;
if (uVar5 == 0x110000) {
return unaff_EBX;
}
param_3 = param_3 + 4;
}
}
}
else {
param_3 = param_3 + 1;
}
if (uVar5 < 0x28) break;
if (uVar5 == 0x5c) {
uStack_1c = 0x5c5c;
uStack_16 = 0;
uStack_15 = 0;
uStack_14 = 0;
uStack_13 = 0;
uStack_1a = 0;
uStack_19 = 0;
uStack_18 = 0;
uStack_17 = 0;
unaff_EBX = 0x200;
uStack_20 = 0;
}
else {
if (((uVar5 < 0x300) || (cVar3 = sub_403a60(uVar10), cVar3 == '\0')) &&
(uVar4 = sub_403950(), uVar4 != '\0')) {
uStack_1c = uVar5;
uStack_1a = uVar5 >> 0x10;
uStack_19 = uVar5 >> 0x18;
uStack_19 = 0;
iVar2 = 0x81;
uStack_20 = CONCAT31(uVar4 >> 8, 0x80);
}
else {
uStack_1a = 0;
uStack_1c = 0;
iVar2 = 10;
uVar6 = 0x1f;
if ((uVar5 | 1) != 0) {
for (; (uVar5 | 1) >> uVar6 == 0; uVar6 = uVar6 - 1) {
}
}
uVar6 = (uVar6 ^ 0x1c) >> 2;
uStack_20 = uVar6 - 2;
uStack_19 = *((uVar5 >> 0x14) + "0123456789abcdef");
uStack_18 = *((uVar5 >> 0x10 & 0xf) + "0123456789abcdef");
uStack_17 = *((uVar5 >> 0xc & 0xf) + "0123456789abcdef");
uStack_16 = *((uVar5 >> 8 & 0xf) + "0123456789abcdef");
uStack_15 = *((uVar5 >> 4 & 0xf) + "0123456789abcdef");
uStack_14 = *((uVar5 & 0xf) + "0123456789abcdef");
uStack_13 = 0x7d;
*(&uStack_20 + uVar6 + 2) = 0x755c;
*(&uStack_1c + uVar6) = 0x7b;
}
unaff_EBX = iVar2 << 8;
iVar7 = iStack_24;
}
uVar4 = 1;
uStack_54 = CONCAT11(uStack_13, uStack_14);
uStack_5c = CONCAT17(uStack_15,
CONCAT16(uStack_16,
CONCAT15(uStack_17,
CONCAT14(uStack_18, CONCAT13(uStack_19, CONCAT12(uStack_1a, uStack_1c))))
));
uVar5 = uStack_20;
}
/* WARNING: Could not recover jumptable at 0x004139f5. Too many branches */
/* WARNING: Treating indirect jump as call */
uVar5 = (*(*(uVar5 * 4 + 0x413b74) + iVar7))();
return uVar5;
}
0x403460 sub_403460 str 34 api 0 imm 17 Unknown
sub_403460() {
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x28
cmp ecx, 0x3E8
mov eax, edx
mov edi, 0x14
mov [ebp-0x14], edx
mov [ebp-0x10], ecx
sbb eax, 0x00
jb .2
mov esi, ecx
mov ebx, 0x14
mov ecx, edx
nop
.1:
lea eax, [ebx-0x04]
mov [ebp-0x20], ecx
mov [ebp-0x1C], eax
push 0x00
push 0x2710
push ecx
push esi
call __aulldiv()
imul edi, eax, 0x2710
mov ecx, esi
mov [ebp-0x18], eax
sub ecx, edi
movzx eax, cx
shr eax, 0x02
imul eax, eax, 0x147B
shr eax, 0x11
imul edi, eax, 0x64
movzx eax, word ptr [eax+eax*1+0xB1A2EB]
sub ecx, edi
mov edi, [ebp-0x1C]
mov [ebp+ebx*1-0x38], ax
movzx eax, cx
mov ecx, edx
movzx eax, word ptr [eax+eax*1+0xB1A2EB]
mov [ebp+ebx*1-0x36], ax
mov eax, 0x98967F
mov ebx, edi
cmp eax, esi
mov eax, 0x00
sbb eax, [ebp-0x20]
mov eax, [ebp-0x18]
mov esi, eax
jb .1
jmp .3
.2:
mov eax, ecx
.3:
mov ecx, 0x09
xor esi, esi
mov ebx, 0x00
cmp ecx, eax
sbb ebx, edx
mov ebx, eax
jnb .4
movzx eax, bx
shr eax, 0x02
imul eax, eax, 0x147B
shr eax, 0x11
imul ecx, eax, 0x64
sub ebx, ecx
movzx ecx, bx
mov ebx, eax
movzx ecx, word ptr [ecx+ecx*1+0xB1A2EB]
mov [ebp+edi*1-0x36], cx
add edi, 0xFFFFFFFE
jmp .5
.4:
mov esi, edx
.5:
mov eax, [ebp-0x10]
mov ecx, [ebp+0x08]
or eax, [ebp-0x14]
jz .6
or esi, ebx
jz .7
.6:
and ebx, 0x0F
movzx eax, byte ptr [ebx+ebx*1+0xB1A2EC]
mov [ebp+edi*1-0x35], al
dec edi
.7:
mov eax, 0x14
lea esi, [ebp+edi*1-0x34]
mov edx, 0x01
sub eax, edi
push eax
push esi
push 0x00
push 0x01
call sub_402c00()
add esp, 0x38
pop esi
pop edi
pop ebx
pop ebp
ret
}
/* DISPLAY WARNING: Type casts are NOT being printed */
void __fastcall sub_403460(uint32_t param_1,uint32_t param_2)
{
uint32_t uVar1;
uint32_t uVar2;
int32_t iVar3;
int32_t iVar4;
bool bVar5;
undefined8 uVar6;
undefined4 uStack_3c;
undefined auStack_38 [20];
uint32_t uStack_24;
int32_t iStack_20;
uint32_t uStack_1c;
uint32_t uStack_18;
uint32_t uStack_14;
iVar4 = 0x14;
uStack_18 = param_2;
uStack_14 = param_1;
if ((param_1 < 1000) <= param_2) {
iVar3 = 0x14;
do {
iStack_20 = iVar3 + -4;
uStack_3c = 0;
uStack_24 = param_2;
uVar6 = __aulldiv(param_1, param_2, 10000);
iVar4 = iStack_20;
param_2 = uVar6 >> 0x20;
uStack_1c = uVar6;
uVar2 = param_1 + uStack_1c * -10000;
uVar1 = (uVar2 & 0xffff) / 100;
*(auStack_38 + iVar3 + -4) = *(uVar1 * 2 + 0xb1a2eb);
*(auStack_38 + iVar3 + -2) = *((uVar2 + uVar1 * -100 & 0xffff) * 2 + 0xb1a2eb);
bVar5 = 9999999 < param_1;
param_1 = uStack_1c;
iVar3 = iVar4;
} while (uStack_24 != 0 || -uStack_24 < bVar5);
}
if (param_2 != 0 || -param_2 < (9 < param_1)) {
uVar1 = (param_1 & 0xffff) / 100;
*(auStack_38 + iVar4 + -2) = *((param_1 + uVar1 * -100 & 0xffff) * 2 + 0xb1a2eb);
iVar4 = iVar4 + -2;
param_1 = uVar1;
param_2 = 0;
}
if (((uStack_14 | uStack_18) == 0) || ((param_2 | param_1) != 0)) {
auStack_38[iVar4 + -1] = *((param_1 & 0xf) * 2 + 0xb1a2ec);
iVar4 = iVar4 + -1;
}
uStack_3c = 0x14 - iVar4;
sub_402c00(1, 0, auStack_38 + iVar4);
return;
}
0x4165E0 sub_4165e0 str 29 api 31 imm 88 Unknown
sub_4165e0() {
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x500
mov [ebp-0x1C], esp
mov dword ptr [ebp-0x10], 0xFFFFFFFF
mov dword ptr [ebp-0x14], SEH.50()
mov [ebp-0xAC], ecx
call .1
.1:
pop eax
mov ecx, fs:[0x0]
mov [ebp-0x68], eax
lea eax, [ebp-0x18]
mov [ebp-0x18], ecx
mov fs:[0x0], eax
mov eax, edx
add edx, 0x48
mov dword ptr [ebp-0xE4], 0x00
cmp byte ptr [eax+0x55], 0x00
mov [ebp-0xA8], eax
jz .2
lea ecx, [ebp-0xF4]
mov dword ptr [ebp-0x10], 0x00
call sub_41aaa0()
jmp .3
.2:
movzx eax, byte ptr [eax+0x54]
lea ecx, [ebp-0xF4]
mov dword ptr [ebp-0x10], 0x00
mov [ebp-0x34], al
call sub_41aaa0()
cmp byte ptr [ebp-0x34], 0x00
jz .8
.3:
cmp dword ptr [ebp-0xF4], 0x01
jnz .8
xor ecx, ecx
mov edx, 0x04
call sub_4211c0()
test eax, eax
jz .454
mov ecx, eax
mov dword ptr [eax], 0x48544150
mov [ebp-0x50C], eax
lea edx, [ebp-0x50C]
mov dword ptr [ebp-0x10], 0x29
mov [ebp-0x2C], eax
add ecx, 0x04
mov [ebp-0x508], ecx
lea ecx, [ebp-0x50]
mov word ptr [ebp-0x504], 0x00
call sub_41b650()
mov eax, [ebp-0x48]
mov ecx, [ebp-0x2C]
movsd xmm0, qword ptr [ebp-0x50]
mov dword ptr [ebp-0x50C], 0x04
mov edx, [ebp-0xF0]
mov dword ptr [ebp-0x28], 0x00
mov [ebp-0x508], ecx
mov dword ptr [ebp-0x504], 0x04
mov dword ptr [ebp-0x500], 0x00
movsd [ebp-0x4FC], xmm0
mov [ebp-0x4F4], eax
mov [ebp-0x20], eax
test edx, edx
mov eax, [ebp-0x4F8]
mov [ebp-0x34], eax
jz .11
mov eax, [ebp-0xEC]
mov [ebp-0x70], eax
.4:
movzx ecx, word ptr [edx+0x1EA]
lea esi, [edx+0xB4]
mov ebx, 0xFFFFFFFF
mov [ebp-0x30], edx
lea eax, [ecx+ecx*8]
mov [ebp-0x38], ecx
lea edi, [eax+eax*2]
add edi, ecx
.5:
test edi, edi
jz .6
push 0x01
push [esi+0x18]
push [esi+0x14]
push [ebp-0x20]
push [ebp-0x34]
call [kernel32.CompareStringOrdinal]
inc ebx
cmp eax, 0x01
jz .7
cmp eax, 0x02
jz .9
add esi, 0x1C
add edi, 0xFFFFFFE4
cmp eax, 0x03
jz .5
jmp .407
.6:
mov ebx, [ebp-0x38]
nop [eax+eax*1], ax
.7:
mov eax, [ebp-0x70]
sub eax, 0x01
jb .194
mov edx, [ebp-0x30]
mov [ebp-0x70], eax
mov edx, [edx+ebx*4+0x1EC]
jmp .4
.8:
mov eax, [ebp-0xA8]
xor ecx, ecx
jmp .13
.9:
mov ecx, [ebp-0x30]
shl ebx, 0x04
mov eax, [ecx+ebx*1+0x04]
mov [ebp-0x28], eax
mov eax, [ecx+ebx*1+0x08]
.10:
mov ecx, [ebp-0x2C]
jmp .11
.11:
mov edx, 0x01
mov [ebp-0x54], eax
call sub_402bb0()
cmp dword ptr [ebp-0x4FC], 0x00
jz .12
mov ecx, [ebp-0x34]
mov edx, 0x02
call sub_402bb0()
.12:
mov eax, [ebp-0xA8]
mov ecx, [ebp-0x28]
.13:
mov esi, [eax+0x20]
test esi, esi
jz .15
mov edx, [eax+0x1C]
mov eax, 0x41B8A0
cmp esi, 0x04
mov [ebp-0x28], ecx
jb .14
mov eax, [edx]
mov ecx, 0x5C5C3F5C
mov dword ptr [ebp-0x10], 0x01
bswap eax
cmp ecx, eax
mov ecx, 0x41B890
setnbe al
sbb al, 0x00
movsx eax, al
test eax, eax
mov eax, 0x41B8A0
cmovz eax, ecx
.14:
movzx ecx, byte ptr [edx+esi*1-0x01]
mov [ebp-0x58], edx
mov [ebp-0x30], esi
mov byte ptr [ebp-0x21], 0x01
mov dword ptr [ebp-0x10], 0x01
mov [ebp-0x34], ecx
push ecx
call eax
add esp, 0x04
test al, al
jz .21
.15:
mov byte ptr [ebp-0xB4], 0x02
mov dword ptr [ebp-0xB0], 0xB1D530
.16:
mov ebx, [ebp-0xB4]
mov esi, [ebp-0xB0]
.17:
mov eax, [ebp-0xAC]
cmp dword ptr [ebp-0xF4], 0x00
mov [eax+0x04], esi
mov [eax], ebx
mov dword ptr [eax+0x08], 0x02
jz .19
.18:
lea ecx, [ebp-0xF0]
mov dword ptr [ebp-0x10], 0x00
call sub_41c3b0()
.19:
cmp dword ptr [ebp-0xE4], 0x04
jb .20
push [ebp-0xE0]
call [kernel32.CloseHandle]
.20:
mov eax, [ebp-0x18]
mov fs:[0x0], eax
add esp, 0x500
pop esi
pop edi
pop ebx
pop ebp
ret
.21:
mov edi, [ebp-0x30]
mov edx, [ebp-0x58]
lea esi, [edx+edi*1]
cmp edi, 0x03
mov [ebp-0x80], esi
jbe .22
movzx eax, byte ptr [esi-0x04]
mov ecx, eax
add cl, 0xBF
cmp cl, 0x1A
setb cl
shl cl, 0x05
or cl, al
xor eax, eax
cmp cl, 0x2E
mov ecx, 0x00
jnz .26
; listing truncated
/* WARNING: Removing unreachable block (ram,0x00417db6) */
/* WARNING: Removing unreachable block (ram,0x0041742f) */
/* WARNING: Removing unreachable block (ram,0x00417e74) */
/* WARNING: Removing unreachable block (ram,0x00417e7d) */
/* WARNING: Removing unreachable block (ram,0x00417e91) */
/* WARNING: Removing unreachable block (ram,0x00417ea0) */
/* WARNING: Removing unreachable block (ram,0x00417eac) */
/* WARNING: Removing unreachable block (ram,0x00417eb4) */
/* WARNING: Removing unreachable block (ram,0x00416b46) */
/* WARNING: Removing unreachable block (ram,0x0041736d) */
/* WARNING: Removing unreachable block (ram,0x00416b94) */
/* WARNING: Removing unreachable block (ram,0x004169c1) */
/* WARNING: Removing unreachable block (ram,0x004172be) */
/* WARNING: Removing unreachable block (ram,0x00417fd7) */
/* WARNING: Removing unreachable block (ram,0x004185e9) */
/* WARNING: Removing unreachable block (ram,0x00419ba4) */
/* WARNING: Removing unreachable block (ram,0x00419bc3) */
/* WARNING: Removing unreachable block (ram,0x00417586) */
/* WARNING: Removing unreachable block (ram,0x004175bb) */
/* WARNING: Removing unreachable block (ram,0x004175e0) */
/* WARNING: Removing unreachable block (ram,0x0041763a) */
/* WARNING: Removing unreachable block (ram,0x004175e5) */
/* WARNING: Removing unreachable block (ram,0x004175f1) */
/* WARNING: Removing unreachable block (ram,0x00417604) */
/* WARNING: Removing unreachable block (ram,0x0041816b) */
/* WARNING: Removing unreachable block (ram,0x00418179) */
/* WARNING: Removing unreachable block (ram,0x00418186) */
/* WARNING: Removing unreachable block (ram,0x0041761a) */
/* WARNING: Removing unreachable block (ram,0x004175c0) */
/* WARNING: Removing unreachable block (ram,0x00417e09) */
/* WARNING: Removing unreachable block (ram,0x00419ff2) */
/* WARNING: Removing unreachable block (ram,0x00417e14) */
/* WARNING: Removing unreachable block (ram,0x004184db) */
/* WARNING: Removing unreachable block (ram,0x00418828) */
/* WARNING: Removing unreachable block (ram,0x004184e6) */
/* WARNING: Removing unreachable block (ram,0x004184f9) */
/* WARNING: Removing unreachable block (ram,0x00417e27) */
/* WARNING: Removing unreachable block (ram,0x0041882d) */
/* WARNING: Removing unreachable block (ram,0x0041883e) */
/* WARNING: Removing unreachable block (ram,0x0041884b) */
/* WARNING: Removing unreachable block (ram,0x00418880) */
/* WARNING: Removing unreachable block (ram,0x00418884) */
/* WARNING: Removing unreachable block (ram,0x004188d7) */
/* WARNING: Removing unreachable block (ram,0x004188f0) */
/* WARNING: Removing unreachable block (ram,0x004189df) */
/* WARNING: Removing unreachable block (ram,0x00418a14) */
/* WARNING: Removing unreachable block (ram,0x00418a47) */
/* WARNING: Removing unreachable block (ram,0x00418a8d) */
/* WARNING: Removing unreachable block (ram,0x00418a99) */
/* WARNING: Removing unreachable block (ram,0x00418bc7) */
/* WARNING: Removing unreachable block (ram,0x00418be2) */
/* WARNING: Removing unreachable block (ram,0x00418bff) */
/* WARNING: Removing unreachable block (ram,0x00418c29) */
/* WARNING: Removing unreachable block (ram,0x004192cf) */
/* WARNING: Removing unreachable block (ram,0x004192d4) */
/* WARNING: Removing unreachable block (ram,0x0041936d) */
/* WARNING: Removing unreachable block (ram,0x00419375) */
/* WARNING: Removing unreachable block (ram,0x00419440) */
/* WARNING: Removing unreachable block (ram,0x00419535) */
/* WARNING: Removing unreachable block (ram,0x00419381) */
/* WARNING: Removing unreachable block (ram,0x00419448) */
/* WARNING: Removing unreachable block (ram,0x00419453) */
/* WARNING: Removing unreachable block (ram,0x00419456) */
/* WARNING: Removing unreachable block (ram,0x00419537) */
/* WARNING: Removing unreachable block (ram,0x0041953c) */
/* WARNING: Removing unreachable block (ram,0x0041953f) */
/* WARNING: Removing unreachable block (ram,0x00419542) */
/* WARNING: Removing unreachable block (ram,0x00419545) */
/* WARNING: Removing unreachable block (ram,0x0041a12e) */
/* WARNING: Removing unreachable block (ram,0x00419554) */
/* WARNING: Removing unreachable block (ram,0x00419557) */
/* WARNING: Removing unreachable block (ram,0x00419577) */
/* WARNING: Removing unreachable block (ram,0x00419594) */
/* WARNING: Removing unreachable block (ram,0x004195b9) */
/* WARNING: Removing unreachable block (ram,0x004195c4) */
/* WARNING: Removing unreachable block (ram,0x004195cc) */
/* WARNING: Removing unreachable block (ram,0x004195ec) */
/* WARNING: Removing unreachable block (ram,0x0041963e) */
/* WARNING: Removing unreachable block (ram,0x0041965d) */
/* WARNING: Removing unreachable block (ram,0x00419662) */
/* WARNING: Removing unreachable block (ram,0x0041966a) */
/* WARNING: Removing unreachable block (ram,0x00419675) */
/* WARNING: Removing unreachable block (ram,0x0041967c) */
/* WARNING: Removing unreachable block (ram,0x00419654) */
/* WARNING: Removing unreachable block (ram,0x00419c3a) */
/* WARNING: Removing unreachable block (ram,0x0041967e) */
/* WARNING: Removing unreachable block (ram,0x0041968f) */
/* WARNING: Removing unreachable block (ram,0x004196f3) */
/* WARNING: Removing unreachable block (ram,0x004196fd) */
/* WARNING: Removing unreachable block (ram,0x0041972a) */
/* WARNING: Removing unreachable block (ram,0x00419737) */
/* WARNING: Removing unreachable block (ram,0x00419770) */
/* WARNING: Removing unreachable block (ram,0x00419746) */
/* WARNING: Removing unreachable block (ram,0x0041977a) */
/* WARNING: Removing unreachable block (ram,0x00419757) */
/* WARNING: Removing unreachable block (ram,0x00419734) */
/* WARNING: Removing unreachable block (ram,0x00419782) */
/* WARNING: Removing unreachable block (ram,0x0041979e) */
/* WARNING: Removing unreachable block (ram,0x00419715) */
/* WARNING: Removing unreachable block (ram,0x004197a7) */
/* WARNING: Removing unreachable block (ram,0x004197af) */
/* WARNING: Removing unreachable block (ram,0x004197bc) */
/* WARNING: Removing unreachable block (ram,0x004197d2) */
/* WARNING: Removing unreachable block (ram,0x004197d7) */
/* WARNING: Removing unreachable block (ram,0x004197e0) */
/* WARNING: Removing unreachable block (ram,0x004197ed) */
/* WARNING: Removing unreachable block (ram,0x00419721) */
/* WARNING: Removing unreachable block (ram,0x004197f9) */
/* WARNING: Removing unreachable block (ram,0x0041983b) */
/* WARNING: Removing unreachable block (ram,0x004197ff) */
/* WARNING: Removing unreachable block (ram,0x00419807) */
/* WARNING: Removing unreachable block (ram,0x0041981e) */
/* WARNING: Removing unreachable block (ram,0x00419845) */
/* WARNING: Removing unreachable block (ram,0x0041986b) */
/* WARNING: Removing unreachable block (ram,0x0041987c) */
/* WARNING: Removing unreachable block (ram,0x00419a72) */
/* WARNING: Removing unreachable block (ram,0x00419a7e) */
/* WARNING: Removing unreachable block (ram,0x00419af3) */
/* WARNING: Removing unreachable block (ram,0x00419a8b) */
/* WARNING: Removing unreachable block (ram,0x00419a91) */
/* WARNING: Removing unreachable block (ram,0x00419a97) */
/* WARNING: Removing unreachable block (ram,0x00419aa1) */
/* WARNING: Removing unreachable block (ram,0x00419aa7) */
/* WARNING: Removing unreachable block (ram,0x00419ab1) */
/* WARNING: Removing unreachable block (ram,0x00419ac8) */
/* WARNING: Removing unreachable block (ram,0x00419ad5) */
/* WARNING: Removing unreachable block (ram,0x00419888) */
/* WARNING: Removing unreachable block (ram,0x004198a2) */
/* WARNING: Removing unreachable block (ram,0x004198e3) */
/* WARNING: Removing unreachable block (ram,0x004198b3) */
/* WARNING: Removing unreachable block (ram,0x004198f9) */
/* WARNING: Removing unreachable block (ram,0x004198c7) */
/* WARNING: Removing unreachable block (ram,0x00419904) */
/* WARNING: Removing unreachable block (ram,0x00419913) */
/* WARNING: Removing unreachable block (ram,0x00419892) */
/* WARNING: Removing unreachable block (ram,0x00419870) */
/* WARNING: Removing unreachable block (ram,0x00419932) */
/* WARNING: Removing unreachable block (ram,0x004199a8) */
/* WARNING: Removing unreachable block (ram,0x004199ad) */
/* WARNING: Removing unreachable block (ram,0x004199b2) */
/* WARNING: Removing unreachable block (ram,0x0041993a) */
/* WARNING: Removing unreachable block (ram,0x004199b5) */
/* WARNING: Removing unreachable block (ram,0x00419a13) */
/* WARNING: Removing unreachable block (ram,0x004199bf) */
/* WARNING: Removing unreachable block (ram,0x0041993f) */
/* WARNING: Removing unreachable block (ram,0x00419948) */
/* WARNING: Removing unreachable block (ram,0x00419a3f) */
/* WARNING: Removing unreachable block (ram,0x0041995e) */
/* WARNING: Removing unreachable block (ram,0x00419962) */
/* WARNING: Removing unreachable block (ram,0x0041996c) */
/* WARNING: Removing unreachable block (ram,0x0041996f) */
/* WARNING: Removing unreachable block (ram,0x00419976) */
/* WARNING: Removing unreachable block (ram,0x0041999f) */
/* WARNING: Removing unreachable block (ram,0x004199e0) */
/* WARNING: Removing unreachable block (ram,0x004199e3) */
/* WARNING: Removing unreachable block (ram,0x004199e5) */
/* WARNING: Removing unreachable block (ram,0x00419851) */
/* WARNING: Removing unreachable block (ram,0x00419860) */
/* WARNING: Removing unreachable block (ram,0x00419694) */
/* WARNING: Removing unreachable block (ram,0x00419686) */
/* WARNING: Removing unreachable block (ram,0x0041969e) */
/* WARNING: Removing unreachable block (ram,0x004196d7) */
/* WARNING: Removing unreachable block (ram,0x004196ad) */
/* WARNING: Removing unreachable block (ram,0x004196e1) */
/* WARNING: Removing unreachable block (ram,0x004196be) */
/* WARNING: Removing unreachable block (ram,0x004196e9) */
/* WARNING: Removing unreachable block (ram,0x004196f1) */
/* WARNING: Removing unreachable block (ram,0x00419687) */
/* WARNING: Removing unreachable block (ram,0x004197ef) */
/* WARNING: Removing unreachable block (ram,0x00419ae0) */
/* WARNING: Removing unreachable block (ram,0x00419aee) */
/* WARNING: Removing unreachable block (ram,0x00419606) */
/* WARNING: Removing unreachable block (ram,0x00419b58) */
/* WARNING: Removing unreachable block (ram,0x00419631) */
/* WARNING: Removing unreachable block (ram,0x00419639) */
/* WARNING: Removing unreachable block (ram,0x00419b1d) */
/* WARNING: Removing unreachable block (ram,0x00419b27) */
/* WARNING: Removing unreachable block (ram,0x00419b44) */
/* WARNING: Removing unreachable block (ram,0x004192dc) */
/* WARNING: Removing unreachable block (ram,0x004192e8) */
/* WARNING: Removing unreachable block (ram,0x0041938b) */
/* WARNING: Removing unreachable block (ram,0x00419392) */
/* WARNING: Removing unreachable block (ram,0x00418c32) */
/* WARNING: Removing unreachable block (ram,0x00418c42) */
/* WARNING: Removing unreachable block (ram,0x00418c4e) */
/* WARNING: Removing unreachable block (ram,0x00418c5a) */
/* WARNING: Removing unreachable block (ram,0x00418c66) */
/* WARNING: Removing unreachable block (ram,0x00418c72) */
/* WARNING: Removing unreachable block (ram,0x00418c7e) */
/* WARNING: Removing unreachable block (ram,0x00418c8a) */
/* WARNING: Removing unreachable block (ram,0x00418c96) */
/* WARNING: Removing unreachable block (ram,0x00418ca2) */
/* WARNING: Removing unreachable block (ram,0x00418cae) */
/* WARNING: Removing unreachable block (ram,0x00418cba) */
/* WARNING: Removing unreachable block (ram,0x00418cc6) */
/* WARNING: Removing unreachable block (ram,0x00418cd2) */
/* WARNING: Removing unreachable block (ram,0x00418cde) */
/* WARNING: Removing unreachable block (ram,0x00418cea) */
/* WARNING: Removing unreachable block (ram,0x00418cf6) */
/* WARNING: Removing unreachable block (ram,0x00418d02) */
/* WARNING: Removing unreachable block (ram,0x00418d0e) */
/* WARNING: Removing unreachable block (ram,0x00418d1a) */
/* WARNING: Removing unreachable block (ram,0x00418d26) */
/* WARNING: Removing unreachable block (ram,0x00418d32) */
/* WARNING: Removing unreachable block (ram,0x00418d3e) */
/* WARNING: Removing unreachable block (ram,0x00418d4a) */
/* WARNING: Removing unreachable block (ram,0x00418d56) */
/* WARNING: Removing unreachable block (ram,0x00418d62) */
/* WARNING: Removing unreachable block (ram,0x00418d6e) */
/* WARNING: Removing unreachable block (ram,0x00418d7a) */
/* WARNING: Removing unreachable block (ram,0x00418d86) */
/* WARNING: Removing unreachable block (ram,0x00418d92) */
/* WARNING: Removing unreachable block (ram,0x0041945b) */
/* WARNING: Removing unreachable block (ram,0x00418d9e) */
/* WARNING: Removing unreachable block (ram,0x00419460) */
/* WARNING: Removing unreachable block (ram,0x00418daa) */
/* WARNING: Removing unreachable block (ram,0x00418db9) */
/* WARNING: Removing unreachable block (ram,0x00419b74) */
/* WARNING: Removing unreachable block (ram,0x00419b7f) */
/* listing truncated */
| Library | Functions |
|---|---|
| runtime/other | 166 |
| openssl | 14 |
| protobuf | 5 |
| curl | 4 |
| sqlite3 | 4 |
| rust-1.75 | 3 |
| rust-1.82 | 3 |
| rust-1.77 | 2 |