joyce8/EMBER2024-capa huggingface dataset:
Function at 0x100069a0
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x10
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 8]
mov dword [0x100303c8], 0
mov byte [0x100303cc], 0
mov dword [0x100303bc], 0x21
mov dword [0x100303c4], 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x18], edx
jmp 0x10006a7b
mov eax, dword [ebp - 0x1c]
mov ecx, 0x100
mov edx, dword [0x100303c8]
mov esi, dword [ebp - 0x18]
movzx edi, byte [esi + eax]
add edi, edx
xor edx, edx
mov ebx, dword [ebp - 0x10]
div ebx
mov esi, dword [ebp - 0x14]
movzx edx, byte [esi + edx]
add edi, edx
mov eax, edi
cdq
idiv ecx
mov dword [0x100303c8], edx
mov ecx, dword [0x100303c4]
mov edi, dword [ebp - 0x18]
mov bl, byte [edi + ecx]
mov byte [0x100303cc], bl
mov bl, byte [edi + edx]
mov byte [edi + ecx], bl
mov bl, byte [0x100303cc]
mov ecx, dword [0x100303c8]
mov byte [edi + ecx], bl
mov dword [0x100303bc], 0x2cc
mov ecx, dword [0x100303c4]
add ecx, 1
mov dword [0x100303c4], ecx
cmp ecx, 0x100
mov dword [ebp - 0x1c], ecx
jl 0x100069e5
jmp 0x10006aac
xor eax, eax
mov dword [0x100303c4], 0
mov dword [ebp - 0x1c], eax
jmp 0x100069e5
mov dword [0x100303c0], 0x10da
mov eax, dword [0x100303c4]
mov ecx, eax
mov dl, cl
mov ecx, dword [ebp - 0x18]
mov byte [ecx + eax], dl
mov eax, dword [0x100303c4]
add eax, 1
mov dword [0x100303c4], eax
cmp eax, 0x100
jl 0x10006a7b
jmp 0x10006a67
add esp, 0x10
pop esi
pop edi
pop ebx
pop ebp
ret
Function at 0x404b8f
Capabilities:
Check mutex on windows

Disassembly:
push ebp
lea ebp, [esp - 0x7a8]
sub esp, 0x828
mov eax, dword [0x479630]
xor eax, ebp
mov dword [ebp + 0x7a4], eax
mov eax, dword [ebp + 0x7b0]
push ebx
xor ebx, ebx
push esi
mov esi, ecx
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], ebx
mov dword [ebp - 0x80], ebx
mov dword [ebp - 0x68], ebx
mov byte [ebp - 0x6c], bl
mov dword [esi], ebx
call fcn.0043af30
mov dword [esi], eax
cmp eax, ebx
jne 0x404be4
push str.ERROR:_ShutdownEvent_handle_is_NULL
call fcn.00417007
pop ecx
mov dword [ebp - 0x60], 0xfffffffe
push dword [ebp - 0x64]
call fcn.0043af30
pop ecx
test eax, eax
jne 0x404c04
push str.jusched_ERROR:_Could_not_open_Policy_key_for_reading
call fcn.00417007
mov dword [ebp - 0x60], 0xfffffffd
jmp 0x404c27
mov eax, dword [ebp - 0x64]
push dword [eax]
call fcn.00404b12
pop ecx
mov dword [esi + 4], eax
cmp eax, ebx
jne 0x404c28
push str.jusched_main:_ERROR_creating_registry_watch_event_notifier
call fcn.00417007
mov dword [ebp - 0x60], 0xfffffffe
pop ecx
push str.SunJavaUpdateSchedulerMutex
push 1
push ebx
mov dword [edi], ebx
call dword [sym.imp.kernel32.dll_CreateMutexA]
mov dword [edi], eax
cmp eax, ebx
jne 0x404c98
call dword [sym.imp.kernel32.dll_GetLastError]
push 0x7ff
mov dword [ebp - 0x60], eax
lea eax, [ebp - 0x5b]
push ebx
push eax
mov byte [ebp - 0x5c], bl
call fcn.0043b8b0
add esp, 0xc
cmp dword [ebp - 0x60], 0xb7
lea eax, [ebp - 0x5c]
jne 0x404c78
push str.Error:_Scheduler_Mutex_already_exists_n
push eax
call dword [sym.imp.user32.dll_wsprintfA]
pop ecx
pop ecx
jmp 0x404c8a
push dword [ebp - 0x60]
push str.Error:_Error_creating_scheduler_mutex:__d_n
push eax
call dword [sym.imp.user32.dll_wsprintfA]
add esp, 0xc
lea eax, [ebp - 0x5c]
push eax
call fcn.00417007
or dword [ebp - 0x60], 0xffffffff
pop ecx
cmp dword [ebp - 0x60], ebx
je 0x404cb7
push dword [edi]
push esi
call fcn.00404b61
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
pop ecx
pop ecx
lea esi, [ebp - 0x80]
mov dword [ebp - 0x7c], eax
call fcn.00414507
mov ecx, dword [ebp + 0x7a4]
mov eax, dword [ebp - 0x60]
pop esi
xor ecx, ebp
pop ebx
call fcn.0043a455
add ebp, 0x7a8
leave
ret
Function at 0x4065d8
Capabilities:
Create thread

Disassembly:
push ebp
lea ebp, [esp - 0xac]
sub esp, 0x12c
mov eax, dword [0x479630]
xor eax, ebp
mov dword [ebp + 0xa8], eax
push ebx
push esi
mov esi, dword [ebp + 0xb4]
push edi
mov edi, dword [sym.imp.kernel32.dll_CreateEventA]
xor ebx, ebx
push ebx
push ebx
mov dword [esi + 0xc], 0xbc2
mov eax, dword [0x47c184]
push 1
push ebx
mov dword [esi + 0x18], eax
call edi
push ebx
push ebx
push 1
push ebx
mov dword [esi + 0x20], eax
call edi
push ebx
push ebx
push 1
push ebx
mov dword [esi + 0x24], eax
call edi
mov dword [esi + 0x38], eax
call fcn.0043af30
mov dword [esi + 0x3c], eax
xor eax, eax
mov byte [ebp - 0x7c], bl
lea edi, [ebp - 0x7b]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
xor eax, eax
mov dword [ebp - 0x68], ebx
lea edi, [ebp - 0x64]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
push 1
lea eax, [ebp - 0x7c]
push eax
call dword [sym.imp.ADVAPI32.dll_InitializeSecurityDescriptor]
push ebx
push ebx
push 1
lea eax, [ebp - 0x7c]
push eax
call dword [sym.imp.ADVAPI32.dll_SetSecurityDescriptorDacl]
push str.SunJavaUpdateRecheckUpdateEvent
lea eax, [ebp - 0x7c]
push ebx
mov dword [ebp - 0x64], eax
push ebx
lea eax, [ebp - 0x68]
push eax
mov dword [ebp - 0x68], 0xc
call dword [sym.imp.kernel32.dll_CreateEventA]
push dword [esi + 0x20]
mov edi, dword [sym.imp.kernel32.dll_ResetEvent]
mov dword [esi + 0x40], eax
call edi
push dword [esi + 0x24]
call edi
push dword [esi + 0x38]
call edi
lea eax, [ebp - 0x80]
push eax
push ebx
push esi
push 0x406bb3
push ebx
push ebx
call dword [sym.imp.kernel32.dll_CreateThread]
cmp eax, ebx
je 0x4066c0
push eax
call dword [sym.imp.kernel32.dll_CloseHandle]
push 0xffffffffffffffff
push dword [esi + 0x20]
call dword [sym.imp.kernel32.dll_WaitForSingleObject]
push dword [esi + 0x20]
call edi
mov edi, dword [sym.imp.user32.dll_LoadStringA]
mov ebx, 0x104
push ebx
lea eax, [esi + 0x54]
push eax
push 0x7b
push dword [esi + 0x18]
call edi
push ebx
lea eax, [ebp - 0x5c]
push eax
push 0x7c
push dword [esi + 0x18]
call edi
lea eax, [ebp - 0x5c]
push eax
call dword [sym.imp.kernel32.dll_lstrlenA]
test eax, eax
jle 0x406712
lea eax, [ebp - 0x5c]
push eax
add esi, 0x158
push esi
call dword [sym.imp.kernel32.dll_lstrcpyA]
mov ecx, dword [ebp + 0xa8]
pop edi
pop esi
xor ecx, ebp
xor eax, eax
pop ebx
call fcn.0043a455
add ebp, 0xac
leave
ret 4
Function at 0x40fa9c
Capabilities:
Delete registry key

Disassembly:
push 0x38
mov eax, 0x45749d
call fcn.00441eb1
mov eax, dword [ebp + 8]
xor ebx, ebx
xor edi, edi
mov dword [ebp + 8], ebx
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x40], reloc.OLEAUT32.dll_SysReAllocString
mov dword [ebp - 0x28], ebx
mov byte [ebp - 0x2c], bl
cmp eax, ebx
jne 0x40fb08
cmp dword [ebp + 0x10], ebx
jne 0x40fae5
push 0x2001f
push str.SOFTWAREJavaSoftJava_UpdatePolicyjucheck
lea eax, [ebp - 0x40]
call fcn.004144d0
mov eax, dword [ebp - 0x38]
mov dword [ebp + 8], eax
jmp 0x40fafa
push str.SetJavaUpdateStringKey_was_called_with_a_NULL_value_for_the_key__so_defaulting_to_trying_jucheck_key
call fcn.00417007
pop ecx
lea eax, [ebp + 8]
push eax
call fcn.0043af30
pop ecx
cmp dword [ebp + 8], ebx
je 0x40fb0b
mov dword [ebp - 0x10], 1
jmp 0x40fb0b
mov dword [ebp + 8], eax
xor esi, esi
lea eax, [ebp - 0x20]
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x18], ebx
call fcn.0041053c
mov dword [ebp - 4], ebx
mov eax, dword [ebp + 8]
mov dword [ebp - 0x3c], eax
cmp dword [ebp + 0x10], ebx
je 0x40fb3c
push dword [ebp + 0x10]
lea ebx, [ebp - 0x24]
call fcn.0043af30
xor ebx, ebx
cmp dword [ebp + 8], ebx
je 0x40fb89
cmp dword [ebp + 0x10], ebx
jne 0x40fb54
push dword [ebp + 0xc]
push dword [ebp - 0x3c]
call dword [sym.imp.ADVAPI32.dll_RegDeleteKeyA]
jmp 0x40fb82
push dword [ebp + 0x10]
mov dword [ebp - 0x24], 1
call dword [sym.imp.kernel32.dll_lstrlenA]
push eax
push dword [ebp + 0x10]
push dword [ebp - 0x20]
call fcn.0043af30
add esp, 0xc
push dword [ebp + 0xc]
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0x24]
call fcn.004145aa
mov edi, eax
neg edi
sbb edi, edi
inc edi
cmp dword [ebp - 0x10], ebx
je 0x40fb96
lea esi, [ebp - 0x40]
call fcn.00414507
lea esi, [ebp - 0x20]
call fcn.0042525d
mov eax, edi
call fcn.00441f89
ret
Function at 0x4103fe
Capabilities:
Get common file path
Parse url

Disassembly:
push ebp
lea ebp, [esp - 0x5cc]
sub esp, 0x64c
mov eax, dword [0x479630]
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.0043b8b0
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 0x4104a6
push 0x100
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.0043af30
lea eax, [ebp + 0x4c4]
push 0x464e60
push eax
call fcn.0043b3f0
add esp, 0x2c
test eax, eax
je 0x4104ef
mov eax, esi
mov dword [ebp - 0x40], ebx
cmp byte [esi], bl
je 0x4104d7
mov cl, byte [eax]
cmp cl, 0x20
je 0x4104bb
cmp cl, 9
jne 0x4104c4
push eax
call dword [sym.imp.user32.dll_CharNextA]
jmp 0x4104af
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 0x4104af
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.0043a455
add ebp, 0x5cc
leave
ret
Function at 0x41292f
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
lea ebp, [esp - 0x394]
sub esp, 0x414
mov eax, dword [0x479630]
xor eax, ebp
mov dword [ebp + 0x390], eax
mov eax, dword [ebp + 0x39c]
push esi
push edi
mov dword [ebp - 0x74], eax
lea eax, [ebp - 0x7c]
push eax
push 1
push 0
push str.SOFTWAREJavaSoftJava_UpdatePolicy
push reloc.OLEAUT32.dll_SysReAllocString
mov dword [ebp - 0x78], 0x400
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x412a11
mov byte [ebp - 0x70], al
lea eax, [ebp - 0x78]
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x80]
push eax
push 0
push str.TransferJobID
push dword [ebp - 0x7c]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
push dword [ebp - 0x7c]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp dword [ebp - 0x78], 0
jbe 0x412a11
mov esi, dword [sym.imp.kernel32.dll_lstrlenA]
lea eax, [ebp - 0x70]
push eax
call esi
test eax, eax
je 0x412a11
lea eax, [ebp - 0x70]
push eax
call esi
lea edi, [eax + 1]
cmp edi, 0x3fffffff
jle 0x4129cf
xor eax, eax
jmp 0x4129e5
lea eax, [edi + edi]
call fcn.0044ee80
mov esi, esp
push 3
push edi
lea eax, [ebp - 0x70]
push eax
call fcn.00401098
push dword [ebp - 0x74]
push eax
call dword [sym.imp.ole32.dll_CLSIDFromString]
push 0x10
push 0x45d5d8
push dword [ebp - 0x74]
call fcn.0043af30
add esp, 0xc
neg eax
sbb eax, eax
and eax, 0x7fffbffb
add eax, 0x80004005
jmp 0x412a16
mov eax, 0x80004005
lea esp, [ebp - 0x88]
pop edi
pop esi
mov ecx, dword [ebp + 0x390]
xor ecx, ebp
call fcn.0043a455
add ebp, 0x394
leave
ret

Function at 0x413eeb
Capabilities:
Encrypt data using dpapi

Disassembly:
push 0x60
mov eax, 0x455b7c
call fcn.00441f1a
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 0x413f78
call dword [sym.imp.kernel32.dll_GetLastError]
push ebx
push eax
lea esi, [ebp - 0x30]
call fcn.0043af30
push eax
lea eax, [ebp - 0x4c]
push str.encryption_failed__sysError
push eax
mov dword [ebp - 4], ebx
call fcn.0043af30
add esp, 0x14
lea esi, [ebp - 0x6c]
mov byte [ebp - 4], 1
call fcn.0043af30
push 0x46d650
mov eax, esi
push eax
call fcn.0043af30
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.0041053c
push dword [ebp - 0x54]
mov eax, dword [edi]
push dword [ebp - 0x50]
push eax
call fcn.0043af30
add esp, 0xc
push dword [ebp - 0x50]
call dword [sym.imp.kernel32.dll_LocalFree]
mov eax, edi
call fcn.00441f9d
ret
Function at 0x413faf
Capabilities:
Encrypt data using dpapi

Disassembly:
push 0x60
mov eax, 0x455b7c
call fcn.00441f1a
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 0x41402d
call dword [sym.imp.kernel32.dll_GetLastError]
push ebx
push eax
lea esi, [ebp - 0x30]
call fcn.0043af30
push eax
lea eax, [ebp - 0x4c]
push str.decryption_failed__sysError
push eax
mov dword [ebp - 4], ebx
call fcn.0043af30
add esp, 0x14
lea esi, [ebp - 0x6c]
mov byte [ebp - 4], 1
call fcn.0043af30
push 0x46d650
mov eax, esi
push eax
call fcn.0043af30
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.0041053c
push dword [ebp - 0x54]
mov eax, dword [edi]
push dword [ebp - 0x50]
push eax
call fcn.0043af30
add esp, 0xc
push dword [ebp - 0x50]
call dword [sym.imp.kernel32.dll_LocalFree]
mov eax, edi
call fcn.00441f9d
ret

Function at 0x4140d6
Capabilities:
Encode data using base64 via winapi

Disassembly:
push 0x6c
mov eax, 0x455b47
call fcn.00441f1a
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 0x414105
mov dword [edi + 0x14], 0xf
mov dword [edi + 0x10], ecx
mov byte [edi], cl
jmp 0x4141fe
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 0x414163
call dword [sym.imp.kernel32.dll_GetLastError]
push 0
push eax
lea esi, [ebp - 0x64]
call fcn.0043af30
and dword [ebp - 4], 0
push eax
lea eax, [ebp - 0x48]
push str.binary2string__phase1__failed__sysError
push eax
call fcn.0043af30
add esp, 0x14
mov byte [ebp - 4], 1
lea esi, [ebp - 0x78]
call fcn.0043af30
push 0x46d650
mov eax, esi
push eax
call fcn.0043af30
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.00414481
cmp dword [ebp - 0x18], 0x10
mov eax, dword [ebp - 0x2c]
jae 0x414190
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 0x4141d2
call dword [sym.imp.kernel32.dll_GetLastError]
push 0
push eax
lea esi, [ebp - 0x48]
call fcn.0043af30
push eax
lea eax, [ebp - 0x64]
push str.binary2string__phase2__failed__sysError
push eax
mov byte [ebp - 4], 3
call fcn.0043af30
add esp, 0x14
mov byte [ebp - 4], 4
jmp 0x41414e
mov eax, dword [ebp - 0x68]
lea ecx, [ebp - 0x2c]
call fcn.00414481
and dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xf
lea esi, [ebp - 0x2c]
mov byte [edi], 0
call fcn.00405cea
push 0
push 1
mov ecx, esi
call fcn.00405e43
mov eax, edi
call fcn.00441f9d
ret
Function at 0x414206
Capabilities:
Decode data using base64 via winapi

Disassembly:
push 0x98
mov eax, 0x455af7
call fcn.00441f1a
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 0x41423c
mov dword [eax], ebx
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
jmp 0x414376
cmp dword [edi + 0x14], 0x10
mov dword [ebp - 0x84], ebx
jb 0x41424c
mov eax, dword [edi]
jmp 0x41424e
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 0x4142a7
call dword [sym.imp.kernel32.dll_GetLastError]
push ebx
push eax
lea esi, [ebp - 0x48]
call fcn.0043af30
push eax
lea eax, [ebp - 0x80]
push str.string2binary__phase1__failed__sysError
push eax
mov dword [ebp - 4], ebx
call fcn.0043af30
add esp, 0x14
lea esi, [ebp - 0x94]
mov byte [ebp - 4], 1
call fcn.0043af30
push 0x46d650
mov eax, esi
push eax
call fcn.0043af30
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.0041053c
mov dword [ebp - 4], 2
cmp dword [edi + 0x14], 0x10
mov eax, dword [edi + 0x10]
jb 0x4142dc
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 0x41433a
call dword [sym.imp.kernel32.dll_GetLastError]
push ebx
push eax
lea esi, [ebp - 0x64]
call fcn.0043af30
push eax
lea eax, [ebp - 0x2c]
push str.string2binary__phase2__failed__sysError
push eax
mov byte [ebp - 4], 3
call fcn.0043af30
add esp, 0x14
lea esi, [ebp - 0xa4]
mov byte [ebp - 4], 4
call fcn.0043af30
push 0x46d650
mov eax, esi
jmp 0x4142a1
mov esi, dword [ebp - 0x84]
lea eax, [ebp - 0x98]
call fcn.0041053c
mov eax, dword [ebp - 0x88]
lea edi, [ebp - 0x98]
call fcn.0041449c
cmp dword [ebp - 0x98], ebx
je 0x414370
push dword [ebp - 0x98]
call fcn.0043af30
pop ecx
mov eax, dword [ebp - 0x88]
call fcn.00441f9d
ret
Function at 0x41aa49
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push 0x120
mov eax, 0x4593c3
call fcn.00441f1a
mov eax, dword [ebp + 8]
mov esi, ecx
mov dword [ebp - 0x78], eax
mov eax, esi
call fcn.0041aa2b
mov edi, eax
test edi, edi
jne 0x41ab01
push str.cannot_find_resource
lea ecx, [ebp - 0x30]
call fcn.00405b5f
and dword [ebp - 4], edi
lea eax, [ebp - 0x74]
push eax
lea edx, [ebp - 0x30]
mov ecx, esi
call fcn.0041a976
mov edi, eax
lea esi, [ebp - 0x12c]
mov byte [ebp - 4], 1
call fcn.00416cfa
push str.System_error
mov byte [ebp - 4], 2
call dword [sym.imp.kernel32.dll_GetLastError]
mov ecx, dword [sym.imp.kernel32.dll_FindResourceA]
push eax
mov eax, esi
push eax
lea edi, [ebp - 0x90]
call fcn.0042aa6f
mov byte [ebp - 4], 3
mov dword [ebp - 0x84], str.c:_ade_jenkins_workspace_8_2_build_windows_i586_cygwin_jdk8u241_331_install_src_windows_common_Resources.cpp
mov dword [ebp - 0x80], str.Resource::getPtr
mov dword [ebp - 0x7c], 0x41
lea ecx, [ebp - 0x58]
push ecx
lea esi, [ebp - 0x84]
mov ecx, eax
call fcn.0041acfa
lea eax, [ebp - 0x58]
mov dword [esp], 0x46d888
push eax
call fcn.0043af30
mov ebx, dword [sym.imp.kernel32.dll_LoadResource]
push edi
push dword [esi + 0x40]
call ebx
test eax, eax
jne 0x41ab85
push str.cannot_load_resource
lea ecx, [ebp - 0x30]
call fcn.00405b5f
lea eax, [ebp - 0x74]
push eax
lea edx, [ebp - 0x30]
mov ecx, esi
mov dword [ebp - 4], 4
call fcn.0041a976
mov edi, eax
lea esi, [ebp - 0x12c]
mov byte [ebp - 4], 5
call fcn.00416cfa
push str.System_error
mov byte [ebp - 4], 6
call dword [sym.imp.kernel32.dll_GetLastError]
push eax
mov eax, esi
push eax
mov ecx, ebx
lea edi, [ebp - 0x90]
call fcn.0042aa6f
mov byte [ebp - 4], 7
mov dword [ebp - 0x84], str.c:_ade_jenkins_workspace_8_2_build_windows_i586_cygwin_jdk8u241_331_install_src_windows_common_Resources.cpp
mov dword [ebp - 0x80], str.Resource::getPtr
mov dword [ebp - 0x7c], 0x46
jmp 0x41aae0
push eax
call dword [sym.imp.kernel32.dll_LockResource]
cmp dword [esi + 0x3c], 6
mov ebx, eax
jne 0x41abb5
mov esi, dword [esi + 0x1c]
and esi, 0xf
jbe 0x41aba6
dec esi
movzx ecx, word [eax]
lea eax, [eax + ecx*2 + 2]
jne 0x41ab9c
movzx ecx, word [eax]
mov edx, dword [ebp - 0x78]
add ecx, ecx
mov dword [edx], ecx
lea ebx, [eax + 2]
jmp 0x41abc4
push edi
push dword [esi + 0x40]
call dword [sym.imp.kernel32.dll_SizeofResource]
mov ecx, dword [ebp - 0x78]
mov dword [ecx], eax
mov eax, ebx
call fcn.00441f9d
ret 4
Function at 0x420edc
Capabilities:
Check http status code

Disassembly:
push 0x94
mov eax, 0x459272
call fcn.00441f1a
mov esi, ecx
push esi
push 0x13
pop ecx
call fcn.0042093a
mov dword [ebp - 0x8c], eax
cmp eax, 0xc8
je 0x421023
cmp eax, 0xce
je 0x421023
cmp eax, 0x193
jne 0x420fd6
push 0x4634c6
lea ecx, [ebp - 0x4c]
call fcn.00405b5f
push 0x14
xor edi, edi
push esi
lea ecx, [ebp - 0x4c]
lea ebx, [ebp - 0x30]
mov dword [ebp - 4], edi
call fcn.00420ac4
push edi
push 1
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 2
call fcn.00405e43
mov esi, str.Export_Denied
push esi
call fcn.0043b360
pop ecx
push eax
push esi
mov eax, ebx
push eax
xor eax, eax
call fcn.0043af30
cmp eax, 0xffffffff
je 0x420fc7
mov edi, 0x193
lea ecx, [ebp - 0xa0]
call fcn.0041ebb5
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.004233d7
mov dword [esp], 0x46dbd8
lea eax, [ebp - 0x7c]
push eax
call fcn.0043af30
or dword [ebp - 4], 0xffffffff
push edi
push 1
lea ecx, [ebp - 0x30]
call fcn.00405e43
mov edi, dword [ebp - 0x8c]
lea ecx, [ebp - 0xa0]
call fcn.0041ebb5
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.00423378
mov dword [esp], 0x46db74
jmp 0x420fbe
call fcn.00441f9d
ret

Function at 0x421319
Capabilities:
Parse url

Disassembly:
push 0x5c
mov eax, 0x45590b
call fcn.00441f1a
push 0x38
lea eax, [ebp - 0x64]
push 0
push eax
mov esi, ecx
mov edi, edx
call fcn.0043b8b0
xor ebx, ebx
inc ebx
add esp, 0xc
cmp dword [esi + 0x14], 0x10
mov dword [ebp - 0x68], 0x3c
mov dword [ebp - 0x54], ebx
jb 0x42134e
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 0x421365
xor al, al
jmp 0x4213a9
mov eax, dword [ebp - 0x5c]
push 3
pop ecx
sub eax, ecx
je 0x42137a
dec eax
je 0x421376
mov dword [edi], ebx
jmp 0x421380
mov dword [edi], ecx
jmp 0x421380
mov dword [edi], 2
push dword [ebp - 0x54]
lea esi, [ebp - 0x2c]
push dword [ebp - 0x58]
call fcn.0040aa07
and dword [ebp - 4], 0
add edi, 4
mov esi, eax
call fcn.00405cea
push 0
push ebx
lea ecx, [ebp - 0x2c]
call fcn.00405e43
mov al, bl
call fcn.00441f9d
ret