Function at 0x4064f0
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x2c
mov edi, dword [ebp + 0x10]
mov ebx, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
mov dword [ebp - 0x2c], 0x8c15cb6f
jmp 0x406510
mov dword [ebp - 0x2c], ecx
nop
nop
mov eax, dword [ebp - 0x2c]
cmp eax, 0x7e028957
jg 0x4065b0
cmp eax, 0x78bc5075
jg 0x406610
cmp eax, 0x7660521b
jg 0x40664e
cmp eax, 0x6f516941
jg 0x406665
cmp eax, 0x699aacd8
jg 0x4066b3
cmp eax, 0x60e4f3cb
jg 0x4066fd
cmp eax, 0x5d32719e
jg 0x40671e
cmp eax, 0x8431a646
jg 0x40676a
cmp eax, 0x829a7e51
jne 0x406510
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
mov eax, dword [eax]
not eax
mov ecx, dword [ebp - 0x18]
mov ecx, dword [ecx]
sub esp, 0xc
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 1
call fcn.00417437
add esp, 0xc
test eax, eax
mov eax, 0x525a8d44
jne 0x4065a8
mov eax, 0x60e4f3cc
mov dword [ebp - 0x2c], eax
jmp 0x406510
cmp eax, 0x7e028958
jne 0x406510
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ecx]
mov ecx, dword [ecx]
mov edx, dword [ebp - 0x14]
mov edx, dword [edx]
sub esp, 0x10
mov dword [esp + 0xc], eax
mov dword [esp + 8], ecx
mov dword [esp], edx
mov dword [esp + 4], 1
call fcn.00417679
add esp, 0x10
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ecx]
mov ecx, 0xe91f41c6
cmp eax, dword [edx]
jne 0x40650b
mov ecx, 0x829a7e51
jmp 0x40650b
cmp eax, 0x78bc5076
jne 0x406510
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
mov eax, dword [eax]
sub esp, 8
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.004172eb
add esp, 8
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ecx]
mov dword [ecx], eax
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x2c], 0x277c3ec4
jmp 0x406510
cmp eax, 0x7660521c
jne 0x406510
mov dword [ebp - 0x2c], 0xb9480bbc
jmp 0x406510
cmp eax, 0x6f516942
jne 0x406510
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x24]
mov ecx, dword [ecx]
sub esp, 0x10
mov dword [esp + 0xc], eax
mov dword [esp], ecx
mov dword [esp + 8], 1
mov dword [esp + 4], 1
call fcn.00417679
add esp, 0x10
cmp eax, 1
mov eax, 0xdc2c1366
jne 0x4066ab
mov eax, 0x4007379f
mov dword [ebp - 0x2c], eax
jmp 0x406510
cmp eax, 0x699aacd9
jne 0x406510
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ecx]
sub esp, 0x10
mov dword [esp + 0xc], eax
mov dword [esp], ecx
mov dword [esp + 8], 4
mov dword [esp + 4], 1
call fcn.00417679
add esp, 0x10
cmp eax, 4
setne byte [ebp - 0xd]
mov dword [ebp - 0x2c], 0xf0351c60
jmp 0x406510
cmp eax, 0x60e4f3cc
jne 0x406510
mov eax, dword [ebp - 0x14]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x28]
mov dword [ecx], eax
mov dword [ebp - 0x2c], 0xf2366207
jmp 0x406510
cmp eax, 0x5d32719f
jne 0x406510
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
mov ecx, 0xfffffffc
sub ecx, dword [eax]
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
sub esp, 0xc
mov dword [esp + 4], ecx
mov dword [esp], eax
mov dword [esp + 8], 1
call fcn.00417437
add esp, 0xc
test eax, eax
mov eax, 0xeaf92d73
jne 0x406762
mov eax, 0x7e028958
mov dword [ebp - 0x2c], eax
jmp 0x406510
cmp eax, 0x8ad93857
jg 0x406796
cmp eax, 0x8431a647
jne 0x406510
mov ecx, dword [ebp - 0x14]
mov eax, 0xc10b0a78
cmp dword [ecx], 0
jne 0x40678e
mov eax, 0xfca9ede5
mov dword [ebp - 0x2c], eax
jmp 0x406510
cmp eax, 0x8c15cb6e
jg 0x4067c9
cmp eax, 0x8ad93858
jne 0x406510
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.00417287
add esp, 4
mov dword [ebp - 0x2c], 0x51607a66
jmp 0x406510
cmp eax, 0x8fa74f32
jg 0x4067e7
cmp eax, 0x8c15cb6f
jne 0x406510
mov dword [ebp - 0x2c], 0x3346337c
jmp 0x406510
cmp eax, 0x5b3a2a00
jg 0x4069d7
cmp eax, 0x5a9f1f66
jg 0x4069fb
cmp eax, 0x5753014e
jg 0x406a47
cmp eax, 0x56b5d46c
jg 0x406a5e
cmp eax, 0x54d0575e
jg 0x406a75
cmp eax, 0x52ae00d2
jg 0x406a9c
cmp eax, 0x525a8d43
jg 0x406ab3
cmp eax, 0x51607a65
jg 0x406aca
cmp eax, 0x4953b30b
jg 0x406af6
cmp eax, 0x46d23999
jg 0x406b0d
cmp eax, 0x442e312a
jg 0x406b86
cmp eax, 0x42f5c62f
jg 0x406bd1
cmp eax, 0x4007379e
jg 0x406be8
cmp eax, 0x36934d6d
jg 0x406bff
cmp eax, 0x33e4ec60
jg 0x406c29
cmp eax, 0x3346337b
jg 0x406c40
cmp eax, 0x32ddbcb4
jg 0x406cc5
cmp eax, 0x2a136b3f
jg 0x406cdc
cmp eax, 0x295ed53f
jg 0x406cf3
cmp eax, 0x277c3ec3
jg 0x406d0a
cmp eax, 0x23152605
jg 0x406d51
cmp eax, 0x1e0832b4
jg 0x406d68
cmp eax, 0x1a85aa3d
jg 0x406d7f
cmp eax, 0xfca9ede4
jg 0x406d96
cmp eax, 0xfbe28608
jg 0x406db6
cmp eax, 0xf2366206
jg 0x406dcd
cmp eax, 0xf0351c5f
jg 0x406ddd
cmp eax, 0xec4b9e96
jg 0x406e01
cmp eax, 0xebe1ed3e
jg 0x406e18
cmp eax, 0xeaf92d72
jg 0x406e2f
cmp eax, 0xe91f41c5
jg 0x406e46
cmp eax, 0xe584ca82
jg 0x406e5d
cmp eax, 0xe0ffbd83
jg 0x406e87
cmp eax, 0xe0ac38cd
jg 0x406e9e
cmp eax, 0xdcb51bf0
jg 0x406eb5
cmp eax, 0xdc2c1365
jg 0x406ed9
cmp eax, 0xc4004bdd
jg 0x406ef0
cmp eax, 0xc3356e3b
jg 0x406f3c
cmp eax, 0xc2d07142
jg 0x406f7f
cmp eax, 0xc10b0a77
jg 0x406fbf
cmp eax, 0xbc8d5e84
jg 0x406fd6
cmp eax, 0xba6b0675
jg 0x406fed
cmp eax, 0x8fae6d51
jg 0x407034
cmp eax, 0x8fa74f33
jne 0x406510
mov dword [ebp - 0x2c], 0x54d0575f
jmp 0x406510
cmp eax, 0x5b3a2a01
jne 0x406510
mov al, byte [ebp - 0x10]
test al, al
mov eax, 0x8fa74f33
jne 0x4069f3
mov eax, 0x2a136b40
mov dword [ebp - 0x2c], eax
jmp 0x406510
cmp eax, 0x5a9f1f67
jne 0x406510
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
mov ecx, 1
sub ecx, dword [eax]
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
sub esp, 0xc
mov dword [esp + 4], ecx
mov dword [esp], eax
mov dword [esp + 8], 1
call fcn.00417437
add esp, 0xc
test eax, eax
mov eax, 0xbc8d5e85
jne 0x406a3f
mov eax, 0x8fae6d52
mov dword [ebp - 0x2c], eax
jmp 0x406510
cmp eax, 0x5753014f
jne 0x406510
mov dword [ebp - 0x2c], 0x997ba48a
jmp 0x406510
cmp eax, 0x56b5d46d
jne 0x406510
mov dword [ebp - 0x2c], 0x54d0575f
jmp 0x406510
cmp eax, 0x54d0575f
jne 0x406510
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax]
mov eax, 0x23152606
cmp dword [ecx], 0
jne 0x406a94
mov eax, 0x8431a647
mov dword [ebp - 0x2c], eax
jmp 0x406510
cmp eax, 0x52ae00d3
jne 0x406510
mov dword [ebp - 0x2c], 0x5753014f
jmp 0x406510
cmp eax, 0x525a8d44
jne 0x406510
mov dword [ebp - 0x2c], 0x54d0575f
jmp 0x406510
cmp eax, 0x51607a66
jne 0x406510
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.00417287
add esp, 4
mov dword [ebp - 0x2c], 0xb1403255
jmp 0x406510
cmp eax, 0x4953b30c
jne 0x406510
mov dword [ebp - 0x2c], 0xe0ac38ce
jmp 0x406510
cmp eax, 0x46d2399a
jne 0x406510
mov eax, 4
call fcn.004172c0
mov eax, 4
call fcn.004172c0
mov dword [ebp - 0x30], esp
mov eax, 4
call fcn.004172c0
mov dword [ebp - 0x34], esp
mov eax, 4
call fcn.004172c0
mov dword [ebp - 0x38], esp
mov eax, 4
call fcn.004172c0
mov edx, esp
mov eax, 4
call fcn.004172c0
mov eax, dword [ebp + 0x14]
mov ecx, dword [ebp - 0x30]
mov dword [ecx], eax
mov eax, dword [ebp - 0x34]
mov dword [eax], edi
mov eax, dword [ebp - 0x38]
mov dword [eax], ebx
mov dword [edx], esi
mov dword [esp], 0
mov dword [ebp - 0x2c], 0x3346337c
jmp 0x406510
cmp eax, 0x442e312b
jne 0x406510
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x24]
mov ecx, dword [ecx]
mov ecx, dword [ecx]
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
mov edx, dword [edx]
sub esp, 0x10
mov dword [esp + 0xc], eax
mov dword [esp + 8], ecx
mov dword [esp], edx
mov dword [esp + 4], 1
call fcn.00417679
add esp, 0x10
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x2c], 0x9cad3b1e
jmp 0x406510
cmp eax, 0x42f5c630
jne 0x406510
mov dword [ebp - 0x2c], 0x5753014f
jmp 0x406510
cmp eax, 0x4007379f
jne 0x406510
mov dword [ebp - 0x2c], 0xc2d07143
jmp 0x406510
cmp eax, 0x36934d6e
jne 0x406510
mov eax, dword [ebp - 0x14]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.00417287
add esp, 4
mov dword [ebp - 0x2c], 0xe584ca83
jmp 0x406510
cmp eax, 0x33e4ec61
jne 0x406510
mov dword [ebp - 0x2c], 0x7660521c
jmp 0x406510
cmp eax, 0x3346337c
jne 0x406510
mov eax, 4
call fcn.004172c0
mov dword [ebp - 0x28], esp
mov eax, 4
call fcn.004172c0
mov dword [ebp - 0x24], esp
mov eax, 4
call fcn.004172c0
mov dword [ebp - 0x20], esp
mov eax, 4
call fcn.004172c0
mov dword [ebp - 0x1c], esp
mov eax, 4
call fcn.004172c0
mov dword [ebp - 0x18], esp
mov eax, 4
call fcn.004172c0
mov dword [ebp - 0x14], esp
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp + 0x14]
mov dword [eax], ecx
mov eax, dword [ebp - 0x20]
mov dword [eax], edi
mov eax, dword [ebp - 0x1c]
mov dword [eax], ebx
mov eax, dword [ebp - 0x18]
mov dword [eax], esi
mov eax, dword [ebp - 0x14]
mov dword [eax], 0
mov dword [ebp - 0x2c], 0xe0ffbd84
jmp 0x406510
cmp eax, 0x32ddbcb5
jne 0x406510
mov dword [ebp - 0x2c], 0xfca9ede5
jmp 0x406510
cmp eax, 0x2a136b40
jne 0x406510
mov dword [ebp - 0x2c], 0xabaada10
jmp 0x406510
cmp eax, 0x295ed540
jne 0x406510
mov dword [ebp - 0x2c], 0x699aacd9
jmp 0x406510
cmp eax, 0x277c3ec4
jne 0x406510
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
mov eax, dword [eax]
sub esp, 8
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.004172eb
add esp, 8
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ecx]
mov dword [ecx], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
cmp dword [eax], 0
setne byte [ebp - 0xf]
mov dword [ebp - 0x2c], 0x9af37e32
jmp 0x406510
cmp eax, 0x23152606
jne 0x406510
mov dword [ebp - 0x2c], 0x51607a66
jmp 0x406510
cmp eax, 0x1e0832b5
jne 0x406510
mov dword [ebp - 0x2c], 0x9cad3b1e
jmp 0x406510
cmp eax, 0x1a85aa3e
jne 0x406510
mov dword [ebp - 0x2c], 0x7660521c
jmp 0x406510
cmp eax, 0xfca9ede5
jne 0x406510
mov eax, dword [ebp - 0x28]
mov dword [eax], 0
mov dword [ebp - 0x2c], 0xf2366207
jmp 0x406510
cmp eax, 0xfbe28609
jne 0x406510
mov dword [ebp - 0x2c], 0xe0ac38ce
jmp 0x406510
cmp eax, 0xf2366207
jne 0x406510
jmp 0x4071dd
cmp eax, 0xf0351c60
jne 0x406510
mov al, byte [ebp - 0xd]
test al, al
mov eax, 0xebe1ed3f
jne 0x406df9
mov eax, 0xba6b0676
mov dword [ebp - 0x2c], eax
jmp 0x406510
cmp eax, 0xec4b9e97
jne 0x406510
mov dword [ebp - 0x2c], 0xb40c12d9
jmp 0x406510
cmp eax, 0xebe1ed3f
jne 0x406510
mov dword [ebp - 0x2c], 0x54d0575f
jmp 0x406510
cmp eax, 0xeaf92d73
jne 0x406510
mov dword [ebp - 0x2c], 0x54d0575f
jmp 0x406510
cmp eax, 0xe91f41c6
jne 0x406510
mov dword [ebp - 0x2c], 0x54d0575f
jmp 0x406510
cmp eax, 0xe584ca83
jne 0x406510
mov eax, dword [ebp - 0x14]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.00417287
add esp, 4
mov dword [ebp - 0x2c], 0x32ddbcb5
jmp 0x406510
cmp eax, 0xe0ffbd84
jne 0x406510
mov dword [ebp - 0x2c], 0xabaada10
jmp 0x406510
cmp eax, 0xe0ac38ce
jne 0x406510
mov dword [ebp - 0x2c], 0x56b5d46d
jmp 0x406510
cmp eax, 0xdcb51bf1
jne 0x406510
mov al, byte [ebp - 0xe]
test al, al
mov eax, 0x4953b30c
jne 0x406ed1
mov eax, 0xc4004bde
mov dword [ebp - 0x2c], eax
jmp 0x406510
cmp eax, 0xdc2c1366
jne 0x406510
mov dword [ebp - 0x2c], 0xec4b9e97
jmp 0x406510
cmp eax, 0xc4004bde
jne 0x406510
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
mov ecx, 0xfffffffc
sub ecx, dword [eax]
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
sub esp, 0xc
mov dword [esp + 4], ecx
mov dword [esp], eax
mov dword [esp + 8], 1
call fcn.00417437
add esp, 0xc
test eax, eax
mov eax, 0x1a85aa3e
jne 0x406f34
mov eax, 0x295ed540
mov dword [ebp - 0x2c], eax
jmp 0x406510
cmp eax, 0xc3356e3c
jne 0x406510
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ecx]
sub esp, 0x10
mov dword [esp + 0xc], eax
mov dword [esp], ecx
mov dword [esp + 8], 4
mov dword [esp + 4], 1
call fcn.00417679
add esp, 0x10
mov dword [ebp - 0x2c], 0x699aacd9
jmp 0x406510
cmp eax, 0xc2d07143
jne 0x406510
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 8], 1
mov dword [esp + 4], 0xfffffffe
call fcn.00417437
add esp, 0xc
test eax, eax
setne byte [ebp - 0x10]
mov dword [ebp - 0x2c], 0x5b3a2a01
jmp 0x406510
cmp eax, 0xc10b0a78
jne 0x406510
mov dword [ebp - 0x2c], 0xe584ca83
jmp 0x406510
cmp eax, 0xbc8d5e85
jne 0x406510
mov dword [ebp - 0x2c], 0x54d0575f
jmp 0x406510
cmp eax, 0xba6b0676
jne 0x406510
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
mov eax, dword [eax]
sub esp, 8
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.004172eb
add esp, 8
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
mov ecx, dword [ebp - 0x14]
mov eax, 0x5d32719f
cmp dword [ecx], 0
jne 0x40702c
mov eax, 0x936832c7
mov dword [ebp - 0x2c], eax
jmp 0x406510
cmp eax, 0x936832c6
jg 0x407052
cmp eax, 0x8fae6d52
jne 0x406510
mov dword [ebp - 0x2c], 0x277c3ec4
jmp 0x406510
cmp eax, 0x997ba489
jg 0x407070
cmp eax, 0x936832c7
jne 0x406510
mov dword [ebp - 0x2c], 0x54d0575f
jmp 0x406510
cmp eax, 0x9af37e31
jg 0x40708e
cmp eax, 0x997ba48a
jne 0x406510
mov dword [ebp - 0x2c], 0x54d0575f
jmp 0x406510
cmp eax, 0x9cad3b1d
jg 0x4070b9
cmp eax, 0x9af37e32
jne 0x406510
mov al, byte [ebp - 0xf]
test al, al
mov eax, 0x1e0832b5
jne 0x4070b1
mov eax, 0x52ae00d3
mov dword [ebp - 0x2c], eax
jmp 0x406510
cmp eax, 0xa2a01d5e
jg 0x407113
cmp eax, 0x9cad3b1e
jne 0x406510
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x24]
mov ecx, dword [ecx]
mov ecx, dword [ecx]
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
mov edx, dword [edx]
sub esp, 0x10
mov dword [esp + 0xc], eax
mov dword [esp + 8], ecx
mov dword [esp], edx
mov dword [esp + 4], 1
call fcn.00417679
add esp, 0x10
mov ecx, dword [ebp - 0x24]
mov ecx, dword [ecx]
cmp eax, dword [ecx]
setne byte [ebp - 0xe]
mov dword [ebp - 0x2c], 0xdcb51bf1
jmp 0x406510
cmp eax, 0xabaada0f
jg 0x407154
cmp eax, 0xa2a01d5f
jne 0x406510
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 8], 1
mov dword [esp + 4], 0xfffffffe
call fcn.00417437
add esp, 0xc
mov dword [ebp - 0x2c], 0xc2d07143
jmp 0x406510
cmp eax, 0xb1403254
jg 0x407182
cmp eax, 0xabaada10
jne 0x406510
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
cmp dword [eax], 0
mov eax, 0x6f516942
je 0x40717a
mov eax, 0x5a9f1f67
mov dword [ebp - 0x2c], eax
jmp 0x406510
cmp eax, 0xb40c12d8
jg 0x4071a0
cmp eax, 0xb1403255
jne 0x406510
mov dword [ebp - 0x2c], 0x8431a647
jmp 0x406510
cmp eax, 0xb40c12d9
je 0x4071ba
cmp eax, 0xb9480bbc
jne 0x4071c6
mov dword [ebp - 0x2c], 0x54d0575f
jmp 0x406510
mov dword [ebp - 0x2c], 0x54d0575f
jmp 0x406510
cmp eax, 0xb94c52e3
jne 0x406510
mov dword [ebp - 0x2c], 0xec4b9e97
jmp 0x406510
mov eax, dword [ebp - 0x28]
mov eax, dword [eax]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret