joyce8/EMBER2024-capa huggingface dataset:
Function at 0x40f553
Capabilities:
Get common file path
Parse url

Disassembly:
push ebp
lea ebp, [esp - 0x5cc]
sub esp, 0x64c
mov eax, dword [0x4976a0]
xor eax, ebp
mov dword [ebp + 0x5c8], eax
mov eax, dword [ebp + 0x5d4]
push ebx
push esi
push edi
push 0x3c
pop edi
xor ebx, ebx
push edi
mov dword [ebp - 0x44], eax
lea eax, [ebp - 0x80]
push ebx
push eax
mov esi, ecx
mov byte [ebp + 0x3c4], bl
call fcn.0044c6d0
lea eax, [ebp - 0x3c]
add esp, 0xc
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x80]
push eax
push ebx
push esi
mov dword [ebp - 0x80], edi
mov dword [ebp - 0x50], 0x400
call dword [sym.imp.kernel32.dll_lstrlenA]
push eax
push esi
call dword [sym.imp.wininet.dll_InternetCrackUrlA]
mov edi, 0x104
cmp eax, ebx
je 0x40f5fb
push pe_nt_image_headers32
lea eax, [ebp + 0x3c4]
push eax
push edi
lea eax, [ebp + 0x4c4]
push eax
push ebx
push ebx
push ebx
lea eax, [ebp - 0x3c]
push ebx
push eax
call fcn.0042ef2e
lea eax, [ebp + 0x4c4]
push 0x47ae70
push eax
call fcn.0044ca60
add esp, 0x2c
test eax, eax
je 0x40f644
mov eax, esi
mov dword [ebp - 0x40], ebx
cmp byte [esi], bl
je 0x40f62c
mov cl, byte [eax]
cmp cl, 0x20
je 0x40f610
cmp cl, 9
jne 0x40f619
push eax
call dword [sym.imp.user32.dll_CharNextA]
jmp 0x40f604
mov ecx, dword [ebp - 0x40]
movsx edx, byte [eax]
imul ecx, ecx, 0x1f
add ecx, edx
inc eax
mov dword [ebp - 0x40], ecx
cmp byte [eax], bl
jne 0x40f604
push dword [ebp - 0x40]
lea eax, [ebp + 0x4c4]
push str.jupdate__x
push eax
call dword [sym.imp.user32.dll_wsprintfA]
add esp, 0xc
push dword [ebp - 0x44]
push edi
call dword [sym.imp.kernel32.dll_GetTempPathA]
mov esi, dword [sym.imp.kernel32.dll_lstrcatA]
lea eax, [ebp + 0x4c4]
push eax
push dword [ebp - 0x44]
call esi
lea eax, [ebp + 0x3c4]
push eax
push dword [ebp - 0x44]
call esi
mov ecx, dword [ebp + 0x5c8]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0044a628
add ebp, 0x5cc
leave
ret
Function at 0x4184fa
Capabilities:
Encrypt data using dpapi

Disassembly:
push 0x60
mov eax, 0x468cad
call fcn.004525cd
mov eax, dword [ebp + 8]
xor ebx, ebx
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x5c], eax
xor eax, eax
dec ecx
push 4
neg ecx
sbb ecx, ecx
mov esi, edx
pop edx
and ecx, 0xfffffffc
mov dword [ebp - 0x54], ebx
lea edi, [ebp - 0x50]
stosd dword es:[edi], eax
add ecx, edx
lea eax, [ebp - 0x54]
push eax
or ecx, 1
push ecx
push ebx
push ebx
push ebx
push ebx
lea eax, [ebp - 0x60]
push eax
mov dword [ebp - 0x58], esi
mov dword [ebp - 0x60], edx
call dword [sym.imp.CRYPT32.dll_CryptProtectData]
test eax, eax
jne 0x418587
call dword [sym.imp.kernel32.dll_GetLastError]
push ebx
push eax
lea esi, [ebp - 0x30]
call fcn.0042ef2e
push eax
lea eax, [ebp - 0x4c]
push str.encryption_failed__sysError
push eax
mov dword [ebp - 4], ebx
call fcn.0042ef2e
add esp, 0x14
lea esi, [ebp - 0x6c]
mov byte [ebp - 4], 1
call fcn.0042ef2e
push 0x487694
mov eax, esi
push eax
call fcn.0042ef2e
mov edi, dword [ebp - 0x58]
mov dword [esi], ebx
mov dword [esi + 4], ebx
mov dword [esi + 8], ebx
mov esi, dword [ebp - 0x54]
mov eax, edi
call fcn.0040fa1a
push dword [ebp - 0x54]
mov eax, dword [edi]
push dword [ebp - 0x50]
push eax
call fcn.0042ef2e
add esp, 0xc
push dword [ebp - 0x50]
call dword [sym.imp.kernel32.dll_LocalFree]
mov eax, edi
call fcn.00452650
ret

Function at 0x4185be
Capabilities:
Encrypt data using dpapi

Disassembly:
push 0x60
mov eax, 0x468cad
call fcn.004525cd
mov eax, dword [ebp + 8]
xor ebx, ebx
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x5c], eax
xor eax, eax
mov dword [ebp - 0x54], ebx
lea edi, [ebp - 0x50]
stosd dword es:[edi], eax
lea eax, [ebp - 0x54]
push eax
push 1
push ebx
push ebx
push ebx
push ebx
lea eax, [ebp - 0x60]
mov esi, edx
push eax
mov dword [ebp - 0x58], esi
mov dword [ebp - 0x60], ecx
call dword [sym.imp.CRYPT32.dll_CryptUnprotectData]
test eax, eax
jne 0x41863c
call dword [sym.imp.kernel32.dll_GetLastError]
push ebx
push eax
lea esi, [ebp - 0x30]
call fcn.0042ef2e
push eax
lea eax, [ebp - 0x4c]
push str.decryption_failed__sysError
push eax
mov dword [ebp - 4], ebx
call fcn.0042ef2e
add esp, 0x14
lea esi, [ebp - 0x6c]
mov byte [ebp - 4], 1
call fcn.0042ef2e
push 0x487694
mov eax, esi
push eax
call fcn.0042ef2e
mov edi, dword [ebp - 0x58]
mov dword [esi], ebx
mov dword [esi + 4], ebx
mov dword [esi + 8], ebx
mov esi, dword [ebp - 0x54]
mov eax, edi
call fcn.0040fa1a
push dword [ebp - 0x54]
mov eax, dword [edi]
push dword [ebp - 0x50]
push eax
call fcn.0042ef2e
add esp, 0xc
push dword [ebp - 0x50]
call dword [sym.imp.kernel32.dll_LocalFree]
mov eax, edi
call fcn.00452650
ret
Function at 0x4186e5
Capabilities:
Encode data using base64 via winapi

Disassembly:
push 0x6c
mov eax, 0x468c78
call fcn.004525cd
mov eax, dword [ebp + 8]
mov edi, ecx
xor ecx, ecx
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], ecx
cmp dword [ebp + 0xc], ecx
jne 0x418714
mov dword [edi + 0x14], 0xf
mov dword [edi + 0x10], ecx
mov byte [edi], cl
jmp 0x41880d
mov esi, dword [sym.imp.CRYPT32.dll_CryptBinaryToStringA]
lea edx, [ebp - 0x68]
push edx
push ecx
mov ebx, 0x40000001
push ebx
push dword [ebp + 0xc]
mov dword [ebp - 0x68], ecx
push eax
call esi
test eax, eax
jne 0x418772
call dword [sym.imp.kernel32.dll_GetLastError]
push 0
push eax
lea esi, [ebp - 0x64]
call fcn.0042ef2e
and dword [ebp - 4], 0
push eax
lea eax, [ebp - 0x48]
push str.binary2string__phase1__failed__sysError
push eax
call fcn.0042ef2e
add esp, 0x14
mov byte [ebp - 4], 1
lea esi, [ebp - 0x78]
call fcn.0042ef2e
push 0x487694
mov eax, esi
push eax
call fcn.0042ef2e
and dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
mov dword [ebp - 4], 2
mov eax, dword [ebp - 0x68]
lea ecx, [ebp - 0x2c]
call fcn.00418a90
cmp dword [ebp - 0x18], 0x10
mov eax, dword [ebp - 0x2c]
jae 0x41879f
lea eax, [ebp - 0x2c]
lea ecx, [ebp - 0x68]
push ecx
push eax
push ebx
push dword [ebp + 0xc]
push dword [ebp - 0x6c]
call esi
test eax, eax
jne 0x4187e1
call dword [sym.imp.kernel32.dll_GetLastError]
push 0
push eax
lea esi, [ebp - 0x48]
call fcn.0042ef2e
push eax
lea eax, [ebp - 0x64]
push str.binary2string__phase2__failed__sysError
push eax
mov byte [ebp - 4], 3
call fcn.0042ef2e
add esp, 0x14
mov byte [ebp - 4], 4
jmp 0x41875d
mov eax, dword [ebp - 0x68]
lea ecx, [ebp - 0x2c]
call fcn.00418a90
and dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xf
lea esi, [ebp - 0x2c]
mov byte [edi], 0
call fcn.00403068
push 0
push 1
mov ecx, esi
call fcn.0040321f
mov eax, edi
call fcn.00452650
ret
Function at 0x418815
Capabilities:
Decode data using base64 via winapi

Disassembly:
push 0x98
mov eax, 0x468c28
call fcn.004525cd
mov eax, dword [ebp + 8]
xor ebx, ebx
mov edi, ecx
mov dword [ebp - 0x84], ebx
mov ecx, dword [edi + 0x10]
mov dword [ebp - 0x88], eax
cmp ecx, ebx
jne 0x41884b
mov dword [eax], ebx
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
jmp 0x418985
cmp dword [edi + 0x14], 0x10
mov dword [ebp - 0x84], ebx
jb 0x41885b
mov eax, dword [edi]
jmp 0x41885d
mov eax, edi
push ebx
push ebx
lea edx, [ebp - 0x84]
push edx
push ebx
push 1
push ecx
push eax
call dword [sym.imp.CRYPT32.dll_CryptStringToBinaryA]
test eax, eax
jne 0x4188b6
call dword [sym.imp.kernel32.dll_GetLastError]
push ebx
push eax
lea esi, [ebp - 0x48]
call fcn.0042ef2e
push eax
lea eax, [ebp - 0x80]
push str.string2binary__phase1__failed__sysError
push eax
mov dword [ebp - 4], ebx
call fcn.0042ef2e
add esp, 0x14
lea esi, [ebp - 0x94]
mov byte [ebp - 4], 1
call fcn.0042ef2e
push 0x487694
mov eax, esi
push eax
call fcn.0042ef2e
mov esi, dword [ebp - 0x84]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], ebx
mov dword [ebp - 0x94], ebx
mov dword [ebp - 0x90], ebx
call fcn.0040fa1a
mov dword [ebp - 4], 2
cmp dword [edi + 0x14], 0x10
mov eax, dword [edi + 0x10]
jb 0x4188eb
mov edi, dword [edi]
push ebx
push ebx
lea ecx, [ebp - 0x84]
push ecx
push dword [ebp - 0x98]
push 1
push eax
push edi
call dword [sym.imp.CRYPT32.dll_CryptStringToBinaryA]
test eax, eax
jne 0x418949
call dword [sym.imp.kernel32.dll_GetLastError]
push ebx
push eax
lea esi, [ebp - 0x64]
call fcn.0042ef2e
push eax
lea eax, [ebp - 0x2c]
push str.string2binary__phase2__failed__sysError
push eax
mov byte [ebp - 4], 3
call fcn.0042ef2e
add esp, 0x14
lea esi, [ebp - 0xa4]
mov byte [ebp - 4], 4
call fcn.0042ef2e
push 0x487694
mov eax, esi
jmp 0x4188b0
mov esi, dword [ebp - 0x84]
lea eax, [ebp - 0x98]
call fcn.0040fa1a
mov eax, dword [ebp - 0x88]
lea edi, [ebp - 0x98]
call fcn.00418aab
cmp dword [ebp - 0x98], ebx
je 0x41897f
push dword [ebp - 0x98]
call fcn.0042ef2e
pop ecx
mov eax, dword [ebp - 0x88]
call fcn.00452650
ret

Function at 0x41917c
Capabilities:
Hide graphical window

Disassembly:
push 0x34
mov eax, 0x46facf
call fcn.00452564
mov edi, ecx
lea ebx, [edi + 0x44]
mov eax, ebx
lea esi, [ebp - 0x28]
call fcn.00436ce2
mov dword [ebp - 0x14], ebx
and dword [ebp - 4], 0
and dword [edi + 0x50], 0
mov ecx, edi
call fcn.00419273
mov eax, esi
push eax
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 8]
call fcn.00436f21
lea ebx, [edi + 0x54]
mov eax, ebx
lea esi, [ebp - 0x40]
call fcn.00436ce2
mov eax, dword [edi + 8]
mov dword [ebp - 0x2c], ebx
mov eax, dword [eax + 4]
test eax, eax
je 0x4191da
push 0
push eax
call dword [sym.imp.user32.dll_ShowWindow]
lea ecx, [ebp - 0x40]
call fcn.00436d2c
mov edi, dword [edi + 0x50]
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x28]
call fcn.00436d2c
mov eax, edi
call fcn.0045263c
ret
Function at 0x41a0a6
Capabilities:
Hide graphical window

Disassembly:
push ebx
push esi
mov esi, ecx
mov eax, dword [esi + 4]
mov eax, dword [eax + 4]
test eax, eax
je 0x41a0bd
push 0
push eax
call dword [sym.imp.user32.dll_ShowWindow]
mov eax, dword [esi + 4]
mov ebx, dword [eax + 8]
test ebx, ebx
je 0x41a0d0
and dword [eax + 8], 0
call fcn.0041c445
mov eax, dword [esi + 4]
push dword [eax + 4]
call dword [sym.imp.user32.dll_DestroyWindow]
mov eax, dword [esi + 4]
and dword [eax + 4], 0
pop esi
pop ebx
ret
Function at 0x429a80
Capabilities:
Check http status code

Disassembly:
push 0x94
mov eax, 0x46d747
call fcn.004525cd
mov esi, ecx
push esi
push 0x13
pop ecx
call fcn.004294de
mov dword [ebp - 0x8c], eax
cmp eax, 0xc8
je 0x429bc7
cmp eax, 0xce
je 0x429bc7
cmp eax, 0x193
jne 0x429b7a
push 0x476f1c
lea ecx, [ebp - 0x4c]
call fcn.0040246d
push 0x14
xor edi, edi
push esi
lea ecx, [ebp - 0x4c]
lea ebx, [ebp - 0x30]
mov dword [ebp - 4], edi
call fcn.00429668
push edi
push 1
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 2
call fcn.0040321f
mov esi, str.Export_Denied
push esi
call fcn.0044c4a0
pop ecx
push eax
push esi
mov eax, ebx
push eax
xor eax, eax
call fcn.0042ef2e
cmp eax, 0xffffffff
je 0x429b6b
mov edi, 0x193
lea ecx, [ebp - 0xa0]
call fcn.00427194
mov dword [ebp - 0xa0], vtable.HttpConnection::export_compliance_error.0
mov byte [ebp - 4], 3
lea eax, [ebp - 0x7c]
push eax
lea esi, [ebp - 0x88]
lea ecx, [ebp - 0xa0]
mov dword [ebp - 0x88], str.c:_ade_jenkins_workspace_8_2_build_windows_i586_cygwin_jdk8u241_331_install_src_windows_common_NetUtils.cpp
mov dword [ebp - 0x84], str.HttpConnection::Response::checkStatus
mov dword [ebp - 0x80], 0x2cb
call fcn.0042a8f0
mov dword [esp], 0x487bcc
lea eax, [ebp - 0x7c]
push eax
call fcn.0042ef2e
or dword [ebp - 4], 0xffffffff
push edi
push 1
lea ecx, [ebp - 0x30]
call fcn.0040321f
mov edi, dword [ebp - 0x8c]
lea ecx, [ebp - 0xa0]
call fcn.00427194
lea ecx, [ebp - 0x7c]
mov dword [ebp - 4], 4
push ecx
lea esi, [ebp - 0x88]
mov ecx, eax
mov dword [ebp - 0x88], str.c:_ade_jenkins_workspace_8_2_build_windows_i586_cygwin_jdk8u241_331_install_src_windows_common_NetUtils.cpp
mov dword [ebp - 0x84], str.HttpConnection::Response::checkStatus
mov dword [ebp - 0x80], 0x2ce
call fcn.0042a891
mov dword [esp], 0x487b68
jmp 0x429b62
call fcn.00452650
ret

Function at 0x429ebd
Capabilities:
Check http status code
Check internet connectivity via wininet

Disassembly:
push 0x114
mov eax, 0x4706d0
call fcn.00452603
xor ebx, ebx
push ebx
lea eax, [ebp - 0x104]
push eax
mov dword [ebp - 0x104], ebx
call dword [sym.imp.wininet.dll_InternetGetConnectedState]
test eax, eax
je 0x429eed
mov al, 1
jmp 0x429f91
test byte [ebp - 0x104], 0x40
jne 0x429ee6
push str.http:__java.sun.com
lea ecx, [ebp - 0x34]
mov byte [ebp - 0xfd], bl
mov dword [ebp - 4], ebx
call fcn.0040246d
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0xfc]
push eax
mov byte [ebp - 4], 1
call fcn.00427372
push ebx
lea ecx, [ebp - 0x120]
push ecx
mov byte [ebp - 4], 2
push eax
mov dword [eax + 0x20], 2
mov word [eax + 0x1c], 1
call fcn.0042ef2e
push eax
push 0x13
pop ecx
mov byte [ebp - 4], 3
call fcn.004294de
mov esi, eax
lea eax, [ebp - 0x120]
push eax
mov byte [ebp - 4], 2
call fcn.00413f09
lea edi, [ebp - 0xfc]
call fcn.004273d3
push ebx
push 1
lea ecx, [ebp - 0x34]
call fcn.0040321f
cmp esi, 0xc8
je 0x429f84
cmp esi, 0x197
jne 0x429f8b
mov byte [ebp - 0xfd], 1
mov al, byte [ebp - 0xfd]
call fcn.0045265f
ret
Function at 0x42a02d
Capabilities:
Parse url

Disassembly:
push 0x5c
mov eax, 0x46896c
call fcn.004525cd
push 0x38
lea eax, [ebp - 0x64]
push 0
push eax
mov esi, ecx
mov edi, edx
call fcn.0044c6d0
xor ebx, ebx
inc ebx
add esp, 0xc
cmp dword [esi + 0x14], 0x10
mov dword [ebp - 0x68], 0x3c
mov dword [ebp - 0x54], ebx
jb 0x42a062
mov esi, dword [esi]
lea eax, [ebp - 0x68]
push eax
push 0
push 0
push esi
call dword [sym.imp.wininet.dll_InternetCrackUrlA]
test eax, eax
jne 0x42a079
xor al, al
jmp 0x42a0bd
mov eax, dword [ebp - 0x5c]
push 3
pop ecx
sub eax, ecx
je 0x42a08e
dec eax
je 0x42a08a
mov dword [edi], ebx
jmp 0x42a094
mov dword [edi], ecx
jmp 0x42a094
mov dword [edi], 2
push dword [ebp - 0x54]
lea esi, [ebp - 0x2c]
push dword [ebp - 0x58]
call fcn.004036b4
and dword [ebp - 4], 0
add edi, 4
mov esi, eax
call fcn.00403068
push 0
push ebx
lea ecx, [ebp - 0x2c]
call fcn.0040321f
mov al, bl
call fcn.00452650
ret

Function at 0x42b73a
Capabilities:
Get common file path

Disassembly:
push 0x38
mov eax, 0x467ed2
call fcn.004525cd
mov eax, dword [ebp + 8]
xor edi, edi
mov dword [ebp - 0x30], eax
mov esi, 0x104
lea eax, [ebp - 0x40]
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x40], edi
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x38], edi
call fcn.0042a4d0
mov dword [ebp - 4], edi
mov esi, dword [ebp - 0x40]
mov edi, dword [ebp - 0x3c]
mov ebx, dword [sym.imp.kernel32.dll_GetTempPathA]
push esi
sub edi, esi
push edi
call ebx
cmp eax, edi
jbe 0x42b796
mov esi, eax
lea eax, [ebp - 0x40]
call fcn.0042a4d0
mov esi, dword [ebp - 0x40]
mov eax, dword [ebp - 0x3c]
push esi
sub eax, esi
push eax
call ebx
push esi
lea ecx, [ebp - 0x2c]
call fcn.0040246d
mov eax, dword [ebp - 0x30]
lea edx, [ebp - 0x2c]
mov byte [ebp - 4], 1
call fcn.0042c761
push 0
push 1
lea ecx, [ebp - 0x2c]
call fcn.0040321f
test esi, esi
je 0x42b7c5
push esi
call fcn.0042ef2e
pop ecx
mov eax, dword [ebp - 0x30]
call fcn.00452650
ret
Function at 0x42b873
Capabilities:
Get common file path

Disassembly:
push 0x20c
mov eax, 0x46d6be
call fcn.004525cd
xor esi, esi
push 0x104
lea eax, [ebp - 0x118]
push esi
push eax
mov edi, ecx
mov dword [ebp - 0x170], esi
call fcn.0044c6d0
add esp, 0xc
lea eax, [ebp - 0x118]
push eax
push esi
push esi
push 0x8023
push esi
call dword [sym.imp.shell32.dll_SHGetFolderPathA]
mov ebx, eax
cmp ebx, esi
je 0x42b9a1
lea eax, [ebp - 0x218]
push eax
call fcn.00402794
lea eax, [ebp - 0x218]
push str.SHGetFolderPath_0x
push eax
mov dword [ebp - 4], esi
call fcn.00405526
mov eax, dword [ebp - 0x218]
mov eax, dword [eax + 4]
pop ecx
lea eax, [ebp + eax - 0x218]
pop ecx
mov ecx, dword [eax + 0x14]
and ecx, 0xfffff9ff
or ecx, 0x800
mov dword [eax + 0x14], ecx
push 0x23
lea eax, [ebp - 0x218]
push eax
call fcn.0040a962
lea eax, [ebp - 0x218]
push str.__mode
push eax
call fcn.00405526
pop ecx
pop ecx
push 1
lea eax, [ebp - 0x218]
push eax
call fcn.0040a962
lea eax, [ebp - 0x218]
push 0x47a530
push eax
call fcn.00405526
pop ecx
pop ecx
lea eax, [ebp - 0x218]
push eax
lea edi, [ebp - 0x180]
call fcn.00434dd8
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 1
push ecx
lea esi, [ebp - 0x16c]
mov ecx, eax
mov dword [ebp - 0x16c], str.c:_ade_jenkins_workspace_8_2_build_windows_i586_cygwin_jdk8u241_331_install_src_windows_common_SysInfo.cpp
mov dword [ebp - 0x168], str.SysInfo::SHGetFolderPathAdapter
mov dword [ebp - 0x164], 0x1bf
call fcn.0042bde1
lea eax, [ebp - 0x160]
mov dword [esp], 0x487c28
push eax
call fcn.0042ef2e
lea eax, [ebp - 0x118]
push eax
lea ecx, [ebp - 0x134]
call fcn.0040246d
lea edx, [ebp - 0x134]
mov eax, edi
mov dword [ebp - 4], 2
call fcn.0042c761
push esi
push 1
lea ecx, [ebp - 0x134]
call fcn.0040321f
mov eax, edi
call fcn.00452650
ret

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

Disassembly:
cmp dword [eax + 0x14], 0x10
jb 0x42c4fd
mov eax, dword [eax]
push eax
call dword [sym.imp.kernel32.dll_GetFileAttributesA]
xor ecx, ecx
cmp eax, 0xffffffff
setne al
ret

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

Disassembly:
cmp dword [eax + 0x14], 0x10
jb 0x42c515
mov eax, dword [eax]
push eax
call dword [sym.imp.kernel32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x42c529
test al, 0x10
je 0x42c529
xor eax, eax
inc eax
ret
xor eax, eax
ret
Function at 0x42cc30
Capabilities:
Create directory

Disassembly:
push 0xe4
mov eax, 0x46d59a
call fcn.004525cd
mov eax, dword [ebp + 0x24]
mov ebx, ecx
mov dword [ebp - 0x40], eax
and dword [ebp - 4], 0
cmp dword [ebp + 0x1c], 0x10
mov eax, dword [ebp + 8]
jae 0x42cc57
lea eax, [ebp + 8]
mov edi, dword [sym.imp.kernel32.dll_CreateDirectoryA]
push ebx
push eax
call edi
test eax, eax
je 0x42cd21
cmp dword [0x49c100], 0
jg 0x42ccf7
sub esp, 0x1c
lea eax, [ebp + 8]
mov esi, esp
mov dword [ebp - 0x3c], esp
push eax
call fcn.0040244c
lea eax, [ebp - 0xf0]
push eax
mov byte [ebp - 4], 1
call fcn.00402794
lea eax, [ebp - 0xf0]
push str.Created__
push eax
mov byte [ebp - 4], 2
call fcn.00405526
pop ecx
pop ecx
lea esi, [ebp - 0xf0]
mov byte [ebp - 4], 3
call fcn.004042cb
mov esi, eax
push str.__directory
push esi
call fcn.00405526
pop ecx
pop ecx
push esi
push 0x1ce
push 0
mov ebx, str.FileUtils::_anonymous_namespace::createDir
mov edi, str.c:_ade_jenkins_workspace_8_2_build_windows_i586_cygwin_jdk8u241_331_install_src_windows_common_FileUtils.cpp
mov esi, 0x49c100
call fcn.004016c6
lea eax, [ebp - 0xf0]
mov byte [ebp - 4], 0
call fcn.004015e8
mov edi, dword [ebp - 0x40]
test edi, edi
je 0x42cd39
lea edx, [ebp + 8]
lea eax, [ebp - 0x2c]
call fcn.0042c761
push eax
mov byte [ebp - 4], 4
call fcn.00412bb4
push 0
push 1
lea ecx, [ebp - 0x2c]
call fcn.0040321f
jmp 0x42cd39
call dword [sym.imp.kernel32.dll_GetLastError]
mov esi, eax
test ebx, ebx
jne 0x42cd4b
lea eax, [ebp + 8]
call fcn.0042c50d
test al, al
je 0x42cd4b
push 0
push 1
lea ecx, [ebp + 8]
call fcn.0040321f
call fcn.00452650
ret
push str.System_error
push esi
sub esp, 0x1c
lea eax, [ebp + 8]
mov esi, esp
mov dword [ebp - 0x3c], esp
push eax
mov dword [ebp - 0x4c], str.c:_ade_jenkins_workspace_8_2_build_windows_i586_cygwin_jdk8u241_331_install_src_windows_common_FileUtils.cpp
mov dword [ebp - 0x48], str.FileUtils::_anonymous_namespace::createDir
mov dword [ebp - 0x44], 0x1d7
lea ebx, [ebp - 0x4c]
call fcn.0040244c
lea eax, [ebp - 0xf0]
push eax
mov byte [ebp - 4], 5
call fcn.00402794
lea eax, [ebp - 0xf0]
push str.CreateDirectory_
push eax
mov byte [ebp - 4], 6
call fcn.00405526
pop ecx
pop ecx
lea esi, [ebp - 0xf0]
mov byte [ebp - 4], 7
call fcn.004042cb
mov esi, eax
push 0x47e228
push esi
call fcn.00405526
pop ecx
pop ecx
mov ecx, edi
push esi
lea edi, [ebp - 0x58]
call fcn.004374b8
lea ecx, [ebp - 0x38]
push ecx
mov esi, ebx
mov ecx, eax
mov byte [ebp - 4], 8
call fcn.0041b5e6
lea eax, [ebp - 0x38]
mov dword [esp], 0x4878f8
push eax
call fcn.0042ef2e
int3
Function at 0x42d363
Capabilities:
Delete file

Disassembly:
push 0x9c
mov eax, 0x46a63b
call fcn.00452564
mov edi, ecx
cmp dword [edi + 0x14], 0x10
jb 0x42d37e
mov eax, dword [edi]
jmp 0x42d380
mov eax, edi
push eax
call dword [sym.imp.kernel32.dll_DeleteFileA]
test eax, eax
setne al
xor ebx, ebx
cmp al, bl
je 0x42d41e
cmp dword [0x49c100], ebx
jg 0x42d41a
sub esp, 0x1c
mov esi, esp
mov dword [ebp - 0x10], esp
push edi
call fcn.0040244c
lea eax, [ebp - 0xa8]
push eax
mov dword [ebp - 4], ebx
call fcn.00402794
lea eax, [ebp - 0xa8]
push str.Deleted__
push eax
mov byte [ebp - 4], 1
call fcn.00405526
pop ecx
pop ecx
lea esi, [ebp - 0xa8]
mov byte [ebp - 4], 2
call fcn.004042cb
mov esi, eax
push str.__file
push esi
call fcn.00405526
pop ecx
pop ecx
push esi
push 0x25e
push ebx
mov ebx, str.FileUtils::_anonymous_namespace::deleteFileImpl
mov edi, str.c:_ade_jenkins_workspace_8_2_build_windows_i586_cygwin_jdk8u241_331_install_src_windows_common_FileUtils.cpp
mov esi, 0x49c100
call fcn.004016c6
or dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0xa8]
call fcn.004015e8
mov al, 1
jmp 0x42d42d
call dword [sym.imp.kernel32.dll_GetLastError]
push eax
call fcn.0042d34e
add esp, 4
call fcn.0045263c
ret
Function at 0x42e263
Capabilities:
Get file version info

Disassembly:
push 0xf0
mov eax, 0x46d350
call fcn.004525cd
mov eax, dword [ebp + 8]
push eax
mov esi, ebx
mov dword [ebp - 0x54], ebx
call fcn.0040244c
xor esi, esi
mov dword [ebp - 4], esi
mov dword [ebx + 0x1c], esi
mov dword [ebx + 0x20], esi
mov dword [ebx + 0x24], esi
mov byte [ebp - 4], 1
cmp dword [ebx + 0x14], 0x10
mov dword [ebp - 0x40], esi
jb 0x42e29f
mov eax, dword [ebx]
jmp 0x42e2a1
mov eax, ebx
lea ecx, [ebp - 0x40]
push ecx
push eax
call dword [sym.imp.version.dll_GetFileVersionInfoSizeA]
cmp eax, esi
jne 0x42e359
push str.System_error
mov dword [ebp - 0x4c], str.c:_ade_jenkins_workspace_8_2_build_windows_i586_cygwin_jdk8u241_331_install_src_windows_common_FileUtils.cpp
mov dword [ebp - 0x48], str.VersionResource::VersionResource
mov dword [ebp - 0x44], 0x464
call dword [sym.imp.kernel32.dll_GetLastError]
push eax
sub esp, 0x1c
mov esi, esp
mov dword [ebp - 0x50], esp
push ebx
call fcn.0040244c
lea eax, [ebp - 0xfc]
push eax
mov byte [ebp - 4], 2
call fcn.00402794
lea eax, [ebp - 0xfc]
push str.GetFileVersionInfoSize_
push eax
mov byte [ebp - 4], 3
call fcn.00405526
pop ecx
pop ecx
lea esi, [ebp - 0xfc]
mov byte [ebp - 4], 4
call fcn.004042cb
mov esi, eax
push 0x47e228
push esi
call fcn.00405526
pop ecx
pop ecx
mov ecx, dword [sym.imp.version.dll_GetFileVersionInfoSizeA]
push esi
lea edi, [ebp - 0x60]
call fcn.004374b8
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x3c]
push ecx
lea esi, [ebp - 0x4c]
mov ecx, eax
call fcn.0041b5e6
lea eax, [ebp - 0x3c]
mov dword [esp], 0x4878f8
push eax
call fcn.0042ef2e
mov esi, eax
lea eax, [ebx + 0x1c]
call fcn.0040fa1a
mov ecx, dword [ebx + 0x1c]
mov eax, dword [ebx + 0x20]
sub eax, ecx
cmp dword [ebx + 0x14], 0x10
jb 0x42e375
mov edx, dword [ebx]
jmp 0x42e377
mov edx, ebx
mov edi, dword [sym.imp.version.dll_GetFileVersionInfoA]
push ecx
push eax
push dword [ebp - 0x40]
push edx
call edi
test eax, eax
jne 0x42e415
push str.System_error
mov dword [ebp - 0x4c], str.c:_ade_jenkins_workspace_8_2_build_windows_i586_cygwin_jdk8u241_331_install_src_windows_common_FileUtils.cpp
mov dword [ebp - 0x48], str.VersionResource::VersionResource
mov dword [ebp - 0x44], 0x46d
call dword [sym.imp.kernel32.dll_GetLastError]
push eax
sub esp, 0x1c
mov esi, esp
mov dword [ebp - 0x50], esp
push ebx
call fcn.0040244c
lea eax, [ebp - 0xfc]
push eax
mov byte [ebp - 4], 6
call fcn.00402794
lea eax, [ebp - 0xfc]
push str.GetFileVersionInfo_
push eax
mov byte [ebp - 4], 7
call fcn.00405526
pop ecx
pop ecx
lea esi, [ebp - 0xfc]
mov byte [ebp - 4], 8
call fcn.004042cb
mov esi, eax
push 0x47e228
push esi
call fcn.00405526
pop ecx
pop ecx
mov ecx, edi
push esi
lea edi, [ebp - 0x60]
call fcn.004374b8
mov byte [ebp - 4], 9
jmp 0x42e33b
mov eax, ebx
call fcn.00452650
ret 4