Function at 0x4076f0
Capabilities:
Read file on windows

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x5c
mov ecx, dword [0x44e834]
mov eax, dword [esp + 0x74]
lea ebx, [esp + 0x40]
xor ecx, esp
mov dword [esp + 0x58], ecx
mov dword [esp + 0xc], ebx
mov ecx, dword [esp + 0xc]
mov esi, dword [eax]
mov dword [esp + 0x40], 0
mov dword [esp + 0x54], 0xf
mov dword [esp + 0x50], 0
push esi
call fcn.0042c7e0
add esp, 4
mov dword [esp + 0x30], ebx
mov edi, eax
mov ebp, 0x83b3a62
mov eax, dword [esp + 0x30]
mov eax, dword [eax + 0x14]
mov dword [esp + 0x34], eax
mov eax, 0x8cd14ad3
nop word cs:[eax + eax]
nop dword [eax + eax]
cmp eax, 0x28a28974
jg 0x4077c0
cmp eax, 0x8cd14ad3
je 0x407792
cmp eax, 0x9c17cc32
jne 0x407760
sub esp, 0xc
mov al, byte [esp + 0x38]
lea ecx, [esp + 0x4c]
mov byte [esp + 4], al
mov dword [esp + 8], esi
mov dword [esp], edi
call fcn.00407e00
jmp 0x4077ae
mov eax, dword [esp + 0x34]
mov ecx, 0x9c17cc32
cmp eax, edi
mov eax, 0x7a5e602b
cmovb eax, ecx
cmp eax, 0x28a28974
jle 0x407767
jmp 0x4077c0
mov eax, 0x28a28975
cmp eax, 0x28a28974
jle 0x407767
nop word [eax + eax]
cmp eax, 0x28a28975
je 0x407850
cmp eax, 0x7a5e602b
jne 0x407760
mov eax, dword [esp + 0x30]
mov dword [esp + 0x38], eax
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x3c], ecx
mov ecx, 0xd7565d3
nop word [eax + eax]
cmp ecx, 0xa3eced73
je 0x407835
cmp ecx, 0x83b3a62
je 0x407822
cmp ecx, 0xd7565d3
jne 0x4077f0
cmp dword [eax + 0x14], 0xf
mov ebx, dword [esp + 0x3c]
mov ecx, 0xa3eced73
cmova ecx, ebp
cmp ecx, 0xa3eced73
jne 0x4077f8
jmp 0x407835
mov ecx, dword [esp + 0x38]
mov ebx, dword [ecx]
mov ecx, 0xa3eced73
cmp ecx, 0xa3eced73
jne 0x4077f8
mov eax, dword [esp + 0x30]
mov dword [eax + 0x10], edi
push edi
push esi
push ebx
call fcn.00423cf0
add esp, 0xc
mov byte [ebx + edi], 0
jmp 0x4077ae
lea eax, [esp + 0x40]
mov ecx, 0xad7ba9ae
mov edx, 0xb9d39158
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x38]
cmp dword [esp + 0x54], 0xf
mov dword [esp + 0x3c], eax
mov eax, 0xdcf4a5de
cmova eax, ecx
nop word [eax + eax]
cmp edx, 0xad7ba9ae
je 0x4078a6
cmp edx, 0xdcf4a5de
je 0x4078bb
cmp edx, 0xb9d39158
jne 0x407880
mov ecx, dword [esp + 0x3c]
mov edx, eax
cmp edx, 0xad7ba9ae
jne 0x407888
mov ecx, dword [esp + 0x38]
mov edx, 0xdcf4a5de
mov ecx, dword [ecx]
cmp edx, 0xad7ba9ae
jne 0x407888
jmp 0x4078a6
push 0x448b3e
push ecx
call fcn.0042b036
add esp, 8
mov dword [esp + 0x10], eax
mov eax, 0x1b74c798
cmp eax, 0x32cd0322
jg 0x40791b
jmp 0x407a40
push str..bss
push dword [esp + 0x2c]
call fcn.0042c700
add esp, 8
mov esi, dword [esp + 0x24]
mov edx, dword [esp + 0x20]
test eax, eax
mov eax, 0xd6281399
mov ecx, 0x1bdb28b6
cmove eax, ecx
mov dword [esp + 8], edx
nop word [eax + eax]
cmp eax, 0x32cd0322
jle 0x407a40
cmp eax, 0x3f889bb9
jle 0x407950
cmp eax, 0x62a05af2
je 0x4079ff
cmp eax, 0x6ab22bfc
je 0x407ad1
cmp eax, 0x3f889bba
jne 0x407910
jmp 0x407bad
cmp eax, 0x32cd0323
je 0x407aed
cmp eax, 0x3f3cef57
jne 0x407910
push 2
push 0
push dword [esp + 0x18]
call fcn.00429ca4
add esp, 0xc
push dword [esp + 0x10]
call fcn.0042b6fd
add esp, 4
mov ebx, eax
push dword [esp + 0x10]
call fcn.0042a9ce
add esp, 4
lea eax, [esp + 0x40]
mov ecx, 0xad7ba9ae
mov edx, 0xb9d39158
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x38]
cmp dword [esp + 0x54], 0xf
mov dword [esp + 0x3c], eax
mov eax, 0xdcf4a5de
cmova eax, ecx
nop word cs:[eax + eax]
nop dword [eax]
cmp edx, 0xad7ba9ae
je 0x4079ea
cmp edx, 0xdcf4a5de
je 0x407b19
cmp edx, 0xb9d39158
jne 0x4079c0
mov ecx, dword [esp + 0x3c]
mov edx, eax
cmp edx, 0xad7ba9ae
jne 0x4079c8
mov ecx, dword [esp + 0x38]
mov edx, 0xdcf4a5de
mov ecx, dword [ecx]
cmp edx, 0xad7ba9ae
jne 0x4079c8
jmp 0x4079ea
mov eax, dword [esp + 4]
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x24], edi
mov dword [esp + 0x28], ebx
mov edx, 0x9f2b139f
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
cmp ecx, eax
mov eax, 0x32cd0323
cmovl eax, edx
cmp eax, 0x32cd0322
jg 0x40791b
nop word cs:[eax + eax]
nop
cmp eax, 0x1b74c797
jg 0x407a90
cmp eax, 0x9f2b139f
je 0x4078de
cmp eax, 0xd6281399
jne 0x407910
mov ebx, dword [esp + 0x28]
mov ebp, dword [esp + 0x1c]
mov ecx, dword [esp + 8]
mov eax, 0x62a05af2
mov edi, esi
add ebx, 0x28
inc ebp
mov dword [esp + 4], ecx
cmp eax, 0x32cd0322
jg 0x40791b
jmp 0x407a40
cmp eax, 0x1b74c798
je 0x407b8b
cmp eax, 0x1bdb28b6
jne 0x407910
mov eax, dword [esp + 0x28]
mov esi, dword [eax + 0x14]
add esi, dword [esp + 0x14]
mov eax, dword [esp + 0x28]
mov eax, dword [eax + 0x10]
mov dword [esp + 8], eax
mov eax, 0xd6281399
cmp eax, 0x32cd0322
jg 0x40791b
jmp 0x407a40
mov eax, 0x3f889bba
mov dword [esp], 0xffffffff
cmp eax, 0x32cd0322
jg 0x40791b
jmp 0x407a40
push dword [esp + 0x20]
push dword [esp + 0x28]
call fcn.00406390
add esp, 8
mov eax, 0x3f889bba
mov dword [esp], 0
cmp eax, 0x32cd0322
jg 0x40791b
jmp 0x407a40
push 0x448b3e
push ecx
call fcn.0042b036
add esp, 8
mov ebp, eax
push ebx
call fcn.0042c25c
add esp, 4
mov dword [esp + 0x14], eax
push ebp
push ebx
push 1
push dword [esp + 0x20]
call fcn.0042b3b7
add esp, 0x10
push ebp
call fcn.0042a9ce
add esp, 4
mov eax, dword [esp + 0x14]
xor ebp, ebp
xor edi, edi
mov eax, dword [eax + 0x3c]
mov ecx, dword [esp + 0x14]
mov dword [esp + 4], 0
movzx edx, word [ecx + eax + 6]
lea ebx, [ecx + eax + 0xf8]
mov eax, 0x62a05af2
mov dword [esp + 0x18], edx
cmp eax, 0x32cd0322
jg 0x40791b
jmp 0x407a40
cmp dword [esp + 0x10], 0
mov eax, 0x3f3cef57
mov ecx, 0x6ab22bfc
cmove eax, ecx
cmp eax, 0x32cd0322
jg 0x40791b
jmp 0x407a40
lea ecx, [esp + 0x40]
call fcn.00407c00
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x58]
xor ecx, esp
call fcn.0041e74b
mov eax, dword [esp]
add esp, 0x5c
pop esi
pop edi
pop ebx
pop ebp
ret