Function at 0x414230
Capabilities:
Resolve function by parsing pe exports
Write file on windows

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x9c
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0xb4]
mov dword [esp + 0x70], edx
mov edx, dword [esp + 0xb8]
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x6c], edx
mov edx, dword [esp + 0xc0]
mov dword [esp + 0x54], ecx
mov ebp, dword [esp + 0xb0]
mov dword [esp + 0x7c], edx
or edx, eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x74], edx
jmp 0x4142c0
mov esi, dword [esp + 0x8c]
test esi, esi
je 0x414411
mov ecx, dword [esp + 0x54]
xor edi, edi
sub ebp, esi
add dword [esp + 0x40], esi
adc dword [esp + 0x44], edi
test ecx, ecx
je 0x414411
test ebp, ebp
je 0x414411
mov ebx, dword [esp + 0x74]
mov dword [esp + 0x48], 0
mov dword [esp + 0x4c], 0
test ebx, ebx
je 0x4142f0
mov esi, dword [esp + 0x78]
mov edi, dword [esp + 0x7c]
sub esi, dword [esp + 0x40]
sbb edi, dword [esp + 0x44]
mov dword [esp + 0x48], esi
mov dword [esp + 0x4c], edi
mov ebx, dword [esp + 0x50]
mov ecx, dword [esp + 0x68]
mov eax, dword [ebx + 0x10]
mov edx, dword [ebx + 0x14]
mov dword [esp + 0x38], eax
mov eax, dword [ebx + 8]
mov dword [esp + 0x3c], edx
mov edx, dword [ebx + 0xc]
mov ebx, dword [esp + 0x6c]
add ecx, eax
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], edx
mov eax, dword [esp + 0x38]
adc ebx, edx
mov edx, dword [esp + 0x3c]
add ecx, dword [esp + 0x40]
adc ebx, dword [esp + 0x44]
mov esi, ecx
mov dword [esp + 0x58], ecx
mov edi, ebx
mov dword [esp + 0x5c], ebx
mov ebx, edx
or ebx, eax
je 0x414380
xor ebx, ebx
mov eax, ebp
mov edx, ebx
add eax, esi
adc edx, edi
mov ebx, edx
or ebx, eax
je 0x414380
mov ecx, dword [esp + 0x38]
mov ebx, dword [esp + 0x3c]
add ecx, dword [esp + 0x60]
adc ebx, dword [esp + 0x64]
mov edi, ebx
cmp ecx, eax
mov ecx, eax
sbb edi, edx
jae 0x414380
mov eax, dword [esp + 0x60]
add eax, dword [esp + 0x38]
add eax, ebp
sub eax, ecx
mov ebp, eax
lea esi, [esi]
lea edi, [edi]
mov eax, dword [esp + 0x50]
mov ebx, dword [esp + 0x54]
mov eax, dword [eax]
mov edx, dword [eax]
mov ecx, dword [edx + 0x10]
xor edx, edx
test ebx, ebx
je 0x41439b
mov edx, dword [esp + 0x40]
add edx, ebx
mov edi, dword [esp + 0x4c]
mov esi, dword [esp + 0x48]
lea ebx, [esp + 0x8c]
mov dword [esp + 0xc], ebp
mov dword [esp + 0x24], ebx
mov ebx, dword [esp + 0xc4]
mov dword [esp + 0x1c], edi
mov edi, dword [esp + 0x5c]
mov dword [esp + 0x18], esi
mov esi, dword [esp + 0x58]
mov dword [esp + 0x14], edi
mov edi, dword [esp + 0x70]
mov dword [esp + 0x20], ebx
mov dword [esp + 4], edi
mov dword [esp + 0x10], esi
mov dword [esp + 8], edx
mov dword [esp], eax
call ecx
mov edi, edx
or edi, eax
je 0x414291
mov edi, dword [esp + 0x44]
mov esi, dword [esp + 0x40]
mov ecx, edx
mov ebx, eax
mov edx, edi
or edx, esi
jne 0x414445
add esp, 0x9c
mov eax, ebx
mov edx, ecx
pop ebx
pop esi
pop edi
pop ebp
ret
mov ebx, eax
mov eax, dword [esp + 0xc8]
mov ecx, edx
test eax, eax
jne 0x4144fc
test ebp, ebp
mov eax, 4
cmovne ebx, eax
mov eax, 1
cmovne ecx, eax
add esp, 0x9c
mov eax, ebx
pop ebx
pop esi
mov edx, ecx
pop edi
pop ebp
ret
cmp dword [esp + 0xc8], 0
je 0x414402
mov dword [esp + 4], ecx
mov dword [esp], ebx
call fcn.0041d490
mov edi, dword [esp + 0x50]
mov edx, dword [esp + 0x6c]
mov esi, eax
mov eax, dword [esp + 0x68]
add eax, dword [edi + 8]
adc edx, dword [edi + 0xc]
mov dword [esp], 2
add eax, dword [esp + 0x40]
adc edx, dword [esp + 0x44]
mov dword [esp + 0x3c], edx
mov edi, dword [fcn.004a1b90]
mov dword [esp + 0x38], eax
call edi
mov dword [esp + 0x1c], esi
mov esi, dword [esp + 0x3c]
mov dword [esp + 0x18], ebx
mov ebx, dword [esp + 0x38]
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], ebp
mov dword [esp + 8], 0x4aa880
mov dword [esp + 4], str.__s__Error_while_reading__Iu_bytes_from_offset__I64u:__lu___s_
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], 2
call edi
mov dword [esp + 8], 2
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], 0x4aa8c7
call sub.msvcrt.dll_fwrite
mov dword [esp], 2
call edi
mov dword [esp], eax
call sub.msvcrt.dll_fflush
mov eax, dword [esp + 0xc8]
mov edi, dword [esp + 0x40]
xor ebx, ebx
xor ecx, ecx
mov edx, ecx
mov dword [eax], edi
add esp, 0x9c
mov eax, ebx
pop ebx
pop esi
pop edi
pop ebp
ret