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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x30aad0
mov eax, dword fs:[0]
push eax
sub esp, 0x4c
push ebx
push esi
push edi
mov eax, dword [0x324014]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x10], edi
sub esp, 0x18
mov dword [ebp - 0x10], edi
mov ecx, esp
push 0x324c38
call fcn.002d84d0
lea ecx, [ebp - 0x58]
call fcn.002c5ec0
mov esi, eax
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0
call fcn.002c8ed0
push esi
mov edx, eax
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x28]
call fcn.002d8e50
add esp, 0x1c
cmp dword [eax + 0x14], 0x10
jb 0x2c9e12
mov eax, dword [eax]
push eax
call dword [0x311088]
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x2c9e24
xor bl, bl
jmp 0x2c9e2a
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x14]
cmp edx, 0x10
jb 0x2c9e5e
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2c9e54
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cacb7
push edx
push ecx
call fcn.002de298
add esp, 8
mov byte [ebp - 4], 0
mov edx, dword [ebp - 0x2c]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
cmp edx, 0x10
jb 0x2c9ea8
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2c9e9e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cacb7
push edx
push ecx
call fcn.002de298
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
cmp edx, 0x10
jb 0x2c9ef5
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2c9eeb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cacb7
push edx
push ecx
call fcn.002de298
add esp, 8
test bl, bl
je 0x2c9f05
push 1
push 0x319d7c
jmp 0x2cac8b
sub esp, 0x18
mov ecx, esp
push 0x3251a8
call fcn.002d84d0
lea ecx, [ebp - 0x58]
call fcn.002c5ec0
mov esi, eax
lea ecx, [ebp - 0x28]
mov dword [ebp - 4], 2
call fcn.002c8ed0
push esi
mov edx, eax
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x40]
call fcn.002d8e50
add esp, 0x1c
cmp dword [eax + 0x14], 0x10
jb 0x2c9f47
mov eax, dword [eax]
push eax
call dword [0x311088]
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x2c9f59
xor bl, bl
jmp 0x2c9f5f
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x2c]
cmp edx, 0x10
jb 0x2c9f93
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2c9f89
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cacbc
push edx
push ecx
call fcn.002de298
add esp, 8
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
cmp edx, 0x10
jb 0x2c9fdd
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2c9fd3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cacbc
push edx
push ecx
call fcn.002de298
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
cmp edx, 0x10
jb 0x2ca02a
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2ca020
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cacbc
push edx
push ecx
call fcn.002de298
add esp, 8
test bl, bl
je 0x2ca03a
push 1
push 0x319d80
jmp 0x2cac8b
sub esp, 0x18
mov ecx, esp
push 0x324f50
call fcn.002d84d0
lea ecx, [ebp - 0x58]
call fcn.002c5ec0
mov esi, eax
lea ecx, [ebp - 0x28]
mov dword [ebp - 4], 4
call fcn.002c8ed0
push esi
mov edx, eax
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x40]
call fcn.002d8e50
add esp, 0x1c
cmp dword [eax + 0x14], 0x10
jb 0x2ca07c
mov eax, dword [eax]
push eax
call dword [0x311088]
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x2ca08e
xor bl, bl
jmp 0x2ca094
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x2c]
cmp edx, 0x10
jb 0x2ca0c8
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2ca0be
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cacc1
push edx
push ecx
call fcn.002de298
add esp, 8
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
cmp edx, 0x10
jb 0x2ca112
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2ca108
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cacc1
push edx
push ecx
call fcn.002de298
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
cmp edx, 0x10
jb 0x2ca15f
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2ca155
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cacc1
push edx
push ecx
call fcn.002de298
add esp, 8
test bl, bl
je 0x2ca16f
push 1
push 0x319d84
jmp 0x2cac8b
sub esp, 0x18
mov ecx, esp
push 0x325598
call fcn.002d84d0
lea ecx, [ebp - 0x58]
call fcn.002c5ec0
mov esi, eax
lea ecx, [ebp - 0x28]
mov dword [ebp - 4], 6
call fcn.002c8ed0
push esi
mov edx, eax
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x40]
call fcn.002d8e50
add esp, 0x1c
cmp dword [eax + 0x14], 0x10
jb 0x2ca1b1
mov eax, dword [eax]
push eax
call dword [0x311088]
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x2ca1c3
xor bl, bl
jmp 0x2ca1c9
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x2c]
cmp edx, 0x10
jb 0x2ca1fd
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2ca1f3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cacc6
push edx
push ecx
call fcn.002de298
add esp, 8
mov byte [ebp - 4], 6
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
cmp edx, 0x10
jb 0x2ca247
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2ca23d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cacc6
push edx
push ecx
call fcn.002de298
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
cmp edx, 0x10
jb 0x2ca294
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2ca28a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cacc6
push edx
push ecx
call fcn.002de298
add esp, 8
test bl, bl
je 0x2ca2a4
push 1
push 0x319d88
jmp 0x2cac8b
sub esp, 0x18
mov ecx, esp
push 0x325400
call fcn.002d84d0
lea ecx, [ebp - 0x58]
call fcn.002c5ec0
mov esi, eax
lea ecx, [ebp - 0x28]
mov dword [ebp - 4], 8
call fcn.002c8ed0
push esi
mov edx, eax
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x40]
call fcn.002d8e50
add esp, 0x1c
cmp dword [eax + 0x14], 0x10
jb 0x2ca2e6
mov eax, dword [eax]
push eax
call dword [0x311088]
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x2ca2f8
xor bl, bl
jmp 0x2ca2fe
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x2c]
cmp edx, 0x10
jb 0x2ca332
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2ca328
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2caccb
push edx
push ecx
call fcn.002de298
add esp, 8
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
cmp edx, 0x10
jb 0x2ca37c
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2ca372
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2caccb
push edx
push ecx
call fcn.002de298
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
cmp edx, 0x10
jb 0x2ca3c9
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2ca3bf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2caccb
push edx
push ecx
call fcn.002de298
add esp, 8
test bl, bl
je 0x2ca3d9
push 1
push 0x319d8c
jmp 0x2cac8b
sub esp, 0x18
mov ecx, esp
push 0x324a28
call fcn.002d84d0
lea ecx, [ebp - 0x58]
call fcn.002c5ec0
mov esi, eax
lea ecx, [ebp - 0x28]
mov dword [ebp - 4], 0xa
call fcn.002c8ed0
push esi
mov edx, eax
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x40]
call fcn.002d8e50
add esp, 0x1c
cmp dword [eax + 0x14], 0x10
jb 0x2ca41b
mov eax, dword [eax]
push eax
call dword [0x311088]
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x2ca42d
xor bl, bl
jmp 0x2ca433
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x2c]
cmp edx, 0x10
jb 0x2ca467
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2ca45d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cacd0
push edx
push ecx
call fcn.002de298
add esp, 8
mov byte [ebp - 4], 0xa
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
cmp edx, 0x10
jb 0x2ca4b1
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2ca4a7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cacd0
push edx
push ecx
call fcn.002de298
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
cmp edx, 0x10
jb 0x2ca4fe
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2ca4f4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cacd0
push edx
push ecx
call fcn.002de298
add esp, 8
test bl, bl
je 0x2ca50e
push 1
push 0x319d90
jmp 0x2cac8b
sub esp, 0x18
mov ecx, esp
push 0x324cf8
call fcn.002d84d0
lea ecx, [ebp - 0x58]
call fcn.002c5ec0
mov esi, eax
lea ecx, [ebp - 0x28]
mov dword [ebp - 4], 0xc
call fcn.002c8ed0
push esi
mov edx, eax
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x40]
call fcn.002d8e50
add esp, 0x1c
cmp dword [eax + 0x14], 0x10
jb 0x2ca550
mov eax, dword [eax]
push eax
call dword [0x311088]
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x2ca562
xor bl, bl
jmp 0x2ca568
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x2c]
cmp edx, 0x10
jb 0x2ca59c
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2ca592
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cacd5
push edx
push ecx
call fcn.002de298
add esp, 8
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
cmp edx, 0x10
jb 0x2ca5e6
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2ca5dc
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cacd5
push edx
push ecx
call fcn.002de298
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
cmp edx, 0x10
jb 0x2ca633
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2ca629
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cacd5
push edx
push ecx
call fcn.002de298
add esp, 8
test bl, bl
je 0x2ca643
push 1
push 0x319d94
jmp 0x2cac8b
sub esp, 0x18
mov ecx, esp
push 0x324ef0
call fcn.002d84d0
lea ecx, [ebp - 0x58]
call fcn.002c5ec0
mov esi, eax
lea ecx, [ebp - 0x28]
mov dword [ebp - 4], 0xe
call fcn.002c8ed0
push esi
mov edx, eax
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x40]
call fcn.002d8e50
add esp, 0x1c
cmp dword [eax + 0x14], 0x10
jb 0x2ca685
mov eax, dword [eax]
push eax
call dword [0x311088]
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x2ca697
xor bl, bl
jmp 0x2ca69d
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x2c]
cmp edx, 0x10
jb 0x2ca6d1
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2ca6c7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cacda
push edx
push ecx
call fcn.002de298
add esp, 8
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
cmp edx, 0x10
jb 0x2ca71b
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2ca711
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cacda
push edx
push ecx
call fcn.002de298
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
cmp edx, 0x10
jb 0x2ca768
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2ca75e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cacda
push edx
push ecx
call fcn.002de298
add esp, 8
test bl, bl
je 0x2ca778
push 1
push 0x319d98
jmp 0x2cac8b
sub esp, 0x18
mov ecx, esp
push 0x324c80
call fcn.002d84d0
lea ecx, [ebp - 0x58]
call fcn.002c5ec0
mov esi, eax
lea ecx, [ebp - 0x28]
mov dword [ebp - 4], 0x10
call fcn.002c8ed0
push esi
mov edx, eax
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x40]
call fcn.002d8e50
add esp, 0x1c
cmp dword [eax + 0x14], 0x10
jb 0x2ca7ba
mov eax, dword [eax]
push eax
call dword [0x311088]
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x2ca7cc
xor bl, bl
jmp 0x2ca7d2
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x2c]
cmp edx, 0x10
jb 0x2ca806
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2ca7fc
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cacdf
push edx
push ecx
call fcn.002de298
add esp, 8
mov byte [ebp - 4], 0x10
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
cmp edx, 0x10
jb 0x2ca850
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2ca846
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cacdf
push edx
push ecx
call fcn.002de298
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
cmp edx, 0x10
jb 0x2ca89d
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2ca893
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cacdf
push edx
push ecx
call fcn.002de298
add esp, 8
test bl, bl
je 0x2ca8ad
push 1
push 0x319d9c
jmp 0x2cac8b
sub esp, 0x18
mov ecx, esp
push 0x324e78
call fcn.002d84d0
lea ecx, [ebp - 0x58]
call fcn.002c5ec0
mov esi, eax
lea ecx, [ebp - 0x28]
mov dword [ebp - 4], 0x12
call fcn.002c8ed0
push esi
mov edx, eax
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x40]
call fcn.002d8e50
add esp, 0x1c
cmp dword [eax + 0x14], 0x10
jb 0x2ca8ef
mov eax, dword [eax]
push eax
call dword [0x311088]
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x2ca901
xor bl, bl
jmp 0x2ca907
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x2c]
cmp edx, 0x10
jb 0x2ca93b
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2ca931
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cace4
push edx
push ecx
call fcn.002de298
add esp, 8
mov byte [ebp - 4], 0x12
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
cmp edx, 0x10
jb 0x2ca985
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2ca97b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cace4
push edx
push ecx
call fcn.002de298
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
cmp edx, 0x10
jb 0x2ca9d2
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2ca9c8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cace4
push edx
push ecx
call fcn.002de298
add esp, 8
test bl, bl
je 0x2ca9e2
push 2
push 0x319de8
jmp 0x2cac8b
sub esp, 0x18
mov ecx, esp
push 0x324ff8
call fcn.002d84d0
lea ecx, [ebp - 0x58]
call fcn.002c5ec0
mov esi, eax
lea ecx, [ebp - 0x28]
mov dword [ebp - 4], 0x14
call fcn.002c8ed0
push esi
mov edx, eax
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x40]
call fcn.002d8e50
add esp, 0x1c
cmp dword [eax + 0x14], 0x10
jb 0x2caa24
mov eax, dword [eax]
push eax
call dword [0x311088]
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x2caa36
xor bl, bl
jmp 0x2caa3c
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x2c]
cmp edx, 0x10
jb 0x2caa70
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2caa66
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cace9
push edx
push ecx
call fcn.002de298
add esp, 8
mov byte [ebp - 4], 0x14
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
cmp edx, 0x10
jb 0x2caaba
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2caab0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cace9
push edx
push ecx
call fcn.002de298
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
cmp edx, 0x10
jb 0x2cab07
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2caafd
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cace9
push edx
push ecx
call fcn.002de298
add esp, 8
test bl, bl
je 0x2cab17
push 2
push 0x319dec
jmp 0x2cac8b
sub esp, 0x18
mov ecx, esp
push 0x3253a0
call fcn.002d84d0
lea ecx, [ebp - 0x58]
call fcn.002c5ec0
mov esi, eax
lea ecx, [ebp - 0x28]
mov dword [ebp - 4], 0x16
call fcn.002c8ed0
push esi
mov edx, eax
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x40]
call fcn.002d8e50
add esp, 0x1c
cmp dword [eax + 0x14], 0x10
jb 0x2cab59
mov eax, dword [eax]
push eax
call dword [0x311088]
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x2cab6b
xor bl, bl
jmp 0x2cab71
shr bl, 4
and bl, 1
mov edx, dword [ebp - 0x2c]
cmp edx, 0x10
jb 0x2caba5
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2cab9b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cacee
push edx
push ecx
call fcn.002de298
add esp, 8
mov byte [ebp - 4], 0x16
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
cmp edx, 0x10
jb 0x2cabef
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2cabe5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cacee
push edx
push ecx
call fcn.002de298
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
cmp edx, 0x10
jb 0x2cac3c
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x2cac32
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x2cacee
push edx
push ecx
call fcn.002de298
add esp, 8
test bl, bl
je 0x2cac49
push 2
push 0x319df0
jmp 0x2cac8b
call fcn.002c8180
cmp eax, 1
je 0x2cac84
call fcn.002c8180
cmp eax, 2
je 0x2cac84
call fcn.002c8180
cmp eax, 0x10
je 0x2cac84
call fcn.002c8180
cmp eax, 0x11
je 0x2cac84
call fcn.002c8180
cmp eax, 0x12
je 0x2cac84
push 1
push str.0123456789
jmp 0x2cac8b
push 2
push 0x319df4
mov dword [edi + 0x10], 0
mov ecx, edi
mov dword [edi + 0x14], 0xf
mov byte [edi], 0
call fcn.002d8cf0
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.002f789a
call fcn.002f789a
call fcn.002f789a
call fcn.002f789a
call fcn.002f789a
call fcn.002f789a
call fcn.002f789a
call fcn.002f789a
call fcn.002f789a
call fcn.002f789a
call fcn.002f789a
call fcn.002f789a
int3