Function at 0x43dce0
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x524
mov eax, dword [0x4b1570]
xor eax, ebp
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x524], ecx
mov dword [ebp - 4], 0
mov dword [ebp - 0xc], 0
mov byte [ebp - 0x118], 0
xor eax, eax
mov dword [ebp - 0x117], eax
mov dword [ebp - 0x113], eax
mov dword [ebp - 0x10f], eax
mov dword [ebp - 0x10b], eax
mov dword [ebp - 0x107], eax
mov dword [ebp - 0x103], eax
mov dword [ebp - 0xff], eax
mov word [ebp - 0xfb], ax
mov byte [ebp - 0xf9], al
push pe_nt_image_headers32
push 0
lea ecx, [ebp - 0xf8]
push ecx
call fcn.00460350
add esp, 0xc
mov byte [ebp - 0x520], 0
push 0x3ff
push 0
lea edx, [ebp - 0x51f]
push edx
call fcn.00460350
add esp, 0xc
push 0x480544
mov eax, dword [ebp + 0xc]
push eax
call fcn.00460930
add esp, 8
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x43dd9b
xor eax, eax
jmp 0x43e015
mov ecx, dword [ebp - 0x10]
push ecx
push 0x400
push 1
lea edx, [ebp - 0x520]
push edx
call fcn.004637db
add esp, 0x10
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 1
jge 0x43ddd1
mov eax, dword [ebp - 0x10]
push eax
call fcn.004607f0
add esp, 4
xor eax, eax
jmp 0x43e015
mov ecx, dword [ebp + 8]
push ecx
call fcn.0041e690
add esp, 4
test eax, eax
je 0x43de2e
lea edx, [ebp - 0x518]
mov dword [ebp - 0x11c], edx
mov eax, dword [ebp - 0x11c]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0x11c]
movzx eax, byte [edx + 1]
shl eax, 8
add ecx, eax
mov edx, dword [ebp - 0x11c]
movzx eax, byte [edx + 2]
shl eax, 0x10
add ecx, eax
mov dword [ebp - 4], ecx
mov ecx, dword [ebp - 4]
shl ecx, 2
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 4]
add edx, 0x10
mov dword [ebp - 4], edx
jmp 0x43df78
push 0x480d58
mov eax, dword [ebp + 8]
push eax
call fcn.00460f30
add esp, 8
test eax, eax
jne 0x43deb6
lea ecx, [ebp - 0x410]
mov dword [ebp - 0x11c], ecx
mov edx, dword [ebp - 0x11c]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0x11c]
movzx edx, byte [ecx + 1]
shl edx, 8
add eax, edx
mov ecx, dword [ebp - 0x11c]
movzx edx, byte [ecx + 2]
shl edx, 0x10
add eax, edx
mov ecx, dword [ebp - 0x11c]
movzx edx, byte [ecx + 3]
shl edx, 0x18
add eax, edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
and eax, 0x3ffffff
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 4]
shl ecx, 2
mov dword [ebp - 4], ecx
cmp dword [ebp - 4], 0x100000
jb 0x43deb1
mov edx, dword [ebp - 4]
sub edx, 0x100000
mov dword [ebp - 4], edx
jmp 0x43df78
push str.MT30
mov eax, dword [ebp + 8]
push eax
call fcn.00460f30
add esp, 8
test eax, eax
je 0x43df0a
push str.D300
mov ecx, dword [ebp + 8]
push ecx
call fcn.00460f30
add esp, 8
test eax, eax
je 0x43df0a
push str.D200
mov edx, dword [ebp + 8]
push edx
call fcn.00460f30
add esp, 8
test eax, eax
je 0x43df0a
push str.D210
mov eax, dword [ebp + 8]
push eax
call fcn.00460f30
add esp, 8
test eax, eax
jne 0x43df78
lea ecx, [ebp - 0x410]
mov dword [ebp - 0x11c], ecx
mov edx, dword [ebp - 0x11c]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0x11c]
movzx edx, byte [ecx + 1]
shl edx, 8
add eax, edx
mov ecx, dword [ebp - 0x11c]
movzx edx, byte [ecx + 2]
shl edx, 0x10
add eax, edx
mov ecx, dword [ebp - 0x11c]
movzx edx, byte [ecx + 3]
shl edx, 0x18
add eax, edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
and eax, 0x3ffffff
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 4]
shl ecx, 2
mov dword [ebp - 4], ecx
cmp dword [ebp - 4], 0x1000000
jb 0x43df78
mov edx, dword [ebp - 4]
sub edx, 0x1000000
mov dword [ebp - 4], edx
cmp dword [ebp - 4], 0
jne 0x43df91
mov eax, dword [ebp - 0x10]
push eax
call fcn.004607f0
add esp, 4
xor eax, eax
jmp 0x43e015
push 0
mov ecx, dword [ebp - 4]
push ecx
mov edx, dword [ebp - 0x10]
push edx
call fcn.00463a83
add esp, 0xc
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x43dfbc
mov eax, dword [ebp - 0x10]
push eax
call fcn.004607f0
add esp, 4
xor eax, eax
jmp 0x43e015
mov ecx, dword [ebp - 0x10]
push ecx
push 1
push 0x100
lea edx, [ebp - 0x118]
push edx
call fcn.004637db
add esp, 0x10
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 1
jge 0x43dfef
mov eax, dword [ebp - 0x10]
push eax
call fcn.004607f0
add esp, 4
xor eax, eax
jmp 0x43e015
push 0x20
lea ecx, [ebp - 0x118]
push ecx
mov edx, dword [ebp + 0x10]
push edx
call fcn.00460a90
add esp, 0xc
mov eax, dword [ebp - 0x10]
push eax
call fcn.004607f0
add esp, 4
mov eax, 1
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00460142
mov esp, ebp
pop ebp
ret 0xc