Function at 0x406c10
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], 0xe4c69612
jmp 0x406c40
mov dword [ebp - 0x2c], 0x1f68c75d
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x2c]
cmp eax, 0x93e8e6f1
jg 0x406c60
cmp eax, 0x8ea765ce
jne 0x406c40
jmp 0x406c2b
cmp eax, 0x7a11d839
jg 0x406d20
cmp eax, 0x75acb5f6
jg 0x406d37
cmp eax, 0x6f379bc6
jg 0x406d4e
cmp eax, 0x6bf8113d
jg 0x406d8a
cmp eax, 0x627ecb9e
jg 0x406daa
cmp eax, 0x5c5d7f47
jg 0x406dce
cmp eax, 0x596338db
jg 0x406e17
cmp eax, 0x57c51587
jg 0x406e38
cmp eax, 0x5643cc85
jg 0x406e7b
cmp eax, 0x94aecaa2
jg 0x406ec4
cmp eax, 0x93e8e6f2
jne 0x406c40
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.004171d7
add esp, 0xc
test eax, eax
mov eax, 0x75acb5f7
jne 0x406d0a
mov eax, 0x9944356
mov dword [ebp - 0x2c], eax
jmp 0x406c40
cmp eax, 0x7a11d83a
jne 0x406c40
mov dword [ebp - 0x2c], 0xc163b7ed
jmp 0x406c40
cmp eax, 0x75acb5f7
jne 0x406c40
mov dword [ebp - 0x2c], 0x1f68c75d
jmp 0x406c40
cmp eax, 0x6f379bc7
jne 0x406c40
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.00417083
add esp, 8
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x2c], 0x57c51588
jmp 0x406c40
cmp eax, 0x6bf8113e
jne 0x406c40
mov eax, dword [ebp - 0x28]
mov dword [eax], 0
mov dword [ebp - 0x2c], 0xfdaf3bd8
jmp 0x406c40
cmp eax, 0x627ecb9f
jne 0x406c40
mov al, byte [ebp - 0x10]
test al, al
mov eax, 0xc83b08b3
jne 0x406dc6
mov eax, 0x94aecaa3
mov dword [ebp - 0x2c], eax
jmp 0x406c40
cmp eax, 0x5c5d7f48
jne 0x406c40
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.004171d7
add esp, 0xc
test eax, eax
mov eax, 0xc8d42f83
jne 0x406e0f
mov eax, 0x596338dc
mov dword [ebp - 0x2c], eax
jmp 0x406c40
cmp eax, 0x596338dc
jne 0x406c40
mov eax, dword [ebp - 0x14]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x28]
mov dword [ecx], eax
mov dword [ebp - 0x2c], 0xfdaf3bd8
jmp 0x406c40
cmp eax, 0x57c51588
jne 0x406c40
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.00417083
add esp, 8
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
mov eax, dword [ebp - 0x14]
cmp dword [eax], 0
setne byte [ebp - 0xe]
mov dword [ebp - 0x2c], 0xfaa905b4
jmp 0x406c40
cmp eax, 0x5643cc86
jne 0x406c40
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.00417419
add esp, 0x10
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x2c], 0xc163b7ed
jmp 0x406c40
cmp eax, 0xa55ee577
jg 0x406f17
cmp eax, 0x94aecaa3
jne 0x406c40
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.004171d7
add esp, 0xc
test eax, eax
mov eax, 0x2f7c4b0e
jne 0x406f0f
mov eax, 0x9c36451
mov dword [ebp - 0x2c], eax
jmp 0x406c40
cmp eax, 0xa91c60bd
jg 0x406f5c
cmp eax, 0xa55ee578
jne 0x406c40
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.00417083
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], 0x4edce737
jmp 0x406c40
cmp eax, 0xac191db5
jg 0x406f87
cmp eax, 0xa91c60be
jne 0x406c40
mov al, byte [ebp - 0xd]
test al, al
mov eax, 0xf26559ec
jne 0x406f7f
mov eax, 0x5c5d7f48
mov dword [ebp - 0x2c], eax
jmp 0x406c40
cmp eax, 0xaf73db3b
jg 0x406fa5
cmp eax, 0xac191db6
jne 0x406c40
mov dword [ebp - 0x2c], 0xb14816d2
jmp 0x406c40
cmp eax, 0xb14816d1
jg 0x406fc3
cmp eax, 0xaf73db3c
jne 0x406c40
mov dword [ebp - 0x2c], 0x1f68c75d
jmp 0x406c40
cmp eax, 0xb6901352
jg 0x406fe1
cmp eax, 0xb14816d2
jne 0x406c40
mov dword [ebp - 0x2c], 0x21b18618
jmp 0x406c40
cmp eax, 0xbef9b775
jg 0x40700d
cmp eax, 0xb6901353
jne 0x406c40
mov ecx, dword [ebp - 0x14]
mov eax, 0x4e394661
cmp dword [ecx], 0
jne 0x407005
mov eax, 0x6bf8113e
mov dword [ebp - 0x2c], eax
jmp 0x406c40
cmp eax, 0xc163b7ec
jg 0x40702b
cmp eax, 0xbef9b776
jne 0x406c40
mov dword [ebp - 0x2c], 0x1f68c75d
jmp 0x406c40
cmp eax, 0xc83b08b2
jg 0x407083
cmp eax, 0xc163b7ed
jne 0x406c40
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.00417419
add esp, 0x10
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ecx]
cmp eax, dword [ecx]
setne byte [ebp - 0xd]
mov dword [ebp - 0x2c], 0xa91c60be
jmp 0x406c40
cmp eax, 0x4edce736
jg 0x40711e
cmp eax, 0x4e394660
jg 0x407165
cmp eax, 0x4d1a5f30
jg 0x40718f
cmp eax, 0x4c3c7396
jg 0x4071db
cmp eax, 0x488d7704
jg 0x4071f2
cmp eax, 0x3c432001
jg 0x407215
cmp eax, 0xc8d42f82
jg 0x407261
cmp eax, 0xc83b08b3
jne 0x406c40
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.00417419
add esp, 0x10
cmp eax, 1
mov eax, 0xe003aef0
jne 0x407116
mov eax, 0x93e8e6f2
mov dword [ebp - 0x2c], eax
jmp 0x406c40
cmp eax, 0x4edce737
jne 0x406c40
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.00417083
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], 0x16c6ce8f
jmp 0x406c40
cmp eax, 0x4e394661
jne 0x406c40
mov eax, dword [ebp - 0x14]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.0041704b
add esp, 4
mov dword [ebp - 0x2c], 0x6bf8113e
jmp 0x406c40
cmp eax, 0x4d1a5f31
jne 0x406c40
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.004171d7
add esp, 0xc
test eax, eax
mov eax, 0x8ea765ce
jne 0x4071d3
mov eax, 0x7a11d83a
mov dword [ebp - 0x2c], eax
jmp 0x406c40
cmp eax, 0x4c3c7397
jne 0x406c40
mov dword [ebp - 0x2c], 0x1f68c75d
jmp 0x406c40
cmp eax, 0x488d7705
jne 0x406c40
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
cmp dword [eax], 0
sete byte [ebp - 0x10]
mov dword [ebp - 0x2c], 0x627ecb9f
jmp 0x406c40
cmp eax, 0x3c432002
jne 0x406c40
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.004171d7
add esp, 0xc
test eax, eax
mov eax, 0xdb8a2f30
jne 0x407259
mov eax, 0xee3772f1
mov dword [ebp - 0x2c], eax
jmp 0x406c40
cmp eax, 0xcb631147
jg 0x40727f
cmp eax, 0xc8d42f83
jne 0x406c40
mov dword [ebp - 0x2c], 0x1f68c75d
jmp 0x406c40
cmp eax, 0xcc6b36dc
jg 0x4072dd
cmp eax, 0xcb631148
jne 0x406c40
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.00417419
add esp, 0x10
mov ecx, dword [ebp - 0x24]
mov edx, dword [ecx]
mov ecx, 0xaf73db3c
cmp eax, dword [edx]
jne 0x4072d5
mov ecx, 0x3c432002
mov dword [ebp - 0x2c], ecx
jmp 0x406c40
cmp eax, 0xceebc7b8
jg 0x4072fb
cmp eax, 0xcc6b36dd
jne 0x406c40
mov dword [ebp - 0x2c], 0x213b1d2e
jmp 0x406c40
cmp eax, 0xdb86c283
jg 0x40732e
cmp eax, 0xceebc7b9
jne 0x406c40
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.0041704b
add esp, 4
mov dword [ebp - 0x2c], 0xb6901353
jmp 0x406c40
cmp eax, 0x36fb972f
jg 0x407421
cmp eax, 0x36e3c12a
jg 0x407438
cmp eax, 0x2f7c4b0d
jg 0x4074b1
cmp eax, 0x21b18617
jg 0x4074c8
cmp eax, 0x213b1d2d
jg 0x4074df
cmp eax, 0x1f68c75c
jg 0x4074f6
cmp eax, 0x16c6ce8e
jg 0x40751d
cmp eax, 0xef8911c
jg 0x407541
cmp eax, 0xbbbc52f
jg 0x407558
cmp eax, 0x9c36450
jg 0x407572
cmp eax, 0x9944355
jg 0x407589
cmp eax, 0x66d4005
jg 0x4075a0
cmp eax, 0xfdaf3bd7
jg 0x4075b7
cmp eax, 0xfaa905b3
jg 0x4075c7
cmp eax, 0xf26559eb
jg 0x4075eb
cmp eax, 0xee3772f0
jg 0x407602
cmp eax, 0xed2e25ff
jg 0x407650
cmp eax, 0xe61354ca
jg 0x407667
cmp eax, 0xe4c69611
jg 0x4076ec
cmp eax, 0xdb86c284
je 0x407703
cmp eax, 0xdb8a2f30
jne 0x40770f
mov dword [ebp - 0x2c], 0x1f68c75d
jmp 0x406c40
cmp eax, 0x36fb9730
jne 0x406c40
mov dword [ebp - 0x2c], 0x488d7705
jmp 0x406c40
cmp eax, 0x36e3c12b
jne 0x406c40
mov eax, 4
call fcn.00417020
mov eax, 4
call fcn.00417020
mov dword [ebp - 0x30], esp
mov eax, 4
call fcn.00417020
mov dword [ebp - 0x34], esp
mov eax, 4
call fcn.00417020
mov dword [ebp - 0x38], esp
mov eax, 4
call fcn.00417020
mov edx, esp
mov eax, 4
call fcn.00417020
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], 0xe61354cb
jmp 0x406c40
cmp eax, 0x2f7c4b0e
jne 0x406c40
mov dword [ebp - 0x2c], 0x1f68c75d
jmp 0x406c40
cmp eax, 0x21b18618
jne 0x406c40
mov dword [ebp - 0x2c], 0x36fb9730
jmp 0x406c40
cmp eax, 0x213b1d2e
jne 0x406c40
mov dword [ebp - 0x2c], 0xbef9b776
jmp 0x406c40
cmp eax, 0x1f68c75d
jne 0x406c40
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax]
mov eax, 0xceebc7b9
cmp dword [ecx], 0
jne 0x407515
mov eax, 0xb6901353
mov dword [ebp - 0x2c], eax
jmp 0x406c40
cmp eax, 0x16c6ce8f
jne 0x406c40
mov al, byte [ebp - 0xf]
test al, al
mov eax, 0xcb631148
jne 0x407539
mov eax, 0x4c3c7397
mov dword [ebp - 0x2c], eax
jmp 0x406c40
cmp eax, 0xef8911d
jne 0x406c40
mov dword [ebp - 0x2c], 0x1f68c75d
jmp 0x406c40
cmp eax, 0xbbbc530
jne 0x406c40
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x2c], 0x488d7705
jmp 0x406c40
cmp eax, 0x9c36451
jne 0x406c40
mov dword [ebp - 0x2c], 0x4edce737
jmp 0x406c40
cmp eax, 0x9944356
jne 0x406c40
mov dword [ebp - 0x2c], 0xb14816d2
jmp 0x406c40
cmp eax, 0x66d4006
jne 0x406c40
mov dword [ebp - 0x2c], 0x213b1d2e
jmp 0x406c40
cmp eax, 0xfdaf3bd8
jne 0x406c40
jmp 0x407726
cmp eax, 0xfaa905b4
jne 0x406c40
mov al, byte [ebp - 0xe]
test al, al
mov eax, 0x4d1a5f31
jne 0x4075e3
mov eax, 0x66d4006
mov dword [ebp - 0x2c], eax
jmp 0x406c40
cmp eax, 0xf26559ec
jne 0x406c40
mov dword [ebp - 0x2c], 0x1f68c75d
jmp 0x406c40
cmp eax, 0xee3772f1
jne 0x406c40
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.00417419
add esp, 0x10
cmp eax, 4
mov eax, 0xef8911d
jne 0x407648
mov eax, 0xdb86c284
mov dword [ebp - 0x2c], eax
jmp 0x406c40
cmp eax, 0xed2e2600
jne 0x406c40
mov dword [ebp - 0x2c], 0x36fb9730
jmp 0x406c40
cmp eax, 0xe61354cb
jne 0x406c40
mov eax, 4
call fcn.00417020
mov dword [ebp - 0x28], esp
mov eax, 4
call fcn.00417020
mov dword [ebp - 0x24], esp
mov eax, 4
call fcn.00417020
mov dword [ebp - 0x20], esp
mov eax, 4
call fcn.00417020
mov dword [ebp - 0x1c], esp
mov eax, 4
call fcn.00417020
mov dword [ebp - 0x18], esp
mov eax, 4
call fcn.00417020
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], 0xed2e2600
jmp 0x406c40
cmp eax, 0xe4c69612
jne 0x406c40
mov dword [ebp - 0x2c], 0xe61354cb
jmp 0x406c40
mov dword [ebp - 0x2c], 0x57c51588
jmp 0x406c40
cmp eax, 0xe003aef0
jne 0x406c40
mov dword [ebp - 0x2c], 0x1f68c75d
jmp 0x406c40
mov eax, dword [ebp - 0x28]
mov eax, dword [eax]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret