Function at 0x4208b0
Capabilities:
Read file on windows

Disassembly:
mov eax, dword [esp + 8]
sub esp, 0x60
push ebx
push ebp
xor ebp, ebp
cmp eax, ebp
mov ebx, ecx
je 0x420bfa
cmp dword [esp + 0x74], ebp
je 0x420bfa
mov edx, dword [ebx + 4]
push esi
mov esi, dword [sym.imp.kernel32.dll_ReadFile]
push ebp
lea eax, [esp + 0x1c]
push eax
push 0x40
lea ecx, [esp + 0x34]
push ecx
push edx
mov dword [esp + 0x2c], ebp
call esi
lea eax, [esp + 0x7c]
push eax
lea ecx, [esp + 0x2c]
push 0x40
push ecx
call fcn.00419aa0
mov eax, dword [esp + 0x24]
add esp, 0xc
cmp eax, 0x40
je 0x42093b
mov dword [esp + 0x20], 0x37f
push 0x530474
lea edx, [esp + 0x20]
push ebp
push edx
mov dword [esp + 0x28], 0x531a40
call fcn.0041ce50
add esp, 0xc
pop esi
pop ebp
mov eax, 0xa
pop ebx
add esp, 0x60
ret 0x10
mov edx, dword [ebx + 4]
push ebp
lea eax, [esp + 0x1c]
push eax
push 4
lea ecx, [esp + 0x20]
push ecx
push edx
mov dword [esp + 0x2c], ebp
call esi
lea eax, [esp + 0x7c]
push eax
lea ecx, [esp + 0x18]
push 4
push ecx
call fcn.00419aa0
mov eax, dword [esp + 0x24]
add esp, 0xc
cmp eax, 4
je 0x420979
mov dword [esp + 0x20], 0x388
jmp 0x420912
mov ecx, dword [esp + 0x74]
push edi
lea eax, [ebx + 0x90]
push eax
mov eax, dword [esp + 0x80]
lea edi, [ebx + 0x8c]
push edi
push eax
push ecx
call fcn.0041fc90
mov eax, dword [edi]
add esp, 0x10
cmp eax, ebp
mov dword [esp + 0x20], ebp
jbe 0x4209f1
mov ecx, dword [ebx + 4]
push ebp
lea edx, [esp + 0x20]
push edx
push 1
lea eax, [esp + 0x1f]
push eax
push ecx
mov dword [esp + 0x30], ebp
call esi
lea edx, [esp + 0x80]
push edx
lea eax, [esp + 0x17]
push 1
push eax
call fcn.00419aa0
mov eax, dword [esp + 0x28]
add esp, 0xc
cmp eax, 1
jne 0x420ad7
mov eax, dword [esp + 0x20]
mov ecx, dword [edi]
inc eax
cmp eax, ecx
mov dword [esp + 0x20], eax
jb 0x4209a7
mov eax, dword [esp + 0x18]
xor edi, edi
cmp eax, ebp
jbe 0x420a44
jmp 0x420a00
mov ecx, dword [ebx + 4]
push ebp
lea edx, [esp + 0x24]
push edx
push 4
lea eax, [esp + 0x34]
push eax
push ecx
mov dword [esp + 0x34], ebp
call esi
lea edx, [esp + 0x80]
push edx
lea eax, [esp + 0x2c]
push 4
push eax
call fcn.00419aa0
mov eax, dword [esp + 0x2c]
add esp, 0xc
cmp eax, 4
jne 0x420b09
mov eax, dword [esp + 0x18]
inc edi
cmp edi, eax
jb 0x420a00
mov eax, dword [ebx + 0x90]
xor edi, edi
cmp eax, ebp
jbe 0x420a96
mov ecx, dword [ebx + 4]
push ebp
lea edx, [esp + 0x24]
push edx
push 1
lea eax, [esp + 0x1f]
push eax
push ecx
mov dword [esp + 0x34], ebp
call esi
lea edx, [esp + 0x80]
push edx
lea eax, [esp + 0x17]
push 1
push eax
call fcn.00419aa0
mov eax, dword [esp + 0x2c]
add esp, 0xc
cmp eax, 1
jne 0x420b13
mov eax, dword [ebx + 0x90]
inc edi
cmp edi, eax
jb 0x420a50
mov ecx, dword [ebx + 4]
push ebp
lea edx, [esp + 0x24]
push edx
push 2
lea eax, [esp + 0x20]
push eax
push ecx
mov dword [esp + 0x34], ebp
call esi
lea edx, [esp + 0x80]
push edx
lea eax, [esp + 0x18]
push 2
push eax
call fcn.00419aa0
mov eax, dword [esp + 0x2c]
add esp, 0xc
cmp eax, 2
je 0x420b1d
mov dword [esp + 0x24], 0x3bb
jmp 0x420adf
mov dword [esp + 0x24], 0x399
push 0x530474
lea ecx, [esp + 0x24]
push ebp
push ecx
mov dword [esp + 0x2c], 0x531a40
call fcn.0041ce50
add esp, 0xc
pop edi
pop esi
pop ebp
mov eax, 0xa
pop ebx
add esp, 0x60
ret 0x10
mov dword [esp + 0x24], 0x3a5
jmp 0x420adf
mov dword [esp + 0x24], 0x3b1
jmp 0x420adf
cmp word [esp + 0x80], bp
je 0x420b59
push 0x530474
lea edx, [esp + 0x24]
push ebp
push edx
mov dword [esp + 0x2c], 0x531a40
mov dword [esp + 0x30], 0x3c2
call fcn.0041ce50
add esp, 0xc
pop edi
pop esi
pop ebp
mov eax, 7
pop ebx
add esp, 0x60
ret 0x10
mov eax, dword [esp + 0x74]
lea edi, [eax + 0xc]
mov ecx, 0x10
lea esi, [esp + 0x2c]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [esp + 0x18]
mov dword [eax + 8], ecx
lea eax, [ecx*4]
mov ecx, dword [ebx + 0x84]
push ecx
mov dword [ebx + 0x88], eax
call fcn.0051b80d
mov edx, dword [ebx + 0x88]
push edx
call fcn.0050c8ae
add esp, 8
cmp eax, ebp
mov dword [ebx + 0x84], eax
jne 0x420bd6
push 0x530474
lea eax, [esp + 0x24]
push ebp
push eax
mov dword [esp + 0x2c], 0x531a40
mov dword [esp + 0x30], 0x3d4
call fcn.0041ce50
add esp, 0xc
pop edi
pop esi
pop ebp
mov eax, 2
pop ebx
add esp, 0x60
ret 0x10
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x7c]
push ecx
mov ecx, dword [esp + 0x7c]
push edx
push ecx
push eax
call fcn.0041fd60
add esp, 0x10
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x60
ret 0x10
push 0x530474
lea edx, [esp + 0x1c]
push ebp
push edx
mov dword [esp + 0x24], 0x531a40
mov dword [esp + 0x28], 0x376
call fcn.0041ce50
add esp, 0xc
pop ebp
mov eax, 0x1c
pop ebx
add esp, 0x60
ret 0x10