Function at 0x1005e370
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0xb0
mov eax, dword [esp + 0xe4]
xor ecx, ecx
push ebx
push ebp
mov ebp, dword [esp + 0xbc]
xor edx, edx
push esi
push edi
mov edi, dword [esp + 0xc8]
mov esi, dword [ebp + 8]
mov dword [esp + 0x7c], eax
xor eax, eax
mov dword [esp + 0x74], ecx
movsx ebx, word [edi + 0x22]
mov dword [esp + 0x68], ecx
mov ecx, dword [edi + 0x1c]
mov dword [esp + 0x8c], eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x78], eax
mov eax, dword [ebp]
mov dword [esp + 0x70], 0
mov dword [esp + 0x60], 0
mov byte [esp + 0x1b], 0
mov dword [esp + 0x88], edx
mov dword [esp + 0x38], eax
mov dword [esp + 0x90], esi
mov dword [esp + 0x48], ebx
test cl, cl
js 0x1005e3fa
mov dword [esp + 0x24], edx
mov dword [esp + 0x64], 1
jmp 0x1005e421
mov edx, dword [edi + 8]
mov dword [esp + 0x24], edx
test edx, edx
je 0x1005e419
mov eax, dword [edx + 0x38]
and al, 3
cmp al, 2
je 0x1005e415
mov edx, dword [edx + 0x14]
test edx, edx
jne 0x1005e405
mov dword [esp + 0x24], edx
movzx eax, word [edx + 0x32]
mov dword [esp + 0x64], eax
test ecx, 0x800
mov cl, byte [esp + 0xe4]
mov dword [esp + 0x4c], ecx
je 0x1005e7d2
xor ecx, ecx
xor eax, eax
xor edx, edx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x28], eax
mov dword [esp + 0x1c], edx
nop word [eax + eax]
xor ebp, ebp
test ebx, ebx
jle 0x1005e776
mov eax, dword [esp + 0xc8]
xor edi, edi
mov dword [esp + 0x30], edi
mov ebx, dword [eax + 4]
add ebx, edi
mov edi, dword [ebx + 4]
and edi, 0xf
je 0x1005e753
movsx eax, word [eax + 0x20]
cmp ebp, eax
je 0x1005e74c
movzx eax, word [ebx + 0xe]
and eax, 0x60
je 0x1005e49b
test ecx, ecx
jne 0x1005e49b
inc edx
mov dword [esp + 0x1c], edx
jmp 0x1005e74c
cmp dword [esp + 0xf0], 0
mov ecx, dword [esp + 0x14]
je 0x1005e4c2
mov edx, dword [esp + 0xf0]
cmp dword [edx + ebp*4], 0
mov edx, dword [esp + 0x1c]
jge 0x1005e4c2
test eax, eax
je 0x1005e74c
cmp byte [esp + 0x4c], 0xb
mov ecx, dword [esp + 0x14]
je 0x1005e4ee
mov edx, dword [esp + 0x4c]
movzx edi, dl
mov edx, dword [esp + 0x1c]
cmp edi, 5
jne 0x1005e4f8
test ecx, ecx
jne 0x1005e4e7
cmp word [ebx + 0xc], cx
jne 0x1005e504
mov edi, 2
jmp 0x1005e504
cmp edi, 0xb
jne 0x1005e4d8
mov edi, 2
test ecx, ecx
je 0x1005e504
test eax, eax
je 0x1005e74c
push ebp
push dword [esp + 0xcc]
call fcn.10076530
mov edx, dword [esp + 0xe0]
add esp, 8
cwde
inc edx
add edx, eax
lea eax, [edi - 1]
mov dword [esp + 0x2c], edx
cmp eax, 4
ja case.0x1005e52f.4
jmp dword [eax*4 + 0x100605d8]
mov edi, dword [esi + 0x6c]
mov dword [esp + 0x6c], edi
cmp dword [esi + 0x70], edi
jg 0x1005e558
push 0
push 0
push edx
push 0x33
push esi
call fcn.10031c40
add esp, 0x14
mov dword [esp + 0x6c], eax
jmp 0x1005e587
lea eax, [edi + 1]
mov dword [esi + 0x6c], eax
lea ecx, [edi + edi*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x33
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
movzx eax, word [ebx + 0xc]
inc dword [esp + 0x28]
test ax, ax
je 0x1005e5d2
mov ecx, dword [esp + 0xc8]
cmp byte [ecx + 0x2b], 0
jne 0x1005e5d2
mov ecx, dword [ecx + 0x34]
test ecx, ecx
je 0x1005e5d2
cmp dword [ecx], eax
jl 0x1005e5d2
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 - 0xc]
mov ecx, dword [esp + 0xc4]
mov edi, dword [ecx]
test eax, eax
je 0x1005e5db
push 0
push 0
push eax
push edi
call fcn.1002a3f0
add esp, 0x10
mov ebx, eax
jmp 0x1005e5dd
mov eax, dword [esp + 0xc4]
mov edi, dword [eax]
xor ebx, ebx
cmp byte [edi + 0x57], 0
jne 0x1005e5f8
mov edx, dword [esp + 0x2c]
push edx
push ebx
push dword [esp + 0xcc]
call fcn.10056c90
add esp, 0xc
test ebx, ebx
je 0x1005e606
push ebx
push edi
call fcn.100597d0
add esp, 8
mov eax, dword [esi]
mov edx, dword [esi + 0x6c]
cmp byte [eax + 0x57], 0
je 0x1005e61e
mov eax, 0x100bdf30
mov dword [eax + 8], edx
jmp 0x1005e744
mov eax, dword [esp + 0x6c]
lea ecx, [eax + eax*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4 + 8], edx
lea eax, [eax + ecx*4]
jmp 0x1005e744
mov ecx, dword [esp + 0xc4]
mov eax, dword [ecx + 0x78]
test eax, eax
cmovne ecx, eax
mov byte [ecx + 0x15], 1
push dword [ebx]
mov eax, dword [esp + 0xcc]
push dword [eax]
push str._s._s
push dword [esp + 0x44]
call fcn.10065ac0
mov ecx, dword [esi + 0x6c]
add esp, 0x10
mov ebx, eax
mov edx, dword [esp + 0x2c]
cmp dword [esi + 0x70], ecx
jg 0x1005e685
push edx
push edi
push 0x513
push 0x45
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1005e6b0
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x45
mov dword [eax + ecx*4 + 4], 0x513
mov dword [eax + ecx*4 + 8], edi
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esi]
cmp byte [eax + 0x57], 0
je 0x1005e6c8
test ebx, ebx
je 0x1005e6da
push ebx
push eax
call fcn.10053e60
add esp, 8
jmp 0x1005e6da
mov eax, dword [esi + 0x6c]
lea ecx, [eax + eax*4]
mov eax, dword [esi + 0x68]
mov byte [eax + ecx*4 - 0x13], 0xfa
mov dword [eax + ecx*4 - 4], ebx
mov eax, dword [esi + 0x6c]
test eax, eax
jle 0x1005e744
lea ecx, [eax + eax*4]
mov edx, 1
mov eax, dword [esi + 0x68]
mov word [eax + ecx*4 - 0x12], dx
jmp 0x1005e744
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x1005e712
push 0
push dword [esp + 0xec]
push edx
push 0x32
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1005e744
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0xe8]
mov dword [eax + ecx*4], 0x32
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0xc8]
mov edi, dword [esp + 0x30]
inc ebp
mov ebx, dword [esp + 0x48]
add edi, 0x10
mov dword [esp + 0x30], edi
cmp ebp, ebx
jl 0x1005e467
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 0xc8]
test edx, edx
jne 0x1005e77e
test eax, eax
je 0x1005e7c7
test ecx, ecx
jne 0x1005e7c7
mov ecx, 1
mov dword [esp + 0x14], ecx
test eax, eax
jle 0x1005e450
test byte [edi + 0x1c], 0x60
je 0x1005e450
mov eax, dword [esp + 0xd8]
push edi
inc eax
push eax
push dword [esp + 0xcc]
call fcn.10051870
mov ecx, dword [esp + 0x20]
add esp, 0xc
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x28]
jmp 0x1005e450
mov ebp, dword [esp + 0xc4]
mov ecx, dword [esp + 0x4c]
mov edx, dword [edi + 0x10]
mov dword [esp + 0x2c], edx
test edx, edx
je 0x1005ea64
mov eax, dword [esp + 0x38]
mov eax, dword [eax + 0x20]
and eax, 0x200
or eax, 0
jne 0x1005ea64
mov eax, dword [esp + 0xd8]
movzx edi, cl
not eax
mov dword [ebp + 0x34], eax
cmp cl, 0xb
jne 0x1005e80f
mov edi, 2
xor ecx, ecx
mov dword [esp + 0x28], ecx
cmp dword [edx], ecx
jle 0x1005ea56
lea eax, [edx + 0xc]
mov dword [esp + 0x48], 0xfffd
mov dword [esp + 0x34], eax
nop dword [eax]
mov ebx, dword [eax - 4]
mov eax, dword [esp + 0xf0]
test eax, eax
je 0x1005e8ac
mov dword [esp + 0xbc], 0
xorps xmm0, xmm0
movq qword [esp + 0xb4], xmm0
mov dword [esp + 0xbc], eax
movups xmmword [esp + 0xa4], xmm0
mov dword [esp + 0xa8], 0x10020f70
test ebx, ebx
je 0x1005e88c
lea eax, [esp + 0xa4]
push ebx
push eax
call fcn.1009cbd0
mov ecx, dword [esp + 0x30]
add esp, 8
mov edx, dword [esp + 0x2c]
cmp byte [esp + 0xe0], 0
mov ax, word [esp + 0xb8]
jne 0x1005e8a3
and ax, word [esp + 0x48]
test ax, ax
je 0x1005ea3e
cmp byte [esp + 0x1b], 0
jne 0x1005e8d1
mov eax, dword [esp + 0xd8]
inc eax
push eax
push dword [esp + 0xcc]
push esi
call fcn.10076340
add esp, 0xc
mov byte [esp + 0x1b], 1
dec dword [ebp + 0x38]
mov ebp, dword [ebp + 0x38]
test ebx, ebx
je 0x1005e8f0
push 0
push 0
push ebx
push dword [esp + 0x44]
call fcn.1002a3f0
add esp, 0x10
mov ebx, eax
jmp 0x1005e8f2
xor ebx, ebx
mov eax, dword [esp + 0x38]
cmp byte [eax + 0x57], 0
jne 0x1005e913
push 0x10
push ebp
push ebx
push dword [esp + 0xd0]
call fcn.10059e80
mov eax, dword [esp + 0x48]
add esp, 0x10
test ebx, ebx
je 0x1005e921
push ebx
push eax
call fcn.100597d0
add esp, 8
cmp edi, 4
jne 0x1005e984
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x1005e949
push 0
push dword [esp + 0xec]
push 0
push 9
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1005ea0c
mov edx, dword [esp + 0xe8]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 9
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x1005ea0c
mov eax, dword [esp + 0x34]
cmp edi, 5
mov ecx, dword [esp + 0xc4]
mov edx, dword [eax]
mov eax, 2
mov ebx, dword [ecx + 8]
cmove edi, eax
mov dword [esp + 0x44], edx
test ebx, ebx
jne 0x1005e9ce
cmp dword [ecx + 0x78], ebx
jne 0x1005e9b8
mov eax, dword [ecx]
test byte [eax + 0x50], 8
jne 0x1005e9b8
mov byte [ecx + 0x17], 1
push ecx
call fcn.1007aff0
mov edx, dword [esp + 0x48]
add esp, 4
mov ecx, dword [esp + 0xc4]
mov ebx, eax
cmp edi, 2
jne 0x1005e9df
mov eax, dword [ecx + 0x78]
test eax, eax
cmovne ecx, eax
mov byte [ecx + 0x15], 1
push 0
push edx
push 0
push edi
push 0x113
push 0x46
push ebx
call fcn.1007aa80
mov eax, dword [ebx + 0x6c]
add esp, 0x1c
test eax, eax
jle 0x1005ea0c
lea ecx, [eax + eax*4]
mov edx, 3
mov eax, dword [ebx + 0x68]
mov word [eax + ecx*4 - 0x12], dx
mov ecx, dword [esi + 0xc]
not ebp
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x1005ea26
push ebp
push esi
push ecx
call fcn.100430f0
add esp, 0xc
jmp 0x1005ea2f
mov ecx, dword [ecx + 0x40]
mov eax, dword [esi + 0x6c]
mov dword [ecx + ebp*4], eax
mov ebp, dword [esp + 0xc4]
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x34]
inc ecx
add eax, 0x14
mov dword [esp + 0x28], ecx
mov dword [esp + 0x34], eax
cmp ecx, dword [edx]
jl 0x1005e830
mov edi, dword [esp + 0xc8]
mov dword [ebp + 0x34], 0
mov edx, dword [esp + 0xf4]
mov eax, dword [edi + 8]
mov dword [esp + 0x6c], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x28], eax
test edx, edx
je 0x1005eba6
cmp dword [edx], 0
jne 0x1005eabd
mov al, byte [edx + 0x14]
xor edx, edx
test al, al
cmovne edx, dword [esp + 0x7c]
setne al
mov dword [esp + 0xf4], edx
lea eax, [eax*2 + 4]
mov dword [esp + 0x4c], eax
jmp 0x1005eba6
test eax, eax
je 0x1005eba6
xor edi, edi
mov eax, dword [eax + 0x14]
inc edi
test eax, eax
jne 0x1005eac7
mov eax, dword [esp + 0x38]
lea ebx, [edi + edi*4]
add ebx, ebx
mov dword [esp + 0x6c], 1
mov dword [esp + 0x28], edi
push 0
push ebx
test eax, eax
je 0x1005eaf6
push eax
call fcn.10053d40
add esp, 0xc
jmp 0x1005eafe
call fcn.10065ae0
add esp, 8
mov dword [esp + 0x50], eax
test eax, eax
je 0x100605cd
push ebx
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov edx, dword [esp + 0x5c]
add esp, 0xc
mov eax, dword [esp + 0xf4]
xor ebx, ebx
mov esi, dword [esp + 0xc8]
lea ebp, [edx + edi*8]
mov edi, eax
mov dword [eax + 0x18], edx
cmp dword [edi], 0
je 0x1005eb76
mov edx, dword [edi + 0x1c]
test edx, edx
je 0x1005eb6b
mov eax, dword [esi + 8]
xor ecx, ecx
test eax, eax
je 0x1005eb53
cmp eax, edx
je 0x1005eb53
mov eax, dword [eax + 0x14]
inc ecx
test eax, eax
jne 0x1005eb47
cmp byte [ecx + ebp], 0
mov edx, dword [esp + 0x50]
jne 0x1005eb6f
mov byte [ecx + ebp], 1
mov dword [edx + ebx*8], eax
mov dword [edx + ebx*8 + 4], ecx
inc ebx
jmp 0x1005eb6f
mov edx, dword [esp + 0x50]
mov edi, dword [edi + 0x10]
test edi, edi
jne 0x1005eb32
mov edi, esi
xor ecx, ecx
mov esi, dword [esp + 0x90]
mov eax, dword [edi + 8]
test eax, eax
je 0x1005eba6
lea edx, [edx + ebx*8]
nop dword [eax + eax]
cmp byte [ecx + ebp], 0
jne 0x1005eb9e
mov dword [edx], eax
mov dword [edx + 4], ecx
add edx, 8
mov eax, dword [eax + 0x14]
inc ecx
test eax, eax
jne 0x1005eb90
mov eax, dword [esp + 0x38]
mov ebp, dword [esp + 0xc4]
mov ecx, dword [eax + 0x20]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x9c], eax
mov eax, ecx
and eax, 0x6000
or eax, 0
jne 0x1005ebdf
mov dword [esp + 0x34], 0
mov dword [esp + 0x54], 0
jmp 0x1005ecc8
and ecx, 0x2000
or ecx, 0
je 0x1005ec4b
cmp dword [edi + 0x38], 0
jne 0x1005ec03
mov eax, dword [ebp]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 0x1c]
test eax, eax
je 0x1005ec0c
cmp dword [eax + 0x30], 0
je 0x1005ec0c
cmp byte [ebp + 0x9b], 0
je 0x1005ec16
mov dword [esp + 0x34], 0
jmp 0x1005ec33
push 0
push 0
push 0x80
push edi
push ebp
call fcn.10094520
mov ebx, eax
add esp, 0x14
mov dword [esp + 0x34], ebx
test ebx, ebx
jne 0x1005ec6b
push 0
push 0
push edi
push ebp
call fcn.1005de90
add esp, 0x10
test eax, eax
jne 0x1005ec6b
mov dword [esp + 0x54], eax
jmp 0x1005ecc8
push 0
push 0
push edi
push ebp
mov dword [esp + 0x44], 0
call fcn.1005de90
mov edx, eax
add esp, 0x10
mov dword [esp + 0x54], edx
test edx, edx
je 0x1005ecc8
inc dword [ebp + 0x2c]
mov ecx, dword [esi + 0x6c]
mov edx, dword [ebp + 0x2c]
mov dword [esp + 0x54], edx
cmp dword [esi + 0x70], ecx
jg 0x1005ec8f
push 0
push edx
push 0
push 0x47
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1005ecbe
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x47
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
dec dword [ebp + 0x38]
mov eax, dword [ebp + 0x38]
mov dword [esp + 0x58], eax
cmp byte [esp + 0xe0], 0
je 0x1005f201
cmp dword [esp + 0x24], 0
jne 0x1005f201
mov eax, dword [esp + 0xc8]
dec dword [ebp + 0x38]
mov ecx, dword [esp + 0x4c]
mov edi, dword [ebp + 0x38]
movzx ebx, byte [eax + 0x2a]
cmp cl, 0xb
je 0x1005ed00
movzx ebx, cl
jmp 0x1005ed0b
cmp ebx, 0xb
mov edx, 2
cmove ebx, edx
mov edx, dword [esp + 0xf4]
test edx, edx
je 0x1005edae
mov ecx, edx
nop dword [eax]
cmp dword [ecx], 0
je 0x1005ed32
cmp dword [ecx + 0x1c], 0
je 0x1005ed32
mov ecx, dword [ecx + 0x10]
test ecx, ecx
jne 0x1005ed20
mov dword [esp + 0x60], ecx
test ecx, ecx
je 0x1005ed4d
xor ebx, ebx
cmp byte [ecx + 0x14], bl
setne bl
lea ebx, [ebx*2 + 4]
cmp ecx, edx
je 0x1005edaa
mov edx, dword [esi + 0x6c]
mov dword [esp + 0x68], edx
cmp dword [esi + 0x70], edx
jg 0x1005ed70
push 0
push 0
push 0
push 9
push esi
call fcn.10031c40
add esp, 0x14
mov dword [esp + 0x68], eax
jmp 0x1005eda3
lea eax, [edx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [edx + edx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 9
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0xc8]
mov ecx, dword [esp + 0x4c]
cmp ebx, 5
jne 0x1005ee23
cmp cl, bl
je 0x1005ee23
cmp dword [eax + 8], 0
je 0x1005ee23
cmp dword [esp + 0x68], 0
jne 0x1005ee23
mov edx, dword [esi + 0x6c]
cmp dword [esi + 0x70], edx
jg 0x1005ede1
push 0
push 0
push 0
push 9
push esi
call fcn.10031c40
add esp, 0x14
mov edx, eax
jmp 0x1005ee1b
mov ebp, dword [esp + 0xc4]
lea eax, [edx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [edx + edx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 9
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
inc edx
mov dword [esp + 0x88], edx
mov eax, dword [esp + 0xdc]
test eax, eax
je 0x1005ee98
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x1005ee4c
push eax
push edi
push dword [esp + 0xe0]
push 0x35
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1005ee81
mov edx, dword [esp + 0xd8]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0xdc]
mov dword [eax + ecx*4], 0x35
mov dword [eax + ecx*4 + 8], edi
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esi + 0x6c]
test eax, eax
jle 0x1005ee98
lea ecx, [eax + eax*4]
mov edx, 0x90
mov eax, dword [esi + 0x68]
mov word [eax + ecx*4 - 0x12], dx
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x1005eec3
push dword [esp + 0xd8]
push edi
push dword [esp + 0xd8]
push 0x1f
push esi
call fcn.10031c40
mov edx, dword [esp + 0xe4]
add esp, 0x14
jmp 0x1005eeff
mov ebp, dword [esp + 0xd8]
lea eax, [ecx + 1]
mov edx, dword [esp + 0xd0]
lea ecx, [ecx + ecx*4]
mov dword [esi + 0x6c], eax
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4 + 0xc], ebp
mov ebp, dword [esp + 0xc4]
mov dword [eax + ecx*4], 0x1f
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], edi
mov dword [eax + ecx*4 + 0x10], 0
lea eax, [ebx - 1]
cmp eax, 5
ja case.default.0x1005ef0b
jmp dword [eax*4 + 0x100605ec]
mov ebx, dword [esp + 0x54]
test ebx, ebx
je 0x1005efca
mov eax, dword [ebp + 0x78]
mov ecx, ebp
push 0xffffffffffffffff
push 1
push 5
push 0
push 1
push dword [esp + 0xec]
test eax, eax
push dword [esp + 0xec]
cmovne ecx, eax
push edx
push dword [esp + 0x54]
push dword [esp + 0xec]
mov byte [ecx + 0x14], 1
push ebp
call fcn.10060810
mov ecx, dword [esi + 0x6c]
add esp, 0x2c
cmp dword [esi + 0x70], ecx
jg 0x1005ef86
push 0
push 1
push ebx
push 0x56
push esi
call fcn.10031c40
add esp, 0x14
mov dword [esp + 0x78], 1
mov dword [esp + 0x70], 1
jmp 0x1005f0e4
lea eax, [ecx + 1]
mov dword [esp + 0x78], 1
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [esp + 0x70], 1
mov dword [eax + ecx*4], 0x56
mov dword [eax + ecx*4 + 4], ebx
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x1005f0e4
mov edx, dword [esp + 0xc8]
cmp dword [edx + 8], 0
je 0x1005f001
mov eax, dword [ebp + 0x78]
mov ecx, ebp
push 0xffffffffffffffff
push 0
push dword [esp + 0xdc]
test eax, eax
push dword [esp + 0xdc]
cmovne ecx, eax
push edx
push ebp
mov byte [ecx + 0x14], 1
call fcn.10060ba0
add esp, 0x18
mov dword [esp + 0x70], 1
jmp 0x1005f0e4
mov eax, dword [esp + 0xf4]
push edx
push 0
push dword [esp + 0xd0]
push eax
push ebp
call fcn.10079ff0
add esp, 0x14
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x1005f04c
push 0
push dword [esp + 0xec]
push 0
push 9
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1005f0e4
mov edx, dword [esp + 0xe8]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 9
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x1005f0e4
mov ebx, 2
mov edx, dword [esp + 0xc8]
movzx eax, word [edx + 0x20]
test ax, ax
js 0x1005f0bd
movsx ecx, ax
mov eax, dword [edx + 4]
add ecx, ecx
push dword [eax + ecx*8]
push dword [edx]
push str._s._s
push dword [ebp]
call fcn.10065ac0
add esp, 0x10
mov ecx, 0x613
jmp 0x1005f0d4
push dword [edx]
push str._s.rowid
push dword [ebp]
call fcn.10065ac0
add esp, 0xc
mov ecx, 0xa13
push 2
push 0xfffffffffffffffa
push eax
push ebx
push ecx
push ebp
call fcn.10061b80
add esp, 0x18
mov ecx, dword [esi + 0xc]
not edi
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x1005f0fe
push edi
push esi
push ecx
call fcn.100430f0
add esp, 0xc
jmp 0x1005f107
mov ecx, dword [ecx + 0x40]
mov eax, dword [esi + 0x6c]
mov dword [ecx + edi*4], eax
mov ecx, dword [esp + 0xf4]
test ecx, ecx
je 0x1005f176
cmp dword [esp + 0x60], ecx
je 0x1005f176
mov ecx, dword [esi + 0x6c]
mov dword [esp + 0x74], ecx
cmp dword [esi + 0x70], ecx
jg 0x1005f13e
push 0
push 0
push 0
push 9
push esi
call fcn.10031c40
add esp, 0x14
mov dword [esp + 0x74], eax
jmp 0x1005f201
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 9
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x1005f201
mov ebx, dword [esp + 0x88]
test ebx, ebx
je 0x1005f208
mov edi, dword [esi + 0x6c]
mov dword [esp + 0x8c], edi
cmp dword [esi + 0x70], edi
jg 0x1005f1ae
push 0
push 0
push 0
push 9
push esi
call fcn.10031c40
add esp, 0x14
mov dword [esp + 0x8c], eax
jmp 0x1005f1e1
lea eax, [edi + 1]
mov dword [esi + 0x6c], eax
lea ecx, [edi + edi*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 9
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esi]
mov edx, dword [esi + 0x6c]
cmp byte [eax + 0x57], 0
je 0x1005f1f3
mov eax, 0x100bdf38
jmp 0x1005f1ff
mov eax, dword [esi + 0x68]
lea ecx, [ebx + ebx*4]
lea eax, [eax + ecx*4]
add eax, 0xfffffff4
mov dword [eax], edx
mov ecx, dword [esp + 0xf4]
cmp dword [esp + 0x6c], 0
je 0x1005f21a
mov eax, dword [esp + 0x50]
mov edi, dword [eax + 4]
mov ebx, dword [eax]
jmp 0x1005f220
mov ebx, dword [esp + 0x28]
xor edi, edi
mov eax, dword [esp + 0x58]
mov dword [esp + 0x20], ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x40], eax
test ebx, ebx
je 0x1006015c
mov dword [esp + 0x40], eax
nop dword [eax]
mov eax, dword [esp + 0xcc]
cmp dword [eax + edi*4], 0
je 0x10060106
test ecx, ecx
je 0x1005f299
mov eax, ecx
cmp dword [eax], 0
je 0x1005f268
cmp dword [eax + 0x1c], ebx
je 0x1005f268
mov eax, dword [eax + 0x10]
test eax, eax
jne 0x1005f257
cmp dword [esp + 0x68], 0
mov dword [esp + 0x60], eax
je 0x1005f299
cmp eax, ecx
jne 0x1005f299
mov eax, dword [esi]
mov edx, dword [esi + 0x6c]
cmp byte [eax + 0x57], 0
je 0x1005f289
mov eax, 0x100bdf30
jmp 0x1005f296
mov eax, dword [esp + 0x68]
lea ecx, [eax + eax*4]
mov eax, dword [esi + 0x68]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov eax, dword [ebp + 0x38]
dec eax
cmp byte [esp + 0x1b], 0
mov dword [esp + 0x3c], eax
mov dword [ebp + 0x38], eax
jne 0x1005f2c9
mov eax, dword [esp + 0xd8]
inc eax
push eax
push dword [esp + 0xcc]
push esi
call fcn.10076340
add esp, 0xc
mov byte [esp + 0x1b], 1
cmp dword [ebx + 0x24], 0
je 0x1005f38a
mov eax, dword [esp + 0xcc]
mov ecx, dword [esi + 0x6c]
mov edx, dword [eax + edi*4]
cmp dword [esi + 0x70], ecx
jg 0x1005f2f7
push 0
push edx
push 0
push 0x4b
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1005f326
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x4b
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0xd8]
not eax
mov dword [esp + 0x14], eax
mov dword [ebp + 0x34], eax
mov eax, dword [ebx + 0x24]
mov ebx, dword [ebp]
test eax, eax
je 0x1005f352
push 0
push 0
push eax
push ebx
call fcn.1002a3f0
add esp, 0x10
mov edi, eax
jmp 0x1005f354
xor edi, edi
cmp byte [ebx + 0x57], 0
jne 0x1005f36b
mov edx, dword [esp + 0x3c]
push 0x10
push edx
push edi
push ebp
call fcn.10059a90
add esp, 0x10
test edi, edi
je 0x1005f379
push edi
push ebx
call fcn.100597d0
add esp, 8
mov ebx, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
mov dword [ebp + 0x34], 0
jmp 0x1005f397
mov ebx, dword [esp + 0xd8]
not ebx
mov dword [esp + 0x14], ebx
mov eax, dword [esp + 0xcc]
xor edx, edx
mov dword [esp + 0x30], edx
mov dword [esp + 0x44], edx
mov eax, dword [eax + edi*4]
mov dword [esp + 0x7c], eax
lea edi, [eax + 1]
mov eax, dword [esp + 0x20]
mov dword [esp + 0x2c], edi
movzx eax, word [eax + 0x34]
mov ecx, eax
cmp dx, ax
jae 0x1005f524
mov ebp, edi
xor edi, edi
mov dword [esp + 0x5c], edi
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 4]
movzx edx, word [eax + edx*2]
movsx ecx, dx
cmp ecx, 0xfffffffe
jne 0x1005f450
mov ecx, dword [esp + 0xc4]
mov eax, dword [esp + 0x20]
mov dword [ecx + 0x34], ebx
mov eax, dword [eax + 0x28]
mov ebx, dword [ecx]
mov eax, dword [eax + edi + 8]
test eax, eax
je 0x1005f418
push 0
push 0
push eax
push ebx
call fcn.1002a3f0
mov ecx, dword [esp + 0xd4]
add esp, 0x10
mov edi, eax
jmp 0x1005f41a
xor edi, edi
cmp byte [ebx + 0x57], 0
jne 0x1005f42b
push ebp
push edi
push ecx
call fcn.10056c90
add esp, 0xc
test edi, edi
je 0x1005f439
push edi
push ebx
call fcn.100597d0
add esp, 8
mov eax, dword [esp + 0xc4]
mov edi, dword [esp + 0x5c]
mov dword [eax + 0x34], 0
jmp 0x1005f4f8
cmp ecx, 0xffffffff
je 0x1005f4a7
mov ebx, dword [esp + 0xc8]
movsx eax, word [ebx + 0x20]
cmp ecx, eax
je 0x1005f4a7
push edx
push ebx
call fcn.10076530
mov edx, dword [esp + 0xe0]
add esp, 8
mov ecx, dword [esi + 0x6c]
inc edx
cwde
add edx, eax
cmp dword [esi + 0x70], ecx
jg 0x1005f492
push 0
push ebp
push edx
push 0x51
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1005f4f8
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x51
jmp 0x1005f4e0
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x1005f4c6
push 0
push ebp
push dword [esp + 0xe0]
push 0x52
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1005f4f8
mov edx, dword [esp + 0xd8]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x52
mov dword [eax + ecx*4 + 0x10], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 8], ebp
mov dword [eax + ecx*4 + 4], edx
mov eax, dword [esp + 0x20]
add edi, 0x14
mov edx, dword [esp + 0x30]
inc ebp
mov ebx, dword [esp + 0x14]
inc edx
mov dword [esp + 0x30], edx
movzx ecx, word [eax + 0x34]
mov dword [esp + 0x5c], edi
cmp edx, ecx
jl 0x1005f3d1
mov ebp, dword [esp + 0xc4]
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0xcc]
mov ebx, dword [esp + 0x2c]
movzx edi, cx
mov ecx, dword [esi + 0x6c]
mov edx, dword [edx + eax*4]
cmp dword [esi + 0x70], ecx
jg 0x1005f551
push edx
push edi
push ebx
push 0x61
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1005f578
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x61
mov dword [eax + ecx*4 + 4], ebx
mov dword [eax + ecx*4 + 8], edi
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
cmp dword [esp + 0xdc], 0
mov edi, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
je 0x1005f5c7
cmp ecx, edi
jne 0x1005f5c7
cmp byte [esp + 0xe0], 0
jne 0x1005f5c7
mov ecx, dword [esi + 0xc]
mov edx, dword [esp + 0x3c]
not edx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x1005f5b9
push edx
push esi
push ecx
call fcn.100430f0
add esp, 0xc
jmp 0x10060102
mov ecx, dword [ecx + 0x40]
mov eax, dword [esi + 0x6c]
mov dword [ecx + edx*4], eax
jmp 0x10060102
movzx ebx, byte [edi + 0x36]
test ebx, ebx
jne 0x1005f5f0
mov ecx, dword [esi + 0xc]
mov edx, dword [esp + 0x3c]
not edx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x1005f5b9
push edx
push esi
push ecx
call fcn.100430f0
add esp, 0xc
jmp 0x10060102
mov eax, dword [esp + 0x4c]
cmp al, 0xb
je 0x1005f5fd
movzx ebx, al
jmp 0x1005f608
cmp ebx, 0xb
mov eax, 2
cmove ebx, eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0x30], ebx
test eax, eax
je 0x1005f627
xor ebx, ebx
cmp byte [eax + 0x14], bl
setne bl
lea ebx, [ebx*2 + 4]
mov dword [esp + 0x30], ebx
cmp dword [esp + 0x10], 0
jne 0x1005f702
cmp dword [edi + 0x14], 0
jne 0x1005f702
cmp ecx, edi
jne 0x1005f702
cmp ebx, 5
jne 0x1005f702
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0xc8]
mov eax, dword [eax + 0x20]
and eax, 0x2000
mov dword [esp + 0x98], eax
je 0x1005f6a9
cmp dword [ecx + 0x38], 0
jne 0x1005f682
mov eax, dword [ebp]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 0x1c]
test eax, eax
je 0x1005f6a9
cmp dword [eax + 0x30], 0
je 0x1005f6a9
cmp byte [ebp + 0x9b], 0
jne 0x1005f6a9
push 0
push 0
push 0x80
push ecx
push ebp
call fcn.10094520
add esp, 0x14
test eax, eax
jne 0x1005f702
mov ecx, dword [esp + 0xc8]
mov eax, dword [esp + 0x38]
mov eax, dword [eax + 0x20]
and eax, 0x4000
mov dword [esp + 0x98], eax
je 0x1005f6dd
cmp dword [ecx + 0x30], 0
jne 0x1005f702
mov eax, dword [ecx + 0x3c]
push 0
push dword [ecx]
add eax, 0x38
push eax
call fcn.1002be90
add esp, 0xc
cmp dword [eax + 8], 0
jne 0x1005f702
mov ecx, dword [esi + 0xc]
mov edx, dword [esp + 0x3c]
not edx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x1005f5b9
push edx
push esi
push ecx
call fcn.100430f0
add esp, 0xc
jmp 0x10060102
movzx eax, word [edi + 0x32]
push eax
push dword [esp + 0x30]
mov eax, dword [esp + 0x18]
push dword [esp + 0x44]
add eax, dword [esp + 0xe0]
push eax
push 0x1b
push esi
call fcn.1007ab00
add esp, 0x18
mov dword [esp + 0x44], eax
cmp edi, dword [esp + 0x24]
jne 0x1005f736
mov edx, dword [esp + 0x2c]
jmp 0x1005f788
mov eax, dword [esp + 0x64]
cmp eax, 1
jne 0x1005f75f
mov al, byte [ebp + 0x13]
test al, al
jne 0x1005f74e
inc dword [ebp + 0x2c]
mov edx, dword [ebp + 0x2c]
jmp 0x1005f788
dec al
mov byte [ebp + 0x13], al
movzx eax, al
mov edx, dword [ebp + eax*4 + 0x9c]
jmp 0x1005f788
mov ecx, dword [ebp + 0x1c]
mov edx, dword [ebp + 0x20]
mov dword [esp + 0x1c], edx
cmp eax, ecx
jg 0x1005f77b
add eax, edx
sub ecx, dword [esp + 0x64]
mov dword [ebp + 0x20], eax
mov dword [ebp + 0x1c], ecx
jmp 0x1005f78c
mov eax, dword [ebp + 0x2c]
lea edx, [eax + 1]
add eax, dword [esp + 0x64]
mov dword [ebp + 0x2c], eax
mov dword [esp + 0x1c], edx
cmp dword [esp + 0xdc], 0
jne 0x1005f79f
cmp ebx, 5
jne 0x1005fb69
mov eax, dword [esp + 0xc8]
test byte [eax + 0x1c], 0x80
jne 0x1005f88a
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x1005f7db
mov eax, dword [esp + 0x10]
add eax, dword [esp + 0xd4]
push 0
push edx
push eax
push 0x8e
push esi
call fcn.10031c40
mov edx, dword [esp + 0x30]
add esp, 0x14
jmp 0x1005f811
mov ebx, dword [esp + 0x10]
lea eax, [ecx + 1]
add ebx, dword [esp + 0xd4]
lea ecx, [ecx + ecx*4]
mov dword [esi + 0x6c], eax
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x8e
mov dword [eax + ecx*4 + 4], ebx
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ebx, dword [esp + 0xdc]
test ebx, ebx
je 0x1005fb69
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x1005f83b
push ebx
push dword [esp + 0x40]
push edx
push 0x35
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1005f866
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0x3c]
mov dword [eax + ecx*4], 0x35
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], ebx
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esi + 0x6c]
mov ebp, dword [esp + 0x1c]
test eax, eax
jle 0x1005fb6d
lea ecx, [eax + eax*4]
mov edx, 0x90
mov eax, dword [esi + 0x68]
mov word [eax + ecx*4 - 0x12], dx
jmp 0x1005fb6d
mov eax, dword [esp + 0x24]
cmp edi, eax
je 0x1005f954
xor ecx, ecx
xor ebp, ebp
cmp cx, word [eax + 0x32]
jae 0x1005f954
mov ebx, edx
movzx edx, word [edi + 0x34]
xor ecx, ecx
test edx, edx
je 0x1005f8cd
mov eax, dword [eax + 4]
movzx edi, word [eax + ebp*2]
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 4]
nop
cmp di, word [eax]
je 0x1005f8fa
inc ecx
add eax, 2
cmp ecx, edx
jl 0x1005f8c0
or eax, 0xffffffff
mov ecx, dword [esi + 0x6c]
movsx edx, ax
mov dword [esp + 0x5c], edx
cmp dword [esi + 0x70], ecx
jg 0x1005f8ff
mov eax, dword [esp + 0x10]
add eax, dword [esp + 0xd4]
push ebx
push edx
push eax
push 0x5e
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1005f93c
movzx eax, cx
jmp 0x1005f8d0
mov edi, dword [esp + 0x10]
lea eax, [ecx + 1]
add edi, dword [esp + 0xd4]
lea ecx, [ecx + ecx*4]
mov edx, dword [esp + 0x5c]
mov dword [esi + 0x6c], eax
mov eax, dword [esi + 0x68]
mov esi, dword [esp + 0x90]
mov dword [eax + ecx*4], 0x5e
mov dword [eax + ecx*4 + 4], edi
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], ebx
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esp + 0x24]
inc ebp
mov edi, dword [esp + 0x20]
inc ebx
movzx eax, word [ecx + 0x32]
cmp ebp, eax
mov eax, ecx
jl 0x1005f8a6
cmp dword [esp + 0xdc], 0
mov ebp, dword [esp + 0x1c]
je 0x1005fb6d
movzx ecx, word [eax + 0x32]
mov edx, ebp
mov eax, dword [esi + 0x6c]
add eax, ecx
mov dword [esp + 0x80], 0x34
mov dword [esp + 0x84], eax
mov eax, dword [edi + 0x38]
and al, 3
cmp al, 2
cmove edx, dword [esp + 0x2c]
mov dword [esp + 0x94], edx
xor edx, edx
mov dword [esp + 0x5c], edx
test ecx, ecx
je 0x1005fb6d
mov ecx, dword [esp + 0x24]
lea eax, [esi + 0x68]
mov dword [esp + 0x14], eax
nop
mov eax, dword [ecx + 0x20]
mov edi, dword [eax + edx*4]
mov eax, dword [esp + 0xc4]
mov ecx, dword [eax]
mov al, byte [ecx + 0x54]
mov bl, byte [ecx + 0xb1]
mov byte [esp + 0xa0], al
movzx eax, bl
push eax
push edi
push dword [esp + 0xa8]
push ecx
call fcn.1005b470
mov edx, dword [esp + 0x24]
add esp, 0x10
mov dword [esp + 0x14], edx
mov ebp, eax
test bl, bl
jne 0x1005fa26
test ebp, ebp
je 0x1005fa03
cmp dword [ebp + 0xc], 0
lea edx, [esi + 0x68]
mov dword [esp + 0x14], edx
jne 0x1005fa29
push edi
push ebp
push dword [esp + 0xa8]
push dword [esp + 0xd0]
call fcn.10060d30
lea edx, [esi + 0x68]
add esp, 0x10
mov ebp, eax
mov dword [esp + 0x14], edx
jmp 0x1005fa29
lea edx, [esi + 0x68]
mov edi, dword [esp + 0x24]
mov ebx, dword [esp + 0x5c]
mov eax, dword [edi + 4]
movzx ecx, word [eax + ebx*2]
movzx eax, word [edi + 0x32]
dec eax
cmp ebx, eax
jne 0x1005fa5b
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x84], eax
mov dword [esp + 0x80], 0x35
mov dword [esp + 0x14], edx
push ecx
push dword [esp + 0xcc]
call fcn.10076530
mov edi, dword [esp + 0xe4]
add esp, 8
add ebx, dword [esp + 0x94]
inc edi
mov edx, dword [esi + 0x6c]
cwde
add edi, eax
mov dword [esp + 0x98], ebx
cmp dword [esi + 0x70], edx
jg 0x1005faa9
push ebx
push dword [esp + 0x88]
push edi
push dword [esp + 0x8c]
push esi
call fcn.10031c40
add esp, 0x14
mov edx, eax
jmp 0x1005faf0
mov ebx, dword [esp + 0x80]
lea eax, [edx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [edx + edx*4]
mov eax, dword [esp + 0x14]
mov eax, dword [eax]
mov byte [eax + ecx*4], bl
xor ebx, ebx
mov word [eax + ecx*4 + 2], bx
mov ebx, dword [esp + 0x98]
mov dword [eax + ecx*4 + 4], edi
mov edi, dword [esp + 0x84]
mov dword [eax + ecx*4 + 8], edi
mov dword [eax + ecx*4 + 0xc], ebx
mov dword [eax + ecx*4 + 0x10], 0
mov byte [eax + ecx*4 + 1], 0
mov eax, dword [esi]
cmp byte [eax + 0x57], 0
jne 0x1005fb20
test edx, edx
jns 0x1005fb00
mov edx, dword [esi + 0x6c]
dec edx
lea ecx, [edx + edx*4]
mov edx, dword [esp + 0x14]
mov eax, dword [edx]
cmp byte [eax + ecx*4 + 1], 0
lea eax, [eax + ecx*4]
je 0x1005fb3c
push 0xfffffffffffffffe
push ebp
push eax
push esi
call fcn.10096b60
add esp, 0x10
mov edx, dword [esp + 0x14]
mov eax, dword [esi + 0x6c]
test eax, eax
jle 0x1005fb49
lea ecx, [eax + eax*4]
mov eax, dword [edx]
mov edx, 0x90
mov word [eax + ecx*4 - 0x12], dx
jmp 0x1005fb50
test ebp, ebp
je 0x1005fb24
mov dword [eax + 0x10], ebp
mov byte [eax + 1], 0xfe
jmp 0x1005fb24
lea eax, [esi + 0x68]
mov dword [esp + 0x14], eax
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x5c]
inc edx
mov dword [esp + 0x5c], edx
movzx eax, word [ecx + 0x32]
cmp edx, eax
jl 0x1005f9b0
mov ebp, dword [esp + 0x1c]
mov ecx, dword [esp + 0x30]
lea eax, [ecx - 1]
cmp eax, 5
ja case.0x1005fb7d.5
jmp dword [eax*4 + 0x10060604]
push dword [esp + 0x20]
mov ebx, dword [esp + 0xc8]
push ecx
push ebx
call fcn.10077660
add esp, 0xc
jmp 0x1006000b
mov eax, dword [esp + 0x10]
add eax, dword [esp + 0xd4]
mov ebx, dword [esp + 0xc4]
push eax
push dword [esp + 0x24]
mov eax, dword [esp + 0xfc]
push dword [esp + 0xd0]
push eax
push ebx
call fcn.10079ff0
add esp, 0x14
jmp 0x1005fbd6
mov ebx, dword [esp + 0xc4]
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x1005fbf9
push 0
push dword [esp + 0xec]
push 0
push 9
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1006000b
mov edx, dword [esp + 0xe8]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 9
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x1006000b
mov edi, dword [esi + 0x6c]
sub edi, dword [esp + 0x44]
cmp dword [esp + 0x54], 0
mov ebx, dword [esp + 0xc4]
mov dword [esp + 0x30], edi
je 0x1005fc5f
mov eax, dword [ebx + 0x78]
mov ecx, ebx
test eax, eax
cmovne ecx, eax
inc dword [esp + 0x78]
mov byte [ecx + 0x14], 1
cmp dword [esp + 0x34], 0
je 0x1005fcc9
cmp dword [esp + 0xdc], 0
je 0x1005fcc9
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x1005fc93
push 0
push 0
push dword [esp + 0xd8]
push 0xa7
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1005fcc9
mov edx, dword [esp + 0xd0]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0xa7
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov edx, dword [esp + 0xd4]
mov eax, dword [esp + 0x10]
add eax, edx
push eax
mov eax, dword [esp + 0x28]
cmp dword [esp + 0x24], eax
sete al
movzx eax, al
push eax
push 5
push 0
push dword [esp + 0x74]
push ebp
push edx
push dword [esp + 0xec]
push dword [esp + 0x54]
push dword [esp + 0xec]
push ebx
call fcn.10060810
add esp, 0x2c
cmp dword [esp + 0x34], 0
je 0x1005fd75
cmp dword [esp + 0xdc], 0
je 0x1005fd75
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x1005fd3f
push 0
push 0
push dword [esp + 0xd8]
push 0xa8
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1005fd75
mov edx, dword [esp + 0xd0]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0xa8
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov edx, dword [esp + 0x54]
test edx, edx
je 0x10060003
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x1005fd9b
push 0
push 1
push edx
push 0x56
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1005fdce
mov edi, dword [esp + 0x30]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x56
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov edx, dword [esi + 0x6c]
mov dword [esp + 0x70], edx
cmp dword [esi + 0x70], edx
jg 0x1005fdf1
push 0
push 0
push 0
push 9
push esi
call fcn.10031c40
add esp, 0x14
mov dword [esp + 0x70], eax
jmp 0x1005fe24
lea eax, [edx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [edx + edx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 9
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esi + 0xc]
mov edx, dword [esp + 0x40]
not edx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x1005fe42
push edx
push esi
push ecx
call fcn.100430f0
add esp, 0xc
jmp 0x1005fe4b
mov ecx, dword [ecx + 0x40]
mov eax, dword [esi + 0x6c]
mov dword [ecx + edx*4], eax
mov eax, dword [esp + 0x20]
dec dword [ebx + 0x38]
mov edx, dword [ebx + 0x38]
mov dword [esp + 0x40], edx
cmp dword [eax + 0x24], 0
je 0x1005feb6
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x1005fe83
push 0
push edx
mov edx, dword [esp + 0x84]
push edx
push 0x32
push esi
call fcn.10031c40
mov edx, dword [esp + 0x54]
add esp, 0x14
jmp 0x1005feb6
mov edx, dword [esp + 0x7c]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0x40]
mov dword [eax + ecx*4], 0x32
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
test edi, edi
jle 0x1005ffd2
mov eax, dword [esp + 0x44]
lea ebp, [eax + eax*4]
shl ebp, 2
mov eax, dword [esi]
cmp byte [eax + 0x57], 0
je 0x1005fed7
mov eax, 0x100bdf30
jmp 0x1005fedc
mov eax, dword [esi + 0x68]
add eax, ebp
movups xmm0, xmmword [eax]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x94], eax
movd eax, xmm0
movups xmmword [esp + 0xa4], xmm0
mov dword [esp + 0x98], eax
cmp al, 0x8e
je 0x1005ffaf
mov edi, dword [esp + 0xac]
movzx ebx, al
test byte [ebx + 0x100b11a8], 1
cmovne edi, edx
mov edx, dword [esi + 0x6c]
cmp dword [esi + 0x70], edx
jg 0x1005ff3d
push dword [esp + 0xb0]
push edi
push dword [esp + 0xb0]
push ebx
push esi
call fcn.10031c40
add esp, 0x14
mov edx, eax
jmp 0x1005ff79
lea eax, [edx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [edx + edx*4]
mov eax, dword [esi + 0x68]
mov byte [eax + ecx*4], bl
mov dword [eax + ecx*4 + 8], edi
mov dword [eax + ecx*4 + 0x10], 0
lea ecx, [eax + ecx*4]
xor eax, eax
mov byte [ecx + 1], 0
mov word [ecx + 2], ax
mov eax, dword [esp + 0xa8]
mov dword [ecx + 4], eax
mov eax, dword [esp + 0xb0]
mov dword [ecx + 0xc], eax
mov eax, dword [esp + 0x98]
movsx eax, ah
push eax
push dword [esp + 0x98]
push edx
push esi
call fcn.1007ae80
mov eax, dword [esi + 0x6c]
add esp, 0x10
test eax, eax
jle 0x1005ffaf
mov ecx, dword [esi + 0x68]
lea edx, [eax + eax*4]
mov ax, word [esp + 0xa6]
mov word [ecx + edx*4 - 0x12], ax
mov eax, dword [esp + 0x30]
add ebp, 0x14
mov edx, dword [esp + 0x40]
dec eax
mov dword [esp + 0x30], eax
test eax, eax
jg 0x1005fec8
mov ebx, dword [esp + 0xc4]
mov ebp, dword [esp + 0x1c]
push dword [esp + 0x20]
push 2
push ebx
call fcn.10077660
mov eax, dword [esi]
add esp, 0xc
mov edx, dword [esi + 0x6c]
cmp byte [eax + 0x57], 0
je 0x1005fff3
mov eax, 0x100bdf30
jmp 0x10060000
mov eax, dword [esp + 0x70]
lea ecx, [eax + eax*4]
mov eax, dword [esi + 0x68]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov dword [esp + 0x70], 1
mov ecx, dword [esi + 0xc]
mov edx, dword [esp + 0x3c]
not edx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x10060029
push edx
push esi
push ecx
call fcn.100430f0
add esp, 0xc
jmp 0x10060032
mov ecx, dword [ecx + 0x40]
mov eax, dword [esi + 0x6c]
mov dword [ecx + edx*4], eax
cmp ebp, dword [esp + 0x2c]
je 0x10060066
mov eax, dword [esp + 0x64]
cmp eax, 1
jne 0x1006005b
test ebp, ebp
je 0x10060066
mov al, byte [ebx + 0x13]
cmp al, 8
jae 0x10060066
movzx eax, al
mov dword [ebx + eax*4 + 0x9c], ebp
inc byte [ebx + 0x13]
jmp 0x10060066
cmp eax, dword [ebx + 0x1c]
jle 0x10060066
mov dword [ebx + 0x1c], eax
mov dword [ebx + 0x20], ebp
mov eax, dword [esp + 0x60]
test eax, eax
je 0x10060102
mov ebx, dword [esp + 0x74]
test ebx, ebx
je 0x10060102
mov eax, dword [eax + 0x10]
test eax, eax
je 0x10060090
cmp dword [eax], 0
je 0x10060090
cmp dword [eax + 0x1c], 0
jne 0x10060102
mov edx, dword [esp + 0x68]
mov ecx, dword [esi + 0x6c]
inc edx
cmp dword [esi + 0x70], ecx
jg 0x100600af
push 0
push edx
push 0
push 9
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x100600de
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 9
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esi]
mov edx, dword [esi + 0x6c]
cmp byte [eax + 0x57], 0
je 0x100600f0
mov eax, 0x100bdf30
jmp 0x100600f9
mov eax, dword [esi + 0x68]
lea ecx, [ebx + ebx*4]
lea eax, [eax + ecx*4]
xor ecx, ecx
mov dword [eax + 8], edx
mov dword [esp + 0x74], ecx
mov edi, dword [esp + 0x10]
cmp dword [esp + 0x6c], 0
je 0x10060131
mov eax, dword [esp + 0x48]
inc eax
mov edi, eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x10], edi
cmp edi, dword [esp + 0x28]
jge 0x1006015c
mov eax, dword [esp + 0x50]
mov ebx, dword [eax + edi*8]
lea eax, [eax + edi*8]
mov edi, dword [eax + 4]
jmp 0x1006013d
mov eax, dword [esp + 0x28]
inc edi
mov ebx, dword [eax + 0x14]
mov dword [esp + 0x28], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x10], edi
test ebx, ebx
je 0x1006015c
mov ebp, dword [esp + 0xc4]
mov ecx, dword [esp + 0xf4]
jmp 0x1005f240
mov edx, dword [esp + 0x88]
lea ebx, [esi + 0x70]
test edx, edx
je 0x100601e1
mov ecx, dword [esi + 0x6c]
cmp dword [ebx], ecx
jg 0x10060186
push 0
push edx
push 0
push 9
push esi
call fcn.10031c40
add esp, 0x14
lea edi, [esi + 0x68]
jmp 0x100601b7
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea edi, [esi + 0x68]
mov eax, dword [edi]
lea ecx, [ecx + ecx*4]
mov dword [eax + ecx*4], 9
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esi]
mov edx, dword [esi + 0x6c]
cmp byte [eax + 0x57], 0
je 0x100601cc
mov eax, 0x100bdf30
mov dword [eax + 8], edx
jmp 0x100601e4
mov eax, dword [esp + 0x8c]
lea ecx, [eax + eax*4]
mov eax, dword [edi]
mov dword [eax + ecx*4 + 8], edx
lea eax, [eax + ecx*4]
jmp 0x100601e4
lea edi, [esi + 0x68]
cmp dword [esp + 0x78], 0
je 0x1006046a
mov ecx, dword [esi + 0x6c]
lea ebx, [esi + 0x70]
cmp dword [ebx], ecx
jg 0x10060215
mov edx, dword [esp + 0x40]
push 0
push edx
mov edx, dword [esp + 0x5c]
push edx
push 0x11
push esi
call fcn.10031c40
add esp, 0x14
lea edi, [esi + 0x68]
jmp 0x1006024a
mov edx, dword [esp + 0x54]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea edi, [esi + 0x68]
mov eax, dword [edi]
lea ecx, [ecx + ecx*4]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0x40]
mov dword [eax + ecx*4], 0x11
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
cmp dword [esp + 0x24], 0
jne 0x100603f5
mov ebp, dword [esp + 0xdc]
test ebp, ebp
je 0x100602c7
mov ecx, dword [esi + 0x6c]
cmp dword [ebx], ecx
jg 0x10060280
push ebp
push dword [esp + 0x5c]
push dword [esp + 0xe0]
push 0x35
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x100602b1
mov edx, dword [esp + 0xd8]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0x58]
mov dword [eax + ecx*4], 0x35
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], ebp
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esi + 0x6c]
test eax, eax
jle 0x100602c7
lea ecx, [eax + eax*4]
mov edx, 0x90
mov eax, dword [edi]
mov word [eax + ecx*4 - 0x12], dx
mov ecx, dword [esi + 0x6c]
cmp dword [ebx], ecx
jg 0x100602ed
push dword [esp + 0xd8]
push dword [esp + 0x5c]
push dword [esp + 0xd8]
push 0x1f
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x10060325
mov edx, dword [esp + 0xd0]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0x58]
mov dword [eax + ecx*4 + 8], edx
mov edx, dword [esp + 0xd8]
mov dword [eax + ecx*4], 0x1f
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
mov edx, dword [esp + 0xc8]
movzx eax, word [edx + 0x20]
test ax, ax
js 0x10060362
movsx ecx, ax
mov eax, dword [edx + 4]
add ecx, ecx
push dword [eax + ecx*8]
mov eax, dword [esp + 0xc8]
push dword [edx]
push str._s._s
push dword [eax]
call fcn.10065ac0
add esp, 0x10
mov dword [esp + 0x44], 0x613
jmp 0x10060382
push dword [edx]
mov eax, dword [esp + 0xc8]
push str._s.rowid
push dword [eax]
call fcn.10065ac0
add esp, 0xc
mov dword [esp + 0x44], 0xa13
mov edx, dword [esp + 0xc4]
mov dword [esp + 0x48], eax
mov ebp, dword [edx + 8]
test ebp, ebp
jne 0x100603b7
cmp dword [edx + 0x78], ebp
jne 0x100603a5
mov eax, dword [edx]
test byte [eax + 0x50], 8
jne 0x100603a5
mov byte [edx + 0x17], 1
push edx
call fcn.1007aff0
mov edx, dword [esp + 0xc8]
add esp, 4
mov ebp, eax
mov ecx, dword [edx + 0x78]
test ecx, ecx
push 0xfffffffffffffffa
push dword [esp + 0x4c]
cmovne edx, ecx
push 0
push 2
push dword [esp + 0x54]
mov byte [edx + 0x15], 1
push 0x46
push ebp
call fcn.1007aa80
mov eax, dword [ebp + 0x6c]
add esp, 0x1c
test eax, eax
jle 0x10060443
lea ecx, [eax + eax*4]
mov edx, 2
mov eax, dword [ebp + 0x68]
mov word [eax + ecx*4 - 0x12], dx
jmp 0x10060443
mov ecx, dword [esi + 0x6c]
cmp dword [ebx], ecx
jg 0x10060411
push 0
push dword [esp + 0x5c]
push 0
push 9
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x10060443
mov edx, dword [esp + 0x58]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi]
mov dword [eax + ecx*4], 9
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esi + 0xc]
mov edx, dword [esp + 0x40]
not edx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x10060461
push edx
push esi
push ecx
call fcn.100430f0
add esp, 0xc
jmp 0x1006046a
mov ecx, dword [ecx + 0x40]
mov eax, dword [esi + 0x6c]
mov dword [ecx + edx*4], eax
mov eax, dword [esp + 0xc8]
test byte [eax + 0x1c], 0x80
jne 0x100605c0
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xcc]
movsx ebp, word [eax + 0x24]
mov eax, dword [esp + 0xd8]
inc eax
mov edx, dword [edx + ecx*4]
mov ecx, dword [esi + 0x6c]
cmp dword [ebx], ecx
jg 0x100604ac
push edx
push ebp
push eax
push 0x61
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x100604e1
mov ebx, dword [esp + 0xd8]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi]
inc ebx
mov esi, dword [esp + 0x90]
mov dword [eax + ecx*4], 0x61
mov dword [eax + ecx*4 + 4], ebx
mov dword [eax + ecx*4 + 8], ebp
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
cmp byte [esp + 0x1b], 0
jne 0x100605c0
mov ebx, dword [esp + 0xc8]
test dword [ebx + 0x1c], 0x10000
je 0x10060561
mov eax, dword [esi]
cmp byte [eax + 0x57], 0
jne 0x10060515
mov eax, dword [esi + 0x6c]
lea ecx, [eax + eax*4]
mov eax, dword [edi]
mov byte [eax + ecx*4 - 0x13], 0xfb
mov dword [eax + ecx*4 - 4], ebx
mov eax, dword [esi]
cmp byte [eax + 0x57], 0
je 0x10060524
mov eax, 0x100bdf30
jmp 0x10060532
mov eax, dword [esi + 0x6c]
lea ecx, [eax + eax*4]
mov eax, dword [edi]
lea eax, [eax + ecx*4]
add eax, 0xffffffec
push dword [eax + 0xc]
mov byte [eax], 0x5f
push dword [eax + 8]
push dword [eax + 4]
push 0x61
push esi
call fcn.1007aa20
mov eax, dword [esp + 0x100]
add esp, 0x14
mov ecx, dword [esp + 0x70]
pop edi
pop esi
pop ebp
mov dword [eax], ecx
pop ebx
add esp, 0xb0
ret
mov edx, dword [ebx + 0xc]
test edx, edx
jne 0x1006059d
push ebx
push edx
call fcn.10076450
mov edx, eax
add esp, 8
test edx, edx
jne 0x1006059a
push dword [esi]
call fcn.100664c0
mov eax, dword [esp + 0xf0]
add esp, 4
mov ecx, dword [esp + 0x70]
pop edi
pop esi
pop ebp
mov dword [eax], ecx
pop ebx
add esp, 0xb0
ret
mov dword [ebx + 0xc], edx
mov ecx, edx
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100605a2
sub ecx, edi
and ecx, 0x3fffffff
je 0x100605c0
push ecx
push edx
push 0xffffffffffffffff
push esi
call fcn.1007ae80
add esp, 0x10
mov eax, dword [esp + 0xec]
mov ecx, dword [esp + 0x70]
mov dword [eax], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xb0
ret