Function at 0x406370
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x20
mov esi, dword [ebp + 8]
mov dword [ebp - 0x2c], 0x7fe37c28
jmp 0x406390
mov dword [ebp - 0x2c], 0x8e169022
nop
nop
nop
nop
mov eax, dword [ebp - 0x2c]
cmp eax, 0x7fe37c27
jg 0x4063e0
cmp eax, 0x7a1b44d6
jg 0x4063f0
cmp eax, 0x76a30644
jg 0x406438
cmp eax, 0x703bee6f
jg 0x40644f
cmp eax, 0x82f5a366
jg 0x406466
cmp eax, 0x81117711
jne 0x406390
mov al, byte [ebp - 0xf]
test al, al
mov eax, 0x38380bfd
jne 0x4063da
mov eax, 0x6a654f6a
mov dword [ebp - 0x2c], eax
jmp 0x406390
cmp eax, 0x7fe37c28
jne 0x406390
jmp 0x406385
cmp eax, 0x7a1b44d7
jne 0x406390
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.00415d37
add esp, 0xc
test eax, eax
mov eax, 0x8911c5bc
jne 0x406430
mov eax, 0x660159c1
mov dword [ebp - 0x2c], eax
jmp 0x406390
cmp eax, 0x76a30645
jne 0x406390
mov dword [ebp - 0x2c], 0x2928d051
jmp 0x406390
cmp eax, 0x703bee70
jne 0x406390
mov dword [ebp - 0x2c], 0x3b18728c
jmp 0x406390
cmp eax, 0x85c00b34
jg 0x4064e0
cmp eax, 0x82f5a367
jne 0x406390
mov eax, 4
call fcn.00415bc0
mov eax, 4
call fcn.00415bc0
mov ecx, esp
mov eax, 4
call fcn.00415bc0
mov edx, esp
mov eax, 4
call fcn.00415bc0
mov edi, esp
mov eax, 4
call fcn.00415bc0
mov ebx, esp
mov eax, 4
call fcn.00415bc0
mov eax, dword [ebp + 0x14]
mov dword [ecx], eax
mov eax, dword [ebp + 0x10]
mov dword [edx], eax
mov eax, dword [ebp + 0xc]
mov dword [edi], eax
mov dword [ebx], esi
mov dword [esp], 0
mov dword [ebp - 0x2c], 0x8e169022
jmp 0x406390
cmp eax, 0x6a654f69
jg 0x406543
cmp eax, 0x68ad5e1d
jg 0x40655a
cmp eax, 0x660159c0
jg 0x406571
cmp eax, 0x620e2a27
jg 0x4065bc
cmp eax, 0x5dd793d0
jg 0x4065d3
cmp eax, 0x558d1b74
jg 0x4065ea
cmp eax, 0x51966df0
jg 0x406601
cmp eax, 0x85e32cdb
jg 0x406618
cmp eax, 0x85c00b35
jne 0x406390
mov dword [ebp - 0x2c], 0x703bee70
jmp 0x406390
cmp eax, 0x6a654f6a
jne 0x406390
mov dword [ebp - 0x2c], 0x703bee70
jmp 0x406390
cmp eax, 0x68ad5e1e
jne 0x406390
mov dword [ebp - 0x2c], 0x703bee70
jmp 0x406390
cmp eax, 0x660159c1
jne 0x406390
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.00415beb
add esp, 8
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ecx]
mov dword [ecx], eax
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax]
mov eax, 0x8b33ab9d
cmp dword [ecx], 0
jne 0x4065b4
mov eax, 0x979a3d8d
mov dword [ebp - 0x2c], eax
jmp 0x406390
cmp eax, 0x620e2a28
jne 0x406390
mov dword [ebp - 0x2c], 0x35608087
jmp 0x406390
cmp eax, 0x5dd793d1
jne 0x406390
mov dword [ebp - 0x2c], 0xea52888f
jmp 0x406390
cmp eax, 0x558d1b75
jne 0x406390
mov dword [ebp - 0x2c], 0x703bee70
jmp 0x406390
cmp eax, 0x51966df1
jne 0x406390
mov dword [ebp - 0x2c], 0x2e8aada2
jmp 0x406390
cmp eax, 0x8911c5bb
jg 0x406662
cmp eax, 0x85e32cdc
jne 0x406390
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.00415beb
add esp, 8
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
mov eax, dword [ebp - 0x14]
cmp dword [eax], 0
setne byte [ebp - 0xf]
mov dword [ebp - 0x2c], 0x81117711
jmp 0x406390
cmp eax, 0x8b33ab9c
jg 0x406680
cmp eax, 0x8911c5bc
jne 0x406390
mov dword [ebp - 0x2c], 0x703bee70
jmp 0x406390
cmp eax, 0x8cfd6f5d
jg 0x4066de
cmp eax, 0x8b33ab9d
jne 0x406390
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.00415f79
add esp, 0x10
mov ecx, dword [ebp - 0x24]
mov edx, dword [ecx]
mov ecx, 0x558d1b75
cmp eax, dword [edx]
jne 0x4066d6
mov ecx, 0xbd84646f
mov dword [ebp - 0x2c], ecx
jmp 0x406390
cmp eax, 0x8e169021
jg 0x4066fc
cmp eax, 0x8cfd6f5e
jne 0x406390
mov dword [ebp - 0x2c], 0x703bee70
jmp 0x406390
cmp eax, 0x8e7f0d19
jg 0x406792
cmp eax, 0x8e169022
jne 0x406390
mov eax, 4
call fcn.00415bc0
mov dword [ebp - 0x28], esp
mov eax, 4
call fcn.00415bc0
mov dword [ebp - 0x24], esp
mov eax, 4
call fcn.00415bc0
mov dword [ebp - 0x20], esp
mov eax, 4
call fcn.00415bc0
mov dword [ebp - 0x1c], esp
mov eax, 4
call fcn.00415bc0
mov dword [ebp - 0x18], esp
mov eax, 4
call fcn.00415bc0
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 ecx, dword [ebp + 0x10]
mov dword [eax], ecx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp + 0xc]
mov dword [eax], ecx
mov eax, dword [ebp - 0x18]
mov dword [eax], esi
mov eax, dword [ebp - 0x14]
mov dword [eax], 0
mov dword [ebp - 0x2c], 0xc1ec9425
jmp 0x406390
cmp eax, 0x979a3d8c
jg 0x4067c3
cmp eax, 0x8e7f0d1a
jne 0x406390
mov eax, dword [ebp - 0x14]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.00415b83
add esp, 4
mov dword [ebp - 0x2c], 0xf0ade877
jmp 0x406390
cmp eax, 0x97fae799
jg 0x4067e1
cmp eax, 0x979a3d8d
jne 0x406390
mov dword [ebp - 0x2c], 0x703bee70
jmp 0x406390
cmp eax, 0x98432aa7
jg 0x4067ff
cmp eax, 0x97fae79a
jne 0x406390
mov dword [ebp - 0x2c], 0x703bee70
jmp 0x406390
cmp eax, 0xacdf9fa3
jg 0x40685b
cmp eax, 0x98432aa8
jne 0x406390
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.00415f79
add esp, 0x10
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ecx]
mov ecx, 0x85c00b35
cmp eax, dword [edx]
jne 0x406853
mov ecx, 0xaf7495bd
mov dword [ebp - 0x2c], ecx
jmp 0x406390
cmp eax, 0xaf7495bc
jg 0x40689e
cmp eax, 0xacdf9fa4
jne 0x406390
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.00415beb
add esp, 8
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x2c], 0x85e32cdc
jmp 0x406390
cmp eax, 0xb33f0ffb
jg 0x4068ee
cmp eax, 0xaf7495bd
jne 0x406390
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.00415d37
add esp, 0xc
test eax, eax
mov eax, 0x620e2a28
jne 0x4068e6
mov eax, 0x2d624949
mov dword [ebp - 0x2c], eax
jmp 0x406390
cmp eax, 0xb8b84f52
jg 0x40690c
cmp eax, 0xb33f0ffc
jne 0x406390
mov dword [ebp - 0x2c], 0x35608087
jmp 0x406390
cmp eax, 0xbd84646e
jg 0x406923
cmp eax, 0xb8b84f53
jne 0x406390
jmp 0x406e48
cmp eax, 0xc1ec9424
jg 0x406976
cmp eax, 0xbd84646f
jne 0x406390
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.00415d37
add esp, 0xc
test eax, eax
mov eax, 0xdfc2f00
jne 0x40696e
mov eax, 0xf8789e88
mov dword [ebp - 0x2c], eax
jmp 0x406390
cmp eax, 0xc8a3417d
jg 0x406994
cmp eax, 0xc1ec9425
jne 0x406390
mov dword [ebp - 0x2c], 0xea52888f
jmp 0x406390
cmp eax, 0xca2acbb6
jg 0x4069d5
cmp eax, 0xc8a3417e
jne 0x406390
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.00415d37
add esp, 0xc
mov dword [ebp - 0x2c], 0x2e8aada2
jmp 0x406390
cmp eax, 0xcbd1b405
jg 0x4069f3
cmp eax, 0xca2acbb7
jne 0x406390
mov dword [ebp - 0x2c], 0x4fec18ca
jmp 0x406390
cmp eax, 0xd9105d22
jg 0x406a1e
cmp eax, 0xcbd1b406
jne 0x406390
mov al, byte [ebp - 0xe]
test al, al
mov eax, 0x9421457
jne 0x406a16
mov eax, 0x98432aa8
mov dword [ebp - 0x2c], eax
jmp 0x406390
cmp eax, 0xe2fc9e98
jg 0x406a67
cmp eax, 0xd9105d23
jne 0x406390
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.00415d37
add esp, 0xc
mov dword [ebp - 0x2c], 0x2737a51b
jmp 0x406390
cmp eax, 0xe42be027
jg 0x406a85
cmp eax, 0xe2fc9e99
jne 0x406390
mov dword [ebp - 0x2c], 0x76a30645
jmp 0x406390
cmp eax, 0xea52888e
jg 0x406ab0
cmp eax, 0xe42be028
jne 0x406390
mov al, byte [ebp - 0xd]
test al, al
mov eax, 0x465ed2e0
jne 0x406aa8
mov eax, 0x4fec18ca
mov dword [ebp - 0x2c], eax
jmp 0x406390
cmp eax, 0xefe6bd9c
jg 0x406ade
cmp eax, 0xea52888f
jne 0x406390
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
cmp dword [eax], 0
mov eax, 0x4ba739fa
je 0x406ad6
mov eax, 0x7a1b44d7
mov dword [ebp - 0x2c], eax
jmp 0x406390
cmp eax, 0xf0ade876
jg 0x406afc
cmp eax, 0xefe6bd9d
jne 0x406390
mov dword [ebp - 0x2c], 0x85e32cdc
jmp 0x406390
cmp eax, 0xf8789e87
jg 0x406b23
cmp eax, 0xf0ade877
jne 0x406390
mov eax, dword [ebp - 0x28]
mov dword [eax], 0
mov dword [ebp - 0x2c], 0xb8b84f53
jmp 0x406390
cmp eax, 0x9421456
jg 0x406b78
cmp eax, 0xf8789e88
jne 0x406390
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.00415f79
add esp, 0x10
cmp eax, 4
mov eax, 0xd2a57fd
jne 0x406b70
mov eax, 0xefe6bd9d
mov dword [ebp - 0x2c], eax
jmp 0x406390
cmp eax, 0xd2a57fc
jg 0x406b96
cmp eax, 0x9421457
jne 0x406390
mov dword [ebp - 0x2c], 0x703bee70
jmp 0x406390
cmp eax, 0xdfc2eff
jg 0x406bb4
cmp eax, 0xd2a57fd
jne 0x406390
mov dword [ebp - 0x2c], 0x703bee70
jmp 0x406390
cmp eax, 0x1f750373
jg 0x406bd2
cmp eax, 0xdfc2f00
jne 0x406390
mov dword [ebp - 0x2c], 0x76a30645
jmp 0x406390
cmp eax, 0x2737a51a
jg 0x406bfd
cmp eax, 0x1f750374
jne 0x406390
mov al, byte [ebp - 0x10]
test al, al
mov eax, 0x97fae79a
jne 0x406bf5
mov eax, 0x5dd793d1
mov dword [ebp - 0x2c], eax
jmp 0x406390
cmp eax, 0x2928d050
jg 0x406c4c
cmp eax, 0x2737a51b
jne 0x406390
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.00415d37
add esp, 0xc
test eax, eax
setne byte [ebp - 0xe]
mov dword [ebp - 0x2c], 0xcbd1b406
jmp 0x406390
cmp eax, 0x2d624948
jg 0x406c6a
cmp eax, 0x2928d051
jne 0x406390
mov dword [ebp - 0x2c], 0x703bee70
jmp 0x406390
cmp eax, 0x2e8aada1
jg 0x406c92
cmp eax, 0x2d624949
jne 0x406390
mov eax, dword [ebp - 0x14]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x28]
mov dword [ecx], eax
mov dword [ebp - 0x2c], 0xb8b84f53
jmp 0x406390
cmp eax, 0x31f16ee3
jg 0x406cd9
cmp eax, 0x2e8aada2
jne 0x406390
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.00415d37
add esp, 0xc
test eax, eax
setne byte [ebp - 0x10]
mov dword [ebp - 0x2c], 0x1f750374
jmp 0x406390
cmp eax, 0x35608086
jg 0x406d0c
cmp eax, 0x31f16ee4
jne 0x406390
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.00415b83
add esp, 4
mov dword [ebp - 0x2c], 0x40068412
jmp 0x406390
cmp eax, 0x38380bfc
jg 0x406d2a
cmp eax, 0x35608087
jne 0x406390
mov dword [ebp - 0x2c], 0x8cfd6f5e
jmp 0x406390
cmp eax, 0x3b18728b
jg 0x406d48
cmp eax, 0x38380bfd
jne 0x406390
mov dword [ebp - 0x2c], 0x2737a51b
jmp 0x406390
cmp eax, 0x40068411
jg 0x406d72
cmp eax, 0x3b18728c
jne 0x406390
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
cmp dword [eax], 0
setne byte [ebp - 0xd]
mov dword [ebp - 0x2c], 0xe42be028
jmp 0x406390
cmp eax, 0x465ed2df
jg 0x406da5
cmp eax, 0x40068412
jne 0x406390
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.00415b83
add esp, 4
mov dword [ebp - 0x2c], 0xca2acbb7
jmp 0x406390
cmp eax, 0x4ba739f9
jg 0x406dc3
cmp eax, 0x465ed2e0
jne 0x406390
mov dword [ebp - 0x2c], 0x40068412
jmp 0x406390
cmp eax, 0x4ba739fa
je 0x406de0
cmp eax, 0x4fc922f9
jne 0x406e23
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x2c], 0x3b18728c
jmp 0x406390
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.00415f79
add esp, 0x10
cmp eax, 1
mov eax, 0x68ad5e1e
jne 0x406e1b
mov eax, 0x51966df1
mov dword [ebp - 0x2c], eax
jmp 0x406390
cmp eax, 0x4fec18ca
jne 0x406390
mov ecx, dword [ebp - 0x14]
mov eax, 0x8e7f0d1a
cmp dword [ecx], 0
jne 0x406e40
mov eax, 0xf0ade877
mov dword [ebp - 0x2c], eax
jmp 0x406390
mov eax, dword [ebp - 0x28]
mov eax, dword [eax]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret