Function at 0x406110
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], 0x3ba0e541
jmp 0x406150
mov eax, dword [ebp - 0x14]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.00415e4b
add esp, 4
mov dword [ebp - 0x2c], 0x478e2a33
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x2c]
cmp eax, 0x7a6e72ce
jg 0x406180
cmp eax, 0x81f8934e
jg 0x406190
cmp eax, 0x805107f3
jne 0x406150
mov dword [ebp - 0x2c], 0x9cbc742f
jmp 0x406150
cmp eax, 0x7a6e72cf
jne 0x406150
jmp 0x40612b
cmp eax, 0x75479d31
jg 0x4061e5
cmp eax, 0x74947ad1
jg 0x406228
cmp eax, 0x7311ac23
jg 0x40623f
cmp eax, 0x70133706
jg 0x406256
cmp eax, 0x6f3b8920
jg 0x40626d
cmp eax, 0x8294978b
jg 0x406284
cmp eax, 0x81f8934f
jne 0x406150
mov dword [ebp - 0x2c], 0xf4d4b14f
jmp 0x406150
cmp eax, 0x75479d32
jne 0x406150
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.00416219
add esp, 0x10
mov dword [ebp - 0x2c], 0xd362d870
jmp 0x406150
cmp eax, 0x74947ad2
jne 0x406150
mov dword [ebp - 0x2c], 0x288aefb7
jmp 0x406150
cmp eax, 0x7311ac24
jne 0x406150
mov dword [ebp - 0x2c], 0x9cbc742f
jmp 0x406150
cmp eax, 0x70133707
jne 0x406150
mov dword [ebp - 0x2c], 0xa0aaf4f
jmp 0x406150
cmp eax, 0x6f3b8921
jne 0x406150
mov dword [ebp - 0x2c], 0xa6a02feb
jmp 0x406150
cmp eax, 0x935c675b
jg 0x4062d5
cmp eax, 0x8294978c
jne 0x406150
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.00416219
add esp, 0x10
cmp eax, 4
setne byte [ebp - 0xe]
mov dword [ebp - 0x2c], 0xdb9535b4
jmp 0x406150
cmp eax, 0x93bf9d96
jg 0x40631f
cmp eax, 0x935c675c
jne 0x406150
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.00416219
add esp, 0x10
mov dword [ebp - 0x2c], 0x8294978c
jmp 0x406150
cmp eax, 0x9b83ae80
jg 0x40633d
cmp eax, 0x93bf9d97
jne 0x406150
mov dword [ebp - 0x2c], 0xf4d4b14f
jmp 0x406150
cmp eax, 0x9cbc742e
jg 0x40635b
cmp eax, 0x9b83ae81
jne 0x406150
mov dword [ebp - 0x2c], 0x11c2c859
jmp 0x406150
cmp eax, 0xa309b0b4
jg 0x406389
cmp eax, 0x9cbc742f
jne 0x406150
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
cmp dword [eax], 0
mov eax, 0xfd6034ca
je 0x406381
mov eax, 0xc731957d
mov dword [ebp - 0x2c], eax
jmp 0x406150
cmp eax, 0xa6a02fea
jg 0x4063a7
cmp eax, 0xa309b0b5
jne 0x406150
mov dword [ebp - 0x2c], 0xf5a8b2a
jmp 0x406150
cmp eax, 0xa7079b6b
jg 0x4063c5
cmp eax, 0xa6a02feb
jne 0x406150
mov dword [ebp - 0x2c], 0xf4d4b14f
jmp 0x406150
cmp eax, 0xa77f31f7
jg 0x4063e3
cmp eax, 0xa7079b6c
jne 0x406150
mov dword [ebp - 0x2c], 0x58ba6aa8
jmp 0x406150
cmp eax, 0xab8ddd33
jg 0x406401
cmp eax, 0xa77f31f8
jne 0x406150
mov dword [ebp - 0x2c], 0x805107f3
jmp 0x406150
cmp eax, 0xb00cd0e6
jg 0x40644c
cmp eax, 0xab8ddd34
jne 0x406150
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.00415fd7
add esp, 0xc
test eax, eax
mov eax, 0x81f8934f
jne 0x406444
mov eax, 0x622dc398
mov dword [ebp - 0x2c], eax
jmp 0x406150
cmp eax, 0xb17d22aa
jg 0x4064aa
cmp eax, 0xb00cd0e7
jne 0x406150
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.00416219
add esp, 0x10
mov ecx, dword [ebp - 0x24]
mov edx, dword [ecx]
mov ecx, 0xff97fc1d
cmp eax, dword [edx]
jne 0x4064a2
mov ecx, 0x21929cc7
mov dword [ebp - 0x2c], ecx
jmp 0x406150
cmp eax, 0xba296db8
jg 0x4064c8
cmp eax, 0xb17d22ab
jne 0x406150
mov dword [ebp - 0x2c], 0xf4d4b14f
jmp 0x406150
cmp eax, 0xbd3fee41
jg 0x406548
cmp eax, 0xba296db9
jne 0x406150
mov eax, 4
call fcn.00415e20
mov eax, 4
call fcn.00415e20
mov dword [ebp - 0x30], esp
mov eax, 4
call fcn.00415e20
mov dword [ebp - 0x34], esp
mov eax, 4
call fcn.00415e20
mov dword [ebp - 0x38], esp
mov eax, 4
call fcn.00415e20
mov edx, esp
mov eax, 4
call fcn.00415e20
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], 0x4cdd0940
jmp 0x406150
cmp eax, 0x6269c627
jg 0x40657b
cmp eax, 0x622dc397
jg 0x406592
cmp eax, 0x58ba6aa7
jg 0x4065a9
cmp eax, 0xbd73f156
jg 0x4065c0
cmp eax, 0xbd3fee42
jne 0x406150
mov dword [ebp - 0x2c], 0xf4d4b14f
jmp 0x406150
cmp eax, 0x6269c628
jne 0x406150
mov dword [ebp - 0x2c], 0xf714f801
jmp 0x406150
cmp eax, 0x622dc398
jne 0x406150
mov dword [ebp - 0x2c], 0xa77f31f8
jmp 0x406150
cmp eax, 0x58ba6aa8
jne 0x406150
mov dword [ebp - 0x2c], 0xbd73f157
jmp 0x406150
cmp eax, 0xc3802cec
jg 0x4065de
cmp eax, 0xbd73f157
jne 0x406150
mov dword [ebp - 0x2c], 0xf4d4b14f
jmp 0x406150
cmp eax, 0xc5b53bd9
jg 0x40662e
cmp eax, 0xc3802ced
jne 0x406150
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.00415fd7
add esp, 0xc
test eax, eax
mov eax, 0xe4f817aa
jne 0x406626
mov eax, 0x4ff16b2
mov dword [ebp - 0x2c], eax
jmp 0x406150
cmp eax, 0xc731957c
jg 0x406659
cmp eax, 0xc5b53bda
jne 0x406150
mov al, byte [ebp - 0xd]
test al, al
mov eax, 0x6269c628
jne 0x406651
mov eax, 0xa0aaf4f
mov dword [ebp - 0x2c], eax
jmp 0x406150
cmp eax, 0xcce4c1f2
jg 0x4066ac
cmp eax, 0xc731957d
jne 0x406150
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.00415fd7
add esp, 0xc
test eax, eax
mov eax, 0xb17d22ab
jne 0x4066a4
mov eax, 0x238fd156
mov dword [ebp - 0x2c], eax
jmp 0x406150
cmp eax, 0xd362d86f
jg 0x406708
cmp eax, 0xcce4c1f3
jne 0x406150
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.00416219
add esp, 0x10
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ecx]
mov ecx, 0xed594262
cmp eax, dword [edx]
jne 0x406700
mov ecx, 0xc3802ced
mov dword [ebp - 0x2c], ecx
jmp 0x406150
cmp eax, 0xd6ddcf14
jg 0x406759
cmp eax, 0xd362d870
jne 0x406150
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.00416219
add esp, 0x10
cmp eax, 1
setne byte [ebp - 0xf]
mov dword [ebp - 0x2c], 0x26d7a7ad
jmp 0x406150
cmp eax, 0xdb9535b3
jg 0x406781
cmp eax, 0xd6ddcf15
jne 0x406150
mov eax, dword [ebp - 0x14]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x28]
mov dword [ecx], eax
mov dword [ebp - 0x2c], 0x10dc7290
jmp 0x406150
cmp eax, 0xe3b37d4a
jg 0x4067ac
cmp eax, 0xdb9535b4
jne 0x406150
mov al, byte [ebp - 0xe]
test al, al
mov eax, 0xbd3fee42
jne 0x4067a4
mov eax, 0x4cbdadec
mov dword [ebp - 0x2c], eax
jmp 0x406150
cmp eax, 0xe4f817a9
jg 0x4067ca
cmp eax, 0xe3b37d4b
jne 0x406150
mov dword [ebp - 0x2c], 0xf4d4b14f
jmp 0x406150
cmp eax, 0xe5eaef8d
jg 0x4067e8
cmp eax, 0xe4f817aa
jne 0x406150
mov dword [ebp - 0x2c], 0x288aefb7
jmp 0x406150
cmp eax, 0xed594261
jg 0x406809
cmp eax, 0xe5eaef8e
jne 0x406150
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x2c], 0x48a82fb4
jmp 0x406150
cmp eax, 0xef29e45c
jg 0x406827
cmp eax, 0xed594262
jne 0x406150
mov dword [ebp - 0x2c], 0x58ba6aa8
jmp 0x406150
cmp eax, 0xf0f80681
jg 0x40684f
cmp eax, 0xef29e45d
jne 0x406150
mov eax, dword [ebp - 0x14]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x28]
mov dword [ecx], eax
mov dword [ebp - 0x2c], 0xd6ddcf15
jmp 0x406150
cmp eax, 0xf4d4b14e
jg 0x40686d
cmp eax, 0xf0f80682
jne 0x406150
mov dword [ebp - 0x2c], 0x8294978c
jmp 0x406150
cmp eax, 0xf714f800
jg 0x40688b
cmp eax, 0xf4d4b14f
jne 0x406150
mov dword [ebp - 0x2c], 0x48a82fb4
jmp 0x406150
cmp eax, 0xfd6034c9
jg 0x4068be
cmp eax, 0xf714f801
jne 0x406150
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.00415e4b
add esp, 4
mov dword [ebp - 0x2c], 0x70133707
jmp 0x406150
cmp eax, 0xff97fc1c
jg 0x4068dc
cmp eax, 0xfd6034ca
jne 0x406150
mov dword [ebp - 0x2c], 0xd362d870
jmp 0x406150
cmp eax, 0x4ff16b1
jg 0x4068fa
cmp eax, 0xff97fc1d
jne 0x406150
mov dword [ebp - 0x2c], 0xf4d4b14f
jmp 0x406150
cmp eax, 0x536e1cb
jg 0x406918
cmp eax, 0x4ff16b2
jne 0x406150
mov dword [ebp - 0x2c], 0xd6ddcf15
jmp 0x406150
cmp eax, 0xa0aaf4e
jg 0x406936
cmp eax, 0x536e1cc
jne 0x406150
mov dword [ebp - 0x2c], 0xf4d4b14f
jmp 0x406150
cmp eax, 0xf5a8b29
jg 0x406962
cmp eax, 0xa0aaf4f
jne 0x406150
mov ecx, dword [ebp - 0x14]
mov eax, 0x100fdcb0
cmp dword [ecx], 0
jne 0x40695a
mov eax, 0xa309b0b5
mov dword [ebp - 0x2c], eax
jmp 0x406150
cmp eax, 0x100fdcaf
jg 0x406989
cmp eax, 0xf5a8b2a
jne 0x406150
mov eax, dword [ebp - 0x28]
mov dword [eax], 0
mov dword [ebp - 0x2c], 0x9b83ae81
jmp 0x406150
cmp eax, 0x4cdd093f
jg 0x406aa6
cmp eax, 0x4cbdadeb
jg 0x406b2b
cmp eax, 0x48a82fb3
jg 0x406b72
cmp eax, 0x478e2a32
jg 0x406b95
cmp eax, 0x3ba0e540
jg 0x406bbf
cmp eax, 0x3a86efed
jg 0x406bd6
cmp eax, 0x2c11de83
jg 0x406bed
cmp eax, 0x2b201e26
jg 0x406c19
cmp eax, 0x288aefb6
jg 0x406c30
cmp eax, 0x26d7a7ac
jg 0x406c47
cmp eax, 0x238fd155
jg 0x406c6b
cmp eax, 0x21929cc6
jg 0x406cb6
cmp eax, 0x2088499e
jg 0x406d02
cmp eax, 0x1f82877d
jg 0x406d19
cmp eax, 0x1a9620bb
jg 0x406d30
cmp eax, 0x17d2030c
jg 0x406d50
cmp eax, 0x1288c645
jg 0x406d67
cmp eax, 0x11c2c858
jg 0x406d8a
cmp eax, 0x100fdcb0
je 0x406d7e
cmp eax, 0x102ed337
jne 0x406d97
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.00415fd7
add esp, 0xc
test eax, eax
mov eax, 0x3a86efee
jne 0x406a9e
mov eax, 0xcce4c1f3
mov dword [ebp - 0x2c], eax
jmp 0x406150
cmp eax, 0x4cdd0940
jne 0x406150
mov eax, 4
call fcn.00415e20
mov dword [ebp - 0x28], esp
mov eax, 4
call fcn.00415e20
mov dword [ebp - 0x24], esp
mov eax, 4
call fcn.00415e20
mov dword [ebp - 0x20], esp
mov eax, 4
call fcn.00415e20
mov dword [ebp - 0x1c], esp
mov eax, 4
call fcn.00415e20
mov dword [ebp - 0x18], esp
mov eax, 4
call fcn.00415e20
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], 0x7311ac24
jmp 0x406150
cmp eax, 0x4cbdadec
jne 0x406150
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.00415e83
add esp, 8
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
mov ecx, dword [ebp - 0x14]
mov eax, 0x102ed337
cmp dword [ecx], 0
jne 0x406b6a
mov eax, 0x93bf9d97
mov dword [ebp - 0x2c], eax
jmp 0x406150
cmp eax, 0x48a82fb4
jne 0x406150
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
cmp dword [eax], 0
setne byte [ebp - 0xd]
mov dword [ebp - 0x2c], 0xc5b53bda
jmp 0x406150
cmp eax, 0x478e2a33
jne 0x406150
mov eax, dword [ebp - 0x14]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.00415e4b
add esp, 4
mov dword [ebp - 0x2c], 0x2b201e27
jmp 0x406150
cmp eax, 0x3ba0e541
jne 0x406150
mov dword [ebp - 0x2c], 0x4cdd0940
jmp 0x406150
cmp eax, 0x3a86efee
jne 0x406150
mov dword [ebp - 0x2c], 0x6f3b8921
jmp 0x406150
cmp eax, 0x2c11de84
jne 0x406150
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.00415e4b
add esp, 4
mov dword [ebp - 0x2c], 0xf714f801
jmp 0x406150
cmp eax, 0x2b201e27
jne 0x406150
mov dword [ebp - 0x2c], 0xa309b0b5
jmp 0x406150
cmp eax, 0x288aefb7
jne 0x406150
mov dword [ebp - 0x2c], 0xe3b37d4b
jmp 0x406150
cmp eax, 0x26d7a7ad
jne 0x406150
mov al, byte [ebp - 0xf]
test al, al
mov eax, 0x2088499f
jne 0x406c63
mov eax, 0xab8ddd34
mov dword [ebp - 0x2c], eax
jmp 0x406150
cmp eax, 0x238fd156
jne 0x406150
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.00415e83
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, 0xb00cd0e7
cmp dword [ecx], 0
jne 0x406cae
mov eax, 0x17d2030d
mov dword [ebp - 0x2c], eax
jmp 0x406150
cmp eax, 0x21929cc7
jne 0x406150
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.00415fd7
add esp, 0xc
test eax, eax
mov eax, 0x536e1cc
jne 0x406cfa
mov eax, 0xf0f80682
mov dword [ebp - 0x2c], eax
jmp 0x406150
cmp eax, 0x2088499f
jne 0x406150
mov dword [ebp - 0x2c], 0xf4d4b14f
jmp 0x406150
cmp eax, 0x1f82877e
jne 0x406150
mov dword [ebp - 0x2c], 0x6f3b8921
jmp 0x406150
cmp eax, 0x1a9620bc
jne 0x406150
mov eax, dword [ebp - 0x28]
mov dword [eax], 0
mov dword [ebp - 0x2c], 0xf5a8b2a
jmp 0x406150
cmp eax, 0x17d2030d
jne 0x406150
mov dword [ebp - 0x2c], 0xf4d4b14f
jmp 0x406150
cmp eax, 0x1288c646
jne 0x406150
mov dword [ebp - 0x2c], 0xa77f31f8
jmp 0x406150
mov dword [ebp - 0x2c], 0x478e2a33
jmp 0x406150
cmp eax, 0x11c2c859
jne 0x406150
jmp 0x406dae
cmp eax, 0x10dc7290
jne 0x406150
mov dword [ebp - 0x2c], 0x11c2c859
jmp 0x406150
mov eax, dword [ebp - 0x28]
mov eax, dword [eax]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret