Function at 0x406220
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4c
push ebx
push esi
push edi
sub esp, 0x18
mov esi, ecx
mov ecx, esp
push 0x431b8c
call fcn.00413990
lea ecx, [ebp - 0x48]
call fcn.00402910
add esp, 0x18
push eax
push ecx
lea ecx, [ebp - 0x30]
call fcn.00404ea0
add esp, 4
lea ecx, [ebp - 0x18]
mov edx, eax
call fcn.00413e40
add esp, 4
cmp dword [eax + 0x14], 0x10
jb 0x406267
mov eax, dword [eax]
mov edi, dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
push eax
call edi
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x40627b
xor bl, bl
jmp 0x406281
shr bl, 4
and bl, 1
mov edx, dword [ebp - 4]
cmp edx, 0x10
jb 0x4062b5
mov ecx, dword [ebp - 0x18]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4062ab
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407011
push edx
push ecx
call fcn.004152ae
add esp, 8
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 8], 0
mov dword [ebp - 4], 0xf
mov byte [ebp - 0x18], 0
cmp edx, 0x10
jb 0x4062fb
mov ecx, dword [ebp - 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4062f1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407011
push edx
push ecx
call fcn.004152ae
add esp, 8
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], 0
cmp edx, 0x10
jb 0x406341
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406337
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407011
push edx
push ecx
call fcn.004152ae
add esp, 8
test bl, bl
je 0x406351
push 1
push 0x42ee74
jmp 0x406ff0
sub esp, 0x18
mov ecx, esp
push 0x432114
call fcn.00413990
lea ecx, [ebp - 0x48]
call fcn.00402910
add esp, 0x18
push eax
push ecx
lea ecx, [ebp - 0x18]
call fcn.00404ea0
add esp, 4
lea ecx, [ebp - 0x30]
mov edx, eax
call fcn.00413e40
add esp, 4
cmp dword [eax + 0x14], 0x10
jb 0x40638d
mov eax, dword [eax]
push eax
call edi
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x40639b
xor bl, bl
jmp 0x4063a1
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x1c]
cmp edx, 0x10
jb 0x4063d5
mov ecx, dword [ebp - 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4063cb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407016
push edx
push ecx
call fcn.004152ae
add esp, 8
mov edx, dword [ebp - 4]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], 0
cmp edx, 0x10
jb 0x40641b
mov ecx, dword [ebp - 0x18]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406411
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407016
push edx
push ecx
call fcn.004152ae
add esp, 8
mov edx, dword [ebp - 0x34]
mov dword [ebp - 8], 0
mov dword [ebp - 4], 0xf
mov byte [ebp - 0x18], 0
cmp edx, 0x10
jb 0x406461
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406457
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407016
push edx
push ecx
call fcn.004152ae
add esp, 8
test bl, bl
je 0x406471
push 1
push 0x42ee78
jmp 0x406ff0
sub esp, 0x18
mov ecx, esp
push 0x431ea4
call fcn.00413990
lea ecx, [ebp - 0x48]
call fcn.00402910
add esp, 0x18
push eax
push ecx
lea ecx, [ebp - 0x18]
call fcn.00404ea0
add esp, 4
lea ecx, [ebp - 0x30]
mov edx, eax
call fcn.00413e40
add esp, 4
cmp dword [eax + 0x14], 0x10
jb 0x4064ad
mov eax, dword [eax]
push eax
call edi
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x4064bb
xor bl, bl
jmp 0x4064c1
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x1c]
cmp edx, 0x10
jb 0x4064f5
mov ecx, dword [ebp - 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4064eb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40701b
push edx
push ecx
call fcn.004152ae
add esp, 8
mov edx, dword [ebp - 4]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], 0
cmp edx, 0x10
jb 0x40653b
mov ecx, dword [ebp - 0x18]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406531
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40701b
push edx
push ecx
call fcn.004152ae
add esp, 8
mov edx, dword [ebp - 0x34]
mov dword [ebp - 8], 0
mov dword [ebp - 4], 0xf
mov byte [ebp - 0x18], 0
cmp edx, 0x10
jb 0x406581
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406577
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40701b
push edx
push ecx
call fcn.004152ae
add esp, 8
test bl, bl
je 0x406591
push 1
push 0x42ee7c
jmp 0x406ff0
sub esp, 0x18
mov ecx, esp
push 0x43257c
call fcn.00413990
lea ecx, [ebp - 0x48]
call fcn.00402910
add esp, 0x18
push eax
push ecx
lea ecx, [ebp - 0x18]
call fcn.00404ea0
add esp, 4
lea ecx, [ebp - 0x30]
mov edx, eax
call fcn.00413e40
add esp, 4
cmp dword [eax + 0x14], 0x10
jb 0x4065cd
mov eax, dword [eax]
push eax
call edi
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x4065db
xor bl, bl
jmp 0x4065e1
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x1c]
cmp edx, 0x10
jb 0x406615
mov ecx, dword [ebp - 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40660b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407020
push edx
push ecx
call fcn.004152ae
add esp, 8
mov edx, dword [ebp - 4]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], 0
cmp edx, 0x10
jb 0x40665b
mov ecx, dword [ebp - 0x18]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406651
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407020
push edx
push ecx
call fcn.004152ae
add esp, 8
mov edx, dword [ebp - 0x34]
mov dword [ebp - 8], 0
mov dword [ebp - 4], 0xf
mov byte [ebp - 0x18], 0
cmp edx, 0x10
jb 0x4066a1
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406697
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407020
push edx
push ecx
call fcn.004152ae
add esp, 8
test bl, bl
je 0x4066b1
push 1
push 0x42ee80
jmp 0x406ff0
sub esp, 0x18
mov ecx, esp
push 0x432384
call fcn.00413990
lea ecx, [ebp - 0x48]
call fcn.00402910
add esp, 0x18
push eax
push ecx
lea ecx, [ebp - 0x18]
call fcn.00404ea0
add esp, 4
lea ecx, [ebp - 0x30]
mov edx, eax
call fcn.00413e40
add esp, 4
cmp dword [eax + 0x14], 0x10
jb 0x4066ed
mov eax, dword [eax]
push eax
call edi
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x4066fb
xor bl, bl
jmp 0x406701
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x1c]
cmp edx, 0x10
jb 0x406735
mov ecx, dword [ebp - 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40672b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407025
push edx
push ecx
call fcn.004152ae
add esp, 8
mov edx, dword [ebp - 4]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], 0
cmp edx, 0x10
jb 0x40677b
mov ecx, dword [ebp - 0x18]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406771
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407025
push edx
push ecx
call fcn.004152ae
add esp, 8
mov edx, dword [ebp - 0x34]
mov dword [ebp - 8], 0
mov dword [ebp - 4], 0xf
mov byte [ebp - 0x18], 0
cmp edx, 0x10
jb 0x4067c1
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4067b7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407025
push edx
push ecx
call fcn.004152ae
add esp, 8
test bl, bl
je 0x4067d1
push 1
push 0x42ee84
jmp 0x406ff0
sub esp, 0x18
mov ecx, esp
push 0x4319c4
call fcn.00413990
lea ecx, [ebp - 0x48]
call fcn.00402910
add esp, 0x18
push eax
push ecx
lea ecx, [ebp - 0x18]
call fcn.00404ea0
add esp, 4
lea ecx, [ebp - 0x30]
mov edx, eax
call fcn.00413e40
add esp, 4
cmp dword [eax + 0x14], 0x10
jb 0x40680d
mov eax, dword [eax]
push eax
call edi
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x40681b
xor bl, bl
jmp 0x406821
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x1c]
cmp edx, 0x10
jb 0x406855
mov ecx, dword [ebp - 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40684b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40702a
push edx
push ecx
call fcn.004152ae
add esp, 8
mov edx, dword [ebp - 4]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], 0
cmp edx, 0x10
jb 0x40689b
mov ecx, dword [ebp - 0x18]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406891
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40702a
push edx
push ecx
call fcn.004152ae
add esp, 8
mov edx, dword [ebp - 0x34]
mov dword [ebp - 8], 0
mov dword [ebp - 4], 0xf
mov byte [ebp - 0x18], 0
cmp edx, 0x10
jb 0x4068e1
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4068d7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40702a
push edx
push ecx
call fcn.004152ae
add esp, 8
test bl, bl
je 0x4068f1
push 1
push 0x42ee88
jmp 0x406ff0
sub esp, 0x18
mov ecx, esp
push 0x431c64
call fcn.00413990
lea ecx, [ebp - 0x48]
call fcn.00402910
add esp, 0x18
push eax
push ecx
lea ecx, [ebp - 0x18]
call fcn.00404ea0
add esp, 4
lea ecx, [ebp - 0x30]
mov edx, eax
call fcn.00413e40
add esp, 4
cmp dword [eax + 0x14], 0x10
jb 0x40692d
mov eax, dword [eax]
push eax
call edi
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x40693b
xor bl, bl
jmp 0x406941
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x1c]
cmp edx, 0x10
jb 0x406975
mov ecx, dword [ebp - 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40696b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40702f
push edx
push ecx
call fcn.004152ae
add esp, 8
mov edx, dword [ebp - 4]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], 0
cmp edx, 0x10
jb 0x4069bb
mov ecx, dword [ebp - 0x18]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4069b1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40702f
push edx
push ecx
call fcn.004152ae
add esp, 8
mov edx, dword [ebp - 0x34]
mov dword [ebp - 8], 0
mov dword [ebp - 4], 0xf
mov byte [ebp - 0x18], 0
cmp edx, 0x10
jb 0x406a01
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4069f7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40702f
push edx
push ecx
call fcn.004152ae
add esp, 8
test bl, bl
je 0x406a11
push 1
push 0x42ee8c
jmp 0x406ff0
sub esp, 0x18
mov ecx, esp
push 0x431e5c
call fcn.00413990
lea ecx, [ebp - 0x48]
call fcn.00402910
add esp, 0x18
push eax
push ecx
lea ecx, [ebp - 0x18]
call fcn.00404ea0
add esp, 4
lea ecx, [ebp - 0x30]
mov edx, eax
call fcn.00413e40
add esp, 4
cmp dword [eax + 0x14], 0x10
jb 0x406a4d
mov eax, dword [eax]
push eax
call edi
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x406a5b
xor bl, bl
jmp 0x406a61
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x1c]
cmp edx, 0x10
jb 0x406a95
mov ecx, dword [ebp - 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406a8b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407034
push edx
push ecx
call fcn.004152ae
add esp, 8
mov edx, dword [ebp - 4]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], 0
cmp edx, 0x10
jb 0x406adb
mov ecx, dword [ebp - 0x18]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406ad1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407034
push edx
push ecx
call fcn.004152ae
add esp, 8
mov edx, dword [ebp - 0x34]
mov dword [ebp - 8], 0
mov dword [ebp - 4], 0xf
mov byte [ebp - 0x18], 0
cmp edx, 0x10
jb 0x406b21
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406b17
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407034
push edx
push ecx
call fcn.004152ae
add esp, 8
test bl, bl
je 0x406b31
push 1
push 0x42ee90
jmp 0x406ff0
sub esp, 0x18
mov ecx, esp
push 0x431bec
call fcn.00413990
lea ecx, [ebp - 0x48]
call fcn.00402910
add esp, 0x18
push eax
push ecx
lea ecx, [ebp - 0x18]
call fcn.00404ea0
add esp, 4
lea ecx, [ebp - 0x30]
mov edx, eax
call fcn.00413e40
add esp, 4
cmp dword [eax + 0x14], 0x10
jb 0x406b6d
mov eax, dword [eax]
push eax
call edi
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x406b7b
xor bl, bl
jmp 0x406b81
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x1c]
cmp edx, 0x10
jb 0x406bb5
mov ecx, dword [ebp - 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406bab
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407039
push edx
push ecx
call fcn.004152ae
add esp, 8
mov edx, dword [ebp - 4]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], 0
cmp edx, 0x10
jb 0x406bfb
mov ecx, dword [ebp - 0x18]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406bf1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407039
push edx
push ecx
call fcn.004152ae
add esp, 8
mov edx, dword [ebp - 0x34]
mov dword [ebp - 8], 0
mov dword [ebp - 4], 0xf
mov byte [ebp - 0x18], 0
cmp edx, 0x10
jb 0x406c41
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406c37
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407039
push edx
push ecx
call fcn.004152ae
add esp, 8
test bl, bl
je 0x406c51
push 1
push 0x42ee94
jmp 0x406ff0
sub esp, 0x18
mov ecx, esp
push 0x431de4
call fcn.00413990
lea ecx, [ebp - 0x48]
call fcn.00402910
add esp, 0x18
push eax
push ecx
lea ecx, [ebp - 0x18]
call fcn.00404ea0
add esp, 4
lea ecx, [ebp - 0x30]
mov edx, eax
call fcn.00413e40
add esp, 4
cmp dword [eax + 0x14], 0x10
jb 0x406c8d
mov eax, dword [eax]
push eax
call edi
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x406c9b
xor bl, bl
jmp 0x406ca1
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x1c]
cmp edx, 0x10
jb 0x406cd5
mov ecx, dword [ebp - 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406ccb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40703e
push edx
push ecx
call fcn.004152ae
add esp, 8
mov edx, dword [ebp - 4]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], 0
cmp edx, 0x10
jb 0x406d1b
mov ecx, dword [ebp - 0x18]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406d11
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40703e
push edx
push ecx
call fcn.004152ae
add esp, 8
mov edx, dword [ebp - 0x34]
mov dword [ebp - 8], 0
mov dword [ebp - 4], 0xf
mov byte [ebp - 0x18], 0
cmp edx, 0x10
jb 0x406d61
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406d57
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40703e
push edx
push ecx
call fcn.004152ae
add esp, 8
test bl, bl
je 0x406d71
push 2
push 0x42eee0
jmp 0x406ff0
sub esp, 0x18
mov ecx, esp
push 0x431f7c
call fcn.00413990
lea ecx, [ebp - 0x48]
call fcn.00402910
add esp, 0x18
push eax
push ecx
lea ecx, [ebp - 0x18]
call fcn.00404ea0
add esp, 4
lea ecx, [ebp - 0x30]
mov edx, eax
call fcn.00413e40
add esp, 4
cmp dword [eax + 0x14], 0x10
jb 0x406dad
mov eax, dword [eax]
push eax
call edi
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x406dbb
xor bl, bl
jmp 0x406dc1
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x1c]
cmp edx, 0x10
jb 0x406df5
mov ecx, dword [ebp - 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406deb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407043
push edx
push ecx
call fcn.004152ae
add esp, 8
mov edx, dword [ebp - 4]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], 0
cmp edx, 0x10
jb 0x406e3b
mov ecx, dword [ebp - 0x18]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406e31
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407043
push edx
push ecx
call fcn.004152ae
add esp, 8
mov edx, dword [ebp - 0x34]
mov dword [ebp - 8], 0
mov dword [ebp - 4], 0xf
mov byte [ebp - 0x18], 0
cmp edx, 0x10
jb 0x406e81
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406e77
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407043
push edx
push ecx
call fcn.004152ae
add esp, 8
test bl, bl
je 0x406e91
push 2
push 0x42eee4
jmp 0x406ff0
sub esp, 0x18
mov ecx, esp
push 0x43230c
call fcn.00413990
lea ecx, [ebp - 0x48]
call fcn.00402910
add esp, 0x18
push eax
push ecx
lea ecx, [ebp - 0x18]
call fcn.00404ea0
add esp, 4
lea ecx, [ebp - 0x30]
mov edx, eax
call fcn.00413e40
add esp, 4
cmp dword [eax + 0x14], 0x10
jb 0x406ecd
mov eax, dword [eax]
push eax
call edi
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x406edb
xor bl, bl
jmp 0x406ee1
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x1c]
cmp edx, 0x10
jb 0x406f15
mov ecx, dword [ebp - 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406f0b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407048
push edx
push ecx
call fcn.004152ae
add esp, 8
mov edx, dword [ebp - 4]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], 0
cmp edx, 0x10
jb 0x406f5b
mov ecx, dword [ebp - 0x18]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406f51
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407048
push edx
push ecx
call fcn.004152ae
add esp, 8
mov edx, dword [ebp - 0x34]
mov dword [ebp - 8], 0
mov dword [ebp - 4], 0xf
mov byte [ebp - 0x18], 0
cmp edx, 0x10
jb 0x406fa1
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406f97
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407048
push edx
push ecx
call fcn.004152ae
add esp, 8
test bl, bl
je 0x406fae
push 2
push 0x42eee8
jmp 0x406ff0
call fcn.00403e60
cmp eax, 1
je 0x406fe9
call fcn.00403e60
cmp eax, 2
je 0x406fe9
call fcn.00403e60
cmp eax, 0x10
je 0x406fe9
call fcn.00403e60
cmp eax, 0x11
je 0x406fe9
call fcn.00403e60
cmp eax, 0x12
je 0x406fe9
push 1
push str.0123456789
jmp 0x406ff0
push 2
push 0x42eeec
mov dword [esi + 0x10], 0
mov ecx, esi
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
call fcn.00413cf0
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.004186fc
call fcn.004186fc
call fcn.004186fc
call fcn.004186fc
call fcn.004186fc
call fcn.004186fc
call fcn.004186fc
call fcn.004186fc
call fcn.004186fc
call fcn.004186fc
call fcn.004186fc
call fcn.004186fc
int3