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

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1058
call fcn.00429b20
mov eax, dword [0x4a6134]
xor eax, ebp
mov dword [ebp - 4], eax
xorps xmm0, xmm0
mov dword [ebp - 0x1048], 0x44
push esi
mov esi, dword [ebp + 8]
lea eax, [ebp - 0x1048]
push edi
mov edi, dword [ebp + 0xc]
push eax
movlpd qword [ebp - 0x1044], xmm0
movlpd qword [ebp - 0x103c], xmm0
movlpd qword [ebp - 0x1034], xmm0
movlpd qword [ebp - 0x102c], xmm0
movlpd qword [ebp - 0x1024], xmm0
movlpd qword [ebp - 0x101c], xmm0
movlpd qword [ebp - 0x1014], xmm0
movlpd qword [ebp - 0x100c], xmm0
call dword [sym.imp.KERNEL32.dll_GetStartupInfoW]
xor eax, eax
mov dword [ebp - 0x101c], 1
mov word [ebp - 0x1018], ax
xorps xmm0, xmm0
movups xmmword [ebp - 0x1058], xmm0
test edi, edi
je 0x402d15
push 0x1000
push eax
lea eax, [ebp - 0x1004]
push eax
call fcn.00459240
push edi
push esi
lea eax, [ebp - 0x1004]
push str.__s___s
push eax
call fcn.00402880
add esp, 0x1c
lea eax, [ebp - 0x1058]
push eax
lea eax, [ebp - 0x1048]
push eax
push 0
push 0
push 0
push 0
push 0
push 0
lea eax, [ebp - 0x1004]
push eax
jmp 0x402d30
lea eax, [ebp - 0x1058]
push eax
lea eax, [ebp - 0x1048]
push eax
push 0
push 0
push 0
push 0
push 0
push 0
push esi
push 0
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
mov edi, eax
test edi, edi
je 0x402d54
push dword [ebp - 0x1054]
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
call esi
push dword [ebp - 0x1058]
call esi
mov ecx, dword [ebp - 4]
mov eax, edi
pop edi
xor ecx, ebp
pop esi
call fcn.00429b0b
mov esp, ebp
pop ebp
ret
Function at 0x40f810
Capabilities:
Connect pipe

Disassembly:
push ebp
mov ebp, esp
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
imul esi, ebx, 0x4058
mov edi, ecx
add esi, edi
push esi
push dword [esi + 0x28]
mov dword [esi + 0x4038], 0
call dword [sym.imp.KERNEL32.dll_ConnectNamedPipe]
test eax, eax
je 0x40f85b
mov byte [esi + 0x2c], 0
mov dword [esi + 0x4038], 1
mov ecx, dword [edi + 0x283ec]
test ecx, ecx
je 0x40f85b
mov eax, dword [ecx]
push 0
push ebx
push edi
call dword [eax]
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x217
je 0x40f889
cmp eax, 0x3e5
je 0x40f878
pop edi
pop esi
xor al, al
pop ebx
pop ebp
ret 4
pop edi
mov byte [esi + 0x2c], 1
mov al, 1
mov byte [esi + 0x2d], 0
pop esi
pop ebx
pop ebp
ret 4
push dword [esi + 0x10]
call dword [sym.imp.KERNEL32.dll_SetEvent]
pop edi
mov byte [esi + 0x2d], 0
mov al, 1
pop esi
pop ebx
pop ebp
ret 4
Function at 0x40fc50
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
mov eax, dword [0x4a6134]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
imul edi, ebx, 0x4058
mov esi, ecx
mov dword [ebp - 8], 0
add edi, esi
cmp byte [edi + 0x2c], 0
je 0x40fd2e
push 0
lea eax, [ebp - 8]
push eax
push edi
push dword [edi + 0x28]
call dword [sym.imp.KERNEL32.dll_GetOverlappedResult]
mov ecx, dword [edi + 0x4038]
sub ecx, 0
je 0x40fd0a
sub ecx, 1
jne 0x40fd2e
test eax, eax
je 0x40fccd
mov eax, dword [ebp - 8]
test eax, eax
je 0x40fccd
mov dword [edi + 0x30], eax
mov ecx, dword [esi + 0x283ec]
test ecx, ecx
je 0x40fd2e
mov edx, dword [ecx]
push 0
push eax
lea eax, [edi + 0x38]
push eax
push ebx
push esi
call dword [edx + 8]
jmp 0x40fd2e
push dword [edi + 0x28]
call dword [sym.imp.KERNEL32.dll_DisconnectNamedPipe]
push ebx
mov ecx, esi
call fcn.0040f810
mov ecx, dword [esi + 0x283ec]
test ecx, ecx
je 0x40fd90
mov eax, dword [ecx]
push 0
push ebx
push esi
call dword [eax + 4]
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00429b0b
mov esp, ebp
pop ebp
ret 4
test eax, eax
je 0x40fdc9
mov dword [edi + 0x4038], 1
mov ecx, dword [esi + 0x283ec]
test ecx, ecx
je 0x40fd2e
mov eax, dword [ecx]
push 0
push ebx
push esi
call dword [eax]
push 0x2000
lea eax, [edi + 0x38]
push 0
push eax
call fcn.00459240
add esp, 0xc
lea eax, [edi + 0x30]
push edi
push eax
push 0x2000
lea eax, [edi + 0x38]
push eax
push dword [edi + 0x28]
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x40fd60
xor al, al
jmp 0x40fd6f
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x3e5
jne 0x40fda5
mov al, 1
mov byte [edi + 0x2c], al
test al, al
jne 0x40fd90
mov ecx, dword [esi + 0x283ec]
test ecx, ecx
je 0x40fd90
mov eax, dword [ecx]
lea edx, [edi + 0x38]
push 0
push dword [edi + 0x30]
push edx
push ebx
push esi
call dword [eax + 8]
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00429b0b
mov esp, ebp
pop ebp
ret 4
push dword [edi + 0x28]
call dword [sym.imp.KERNEL32.dll_DisconnectNamedPipe]
push ebx
mov ecx, esi
call fcn.0040f810
mov ecx, dword [esi + 0x283ec]
test ecx, ecx
je 0x40fdc9
mov eax, dword [ecx]
push 0
push ebx
push esi
call dword [eax + 4]
mov ecx, dword [ebp - 4]
xor al, al
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00429b0b
mov esp, ebp
pop ebp
ret 4
Function at 0x40fff0
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov eax, dword [0x4a6134]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [ebp + 8]
push esi
imul edx, ebx, 0x4058
mov esi, ecx
mov ecx, dword [ebp + 0xc]
add edx, esi
push edi
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], edx
lea eax, [edx + 0x14]
imul edi, ebx, 0x4058
push eax
lea eax, [ebp - 8]
push eax
push dword [ebp + 0x10]
push ecx
push dword [edx + 0x28]
call dword [sym.imp.KERNEL32.dll_WriteFile]
add edi, esi
test eax, eax
je 0x410042
xor al, al
jmp 0x410051
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x3e5
jne 0x41008e
mov al, 1
mov ecx, dword [ebp - 0xc]
mov byte [ecx + 0x2d], al
cmp byte [edi + 0x2d], 0
jne 0x410079
push dword [edi + 0x24]
call dword [sym.imp.KERNEL32.dll_ResetEvent]
mov ecx, dword [esi + 0x283ec]
test ecx, ecx
je 0x410079
mov eax, dword [ecx]
push 0
push ebx
push esi
call dword [eax + 0xc]
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00429b0b
mov esp, ebp
pop ebp
ret 0xc
push dword [edi + 0x28]
call dword [sym.imp.KERNEL32.dll_DisconnectNamedPipe]
push ebx
mov ecx, esi
call fcn.0040f810
test al, al
jne 0x410079
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00429b0b
mov esp, ebp
pop ebp
ret 0xc
Function at 0x425130
Capabilities:
Check mutex on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4832da
mov eax, dword fs:[0]
push eax
push ecx
push ebx
push esi
push edi
mov eax, dword [0x4a6134]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x10], esi
mov dword [esi], vtable.LogUtils::LogAppender.0
lea edi, [esi + 0x14]
mov dword [esi + 4], 0
mov dword [esi + 8], 0
mov byte [esi + 0xc], 1
mov dword [esi + 0x10], 0
call fcn.00401c40
mov ecx, eax
test ecx, ecx
je 0x4252f4
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [edi], eax
mov dword [ebp - 4], 0
lea ebx, [esi + 0x18]
call fcn.00401c40
mov ecx, eax
test ecx, ecx
je 0x4252fe
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebx], eax
mov byte [ebp - 4], 1
call fcn.00401c40
mov ecx, eax
test ecx, ecx
je 0x425308
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi + 0x1c], eax
mov dword [esi + 0x20], 0xffffffff
lea eax, [esi + 0x24]
push eax
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov dword [esi + 0x3c], 0
mov dword [esi + 0x40], 0
mov dword [esi + 0x44], 0
mov edx, dword [ebp + 8]
mov eax, dword [ebp + 0x10]
mov byte [ebp - 4], 5
mov dword [esi + 0x10], eax
test edx, edx
jne 0x425212
xor ecx, ecx
jmp 0x425230
mov ecx, edx
lea eax, [ecx + 2]
mov dword [ebp + 0x10], eax
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x425220
sub ecx, dword [ebp + 0x10]
sar ecx, 1
push ecx
push edx
mov ecx, edi
call fcn.00401fe0
push edi
mov ecx, ebx
call fcn.004014a0
mov edx, dword [ebp + 0xc]
test edx, edx
jne 0x42524c
xor ecx, ecx
jmp 0x425264
mov ecx, edx
lea eax, [ecx + 2]
mov dword [ebp + 0x10], eax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x425254
sub ecx, dword [ebp + 0x10]
sar ecx, 1
push ecx
push edx
lea ecx, [esi + 0x1c]
call fcn.00401fe0
push ebx
lea eax, [ebp + 0x10]
mov ecx, esi
push eax
call fcn.00425cd0
push eax
mov ecx, ebx
mov byte [ebp - 4], 6
call fcn.004014a0
mov edx, dword [ebp + 0x10]
or eax, 0xffffffff
mov byte [ebp - 4], 5
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4252a5
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebx]
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov dword [esi + 4], eax
test eax, eax
je 0x4252de
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
je 0x4252de
cmp dword [esi + 0x10], 0
je 0x4252d5
push dword [edi]
call fcn.00465c03
add esp, 4
push dword [esi + 4]
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push 0x80004005
call fcn.004017e0
push 0x80004005
call fcn.004017e0
push 0x80004005
call fcn.004017e0
int3
Function at 0x4259f0
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4833c8
mov eax, dword fs:[0]
push eax
sub esp, 0x40
mov eax, dword [0x4a6134]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov esi, dword [ebp + 8]
test esi, esi
je 0x425bc4
push str.__set_log_lev0
push esi
call dword [sym.imp.SHLWAPI.dll_StrStrIW]
test eax, eax
je 0x425a45
mov eax, dword [edi]
mov ecx, edi
push 0
call dword [eax + 4]
jmp 0x425bc4
push str.__set_log_lev1
push esi
call dword [sym.imp.SHLWAPI.dll_StrStrIW]
test eax, eax
je 0x425a63
mov eax, dword [edi]
mov ecx, edi
push 1
call dword [eax + 4]
jmp 0x425bc4
push str.__set_log_lev2
push esi
call dword [sym.imp.SHLWAPI.dll_StrStrIW]
test eax, eax
je 0x425a81
mov eax, dword [edi]
mov ecx, edi
push 2
call dword [eax + 4]
jmp 0x425bc4
push str.__set_log_lev3
push esi
call dword [sym.imp.SHLWAPI.dll_StrStrIW]
test eax, eax
je 0x425a9f
mov eax, dword [edi]
mov ecx, edi
push 3
call dword [eax + 4]
jmp 0x425bc4
push str.__reload_log_switch
push esi
call dword [sym.imp.SHLWAPI.dll_StrStrIW]
test eax, eax
je 0x425bc4
lea eax, [edi + 4]
mov dword [ebp - 0x34], eax
test eax, eax
je 0x425ac4
push eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea eax, [edi + 0x2c]
mov dword [edi + 0x1c], 3
cmp dword [eax + 0x14], 8
mov ecx, dword [eax + 0x10]
mov dword [ebp - 4], 0
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x30], ecx
jb 0x425af7
mov eax, dword [eax]
mov dword [ebp - 0x2c], eax
cmp ecx, 8
jae 0x425b0f
movups xmm0, xmmword [eax]
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x14], 7
movups xmmword [ebp - 0x28], xmm0
jmp 0x425b4d
mov esi, ecx
mov eax, 0x7ffffffe
or esi, 7
lea ecx, [ebp - 0x28]
cmp esi, eax
cmova esi, eax
lea eax, [esi + 1]
push eax
call fcn.00402f30
mov ecx, dword [ebp - 0x30]
mov dword [ebp - 0x28], eax
lea ecx, [ecx*2 + 2]
push ecx
push dword [ebp - 0x2c]
push eax
call fcn.00458740
mov eax, dword [ebp - 0x30]
add esp, 0xc
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], esi
push 0x48c10c
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 1
call fcn.00426780
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x425b7b
mov dword [edi + 0x1c], 0
cmp dword [edi + 0x28], 0
je 0x425bb4
mov eax, dword [edi]
mov ecx, edi
push 1
mov eax, dword [eax + 8]
call eax
test al, al
je 0x425bb4
push str._______log_reload_switch
lea ecx, [ebp - 0x4c]
call fcn.004248e2
mov ecx, dword [edi + 0x28]
lea edx, [ebp - 0x4c]
push edx
mov byte [ebp - 4], 2
mov eax, dword [ecx]
call dword [eax]
lea ecx, [ebp - 0x4c]
call fcn.00405580
lea ecx, [ebp - 0x28]
call fcn.00405580
lea ecx, [ebp - 0x34]
call fcn.004253c0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00429b0b
mov esp, ebp
pop ebp
ret 4
Function at 0x426040
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x483487
mov eax, dword fs:[0]
push eax
sub esp, 0x44
mov eax, dword [0x4a6134]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov ebx, dword [ebp + 8]
lea esi, [edi + 4]
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x34], esi
test esi, esi
je 0x42608a
push esi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov ecx, ebx
mov dword [ebp - 4], 0
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x426096
sub ecx, edx
sar ecx, 1
push ecx
push ebx
lea ecx, [edi + 0x2c]
call fcn.004030a0
cmp dword [edi + 0x28], 0
mov eax, dword [ebp + 0x18]
mov dword [edi + 0x44], eax
mov eax, dword [ebp + 0x14]
mov dword [edi + 0x24], eax
jne 0x426103
push 0x48
call fcn.00429b75
mov ebx, eax
add esp, 4
mov dword [ebp - 0x38], ebx
mov byte [ebp - 4], 1
test ebx, ebx
je 0x4260f7
push 0x48
push 0
push ebx
call fcn.00459240
add esp, 0xc
mov ecx, ebx
push dword [ebp + 0x14]
push dword [ebp - 0x30]
push dword [ebp - 0x2c]
call fcn.00425130
jmp 0x4260f9
xor eax, eax
mov ebx, dword [ebp - 0x2c]
mov byte [ebp - 4], 0
mov dword [edi + 0x28], eax
xor eax, eax
mov dword [ebp - 0x18], 0
cmp dword [ebp + 0x10], eax
mov ecx, ebx
mov dword [ebp - 0x14], 7
sete al
lea edx, [ecx + 2]
lea eax, [eax*2 + 1]
mov dword [edi + 0x1c], eax
xor eax, eax
mov word [ebp - 0x28], ax
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x426130
sub ecx, edx
sar ecx, 1
push ecx
push ebx
lea ecx, [ebp - 0x28]
call fcn.004030a0
push 3
push 0x48c10c
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 2
call fcn.0040bee0
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x42617f
mov eax, dword [ebp + 0x10]
mov dword [edi + 0x1c], 0
mov dword [edi + 0x20], eax
cmp dword [edi + 0x28], 0
je 0x4261ce
mov eax, dword [edi]
mov ecx, edi
push 1
mov eax, dword [eax + 8]
call eax
test al, al
je 0x4261ce
push 0x10
xor eax, eax
mov dword [ebp - 0x40], 0
push str._______log_start
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x3c], 7
mov word [ebp - 0x50], ax
call fcn.004030a0
mov ecx, dword [edi + 0x28]
lea edx, [ebp - 0x50]
push edx
mov byte [ebp - 4], 3
mov eax, dword [ecx]
call dword [eax]
lea ecx, [ebp - 0x50]
call fcn.00405580
mov edx, dword [ebp - 0x14]
cmp edx, 8
jb 0x426204
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4261fa
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x426241
push edx
push ecx
call fcn.00429855
add esp, 8
xor eax, eax
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
test esi, esi
je 0x426223
push esi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00429b0b
mov esp, ebp
pop ebp
ret 0x14
call fcn.0045c613
int3
Function at 0x427960
Capabilities:
Delete file
Download url
Receive data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x483703
mov eax, dword fs:[0]
push eax
sub esp, 0x420
mov eax, dword [0x4a6134]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov esi, dword [ebp + 8]
mov eax, dword [ebp + 0xc]
xor edi, edi
mov dword [ebp - 4], 0
test esi, esi
je 0x427a05
cmp word [esi], di
je 0x427a05
test eax, eax
je 0x4279c1
cmp word [eax], di
je 0x4279c1
push edi
push edi
push eax
push esi
push edi
call sub.urlmon.dll_URLDownloadToFileW
test eax, eax
js 0x427a05
jmp 0x427a00
push 0x410
lea eax, [ebp - 0x420]
push 0
push eax
call fcn.00459240
add esp, 0xc
lea eax, [ebp - 0x420]
push 0
push 0
push 0x104
push eax
push esi
push 0
call sub.urlmon.dll_URLDownloadToCacheFileW
test eax, eax
js 0x427a05
lea eax, [ebp - 0x420]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov edi, 1
mov ecx, dword [ebp + 0x34]
test ecx, ecx
je 0x427a6b
lea esi, [ebx + 0x38]
mov dword [ebp - method._BaseModule::CAutoLocker.virtual_0], vtable._BaseModule::CAutoLocker.0
mov dword [ebp - 0x428], esi
test esi, esi
je 0x427a2b
mov eax, dword [esi]
push esi
call dword [eax]
mov ecx, dword [ebp + 0x34]
mov byte [ebp - 4], 1
mov dword [ebp - 0x424], edi
test ecx, ecx
je 0x427a8b
mov eax, dword [ecx]
lea edx, [ebp - 0x424]
push edx
call dword [eax + 8]
mov byte [ebp - 4], 2
test esi, esi
je 0x427a53
mov eax, dword [esi]
push esi
call dword [eax + 4]
mov ecx, dword [ebp + 0x34]
test ecx, ecx
je 0x427a6b
mov edx, dword [ecx]
lea eax, [ebp + 0x10]
cmp ecx, eax
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00429b0b
mov esp, ebp
pop ebp
ret 0x30
call fcn.0041e21a
int3
Function at 0x42b8f0
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x483b1b
mov eax, dword fs:[0]
push eax
sub esp, 0xd0
push ebx
push esi
push edi
mov eax, dword [0x4a6134]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov edi, dword [ebp + 8]
lea esi, [ebx + 0x14]
push 0x20000
push 0
push esi
mov dword [ebp - 0x14], edi
call fcn.00459240
add esp, 0xc
lea eax, [ebx + 0x20014]
push 0
push eax
push 0x20000
push esi
push dword [ebx + 0x10]
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x42ba4b
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x10], eax
call fcn.00425f50
push 1
mov ecx, eax
mov edx, dword [eax]
mov edx, dword [edx + 8]
call edx
movzx ecx, al
sub ecx, 1
jne 0x42ba2d
push 0x61
mov dword [ebp - 0x34], ecx
mov byte [ebp - 0x44], cl
lea ecx, [ebp - 0x44]
push str.d:jenkins.jenkinsworkspacelib_commonlds_rpclds_rpc_src_rpc_instance_rpc_client_instance.cpp
mov dword [ebp - 0x30], 0xf
call fcn.00402fa0
push 3
push 0x4878e8
lea ecx, [ebp - 0x2c]
mov dword [ebp - 4], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00402fa0
mov byte [ebp - 4], 1
call fcn.00425f50
mov edi, eax
lea ecx, [ebp - 0xdc]
push 0x58
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00404c30
mov esi, eax
push str.RecvData_failed__error_code_:
push esi
mov byte [ebp - 4], 2
call fcn.004060c0
add esp, 8
mov ecx, esi
push dword [ebp - 0x10]
call fcn.00405f60
mov eax, dword [edi]
mov ecx, edi
push esi
call dword [eax + 0x1c]
lea ecx, [ebp - 0xdc]
call fcn.004063e0
lea ecx, [ebp - 0x2c]
call fcn.004028c0
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], 0xffffffff
call fcn.004028c0
mov edi, dword [ebp - 0x14]
lea esi, [ebx + 0x14]
cmp dword [ebp - 0x10], 0xe8
mov dword [ebx + 0xc], 6
jne 0x42ba4b
mov dword [ebx + 0xc], 7
mov dword [ebx + 0x10], 0
mov eax, dword [edi + 4]
lea ecx, [edi + 4]
push dword [ebp - 0x14]
mov dword [ecx + 4], eax
mov dword [edi + 0x10], 0
mov eax, dword [ebx + 0x20014]
add eax, esi
push eax
push esi
push dword [ecx + 4]
call fcn.004126f0
mov dword [edi + 0x10], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
Function at 0x42ba90
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x483b5b
mov eax, dword fs:[0]
push eax
sub esp, 0xd8
mov eax, dword [0x4a6134]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
cmp dword [ebx + 0x10], 0
mov edi, dword [ebp + 8]
jne 0x42bad5
mov dword [ebx + 0xc], 8
jmp 0x42bc42
mov eax, dword [edi + 8]
sub eax, dword [edi + 4]
inc eax
push eax
mov dword [ebp - 0x18], eax
call fcn.00429c5a
mov esi, eax
mov dword [ebp - 0x1c], eax
add esp, 4
test esi, esi
je 0x42bb04
push dword [ebp - 0x18]
push 0
push esi
call fcn.00459240
add esp, 0xc
mov byte [esi], 0
jmp 0x42bb09
xor esi, esi
mov dword [ebp - 0x1c], esi
mov ecx, dword [edi + 4]
mov eax, dword [edi + 8]
sub eax, ecx
mov dword [ebp - 0x14], 0
push eax
push ecx
push esi
call fcn.00458740
mov eax, dword [edi + 8]
lea ecx, [ebp - 0x14]
sub eax, dword [edi + 4]
add esp, 0xc
inc eax
push 0
push ecx
push eax
push esi
push dword [ebx + 0x10]
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x42bc30
mov dword [ebx + 0xc], 5
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x18], eax
call fcn.00425f50
push 1
mov ecx, eax
mov edx, dword [eax]
mov edx, dword [edx + 8]
call edx
movzx ecx, al
sub ecx, 1
jne 0x42bc17
push 0x61
mov dword [ebp - 0x3c], ecx
mov byte [ebp - 0x4c], cl
lea ecx, [ebp - 0x4c]
push str.d:jenkins.jenkinsworkspacelib_commonlds_rpclds_rpc_src_rpc_instance_rpc_client_instance.cpp
mov dword [ebp - 0x38], 0xf
call fcn.00402fa0
push 3
push 0x4878e8
lea ecx, [ebp - 0x34]
mov dword [ebp - 4], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0xf
mov byte [ebp - 0x34], 0
call fcn.00402fa0
mov byte [ebp - 4], 1
call fcn.00425f50
mov edi, eax
lea ecx, [ebp - 0xe4]
push 0x48
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x34]
push eax
call fcn.00404c30
mov esi, eax
push str.send_failed__error_code_:
push esi
mov byte [ebp - 4], 2
call fcn.004060c0
add esp, 8
mov ecx, esi
push dword [ebp - 0x18]
call fcn.00405f60
mov eax, dword [edi]
mov ecx, edi
push esi
call dword [eax + 0x1c]
lea ecx, [ebp - 0xe4]
call fcn.004063e0
lea ecx, [ebp - 0x34]
call fcn.004028c0
lea ecx, [ebp - 0x4c]
call fcn.004028c0
mov esi, dword [ebp - 0x1c]
cmp dword [ebp - 0x18], 0xe8
jne 0x42bc37
mov dword [ebx + 0xc], 7
mov dword [ebx + 0x10], 0
jmp 0x42bc37
mov dword [ebx + 0xc], 0
push 1
push esi
call fcn.00429855
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00429b0b
mov esp, ebp
pop ebp
ret 4
Function at 0x42bc60
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x483b98
mov eax, dword fs:[0]
push eax
sub esp, 0x20
mov eax, dword [0x4a6134]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov ecx, dword [ebp + 8]
mov edx, ecx
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
lea esi, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x42bca7
sub edx, esi
push edx
push ecx
lea ecx, [ebp - 0x2c]
call fcn.00402fa0
mov esi, dword [ebp - 0x1c]
inc esi
mov dword [ebp - 4], 0
push esi
call fcn.00429c5a
mov edi, eax
add esp, 4
test edi, edi
je 0x42bce5
push esi
push 0
push edi
call fcn.00459240
add esp, 0xc
mov byte [edi], 0
jmp 0x42bce7
xor edi, edi
cmp dword [ebp - 0x18], 0x10
lea eax, [ebp - 0x2c]
push dword [ebp - 0x1c]
mov esi, dword [ebp - 0x2c]
cmovae eax, esi
push eax
push edi
mov dword [ebx + 0x20054], edi
mov dword [ebp - 0x14], 0
call fcn.00458740
add esp, 0xc
lea eax, [ebx + 0x20040]
push eax
lea eax, [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x1c]
inc eax
push eax
push dword [ebx + 0x20054]
push dword [ebx + 0x10]
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x42bd55
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x6d
je 0x42bd43
cmp eax, 0xe8
jne 0x42bd55
mov dword [ebx + 0xc], 7
mov dword [ebx + 0x10], 0
xor bl, bl
jmp 0x42bd57
mov bl, 1
mov eax, dword [ebp - 0x18]
cmp eax, 0x10
jb 0x42bd86
lea ecx, [eax + 1]
mov eax, esi
cmp ecx, 0x1000
jb 0x42bd7c
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42bda6
push ecx
push esi
call fcn.00429855
add esp, 8
mov al, bl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00429b0b
mov esp, ebp
pop ebp
ret 4
call fcn.0045c613
int3