Function at 0x1005ecb0
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x254
mov eax, dword [ebp + 8]
mov ecx, eax
push ebx
push esi
push edi
push 8
push 0x100337d0
mov dword [eax], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
call fcn.1003ae40
push 0x31
push 0x100337dc
lea ecx, [esp + 0x24c]
mov dword [esp + 0x24c], 0
mov dword [esp + 0x25c], 0
mov dword [esp + 0x260], 0xf
call fcn.1003ae40
push 4
push 0x10033810
lea ecx, [esp + 0x98]
mov dword [esp + 0x98], 0
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], 0xf
call fcn.1003ae40
push 0x1b
push 0x10033818
lea ecx, [esp + 0xb0]
mov dword [esp + 0xb0], 0
mov dword [esp + 0xc0], 0
mov dword [esp + 0xc4], 0xf
call fcn.1003ae40
push 0xd
push 0x10033834
lea ecx, [esp + 0xc8]
mov dword [esp + 0xc8], 0
mov dword [esp + 0xd8], 0
mov dword [esp + 0xdc], 0xf
call fcn.1003ae40
push 0x10
push 0x10033844
lea ecx, [esp + 0xe0]
mov dword [esp + 0xe0], 0
mov dword [esp + 0xf0], 0
mov dword [esp + 0xf4], 0xf
call fcn.1003ae40
push 0x27
push 0x10033858
lea ecx, [esp + 0xf8]
mov dword [esp + 0xf8], 0
mov dword [esp + 0x108], 0
mov dword [esp + 0x10c], 0xf
call fcn.1003ae40
push 5
push 0x10033880
lea ecx, [esp + 0x110]
mov dword [esp + 0x110], 0
mov dword [esp + 0x120], 0
mov dword [esp + 0x124], 0xf
call fcn.1003ae40
push 8
push 0x10033888
lea ecx, [esp + 0x128]
mov dword [esp + 0x128], 0
mov dword [esp + 0x138], 0
mov dword [esp + 0x13c], 0xf
call fcn.1003ae40
push 0xa
push 0x10033894
lea ecx, [esp + 0x140]
mov dword [esp + 0x140], 0
mov dword [esp + 0x150], 0
mov dword [esp + 0x154], 0xf
call fcn.1003ae40
push 5
push 0x100338a0
lea ecx, [esp + 0x158]
mov dword [esp + 0x158], 0
mov dword [esp + 0x168], 0
mov dword [esp + 0x16c], 0xf
call fcn.1003ae40
push 0x10
push 0x100338a8
lea ecx, [esp + 0x170]
mov dword [esp + 0x170], 0
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0xf
call fcn.1003ae40
push 0xa
push 0x100338bc
lea ecx, [esp + 0x188]
mov dword [esp + 0x188], 0
mov dword [esp + 0x198], 0
mov dword [esp + 0x19c], 0xf
call fcn.1003ae40
push 0xa
push 0x100338c8
lea ecx, [esp + 0x1a0]
mov dword [esp + 0x1a0], 0
mov dword [esp + 0x1b0], 0
mov dword [esp + 0x1b4], 0xf
call fcn.1003ae40
push 0x15
push 0x100338d4
lea ecx, [esp + 0x1b8]
mov dword [esp + 0x1b8], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], 0xf
call fcn.1003ae40
push 0x22
push 0x100338ec
lea ecx, [esp + 0x1d0]
mov dword [esp + 0x1d0], 0
mov dword [esp + 0x1e0], 0
mov dword [esp + 0x1e4], 0xf
call fcn.1003ae40
push 0x12
push 0x10033910
lea ecx, [esp + 0x1e8]
mov dword [esp + 0x1e8], 0
mov dword [esp + 0x1f8], 0
mov dword [esp + 0x1fc], 0xf
call fcn.1003ae40
push 0x1c
push 0x10033924
lea ecx, [esp + 0x200]
mov dword [esp + 0x200], 0
mov dword [esp + 0x210], 0
mov dword [esp + 0x214], 0xf
call fcn.1003ae40
push 0x13
push 0x10033944
lea ecx, [esp + 0x218]
mov dword [esp + 0x218], 0
mov dword [esp + 0x228], 0
mov dword [esp + 0x22c], 0xf
call fcn.1003ae40
push 0x1b
push 0x10033958
lea ecx, [esp + 0x230]
mov dword [esp + 0x230], 0
mov dword [esp + 0x240], 0
mov dword [esp + 0x244], 0xf
call fcn.1003ae40
lea ecx, [esp + 0x90]
push ecx
lea eax, [esp + 0x244]
push eax
push ecx
lea ecx, [esp + 0x60]
call fcn.100785e0
push 0x1003adf0
push 0x12
push 0x18
lea eax, [esp + 0x9c]
push eax
call fcn.10079b58
push 0x1b
mov dword [esp + 0x64], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0xf
push 0x10033974
lea ecx, [esp + 0x68]
call fcn.1003ae40
push 2
push 0x10033990
lea ecx, [esp + 0x80]
mov dword [esp + 0x80], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0xf
call fcn.1003ae40
lea ecx, [esp + 0x60]
push ecx
lea eax, [esp + 0x94]
push eax
push ecx
lea ecx, [esp + 0x54]
call fcn.100785e0
push 0x1003adf0
push 2
push 0x18
lea eax, [esp + 0x6c]
push eax
call fcn.10079b58
push 0xe
push 0x10033994
lea ecx, [esp + 0x98]
mov dword [esp + 0x98], 0
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], 0xf
call fcn.1003ae40
push 0x19
push 0x100339a4
lea ecx, [esp + 0xb0]
mov dword [esp + 0xb0], 0
mov dword [esp + 0xc0], 0
mov dword [esp + 0xc4], 0xf
call fcn.1003ae40
push 0x19
push 0x100339c0
lea ecx, [esp + 0xc8]
mov dword [esp + 0xc8], 0
mov dword [esp + 0xd8], 0
mov dword [esp + 0xdc], 0xf
call fcn.1003ae40
push 9
push 0x100339dc
lea ecx, [esp + 0xe0]
mov dword [esp + 0xe0], 0
mov dword [esp + 0xf0], 0
mov dword [esp + 0xf4], 0xf
call fcn.1003ae40
push 0x13
push 0x100339e8
lea ecx, [esp + 0xf8]
mov dword [esp + 0xf8], 0
mov dword [esp + 0x108], 0
mov dword [esp + 0x10c], 0xf
call fcn.1003ae40
push 0x1f
push 0x100339fc
lea ecx, [esp + 0x110]
mov dword [esp + 0x110], 0
mov dword [esp + 0x120], 0
mov dword [esp + 0x124], 0xf
call fcn.1003ae40
push 0xe
push 0x10033a1c
lea ecx, [esp + 0x128]
mov dword [esp + 0x128], 0
mov dword [esp + 0x138], 0
mov dword [esp + 0x13c], 0xf
call fcn.1003ae40
push 0x18
push 0x10033a2c
lea ecx, [esp + 0x140]
mov dword [esp + 0x140], 0
mov dword [esp + 0x150], 0
mov dword [esp + 0x154], 0xf
call fcn.1003ae40
mov dword [esp + 0x150], 0
mov dword [esp + 0x160], 0
mov dword [esp + 0x164], 0xf
push 0x27
push 0x10033a48
lea ecx, [esp + 0x158]
call fcn.1003ae40
push 0x17
push 0x10033a70
lea ecx, [esp + 0x170]
mov dword [esp + 0x170], 0
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0xf
call fcn.1003ae40
push 8
push 0x10033a88
lea ecx, [esp + 0x188]
mov dword [esp + 0x188], 0
mov dword [esp + 0x198], 0
mov dword [esp + 0x19c], 0xf
call fcn.1003ae40
push 0x1e
push 0x10033a94
lea ecx, [esp + 0x1a0]
mov dword [esp + 0x1a0], 0
mov dword [esp + 0x1b0], 0
mov dword [esp + 0x1b4], 0xf
call fcn.1003ae40
push 6
push 0x10033ab4
lea ecx, [esp + 0x1b8]
mov dword [esp + 0x1b8], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], 0xf
call fcn.1003ae40
push 0x22
push 0x10033abc
lea ecx, [esp + 0x1d0]
mov dword [esp + 0x1d0], 0
mov dword [esp + 0x1e0], 0
mov dword [esp + 0x1e4], 0xf
call fcn.1003ae40
lea ecx, [esp + 0x90]
push ecx
lea eax, [esp + 0x1e4]
push eax
push ecx
lea ecx, [esp + 0x48]
call fcn.100785e0
push 0x1003adf0
push 0xe
push 0x18
lea eax, [esp + 0x9c]
push eax
call fcn.10079b58
mov ecx, 0x2e
mov dword [esp + 0xc], 0
cmp dword [0x1009d144], ecx
mov eax, 0x1009d134
mov dword [esp + 0x1c], 0
cmovb ecx, dword [0x1009d144]
cmp dword [0x1009d148], 0x10
push ecx
cmovae eax, dword [0x1009d134]
lea ecx, [esp + 0x10]
push eax
mov dword [esp + 0x28], 0xf
call fcn.1003ae40
mov eax, dword [esp + 0x1c]
add eax, dword [0x10002794]
add dword [0x100027b8], eax
mov edx, dword [esp + 0x20]
cmp edx, 0x10
jb 0x1005f50c
mov ecx, dword [esp + 0xc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1005f502
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1005fe45
push edx
push ecx
call fcn.10079b22
add esp, 8
cmp dword [0x1009d0b0], 0xab
jae 0x1005f56f
push 0x1009d14c
mov edx, 0x1009d224
lea ecx, [esp + 0x28]
call fcn.100789e0
add esp, 4
mov ecx, 0x1009d0a0
push eax
call fcn.1003b590
mov edx, dword [esp + 0x38]
cmp edx, 0x10
jb 0x1005f56f
mov ecx, dword [esp + 0x24]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1005f565
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1005fe22
push edx
push ecx
call fcn.10079b22
add esp, 8
push dword [esp + 0x25c]
lea ecx, [esp + 0x4c]
push dword [esp + 0x44]
push dword [esp + 0x44]
call fcn.10078c90
cmp dword [0x1009d144], 0x84
jae 0x1005f64c
push 0x1009d14c
push 0x1009d170
mov edx, 0x1009d20c
lea ecx, [esp + 0x2c]
call fcn.100789e0
add esp, 4
lea ecx, [esp + 0x10]
mov edx, eax
call fcn.10078930
add esp, 4
mov ecx, 0x1009d134
push eax
call fcn.1003b590
mov edx, dword [esp + 0x20]
cmp edx, 0x10
jb 0x1005f601
mov ecx, dword [esp + 0xc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1005f5f7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1005fe27
push edx
push ecx
call fcn.10079b22
add esp, 8
mov edx, dword [esp + 0x38]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], 0xf
mov byte [esp + 0xc], 0
cmp edx, 0x10
jb 0x1005f64c
mov ecx, dword [esp + 0x24]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1005f642
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1005fe27
push edx
push ecx
call fcn.10079b22
add esp, 8
push 9
push 0x10033ae0
lea ecx, [esp + 0x14]
mov dword [esp + 0x14], 0
mov dword [esp + 0x24], 0
mov dword [esp + 0x28], 0xf
call fcn.1003ae40
mov ebx, dword [esp + 0x20]
lea esi, [esp + 0xc]
mov edi, dword [esp + 0xc]
cmp ebx, 0x10
cmovae esi, edi
lea ecx, [esi + 1]
nop dword [eax]
mov al, byte [esi]
inc esi
test al, al
jne 0x1005f690
sub esi, ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentThread]
xor eax, esi
sub dword [0x100027a0], eax
cmp ebx, 0x10
jb 0x1005f6d7
lea ecx, [ebx + 1]
mov eax, edi
cmp ecx, 0x1000
jb 0x1005f6cd
mov edi, dword [edi - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1005fe45
push ecx
push edi
call fcn.10079b22
add esp, 8
cmp dword [0x1009d110], 0x97
jae 0x1005f7fa
push 0x1009d0d0
push 0x1009d134
push 0x1009d1f4
mov edx, 0x1009d14c
lea ecx, [esp + 0x6c]
call fcn.100789e0
add esp, 4
lea ecx, [esp + 0x2c]
mov edx, eax
call fcn.10078930
add esp, 4
lea ecx, [esp + 0x10]
mov edx, eax
call fcn.10078930
add esp, 4
mov ecx, 0x1009d100
push eax
call fcn.1003b590
mov edx, dword [esp + 0x20]
cmp edx, 0x10
jb 0x1005f764
mov ecx, dword [esp + 0xc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1005f75a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1005fe2c
push edx
push ecx
call fcn.10079b22
add esp, 8
mov edx, dword [esp + 0x38]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], 0xf
mov byte [esp + 0xc], 0
cmp edx, 0x10
jb 0x1005f7af
mov ecx, dword [esp + 0x24]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1005f7a5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1005fe2c
push edx
push ecx
call fcn.10079b22
add esp, 8
mov edx, dword [esp + 0x74]
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0xf
mov byte [esp + 0x24], 0
cmp edx, 0x10
jb 0x1005f7fa
mov ecx, dword [esp + 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1005f7f0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1005fe2c
push edx
push ecx
call fcn.10079b22
add esp, 8
cmp dword [0x1009d204], 0xbf
jae 0x1005f860
lea eax, [esp + 0x244]
mov edx, 0x1009d0a0
push eax
lea ecx, [esp + 0x64]
call fcn.100789e0
add esp, 4
mov ecx, 0x1009d1f4
push eax
call fcn.1003b590
mov edx, dword [esp + 0x74]
cmp edx, 0x10
jb 0x1005f860
mov ecx, dword [esp + 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1005f856
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1005fe31
push edx
push ecx
call fcn.10079b22
add esp, 8
push dword [0x100027c0]
mov eax, dword [ebp + 0x50]
push dword [ebp + 0x40]
mov ecx, dword [0x100027b0]
push eax
push 0x1009d1b8
push eax
push dword [ebp + 0x54]
mov eax, dword [0x100027a0]
push dword [0x10002788]
mov edx, dword [0x100027a8]
push dword [ebp + 0x14]
push dword [0x1000278c]
push eax
push dword [ebp + 0x10]
push dword [ebp + 0x5c]
push ecx
push 0x1009d14c
push dword [0x10002798]
push 0x1009d0e8
push dword [0x100027bc]
push eax
push dword [ebp + 0x44]
call fcn.1005b560
mov esi, dword [ebp + 8]
add esp, 0x4c
xor eax, dword [0x100027a8]
add dword [0x100027ac], eax
cmp dword [esi + 0x10], 0xbd
jae 0x1005f9ec
push 0x1009d134
push 0x1009d11c
push 0x1009d14c
mov edx, 0x1009d0d0
lea ecx, [esp + 0x6c]
call fcn.100789e0
add esp, 4
lea ecx, [esp + 0x14]
mov edx, eax
call fcn.10078930
add esp, 4
lea ecx, [esp + 0x28]
mov edx, eax
call fcn.10078930
add esp, 4
mov ecx, esi
push eax
call fcn.1003b590
mov edx, dword [esp + 0x38]
cmp edx, 0x10
jb 0x1005f956
mov ecx, dword [esp + 0x24]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1005f94c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1005fe36
push edx
push ecx
call fcn.10079b22
add esp, 8
mov edx, dword [esp + 0x20]
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0xf
mov byte [esp + 0x24], 0
cmp edx, 0x10
jb 0x1005f9a1
mov ecx, dword [esp + 0xc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1005f997
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1005fe36
push edx
push ecx
call fcn.10079b22
add esp, 8
mov edx, dword [esp + 0x74]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], 0xf
mov byte [esp + 0xc], 0
cmp edx, 0x10
jb 0x1005f9ec
mov ecx, dword [esp + 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1005f9e2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1005fe36
push edx
push ecx
call fcn.10079b22
add esp, 8
push 0x10033b04
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
push 0x10033aec
mov edi, eax
call fcn.10081304
add esp, 4
mov esi, eax
sub esi, edi
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push 9
xor eax, esi
mov dword [esp + 0x10], 0
push 0x10033ae0
lea ecx, [esp + 0x14]
mov dword [0x100027c0], eax
mov dword [esp + 0x24], 0
mov dword [esp + 0x28], 0xf
call fcn.1003ae40
mov ebx, dword [esp + 0x20]
lea esi, [esp + 0xc]
mov edi, dword [esp + 0xc]
cmp ebx, 0x10
cmovae esi, edi
lea ecx, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x1005fa54
sub esi, ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentThread]
xor eax, esi
sub dword [0x100027a0], eax
cmp ebx, 0x10
jb 0x1005fa9b
lea ecx, [ebx + 1]
mov eax, edi
cmp ecx, 0x1000
jb 0x1005fa91
mov edi, dword [edi - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1005fe45
push ecx
push edi
call fcn.10079b22
add esp, 8
cmp dword [0x1009d110], 0x34
jae 0x1005fbbb
push 0x1009d11c
push 0x1009d170
push 0x1009d170
mov edx, 0x1009d11c
lea ecx, [esp + 0x6c]
call fcn.100789e0
add esp, 4
lea ecx, [esp + 0x14]
mov edx, eax
call fcn.10078930
add esp, 4
lea ecx, [esp + 0x28]
mov edx, eax
call fcn.10078930
add esp, 4
mov ecx, 0x1009d100
push eax
call fcn.1003b590
mov edx, dword [esp + 0x38]
cmp edx, 0x10
jb 0x1005fb25
mov ecx, dword [esp + 0x24]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1005fb1b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1005fe3b
push edx
push ecx
call fcn.10079b22
add esp, 8
mov edx, dword [esp + 0x20]
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0xf
mov byte [esp + 0x24], 0
cmp edx, 0x10
jb 0x1005fb70
mov ecx, dword [esp + 0xc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1005fb66
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1005fe3b
push edx
push ecx
call fcn.10079b22
add esp, 8
mov edx, dword [esp + 0x74]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], 0xf
mov byte [esp + 0xc], 0
cmp edx, 0x10
jb 0x1005fbbb
mov ecx, dword [esp + 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1005fbb1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1005fe3b
push edx
push ecx
call fcn.10079b22
add esp, 8
cmp dword [0x1009d21c], 0xc3
mov ebx, dword [ebp + 8]
jae 0x1005fc7f
push ebx
push 0x1009d1a0
mov edx, 0x1009d0a0
lea ecx, [esp + 0x68]
call fcn.100789e0
add esp, 4
lea ecx, [esp + 0x28]
mov edx, eax
call fcn.10078930
add esp, 4
mov ecx, 0x1009d20c
push eax
call fcn.1003b590
mov edx, dword [esp + 0x38]
cmp edx, 0x10
jb 0x1005fc34
mov ecx, dword [esp + 0x24]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1005fc2a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1005fe40
push edx
push ecx
call fcn.10079b22
add esp, 8
mov edx, dword [esp + 0x74]
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0xf
mov byte [esp + 0x24], 0
cmp edx, 0x10
jb 0x1005fc7f
mov ecx, dword [esp + 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1005fc75
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1005fe40
push edx
push ecx
call fcn.10079b22
add esp, 8
mov ecx, dword [esp + 0x3c]
test ecx, ecx
je 0x1005fcf5
mov edx, dword [esp + 0x40]
push ecx
call fcn.1003b800
mov ecx, dword [esp + 0x48]
mov eax, 0x2aaaaaab
mov esi, dword [esp + 0x40]
add esp, 4
sub ecx, esi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax + eax*2]
mov eax, esi
shl ecx, 3
cmp ecx, 0x1000
jb 0x1005fcd3
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1005fe45
push ecx
push esi
call fcn.10079b22
add esp, 8
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0
mov ecx, dword [esp + 0x48]
test ecx, ecx
je 0x1005fd6b
mov edx, dword [esp + 0x4c]
push ecx
call fcn.1003b800
mov ecx, dword [esp + 0x54]
mov eax, 0x2aaaaaab
mov esi, dword [esp + 0x4c]
add esp, 4
sub ecx, esi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax + eax*2]
mov eax, esi
shl ecx, 3
cmp ecx, 0x1000
jb 0x1005fd49
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1005fe45
push ecx
push esi
call fcn.10079b22
add esp, 8
mov dword [esp + 0x48], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x50], 0
mov ecx, dword [esp + 0x54]
test ecx, ecx
je 0x1005fde1
mov edx, dword [esp + 0x58]
push ecx
call fcn.1003b800
mov ecx, dword [esp + 0x60]
mov eax, 0x2aaaaaab
mov esi, dword [esp + 0x58]
add esp, 4
sub ecx, esi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax + eax*2]
mov eax, esi
shl ecx, 3
cmp ecx, 0x1000
jb 0x1005fdbf
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1005fe45
push ecx
push esi
call fcn.10079b22
add esp, 8
mov dword [esp + 0x54], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x5c], 0
mov edx, dword [esp + 0x258]
cmp edx, 0x10
jb 0x1005fe19
mov ecx, dword [esp + 0x244]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1005fe0f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1005fe45
push edx
push ecx
call fcn.10079b22
add esp, 8
pop edi
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.1007e1df
call fcn.1007e1df
call fcn.1007e1df
call fcn.1007e1df
call fcn.1007e1df
call fcn.1007e1df
call fcn.1007e1df
call fcn.1007e1df
int3