joyce8/EMBER2024-capa huggingface dataset:
Function at 0x450201
Capabilities:
Access peb ldr_data
Get number of processors
Get process heap flags
Get process heap force flags

Disassembly:
mov eax, 0x56a4ab
call fcn.0052efe4
push ecx
push esi
mov esi, ecx
mov dword [ebp - 0x10], esi
lea ecx, [esi + 0x64]
mov dword [ebp - 4], 0xc
call fcn.0054c954
lea ecx, [esi + 0x60]
mov byte [ebp - 4], 0xb
call fcn.0054c954
lea ecx, [esi + 0x5c]
mov byte [ebp - 4], 0xa
call fcn.0054c954
lea ecx, [esi + 0x58]
mov byte [ebp - 4], 9
call fcn.0054c954
lea ecx, [esi + 0x54]
mov byte [ebp - 4], 8
call fcn.0054c954
lea ecx, [esi + 0x50]
mov byte [ebp - 4], 7
call fcn.0054c954
lea ecx, [esi + 0x4c]
mov byte [ebp - 4], 6
call fcn.0054c954
lea ecx, [esi + 0x48]
mov byte [ebp - 4], 5
call fcn.0054c954
lea ecx, [esi + 0x30]
mov byte [ebp - 4], 4
call fcn.0054c954
lea ecx, [esi + 0x18]
mov byte [ebp - 4], 3
call fcn.0054c954
lea ecx, [esi + 0x14]
mov byte [ebp - 4], 2
call fcn.0054c954
lea ecx, [esi + 0x10]
mov byte [ebp - 4], 1
call fcn.0054c954
and byte [ebp - 4], 0
lea ecx, [esi + 0xc]
call fcn.0054c954
or dword [ebp - 4], 0xffffffff
lea ecx, [esi + 4]
call fcn.0054c954
mov ecx, dword [ebp - 0xc]
pop esi
mov dword fs:[0], ecx
leave
ret

Function at 0x450c73
Capabilities:
Check if file exists
Create process on windows

Disassembly:
mov eax, 0x56a58c
call fcn.0052efe4
sub esp, 0xc
push esi
mov esi, ecx
call fcn.0040da6c
test eax, eax
jne 0x450c87
or eax, 0xffffffff
jmp 0x450d45
mov eax, dword [0x64b44c]
push ebx
push edi
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
xor ebx, ebx
push eax
mov ecx, esi
mov dword [ebp - 4], ebx
call fcn.00450f77
test eax, eax
je 0x450cad
or ebx, 0xffffffff
jmp 0x450d35
push dword [ebp - 0x14]
mov edi, dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
call edi
test eax, eax
je 0x450ca5
push 0x64fd0c
lea ecx, [ebp - 0x10]
call fcn.0054c9c8
mov esi, 0x5b907c
lea ecx, [ebp - 0x10]
push esi
mov byte [ebp - 4], 1
call fcn.0054cd45
lea eax, [ebp - 0x14]
lea ecx, [ebp - 0x10]
push eax
call fcn.0054cd81
push esi
lea ecx, [ebp - 0x10]
call fcn.0054cd45
lea eax, [ebp - 0x18]
push eax
call fcn.004038fa
pop ecx
push dword [ebp - 0x18]
call edi
test eax, eax
je 0x450d0f
push 5
push ebx
push dword [ebp - 0x10]
push dword [ebp - 0x18]
push ebx
jmp 0x450d1b
push 1
push ebx
push ebx
push dword [ebp - 0x10]
push str.open
push ebx
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
lea ecx, [ebp - 0x18]
call fcn.0054c954
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], bl
call fcn.0054c954
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.0054c954
mov eax, ebx
pop edi
pop ebx
mov ecx, dword [ebp - 0xc]
pop esi
mov dword fs:[0], ecx
leave
ret
Function at 0x450d52
Capabilities:
Check if file exists
Create process on windows

Disassembly:
mov eax, 0x56a5a0
call fcn.0052efe4
push ecx
push ecx
push ebx
lea ebx, [ecx + 0x69c]
push esi
mov esi, dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
push dword [ebx]
call esi
test eax, eax
jne 0x450d79
or eax, 0xffffffff
jmp 0x450df8
push edi
push 0x64fd0c
lea ecx, [ebp - 0x10]
call fcn.0054c9c8
and dword [ebp - 4], 0
mov edi, 0x5b907c
push edi
lea ecx, [ebp - 0x10]
call fcn.0054cd45
push ebx
lea ecx, [ebp - 0x10]
call fcn.0054cd81
push edi
lea ecx, [ebp - 0x10]
call fcn.0054cd45
lea eax, [ebp - 0x14]
push eax
call fcn.004038fa
pop ecx
push dword [ebp - 0x14]
call esi
test eax, eax
pop edi
je 0x450dcd
xor eax, eax
push 5
push eax
push dword [ebp - 0x10]
push dword [ebp - 0x14]
push eax
jmp 0x450ddb
xor eax, eax
push 1
push eax
push eax
push dword [ebp - 0x10]
push str.open
push eax
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
lea ecx, [ebp - 0x14]
call fcn.0054c954
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x10]
call fcn.0054c954
xor eax, eax
mov ecx, dword [ebp - 0xc]
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret

Function at 0x450e06
Capabilities:
Check if file exists

Disassembly:
mov eax, 0x56a5cc
call fcn.0052efe4
push ecx
push ecx
push ebx
push esi
mov esi, ecx
push edi
mov edi, dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
push dword [esi + 0x69c]
call edi
test eax, eax
je 0x450e3a
push dword [esi + 0x69c]
call fcn.0041f96b
pop ecx
jmp 0x450f1e
mov eax, dword [0x64b44c]
mov dword [ebp - 0x10], eax
mov eax, dword [esi + 0x69c]
xor ebx, ebx
mov dword [ebp - 4], ebx
cmp dword [eax - 8], ebx
jne 0x450ebf
test byte [esi + 0x2d], 0x10
je 0x450e7b
push dword [esi + 0x34]
lea eax, [ebp - 0x14]
push eax
call fcn.0041f07b
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 1
call fcn.0054ca9b
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x14]
jmp 0x450ede
lea eax, [esi + 0xac]
lea ecx, [ebp - 0x10]
push eax
call fcn.0054ca9b
mov ecx, dword [esi + 0xb0]
lea eax, [esi + 0xb0]
cmp dword [ecx - 8], ebx
je 0x450ee3
push eax
lea eax, [ebp - 0x14]
push 0x5b8240
push eax
call fcn.0054cc6d
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 2
call fcn.0054cd81
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x14]
jmp 0x450ede
push eax
lea eax, [ebp - 0x14]
push eax
call fcn.0041f07b
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 3
call fcn.0054ca9b
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x14]
call fcn.0054c954
push dword [ebp - 0x10]
call edi
test eax, eax
jne 0x450f09
push ebx
push ebx
push str.Folder_does_not_exist_
call fcn.0055697a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x10]
call fcn.0054c954
or eax, 0xffffffff
jmp 0x450f20
push dword [ebp - 0x10]
call fcn.0041fa00
or dword [ebp - 4], 0xffffffff
pop ecx
lea ecx, [ebp - 0x10]
call fcn.0054c954
xor eax, eax
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret
Function at 0x45188b
Capabilities:
Check if file exists

Disassembly:
mov eax, 0x56a68f
call fcn.0052efe4
sub esp, 0xfc
push esi
mov esi, ecx
test byte [esi + 0xe0], 6
jne 0x4519b2
push ebx
xor ebx, ebx
push dword [ebp + 8]
lea ecx, [ebp - 0x108]
push ebx
push ebx
call fcn.0046624d
mov eax, dword [0x64ff3c]
push 0x64ff40
lea ecx, [ebp - 0xec]
mov dword [ebp - 4], ebx
mov dword [ebp - 0x28], 2
mov dword [ebp - 0xf0], eax
call fcn.0054ca9b
mov eax, dword [0x64ff44]
mov ecx, dword [esi + 0x1a8]
mov dword [ebp - 0xe8], eax
lea eax, [esi + 0x1a8]
cmp dword [ecx - 8], ebx
jne 0x4518fe
lea eax, [ebp - 0xbc]
push eax
call fcn.004699e0
pop ecx
jmp 0x45190a
push eax
lea ecx, [ebp - 0xbc]
call fcn.0054ca9b
lea eax, [esi + 0x1b8]
push 0x5b917c
push eax
lea ecx, [ebp - 0xe4]
call fcn.00464b04
lea eax, [ebp + 8]
push eax
call fcn.004279e1
pop ecx
mov eax, dword [eax]
push 1
push 1
push eax
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 1
call fcn.0041e118
lea ecx, [ebp + 8]
mov byte [ebp - 4], 3
call fcn.0054c954
push dword [ebp - 0x1c]
mov eax, dword [esi + 0x15c]
lea ecx, [ebp - 0x108]
push eax
call fcn.00466388
test eax, eax
je 0x451968
or esi, 0xffffffff
jmp 0x451993
push dword [ebp - 0x1c]
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x451963
lea eax, [esi + 0x2a0]
mov ecx, esi
push eax
push dword [ebp - 0x1c]
call fcn.00451cd3
test eax, eax
jne 0x451963
or dword [esi + 0xe0], 4
xor esi, esi
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], bl
call fcn.0041e185
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x108]
call fcn.00466289
mov eax, esi
pop ebx
jmp 0x4519b5
push 1
pop eax
mov ecx, dword [ebp - 0xc]
pop esi
mov dword fs:[0], ecx
leave
ret 4
Function at 0x451cd3
Capabilities:
Check if file exists

Disassembly:
mov eax, 0x56a6e3
call fcn.0052efe4
sub esp, 0x1e0
push ebx
push dword [ebp + 8]
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x451da3
xor ebx, ebx
lea ecx, [ebp - 0x1ec]
push ebx
call fcn.004d40d0
push ebx
lea ecx, [ebp - 0x1ec]
push dword [ebp + 8]
mov dword [ebp - 4], ebx
call fcn.004d5240
test al, al
jne 0x451dad
lea eax, [ebp - 0x10]
push eax
call fcn.004279e1
pop ecx
mov eax, dword [eax]
push 1
push 1
push eax
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 1
call fcn.0041e118
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 3
call fcn.0054c954
push ebx
push dword [ebp - 0x20]
push dword [ebp + 8]
call fcn.00432709
add esp, 0xc
test eax, eax
je 0x451d61
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x24]
jmp 0x451d7a
push ebx
lea ecx, [ebp - 0x1ec]
push dword [ebp - 0x20]
call fcn.004d5240
test al, al
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x24]
jne 0x451da8
call fcn.0041e185
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1ec]
mov dword [ebp - 0x1ec], 0x57f6c0
call fcn.004d41a0
lea ecx, [ebp - 0x1ec]
call fcn.004d40f0
or eax, 0xffffffff
jmp 0x451e15
call fcn.0041e185
mov ecx, 0xb4
mov eax, 0x140
push ecx
push eax
lea eax, [ebp - 0x1ec]
push eax
call fcn.004222d9
mov ecx, dword [ebp + 0xc]
add esp, 0xc
call fcn.004d41a0
mov ecx, dword [ebp + 0xc]
call fcn.004d40f0
mov ecx, dword [ebp + 0xc]
lea eax, [ebp - 0x1ec]
push ebx
push eax
call fcn.004d46f0
test al, al
jne 0x451def
or ebx, 0xffffffff
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1ec]
mov dword [ebp - 0x1ec], 0x57f6c0
call fcn.004d41a0
lea ecx, [ebp - 0x1ec]
call fcn.004d40f0
mov eax, ebx
mov ecx, dword [ebp - 0xc]
pop ebx
mov dword fs:[0], ecx
leave
ret 8
Function at 0x451f5f
Capabilities:
Check if file exists

Disassembly:
push esi
push edi
push dword [esp + 0xc]
mov esi, ecx
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x451fd3
cmp dword [esp + 0x14], 0
jne 0x451f89
test byte [esi + 0xe1], 1
je 0x451f89
push 1
pop eax
jmp 0x45207a
push dword [esp + 0x10]
mov eax, dword [esi + 0x6d0]
lea edi, [esi + 0x6d0]
push dword [esp + 0x10]
mov ecx, edi
call dword [eax + 8]
test eax, eax
je 0x451fdb
mov ecx, esi
call fcn.0040da39
test eax, eax
je 0x451fd3
mov eax, dword [esi + 0x69c]
lea edi, [esi + 0x6b0]
push eax
call fcn.0041f239
pop ecx
mov dword [edi], eax
mov eax, dword [esi]
push edx
mov dword [edi + 4], edx
push dword [edi]
mov ecx, esi
call dword [eax + 0x38]
or eax, 0xffffffff
jmp 0x45207a
push ebx
lea ebx, [esi + 0x6ac]
push 0x64fd0c
mov ecx, ebx
call fcn.0054caeb
cmp dword [esi + 0x754], 0
jle 0x451ffe
push 0x5b8e00
jmp 0x45200e
mov ecx, edi
call fcn.00451f34
test eax, eax
je 0x452015
push 0x5b8df4
mov ecx, ebx
call fcn.0054caeb
push dword [esi + 0x6fc]
mov eax, dword [esi]
mov ecx, esi
push dword [esi + 0x6f8]
call dword [eax + 0x38]
fild qword [esi + 0x6f0]
mov ebx, dword [esi]
fmul qword [0x5801e8]
call fcn.0052f20c
push edx
push eax
mov ecx, esi
call dword [ebx + 0x40]
mov ecx, edi
call fcn.00462c6f
mov edi, eax
pop ebx
test edi, edi
je 0x452071
push dword [edi + 0x58]
push dword [edi + 0x54]
call fcn.00431608
pop ecx
mov edx, dword [esi]
pop ecx
mov dword [esi + 0x6c0], eax
push dword [edi + 0x58]
mov ecx, esi
push dword [edi + 0x54]
push eax
call dword [edx + 0x3c]
or byte [esi + 0xe1], 1
xor eax, eax
pop edi
pop esi
ret 0xc

Function at 0x45363d
Capabilities:
Access peb ldr_data
Get ntdll base address

Disassembly:
mov eax, 0x56aa4b
call fcn.0052efe4
push ecx
mov eax, dword [0x64b44c]
push esi
mov esi, ecx
mov dword [ebp - 0x10], esi
mov dword [esi + 0xc], eax
mov eax, dword [0x64b44c]
and dword [ebp - 4], 0
mov dword [esi + 0x10], eax
mov eax, dword [0x64b44c]
mov dword [esi + 0x18], eax
mov eax, dword [0x64b44c]
mov dword [esi + 0x1c], eax
mov eax, dword [0x64b44c]
mov dword [esi + 0x20], eax
mov eax, dword [0x64b44c]
mov dword [esi + 0x24], eax
mov eax, dword [0x64b44c]
mov dword [esi + 0x28], eax
mov eax, dword [0x64b44c]
mov dword [esi + 0x2c], eax
mov eax, dword [0x64b44c]
mov dword [esi + 0x30], eax
mov eax, dword [0x64b44c]
mov dword [esi + 0x48], eax
mov eax, dword [0x64b44c]
mov dword [esi + 0x58], eax
mov eax, dword [0x64b44c]
mov dword [esi + 0x70], eax
mov eax, dword [0x64b44c]
mov dword [esi + 0x74], eax
mov eax, dword [0x64b44c]
mov dword [esi + 0x78], eax
mov eax, dword [0x64b44c]
mov dword [esi + 0x7c], eax
mov eax, dword [0x64b44c]
mov dword [esi + 0x80], eax
lea ecx, [esi + 0x88]
mov byte [ebp - 4], 0xf
call fcn.00442957
push 0
lea ecx, [esi + 0x168]
mov byte [ebp - 4], 0x10
call fcn.004d40d0
mov ecx, esi
mov byte [ebp - 4], 0x11
mov dword [esi], 0x583028
call fcn.00453010
mov ecx, dword [ebp - 0xc]
mov eax, esi
pop esi
mov dword fs:[0], ecx
leave
ret
Function at 0x453715
Capabilities:
Access peb ldr_data
Get kernel32 base address
Get process heap flags
Get process heap force flags

Disassembly:
mov eax, 0x56ab19
call fcn.0052efe4
push ecx
push esi
mov esi, ecx
push edi
mov dword [ebp - 0x10], esi
mov dword [esi], 0x583028
lea edi, [esi + 0x168]
mov dword [ebp - 4], 0x10
mov ecx, edi
mov dword [edi], 0x57f6c0
call fcn.004d41a0
mov ecx, edi
call fcn.004d40f0
lea ecx, [esi + 0x88]
mov byte [ebp - 4], 0xf
call fcn.00442c57
lea ecx, [esi + 0x80]
mov byte [ebp - 4], 0xe
call fcn.0054c954
lea ecx, [esi + 0x7c]
mov byte [ebp - 4], 0xd
call fcn.0054c954
lea ecx, [esi + 0x78]
mov byte [ebp - 4], 0xc
call fcn.0054c954
lea ecx, [esi + 0x74]
mov byte [ebp - 4], 0xb
call fcn.0054c954
lea ecx, [esi + 0x70]
mov byte [ebp - 4], 0xa
call fcn.0054c954
lea ecx, [esi + 0x58]
mov byte [ebp - 4], 9
call fcn.0054c954
lea ecx, [esi + 0x48]
mov byte [ebp - 4], 8
call fcn.0054c954
lea ecx, [esi + 0x30]
mov byte [ebp - 4], 7
call fcn.0054c954
lea ecx, [esi + 0x2c]
mov byte [ebp - 4], 6
call fcn.0054c954
lea ecx, [esi + 0x28]
mov byte [ebp - 4], 5
call fcn.0054c954
lea ecx, [esi + 0x24]
mov byte [ebp - 4], 4
call fcn.0054c954
lea ecx, [esi + 0x20]
mov byte [ebp - 4], 3
call fcn.0054c954
lea ecx, [esi + 0x1c]
mov byte [ebp - 4], 2
call fcn.0054c954
lea ecx, [esi + 0x18]
mov byte [ebp - 4], 1
call fcn.0054c954
and byte [ebp - 4], 0
lea ecx, [esi + 0x10]
call fcn.0054c954
or dword [ebp - 4], 0xffffffff
lea ecx, [esi + 0xc]
call fcn.0054c954
pop edi
mov ecx, dword [ebp - 0xc]
pop esi
mov dword fs:[0], ecx
leave
ret

Function at 0x453720
Capabilities:
Access peb ldr_data
Get kernel32 base address
Get process heap flags
Get process heap force flags

Disassembly:
mov eax, 0x56ab19
call fcn.0052efe4
push ecx
push esi
mov esi, ecx
push edi
mov dword [ebp - 0x10], esi
mov dword [esi], 0x583028
lea edi, [esi + 0x168]
mov dword [ebp - 4], 0x10
mov ecx, edi
mov dword [edi], 0x57f6c0
call fcn.004d41a0
mov ecx, edi
call fcn.004d40f0
lea ecx, [esi + 0x88]
mov byte [ebp - 4], 0xf
call fcn.00442c57
lea ecx, [esi + 0x80]
mov byte [ebp - 4], 0xe
call fcn.0054c954
lea ecx, [esi + 0x7c]
mov byte [ebp - 4], 0xd
call fcn.0054c954
lea ecx, [esi + 0x78]
mov byte [ebp - 4], 0xc
call fcn.0054c954
lea ecx, [esi + 0x74]
mov byte [ebp - 4], 0xb
call fcn.0054c954
lea ecx, [esi + 0x70]
mov byte [ebp - 4], 0xa
call fcn.0054c954
lea ecx, [esi + 0x58]
mov byte [ebp - 4], 9
call fcn.0054c954
lea ecx, [esi + 0x48]
mov byte [ebp - 4], 8
call fcn.0054c954
lea ecx, [esi + 0x30]
mov byte [ebp - 4], 7
call fcn.0054c954
lea ecx, [esi + 0x2c]
mov byte [ebp - 4], 6
call fcn.0054c954
lea ecx, [esi + 0x28]
mov byte [ebp - 4], 5
call fcn.0054c954
lea ecx, [esi + 0x24]
mov byte [ebp - 4], 4
call fcn.0054c954
lea ecx, [esi + 0x20]
mov byte [ebp - 4], 3
call fcn.0054c954
lea ecx, [esi + 0x1c]
mov byte [ebp - 4], 2
call fcn.0054c954
lea ecx, [esi + 0x18]
mov byte [ebp - 4], 1
call fcn.0054c954
and byte [ebp - 4], 0
lea ecx, [esi + 0x10]
call fcn.0054c954
or dword [ebp - 4], 0xffffffff
lea ecx, [esi + 0xc]
call fcn.0054c954
pop edi
mov ecx, dword [ebp - 0xc]
pop esi
mov dword fs:[0], ecx
leave
ret
Function at 0x45443c
Capabilities:
Check if file exists

Disassembly:
mov eax, 0x56ae24
call fcn.0052efe4
push ecx
push ebx
push esi
push edi
mov edi, dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
push dword [ebp + 0xc]
call edi
test eax, eax
je 0x45451d
xor ebx, ebx
mov esi, 0x3e8
push dword [ebp + 0xc]
call fcn.0041e658
cmp eax, 0xffffffff
pop ecx
jne 0x45451d
push dword [ebp + 0xc]
call edi
test eax, eax
je 0x45451d
push dword [ebp + 0x10]
push esi
call fcn.00423868
pop ecx
test eax, eax
pop ecx
jne 0x45449c
add ebx, esi
cmp ebx, 0x1388
jl 0x454464
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 5
jne 0x4544e9
push str.If_you_are_previewing_the_downloading_video_audio__please_stop_previewing__then_click_OK_button.
lea ecx, [ebp - 0x10]
call fcn.0054c9c8
push 0x31
push 0x5b8b04
push dword [ebp - 0x10]
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 2
jne 0x4544dd
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x10]
call fcn.0054c954
push 1
pop eax
jmp 0x454524
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x10]
call fcn.0054c954
xor ebx, ebx
push dword [ebp + 0xc]
call fcn.0041e658
cmp eax, 0xffffffff
pop ecx
jne 0x45451d
push dword [ebp + 0xc]
call edi
test eax, eax
je 0x45451d
push dword [ebp + 0x10]
push esi
call fcn.00423868
pop ecx
test eax, eax
pop ecx
jne 0x454521
add ebx, esi
cmp ebx, 0x2710
jge 0x454521
jmp 0x4544eb
xor eax, eax
jmp 0x454524
or eax, 0xffffffff
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret

Function at 0x454533
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
mov esi, dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
push edi
push dword [ebp + 0xc]
call esi
test eax, eax
je 0x4545af
push dword [ebp + 0x10]
call esi
xor ebx, ebx
test eax, eax
je 0x45456d
cmp dword [ebp + 0x14], ebx
je 0x4545b4
push dword [ebp + 0x18]
push dword [ebp + 0x10]
push dword [ebp + 8]
call fcn.0045443c
add esp, 0xc
test eax, eax
jl 0x4545b4
mov edi, 0x3e8
push 1
push dword [ebp + 0x10]
push dword [ebp + 0xc]
call fcn.0041e67c
add esp, 0xc
cmp eax, 0xffffffff
jne 0x4545ab
push dword [ebp + 0xc]
call esi
test eax, eax
je 0x4545af
push dword [ebp + 0x18]
push edi
call fcn.00423868
pop ecx
test eax, eax
pop ecx
jne 0x4545b4
add ebx, edi
cmp ebx, 0x1388
jge 0x4545b4
jmp 0x454572
xor eax, eax
jmp 0x4545b7
push 0xfffffffffffffffe
pop eax
jmp 0x4545b7
or eax, 0xffffffff
pop edi
pop esi
pop ebx
pop ebp
ret
Function at 0x459fb2
Capabilities:
Check if file exists

Disassembly:
push dword [0x64ff88]
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x459fd7
push 0
push 0x414
push dword [0x64ff88]
call fcn.0041e5db
add esp, 0xc
ret

Function at 0x45af34
Capabilities:
Check if file exists
Create process on windows

Disassembly:
mov eax, 0x56b1a8
call fcn.0052efe4
push ecx
push ecx
push ebx
push esi
mov esi, ecx
push edi
push 0x64fd0c
lea ecx, [ebp - 0x10]
call fcn.0054c9c8
xor ebx, ebx
xor edi, edi
cmp dword [esi + 0x34], ebx
mov dword [ebp - 4], ebx
jle 0x45afb6
jmp 0x45af55
xor ebx, ebx
cmp edi, ebx
jl 0x45af64
cmp edi, dword [esi + 0x34]
jge 0x45af64
mov eax, dword [esi + 0x30]
mov ebx, dword [eax + edi*4]
mov ecx, ebx
call fcn.0040d9d6
test eax, eax
je 0x45afae
mov eax, dword [ebp - 0x10]
cmp dword [eax - 8], 0
je 0x45af85
push 0x5b9080
lea ecx, [ebp - 0x10]
call fcn.0054cd45
push 0x5b907c
lea ecx, [ebp - 0x10]
call fcn.0054cd45
add ebx, 0x69c
lea ecx, [ebp - 0x10]
push ebx
call fcn.0054cd81
push 0x5b907c
lea ecx, [ebp - 0x10]
call fcn.0054cd45
inc edi
cmp edi, dword [esi + 0x34]
jl 0x45af53
xor ebx, ebx
mov eax, dword [ebp - 0x10]
cmp dword [eax - 8], ebx
je 0x45aff9
lea eax, [ebp - 0x14]
push eax
call fcn.004038fa
pop ecx
push dword [ebp - 0x14]
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
push 1
push ebx
je 0x45afe1
push dword [ebp - 0x10]
push dword [ebp - 0x14]
push ebx
jmp 0x45afea
push ebx
push dword [ebp - 0x10]
push str.open
push ebx
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
lea ecx, [ebp - 0x14]
call fcn.0054c954
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x10]
call fcn.0054c954
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
xor eax, eax
pop ebx
mov dword fs:[0], ecx
leave
ret
Function at 0x4620ff
Capabilities:
Check if file exists

Disassembly:
mov eax, 0x56bc42
call fcn.0052efe4
sub esp, 0x2a0
push esi
lea eax, [ebp - 0x10]
push edi
push eax
call fcn.004279e1
pop ecx
mov eax, dword [eax]
push 1
xor edi, edi
push 1
push eax
lea ecx, [ebp - 0x24]
mov dword [ebp - 4], edi
call fcn.0041e118
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 2
call fcn.0054c954
lea ecx, [ebp - 0xe4]
call fcn.00461e94
push dword [ebp + 0x2c]
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 3
push dword [ebp + 0x28]
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp - 0x20]
push dword [ebp + 8]
call fcn.00461a7c
mov esi, eax
cmp esi, edi
je 0x462199
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 4
call fcn.0054c954
lea ecx, [ebp - 0xe4]
mov dword [ebp - 0xe4], 0x584e48
call fcn.00461e89
jmp 0x4622c2
push dword [ebp - 0x20]
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x4621cf
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 5
call fcn.0054c954
lea ecx, [ebp - 0xe4]
mov dword [ebp - 0xe4], 0x584e48
call fcn.00461e89
or esi, 0xffffffff
jmp 0x4622c2
push edi
lea ecx, [ebp - 0x2ac]
call fcn.004d40d0
push 3
lea ecx, [ebp - 0x2ac]
push dword [ebp - 0x20]
mov byte [ebp - 4], 6
call fcn.004d5240
test al, al
jne 0x462223
lea ecx, [ebp - 0x2ac]
mov byte [ebp - 4], 3
mov dword [ebp - 0x2ac], 0x57f6c0
call fcn.004d41a0
lea ecx, [ebp - 0x2ac]
call fcn.004d40f0
mov byte [ebp - 4], 7
or esi, 0xffffffff
jmp 0x4622a5
cmp dword [ebp + 0x24], edi
jle 0x46226b
cmp dword [ebp + 0x20], edi
jle 0x46226b
lea ecx, [ebp - 0x2ac]
call fcn.004d21a0
lea ecx, [ebp - 0x2ac]
mov esi, eax
call fcn.004d2190
push dword [ebp + 0x24]
push dword [ebp + 0x20]
push eax
lea eax, [ebp + 0x18]
push esi
push eax
call fcn.00462fd0
push dword [ebp + 0x1c]
lea eax, [ebp - 0x2ac]
push dword [ebp + 0x18]
push eax
call fcn.0042239e
add esp, 0x20
mov ecx, dword [ebp + 0xc]
lea eax, [ebp - 0x2ac]
push edi
push eax
call fcn.004d46f0
lea ecx, [ebp - 0x2ac]
mov byte [ebp - 4], 3
mov dword [ebp - 0x2ac], 0x57f6c0
call fcn.004d41a0
lea ecx, [ebp - 0x2ac]
call fcn.004d40f0
mov byte [ebp - 4], 8
xor esi, esi
lea ecx, [ebp - 0x74]
call fcn.0054c954
lea ecx, [ebp - 0xe4]
mov dword [ebp - 0xe4], 0x580224
call fcn.0043290f
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x24]
call fcn.0041e185
mov ecx, dword [ebp - 0xc]
mov eax, esi
pop edi
pop esi
mov dword fs:[0], ecx
leave
ret
Function at 0x4622de
Capabilities:
Check if file exists

Disassembly:
mov eax, 0x56bc78
call fcn.0052efe4
sub esp, 0xc0
push esi
lea ecx, [ebp - 0xcc]
call fcn.00461e94
push dword [ebp + 0x14]
xor esi, esi
lea ecx, [ebp - 0xcc]
mov dword [ebp - 4], esi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00461d64
cmp eax, esi
je 0x462325
mov dword [ebp - 4], 1
mov esi, eax
jmp 0x462345
push dword [ebp + 0xc]
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x46233e
mov dword [ebp - 4], 2
or esi, 0xffffffff
jmp 0x462345
mov dword [ebp - 4], 3
lea ecx, [ebp - 0x5c]
call fcn.0054c954
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0xcc], 0x580224
call fcn.0043290f
mov ecx, dword [ebp - 0xc]
mov eax, esi
pop esi
mov dword fs:[0], ecx
leave
ret