joyce8/EMBER2024-capa huggingface dataset:
Function at 0x416b45
Capabilities:
Create process on windows

Disassembly:
push 0x24
mov eax, 0x460552
call fcn.0043a499
mov esi, ecx
cmp dword [0x48f67c], 1
jg 0x416b9a
lea eax, [esi + 0x30]
mov edx, str.Executor.exec__:
push eax
lea ecx, [ebp - 0x28]
call fcn.004137b0
pop ecx
and dword [ebp - 4], 0
mov ecx, 0x48f67c
push eax
push str.Executor::startExecution
push 0x93
push str.c:_jenkins_workspace_8_2_build_windows_amd64_cygwin_jdk8u261_295_install_src_windows_common_Executor.cpp
push 1
call fcn.00417dda
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x28]
call fcn.00406b80
push 0x44
pop ebx
push ebx
lea edi, [esi + 0x70]
push 0
push edi
call fcn.0043c110
add esp, 0xc
mov dword [edi], ebx
lea ebx, [esi + 0x60]
push 0x10
push 0
push ebx
call fcn.0043c110
add esp, 0xc
cmp dword [esi + 0xb4], 1
jne 0x416bde
or dword [esi + 0x9c], 1
xor eax, eax
mov word [esi + 0xa0], ax
mov dword [esi + 0x54], 0x8000000
cmp byte [esi + 0xc1], 0
je 0x416bee
mov ecx, esi
call fcn.0041702c
lea ecx, [esi + 0x30]
cmp dword [ecx + 0x14], 0x10
mov edx, ecx
jb 0x416bfb
mov edx, dword [ecx]
mov eax, dword [ecx + 0x10]
add eax, edx
cmp dword [ecx + 0x14], 0x10
jb 0x416c08
mov ecx, dword [ecx]
push dword [ebp - 0x2d]
xor edx, edx
push eax
push ecx
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x18], edx
mov dword [ebp - 0x14], edx
call fcn.00411617
lea eax, [ebp - 0x29]
mov dword [ebp - 4], 1
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 0x29], 0
call fcn.00412710
cmp dword [esi + 0x14], 0x10
mov eax, esi
jb 0x416c41
mov eax, dword [esi]
push ebx
push edi
push dword [esi + 0x5c]
push dword [esi + 0x58]
push dword [esi + 0x54]
push dword [esi + 0x50]
push dword [esi + 0x4c]
push dword [esi + 0x48]
push dword [ebp - 0x1c]
push eax
call dword [sym.imp.KERNEL32.dll_CreateProcessA]
test eax, eax
lea ecx, [ebp - 0x1c]
setne bl
call fcn.004115b2
mov al, bl
call fcn.0043a443
ret
Function at 0x41e2d7
Capabilities:
Check http status code

Disassembly:
push 0x84
mov eax, 0x46181f
call fcn.0043a499
mov edi, ecx
push ecx
push 0x13
call fcn.0041dd9f
mov esi, eax
cmp esi, 0xc8
je 0x41e39c
cmp esi, 0xce
je 0x41e39c
cmp esi, 0x193
jne 0x41e35e
push 0x4741c6
lea ecx, [ebp - 0x2c]
call fcn.004069c2
and dword [ebp - 4], 0
lea eax, [ebp - 0x2c]
push eax
push 0x14
lea eax, [ebp - 0x44]
mov ecx, edi
push eax
call fcn.0041dedc
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 2
call fcn.00406b80
push ecx
push str.Export_Denied
lea ecx, [ebp - 0x44]
call fcn.0041a971
cmp eax, 0xffffffff
jne 0x41e3a2
or dword [ebp - 4], eax
lea ecx, [ebp - 0x44]
call fcn.00406999
push esi
lea ecx, [ebp - 0x90]
call fcn.0041c080
mov edx, eax
push 0x2ce
push str.HttpConnection::Response::checkStatus
push str.c:_jenkins_workspace_8_2_build_windows_amd64_cygwin_jdk8u261_295_install_src_windows_common_NetUtils.cpp
lea ecx, [ebp - 0x7c]
mov dword [ebp - 4], 4
call fcn.00404614
push eax
lea ecx, [ebp - 0x70]
call fcn.0041ecb5
mov dword [esp], 0x48a310
jmp 0x41e3da
call fcn.0043a443
ret
lea ecx, [ebp - 0x90]
call fcn.0041c112
mov edx, eax
push 0x2cb
push str.HttpConnection::Response::checkStatus
push str.c:_jenkins_workspace_8_2_build_windows_amd64_cygwin_jdk8u261_295_install_src_windows_common_NetUtils.cpp
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 3
call fcn.00404614
push eax
lea ecx, [ebp - 0x70]
call fcn.0041ecee
mov dword [esp], 0x48a3e0
lea eax, [ebp - 0x70]
push eax
call fcn.0043d85d
int3

Function at 0x41e64f
Capabilities:
Parse url

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x5c
mov eax, dword [0x48c068]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 0x3c
pop ebx
push ebx
lea eax, [ebp - 0x58]
mov esi, edx
push 0
push eax
mov edi, ecx
call fcn.0043c110
mov dword [ebp - 0x58], ebx
add esp, 0xc
xor ebx, ebx
inc ebx
cmp dword [edi + 0x14], 0x10
mov dword [ebp - 0x44], ebx
jb 0x41e689
mov edi, dword [edi]
lea eax, [ebp - 0x58]
push eax
push 0
push 0
push edi
call dword [sym.imp.WININET.dll_InternetCrackUrlA]
test eax, eax
jne 0x41e6a0
xor al, al
jmp 0x41e6de
mov eax, dword [ebp - 0x4c]
push 3
pop ecx
sub eax, ecx
je 0x41e6b7
sub eax, 1
je 0x41e6b3
mov dword [esi], ebx
jmp 0x41e6bd
mov dword [esi], ecx
jmp 0x41e6bd
mov dword [esi], 2
push dword [ebp - 0x44]
lea ecx, [ebp - 0x1c]
push dword [ebp - 0x48]
call fcn.00417205
push eax
lea ecx, [esi + 4]
call fcn.00409fe5
lea ecx, [ebp - 0x1c]
call fcn.00406b80
mov al, bl
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00439b80
leave
ret
Function at 0x420e41
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push pe_nt_image_headers32
mov eax, 0x461caa
call fcn.0043a499
mov edi, ecx
mov eax, dword [ebp + 8]
mov dword [ebp - 0x6c], eax
call fcn.00420e23
mov ebx, eax
test ebx, ebx
je 0x420f2f
mov esi, dword [sym.imp.KERNEL32.dll_LoadResource]
push ebx
push dword [edi + 0x38]
call esi
test eax, eax
jne 0x420ee7
push str.cannot_load_resource
lea ecx, [ebp - 0x2c]
call fcn.004069c2
lea eax, [ebp - 0x2c]
mov dword [ebp - 4], 4
push eax
lea eax, [ebp - 0x68]
mov ecx, edi
push eax
call fcn.00420d65
push eax
lea ecx, [ebp - 0x11c]
mov byte [ebp - 4], 5
call fcn.004174ff
push str.System_error
mov byte [ebp - 4], 6
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push esi
lea eax, [ebp - 0x11c]
push eax
lea ecx, [ebp - 0x84]
call fcn.0042adad
mov edx, eax
push 0x46
push str.Resource::getPtr
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x78]
push str.c:_jenkins_workspace_8_2_build_windows_amd64_cygwin_jdk8u261_295_install_src_windows_common_Resources.cpp
jmp 0x420f9c
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
cmp dword [edi + 0x34], 6
mov esi, eax
jne 0x420f16
mov ecx, dword [edi + 0x18]
and ecx, 0xf
jbe 0x420f0c
movzx eax, word [esi]
lea esi, [esi + eax*2]
add esi, 2
sub ecx, 1
jne 0x420efe
movzx eax, word [esi]
add eax, eax
add esi, 2
jmp 0x420f20
push ebx
push dword [edi + 0x38]
call dword [sym.imp.KERNEL32.dll_SizeofResource]
mov ecx, dword [ebp - 0x6c]
mov dword [ecx], eax
mov eax, esi
call fcn.0043a443
ret 4
push str.cannot_find_resource
lea ecx, [ebp - 0x2c]
call fcn.004069c2
and dword [ebp - 4], 0
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x68]
mov ecx, edi
push eax
call fcn.00420d65
push eax
lea ecx, [ebp - 0x11c]
mov byte [ebp - 4], 1
call fcn.004174ff
push str.System_error
mov byte [ebp - 4], 2
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push dword [sym.imp.KERNEL32.dll_FindResourceA]
lea eax, [ebp - 0x11c]
push eax
lea ecx, [ebp - 0x78]
call fcn.0042adad
mov edx, eax
push 0x41
push str.Resource::getPtr
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x84]
push str.c:_jenkins_workspace_8_2_build_windows_amd64_cygwin_jdk8u261_295_install_src_windows_common_Resources.cpp
call fcn.00404614
push eax
lea ecx, [ebp - 0x50]
call fcn.0041ec43
lea eax, [ebp - 0x50]
mov dword [esp], 0x48a34c
push eax
call fcn.0043d85d
int3

Function at 0x42411b
Capabilities:
Get system information on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x24
push 0x24
lea eax, [ebp - 0x24]
push 0
push eax
call fcn.0043c110
add esp, 0xc
lea eax, [ebp - 0x24]
push eax
call dword [sym.imp.KERNEL32.dll_GetNativeSystemInfo]
cmp word [ebp - 0x24], 9
sete al
leave
ret

Function at 0x42599b
Capabilities:
Check if file exists
Get file attributes

Disassembly:
cmp dword [ecx + 0x14], 0x10
jb 0x4259a3
mov ecx, dword [ecx]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
setne al
ret
Function at 0x4259b1
Capabilities:
Check if file exists
Get file attributes

Disassembly:
cmp dword [ecx + 0x14], 0x10
jb 0x4259b9
mov ecx, dword [ecx]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x4259cc
test al, 0x10
je 0x4259cc
mov al, 1
ret
xor al, al
ret

Function at 0x425cab
Capabilities:
Get file version info

Disassembly:
push 0xe8
mov eax, 0x462a26
call fcn.0043a499
mov esi, ecx
mov dword [ebp - 0x3c], esi
mov eax, dword [ebp + 8]
xor ebx, ebx
mov dword [ebp - 0x44], esi
push eax
mov dword [esi + 0x10], ebx
mov dword [esi + 0x14], ebx
call fcn.00407be2
lea edi, [esi + 0x18]
mov dword [ebp - 4], ebx
mov dword [edi], ebx
mov dword [edi + 4], ebx
mov dword [edi + 8], ebx
mov byte [ebp - 4], 1
mov eax, esi
cmp dword [esi + 0x14], 0x10
mov dword [ebp - 0x3c], ebx
jb 0x425cf2
mov eax, dword [esi]
mov ebx, dword [sym.imp.VERSION.dll_GetFileVersionInfoSizeA]
lea ecx, [ebp - 0x3c]
push ecx
push eax
call ebx
test eax, eax
je 0x425db7
push edi
push eax
mov ecx, edi
call fcn.00414eba
mov eax, dword [edi + 4]
mov ecx, esi
sub eax, dword [edi]
cmp dword [esi + 0x14], 0x10
jb 0x425d1f
mov ecx, dword [esi]
push dword [edi]
mov edi, dword [sym.imp.VERSION.dll_GetFileVersionInfoA]
push eax
push dword [ebp - 0x3c]
push ecx
call edi
test eax, eax
jne 0x425dad
push 0x46d
push str.VersionResource::VersionResource
push str.c:_jenkins_workspace_8_2_build_windows_amd64_cygwin_jdk8u261_295_install_src_windows_common_FileUtils.cpp
lea ecx, [ebp - 0x5c]
call fcn.00404614
push eax
push str.System_error
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push edi
push 0x47a3d4
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x40], esp
push esi
call fcn.00407bc8
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 6
call fcn.004088ff
mov byte [ebp - 4], 7
push str.GetFileVersionInfo_
mov ecx, eax
call fcn.0040be06
mov ecx, eax
mov byte [ebp - 4], 8
call fcn.0040be1a
mov ecx, eax
call fcn.0040be06
push eax
lea ecx, [ebp - 0x50]
call fcn.0042adad
mov byte [ebp - 4], 9
jmp 0x425e2d
mov eax, esi
call fcn.0043a443
ret 4
push 0x464
push str.VersionResource::VersionResource
push str.c:_jenkins_workspace_8_2_build_windows_amd64_cygwin_jdk8u261_295_install_src_windows_common_FileUtils.cpp
lea ecx, [ebp - 0x50]
call fcn.00404614
push eax
push str.System_error
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push ebx
push 0x47a3d4
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x40], esp
push esi
call fcn.00407bc8
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 2
call fcn.004088ff
mov byte [ebp - 4], 3
push str.GetFileVersionInfoSize_
mov ecx, eax
call fcn.0040be06
mov ecx, eax
mov byte [ebp - 4], 4
call fcn.0040be1a
mov ecx, eax
call fcn.0040be06
push eax
lea ecx, [ebp - 0x5c]
call fcn.0042adad
mov byte [ebp - 4], 5
mov edx, eax
lea ecx, [ebp - 0x38]
call fcn.0041ec43
lea eax, [ebp - 0x38]
mov dword [esp], 0x48a34c
push eax
call fcn.0043d85d
int3
Function at 0x426c54
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
lea ebp, [esp - 0xac]
sub esp, 0xac
push 0xffffffffffffffff
push 0x462e5f
mov eax, dword fs:[0]
push eax
sub esp, 0xc8
mov eax, dword [0x48c068]
xor eax, ebp
mov dword [ebp + 0xa8], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 0x24], ebx
mov esi, dword [ebp + 0xb4]
lea ecx, [ebp + 0x78]
mov edi, dword [ebp + 0xb8]
mov eax, dword [ebp + 0xbc]
mov dword [ebp - 0x20], esi
push edi
mov dword [ebp - 0x20], eax
call fcn.00426372
xor eax, eax
mov dword [ebp - 4], eax
cmp dword [ebp + 0x88], eax
je 0x426cf1
push eax
lea eax, [ebp + 0x78]
push eax
push ebx
lea ecx, [ebp + 0x3c]
call fcn.004265df
push dword [ebp - 0x20]
lea ecx, [ebp + 0x90]
mov byte [ebp - 4], 1
push ecx
push esi
mov ecx, eax
call fcn.00426c54
lea ecx, [ebp + 0x3c]
call fcn.00426677
jmp 0x426d69
mov ecx, eax
mov dword [ebp - 0x10], eax
mov edx, eax
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x14], edx
mov byte [ebp - 4], 2
mov eax, edx
sub eax, ecx
mov dword [ebp - 0x1c], eax
xor eax, eax
cmp ecx, edx
cmove ecx, eax
cmp dword [edi + 0x14], 0x10
mov eax, edi
jb 0x426d1a
mov eax, dword [edi]
lea edx, [ebp - 0x1c]
push edx
push ecx
push dword [ebp - 0x20]
push 0
push eax
push dword [ebx]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov ebx, eax
cmp ebx, 0xea
je 0x426da3
mov ecx, dword [ebp - 0x18]
cmp ecx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
jne 0x426dc0
test ebx, ebx
jne 0x426dc4
test ecx, ecx
jne 0x426da6
lea eax, [ebp - 0x18]
push eax
push ecx
mov ecx, eax
call fcn.00414eba
lea eax, [ebp - 0x18]
mov ecx, esi
push eax
call fcn.00414e8d
lea ecx, [ebp - 0x18]
call fcn.004115b2
lea ecx, [ebp + 0x90]
call fcn.00406b80
lea ecx, [ebp + 0x78]
call fcn.00406b80
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0xa8]
xor ecx, ebp
call fcn.00439b80
add ebp, 0xac
leave
ret 0xc
mov ecx, dword [ebp - 0x1c]
lea eax, [ebp - 0x18]
push eax
push ecx
mov ecx, eax
call fcn.00414eba
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov ebx, dword [ebp - 0x24]
jmp 0x426d02
test ebx, ebx
je 0x426d4a
push str.query_value
lea ecx, [ebp + 0x60]
call fcn.004069c2
lea ecx, [ebp]
call fcn.0040a00e
mov ecx, dword [ebp - 0x24]
push eax
push edi
lea eax, [ebp + 0x60]
mov byte [ebp - 4], 4
push eax
lea eax, [ebp + 0x48]
push eax
call fcn.004276d1
push eax
lea ecx, [ebp - 0xd4]
mov byte [ebp - 4], 5
call fcn.004174ff
push str.System_error
push ebx
mov byte [ebp - 4], 6
lea eax, [ebp - 0xd4]
push dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
lea ecx, [ebp - 0x30]
push eax
call fcn.0042adad
mov edx, eax
push 0x12b
push str.Registry::getValue
push str.c:_jenkins_workspace_8_2_build_windows_amd64_cygwin_jdk8u261_295_install_src_windows_common_Registry.cpp
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 7
call fcn.00404614
push eax
lea ecx, [ebp + 0x18]
call fcn.0041ec43
lea eax, [ebp + 0x18]
mov dword [esp], 0x48a34c
push eax
call fcn.0043d85d
int3
Function at 0x42758e
Capabilities:
Delete registry value

Disassembly:
push 0x104
mov eax, 0x46301c
call fcn.0043a499
mov ebx, ecx
mov esi, dword [ebp + 8]
lea ecx, [ebp - 0x40]
push esi
call fcn.00426372
cmp dword [ebp - 0x30], 0
je 0x42762c
mov eax, dword [ebx + 8]
lea ecx, [ebp - 0x78]
push 0
or eax, 0x2001f
push eax
lea eax, [ebp - 0x40]
push eax
push dword [ebx]
call fcn.004263a4
mov edi, dword [ebp - 0x70]
add esp, 0x10
mov esi, dword [ebp - 0x78]
test edi, edi
je 0x4275dc
mov al, byte [ebp - 0x74]
jmp 0x427611
push 0x48e66c
lea eax, [ebp - 0x28]
push eax
mov al, byte [ebp - 0x74]
push ecx
push ecx
mov ecx, esp
mov byte [ecx + 4], al
lea eax, [ebp - 0x40]
push eax
mov dword [ecx], esi
lea ecx, [ebp - 0x64]
push ebx
call fcn.00426540
mov ecx, eax
call fcn.0042758e
lea ecx, [ebp - 0x64]
mov edi, eax
call fcn.00426677
xor eax, eax
mov dword [ebp - 4], 1
test al, al
je 0x4276b7
push esi
call fcn.0042ab05
pop ecx
jmp 0x4276b7
cmp dword [esi + 0x14], 0x10
mov eax, esi
jb 0x427636
mov eax, dword [esi]
push eax
push dword [ebx]
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueA]
mov edi, eax
test edi, edi
jne 0x4276b7
cmp dword [0x48f67c], eax
jg 0x4276b7
push ecx
push ecx
lea ecx, [ebp - 0x110]
call fcn.0040a898
mov edx, str.Deleted__
lea ecx, [ebp - 0x110]
call fcn.0040c4c7
sub esp, 0x18
mov ecx, ebx
mov eax, esp
push esi
push eax
call fcn.00426856
lea ecx, [ebp - 0x110]
call fcn.0040be1a
mov esi, eax
mov edx, str.__value
mov ecx, esi
call fcn.0040c4c7
push esi
push str.Registry::deleteValue
push 0x1d2
push str.c:_jenkins_workspace_8_2_build_windows_amd64_cygwin_jdk8u261_295_install_src_windows_common_Registry.cpp
push edi
mov ecx, 0x48f67c
call fcn.004089d8
lea ecx, [ebp - 0x110]
call fcn.0040898c
lea ecx, [ebp - 0x28]
call fcn.00406b80
lea ecx, [ebp - 0x40]
call fcn.00406b80
mov eax, edi
call fcn.0043a443
ret 8
Function at 0x42c56c
Capabilities:
Write file on windows

Disassembly:
push 0xe8
mov eax, 0x46417d
call fcn.0043a499
mov esi, ecx
mov ebx, dword [ebp + 8]
and dword [ebp - 4], 0
push ecx
push ecx
lea ecx, [ebp - 0xec]
mov dword [ebp - 0xf4], 0x47cb20
call fcn.0040a898
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xec]
mov eax, dword [ebp - 0xec]
push 0
mov eax, dword [eax + 4]
add ecx, eax
push dword [ecx + 0xc]
mov dword [ecx + 0x10], 6
call fcn.00408788
mov dword [ebp - 4], 2
lea eax, [ebp - 0xf4]
push dword [esi + 4]
lea ecx, [ebp - 0x34]
mov byte [ebp - 0x34], 1
mov dword [ebp - 0x30], eax
call fcn.004314ad
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0xe8]
call fcn.0040b5f9
mov ecx, ebx
mov byte [ebp - 4], 3
call fcn.0042eedb
cmp dword [ebp - 0x18], 0
jne 0x42c616
mov esi, 0x478758
push esi
call fcn.00441f00
pop ecx
push eax
push esi
lea ecx, [ebp - 0x28]
call fcn.00406baa
push ecx
push ecx
mov edx, ebx
lea ecx, [ebp - 0x3c]
call fcn.0042ee02
pop ecx
pop ecx
mov cl, byte [eax + 4]
mov edi, dword [eax]
mov byte [eax + 4], 0
mov dword [ebp - 0x44], edi
mov byte [ebp - 0x40], cl
mov byte [ebp - 4], 4
cmp byte [ebp - 0x38], 0
je 0x42c650
cmp dword [ebp - 0x3c], 0
mov byte [ebp - 0x38], 0
je 0x42c650
push dword [ebp - 0x3c]
call fcn.00443728
pop ecx
mov edx, ebx
test edi, edi
jne 0x42c6c9
lea ecx, [ebp - 0x34]
call fcn.0042edbb
mov cl, byte [eax + 4]
mov ebx, dword [eax]
mov byte [ebp - 0x29], cl
mov byte [eax + 4], 0
mov dword [ebp - 0x3c], ebx
mov byte [ebp - 0x38], cl
mov byte [ebp - 4], 5
cmp byte [ebp - 0x30], 0
je 0x42c68d
cmp dword [ebp - 0x34], 0xffffffff
mov byte [ebp - 0x30], 0
je 0x42c68d
push dword [ebp - 0x34]
call fcn.00445f71
pop ecx
cmp dword [ebp - 0x14], 0x10
lea eax, [ebp - 0x28]
mov esi, dword [ebp - 0x18]
cmovae eax, dword [ebp - 0x28]
push 0x132
push esi
push eax
push ebx
call fcn.00446821
add esp, 0xc
mov edx, esi
mov ecx, eax
call fcn.0042d879
cmp byte [ebp - 0x29], 0
pop ecx
je 0x42c735
cmp ebx, 0xffffffff
je 0x42c735
push ebx
call fcn.00445f71
pop ecx
jmp 0x42c735
lea eax, [ebp - 0x44]
push eax
push ecx
lea ecx, [ebp - 0x34]
call fcn.0042ee2d
pop ecx
pop ecx
mov bl, byte [eax + 4]
mov esi, dword [eax]
mov byte [eax + 4], 0
mov dword [ebp - 0x3c], esi
mov byte [ebp - 0x38], bl
mov byte [ebp - 4], 6
cmp byte [ebp - 0x30], 0
je 0x42c704
cmp dword [ebp - 0x34], 0
mov byte [ebp - 0x30], 0
je 0x42c704
push dword [ebp - 0x34]
call fcn.00443728
pop ecx
cmp dword [ebp - 0x14], 0x10
lea eax, [ebp - 0x28]
push esi
cmovae eax, dword [ebp - 0x28]
push 1
push dword [ebp - 0x18]
push eax
call fcn.00443d1d
add esp, 0x10
cmp eax, 1
jne 0x42c761
test bl, bl
je 0x42c732
test esi, esi
je 0x42c732
push esi
call fcn.00443728
pop ecx
mov edi, dword [ebp - 0x44]
cmp byte [ebp - 0x40], 0
je 0x42c746
test edi, edi
je 0x42c746
push edi
call fcn.00443728
pop ecx
lea ecx, [ebp - 0x28]
call fcn.00406b80
lea ecx, [ebp - 0xec]
call fcn.0040898c
call fcn.0043a443
ret 4
push 0x132
lea ecx, [ebp - 0x54]
call fcn.0040d141
push 0x489ff8
lea eax, [ebp - 0x54]
push eax
call fcn.0043d85d
int3
Function at 0x42df7d
Capabilities:
Read file on windows

Disassembly:
push 0x2c
mov eax, 0x464504
call fcn.0043a465
mov eax, edx
mov edi, ecx
mov dword [ebp - 0x14], edi
push ecx
mov edx, 0x47cb40
mov ecx, eax
call fcn.00430d0f
mov esi, eax
mov ecx, esi
call fcn.0042f0cc
pop ecx
mov dword [ebp - 0x1c], esi
mov byte [ebp - 0x18], 1
xor eax, eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 1
push eax
push 0x100001
mov ecx, eax
call fcn.0041727b
push esi
mov ebx, 0x100000
push ebx
push 1
push dword [ebp - 0x28]
call fcn.00444305
add esp, 0x10
mov dword [ebp - 0x10], eax
cmp eax, ebx
ja 0x42e058
push esi
call fcn.0044a283
pop ecx
test eax, eax
je 0x42dffd
push 0x133
jmp 0x42e05d
push esi
call fcn.0044a257
pop ecx
test eax, eax
jne 0x42e00f
push 0x13b
jmp 0x42e05d
mov ebx, dword [ebp - 0x28]
mov ecx, ebx
mov edx, dword [ebp - 0x10]
call fcn.0042df49
mov ecx, dword [ebp - 0x10]
and dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xf
mov byte [edi], 0
lea eax, [ebx + ecx]
cmp ebx, eax
je 0x42e03d
push ecx
push ebx
mov ecx, edi
call fcn.00406baa
lea ecx, [ebp - 0x28]
call fcn.004115b2
test esi, esi
je 0x42e050
push esi
call fcn.00443728
pop ecx
mov eax, edi
call fcn.0043a42e
ret
push 0xc8
lea ecx, [ebp - 0x38]
call fcn.0040d141
push 0x489ff8
lea eax, [ebp - 0x38]
push eax
call fcn.0043d85d
int3
Function at 0x42eedb
Capabilities:
Create directory

Disassembly:
push ebp
lea ebp, [esp - 0x80]
sub esp, 0x80
push 0xffffffffffffffff
push 0x4647d1
mov eax, dword fs:[0]
push eax
sub esp, 0xc
mov eax, dword [0x48c068]
xor eax, ebp
mov dword [ebp + 0x7c], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
cmp byte [ecx + 0x30], 0
je 0x42f060
xor eax, eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], eax
lea edx, [ebp - 0x18]
mov dword [ebp - 4], eax
call fcn.0042e994
mov edi, dword [ebp - 0x14]
mov eax, edi
mov ebx, dword [ebp - 0x18]
sub eax, ebx
push 0x18
cdq
pop ecx
idiv ecx
imul esi, eax, 0x18
add esi, ebx
jmp 0x42ef51
push esi
lea ecx, [esi - 0x18]
call fcn.00409fe5
add esi, 0x18
cmp esi, edi
jne 0x42ef45
add edi, 0xffffffe8
mov ecx, edi
call fcn.00406b80
mov dword [ebp - 0x14], edi
cmp ebx, edi
je 0x42f03b
and dword [ebp + 0x74], 0
lea ecx, [ebp + 0x64]
and dword [ebp + 0x78], 0
lea esi, [ebx + 0x18]
push ebx
call fcn.00407be2
mov byte [ebp - 4], 1
jmp 0x42f02b
push esi
mov edx, 0x47a4e4
lea ecx, [ebp + 0x18]
call fcn.004137b0
pop ecx
mov byte [ebp - 4], 2
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x42efa4
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
lea ecx, [ebp + 0x64]
call fcn.00406bf3
lea ecx, [ebp + 0x18]
mov byte [ebp - 4], 1
call fcn.00406b80
lea eax, [ebp + 0x64]
push eax
lea ecx, [ebp + 0x30]
call fcn.0042e884
mov byte [ebp - 4], 3
lea ecx, [ebp]
cmp dword [ebp + 0x5c], 8
lea eax, [ebp + 0x48]
push ecx
cmovae eax, dword [ebp + 0x48]
push eax
call fcn.0044b2a1
pop ecx
pop ecx
cmp eax, 0xffffffff
jne 0x42f014
cmp dword [ebp + 0x5c], 8
lea eax, [ebp + 0x48]
cmovae eax, dword [ebp + 0x48]
push eax
call fcn.0044a861
pop ecx
cmp eax, 0xffffffff
jne 0x42f014
call fcn.00442004
push 0x137
push 0x11
pop ecx
mov edx, dword [eax]
call fcn.0042d879
pop ecx
lea ecx, [ebp + 0x48]
mov byte [ebp - 4], 1
call fcn.0041603d
lea ecx, [ebp + 0x30]
call fcn.00406b80
add esi, 0x18
cmp esi, edi
jne 0x42ef87
lea ecx, [ebp + 0x64]
call fcn.00406b80
lea ecx, [ebp - 0x18]
call fcn.0040e920
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x7c]
xor ecx, ebp
call fcn.00439b80
sub ebp, 0xffffff80
leave
ret
push str.canonicalized_file_name_expected
lea ecx, [ebp - 0x18]
call fcn.00413f75
push 0x48a060
lea eax, [ebp - 0x18]
push eax
call fcn.0043d85d
int3
Function at 0x4313b7
Capabilities:
Get common file path

Disassembly:
push ebp
lea ebp, [esp - 0x23c]
sub esp, 0x23c
push 0xffffffffffffffff
push 0x464ce4
mov eax, dword fs:[0]
push eax
sub esp, 0x14
mov eax, dword [0x48c068]
xor eax, ebp
mov dword [ebp + 0x238], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x10], edi
lea eax, [ebp + 0x30]
mov dword [ebp - 0x10], edi
push eax
xor ebx, ebx
push ebx
push ebx
push 0x2c
push ebx
call dword [sym.imp.SHELL32.dll_SHGetFolderPathW]
test eax, eax
jne 0x431491
lea eax, [ebp + 0x30]
push eax
lea ecx, [ebp]
call fcn.004178df
mov esi, eax
mov dword [ebp - 4], ebx
mov ebx, str.OracleJavajava.settings.cfg
push ebx
call fcn.00442f77
pop ecx
push eax
push ebx
mov ecx, esi
call fcn.00417973
xor ecx, ecx
mov byte [ebp - 0x10], cl
push dword [ebp - 0x10]
mov dword [ebp + 0x28], ecx
mov dword [ebp + 0x2c], ecx
lea ecx, [ebp + 0x18]
push eax
call fcn.0041613e
lea edx, [ebp + 0x18]
mov byte [ebp - 4], 1
mov ecx, edi
call fcn.00430af7
lea ecx, [ebp + 0x18]
call fcn.0041603d
lea ecx, [ebp]
call fcn.0041603d
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x238]
xor ecx, ebp
call fcn.00439b80
add ebp, 0x23c
leave
ret
push 0xc8
lea ecx, [ebp - 0x20]
call fcn.0040d141
push 0x489ff8
lea eax, [ebp - 0x20]
push eax
call fcn.0043d85d
int3

Function at 0x433ee5
Capabilities:
Read file on windows

Disassembly:
push ecx
push ebx
push ebp
push esi
mov esi, dword [esp + 0x1c]
mov ebx, ecx
push edi
mov edi, dword [esp + 0x24]
mov ebp, SysReAllocString
test edi, edi
jl 0x433f68
jg 0x433f11
test esi, esi
je 0x433f68
test edi, edi
jg 0x433f11
jl 0x433f0d
cmp esi, ebp
jae 0x433f11
mov eax, esi
jmp 0x433f13
mov eax, ebp
and dword [esp + 0x20], 0
cmp dword [esp + 0x18], 0xffffffff
je 0x433f59
push 0
lea ecx, [esp + 0x24]
push ecx
push eax
push ebx
push dword [esp + 0x28]
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x433f43
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x6d
je 0x433f63
jmp 0x433f59
mov eax, dword [esp + 0x20]
test eax, eax
jle 0x433f54
add ebx, eax
cdq
sub esi, eax
sbb edi, edx
jmp 0x433ef9
cmp eax, 0xffffffff
jne 0x433f63
call fcn.00442004
cmp dword [eax], 4
je 0x433ef9
or eax, 0xffffffff
jmp 0x433f6a
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
pop ecx
ret