joyce8/EMBER2024-capa huggingface dataset:
Function at 0x40cfd0
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5a641e
mov eax, dword fs:[0]
push eax
sub esp, 0x828
mov eax, dword [0x632a40]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov esi, dword [ebp + 8]
lea eax, [ebp - 0x810]
push 0x800
mov dword [ebp - 4], 0
push 0
push eax
mov dword [ebp - 0x830], esi
mov dword [ebp - 0x82c], 0
call fcn.0057ff70
lea eax, [edi + 0x8c]
add esp, 0xc
cmp dword [eax + 0x14], 8
jb 0x40d03d
mov eax, dword [eax]
push eax
push 0x400
lea eax, [ebp - 0x810]
push eax
push str.gdysgf
push 0x623c30
push str.GDsftinf
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov dword [esi + 0x14], 7
cmp dword [esi + 0x14], 8
mov dword [esi + 0x10], 0
jb 0x40d085
mov eax, dword [esi]
jmp 0x40d087
mov eax, esi
xor ecx, ecx
mov word [eax], cx
cmp word [ebp - 0x810], cx
je 0x40d0af
lea ecx, [ebp - 0x810]
lea edx, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40d0a0
sub ecx, edx
sar ecx, 1
push ecx
lea eax, [ebp - 0x810]
mov ecx, esi
push eax
call fcn.00404db0
mov dword [ebp - 4], 0
cmp dword [esi + 0x14], 8
mov dword [ebp - 0x82c], 1
jb 0x40d0d9
mov eax, dword [esi]
jmp 0x40d0db
mov eax, esi
mov ecx, str.gdysgf
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x40d106
test dx, dx
je 0x40d102
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x40d106
add eax, 4
add ecx, 4
test dx, dx
jne 0x40d0e0
xor eax, eax
jmp 0x40d10b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x40d1e8
cmp byte [edi + 5], 0
lea eax, [ebp - 0x828]
push str.gdysgf
push 0x623c30
push str.GDsftinf
push eax
je 0x40d185
mov ecx, edi
call fcn.0040d4d0
mov edi, eax
cmp esi, edi
je 0x40d176
mov eax, dword [esi + 0x14]
cmp eax, 8
jb 0x40d14f
inc eax
mov ecx, esi
push eax
push dword [esi]
call fcn.00405130
mov dword [esi + 0x14], 7
cmp dword [esi + 0x14], 8
mov dword [esi + 0x10], 0
jb 0x40d167
mov eax, dword [esi]
jmp 0x40d169
mov eax, esi
xor ecx, ecx
mov word [eax], cx
mov ecx, esi
push edi
call fcn.00404fd0
mov ecx, dword [ebp - 0x814]
cmp ecx, 8
jb 0x40d1e8
inc ecx
push ecx
jmp 0x40d1d7
call fcn.0040d4a0
mov edi, eax
cmp esi, edi
je 0x40d1ca
mov ecx, dword [esi + 0x14]
cmp ecx, 8
jb 0x40d1a3
inc ecx
push ecx
push dword [esi]
mov ecx, esi
call fcn.00405130
mov dword [esi + 0x14], 7
cmp dword [esi + 0x14], 8
mov dword [esi + 0x10], 0
jb 0x40d1bb
mov eax, dword [esi]
jmp 0x40d1bd
mov eax, esi
xor ecx, ecx
mov word [eax], cx
mov ecx, esi
push edi
call fcn.00404fd0
mov eax, dword [ebp - 0x814]
cmp eax, 8
jb 0x40d1e8
inc eax
push eax
push dword [ebp - 0x828]
lea ecx, [ebp - 0x828]
call fcn.00405130
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00579ec9
mov esp, ebp
pop ebp
ret 0x10
Function at 0x40d210
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5a6467
mov eax, dword fs:[0]
push eax
sub esp, 0x834
mov eax, dword [0x632a40]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
cmp dword [esi + 0xa0], 8
lea eax, [esi + 0x8c]
mov edi, dword [ebp + 0xc]
jb 0x40d253
mov eax, dword [eax]
push eax
push 0
push edi
push str.GDftSet
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
test eax, eax
jne 0x40d398
push eax
push 0x623880
lea ecx, [ebp - 0x828]
mov dword [ebp - 0x814], 7
mov dword [ebp - 0x818], eax
mov word [ebp - 0x828], ax
call fcn.00404db0
push 0x800
lea eax, [ebp - 0x810]
mov dword [ebp - 4], 0
push 0
push eax
call fcn.0057ff70
push 0
lea eax, [ebp - 0x810]
push 0x623c38
push eax
call fcn.0040a360
add esp, 0x18
lea eax, [ebp - 0x810]
cmp byte [esi + 5], 0
push eax
push edi
lea eax, [ebp - 0x840]
push str.GDftSet
push eax
je 0x40d2e7
mov ecx, esi
call fcn.0040d4d0
mov esi, eax
jmp 0x40d2ee
call fcn.0040d4a0
mov esi, eax
lea eax, [ebp - 0x828]
cmp eax, esi
je 0x40d33b
mov eax, dword [ebp - 0x814]
cmp eax, 8
jb 0x40d316
inc eax
lea ecx, [ebp - 0x828]
push eax
push dword [ebp - 0x828]
call fcn.00405130
xor eax, eax
mov dword [ebp - 0x814], 7
push esi
lea ecx, [ebp - 0x828]
mov dword [ebp - 0x818], eax
mov word [ebp - 0x828], ax
call fcn.00404fd0
mov eax, dword [ebp - 0x82c]
cmp eax, 8
jb 0x40d359
inc eax
lea ecx, [ebp - 0x840]
push eax
push dword [ebp - 0x840]
call fcn.00405130
cmp dword [ebp - 0x814], 8
lea eax, [ebp - 0x828]
cmovae eax, dword [ebp - 0x828]
push eax
call fcn.005879c6
mov esi, eax
add esp, 4
mov eax, dword [ebp - 0x814]
cmp eax, 8
jb 0x40d396
inc eax
lea ecx, [ebp - 0x828]
push eax
push dword [ebp - 0x828]
call fcn.00405130
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00579ec9
mov esp, ebp
pop ebp
ret 0xc
Function at 0x4123b0
Capabilities:
Get installed programs
Query or enumerate registry key
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x428
mov eax, dword [0x632a40]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
lea eax, [ebp - 0x418]
mov dword [ebp - 0x428], ecx
push eax
push 9
xor esi, esi
push esi
push str.SoftwareMicrosoftWindowsCurrentVersionUninstall_
push reloc.WS2_32.dll_accept
mov dword [ebp - 0x418], esi
mov dword [ebp - 0x41c], esi
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
je 0x412407
xor eax, eax
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00579ec9
mov esp, ebp
pop ebp
ret
push ebx
push edi
push 0x208
lea eax, [ebp - 0x20c]
push 0
push eax
call fcn.0057ff70
add esp, 0xc
lea eax, [ebp - 0x20c]
xor edi, edi
push 0x104
push eax
push edi
push dword [ebp - 0x418]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyW]
mov ebx, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
test eax, eax
jne 0x412514
nop dword [eax + eax]
lea eax, [ebp - 0x41c]
push eax
lea eax, [ebp - 0x20c]
push eax
push dword [ebp - 0x418]
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyW]
test eax, eax
jne 0x4124f2
push 0x208
push eax
lea eax, [ebp - 0x414]
mov dword [ebp - 0x420], 0x104
push eax
call fcn.0057ff70
add esp, 0xc
mov dword [ebp - 0x424], 1
lea eax, [ebp - 0x420]
push eax
lea eax, [ebp - 0x414]
push eax
lea eax, [ebp - 0x424]
push eax
push 0
push str.DisplayName
push dword [ebp - 0x41c]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x4124e6
push dword [ebp - 0x428]
lea eax, [ebp - 0x414]
push eax
call fcn.0057f14d
add esp, 8
test eax, eax
mov eax, 1
cmovne esi, eax
push dword [ebp - 0x41c]
call ebx
test esi, esi
jne 0x412514
push 0x104
lea eax, [ebp - 0x20c]
inc edi
push eax
push edi
push dword [ebp - 0x418]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyW]
test eax, eax
je 0x412450
push dword [ebp - 0x418]
call ebx
mov ecx, dword [ebp - 4]
mov eax, esi
pop edi
pop ebx
xor ecx, ebp
pop esi
call fcn.00579ec9
mov esp, ebp
pop ebp
ret
Function at 0x412530
Capabilities:
Get installed programs
Query or enumerate registry key
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x428
mov eax, dword [0x632a40]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
xor esi, esi
mov dword [ebp - 0x428], ecx
push 0x208
lea eax, [ebp - 0x20c]
mov dword [ebp - 0x418], esi
push esi
push eax
mov dword [ebp - 0x41c], esi
call fcn.0057ff70
add esp, 0xc
lea eax, [ebp - 0x418]
push eax
push 0x109
push esi
push str.SoftwareMicrosoftWindowsCurrentVersionUninstall_
push reloc.WS2_32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov ebx, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
test eax, eax
jne 0x412694
push 0x104
lea eax, [ebp - 0x20c]
xor edi, edi
push eax
push edi
push dword [ebp - 0x418]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyW]
test eax, eax
jne 0x412684
nop dword [eax]
lea eax, [ebp - 0x41c]
push eax
lea eax, [ebp - 0x20c]
push eax
push dword [ebp - 0x418]
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyW]
test eax, eax
jne 0x412662
push 0x208
push eax
lea eax, [ebp - 0x414]
mov dword [ebp - 0x420], 0x104
push eax
call fcn.0057ff70
add esp, 0xc
mov dword [ebp - 0x424], 1
lea eax, [ebp - 0x420]
push eax
lea eax, [ebp - 0x414]
push eax
lea eax, [ebp - 0x424]
push eax
push 0
push str.DisplayName
push dword [ebp - 0x41c]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x412656
push dword [ebp - 0x428]
lea eax, [ebp - 0x414]
push eax
call fcn.0057f14d
add esp, 8
test eax, eax
mov eax, 1
cmovne esi, eax
push dword [ebp - 0x41c]
call ebx
test esi, esi
jne 0x412684
push 0x104
lea eax, [ebp - 0x20c]
inc edi
push eax
push edi
push dword [ebp - 0x418]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyW]
test eax, eax
je 0x4125c0
push dword [ebp - 0x418]
call ebx
test esi, esi
jne 0x4127ac
lea eax, [ebp - 0x418]
push eax
push 9
push 0
push 0x6256e0
push reloc.WS2_32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x4127ac
push 0x104
lea eax, [ebp - 0x20c]
xor edi, edi
push eax
push edi
push dword [ebp - 0x418]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyW]
test eax, eax
jne 0x4127a4
nop word [eax + eax]
lea eax, [ebp - 0x41c]
push eax
lea eax, [ebp - 0x20c]
push eax
push dword [ebp - 0x418]
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyW]
test eax, eax
jne 0x412782
push 0x208
push eax
lea eax, [ebp - 0x414]
mov dword [ebp - 0x424], 0x104
push eax
call fcn.0057ff70
add esp, 0xc
mov dword [ebp - 0x420], 1
lea eax, [ebp - 0x424]
push eax
lea eax, [ebp - 0x414]
push eax
lea eax, [ebp - 0x420]
push eax
push 0
push str.DisplayName
push dword [ebp - 0x41c]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x412776
push dword [ebp - 0x428]
lea eax, [ebp - 0x414]
push eax
call fcn.0057f14d
add esp, 8
test eax, eax
mov eax, 1
cmovne esi, eax
push dword [ebp - 0x41c]
call ebx
test esi, esi
jne 0x4127a4
push 0x104
lea eax, [ebp - 0x20c]
inc edi
push eax
push edi
push dword [ebp - 0x418]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyW]
test eax, eax
je 0x4126e0
push dword [ebp - 0x418]
call ebx
mov ecx, dword [ebp - 4]
mov eax, esi
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00579ec9
mov esp, ebp
pop ebp
ret
Function at 0x4127c0
Capabilities:
Query or enumerate registry key

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x214
mov eax, dword [0x632a40]
xor eax, ebp
mov dword [ebp - 4], eax
push edi
xor edi, edi
mov dword [ebp - 0x214], ecx
push 0x208
lea eax, [ebp - 0x20c]
mov dword [ebp - 0x210], edi
push edi
push eax
call fcn.0057ff70
add esp, 0xc
lea eax, [ebp - 0x210]
push eax
push 0x109
push edi
push str.SYSTEMCurrentControlSetServices_
push reloc.WS2_32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x412888
push ebx
mov ebx, dword [sym.imp.ADVAPI32.dll_RegEnumKeyW]
lea eax, [ebp - 0x20c]
push esi
push 0x104
push eax
xor esi, esi
push esi
push dword [ebp - 0x210]
call ebx
test eax, eax
jne 0x41287a
nop dword [eax + eax]
push dword [ebp - 0x214]
lea eax, [ebp - 0x20c]
push eax
call fcn.00587b5e
add esp, 8
test eax, eax
je 0x412875
push 0x104
lea eax, [ebp - 0x20c]
inc esi
push eax
push esi
push dword [ebp - 0x210]
call ebx
test eax, eax
je 0x412840
jmp 0x41287a
mov edi, 1
push dword [ebp - 0x210]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
pop esi
pop ebx
mov ecx, dword [ebp - 4]
mov eax, edi
xor ecx, ebp
pop edi
call fcn.00579ec9
mov esp, ebp
pop ebp
ret
Function at 0x414320
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5a6d16
mov eax, dword fs:[0]
push eax
sub esp, 0x240
mov eax, dword [0x632a40]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, dword [ebp + 8]
lea eax, [ebp - 0x21c]
push 0x208
push 0
push eax
call fcn.0057ff70
mov esi, dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
lea eax, [ebp - 0x21c]
add esp, 0xc
push 0
push 0x19
push eax
push 0
call esi
test eax, eax
je 0x41445d
xor eax, eax
mov dword [ebp - 0x220], 7
mov dword [ebp - 0x224], 0
mov word [ebp - 0x234], ax
cmp word [ebp - 0x21c], ax
jne 0x4143ae
xor ecx, ecx
jmp 0x4143c6
lea ecx, [ebp - 0x21c]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4143b7
sub ecx, edx
sar ecx, 1
push ecx
lea eax, [ebp - 0x21c]
push eax
lea ecx, [ebp - 0x234]
call fcn.00404db0
push 1
push 0x623ae4
lea ecx, [ebp - 0x234]
mov dword [ebp - 4], 0
call fcn.0040d860
cmp dword [ebp - 0x220], 8
lea eax, [ebp - 0x234]
push ebx
cmovae eax, dword [ebp - 0x234]
push eax
call fcn.00414570
mov edi, eax
test edi, edi
je 0x414438
mov ecx, dword [ebp - 0x220]
cmp ecx, 8
jb 0x414431
inc ecx
push ecx
push dword [ebp - 0x234]
lea ecx, [ebp - 0x234]
call fcn.00405130
mov eax, edi
jmp 0x414545
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x220]
cmp eax, 8
jb 0x41445d
inc eax
lea ecx, [ebp - 0x234]
push eax
push dword [ebp - 0x234]
call fcn.00405130
push 0
push 0x10
lea eax, [ebp - 0x21c]
push eax
push 0
call esi
test eax, eax
je 0x414543
xor eax, eax
mov dword [ebp - 0x238], 7
mov dword [ebp - 0x23c], 0
mov word [ebp - 0x24c], ax
cmp word [ebp - 0x21c], ax
jne 0x41449e
xor ecx, ecx
jmp 0x4144b6
lea ecx, [ebp - 0x21c]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4144a7
sub ecx, edx
sar ecx, 1
push ecx
lea eax, [ebp - 0x21c]
push eax
lea ecx, [ebp - 0x24c]
call fcn.00404db0
push 1
push 0x623ae4
lea ecx, [ebp - 0x24c]
mov dword [ebp - 4], 1
call fcn.0040d860
cmp dword [ebp - 0x238], 8
lea eax, [ebp - 0x24c]
push ebx
cmovae eax, dword [ebp - 0x24c]
push eax
call fcn.00414570
mov esi, eax
test esi, esi
je 0x414525
mov ecx, dword [ebp - 0x238]
cmp ecx, 8
jb 0x414521
inc ecx
push ecx
push dword [ebp - 0x24c]
lea ecx, [ebp - 0x24c]
call fcn.00405130
mov eax, esi
jmp 0x414545
mov eax, dword [ebp - 0x238]
cmp eax, 8
jb 0x414543
inc eax
lea ecx, [ebp - 0x24c]
push eax
push dword [ebp - 0x24c]
call fcn.00405130
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00579ec9
mov esp, ebp
pop ebp
ret 4
Function at 0x415820
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20c
mov eax, dword [0x632a40]
xor eax, ebp
mov dword [ebp - 4], eax
push 0x208
lea eax, [ebp - 0x20c]
push 0
push eax
call fcn.0057ff70
add esp, 0xc
lea eax, [ebp - 0x20c]
push 1
push 0x1a
push eax
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
test eax, eax
je 0x4158b1
lea eax, [ebp - 0x20c]
push eax
call fcn.00587e5c
lea eax, [ebp - 0x20c]
push 0x625aac
push eax
call fcn.0057f14d
add esp, 0xc
test eax, eax
jne 0x41589c
lea eax, [ebp - 0x20c]
push str.documents_and_settingslocalservice
push eax
call fcn.0057f14d
add esp, 8
test eax, eax
je 0x4158b1
mov al, 1
mov byte [0x6389f1], al
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00579ec9
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 4]
mov al, byte [0x6389f1]
xor ecx, ebp
call fcn.00579ec9
mov esp, ebp
pop ebp
ret

Function at 0x4158d0
Capabilities:
Get common file path
Get program files directory

Disassembly:
push ebp
mov ebp, esp
push ecx
mov al, byte [0x6389f1]
push ebx
push esi
mov esi, dword [ebp + 0xc]
xor bl, bl
push edi
test al, al
jne 0x4158ea
call fcn.00415820
mov edi, 1
test al, al
je 0x41593c
lea eax, [ebp - 4]
mov dword [ebp - 4], 0
push eax
call fcn.00415960
test al, al
je 0x41593c
push esi
push edi
push dword [ebp - 4]
push 0x26
push 0
call dword [sym.imp.SHELL32.dll_SHGetFolderPathW]
test eax, eax
movzx ebx, bl
cmove ebx, edi
call dword [sym.imp.ADVAPI32.dll_RevertToSelf]
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
test bl, bl
je 0x41593c
mov al, bl
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
push 0
push 0x26
push esi
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
test eax, eax
movzx ecx, bl
cmovne ecx, edi
pop edi
pop esi
mov al, cl
pop ebx
mov esp, ebp
pop ebp
ret 0x10

Function at 0x415a10
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x218
mov eax, dword [0x632a40]
xor eax, ebp
mov dword [ebp - 8], eax
push ebx
mov ebx, dword [ebp + 8]
lea eax, [ebp - 0x214]
push esi
push edi
push 0x208
push 0
push eax
mov esi, ecx
call fcn.0057ff70
add esp, 0xc
lea eax, [ebp - 0x214]
push 0
push 0x17
push eax
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
test eax, eax
je 0x415a96
lea edi, [ebp - 0x214]
add edi, 0xfffffffe
mov ax, word [edi + 2]
lea edi, [edi + 2]
test ax, ax
jne 0x415a61
mov eax, dword [0x623ae4]
mov ecx, esi
mov dword [edi], eax
lea eax, [ebp - 0x214]
push ebx
push eax
call fcn.00415ab0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.00579ec9
mov esp, ebp
pop ebp
ret 4
mov ecx, dword [ebp - 8]
xor eax, eax
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00579ec9
mov esp, ebp
pop ebp
ret 4
Function at 0x416340
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5a6f68
mov eax, dword fs:[0]
push eax
sub esp, 0x30
push esi
mov eax, dword [0x632a40]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0x104
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
call fcn.00406500
lea ecx, [ebp - 0x3c]
mov dword [ebp - 4], 0
call fcn.00406810
test eax, eax
lea eax, [ebp - 0x10]
push eax
je 0x416402
push 0xf013f
push 0
push str.SoftWare
push reloc.WS2_32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x416471
push eax
lea eax, [ebp - 0x14]
push eax
push 0
push 0xf013f
jmp 0x416429
push 0xf003f
push 0
push str.SoftWare
push reloc.WS2_32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x416471
push eax
lea eax, [ebp - 0x14]
push eax
push 0
push 0xf003f
push 0
push 0
push 0
push dword [ebp + 8]
push dword [ebp - 0x10]
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
je 0x41644a
push dword [ebp - 0x10]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x416471
lea eax, [ebp - 0x18]
push eax
push dword [ebp + 0x10]
push 0
push 0
push dword [ebp + 0xc]
push dword [ebp - 0x14]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
push dword [ebp - 0x14]
mov esi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
call esi
push dword [ebp - 0x10]
call esi
mov eax, dword [ebp - 0x3c]
mov esi, dword [sym.imp.KERNEL32.dll_FreeLibrary]
test eax, eax
je 0x416481
push eax
call esi
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x41648b
push eax
call esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret 0xc
Function at 0x4194f0
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
push ebx
push esi
push edi
push 0
push 0x80
push 2
push 0
push 1
push 0x40000000
push ecx
mov dword [ebp - 0xc], edx
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov ebx, eax
mov dword [ebp - 8], ebx
cmp ebx, 0xffffffff
je 0x41960a
call fcn.0043bb30
test al, al
je 0x41954b
push edi
push eax
push esp
pop edx
pop edx
pop edx
pop ebp
push ebp
pop ebp
push edx
pop ecx
push esp
push ebp
push ebp
push esi
pop esi
push ebx
push eax
pop ecx
pop esi
pop edx
push ebx
pop esp
pop esi
pop ebp
push ebp
pop esp
push ecx
pop edx
pop ebp
pop edi
call fcn.0043bac0
test al, al
je 0x419572
push ebx
pop ecx
push edi
pop ebx
push esi
pop ebx
pop ecx
push ecx
pop esi
pop edi
pop ecx
pop edx
push ebx
push esp
pop esi
pop esp
pop edx
push esp
pop ecx
pop edx
push ecx
push edi
push ecx
pop edx
push esi
pop esi
pop ebp
mov ebx, dword [ebp - 8]
push 0
lea eax, [ebp - 4]
mov dword [ebp - 4], 0
push eax
push dword [ebp + 8]
push dword [ebp - 0xc]
push ebx
call dword [sym.imp.KERNEL32.dll_WriteFile]
push ebx
mov dword [ebp - 0xc], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
call fcn.0043b5f0
test al, al
je 0x4195b0
push ebx
push edx
pop edi
pop esp
push esp
pop eax
push edx
pop edi
pop ebp
push esi
push edi
push edi
push edi
push ebp
pop esi
pop ebp
pop esi
call fcn.0043b200
test al, al
je 0x4195d6
push edx
pop esi
push esp
pop ebx
pop eax
push edi
push ebp
push eax
pop ebx
pop esp
push edi
push esp
pop edx
pop edx
push edi
push edx
push esi
pop ecx
pop eax
pop ebx
pop eax
push esp
pop edi
push ecx
pop esp
pop ebp
pop esp
pop ebp
push esi
call fcn.0043b2e0
test al, al
je 0x4195f0
pop edi
pop esi
push edx
push esp
pop eax
push esp
pop edx
push ebp
push edx
push edx
push edx
push edi
pop ebp
push esp
pop eax
pop esi
pop esp
cmp dword [ebp - 0xc], 0
je 0x41960a
mov eax, dword [ebp + 8]
cmp eax, dword [ebp - 4]
jne 0x41960a
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
Function at 0x419cf0
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5a5d86
mov eax, dword fs:[0]
push eax
push esi
push edi
mov eax, dword [0x632a40]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
push 8
mov dword [edi], vtable.std::basic_streambuf_char__struct_std::char_traits_char__.0
call fcn.00579eda
mov esi, eax
push 1
mov dword [ebp - 4], 0
call fcn.0043bf87
mov dword [esi + 4], eax
lea ecx, [edi + 8]
lea eax, [edi + 4]
mov dword [edi + 0x34], esi
mov dword [edi + 0xc], eax
add esp, 8
lea eax, [edi + 0x14]
mov dword [edi + 0x10], ecx
mov dword [edi + 0x1c], eax
lea eax, [edi + 0x18]
mov dword [edi + 0x20], eax
lea eax, [edi + 0x24]
mov dword [edi + 0x2c], eax
lea eax, [edi + 0x28]
mov dword [edi + 0x30], eax
mov dword [ecx], 0
mov eax, dword [edi + 0x20]
mov dword [eax], 0
mov eax, dword [edi + 0x30]
mov dword [eax], 0
mov eax, dword [edi + 0xc]
mov dword [eax], 0
mov eax, dword [edi + 0x1c]
mov dword [eax], 0
mov eax, dword [edi + 0x2c]
mov dword [eax], 0
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret