Function at 0x416130
Capabilities:
Read file on windows
Write file on windows

Disassembly:
push ebp
push edi
push esi
push ebx
mov ebx, eax
sub esp, 0x44c
mov dword [esp + 0x24], edx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x38], 0
call fcn.00498e90
mov ecx, eax
mov dword [esp + 0x20], eax
lea eax, [esp + 0x38]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00451840
cmp eax, 0xffffffff
je 0x416345
mov dword [esp], ebx
mov esi, eax
call fcn.004949d0
mov eax, dword [ebx + 8]
test eax, eax
je 0x416210
xor ebp, ebp
lea edi, [esp + 0x40]
jmp 0x41619b
add ebp, dword [esp + 0x40]
mov eax, dword [ebx + 8]
cmp eax, ebp
jbe 0x416210
sub eax, ebp
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], edi
mov dword [esp + 8], eax
mov eax, dword [ebx]
mov dword [esp], esi
add eax, ebp
mov dword [esp + 4], eax
call dword [sym.imp.KERNEL32.dll_WriteFile]
sub esp, 0x14
test eax, eax
jne 0x416190
mov eax, dword [esp + 0x24]
mov dword [eax], 0
mov eax, dword [esp + 0x28]
mov dword [eax], 0
mov eax, dword [esp + 0x38]
xor ebx, ebx
mov dword [esp], eax
call fcn.00493420
mov eax, dword [esp + 0x20]
mov dword [esp], eax
call fcn.00493420
mov dword [esp], esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
add esp, 0x44c
mov eax, ebx
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [esp + 0x460]
test eax, eax
je 0x4162a0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x14
mov dword [esp], 1
call fcn.00493390
mov dword [esp], esi
mov ebx, eax
mov dword [esp + 0xc], 0
mov dword [esp + 8], eax
mov dword [esp + 4], 0x416770
call fcn.00452aa0
mov dword [ebx + 4], esi
mov dword [ebx], eax
call fcn.00494930
mov dword [ebx + 8], eax
mov eax, dword [esp + 0x460]
mov dword [ebx + 0xc], eax
mov eax, dword [esp + 0x464]
mov dword [ebx + 0x10], eax
mov eax, dword [esp + 0x38]
mov dword [esp], eax
call fcn.00493420
mov eax, dword [esp + 0x20]
mov dword [esp], eax
call fcn.00493420
add esp, 0x44c
mov eax, ebx
pop ebx
pop esi
pop edi
pop ebp
ret
call fcn.00494930
lea edi, [esp + 0x40]
mov ebx, eax
lea ebp, [esp + 0x3c]
jmp 0x4162c6
mov ecx, dword [esp + 0x3c]
mov edx, edi
mov eax, ebx
call fcn.004160e0
test eax, eax
jne 0x416380
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], ebp
mov dword [esp + 8], 0x400
mov dword [esp + 4], edi
mov dword [esp], esi
call dword [sym.imp.KERNEL32.dll_ReadFile]
sub esp, 0x14
test eax, eax
jne 0x4162b1
mov eax, dword [esp + 0x24]
mov dword [eax], 0
mov eax, dword [esp + 0x28]
mov dword [eax], 0
mov eax, dword [esp + 0x38]
mov dword [esp], eax
call fcn.00493420
mov eax, dword [esp + 0x20]
mov dword [esp], eax
call fcn.00493420
mov dword [esp], esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
test ebx, ebx
je 0x4161ff
mov dword [esp], ebx
xor ebx, ebx
call fcn.00494940
add esp, 0x44c
mov eax, ebx
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [esp + 0x24]
xor ebx, ebx
mov dword [eax], 0
mov eax, dword [esp + 0x28]
mov dword [eax], 0
mov eax, dword [esp + 0x38]
mov dword [esp], eax
call fcn.00493420
mov eax, dword [esp + 0x20]
mov dword [esp], eax
call fcn.00493420
jmp 0x4161ff
cmp eax, 0xffffffff
mov dword [esp + 0x2c], eax
je 0x4162ee
mov dword [esp], ebx
call fcn.00494980
mov edx, dword [esp + 0x24]
mov dword [edx], eax
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
mov dword [eax], edx
jmp 0x4161d9