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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xd4
mov eax, dword [0x8bb040]
xor eax, esp
mov dword [esp + 0xd0], eax
mov eax, dword [ebp + 0xc]
push ebx
mov ebx, dword [ebp + 8]
push esi
mov esi, dword [ecx + 8]
mov dword [esp + 0x40], eax
mov eax, dword [ecx]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 0x38], esi
push edi
mov edi, edx
test esi, esi
je 0x6bf188
mov dword [esp + 0x78], esi
jmp 0x6bf1af
cmp dword [ecx + 0x7c], 0
jne 0x6bf198
test byte [eax + 0x50], 8
jne 0x6bf198
mov byte [ecx + 0x17], 1
call fcn.0067aae0
mov esi, eax
mov dword [esp + 0x3c], esi
mov dword [esp + 0x78], esi
test esi, esi
je 0x6c52ce
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x6bf1ce
push 0
push 1
push 1
mov edx, 0xa6
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6bf201
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0xa6
mov dword [eax + ecx*4 + 4], 1
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x30]
push ecx
push ebx
mov edx, edi
mov ecx, eax
mov dword [eax + 0x2c], 2
call fcn.006a5900
add esp, 8
mov dword [esp + 0x40], eax
test eax, eax
js 0x6c52ce
mov edx, dword [esp + 0x10]
mov ebx, eax
shl ebx, 4
add ebx, dword [edx + 0x10]
mov dword [esp + 0x38], ebx
cmp eax, 1
jne 0x6bf254
mov ecx, dword [esp + 0x18]
call fcn.006ad110
test eax, eax
jne 0x6c52ce
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x30]
test eax, eax
je 0x6c52ce
mov ecx, dword [eax + 4]
mov eax, dword [eax]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x30], eax
test eax, eax
je 0x6bf2a9
xor eax, eax
add ecx, 1
adc eax, eax
push eax
push ecx
mov ecx, edx
call fcn.00654db0
mov edi, eax
add esp, 8
mov dword [esp + 0x14], edi
test edi, edi
je 0x6bf2af
push dword [esp + 0x1c]
push dword [esp + 0x34]
push edi
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [esp + 0x28]
add esp, 0xc
mov byte [edi + eax], 0
jmp 0x6bf2af
xor edi, edi
mov dword [esp + 0x14], edi
mov ecx, edi
call fcn.00658510
test edi, edi
je 0x6c52ce
cmp dword [ebp + 0x10], 0
je 0x6bf2dd
push dword [esp + 0x44]
push 0x88a3fc
push dword [esp + 0x18]
call fcn.00657240
add esp, 0xc
mov ecx, eax
jmp 0x6bf352
mov eax, dword [esp + 0x44]
test eax, eax
je 0x6bf350
mov ecx, dword [eax + 4]
mov eax, dword [eax]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x30], eax
test eax, eax
je 0x6bf33d
xor eax, eax
add ecx, 1
adc eax, eax
push eax
push ecx
mov ecx, dword [esp + 0x18]
call fcn.00654db0
add esp, 8
mov dword [esp + 0xc], eax
test eax, eax
je 0x6bf343
push dword [esp + 0x1c]
push dword [esp + 0x34]
push eax
call sub.VCRUNTIME140.dll_memcpy
mov ecx, dword [esp + 0x18]
add esp, 0xc
mov eax, dword [esp + 0x1c]
mov byte [ecx + eax], 0
mov eax, ecx
call fcn.00658510
mov ecx, dword [esp + 0xc]
jmp 0x6bf356
xor eax, eax
mov dword [esp + 0xc], eax
mov ecx, eax
call fcn.00658510
mov ecx, dword [esp + 0xc]
jmp 0x6bf356
xor ecx, ecx
mov dword [esp + 0xc], ecx
mov eax, dword [esp + 0x50]
cmp dword [eax + 4], 0
jbe 0x6bf364
mov ebx, dword [ebx]
jmp 0x6bf366
xor ebx, ebx
push ebx
push ecx
mov ecx, dword [esp + 0x20]
mov edx, 0x13
push edi
mov dword [esp + 0x40], ebx
mov dword [esp + 0x30], edi
call fcn.006a3fd0
add esp, 0xc
test eax, eax
jne 0x6c52ae
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xcc], eax
mov eax, dword [esp + 0xc]
mov dword [esp + 0xd0], edi
mov dword [esp + 0xd4], eax
mov dword [esp + 0xd8], 0
mov dword [ecx + 0x1c8], 0
mov eax, dword [ecx + 0xc]
mov dword [esp + 0x20], 1
test eax, eax
je 0x6bf3d9
push eax
call dword [0x8bbd08]
mov ecx, dword [esp + 0x14]
add esp, 4
mov eax, dword [esp + 0x14]
mov dword [esp + 0x24], eax
test ebx, ebx
je 0x6bf43c
mov edi, dword [ecx + 0x14]
dec edi
mov ebx, edi
shl ebx, 4
add ebx, dword [ecx + 0x10]
test edi, edi
js 0x6bf4b7
mov esi, dword [esp + 0x34]
mov dword [esp + 0x24], eax
mov ecx, dword [ebx]
test ecx, ecx
je 0x6bf412
mov edx, esi
call fcn.00658620
test eax, eax
je 0x6bf42e
test edi, edi
jne 0x6bf426
mov edx, esi
mov ecx, str.main
call fcn.00658620
test eax, eax
je 0x6bf42e
sub ebx, 0x10
sub edi, 1
jns 0x6bf401
mov esi, dword [esp + 0x3c]
mov ecx, dword [esp + 0x10]
test edi, edi
jns 0x6bf43e
jmp 0x6bf4b7
xor edi, edi
mov eax, dword [ecx + 0x10]
add edi, edi
mov edi, dword [eax + edi*8 + 4]
test edi, edi
je 0x6bf4b7
cmp byte [edi + 9], 0
je 0x6bf465
inc dword [edi + 0xc]
cmp byte [edi + 0xa], 0
jne 0x6bf465
mov ecx, edi
call fcn.0066a790
mov ecx, dword [esp + 0x10]
mov eax, dword [edi + 4]
mov ebx, dword [ecx + 0x1c8]
mov eax, dword [eax]
mov eax, dword [eax + 0x40]
mov ecx, dword [eax]
test ecx, ecx
jne 0x6bf483
mov dword [esp + 0x20], 0xc
jmp 0x6bf49a
lea edx, [esp + 0xcc]
push edx
push 0xe
push eax
mov eax, dword [ecx + 0x28]
call eax
add esp, 0xc
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x10]
mov dword [eax + 0x1c8], ebx
cmp byte [edi + 9], 0
je 0x6bf4b7
add dword [edi + 0xc], 0xffffffff
jne 0x6bf4b7
mov ecx, edi
call fcn.0066a770
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x6bf4cc
push eax
call dword [0x8bbd10]
add esp, 4
mov ebx, dword [esp + 0x20]
test ebx, ebx
jne 0x6bf5e3
mov ebx, 1
mov ecx, esi
mov edx, ebx
call fcn.0067ce60
mov eax, dword [esi]
cmp byte [eax + 0x57], 0
jne 0x6bf507
mov edx, dword [esp + 0xcc]
mov ecx, dword [esi + 0x74]
push 0xffffffffffffffff
push ebx
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.00679fc0
add esp, 0x10
mov edi, dword [esp + 0xcc]
test edi, edi
je 0x6c52ae
push edi
mov edx, ebx
mov ecx, esi
call fcn.0067af40
mov ecx, dword [esi + 0x6c]
add esp, 4
cmp dword [esi + 0x70], ecx
jg 0x6bf542
push 0
push 1
push 1
mov edx, 0x54
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6bf56d
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x54
mov dword [eax + ecx*4 + 4], ebx
mov dword [eax + ecx*4 + 8], ebx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov edi, dword [esp + 0xcc]
test edi, edi
je 0x6c52ae
cmp dword [0x8bbcb8], 0
je 0x6bf5d4
mov eax, dword [0x96e500]
test eax, eax
je 0x6bf598
push eax
call dword [0x8bbd08]
add esp, 4
push edi
call dword [0x8bbce4]
sub dword [0x96e390], eax
add esp, 4
dec dword [0x96e3b4]
push edi
call dword [0x8bbcdc]
mov eax, dword [0x96e500]
add esp, 4
test eax, eax
je 0x6c52ae
push eax
call dword [0x8bbd10]
add esp, 4
jmp 0x6c52ae
push edi
call dword [0x8bbcdc]
add esp, 4
jmp 0x6c52ae
cmp ebx, 0xc
je 0x6bf68f
mov eax, dword [esp + 0xcc]
test eax, eax
je 0x6bf680
push eax
push 0x88d508
push dword [esp + 0x20]
call fcn.00658480
mov esi, dword [esp + 0xd8]
add esp, 0xc
test esi, esi
je 0x6bf680
cmp dword [0x8bbcb8], 0
je 0x6bf676
mov eax, dword [0x96e500]
test eax, eax
je 0x6bf634
push eax
call dword [0x8bbd08]
add esp, 4
push esi
call dword [0x8bbce4]
sub dword [0x96e390], eax
add esp, 4
dec dword [0x96e3b4]
push esi
call dword [0x8bbcdc]
mov eax, dword [0x96e500]
add esp, 4
test eax, eax
je 0x6bf680
push eax
call dword [0x8bbd10]
mov eax, dword [esp + 0x1c]
add esp, 4
inc dword [eax + 0x24]
mov dword [eax + 0xc], ebx
jmp 0x6c52ae
push esi
call dword [0x8bbcdc]
add esp, 4
mov eax, dword [esp + 0x18]
inc dword [eax + 0x24]
mov dword [eax + 0xc], ebx
jmp 0x6c52ae
mov ecx, dword [esp + 0x24]
call fcn.006bef00
mov ebx, eax
mov dword [esp + 0x64], ebx
test ebx, ebx
je 0x6c52ae
test byte [ebx + 5], 1
mov edi, dword [esp + 0x18]
je 0x6bf6bf
mov ecx, edi
call fcn.006c6710
test eax, eax
jne 0x6c52ae
mov al, byte [ebx + 5]
test al, 2
jne 0x6bf6db
test al, 4
je 0x6bf6d2
mov ecx, dword [esp + 0xc]
test ecx, ecx
jne 0x6bf6df
mov edx, ebx
mov ecx, esi
call fcn.006bed30
mov ecx, dword [esp + 0xc]
movzx eax, byte [ebx + 4]
dec eax
cmp eax, 0x2a
ja case.0x6bf6ed.5
jmp dword [eax*4 + 0x6c52e4]
mov eax, dword [esi + 0x9c]
mov ebx, dword [esp + 0x40]
bts eax, ebx
mov dword [esi + 0x9c], eax
cmp ebx, 1
je 0x6bf72f
mov eax, dword [esi]
mov ecx, ebx
shl ecx, 4
mov eax, dword [eax + 0x10]
mov eax, dword [eax + ecx + 4]
cmp byte [eax + 9], 0
je 0x6bf72f
mov eax, dword [esi + 0xa0]
bts eax, ebx
mov dword [esi + 0xa0], eax
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x6bf764
add dword [edi + 0x2c], 2
lea edx, [eax + 9]
push ecx
push 0x7fb0a0
mov ecx, esi
call fcn.0067b960
mov edx, dword [esp + 0x2c]
add esp, 8
mov dword [eax + 4], ebx
mov dword [eax + 0x18], ebx
mov dword [eax + 0x7c], 0xfffff830
jmp 0x6c52c5
lea edx, [esp + 0x1c]
mov dword [esp + 0x1c], 0
mov ecx, eax
call fcn.006594b0
mov ebx, dword [esp + 0x1c]
test ebx, ebx
jns 0x6bf790
cmp ebx, 0x80000000
jne 0x6bf78e
mov ebx, closesocket
jmp 0x6bf790
neg ebx
mov eax, dword [edi + 0x7c]
test eax, eax
mov ecx, dword [esp + 0x40]
cmovne edi, eax
mov eax, 1
shl eax, cl
mov edx, dword [edi + 0x58]
test edx, eax
jne 0x6bf7c0
bts edx, ecx
mov dword [edi + 0x58], edx
cmp ecx, 1
jne 0x6bf7c0
mov ecx, edi
call fcn.006ad110
mov ecx, dword [esp + 0x40]
mov eax, dword [edi + 0x54]
bts eax, ecx
mov dword [edi + 0x54], eax
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x6bf7e9
push ebx
push 3
push dword [esp + 0x48]
mov edx, 0x64
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6bf818
mov edx, dword [esp + 0x40]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x64
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], ebx
mov dword [eax + ecx*4 + 0x10], 0
mov edi, dword [esp + 0x38]
mov eax, dword [edi + 0xc]
mov dword [eax + 0x50], ebx
mov edx, dword [edi + 0xc]
mov ecx, dword [edi + 4]
mov edx, dword [edx + 0x50]
call fcn.0066d470
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
call fcn.00654910
mov ebx, dword [esp + 0xc]
jmp 0x6c52c3
mov edi, dword [esp + 0x38]
mov edi, dword [edi + 4]
test ecx, ecx
jne 0x6bf875
test edi, edi
je 0x6bf85d
mov eax, dword [edi + 4]
mov eax, dword [eax + 0x24]
jmp 0x6bf85f
xor eax, eax
cdq
mov ecx, esi
push edx
push eax
call fcn.006bedc0
mov edx, dword [esp + 0x2c]
add esp, 8
jmp 0x6c52c5
lea edx, [esp + 0x1c]
mov dword [esp + 0x1c], 0
call fcn.006594b0
mov eax, dword [esp + 0x10]
mov ecx, edi
mov edx, dword [esp + 0x1c]
push 0
push 0
mov dword [eax + 0x64], edx
call fcn.0066d600
add esp, 8
cmp eax, 7
jne 0x6c52ae
mov ecx, dword [esp + 0x10]
call fcn.00655080
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
call fcn.00654910
mov ebx, dword [esp + 0xc]
jmp 0x6c52c3
mov edi, dword [esp + 0x38]
or ecx, 0xffffffff
mov dword [esp + 0x14], ecx
mov ebx, dword [edi + 4]
mov edi, dword [esp + 0xc]
mov dword [esp + 0x30], ebx
test edi, edi
je 0x6bf912
mov edx, str.fast
mov ecx, edi
call fcn.00658620
test eax, eax
jne 0x6bf8f6
lea ecx, [eax + 2]
jmp 0x6bf90e
push 0
mov edx, 1
mov ecx, edi
call fcn.006bec40
xor ecx, ecx
add esp, 4
test al, al
setne cl
mov dword [esp + 0x14], ecx
mov eax, dword [esp + 0x50]
mov edi, 0xfff3
cmp dword [eax + 4], 0
jne 0x6bf9b6
test ecx, ecx
js 0x6bf9b6
mov eax, dword [esp + 0x10]
xor edx, edx
mov dword [esp + 0x20], edx
cmp dword [eax + 0x14], edx
jle 0x6bf9b6
mov ebx, dword [esp + 0x14]
xor esi, esi
mov eax, dword [eax + 0x10]
mov edi, dword [eax + esi + 4]
test edi, edi
je 0x6bf998
cmp byte [edi + 9], 0
je 0x6bf967
inc dword [edi + 0xc]
cmp byte [edi + 0xa], 0
jne 0x6bf967
mov ecx, edi
call fcn.0066a790
mov edx, dword [esp + 0x20]
mov eax, dword [edi + 4]
mov ecx, 0xfff3
and word [eax + 0x18], cx
lea eax, [ebx*4]
mov ecx, dword [edi + 4]
or word [ecx + 0x18], ax
cmp byte [edi + 9], 0
je 0x6bf998
add dword [edi + 0xc], 0xffffffff
jne 0x6bf998
mov ecx, edi
call fcn.0066a770
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
inc edx
add esi, 0x10
mov dword [esp + 0x20], edx
cmp edx, dword [eax + 0x14]
jl 0x6bf942
mov esi, dword [esp + 0x3c]
mov edi, 0xfff3
mov ebx, dword [esp + 0x30]
test ebx, ebx
jne 0x6bf9c3
xor edi, edi
push edi
push edi
jmp 0x6c52a4
cmp byte [ebx + 9], 0
je 0x6bf9d9
inc dword [ebx + 0xc]
cmp byte [ebx + 0xa], 0
jne 0x6bf9d9
mov ecx, ebx
call fcn.0066a790
mov edx, dword [esp + 0x14]
test edx, edx
js 0x6bf9f6
mov eax, dword [ebx + 4]
and word [eax + 0x18], di
lea eax, [edx*4]
mov ecx, dword [ebx + 4]
or word [ecx + 0x18], ax
mov eax, dword [ebx + 4]
movzx edi, word [eax + 0x18]
shr edi, 2
and edi, 3
cmp byte [ebx + 9], 0
je 0x6bfa16
add dword [ebx + 0xc], 0xffffffff
jne 0x6bfa16
mov ecx, ebx
call fcn.0066a770
push 0
push edi
jmp 0x6c52a4
mov eax, dword [edi + 0x7c]
mov edx, edi
mov ebx, dword [esp + 0x40]
test eax, eax
mov ecx, ebx
mov dword [esp + 0xb8], 0
cmovne edx, eax
mov dword [esp + 0xbc], 0
mov eax, 1
shl eax, cl
mov edi, dword [edx + 0x58]
test edi, eax
jne 0x6bfa64
bts edi, ebx
mov dword [edx + 0x58], edi
cmp ebx, 1
jne 0x6bfa64
mov ecx, edx
call fcn.006ad110
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x24]
mov edi, dword [ecx + 0x2c]
inc edi
mov dword [ecx + 0x2c], edi
movzx eax, byte [eax]
cmp byte [eax + 0x7fc958], 0x70
jne 0x6bfac7
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x6bfa9f
push 0
push edi
push ebx
mov edx, 0xb1
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6bfb5f
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0xb1
mov dword [eax + ecx*4 + 4], ebx
mov dword [eax + ecx*4 + 8], edi
mov dword [eax + ecx*4 + 0xc], 0
jmp 0x6bfb57
mov eax, dword [esp + 0xc]
test eax, eax
je 0x6bfb16
lea edx, [esp + 0xb8]
mov ecx, eax
call fcn.006593a0
test eax, eax
jne 0x6bfb16
mov eax, dword [esp + 0xbc]
mov edx, dword [esp + 0xb8]
test eax, eax
jg 0x6bfb04
jl 0x6bfb16
test edx, edx
jb 0x6bfb16
test eax, eax
jl 0x6bfb18
jg 0x6bfb04
cmp edx, 0xfffffffe
jbe 0x6bfb18
mov edx, 0xfffffffe
mov dword [esp + 0xbc], 0
jmp 0x6bfb18
xor edx, edx
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x6bfb34
push edx
push edi
push ebx
mov edx, 0xb2
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6bfb5f
mov ebx, dword [esp + 0x40]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0xb2
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
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x6bfb80
push 0
push 1
push edi
mov edx, 0x54
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c52ae
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x54
mov dword [eax + ecx*4 + 4], edi
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x6c52ae
test ecx, ecx
je 0x6bfc1d
mov edx, str.exclusive
mov edi, ecx
sub edi, edx
movzx ecx, byte [edx + edi]
movzx eax, byte [edx]
cmp ecx, eax
jne 0x6bfbd7
test ecx, ecx
jne 0x6bfbe9
mov ecx, 1
jmp 0x6bfc20
movzx eax, byte [eax + 0x7fc958]
movzx ecx, byte [ecx + 0x7fc958]
sub ecx, eax
jne 0x6bfbec
inc edx
jmp 0x6bfbc1
mov edx, dword [esp + 0xc]
mov edi, str.normal
sub edi, edx
movzx ecx, byte [edx]
movzx eax, byte [edi + edx]
cmp ecx, eax
jne 0x6bfc08
test ecx, ecx
jne 0x6bfc1a
jmp 0x6bfc20
movzx eax, byte [eax + 0x7fc958]
movzx ecx, byte [ecx + 0x7fc958]
sub ecx, eax
jne 0x6bfc1d
inc edx
jmp 0x6bfbf7
or ecx, 0xffffffff
mov eax, dword [esp + 0x50]
cmp dword [eax + 4], 0
jne 0x6bfc91
mov eax, dword [esp + 0x10]
cmp ecx, 0xffffffff
jne 0x6bfc3b
mov cl, byte [eax + 0x59]
jmp 0x6bfcc5
mov edx, 2
cmp dword [eax + 0x14], edx
jle 0x6bfc8e
mov edi, 0x20
lea ebx, [ebx]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + edi + 4]
mov eax, dword [eax + 4]
mov eax, dword [eax]
test ecx, ecx
js 0x6bfc81
cmp byte [eax + 0xc], 0
jne 0x6bfc81
mov ebx, dword [eax + 0xe8]
test ebx, ebx
je 0x6bfc76
cmp byte [ebx + 0x2b], 2
je 0x6bfc81
mov byte [eax + 4], cl
mov eax, dword [esp + 0x24]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x10]
inc edx
add edi, 0x10
cmp edx, dword [eax + 0x14]
jl 0x6bfc50
mov byte [eax + 0x59], cl
mov edi, dword [esp + 0x38]
mov eax, dword [edi + 4]
mov eax, dword [eax + 4]
mov eax, dword [eax]
test ecx, ecx
js 0x6bfcc2
cmp byte [eax + 0xc], 0
jne 0x6bfcc2
mov edx, dword [eax + 0xe8]
test edx, edx
je 0x6bfcb7
cmp byte [edx + 0x2b], 2
je 0x6bfcc2
mov byte [eax + 4], cl
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x24], ecx
mov cl, byte [eax + 4]
cmp cl, 1
mov edx, str.exclusive
mov eax, str.normal
mov ecx, esi
cmove eax, edx
mov edx, 1
push eax
call fcn.0067af40
add esp, 4
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x6bfd07
push 0
push 1
push 1
mov edx, 0x54
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c52ae
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x54
mov dword [eax + ecx*4 + 4], 1
jmp 0x6bfb97
test ecx, ecx
je 0x6bfdc8
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x6bfd32
sub ecx, edx
and ecx, 0x3fffffff
xor eax, eax
mov dword [esp + 0x30], ecx
mov dword [esp + 0x20], eax
cmp eax, 6
je 0x6bfdc8
mov edi, dword [eax*4 + 0x7fbb4c]
test edi, edi
je 0x6bfdc8
mov ebx, dword [esp + 0xc]
mov edx, ecx
test ecx, ecx
je 0x6bfd86
mov al, byte [ebx]
dec edx
test al, al
je 0x6bfd87
movzx ecx, byte [edi]
movzx eax, al
mov al, byte [eax + 0x7fc958]
cmp al, byte [ecx + 0x7fc958]
jne 0x6bfd87
inc ebx
inc edi
test edx, edx
jg 0x6bfd65
dec edx
test edx, edx
js 0x6bfdae
movzx eax, byte [edi]
movzx ecx, byte [eax + 0x7fc958]
movzx eax, byte [ebx]
movzx eax, byte [eax + 0x7fc958]
sub eax, ecx
je 0x6bfdae
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x30]
inc eax
jmp 0x6bfd47
mov ebx, dword [esp + 0x20]
cmp ebx, 2
jne 0x6bfde6
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x20]
and eax, 0x10000000
or eax, 0
je 0x6bfdeb
or ebx, 0xffffffff
mov ecx, dword [esp + 0x50]
cmp dword [ecx + 4], 0
jne 0x6bfdef
mov dword [esp + 0x40], 0
mov dword [ecx + 4], 1
jmp 0x6bfdef
cmp ebx, 0xffffffff
je 0x6bfdcb
mov ecx, dword [esp + 0x50]
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x14]
sub edi, 1
js 0x6bfce5
mov edx, edi
shl edx, 4
mov dword [esp + 0x20], edx
jmp 0x6bfe10
mov eax, dword [eax + 0x10]
cmp dword [edx + eax + 4], 0
je 0x6bfea8
cmp edi, dword [esp + 0x40]
je 0x6bfe2a
cmp dword [ecx + 4], 0
jne 0x6bfea8
mov eax, dword [esi + 0x9c]
bts eax, edi
mov dword [esi + 0x9c], eax
cmp edi, 1
je 0x6bfe5c
mov eax, dword [esi]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + edx + 4]
cmp byte [eax + 9], 0
je 0x6bfe5c
mov eax, dword [esi + 0xa0]
bts eax, edi
mov dword [esi + 0xa0], eax
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x6bfe79
push ebx
push 1
push edi
mov edx, 4
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6bfea4
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
mov dword [eax + ecx*4 + 4], edi
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], ebx
mov dword [eax + ecx*4 + 0x10], 0
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x50]
sub edx, 0x10
sub edi, 1
mov eax, dword [esp + 0x10]
mov dword [esp + 0x20], edx
jns 0x6bfe10
jmp 0x6bfce5
mov edi, dword [esp + 0x38]
or ecx, 0xffffffff
mov ebx, dword [esp + 0xc]
mov dword [esp + 0xbc], ecx
mov eax, dword [edi + 4]
mov eax, dword [eax + 4]
mov edi, dword [eax]
mov eax, 0xfffffffe
mov dword [esp + 0xb8], eax
test ebx, ebx
je 0x6bff29
lea edx, [esp + 0xb8]
mov ecx, ebx
call fcn.006593a0
mov ecx, dword [esp + 0xbc]
cmp ecx, 0xffffffff
jg 0x6bff1e
jl 0x6bff17
mov eax, dword [esp + 0xb8]
cmp eax, 0xffffffff
jae 0x6bff25
or eax, 0xffffffff
or ecx, eax
jmp 0x6bff25
mov eax, dword [esp + 0xb8]
mov ebx, dword [esp + 0xc]
cmp ecx, 0xffffffff
jl 0x6bff51
jg 0x6bff35
cmp eax, 0xffffffff
jb 0x6bff51
mov dword [edi + 0xb0], eax
mov dword [edi + 0xb4], ecx
mov edx, dword [edi + 0xe8]
test edx, edx
je 0x6bff51
mov dword [edx + 0x10], eax
mov dword [edx + 0x14], ecx
push dword [edi + 0xb4]
mov ecx, esi
push dword [edi + 0xb0]
call fcn.006bedc0
add esp, 8
jmp 0x6c52b2
mov edi, dword [esp + 0x38]
mov edi, dword [edi + 4]
test ecx, ecx
jne 0x6bffc5
cmp byte [edi + 9], cl
je 0x6bff8b
inc dword [edi + 0xc]
cmp byte [edi + 0xa], cl
jne 0x6bff8b
mov ecx, edi
call fcn.0066a790
mov eax, dword [edi + 4]
xor ebx, ebx
cmp byte [eax + 0x11], bl
je 0x6bff9c
cmp byte [eax + 0x12], bl
setne bl
inc ebx
cmp byte [edi + 9], 0
je 0x6bffaf
add dword [edi + 0xc], 0xffffffff
jne 0x6bffaf
mov ecx, edi
call fcn.0066a770
push 0
push ebx
mov ecx, esi
call fcn.006bedc0
mov edx, dword [esp + 0x2c]
add esp, 8
jmp 0x6c52c5
mov ebx, 0x809a6c
mov edx, ecx
sub ebx, ecx
mov edi, edi
movzx ecx, byte [edx]
movzx eax, byte [ebx + edx]
cmp ecx, eax
jne 0x6bffe6
test ecx, ecx
jne 0x6bfff8
xor ebx, ebx
jmp 0x6c0090
movzx eax, byte [eax + 0x7fc958]
movzx ecx, byte [ecx + 0x7fc958]
sub ecx, eax
jne 0x6bfffb
inc edx
jmp 0x6bffd0
mov edx, dword [esp + 0xc]
mov ebx, str.full
sub ebx, edx
movzx ecx, byte [edx]
movzx eax, byte [ebx + edx]
cmp ecx, eax
jne 0x6c001a
test ecx, ecx
jne 0x6c002c
lea ebx, [ecx + 1]
jmp 0x6c0090
movzx eax, byte [eax + 0x7fc958]
movzx ecx, byte [ecx + 0x7fc958]
sub ecx, eax
jne 0x6c002f
inc edx
jmp 0x6c0006
mov edx, dword [esp + 0xc]
mov ebx, str.incremental
sub ebx, edx
lea ebx, [ebx]
movzx ecx, byte [edx]
movzx eax, byte [ebx + edx]
cmp ecx, eax
jne 0x6c0054
test ecx, ecx
jne 0x6c0066
lea ebx, [ecx + 2]
jmp 0x6c0090
movzx eax, byte [eax + 0x7fc958]
movzx ecx, byte [ecx + 0x7fc958]
sub ecx, eax
jne 0x6c0069
inc edx
jmp 0x6c0040
mov ecx, dword [esp + 0xc]
lea edx, [esp + 0x1c]
mov dword [esp + 0x1c], 0
call fcn.006594b0
mov eax, dword [esp + 0x1c]
xor edx, edx
cmp eax, 2
movzx ecx, al
cmova ecx, edx
movzx ebx, cl
mov eax, dword [esp + 0x10]
mov edx, ebx
mov ecx, edi
mov byte [eax + 0x5a], bl
call fcn.0066d740
test eax, eax
jne 0x6c52ae
cmp ebx, 1
je 0x6c00b6
cmp ebx, 2
jne 0x6c52ae
mov edi, dword [esi + 0x6c]
mov edx, 5
push ecx
push 0x7fbfbc
mov ecx, esi
call fcn.0067b960
mov edx, dword [esp + 0x48]
lea ecx, [edi + 4]
add esp, 8
mov dword [eax + 4], edx
mov dword [eax + 0x18], edx
mov dword [eax + 0x30], ecx
lea ecx, [ebx - 1]
mov dword [eax + 0x54], edx
mov dword [eax + 0x5c], ecx
mov eax, dword [esi + 0x9c]
bts eax, edx
mov dword [esi + 0x9c], eax
cmp edx, 1
je 0x6c52ae
mov eax, dword [esi]
mov ecx, edx
add ecx, ecx
mov eax, dword [eax + 0x10]
mov eax, dword [eax + ecx*8 + 4]
cmp byte [eax + 9], 0
je 0x6c52ae
mov eax, dword [esi + 0xa0]
mov ecx, dword [esp + 0x10]
bts eax, edx
mov edx, dword [esp + 0x24]
mov dword [esi + 0xa0], eax
call fcn.00654910
mov ebx, dword [esp + 0xc]
jmp 0x6c52c3
mov dword [esp + 0x1c], 0
test ecx, ecx
je 0x6c015c
lea edx, [esp + 0x1c]
call fcn.006594b0
test eax, eax
je 0x6c015c
mov edi, dword [esp + 0x1c]
test edi, edi
jg 0x6c0161
mov edi, closesocket
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x40]
mov eax, dword [ebx + 0x7c]
test eax, eax
cmovne ebx, eax
mov eax, 1
shl eax, cl
mov edx, dword [ebx + 0x58]
test edx, eax
jne 0x6c0195
bts edx, ecx
mov dword [ebx + 0x58], edx
cmp ecx, 1
jne 0x6c0195
mov ecx, ebx
call fcn.006ad110
mov ecx, dword [esp + 0x40]
mov eax, dword [ebx + 0x54]
bts eax, ecx
mov dword [ebx + 0x54], eax
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x6c01bc
push 0
push 1
push edi
mov edx, 0x47
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c01eb
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], edi
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov edi, dword [esi + 0x6c]
cmp dword [esi + 0x70], edi
jg 0x6c020e
push 0
push 0
push dword [esp + 0x48]
mov edx, 0x3e
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
mov edi, eax
jmp 0x6c0241
mov edx, dword [esp + 0x40]
lea eax, [edi + 1]
mov dword [esi + 0x6c], eax
lea ecx, [edi + edi*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x3e
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 ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x6c0260
push 0
push 0
push 1
mov edx, 0x54
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c0293
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x54
mov dword [eax + ecx*4 + 4], 1
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 + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x6c02b2
push 0
push 0xffffffffffffffff
push 1
mov edx, 0x56
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c02e5
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], 1
mov dword [eax + ecx*4 + 8], 0xffffffff
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x6c0303
push 0
push edi
push 1
mov edx, 0x3b
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c0332
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x3b
mov dword [eax + ecx*4 + 4], 1
mov dword [eax + ecx*4 + 8], edi
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 0x6c034a
mov eax, 0x96e3e0
mov dword [eax + 8], edx
jmp 0x6c52ae
mov eax, dword [esi + 0x68]
lea ecx, [edi + edi*4]
mov dword [eax + ecx*4 + 8], edx
lea eax, [eax + ecx*4]
jmp 0x6c52ae
test ecx, ecx
jne 0x6c036f
mov edi, dword [esp + 0x38]
mov eax, dword [edi + 0xc]
mov eax, dword [eax + 0x50]
jmp 0x6bf85f
lea edx, [esp + 0x1c]
mov dword [esp + 0x1c], 0
call fcn.006594b0
mov edi, dword [esp + 0x38]
mov eax, dword [esp + 0x1c]
mov ecx, dword [edi + 0xc]
mov dword [ecx + 0x50], eax
mov edx, dword [edi + 0xc]
mov ecx, dword [edi + 4]
mov edx, dword [edx + 0x50]
call fcn.0066d470
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
call fcn.00654910
mov ebx, dword [esp + 0xc]
jmp 0x6c52c3
test ecx, ecx
jne 0x6c03ea
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x20]
and eax, 0x20
or eax, ecx
je 0x6c03d2
mov edi, dword [esp + 0x38]
xor edx, edx
mov ecx, dword [edi + 4]
call fcn.0066d510
cdq
mov ecx, esi
push edx
push eax
call fcn.006bedc0
mov edx, dword [esp + 0x2c]
add esp, 8
mov ecx, ebx
jmp 0x6c52c9
lea edx, [esp + 0x1c]
mov dword [esp + 0x1c], 1
call fcn.006594b0
mov esi, dword [esp + 0x1c]
test eax, eax
je 0x6c0411
mov edi, dword [esp + 0x38]
mov edx, esi
mov ecx, dword [edi + 4]
call fcn.0066d510
mov ecx, dword [esp + 0xc]
test esi, esi
mov edx, 1
setne al
movzx eax, al
push eax
call fcn.006bec40
mov edx, dword [esp + 0x14]
add esp, 4
mov ebx, dword [esp + 0x10]
test al, al
mov eax, ebx
mov ecx, dword [edx + 0x20]
mov edx, dword [edx + 0x24]
je 0x6c0444
or ecx, 0x20
jmp 0x6c0447
and ecx, 0xffffffdf
mov dword [eax + 0x20], ecx
mov ecx, ebx
mov dword [eax + 0x24], edx
call fcn.006bee60
mov edx, dword [esp + 0x24]
mov ecx, ebx
call fcn.00654910
mov ebx, dword [esp + 0xc]
jmp 0x6c52c3
test ecx, ecx
je 0x6c057c
lea edx, [esp + 0x90]
call fcn.006593a0
cmp dword [esp + 0x94], 0
jg 0x6c04ab
jl 0x6c0492
cmp dword [esp + 0x90], 0
jae 0x6c04ab
mov eax, dword [0x8bbd60]
mov ecx, dword [0x8bbd64]
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], ecx
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x10]
cmp dword [ecx + 4], 0
jne 0x6c04d1
mov ecx, dword [esp + 0x94]
mov eax, dword [esp + 0x90]
mov dword [edx + 0x30], eax
mov dword [edx + 0x34], ecx
mov ecx, dword [esp + 0x50]
mov ebx, dword [edx + 0x14]
sub ebx, 1
js 0x6c057c
mov esi, ebx
shl esi, 4
mov eax, dword [edx + 0x10]
mov edi, dword [esi + eax + 4]
test edi, edi
je 0x6c0568
cmp ebx, dword [esp + 0x40]
je 0x6c04f9
cmp dword [ecx + 4], 0
jne 0x6c0568
cmp byte [edi + 9], 0
mov ecx, dword [esp + 0x94]
mov eax, dword [esp + 0x90]
mov dword [esp + 0x7c], ecx
mov ecx, dword [edi + 4]
mov dword [esp + 0x30], eax
mov dword [esp + 0x88], ecx
je 0x6c053a
inc dword [edi + 0xc]
cmp byte [edi + 0xa], 0
jne 0x6c053a
mov ecx, edi
call fcn.0066a790
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x88]
mov ecx, dword [ecx]
mov dword [ecx + 0x88], eax
mov eax, dword [esp + 0x7c]
mov dword [ecx + 0x8c], eax
call fcn.00664180
cmp byte [edi + 9], 0
je 0x6c0564
add dword [edi + 0xc], 0xffffffff
jne 0x6c0564
mov ecx, edi
call fcn.0066a770
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x50]
sub esi, 0x10
sub ebx, 1
jns 0x6c04e2
mov esi, dword [esp + 0x3c]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x90], 0xffffffff
mov dword [esp + 0x94], 0xffffffff
mov dword [esp + 0x20], 1
mov eax, dword [ecx + 0xc]
test eax, eax
je 0x6c05b3
push eax
call dword [0x8bbd08]
mov ecx, dword [esp + 0x14]
add esp, 4
cmp dword [esp + 0x34], 0
je 0x6c060d
mov edi, dword [ecx + 0x14]
dec edi
mov ebx, edi
shl ebx, 4
add ebx, dword [ecx + 0x10]
test edi, edi
js 0x6c0688
mov esi, dword [esp + 0x34]
mov ecx, dword [ebx]
test ecx, ecx
je 0x6c05e3
mov edx, esi
call fcn.00658620
test eax, eax
je 0x6c05ff
test edi, edi
jne 0x6c05f7
mov edx, esi
mov ecx, str.main
call fcn.00658620
test eax, eax
je 0x6c05ff
sub ebx, 0x10
sub edi, 1
jns 0x6c05d2
mov esi, dword [esp + 0x3c]
mov ecx, dword [esp + 0x10]
test edi, edi
jns 0x6c060f
jmp 0x6c0688
xor edi, edi
mov eax, dword [ecx + 0x10]
add edi, edi
mov edi, dword [eax + edi*8 + 4]
test edi, edi
je 0x6c0688
cmp byte [edi + 9], 0
je 0x6c0636
inc dword [edi + 0xc]
cmp byte [edi + 0xa], 0
jne 0x6c0636
mov ecx, edi
call fcn.0066a790
mov ecx, dword [esp + 0x10]
mov eax, dword [edi + 4]
mov ebx, dword [ecx + 0x1c8]
mov eax, dword [eax]
mov eax, dword [eax + 0x40]
mov ecx, dword [eax]
test ecx, ecx
jne 0x6c0654
mov dword [esp + 0x20], 0xc
jmp 0x6c066b
lea edx, [esp + 0x90]
push edx
push 0x12
push eax
mov eax, dword [ecx + 0x28]
call eax
add esp, 0xc
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x10]
mov dword [eax + 0x1c8], ebx
cmp byte [edi + 9], 0
je 0x6c0688
add dword [edi + 0xc], 0xffffffff
jne 0x6c0688
mov ecx, edi
call fcn.0066a770
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x6c069d
push eax
call dword [0x8bbd10]
add esp, 4
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x6c06b8
push dword [esp + 0x94]
push dword [esp + 0x94]
jmp 0x6c52a4
mov ebx, dword [esp + 0xc]
cmp eax, 0xc
je 0x6c52b2
mov ecx, dword [esp + 0x18]
inc dword [ecx + 0x24]
mov dword [ecx + 0xc], eax
jmp 0x6c52b2
test ecx, ecx
jne 0x6c06e5
mov ebx, dword [esp + 0x10]
movzx eax, byte [ebx + 0x56]
jmp 0x6c03d2
mov cl, byte [ecx]
mov al, cl
sub al, 0x30
cmp al, 2
ja 0x6c06f7
movsx ebx, cl
sub ebx, 0x30
jmp 0x6c0762
mov ebx, dword [esp + 0xc]
mov esi, str.file
mov edx, ebx
movzx eax, byte [esi]
movzx ecx, cl
cmp ecx, eax
jne 0x6c0715
test ecx, ecx
jne 0x6c0727
lea ebx, [ecx + 1]
jmp 0x6c0762
movzx eax, byte [eax + 0x7fc958]
movzx ecx, byte [ecx + 0x7fc958]
sub ecx, eax
jne 0x6c072e
mov cl, byte [edx + 1]
inc edx
inc esi
jmp 0x6c0702
mov esi, str.memory
mov edx, ebx
sub esi, ebx
movzx ecx, byte [edx]
movzx eax, byte [esi + edx]
cmp ecx, eax
jne 0x6c074b
test ecx, ecx
jne 0x6c075d
lea ebx, [ecx + 2]
jmp 0x6c0762
movzx eax, byte [eax + 0x7fc958]
movzx ecx, byte [ecx + 0x7fc958]
sub ecx, eax
jne 0x6c0760
inc edx
jmp 0x6c0737
xor ebx, ebx
mov esi, dword [edi]
movzx eax, byte [esi + 0x56]
cmp eax, ebx
je 0x6c52ae
mov eax, dword [esi + 0x10]
mov ecx, dword [eax + 0x14]
test ecx, ecx
je 0x6c079c
cmp byte [esi + 0x55], 0
je 0x6c07b5
cmp byte [ecx + 8], 0
jne 0x6c07b5
call fcn.0066d270
mov eax, dword [esi + 0x10]
mov ecx, esi
mov dword [eax + 0x14], 0
call fcn.006a5260
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
mov byte [esi + 0x56], bl
call fcn.00654910
mov ebx, dword [esp + 0xc]
jmp 0x6c52c3
push str.temporary_storage_cannot_be_changed_from_within_a_transaction
push edi
call fcn.00658480
mov edx, dword [esp + 0x2c]
add esp, 8
mov ecx, dword [esp + 0x10]
call fcn.00654910
mov ebx, dword [esp + 0xc]
jmp 0x6c52c3
cmp byte [0x8bbcbc], 0
je 0x6c07fb
push 0xb
call dword [0x8bbd00]
add esp, 4
test eax, eax
je 0x6c07fb
push eax
call dword [0x8bbd08]
add esp, 4
mov ecx, dword [esp + 0xc]
test ecx, ecx
jne 0x6c087a
mov eax, dword [0x8e7ddc]
test eax, eax
je 0x6c09b8
push eax
mov edx, 1
mov ecx, esi
call fcn.0067af40
mov ecx, dword [esi + 0x6c]
add esp, 4
cmp dword [esi + 0x70], ecx
jg 0x6c0842
push 0
push 1
push 1
mov edx, 0x54
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c09b8
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x54
mov dword [eax + ecx*4 + 4], 1
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x6c09b8
cmp byte [ecx], 0
mov esi, dword [esp + 0x10]
je 0x6c08ea
mov eax, dword [esi]
lea edx, [esp + 0xa4]
push edx
push 1
push ecx
push eax
mov eax, dword [eax + 0x20]
call eax
add esp, 0x10
test eax, eax
jne 0x6c08a6
cmp dword [esp + 0xa4], eax
jne 0x6c08ea
push str.not_a_writable_directory
push edi
call fcn.00658480
add esp, 8
cmp byte [0x8bbcbc], 0
je 0x6c08d6
push 0xb
call dword [0x8bbd00]
add esp, 4
test eax, eax
je 0x6c08d6
push eax
call dword [0x8bbd10]
add esp, 4
mov edx, dword [esp + 0x14]
mov ecx, esi
call fcn.00654910
mov ebx, dword [esp + 0xc]
jmp 0x6c52c3
cmp byte [esi + 0x56], 1
ja 0x6c092e
mov esi, dword [edi]
mov eax, dword [esi + 0x10]
mov ecx, dword [eax + 0x14]
test ecx, ecx
je 0x6c092e
cmp byte [esi + 0x55], 0
je 0x6c0920
cmp byte [ecx + 8], 0
jne 0x6c0920
call fcn.0066d270
mov eax, dword [esi + 0x10]
mov ecx, esi
mov dword [eax + 0x14], 0
call fcn.006a5260
jmp 0x6c092e
push str.temporary_storage_cannot_be_changed_from_within_a_transaction
push edi
call fcn.00658480
add esp, 8
mov esi, dword [0x8e7ddc]
test esi, esi
je 0x6c0990
cmp dword [0x8bbcb8], 0
je 0x6c0986
mov eax, dword [0x96e500]
test eax, eax
je 0x6c0954
push eax
call dword [0x8bbd08]
add esp, 4
push esi
call dword [0x8bbce4]
sub dword [0x96e390], eax
add esp, 4
dec dword [0x96e3b4]
push esi
call dword [0x8bbcdc]
mov eax, dword [0x96e500]
add esp, 4
test eax, eax
je 0x6c0990
push eax
call dword [0x8bbd10]
jmp 0x6c098d
push esi
call dword [0x8bbcdc]
add esp, 4
mov ecx, dword [esp + 0xc]
cmp byte [ecx], 0
je 0x6c09ae
push ecx
push 0x88d508
call fcn.00657330
add esp, 8
mov dword [0x8e7ddc], eax
jmp 0x6c09b8
mov dword [0x8e7ddc], 0
cmp byte [0x8bbcbc], 0
je 0x6c52ae
push 0xb
call dword [0x8bbd00]
jmp 0x6bf5ba
cmp byte [0x8bbcbc], 0
je 0x6c09f4
push 0xb
call dword [0x8bbd00]
add esp, 4
test eax, eax
je 0x6c09f4
push eax
call dword [0x8bbd08]
add esp, 4
mov ecx, dword [esp + 0xc]
test ecx, ecx
jne 0x6c0a06
mov eax, dword [0x8e7de0]
jmp 0x6c0808
cmp byte [ecx], 0
je 0x6c0a7a
mov ebx, dword [esp + 0x10]
lea edx, [esp + 0xa8]
push edx
push 1
push ecx
mov eax, dword [ebx]
push eax
mov eax, dword [eax + 0x20]
call eax
add esp, 0x10
test eax, eax
jne 0x6c0a32
cmp dword [esp + 0xa8], eax
jne 0x6c0a76
push str.not_a_writable_directory
push edi
call fcn.00658480
add esp, 8
cmp byte [0x8bbcbc], 0
je 0x6c0a62
push 0xb
call dword [0x8bbd00]
add esp, 4
test eax, eax
je 0x6c0a62
push eax
call dword [0x8bbd10]
add esp, 4
mov edx, dword [esp + 0x14]
mov ecx, ebx
call fcn.00654910
mov ebx, dword [esp + 0xc]
jmp 0x6c52c3
mov ecx, dword [esp + 0xc]
mov esi, dword [0x8e7de0]
test esi, esi
je 0x6c0ae0
cmp dword [0x8bbcb8], 0
je 0x6c0ad2
mov eax, dword [0x96e500]
test eax, eax
je 0x6c0aa0
push eax
call dword [0x8bbd08]
add esp, 4
push esi
call dword [0x8bbce4]
sub dword [0x96e390], eax
add esp, 4
dec dword [0x96e3b4]
push esi
call dword [0x8bbcdc]
mov eax, dword [0x96e500]
add esp, 4
test eax, eax
je 0x6c0adc
push eax
call dword [0x8bbd10]
jmp 0x6c0ad9
push esi
call dword [0x8bbcdc]
add esp, 4
mov ecx, dword [esp + 0xc]
cmp byte [ecx], 0
je 0x6c0afd
push ecx
push 0x88d508
call fcn.00657330
add esp, 8
mov dword [0x8e7de0], eax
jmp 0x6c09b8
mov dword [0x8e7de0], 0
jmp 0x6c09b8
test ecx, ecx
jne 0x6c0b33
mov edi, dword [esp + 0x38]
movzx eax, byte [edi + 8]
cdq
sub eax, 1
sbb edx, ecx
mov ecx, esi
push edx
push eax
call fcn.006bedc0
mov edx, dword [esp + 0x2c]
add esp, 8
jmp 0x6c52c5
mov edx, dword [esp + 0x10]
cmp byte [edx + 0x55], 0
jne 0x6c0b61
push str.Safety_level_may_not_be_changed_inside_a_transaction
push edi
call fcn.00658480
mov edx, dword [esp + 0x2c]
add esp, 8
mov ecx, dword [esp + 0x10]
call fcn.00654910
mov ebx, dword [esp + 0xc]
jmp 0x6c52c3
cmp dword [esp + 0x40], 1
je 0x6c52ae
push 1
xor edx, edx
call fcn.006bec40
mov edi, dword [esp + 0x3c]
inc eax
add esp, 4
mov ecx, 1
and eax, 7
cmove eax, ecx
mov byte [edi + 8], al
mov byte [edi + 9], cl
mov ecx, dword [esp + 0x10]
call fcn.006bee60
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
call fcn.00654910
mov ebx, dword [esp + 0xc]
jmp 0x6c52c3
test ecx, ecx
jne 0x6c0bef
mov edx, ebx
mov ecx, esi
call fcn.006bed30
mov edi, dword [esp + 0x10]
mov ecx, dword [edi + 0x20]
mov eax, dword [edi + 0x24]
and ecx, dword [ebx + 8]
and eax, dword [ebx + 0xc]
or ecx, eax
je 0x6c0bd5
mov eax, 1
jmp 0x6c0bd7
xor eax, eax
push 0
push eax
mov ecx, esi
call fcn.006bedc0
mov edx, dword [esp + 0x2c]
add esp, 8
mov ecx, edi
jmp 0x6c52c9
mov eax, dword [esp + 0x10]
mov edi, dword [ebx + 8]
mov ebx, dword [ebx + 0xc]
cmp byte [eax + 0x55], 0
jne 0x6c0c05
and edi, 0xffffbfff
push 0
mov edx, 1
call fcn.006bec40
mov ecx, dword [esp + 0x14]
add esp, 4
mov edx, dword [ecx + 0x20]
mov ecx, dword [ecx + 0x24]
mov dword [esp + 0x30], ecx
test al, al
je 0x6c0c38
mov eax, dword [esp + 0x10]
or edx, edi
or ecx, ebx
mov ebx, eax
mov dword [eax + 0x20], edx
mov dword [eax + 0x24], ecx
jmp 0x6c0c6a
mov ecx, edi
mov eax, ebx
not ecx
not eax
and eax, dword [esp + 0x30]
and ecx, edx
mov edx, dword [esp + 0x10]
mov dword [edx + 0x20], ecx
mov dword [edx + 0x24], eax
cmp edi, 0x80000
jne 0x6c0c89
test ebx, ebx
jne 0x6c0c89
mov dword [edx + 0x208], ebx
mov dword [edx + 0x20c], ebx
mov ebx, edx
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x6c0cb0
push 0
push 0
push 0
mov edx, 0xa6
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c0ce3
and edi, 1
or edi, 0
je 0x6c0c68
mov ecx, dword [esp + 0xc]
mov edx, str.reset
call fcn.00658620
mov ebx, dword [esp + 0x10]
test eax, eax
jne 0x6c0c6a
mov ecx, ebx
call fcn.006a5260
jmp 0x6c0c6a
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0xa6
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, ebx
call fcn.006bee60
mov edx, dword [esp + 0x24]
mov ecx, ebx
call fcn.00654910
mov ebx, dword [esp + 0xc]
jmp 0x6c52c3
test ecx, ecx
je 0x6c52ae
mov edi, dword [esp + 0x34]
mov edx, edi
mov ecx, dword [esp + 0x18]
call fcn.006ad1b0
mov ecx, dword [esp + 0x18]
mov edx, 2
push edi
push dword [esp + 0x10]
call fcn.006a4e20
mov edi, eax
add esp, 8
mov dword [esp + 0x48], edi
test edi, edi
je 0x6c52ae
mov ecx, dword [edi + 8]
mov dword [esp + 0x80], 0
mov dword [esp + 0x20], ecx
test ecx, ecx
je 0x6c0d64
nop
mov eax, dword [ecx + 0x38]
and al, 3
cmp al, 2
je 0x6c0d60
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x6c0d50
mov dword [esp + 0x20], ecx
mov eax, dword [esp + 0x18]
mov dword [eax + 0x2c], 7
cmp byte [edi + 0x2b], 1
je 0x6c0d7c
cmp word [edi + 0x22], 0
jg 0x6c0d85
mov edx, edi
mov ecx, eax
call fcn.006a91b0
mov ecx, dword [edi + 4]
xor edx, edx
movzx eax, word [edi + 0x22]
xor edi, edi
mov dword [esp + 0x6c], edx
mov dword [esp + 0x14], ecx
cmp di, ax
jge 0x6c52ae
mov dword [esp + 0x1c], eax
movzx eax, word [ecx + 0xe]
xor edi, edi
test al, 0x62
je 0x6c0dde
mov eax, dword [ebx + 8]
or eax, dword [ebx + 0xc]
jne 0x6c0dc3
inc dword [esp + 0x80]
jmp 0x6c0f4e
movzx eax, word [ecx + 0xe]
test al, 0x20
je 0x6c0dd2
mov edi, 2
jmp 0x6c0dde
movzx edi, al
and edi, 0x40
or edi, 0x20
shr edi, 5
test al, 1
jne 0x6c0de6
xor edx, edx
jmp 0x6c0e29
cmp dword [esp + 0x20], 0
mov edx, 1
je 0x6c0e29
mov eax, dword [esp + 0x1c]
cwde
mov dword [esp + 0x30], eax
cmp eax, edx
jl 0x6c0e29
mov eax, dword [esp + 0x20]
mov esi, dword [esp + 0x30]
mov ecx, dword [eax + 4]
lea ebx, [ebx]
movsx eax, word [ecx]
cmp eax, dword [esp + 0x6c]
je 0x6c0e21
inc edx
add ecx, 2
cmp edx, esi
jle 0x6c0e10
mov esi, dword [esp + 0x3c]
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + 0xc]
mov dword [esp + 0x1c], eax
test ax, ax
jne 0x6c0e3a
xor eax, eax
jmp 0x6c0e7f
mov eax, dword [esp + 0x48]
cmp byte [eax + 0x2b], 0
je 0x6c0e48
xor eax, eax
jmp 0x6c0e7f
mov eax, dword [eax + 0x34]
test eax, eax
je 0x6c0e7f
mov ebx, dword [esp + 0x1c]
movzx ebx, bx
cmp dword [eax], ebx
mov ebx, dword [esp + 0x64]
jge 0x6c0e62
xor eax, eax
jmp 0x6c0e7f
mov ecx, dword [esp + 0x1c]
movzx eax, cx
mov ecx, dword [esp + 0x48]
lea eax, [eax + eax*4]
mov esi, dword [ecx + 0x34]
mov ecx, dword [esp + 0x14]
mov eax, dword [esi + eax*4 - 0xc]
mov esi, dword [esp + 0x3c]
cmp edi, 2
jae 0x6c0e91
test eax, eax
je 0x6c0e91
mov eax, dword [eax + 8]
mov dword [esp + 0x1c], eax
jmp 0x6c0e99
mov dword [esp + 0x1c], 0
mov eax, dword [ebx + 8]
or eax, dword [ebx + 0xc]
mov dword [esp + 0x44], str.issisii
jne 0x6c0eb1
mov dword [esp + 0x44], str.issisi
test byte [ecx + 0xe], 4
je 0x6c0eef
mov eax, dword [ecx]
mov ecx, eax
mov dword [esp + 0x88], eax
lea eax, [ecx + 1]
mov dword [esp + 0x30], eax
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x6c0ed0
mov eax, dword [esp + 0x88]
sub ecx, dword [esp + 0x30]
inc eax
add eax, ecx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x54], eax
jmp 0x6c0f0f
mov eax, dword [ecx + 4]
shr eax, 4
and eax, 0xf
je 0x6c0f07
mov eax, dword [eax*4 + 0x8d21a4]
mov dword [esp + 0x54], eax
jmp 0x6c0f0f
mov dword [esp + 0x54], 0x775914
test byte [ecx + 4], 0xf
mov eax, 0
push edi
push edx
push dword [esp + 0x24]
setne al
push eax
push dword [esp + 0x64]
mov eax, dword [esp + 0x80]
push dword [ecx]
sub eax, dword [esp + 0x98]
push eax
push dword [esp + 0x60]
push 1
push esi
call fcn.0067aff0
mov ecx, dword [esp + 0x3c]
add esp, 0x28
mov edx, dword [esp + 0x6c]
mov eax, dword [esp + 0x48]
inc edx
add ecx, 0x10
mov dword [esp + 0x6c], edx
mov dword [esp + 0x14], ecx
movzx eax, word [eax + 0x22]
mov edi, eax
cwde
mov dword [esp + 0x1c], edi
cmp edx, eax
jl 0x6c0da5
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
call fcn.00654910
mov ebx, dword [esp + 0xc]
jmp 0x6c52c3
mov ebx, dword [esp + 0x34]
mov ecx, edi
mov edx, ebx
mov dword [edi + 0x2c], 6
call fcn.006ad1b0
mov edx, dword [esp + 0x10]
mov dword [esp + 0x64], 0
cmp dword [edx + 0x14], 0
jle 0x6c52ae
xor edi, edi
mov dword [esp + 0x14], edi
test ebx, ebx
je 0x6c0fdc
mov eax, dword [edx + 0x10]
mov edx, dword [edi + eax]
test edx, edx
je 0x6c12ba
mov ecx, ebx
call fcn.00658620
test eax, eax
jne 0x6c12ba
mov edx, dword [esp + 0x10]
mov eax, dword [edx + 0x10]
mov edx, dword [eax + edi + 0xc]
add edx, 8
mov ebx, dword [edx + 4]
test ebx, ebx
je 0x6c1164
mov eax, dword [edx + 8]
dec ebx
mov dword [esp + 0x44], ebx
test eax, eax
je 0x6c1164
mov ecx, dword [eax + 8]
cmp word [ecx + 0x22], 0
je 0x6c1016
mov eax, dword [eax]
test eax, eax
jne 0x6c1001
jmp 0x6c1164
push dword [ecx]
push str.SELECTFROM__w_
push dword [esp + 0x18]
call fcn.00657240
add esp, 0xc
mov dword [esp + 0x30], eax
test eax, eax
je 0x6c1120
push 0
lea ecx, [esp + 0xa0]
mov dword [esp + 0xa0], 0
push ecx
mov ecx, dword [esp + 0x18]
mov edx, eax
push 0
push 0
push 0xffffffffffffffff
call fcn.006c6de0
mov edi, dword [esp + 0xb0]
add esp, 0x14
test edi, edi
je 0x6c110f
mov ebx, dword [edi]
test ebx, ebx
jne 0x6c10a7
push str.API_called_with_finalized_prepared_statement
push 0x15
call fcn.006575b0
push 0x88c2c4
push 0x15cd3
push str.misuse
push str._s_at_line__d_of___.10s_
push 0x15
call fcn.006575b0
mov edi, dword [esp + 0x40]
add esp, 0x1c
mov dword [esp + 0x24], edi
jmp 0x6c110b
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x6c10b8
push eax
call dword [0x8bbd08]
add esp, 4
cmp dword [edi + 0x8c], 0
jl 0x6c10d5
jg 0x6c10cc
cmp dword [edi + 0x88], 0
jbe 0x6c10d5
mov edx, edi
mov ecx, ebx
call fcn.0067fc10
mov ecx, edi
call fcn.0067dc20
mov ecx, edi
mov dword [esp + 0x1c], eax
call fcn.0067dd60
cmp byte [ebx + 0x57], 0
mov edx, dword [esp + 0x1c]
jne 0x6c10f5
test edx, edx
je 0x6c10fc
mov ecx, ebx
call fcn.00655160
mov ecx, ebx
call fcn.006fe490
mov eax, dword [esp + 0x24]
mov dword [esp + 0x24], eax
mov ebx, dword [esp + 0x44]
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x10]
call fcn.00654910
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
cmp byte [eax + 0x57], 0
je 0x6c1152
push str.out_of_memory
push dword [eax + 0x10c]
call fcn.00658480
mov eax, dword [esp + 0x18]
add esp, 8
mov eax, dword [eax + 0x10c]
mov dword [eax + 0xc], 7
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x10]
mov edx, dword [eax + edi + 0xc]
add edx, 8
test ebx, ebx
jne 0x6c0ff1
mov edi, dword [edx + 8]
mov dword [esp + 0x54], edi
test edi, edi
je 0x6c12b2
mov eax, dword [esp + 0xc]
mov ebx, dword [edi + 8]
test eax, eax
je 0x6c1197
mov edx, dword [ebx]
test edx, edx
je 0x6c12a4
mov ecx, eax
call fcn.00658620
test eax, eax
jne 0x6c12a0
mov al, byte [ebx + 0x2b]
cmp al, 2
jne 0x6c11a8
mov dword [esp + 0x6c], str.view
jmp 0x6c11ce
cmp al, 1
jne 0x6c11b6
mov dword [esp + 0x6c], str.virtual
jmp 0x6c11ce
test dword [ebx + 0x1c], 0x1000
mov ecx, str.shadow
mov eax, str.table
cmove ecx, eax
mov dword [esp + 0x6c], ecx
mov eax, dword [ebx]
mov edx, 7
mov dword [esp + 0x20], eax
test eax, eax
je 0x6c1256
mov edi, eax
mov ebx, str.sqlite_
mov al, byte [edi]
dec edx
test al, al
je 0x6c1206
movzx ecx, byte [ebx]
movzx eax, al
mov al, byte [eax + 0x7fc958]
cmp al, byte [ecx + 0x7fc958]
jne 0x6c1206
inc edi
inc ebx
test edx, edx
jg 0x6c11e4
dec edx
test edx, edx
js 0x6c1222
movzx eax, byte [ebx]
movzx ecx, byte [eax + 0x7fc958]
movzx eax, byte [edi]
movzx eax, byte [eax + 0x7fc958]
sub eax, ecx
jne 0x6c1256
mov edi, dword [esp + 0x20]
mov edx, 0x88e1cb
lea ecx, [edi + 7]
call fcn.00658620
test eax, eax
jne 0x6c123e
mov edi, str.sqlite_schema
jmp 0x6c125a
mov edx, 0x88e1e3
lea ecx, [edi + 7]
call fcn.00658620
test eax, eax
jne 0x6c125a
mov edi, str.sqlite_temp_schema
jmp 0x6c125a
mov edi, dword [esp + 0x20]
mov ecx, dword [esp + 0x54]
mov edx, dword [ecx + 8]
mov ecx, dword [edx + 0x1c]
mov eax, ecx
shr eax, 0x10
and eax, 1
shr ecx, 7
push eax
movsx eax, word [edx + 0x22]
and ecx, 1
push ecx
mov ecx, dword [esp + 0x1c]
push eax
mov eax, dword [esp + 0x1c]
push dword [esp + 0x78]
push edi
mov eax, dword [eax + 0x10]
push dword [eax + ecx]
push str.sssiii
push 1
push esi
call fcn.0067aff0
mov edi, dword [esp + 0x78]
add esp, 0x24
mov eax, dword [esp + 0xc]
mov edi, dword [edi]
mov dword [esp + 0x54], edi
test edi, edi
jne 0x6c1177
mov ebx, dword [esp + 0x34]
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x64]
add edi, 0x10
mov edx, dword [esp + 0x10]
inc eax
mov dword [esp + 0x64], eax
mov dword [esp + 0x14], edi
cmp eax, dword [edx + 0x14]
jl 0x6c0fb7
jmp 0x6c52ae
test ecx, ecx
je 0x6c52ae
push dword [esp + 0x34]
mov edx, ecx
mov ecx, dword [esp + 0x14]
call fcn.006a4fe0
mov edi, eax
add esp, 4
test edi, edi
jne 0x6c1348
push dword [esp + 0x34]
mov ecx, dword [esp + 0x1c]
lea edx, [eax + 2]
push dword [esp + 0x10]
call fcn.006a4e20
add esp, 8
test eax, eax
je 0x6c52ae
test byte [eax + 0x1c], 0x80
je 0x6c52ae
mov edi, dword [eax + 8]
test edi, edi
je 0x6c52ae
mov eax, dword [edi + 0x38]
and al, 3
cmp al, 2
je 0x6c1340
mov edi, dword [edi + 0x14]
test edi, edi
jne 0x6c1330
test edi, edi
je 0x6c52ae
mov edx, dword [edi + 0x18]
mov ecx, 0xffff8000
test edx, edx
je 0x6c136c
mov eax, dword [esp + 0x10]
xor ecx, ecx
mov eax, dword [eax + 0x10]
add eax, 0xc
cmp dword [eax], edx
je 0x6c136c
lea eax, [eax + 0x10]
inc ecx
cmp dword [eax], edx
jne 0x6c1364
mov eax, dword [ebx + 8]
or eax, dword [ebx + 0xc]
je 0x6c137f
movzx eax, word [edi + 0x34]
mov edx, 6
jmp 0x6c1388
movzx eax, word [edi + 0x32]
mov edx, 3
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x20], eax
mov dword [ebx + 0x2c], edx
mov edx, ebx
mov eax, dword [edi + 0xc]
mov dword [esp + 0x30], eax
mov eax, dword [ebx + 0x7c]
test eax, eax
cmovne edx, eax
mov eax, 1
shl eax, cl
mov ebx, dword [edx + 0x58]
test ebx, eax
jne 0x6c13c4
bts ebx, ecx
mov dword [edx + 0x58], ebx
cmp ecx, 1
jne 0x6c13c4
mov ecx, edx
call fcn.006ad110
xor ebx, ebx
cmp word [esp + 0x20], bx
je 0x6c52ae
mov eax, dword [edi + 4]
movzx eax, word [eax + ebx*2]
movsx edx, ax
test ax, ax
jns 0x6c13e4
xor eax, eax
jmp 0x6c13f2
mov eax, dword [esp + 0x30]
mov ecx, edx
add ecx, ecx
mov eax, dword [eax + 4]
mov eax, dword [eax + ecx*8]
push eax
push edx
push ebx
push str.iisX
push 1
push esi
call fcn.0067aff0
mov ecx, dword [esp + 0x7c]
add esp, 0x18
mov eax, dword [ecx + 8]
or eax, dword [ecx + 0xc]
je 0x6c143a
movzx eax, word [edi + 0x32]
cmp ebx, eax
sbb eax, eax
neg eax
push eax
mov eax, dword [edi + 0x20]
push dword [eax + ebx*4]
mov eax, dword [edi + 0x1c]
movzx eax, byte [eax + ebx]
push eax
push str.isiX
push 4
push esi
call fcn.0067aff0
add esp, 0x18
mov eax, dword [esp + 0x18]
mov ecx, dword [esi + 0x6c]
mov edx, dword [eax + 0x2c]
cmp dword [esi + 0x70], ecx
jg 0x6c145f
push 0
push edx
push 1
mov edx, 0x54
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c1492
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov esi, dword [esp + 0x3c]
mov dword [eax + ecx*4], 0x54
mov dword [eax + ecx*4 + 4], 1
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 + 0x20]
inc ebx
movzx eax, cx
cmp ebx, eax
jl 0x6c13d1
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
call fcn.00654910
mov ebx, dword [esp + 0xc]
jmp 0x6c52c3
test ecx, ecx
je 0x6c52ae
push dword [esp + 0x34]
mov edx, ecx
mov ecx, dword [esp + 0x14]
call fcn.006a4a60
mov edi, eax
add esp, 4
test edi, edi
je 0x6c52ae
mov edx, dword [edi + 0x3c]
mov ecx, 0xffff8000
test edx, edx
je 0x6c1500
mov eax, dword [esp + 0x10]
xor ecx, ecx
mov eax, dword [eax + 0x10]
add eax, 0xc
cmp dword [eax], edx
je 0x6c1500
lea eax, [eax + 0x10]
inc ecx
cmp dword [eax], edx
jne 0x6c14f8
mov ebx, dword [esp + 0x18]
mov dword [ebx + 0x2c], 5
mov eax, dword [ebx + 0x7c]
test eax, eax
cmovne ebx, eax
mov eax, 1
shl eax, cl
mov edx, dword [ebx + 0x58]
test edx, eax
jne 0x6c1533
bts edx, ecx
mov dword [ebx + 0x58], edx
cmp ecx, 1
jne 0x6c1533
mov ecx, ebx
call fcn.006ad110
mov edi, dword [edi + 8]
xor ebx, ebx
test edi, edi
je 0x6c52ae
mov dword [esp + 0xb8], 0x809afc
mov dword [esp + 0xbc], 0x809b44
mov dword [esp + 0xc0], 0x889df4
xor eax, eax
cmp dword [edi + 0x24], eax
setne al
push eax
mov eax, dword [edi + 0x38]
and eax, 3
push dword [esp + eax*4 + 0xbc]
xor eax, eax
cmp byte [edi + 0x36], al
setne al
push eax
push dword [edi]
push ebx
push str.isisi
push 1
push esi
call fcn.0067aff0
mov edi, dword [edi + 0x14]
add esp, 0x20
inc ebx
test edi, edi
jne 0x6c1561
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
call fcn.00654910
mov ebx, dword [esp + 0xc]
jmp 0x6c52c3
mov edx, dword [esp + 0x10]
mov dword [edi + 0x2c], 3
xor edi, edi
cmp dword [edx + 0x14], edi
jle 0x6c52ae
xor ebx, ebx
lea esp, [esp]
mov ecx, dword [edx + 0x10]
mov eax, dword [ecx + ebx + 4]
test eax, eax
je 0x6c1614
mov eax, dword [eax + 4]
mov eax, dword [eax]
cmp byte [eax + 0xf], 0
jne 0x6c15f6
cmp dword [eax], 0x8d2d20
je 0x6c15f6
mov eax, dword [eax + 0xb8]
jmp 0x6c15fb
mov eax, 0x7fb208
push eax
push dword [ecx + ebx]
push edi
push 0x88a57c
push 1
push esi
call fcn.0067aff0
mov edx, dword [esp + 0x28]
add esp, 0x18
inc edi
add ebx, 0x10
cmp edi, dword [edx + 0x14]
jl 0x6c15d0
jmp 0x6c52ae
mov edx, dword [esp + 0x10]
xor ebx, ebx
mov dword [edi + 0x2c], 2
mov edi, dword [edx + 0x1b8]
test edi, edi
je 0x6c52ae
lea ecx, [ecx]
mov eax, dword [edi + 8]
push dword [eax]
push ebx
push 0x88a578
push 1
push esi
call fcn.0067aff0
mov edi, dword [edi]
add esp, 0x14
inc ebx
test edi, edi
jne 0x6c1640
jmp 0x6c52ae
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 0x18]
mov eax, 0x96e410
shr ebx, 5
and ebx, 1
mov dword [edi + 0x2c], 6
mov dword [esp + 0x1c], eax
nop
mov edi, dword [eax]
test edi, edi
je 0x6c16a0
push ebx
push 1
mov edx, edi
mov ecx, esi
call fcn.006bef80
mov edi, dword [edi + 0x24]
add esp, 8
test edi, edi
jne 0x6c1686
mov eax, dword [esp + 0x1c]
add eax, 4
mov dword [esp + 0x1c], eax
cmp eax, 0x96e46c
jl 0x6c1680
mov edx, dword [esp + 0x10]
mov edi, dword [edx + 0x1a8]
test edi, edi
je 0x6c52ae
mov edx, dword [edi + 8]
mov ecx, esi
push ebx
push 0
call fcn.006bef80
mov edi, dword [edi]
add esp, 8
test edi, edi
jne 0x6c16c0
jmp 0x6c52ae
mov edx, dword [esp + 0x10]
mov dword [edi + 0x2c], 1
mov edi, dword [edx + 0x18c]
test edi, edi
je 0x6c52ae
mov eax, dword [edi + 8]
push dword [eax + 4]
push 0x809b3c
push 1
push esi
call fcn.0067aff0
mov edi, dword [edi]
add esp, 0x10
test edi, edi
jne 0x6c16f4
jmp 0x6c52ae
mov edi, 0x7fcfe8
lea ebx, [ebx]
push dword [edi]
push 0x809b3c
push 1
push esi
call fcn.0067aff0
add edi, 0x10
add esp, 0x10
cmp edi, 0x7fd418
jl 0x6c1720
jmp 0x6c52ae
test ecx, ecx
je 0x6c52ae
push dword [esp + 0x34]
mov edx, ecx
mov ecx, dword [esp + 0x14]
call fcn.006a4a60
add esp, 4
mov dword [esp + 0x30], eax
test eax, eax
je 0x6c52ae
cmp byte [eax + 0x2b], 0
jne 0x6c52ae
mov edi, dword [eax + 0x30]
test edi, edi
je 0x6c52ae
mov edx, dword [eax + 0x3c]
mov ecx, 0xffff8000
test edx, edx
je 0x6c17a8
mov eax, dword [esp + 0x10]
xor ecx, ecx
mov eax, dword [eax + 0x10]
add eax, 0xc
cmp dword [eax], edx
je 0x6c17a8
lea esp, [esp]
lea eax, [eax + 0x10]
inc ecx
cmp dword [eax], edx
jne 0x6c17a0
mov ebx, dword [esp + 0x18]
xor edx, edx
mov dword [esp + 0x20], edx
mov dword [ebx + 0x2c], 8
mov eax, dword [ebx + 0x7c]
test eax, eax
cmovne ebx, eax
mov eax, 1
mov dword [esp + 0x18], ebx
shl eax, cl
mov ebx, dword [ebx + 0x58]
test ebx, eax
jne 0x6c17f0
mov eax, dword [esp + 0x18]
bts ebx, ecx
mov dword [eax + 0x58], ebx
cmp ecx, 1
jne 0x6c17f0
mov ecx, eax
call fcn.006ad110
xor edx, edx
jmp 0x6c17f0
xor ebx, ebx
cmp dword [edi + 0x14], ebx
jle 0x6c18b3
lea edx, [edi + 0x24]
mov dword [esp + 0x1c], edx
movzx eax, byte [edi + 0x1a]
add eax, 0xfffffff9
cmp eax, 3
ja case.default.0x6c180e
jmp dword [eax*4 + 0x6c5390]
mov ecx, str.SET_NULL
jmp 0x6c1836
mov ecx, str.SET_DEFAULT
jmp 0x6c1836
mov ecx, str.CASCADE
jmp 0x6c1836
mov ecx, str.RESTRICT
jmp 0x6c1836
mov ecx, str.NO_ACTION
movzx eax, byte [edi + 0x19]
add eax, 0xfffffff9
cmp eax, 3
ja case.default.0x6c1842
jmp dword [eax*4 + 0x6c53a0]
mov eax, str.SET_NULL
jmp 0x6c186a
mov eax, str.SET_DEFAULT
jmp 0x6c186a
mov eax, str.CASCADE
jmp 0x6c186a
mov eax, str.RESTRICT
jmp 0x6c186a
mov eax, str.NO_ACTION
push str.NONE
push eax
mov eax, dword [esp + 0x38]
push ecx
push dword [edx + 4]
mov ecx, dword [edx]
mov eax, dword [eax + 4]
add ecx, ecx
push dword [eax + ecx*8]
push dword [edi + 8]
push ebx
push dword [esp + 0x3c]
push str.iissssss
push 1
push esi
call fcn.0067aff0
mov edx, dword [esp + 0x48]
inc ebx
add edx, 8
add esp, 0x2c
mov dword [esp + 0x1c], edx
cmp ebx, dword [edi + 0x14]
jl 0x6c1802
mov edx, dword [esp + 0x20]
mov edi, dword [edi + 4]
inc edx
mov dword [esp + 0x20], edx
test edi, edi
jne 0x6c17f0
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
call fcn.00654910
mov ebx, dword [esp + 0xc]
jmp 0x6c52c3
mov eax, dword [edi + 0x2c]
mov edx, dword [esp + 0x10]
lea ecx, [eax + 1]
add eax, 5
mov dword [esp + 0x5c], ecx
mov ecx, dword [esp + 0x40]
mov dword [edi + 0x2c], eax
add ecx, ecx
mov dword [esp + 0x48], eax
mov eax, dword [edx + 0x10]
mov eax, dword [eax + ecx*8 + 0xc]
mov ecx, dword [eax + 0x10]
test ecx, ecx
je 0x6c52ae
lea esp, [esp]
mov eax, dword [esp + 0xc]
test eax, eax
je 0x6c1931
push dword [esp + 0x34]
xor edx, edx
mov ecx, edi
push eax
call fcn.006a4e20
mov edx, dword [esp + 0x18]
add esp, 8
xor ecx, ecx
jmp 0x6c1936
mov eax, dword [ecx + 8]
mov ecx, dword [ecx]
mov dword [esp + 0x64], ecx
mov dword [esp + 0x68], eax
test eax, eax
je 0x6c2046
cmp byte [eax + 0x2b], 0
jne 0x6c2046
cmp dword [eax + 0x30], 0
je 0x6c2046
mov ecx, dword [eax + 0x3c]
mov edi, 0xffff8000
test ecx, ecx
je 0x6c197a
mov eax, dword [edx + 0x10]
xor edi, edi
add eax, 0xc
cmp dword [eax], ecx
je 0x6c197a
lea eax, [eax + 0x10]
inc edi
cmp dword [eax], ecx
jne 0x6c1972
mov eax, dword [edx + 0x10]
mov ecx, edi
shl ecx, 4
mov dword [esp + 0x30], ecx
mov eax, dword [ecx + eax]
mov ecx, dword [esp + 0x18]
mov edx, ecx
mov dword [esp + 0x34], eax
mov eax, dword [ecx + 0x7c]
test eax, eax
mov ecx, edi
cmovne edx, eax
mov eax, 1
shl eax, cl
mov ebx, dword [edx + 0x58]
test ebx, eax
jne 0x6c1ab8
bts ebx, edi
mov dword [edx + 0x58], ebx
cmp edi, 1
jne 0x6c1ac1
mov ecx, edx
call fcn.006ad110
mov ebx, dword [esp + 0x68]
mov ecx, dword [esp + 0x18]
movsx eax, word [ebx + 0x22]
add eax, dword [esp + 0x48]
cmp dword [ecx + 0x2c], eax
jge 0x6c19dd
mov dword [ecx + 0x2c], eax
push 0x70
push ebx
push edi
xor edx, edx
call fcn.006b7cb0
mov edx, dword [esp + 0x68]
add esp, 0xc
mov ecx, esi
push dword [ebx]
call fcn.0067af40
mov ecx, dword [ebx + 0x30]
add esp, 4
mov dword [esp + 0x20], ecx
mov eax, 1
mov dword [esp + 0x14], eax
test ecx, ecx
je 0x6c1ba2
mov eax, edi
shl eax, 4
mov dword [esp + 0x30], eax
lea esp, [esp]
mov edx, dword [ecx + 8]
push dword [esp + 0x34]
mov ecx, dword [esp + 0x14]
call fcn.006a4a60
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x6c1b82
mov dword [esp + 0x54], 0
cmp edi, 1
je 0x6c1a76
mov eax, dword [esp + 0x18]
mov ecx, dword [eax]
mov eax, dword [esp + 0x30]
mov ecx, dword [ecx + 0x10]
mov eax, dword [ecx + eax + 4]
cmp byte [eax + 9], 0
je 0x6c1a76
push dword [ebx]
mov ecx, dword [esp + 0x1c]
mov edx, edi
push 0
push dword [ebx + 0x14]
call fcn.006a4060
add esp, 0xc
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0x54]
push 0
push eax
push dword [esp + 0x28]
mov edx, ebx
call fcn.006b4990
add esp, 0xc
test eax, eax
jne 0x6c52ae
mov eax, dword [esp + 0x54]
mov edx, dword [esp + 0x14]
test eax, eax
jne 0x6c1afa
mov ecx, dword [esp + 0x18]
push 0x70
push ebx
push edi
call fcn.006b7cb0
add esp, 0xc
jmp 0x6c1b82
cmp edi, 1
je 0x6c19c5
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x30]
mov ebx, dword [esp + 0x68]
mov eax, dword [eax]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + ecx + 4]
cmp byte [eax + 9], 0
je 0x6c19c9
push dword [ebx]
mov ecx, dword [esp + 0x1c]
mov edx, edi
push 0
push dword [ebx + 0x14]
call fcn.006a4060
add esp, 0xc
jmp 0x6c19c9
mov ecx, dword [esi + 0x6c]
mov ebx, dword [eax + 0x2c]
cmp dword [esi + 0x70], ecx
jg 0x6c1b19
push edi
push ebx
push edx
mov edx, 0x70
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c1b40
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x70
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], ebx
mov dword [eax + ecx*4 + 0xc], edi
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x18]
mov ecx, eax
mov edx, dword [esp + 0x54]
mov ebx, dword [eax + 8]
call fcn.006ada20
mov edx, eax
test edx, edx
je 0x6c1b82
mov ecx, dword [ebx]
cmp byte [ecx + 0x57], 0
je 0x6c1b70
push edx
mov edx, 0xfffffff8
call fcn.0067ba70
add esp, 4
jmp 0x6c1b82
mov eax, dword [ebx + 0x6c]
lea ecx, [eax + eax*4]
mov eax, dword [ebx + 0x68]
mov byte [eax + ecx*4 - 0x13], 0xf8
mov dword [eax + ecx*4 - 4], edx
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
mov ecx, dword [ecx + 4]
mov dword [esp + 0x20], ecx
test ecx, ecx
jne 0x6c1a20
mov ebx, dword [esp + 0x68]
mov edi, dword [esp + 0x18]
cmp dword [edi + 0x28], eax
jge 0x6c1bae
mov dword [edi + 0x28], eax
mov edx, dword [esi + 0x6c]
mov dword [esp + 0x44], edx
cmp dword [esi + 0x70], edx
jg 0x6c1bd5
push 0
push 0
push 0
mov edx, 0x24
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
mov dword [esp + 0x44], eax
jmp 0x6c1c08
lea eax, [edx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [edx + edx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x24
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 ebx, dword [ebx + 0x30]
mov dword [esp + 0x4c], 1
mov dword [esp + 0x58], ebx
test ebx, ebx
je 0x6c1fcc
nop
push dword [esp + 0x34]
mov edx, dword [ebx + 8]
mov ecx, dword [esp + 0x14]
call fcn.006a4a60
xor ecx, ecx
mov dword [esp + 0x34], eax
add esp, 4
mov dword [esp + 0x54], 0
mov dword [esp + 0x14], ecx
test eax, eax
je 0x6c1c64
lea ecx, [esp + 0x14]
mov edx, eax
push ecx
lea ecx, [esp + 0x58]
push ecx
push ebx
mov ecx, edi
call fcn.006b4990
mov ecx, dword [esp + 0x20]
add esp, 0xc
dec dword [edi + 0x38]
mov eax, dword [ebx + 0x14]
mov ebx, dword [esp + 0x18]
mov edx, dword [esp + 0x48]
add eax, edx
mov edi, dword [edi + 0x38]
mov dword [esp + 0x20], edi
cmp dword [ebx + 0x2c], eax
jge 0x6c1c83
mov dword [ebx + 0x2c], eax
mov eax, dword [esp + 0x58]
xor ebx, ebx
cmp dword [eax + 0x14], ebx
jle 0x6c1d2b
add eax, 0x24
mov edi, edx
mov dword [esp + 0x1c], eax
jmp 0x6c1ca0
test ecx, ecx
je 0x6c1ca7
lea eax, [ecx + ebx*4]
mov edx, dword [esp + 0x68]
mov ecx, esi
push edi
push dword [eax]
push 0
call fcn.00697d90
mov ecx, dword [esi + 0x6c]
add esp, 0xc
cmp dword [esi + 0x70], ecx
jg 0x6c1cda
push 0
push dword [esp + 0x24]
mov edx, 0x32
mov ecx, esi
push edi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c1d09
mov edx, dword [esp + 0x20]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x32
mov dword [eax + ecx*4 + 4], edi
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 + 0x58]
inc ebx
mov eax, dword [esp + 0x1c]
inc edi
add eax, 8
mov dword [esp + 0x1c], eax
cmp ebx, dword [ecx + 0x14]
mov ecx, dword [esp + 0x14]
jl 0x6c1ca0
mov edi, dword [esp + 0x20]
mov eax, dword [esp + 0x54]
test eax, eax
je 0x6c1dc3
mov ecx, dword [eax + 0x10]
test ecx, ecx
jne 0x6c1d4b
mov ecx, dword [esp + 0x10]
mov edx, eax
call fcn.006b7e40
mov ecx, eax
mov ebx, dword [esp + 0x58]
mov edx, 0x60
mov eax, dword [ebx + 0x14]
push eax
push ecx
push 0
push eax
push dword [esp + 0x58]
mov ecx, esi
call fcn.0067b230
mov ecx, dword [esi + 0x6c]
add esp, 0x14
mov edx, dword [ebx + 0x14]
cmp dword [esi + 0x70], ecx
jg 0x6c1d93
push edx
push dword [esp + 0x4c]
mov edx, 0x1d
mov ecx, esi
push edi
push dword [esp + 0x58]
call fcn.0067ad60
add esp, 0x10
jmp 0x6c1e73
mov ebx, dword [esp + 0x4c]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0xfd1d
mov dword [eax + ecx*4 + 4], ebx
mov ebx, dword [esp + 0x48]
mov dword [eax + ecx*4 + 8], edi
mov dword [eax + ecx*4 + 0xc], ebx
mov dword [eax + ecx*4 + 0x10], edx
jmp 0x6c1e6f
cmp dword [esp + 0x30], 0
je 0x6c1e6f
mov ecx, dword [esi + 0x6c]
lea edx, [ecx + 2]
cmp dword [esi + 0x70], ecx
jg 0x6c1df3
push dword [esp + 0x48]
mov ecx, esi
push edx
push dword [esp + 0x54]
mov edx, 0x1e
call fcn.0067ad20
add esp, 0xc
jmp 0x6c1e22
mov ebx, dword [esp + 0x4c]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x1e
mov dword [eax + ecx*4 + 4], ebx
mov ebx, dword [esp + 0x48]
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], ebx
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x6c1e40
push 0
push edi
push 0
mov edx, 9
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c1e6f
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], edi
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ebx, dword [esp + 0x58]
mov edx, dword [esp + 0x68]
mov ecx, dword [esi + 0x6c]
mov eax, dword [esi + 0x70]
test byte [edx + 0x1c], 0x80
jne 0x6c1eb7
cmp eax, ecx
jg 0x6c1ea2
mov eax, dword [esp + 0x5c]
mov edx, 0x87
push 0
inc eax
mov ecx, esi
push eax
push 0
call fcn.0067ad20
add esp, 0xc
jmp 0x6c1f0e
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x87
jmp 0x6c1ee9
cmp eax, ecx
jg 0x6c1ed6
mov eax, dword [esp + 0x5c]
mov edx, 0x4b
push 0
inc eax
mov ecx, esi
push eax
push 0
call fcn.0067ad20
add esp, 0xc
jmp 0x6c1f0e
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 edx, dword [esp + 0x5c]
mov ebx, dword [esp + 0x58]
inc edx
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 + 0x4c]
dec eax
push eax
push dword [ebx + 8]
mov eax, dword [esp + 0x64]
push 0x88a4d0
add eax, 2
push eax
push esi
call fcn.0067aff0
mov ecx, dword [esi + 0x6c]
add esp, 0x14
cmp dword [esi + 0x70], ecx
jg 0x6c1f4e
push 0
push 4
push dword [esp + 0x64]
mov edx, 0x54
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c1f81
mov edx, dword [esp + 0x5c]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x54
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 4
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esi + 0xc]
not edi
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x6c1f9b
push edi
mov edx, esi
call fcn.0067b700
add esp, 4
jmp 0x6c1fa4
mov ecx, dword [ecx + 0x40]
mov eax, dword [esi + 0x6c]
mov dword [ecx + edi*4], eax
mov edx, dword [esp + 0x14]
test edx, edx
je 0x6c1fb5
mov ecx, dword [esp + 0x10]
call fcn.00654910
mov ebx, dword [ebx + 4]
inc dword [esp + 0x4c]
mov edi, dword [esp + 0x18]
mov dword [esp + 0x58], ebx
test ebx, ebx
jne 0x6c1c20
mov ebx, dword [esp + 0x44]
mov ecx, dword [esi + 0x6c]
lea edx, [ebx + 1]
cmp dword [esi + 0x70], ecx
jg 0x6c1ff1
push 0
push edx
push 0
mov edx, 0x27
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c2024
mov edi, dword [esp + 0x18]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x27
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 0x6c2036
mov eax, 0x96e3e0
jmp 0x6c203f
mov eax, dword [esi + 0x68]
lea ecx, [ebx + ebx*4]
lea eax, [eax + ecx*4]
mov ecx, dword [esp + 0x64]
mov dword [eax + 8], edx
test ecx, ecx
je 0x6c52ae
mov edx, dword [esp + 0x10]
jmp 0x6c1910
test ecx, ecx
je 0x6c52ae
push 0
mov edx, 1
call fcn.006bec40
mov esi, dword [esp + 0x14]
xor ecx, ecx
add esp, 4
mov edx, 0x7fbf40
test al, al
mov ebx, 2
setne cl
test al, al
lea ecx, [ecx*8 + 4]
mov dword [esp + 0x88], ecx
mov ecx, 0x7fac74
cmovne ecx, edx
mov dword [esp + 0x30], ecx
nop
lea eax, [ebx + 1]
cmp eax, 0x80
ja 0x6c21ca
push 0
push 1
push ebx
mov edx, str.like
mov ecx, esi
call fcn.006ae370
add esp, 0xc
test eax, eax
je 0x6c214f
mov ecx, dword [eax + 4]
and cl, 3
cmp cl, 1
jne 0x6c214f
movsx eax, byte [eax]
cmp eax, ebx
jne 0x6c214f
mov eax, dword [esp + 0x10]
cmp dword [eax + 0xbc], 0
je 0x6c2142
push str.unable_to_delete_modify_user_function_due_to_active_statements
push 5
push eax
call fcn.00658380
add esp, 0xc
mov esi, dword [esp + 0x10]
push 0
push 1
push ebx
mov edx, str.like
mov ecx, esi
call fcn.006ae370
inc ebx
add esp, 0xc
mov ecx, dword [eax + 4]
or ecx, dword [esp + 0x88]
and ecx, 0xffdfffff
mov dword [eax + 4], ecx
cmp ebx, 3
jle 0x6c20a0
mov edx, dword [esp + 0x24]
mov ecx, esi
call fcn.00654910
mov ebx, dword [esp + 0xc]
jmp 0x6c52c3
xor edx, edx
mov ecx, eax
call fcn.0067f8f0
mov esi, dword [esp + 0x10]
push 1
push 1
push ebx
mov edx, str.like
mov ecx, esi
call fcn.006ae370
mov esi, eax
add esp, 0xc
test esi, esi
je 0x6c20f9
mov edi, dword [esi + 0x24]
test edi, edi
je 0x6c218b
add dword [edi], 0xffffffff
jne 0x6c218b
push dword [edi + 8]
mov eax, dword [edi + 4]
call eax
mov ecx, dword [esp + 0x14]
add esp, 4
mov edx, edi
call fcn.00654910
mov dword [esi + 0x24], 0
mov eax, dword [esi + 4]
and eax, 3
or eax, 0x200000
mov dword [esi + 4], eax
mov eax, dword [esp + 0x30]
mov dword [esi + 0x10], 0x6b1fe0
mov dword [esi + 0x14], 0
mov dword [esi + 0x18], 0
mov dword [esi + 0x1c], 0
mov dword [esi + 8], eax
mov byte [esi], bl
jmp 0x6c20f9
push 0x88c2c4
push 0x2b84b
push str.misuse
push str._s_at_line__d_of___.10s_
push 0x15
call fcn.006575b0
add esp, 0x14
jmp 0x6c20fd
mov ebx, dword [esp + 0x40]
xor eax, eax
mov dword [esp + 0x6c], eax
or edx, 0xffffffff
mov eax, dword [esp + 0x24]
movzx eax, byte [eax]
mov al, byte [eax + 0x7fc958]
mov byte [esp + 0x63], al
mov eax, dword [esp + 0x50]
cmp dword [eax], 0
mov eax, 0x64
mov dword [edi + 0x2c], 6
cmove ebx, edx
mov dword [esp + 0x20], eax
mov dword [esp + 0x40], ebx
mov dword [esp + 0x14], eax
test ecx, ecx
je 0x6c2284
lea edx, [esp + 0x14]
call fcn.006594b0
test eax, eax
je 0x6c2251
mov eax, dword [esp + 0x14]
mov dword [esp + 0x20], eax
test eax, eax
jg 0x6c2284
mov eax, 0x64
jmp 0x6c2280
test ebx, ebx
js 0x6c2265
mov eax, dword [esp + 0x10]
mov ecx, ebx
add ecx, ecx
mov eax, dword [eax + 0x10]
mov eax, dword [eax + ecx*8]
jmp 0x6c2267
xor eax, eax
push eax
push dword [esp + 0x10]
xor edx, edx
mov ecx, edi
call fcn.006a4e20
mov dword [esp + 0x74], eax
add esp, 8
mov eax, dword [esp + 0x14]
mov dword [esp + 0x20], eax
mov ecx, dword [esi + 0x6c]
lea edx, [eax - 1]
cmp dword [esi + 0x70], ecx
jg 0x6c22a5
push 0
push 1
push edx
mov edx, 0x47
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c22d4
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], edx
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x10]
xor edx, edx
mov dword [esp + 0x54], edx
lea ebx, [edx + 1]
cmp dword [eax + 0x14], edx
jle 0x6c4667
mov ecx, dword [esp + 0x40]
lea eax, [esi + 0x70]
mov dword [esp + 0x2c], eax
lea eax, [esi + 0x6c]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0xac], 0x10
jmp 0x6c2310
xor ebx, ebx
test ecx, ecx
js 0x6c231e
cmp edx, ecx
jne 0x6c464e
mov eax, dword [edi + 0x7c]
mov edx, edi
mov ecx, dword [esp + 0x54]
test eax, eax
cmovne edx, eax
mov eax, 1
shl eax, cl
mov edi, dword [edx + 0x58]
test edi, eax
jne 0x6c2350
bts edi, ecx
mov dword [edx + 0x58], edi
cmp ecx, 1
jne 0x6c2350
mov ecx, edx
call fcn.006ad110
mov ecx, dword [esp + 0x54]
mov eax, dword [esp + 0x18]
add ecx, ecx
xor edx, edx
mov byte [eax + 0x17], bl
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + ecx*8 + 0xc]
mov dword [esp + 0x1c], eax
mov edi, dword [eax + 0x10]
test edi, edi
je 0x6c4642
mov ecx, dword [esp + 0x6c]
lea esp, [esp]
mov eax, dword [edi + 8]
test ecx, ecx
je 0x6c238b
cmp ecx, eax
jne 0x6c23b2
test byte [eax + 0x1c], 0x80
jne 0x6c2392
inc edx
mov eax, dword [eax + 8]
xor ecx, ecx
test eax, eax
je 0x6c23a9
jmp 0x6c23a0
mov eax, dword [eax + 0x14]
inc edx
inc ecx
test eax, eax
jne 0x6c23a0
cmp ecx, ebx
cmovg ebx, ecx
mov ecx, dword [esp + 0x6c]
mov edi, dword [edi]
test edi, edi
jne 0x6c2380
mov dword [esp + 0x14], ebx
test edx, edx
je 0x6c4642
test ecx, ecx
lea eax, [edx + 1]
mov ecx, dword [esp + 0x10]
cmove eax, edx
push edi
lea eax, [eax*4 + 4]
push eax
call fcn.00654db0
mov edi, eax
add esp, 8
test edi, edi
je 0x6c4662
xor edx, edx
cmp dword [esp + 0x6c], edx
je 0x6c23ff
mov edx, 1
mov dword [edi + 4], 0
mov ebx, dword [esp + 0x1c]
mov ebx, dword [ebx + 0x10]
test ebx, ebx
je 0x6c244d
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x6c]
mov dword [esp + 0x14], eax
mov ecx, dword [ebx + 8]
test esi, esi
je 0x6c2421
cmp esi, ecx
jne 0x6c2443
test byte [ecx + 0x1c], 0x80
jne 0x6c242e
mov eax, dword [ecx + 0x14]
inc edx
mov dword [edi + edx*4], eax
mov ecx, dword [ecx + 8]
test ecx, ecx
je 0x6c2443
mov eax, dword [ecx + 0x2c]
inc edx
mov dword [edi + edx*4], eax
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x6c2435
mov ebx, dword [ebx]
test ebx, ebx
jne 0x6c2416
mov esi, dword [esp + 0x3c]
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
add eax, 8
mov dword [edi], edx
cmp dword [ecx + 0x2c], eax
jge 0x6c2462
mov dword [ecx + 0x2c], eax
mov eax, dword [esp + 0x2c]
mov byte [ecx + 0x13], 0
mov dword [ecx + 0x1c], 0
mov ecx, dword [esp + 0x28]
mov ebx, dword [ecx]
cmp dword [eax], ebx
jg 0x6c2493
push 1
push edx
push 2
mov edx, 0x9b
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
mov ebx, eax
jmp 0x6c24c5
lea eax, [ebx + 1]
mov dword [ecx], eax
lea ecx, [ebx + ebx*4]
mov eax, dword [esi + 0x68]
mov esi, dword [esp + 0x3c]
mov dword [eax + ecx*4], 0x9b
mov dword [eax + ecx*4 + 4], 2
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 1
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esi]
cmp byte [ecx + 0x57], 0
je 0x6c24dd
push edi
mov edx, 0xfffffff2
call fcn.0067ba70
add esp, 4
jmp 0x6c2510
test ebx, ebx
jns 0x6c24e8
mov eax, dword [esp + 0x28]
mov ebx, dword [eax]
dec ebx
mov eax, dword [esi + 0x68]
lea ecx, [ebx + ebx*4]
cmp byte [eax + ecx*4 + 1], 0
lea eax, [eax + ecx*4]
je 0x6c2509
push 0xfffffffffffffff2
push edi
mov edx, eax
mov ecx, esi
call fcn.0067bb60
add esp, 8
jmp 0x6c2510
mov dword [eax + 0x10], edi
mov byte [eax + 1], 0xf2
mov edi, dword [esp + 0x28]
mov eax, dword [edi]
test eax, eax
jle 0x6c252c
mov ecx, dword [esp + 0x54]
movzx edx, cl
lea ecx, [eax + eax*4]
mov eax, dword [esi + 0x68]
mov word [eax + ecx*4 - 0x12], dx
mov eax, dword [esp + 0x2c]
mov ebx, dword [edi]
cmp dword [eax], ebx
jg 0x6c254f
push 0
push 0
push 2
mov edx, 0x32
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
mov ebx, eax
jmp 0x6c2581
lea eax, [ebx + 1]
mov dword [edi], eax
lea ecx, [ebx + ebx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x32
mov dword [eax + ecx*4 + 4], 2
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 + 0x10]
mov ecx, dword [esp + 0x54]
add ecx, ecx
mov eax, dword [edx + 0x10]
push dword [eax + ecx*8]
push str._in_database__s__n
push edx
call fcn.00657240
mov edx, dword [edi]
add esp, 0xc
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x2c]
cmp dword [eax], edx
jg 0x6c25c6
push 0
push 3
push 0
mov edx, 0x75
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
mov edx, eax
jmp 0x6c25fc
lea eax, [edx + 1]
mov dword [edi], eax
lea ecx, [edx + edx*4]
mov eax, dword [esi + 0x68]
mov edi, dword [esp + 0x28]
mov dword [eax + ecx*4], 0x75
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esi]
cmp byte [ecx + 0x57], 0
je 0x6c2618
mov edx, dword [esp + 0x14]
push edx
mov edx, 0xfffffffa
call fcn.0067ba70
add esp, 4
jmp 0x6c264f
test edx, edx
jns 0x6c261f
mov edx, dword [edi]
dec edx
mov eax, dword [esi + 0x68]
lea ecx, [edx + edx*4]
cmp byte [eax + ecx*4 + 1], 0
lea eax, [eax + ecx*4]
mov edx, dword [esp + 0x14]
je 0x6c2644
push 0xfffffffffffffffa
push edx
mov edx, eax
mov ecx, esi
call fcn.0067bb60
add esp, 8
jmp 0x6c264f
test edx, edx
je 0x6c264f
mov dword [eax + 0x10], edx
mov byte [eax + 1], 0xfa
mov eax, dword [esp + 0x2c]
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x6c2670
push 3
push 3
push 2
mov edx, 0x6f
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c26a2
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x6f
mov dword [eax + ecx*4 + 4], 2
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, esi
call fcn.006bf020
mov eax, dword [esi]
mov edx, dword [edi]
cmp byte [eax + 0x57], 0
je 0x6c26ba
mov eax, 0x96e3e0
jmp 0x6c26c3
mov eax, dword [esi + 0x68]
lea ecx, [ebx + ebx*4]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov eax, dword [esp + 0x1c]
mov ebx, dword [eax + 0x10]
mov dword [esp + 0x30], ebx
test ebx, ebx
je 0x6c4642
lea esp, [esp]
mov ebx, dword [ebx + 8]
mov dword [esp + 0x34], ebx
mov dword [esp + 0x88], 0
mov dword [esp + 0x68], 0xffffffff
cmp byte [ebx + 0x2b], 0
jne 0x6c4630
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x6c2714
cmp eax, ebx
jne 0x6c4630
cmp byte [esp + 0x63], 0x71
je 0x6c280e
test byte [ebx + 0x1c], 0x80
je 0x6c280e
mov ecx, dword [ebx + 8]
mov dword [esp + 0x5c], ecx
test ecx, ecx
je 0x6c2748
mov eax, dword [ecx + 0x38]
and al, 3
cmp al, 2
je 0x6c2744
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x6c2734
mov dword [esp + 0x5c], ecx
movzx ecx, word [ecx + 0x32]
mov ebx, dword [esp + 0x18]
cmp ecx, 1
jne 0x6c277d
mov al, byte [ebx + 0x13]
test al, al
jne 0x6c2768
inc dword [ebx + 0x2c]
mov eax, dword [ebx + 0x2c]
mov dword [esp + 0x50], eax
jmp 0x6c27a6
dec al
mov byte [ebx + 0x13], al
movzx eax, al
mov eax, dword [ebx + eax*4 + 0xa0]
mov dword [esp + 0x50], eax
jmp 0x6c27a6
mov edx, dword [ebx + 0x1c]
mov eax, dword [ebx + 0x20]
mov dword [esp + 0x50], eax
cmp ecx, edx
jg 0x6c2797
add eax, ecx
sub edx, ecx
mov dword [ebx + 0x20], eax
mov dword [ebx + 0x1c], edx
jmp 0x6c27a6
mov eax, dword [ebx + 0x2c]
lea edx, [eax + 1]
add eax, ecx
mov dword [esp + 0x50], edx
mov dword [ebx + 0x2c], eax
mov eax, dword [esp + 0x5c]
mov ebx, dword [esp + 0x50]
mov ecx, dword [edi]
movzx eax, word [eax + 0x32]
lea edx, [ebx - 1]
add edx, eax
mov eax, dword [esp + 0x2c]
cmp dword [eax], ecx
jg 0x6c27da
push edx
push ebx
push 1
mov edx, 0x4b
mov ecx, esi
call fcn.0067ad20
mov ebx, dword [esp + 0x40]
add esp, 0xc
jmp 0x6c281e
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov esi, dword [esp + 0x3c]
mov dword [eax + ecx*4], 0x4b
mov dword [eax + ecx*4 + 4], 1
mov dword [eax + ecx*4 + 8], ebx
mov ebx, dword [esp + 0x34]
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x6c281e
mov dword [esp + 0x5c], 0
mov dword [esp + 0x50], 0
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0x80]
push eax
lea eax, [esp + 0x74]
mov edx, ebx
push eax
push 0
push 1
push 0
push 0x70
call fcn.006bc750
mov eax, dword [esp + 0x44]
add esp, 0x18
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x6c2862
push 0
push 7
push 0
mov edx, 0x47
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c2894
lea eax, [ecx + 1]
mov dword [edi], 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], 7
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ebx, dword [ebx + 8]
test ebx, ebx
je 0x6c2902
mov edx, dword [esp + 0x28]
mov edi, 8
mov eax, dword [esp + 0x2c]
mov ecx, dword [edx]
cmp dword [eax], ecx
jg 0x6c28c8
push 0
push edi
push 0
mov edx, 0x47
mov ecx, esi
call fcn.0067ad20
mov edx, dword [esp + 0x34]
add esp, 0xc
jmp 0x6c28fa
lea eax, [ecx + 1]
mov dword [edx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov esi, dword [esp + 0x3c]
mov dword [eax + ecx*4], 0x47
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], edi
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ebx, dword [ebx + 0x14]
inc edi
test ebx, ebx
jne 0x6c28a4
mov ebx, dword [esp + 0x28]
mov edi, dword [esp + 0x2c]
mov ecx, dword [ebx]
cmp dword [edi], ecx
jg 0x6c2929
push 0
push 0
push dword [esp + 0x78]
mov edx, 0x24
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c295b
mov edx, dword [esp + 0x70]
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x24
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 [ebx]
mov dword [esp + 0x1c], edx
cmp dword [edi], edx
jg 0x6c2980
push 0
push 1
push 7
mov edx, 0x56
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
mov dword [esp + 0x1c], eax
jmp 0x6c29b2
lea eax, [edx + 1]
mov dword [ebx], eax
lea ecx, [edx + edx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x56
mov dword [eax + ecx*4 + 4], 7
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x34]
test byte [eax + 0x1c], 0x80
jne 0x6c29f9
movsx edi, word [eax + 0x22]
or ecx, 0xffffffff
test edi, edi
jle 0x6c29e7
mov edx, dword [eax + 4]
add edx, 0xe
lea ecx, [ecx]
test byte [edx], 0x20
lea eax, [ecx + 1]
lea edx, [edx + 0x10]
cmovne eax, ecx
mov ecx, eax
sub edi, 1
jne 0x6c29d0
mov eax, dword [esp + 0x34]
movsx eax, word [eax + 0x20]
lea edx, [ecx - 1]
mov edi, dword [esp + 0x2c]
cmp ecx, eax
cmovne edx, ecx
jmp 0x6c2a15
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x6c2a10
mov eax, dword [ecx + 0x38]
and al, 3
cmp al, 2
je 0x6c2a10
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x6c2a00
movzx edx, word [ecx + 0x34]
dec edx
test edx, edx
js 0x6c2a96
mov ecx, dword [ebx]
cmp dword [edi], ecx
jg 0x6c2a37
push 3
push edx
push dword [esp + 0x78]
mov edx, 0x5e
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c2a65
mov edi, dword [esp + 0x70]
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
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], 3
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esi]
cmp byte [eax + 0x57], 0
je 0x6c2a74
mov eax, 0x96e3e0
jmp 0x6c2a82
mov eax, dword [ebx]
lea ecx, [eax + eax*4]
mov eax, dword [esi + 0x68]
lea eax, [eax + ecx*4]
add eax, 0xffffffec
cmp dword [eax + 0xc], 3
jne 0x6c2a96
cmp byte [eax], 0x5e
jne 0x6c2a96
mov ecx, 0x80
or word [eax + 2], cx
cmp byte [esp + 0x63], 0x71
je 0x6c2cac
mov ecx, dword [esp + 0x5c]
test ecx, ecx
je 0x6c2cac
mov eax, dword [esp + 0x2c]
mov edi, dword [ebx]
movzx edx, word [ecx + 0x32]
cmp dword [eax], edi
jg 0x6c2ad9
push edx
push dword [esp + 0x54]
mov edx, 0x29
mov ecx, esi
push 0
push dword [esp + 0x7c]
call fcn.0067ad60
add esp, 0x10
mov edi, eax
jmp 0x6c2b0b
lea eax, [edi + 1]
mov dword [ebx], eax
lea ecx, [edi + edi*4]
mov eax, dword [esi + 0x68]
mov esi, dword [esp + 0x70]
mov dword [eax + ecx*4], 0xfd29
mov dword [eax + ecx*4 + 4], esi
mov esi, dword [esp + 0x50]
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], esi
mov esi, dword [esp + 0x3c]
mov dword [eax + ecx*4 + 0x10], edx
mov eax, dword [esp + 0x2c]
mov ecx, dword [ebx]
cmp dword [eax], ecx
jg 0x6c2b2e
push 0
push 0
push dword [esp + 0x58]
mov edx, 0x32
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c2b60
mov edx, dword [esp + 0x50]
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x32
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 + 0x34]
push dword [edx]
push str.row_not_in_PRIMARY_KEY_order_for__s
push dword [esp + 0x18]
call fcn.00657240
mov ecx, dword [esp + 0x34]
mov ebx, eax
mov eax, dword [esp + 0x38]
add esp, 0xc
mov edx, dword [ecx]
cmp dword [eax], edx
jg 0x6c2ba0
push 0
push 3
push 0
mov edx, 0x75
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
mov edx, eax
jmp 0x6c2bd6
lea eax, [edx + 1]
mov dword [ecx], eax
lea ecx, [edx + edx*4]
mov eax, dword [esi + 0x68]
mov esi, dword [esp + 0x3c]
mov dword [eax + ecx*4], 0x75
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esi]
cmp byte [ecx + 0x57], 0
je 0x6c2bee
push ebx
mov edx, 0xfffffffa
call fcn.0067ba70
add esp, 4
jmp 0x6c2c25
test edx, edx
jns 0x6c2bf9
mov eax, dword [esp + 0x28]
mov edx, dword [eax]
dec edx
mov eax, dword [esi + 0x68]
lea ecx, [edx + edx*4]
cmp byte [eax + ecx*4 + 1], 0
lea eax, [eax + ecx*4]
je 0x6c2c1a
push 0xfffffffffffffffa
push ebx
mov edx, eax
mov ecx, esi
call fcn.0067bb60
add esp, 8
jmp 0x6c2c25
test ebx, ebx
je 0x6c2c25
mov dword [eax + 0x10], ebx
mov byte [eax + 1], 0xfa
mov ecx, esi
call fcn.006bf020
mov eax, dword [esi]
mov ebx, dword [esp + 0x28]
cmp byte [eax + 0x57], 0
mov edx, dword [ebx]
je 0x6c2c41
mov eax, 0x96e3e0
jmp 0x6c2c4a
mov eax, dword [esi + 0x68]
lea ecx, [edi + edi*4]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov eax, dword [esi]
mov edx, dword [ebx]
cmp byte [eax + 0x57], 0
je 0x6c2c5e
mov eax, 0x96e3e8
jmp 0x6c2c6a
mov eax, dword [esi + 0x68]
lea ecx, [edi + edi*4]
lea eax, [eax + ecx*4]
add eax, 0x1c
mov ecx, dword [esp + 0x5c]
xor edi, edi
mov dword [eax], edx
xor eax, eax
cmp ax, word [ecx + 0x32]
jae 0x6c2cac
mov ebx, dword [esp + 0x18]
mov esi, dword [esp + 0x70]
mov eax, dword [esp + 0x50]
mov edx, ecx
add eax, edi
mov ecx, ebx
push eax
push edi
push esi
call fcn.00697b20
mov ecx, dword [esp + 0x68]
inc edi
add esp, 0xc
movzx eax, word [ecx + 0x32]
cmp edi, eax
jl 0x6c2c82
mov esi, dword [esp + 0x3c]
mov ebx, dword [esp + 0x28]
mov eax, dword [esp + 0x34]
xor edi, edi
xor ecx, ecx
mov dword [esp + 0x4c], edi
movzx edx, word [eax + 0x1e]
and edx, 1
mov dword [esp + 0x44], edx
cmp cx, word [eax + 0x22]
jge 0x6c37ee
jmp 0x6c2cd4
mov ebx, dword [esp + 0x28]
mov ecx, edi
shl ecx, 4
add ecx, dword [eax + 4]
movsx eax, word [eax + 0x20]
mov dword [esp + 0x14], ecx
cmp edi, eax
je 0x6c37d5
test edx, edx
je 0x6c2d05
mov eax, dword [ecx + 4]
and eax, 0xf0
cmp dword [esp + 0xac], eax
sbb eax, eax
neg eax
jmp 0x6c2d0e
xor eax, eax
cmp byte [ecx + 8], 0x41
setg al
test byte [ecx + 4], 0xf
mov dword [esp + 0x84], eax
jne 0x6c2d23
test eax, eax
je 0x6c37d5
test byte [ecx + 0xe], 0x20
mov dword [esp + 0x58], 5
je 0x6c2d55
mov edx, dword [esp + 0x34]
mov ecx, esi
push 3
push edi
push dword [esp + 0x78]
call fcn.00697d90
add esp, 0xc
or ecx, 0xffffffff
mov dword [esp + 0x74], ecx
lea edi, [ecx + 4]
jmp 0x6c2e67
cmp word [ecx + 0xc], 0
je 0x6c2e19
mov dword [esp + 0xa0], 0
mov al, byte [ecx + 8]
mov byte [esp + 0xb0], al
mov eax, dword [esp + 0x10]
mov al, byte [eax + 0x54]
mov byte [esp + 0xb4], al
movzx eax, word [ecx + 0xc]
test ax, ax
je 0x6c2e19
mov ecx, dword [esp + 0x34]
cmp byte [ecx + 0x2b], 0
jne 0x6c2e19
mov ecx, dword [ecx + 0x34]
test ecx, ecx
je 0x6c2e19
cmp dword [ecx], eax
jl 0x6c2e19
lea eax, [eax + eax*4]
mov edx, dword [ecx + eax*4 - 0xc]
test edx, edx
je 0x6c2e19
push ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0xa4]
push eax
push dword [esp + 0xb8]
push dword [esp + 0xc0]
call fcn.0067a580
mov edi, dword [esp + 0xb0]
add esp, 0x10
test edi, edi
je 0x6c2e15
movzx ecx, word [edi + 0x10]
mov eax, ecx
and eax, 0x3f
movzx eax, byte [eax + 0x7ff708]
mov dword [esp + 0x58], eax
test ecx, 0x9000
jne 0x6c2e04
cmp dword [edi + 0x18], 0
je 0x6c2e0b
mov ecx, edi
call fcn.00679610
mov ecx, dword [edi + 0x14]
mov edx, edi
call fcn.00654910
mov edi, dword [esp + 0x4c]
mov eax, dword [esp + 0x70]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x34]
mov ecx, eax
test byte [eax + 0x1c], 0x80
je 0x6c2e59
call fcn.006a5c20
xor ecx, ecx
movzx edx, word [eax + 0x34]
test edx, edx
je 0x6c2e4f
mov eax, dword [eax + 4]
movzx edi, di
cmp di, word [eax]
je 0x6c2e54
inc ecx
add eax, 2
cmp ecx, edx
jl 0x6c2e42
or eax, 0xffffffff
jmp 0x6c2e60
movzx eax, cx
jmp 0x6c2e60
mov edx, edi
call fcn.006a5c70
mov ecx, dword [esp + 0x74]
movsx edi, ax
mov edx, dword [esp + 0x18]
mov dword [esp + 0x48], edi
mov eax, dword [edx + 0x38]
dec eax
mov dword [esp + 0x64], eax
dec eax
mov dword [edx + 0x38], eax
mov edx, dword [esp + 0x14]
mov dword [esp + 0x38], eax
test byte [edx + 4], 0xf
je 0x6c3163
mov esi, dword [esp + 0x2c]
mov edx, dword [ebx]
mov dword [esp + 0x7c], edx
cmp dword [esi], edx
mov esi, dword [esp + 0x3c]
jg 0x6c2ebd
push dword [esp + 0x58]
mov edx, 0x12
push edi
push eax
push ecx
mov ecx, esi
call fcn.0067ad60
mov edx, eax
add esp, 0x10
mov dword [esp + 0x7c], edx
jmp 0x6c2eef
lea eax, [edx + 1]
mov dword [ebx], eax
lea ecx, [edx + edx*4]
mov eax, dword [esi + 0x68]
mov ebx, dword [esp + 0x74]
mov dword [eax + ecx*4], 0xfd12
mov dword [eax + ecx*4 + 4], ebx
mov ebx, dword [esp + 0x38]
mov dword [eax + ecx*4 + 8], ebx
mov ebx, dword [esp + 0x58]
mov dword [eax + ecx*4 + 0xc], edi
mov dword [eax + ecx*4 + 0x10], ebx
mov ebx, dword [esp + 0x28]
cmp dword [esp + 0x74], 0
mov eax, dword [esp + 0x78]
mov eax, dword [eax + 0x6c]
jge 0x6c2f1d
test eax, eax
jle 0x6c2f11
lea ecx, [eax + eax*4]
mov edi, 0xf
mov eax, dword [esi + 0x68]
mov word [eax + ecx*4 - 0x12], di
mov dword [esp + 0x8c], edx
jmp 0x6c2fe4
test eax, eax
jle 0x6c2f31
lea ecx, [eax + eax*4]
mov edx, 0xd
mov eax, dword [esi + 0x68]
mov word [eax + ecx*4 - 0x12], dx
mov eax, dword [esp + 0x2c]
mov ecx, dword [ebx]
cmp dword [eax], ecx
jg 0x6c2f53
push 3
push edi
push dword [esp + 0x7c]
mov edx, 0x5e
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c2f81
mov edx, dword [esp + 0x74]
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x5e
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], edi
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x2c]
mov edx, dword [ebx]
mov dword [esp + 0x8c], edx
cmp dword [eax], edx
jg 0x6c2fb2
push 0
push dword [esp + 0x3c]
mov edx, 0x33
mov ecx, esi
push 3
call fcn.0067ad20
add esp, 0xc
mov dword [esp + 0x8c], eax
jmp 0x6c2fe4
lea eax, [edx + 1]
mov dword [ebx], eax
lea ecx, [edx + edx*4]
mov eax, dword [esi + 0x68]
mov edx, dword [esp + 0x38]
mov dword [eax + ecx*4], 0x33
mov dword [eax + ecx*4 + 4], 3
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x34]
push dword [edi]
push dword [eax]
push str.NULL_value_in__s._s
push dword [esp + 0x1c]
call fcn.00657240
mov edx, dword [ebx]
mov edi, eax
mov eax, dword [esp + 0x3c]
add esp, 0x10
cmp dword [eax], edx
jg 0x6c3026
push 0
push 3
push 0
mov edx, 0x75
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
mov edx, eax
jmp 0x6c305c
lea eax, [edx + 1]
mov dword [ebx], eax
lea ecx, [edx + edx*4]
mov eax, dword [esi + 0x68]
mov ebx, dword [esp + 0x28]
mov dword [eax + ecx*4], 0x75
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esi]
cmp byte [ecx + 0x57], 0
je 0x6c3074
push edi
mov edx, 0xfffffffa
call fcn.0067ba70
add esp, 4
jmp 0x6c30a7
test edx, edx
jns 0x6c307b
mov edx, dword [ebx]
dec edx
mov eax, dword [esi + 0x68]
lea ecx, [edx + edx*4]
cmp byte [eax + ecx*4 + 1], 0
lea eax, [eax + ecx*4]
je 0x6c309c
push 0xfffffffffffffffa
push edi
mov edx, eax
mov ecx, esi
call fcn.0067bb60
add esp, 8
jmp 0x6c30a7
test edi, edi
je 0x6c30a7
mov dword [eax + 0x10], edi
mov byte [eax + 1], 0xfa
mov edi, dword [esp + 0x84]
test edi, edi
je 0x6c3159
mov eax, dword [esp + 0x2c]
mov ecx, dword [ebx]
mov edx, dword [esp + 0x64]
cmp dword [eax], ecx
jg 0x6c30da
push 0
push edx
push 0
mov edx, 9
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c3108
lea eax, [ecx + 1]
mov dword [ebx], 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 [ebx]
cmp byte [eax + 0x57], 0
je 0x6c3119
mov eax, 0x96e3e0
jmp 0x6c3126
mov eax, dword [esp + 0x7c]
lea ecx, [eax + eax*4]
mov eax, dword [esi + 0x68]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov eax, dword [esi]
mov edx, dword [ebx]
cmp byte [eax + 0x57], 0
je 0x6c3145
mov eax, 0x96e3e0
mov dword [eax + 8], edx
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x38]
jmp 0x6c316a
mov eax, dword [esp + 0x8c]
lea ecx, [eax + eax*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4 + 8], edx
lea eax, [eax + ecx*4]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x38]
jmp 0x6c316a
mov edi, dword [esp + 0x84]
cmp dword [esp + 0x44], 0
je 0x6c32fd
test edi, edi
je 0x6c32e4
mov edx, dword [esp + 0x2c]
mov ecx, dword [ebx]
cmp dword [edx], ecx
jg 0x6c31a9
push dword [esp + 0x58]
mov edx, dword [esp + 0x4c]
mov ecx, esi
push edx
push eax
push dword [esp + 0x80]
mov edx, 0x12
call fcn.0067ad60
add esp, 0x10
jmp 0x6c31db
mov edx, dword [esp + 0x74]
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0xfd12
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0x38]
mov dword [eax + ecx*4 + 8], edx
mov edx, dword [esp + 0x48]
mov dword [eax + ecx*4 + 0xc], edx
mov edx, dword [esp + 0x58]
mov dword [eax + ecx*4 + 0x10], edx
mov ecx, dword [ebx]
mov edi, dword [esp + 0x14]
test ecx, ecx
jle 0x6c3200
mov eax, dword [edi + 4]
lea ecx, [ecx + ecx*4]
shr eax, 4
and eax, 0xf
movzx edx, byte [eax + 0x7fb097]
mov eax, dword [esi + 0x68]
mov word [eax + ecx*4 - 0x12], dx
mov edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x4c]
add ecx, ecx
mov eax, dword [edx + 4]
push dword [eax + ecx*8]
mov eax, dword [edi + 4]
push dword [edx]
shr eax, 4
and eax, 0xf
push dword [eax*4 + 0x8d21a4]
push str.non__s_value_in__s._s
push dword [esp + 0x20]
call fcn.00657240
mov edx, dword [ebx]
mov edi, eax
mov eax, dword [esp + 0x40]
add esp, 0x14
cmp dword [eax], edx
jg 0x6c3258
push 0
push 3
push 0
mov edx, 0x75
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
mov edx, eax
jmp 0x6c328e
lea eax, [edx + 1]
mov dword [ebx], eax
lea ecx, [edx + edx*4]
mov eax, dword [esi + 0x68]
mov ebx, dword [esp + 0x28]
mov dword [eax + ecx*4], 0x75
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esi]
cmp byte [ecx + 0x57], 0
je 0x6c32a9
push edi
mov edx, 0xfffffffa
call fcn.0067ba70
add esp, 4
jmp 0x6c3772
test edx, edx
jns 0x6c32b0
mov edx, dword [ebx]
dec edx
mov eax, dword [esi + 0x68]
lea ecx, [edx + edx*4]
cmp byte [eax + ecx*4 + 1], 0
lea eax, [eax + ecx*4]
je 0x6c32d4
push 0xfffffffffffffffa
push edi
mov edx, eax
mov ecx, esi
call fcn.0067bb60
add esp, 8
jmp 0x6c3772
test edi, edi
je 0x6c3772
mov dword [eax + 0x10], edi
jmp 0x6c376e
mov edi, dword [esp + 0x24]
mov ebx, dword [esp + 0x78]
mov dword [esp + 0x24], edi
mov dword [esp + 0x3c], esi
mov dword [esp + 0x78], ebx
jmp 0x6c3772
cmp byte [edx + 8], 0x42
mov edi, esi
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x84], eax
mov dword [esp + 0x8c], ecx
jne 0x6c34a6
mov eax, dword [esp + 0x2c]
mov ecx, dword [ebx]
cmp dword [eax], ecx
jg 0x6c334e
push dword [esp + 0x58]
mov edx, dword [esp + 0x4c]
mov ecx, esi
push edx
push dword [esp + 0x40]
mov edx, 0x12
push dword [esp + 0x80]
call fcn.0067ad60
add esp, 0x10
jmp 0x6c3380
mov edx, dword [esp + 0x74]
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0xfd12
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0x38]
mov dword [eax + ecx*4 + 8], edx
mov edx, dword [esp + 0x48]
mov dword [eax + ecx*4 + 0xc], edx
mov edx, dword [esp + 0x58]
mov dword [eax + ecx*4 + 0x10], edx
mov eax, dword [ebx]
test eax, eax
jle 0x6c3396
lea ecx, [eax + eax*4]
mov edx, 0x1c
mov eax, dword [esi + 0x68]
mov word [eax + ecx*4 - 0x12], dx
mov edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x4c]
add ecx, ecx
mov eax, dword [edx + 4]
push dword [eax + ecx*8]
push dword [edx]
push str.NUMERIC_value_in__s._s
push dword [esp + 0x1c]
call fcn.00657240
mov edx, dword [ebx]
mov edi, eax
mov eax, dword [esp + 0x3c]
add esp, 0x10
cmp dword [eax], edx
jg 0x6c33de
push 0
push 3
push 0
mov edx, 0x75
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
mov edx, eax
jmp 0x6c3414
lea eax, [edx + 1]
mov dword [ebx], eax
lea ecx, [edx + edx*4]
mov eax, dword [esi + 0x68]
mov ebx, dword [esp + 0x28]
mov dword [eax + ecx*4], 0x75
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esi]
cmp byte [ecx + 0x57], 0
je 0x6c3443
push edi
mov edx, 0xfffffffa
call fcn.0067ba70
mov eax, dword [esp + 0x28]
add esp, 4
mov ebx, dword [esp + 0x78]
mov dword [esp + 0x24], eax
mov dword [esp + 0x3c], esi
mov dword [esp + 0x78], ebx
jmp 0x6c3772
test edx, edx
jns 0x6c344a
mov edx, dword [ebx]
dec edx
mov eax, dword [esi + 0x68]
lea ecx, [edx + edx*4]
cmp byte [eax + ecx*4 + 1], 0
lea eax, [eax + ecx*4]
je 0x6c3482
push 0xfffffffffffffffa
push edi
mov edx, eax
mov ecx, esi
call fcn.0067bb60
mov eax, dword [esp + 0x2c]
add esp, 8
mov ebx, dword [esp + 0x78]
mov dword [esp + 0x24], eax
mov dword [esp + 0x3c], esi
mov dword [esp + 0x78], ebx
jmp 0x6c3772
test edi, edi
je 0x6c348d
mov dword [eax + 0x10], edi
mov byte [eax + 1], 0xfa
mov eax, dword [esp + 0x24]
mov ebx, dword [esp + 0x78]
mov dword [esp + 0x24], eax
mov dword [esp + 0x3c], esi
mov dword [esp + 0x78], ebx
jmp 0x6c3772
cmp byte [edx + 8], 0x43
mov esi, edi
mov dword [esp + 0x24], eax
mov dword [esp + 0x3c], esi
mov dword [esp + 0x78], ecx
jl 0x6c3772
mov eax, dword [esp + 0x2c]
mov ecx, dword [ebx]
mov esi, dword [esp + 0x74]
cmp dword [eax], ecx
jg 0x6c34eb
push dword [esp + 0x58]
mov edx, dword [esp + 0x4c]
mov ecx, edi
push edx
push dword [esp + 0x40]
mov edx, 0x12
push esi
call fcn.0067ad60
add esp, 0x10
jmp 0x6c3519
mov edx, dword [esp + 0x38]
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x68]
mov dword [eax + ecx*4], 0xfd12
mov dword [eax + ecx*4 + 4], esi
mov dword [eax + ecx*4 + 8], edx
mov edx, dword [esp + 0x48]
mov dword [eax + ecx*4 + 0xc], edx
mov edx, dword [esp + 0x58]
mov dword [eax + ecx*4 + 0x10], edx
mov eax, dword [ebx]
test eax, eax
jle 0x6c352f
lea ecx, [eax + eax*4]
mov edx, 0x1b
mov eax, dword [edi + 0x68]
mov word [eax + ecx*4 - 0x12], dx
test esi, esi
mov esi, dword [esp + 0x4c]
js 0x6c354c
mov edx, dword [esp + 0x34]
mov ecx, edi
push 3
push esi
push dword [esp + 0x78]
call fcn.00697d90
add esp, 0xc
mov eax, dword [esp + 0x2c]
mov edx, dword [ebx]
cmp dword [eax], edx
jg 0x6c356f
push 0
push 1
push 3
mov edx, 0x60
mov ecx, edi
call fcn.0067ad20
add esp, 0xc
mov edx, eax
jmp 0x6c35a5
mov esi, dword [esp + 0x4c]
lea eax, [edx + 1]
mov dword [ebx], eax
lea ecx, [edx + edx*4]
mov eax, dword [edi + 0x68]
mov dword [eax + ecx*4], 0x60
mov dword [eax + ecx*4 + 4], 3
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [edi]
cmp byte [ecx + 0x57], 0
je 0x6c35bf
push 0x807c60
or edx, 0xffffffff
call fcn.0067ba70
add esp, 4
jmp 0x6c35f6
test edx, edx
jns 0x6c35c6
mov edx, dword [ebx]
dec edx
mov eax, dword [edi + 0x68]
lea ecx, [edx + edx*4]
cmp byte [eax + ecx*4 + 1], 0
lea eax, [eax + ecx*4]
je 0x6c35eb
push 0xffffffffffffffff
push 0x807c60
mov edx, eax
mov ecx, edi
call fcn.0067bb60
add esp, 8
jmp 0x6c35f6
mov dword [eax + 0x10], 0x807c60
mov byte [eax + 1], 0xff
mov eax, dword [esp + 0x2c]
mov ecx, dword [ebx]
cmp dword [eax], ecx
jg 0x6c361d
push dword [esp + 0x58]
mov edx, 0x12
mov ecx, edi
push 3
push dword [esp + 0x40]
push 0xffffffffffffffff
call fcn.0067ad60
add esp, 0x10
jmp 0x6c364f
mov edx, dword [esp + 0x38]
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x68]
mov dword [eax + ecx*4], 0xfd12
mov dword [eax + ecx*4 + 4], 0xffffffff
mov dword [eax + ecx*4 + 8], edx
mov edx, dword [esp + 0x58]
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], edx
mov eax, dword [ebx]
test eax, eax
jle 0x6c3665
lea ecx, [eax + eax*4]
mov edx, 0x1c
mov eax, dword [edi + 0x68]
mov word [eax + ecx*4 - 0x12], dx
mov edx, dword [esp + 0x34]
add esi, esi
mov eax, dword [edx + 4]
push dword [eax + esi*8]
push dword [edx]
push str.TEXT_value_in__s._s
push dword [esp + 0x1c]
call fcn.00657240
mov esi, dword [esp + 0x38]
mov ebx, eax
mov eax, dword [esp + 0x3c]
add esp, 0x10
mov edx, dword [esi]
cmp dword [eax], edx
jg 0x6c36ad
push 0
push 3
push 0
mov edx, 0x75
mov ecx, edi
call fcn.0067ad20
add esp, 0xc
mov edx, eax
jmp 0x6c36e3
lea eax, [edx + 1]
mov dword [esi], eax
lea ecx, [edx + edx*4]
mov eax, dword [edi + 0x68]
mov esi, dword [esp + 0x28]
mov dword [eax + ecx*4], 0x75
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [edi]
cmp byte [ecx + 0x57], 0
je 0x6c3717
push ebx
mov edx, 0xfffffffa
call fcn.0067ba70
add esp, 4
mov ecx, dword [esp + 0x84]
mov esi, edi
mov edx, dword [esp + 0x8c]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x3c], esi
mov dword [esp + 0x78], edx
jmp 0x6c3772
test edx, edx
jns 0x6c371e
mov edx, dword [esi]
dec edx
mov eax, dword [edi + 0x68]
lea ecx, [edx + edx*4]
cmp byte [eax + ecx*4 + 1], 0
lea eax, [eax + ecx*4]
je 0x6c373f
push 0xfffffffffffffffa
push ebx
mov edx, eax
mov ecx, edi
call fcn.0067bb60
add esp, 8
jmp 0x6c36f9
mov ecx, dword [esp + 0x84]
mov esi, edi
mov edx, dword [esp + 0x8c]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x3c], esi
mov dword [esp + 0x78], edx
test ebx, ebx
je 0x6c3772
mov dword [eax + 0x10], ebx
mov dword [esp + 0x24], ecx
mov dword [esp + 0x3c], esi
mov dword [esp + 0x78], edx
mov byte [eax + 1], 0xfa
mov ecx, dword [esi + 0xc]
mov edx, dword [esp + 0x64]
not edx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x6c3794
push edx
mov edx, esi
call fcn.0067b700
mov ebx, dword [esp + 0x2c]
add esp, 4
jmp 0x6c37a0
mov ebx, dword [esp + 0x28]
mov ecx, dword [ecx + 0x40]
mov eax, dword [ebx]
mov dword [ecx + edx*4], eax
mov ecx, esi
call fcn.006bf020
mov ecx, dword [esi + 0xc]
mov edx, dword [esp + 0x38]
not edx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x6c37c5
push edx
mov edx, esi
call fcn.0067b700
add esp, 4
jmp 0x6c37cd
mov ecx, dword [ecx + 0x40]
mov eax, dword [ebx]
mov dword [ecx + edx*4], eax
mov edx, dword [esp + 0x44]
mov edi, dword [esp + 0x4c]
mov eax, dword [esp + 0x34]
inc edi
mov dword [esp + 0x4c], edi
movsx eax, word [eax + 0x22]
cmp edi, eax
mov eax, dword [esp + 0x34]
jl 0x6c2cd0
mov edx, dword [eax + 0x10]
test edx, edx
je 0x6c39d0
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x20]
and eax, 0x200
or eax, 0
jne 0x6c39cc
push eax
mov ecx, ebx
call fcn.00693b10
add esp, 4
mov edx, eax
cmp byte [ebx + 0x57], 0
mov dword [esp + 0x44], edx
jne 0x6c39c1
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x18]
mov ebx, dword [eax + 0x38]
dec ebx
mov dword [esp + 0x7c], ebx
lea eax, [ebx - 1]
mov dword [ecx + 0x38], eax
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x70]
inc eax
mov dword [ecx + 0x34], eax
mov edi, dword [edx]
dec edi
test edi, edi
jle 0x6c3888
mov esi, dword [esp + 0x7c]
lea ebx, [edi*4 + 2]
add ebx, edi
lea ebx, [edx + ebx*4]
push 0
push esi
push dword [ebx]
push ecx
call fcn.0069b1e0
mov ecx, dword [esp + 0x28]
lea ebx, [ebx - 0x14]
dec edi
add esp, 0x10
test edi, edi
jg 0x6c3862
mov esi, dword [esp + 0x3c]
mov ebx, dword [esp + 0x7c]
mov edx, dword [esp + 0x44]
push 0x10
push dword [esp + 0x68]
push dword [edx + 8]
push ecx
call fcn.0069acb0
mov ecx, dword [esi + 0xc]
add esp, 0x10
not ebx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x6c38b4
push ebx
mov edx, esi
call fcn.0067b700
add esp, 4
jmp 0x6c38c0
mov eax, dword [esp + 0x28]
mov ecx, dword [ecx + 0x40]
mov eax, dword [eax]
mov dword [ecx + ebx*4], eax
mov eax, dword [esp + 0x18]
mov dword [eax + 0x34], 0
mov eax, dword [esp + 0x34]
push dword [eax]
push str.CHECK_constraint_failed_in__s
push dword [esp + 0x18]
call fcn.00657240
mov ebx, dword [esp + 0x34]
mov edi, eax
mov eax, dword [esp + 0x38]
add esp, 0xc
mov edx, dword [ebx]
cmp dword [eax], edx
jg 0x6c390b
push 0
push 3
push 0
mov edx, 0x75
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
mov edx, eax
jmp 0x6c3941
lea eax, [edx + 1]
mov dword [ebx], eax
lea ecx, [edx + edx*4]
mov eax, dword [esi + 0x68]
mov ebx, dword [esp + 0x28]
mov dword [eax + ecx*4], 0x75
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esi]
cmp byte [ecx + 0x57], 0
je 0x6c3959
push edi
mov edx, 0xfffffffa
call fcn.0067ba70
add esp, 4
jmp 0x6c398c
test edx, edx
jns 0x6c3960
mov edx, dword [ebx]
dec edx
mov eax, dword [esi + 0x68]
lea ecx, [edx + edx*4]
cmp byte [eax + ecx*4 + 1], 0
lea eax, [eax + ecx*4]
je 0x6c3981
push 0xfffffffffffffffa
push edi
mov edx, eax
mov ecx, esi
call fcn.0067bb60
add esp, 8
jmp 0x6c398c
test edi, edi
je 0x6c398c
mov dword [eax + 0x10], edi
mov byte [eax + 1], 0xfa
mov ecx, esi
call fcn.006bf020
mov ecx, dword [esi + 0xc]
mov edx, dword [esp + 0x64]
not edx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x6c39b1
push edx
mov edx, esi
call fcn.0067b700
add esp, 4
jmp 0x6c39b9
mov ecx, dword [ecx + 0x40]
mov eax, dword [ebx]
mov dword [ecx + edx*4], eax
mov ebx, dword [esp + 0x10]
mov edx, dword [esp + 0x44]
test edx, edx
je 0x6c39cc
mov ecx, ebx
call fcn.00694800
mov eax, dword [esp + 0x34]
cmp byte [esp + 0x63], 0x71
je 0x6c43b4
mov ebx, dword [eax + 8]
xor edi, edi
mov dword [esp + 0x4c], edi
mov dword [esp + 0x38], ebx
test ebx, ebx
je 0x6c43b4
mov ecx, dword [esp + 0x18]
dec dword [ecx + 0x38]
mov eax, dword [ecx + 0x38]
mov dword [esp + 0x7c], eax
cmp dword [esp + 0x5c], ebx
je 0x6c439d
push dword [esp + 0x68]
lea eax, [esp + 0xbc]
mov edx, ebx
push dword [esp + 0x8c]
push eax
push 0
push 0
push dword [esp + 0x84]
call fcn.006b04c0
lea edx, [edi + 8]
mov dword [esp + 0x80], eax
mov edi, dword [esp + 0x40]
add esp, 0x18
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x88], ebx
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x6c3a65
push 0
push 1
push edx
mov edx, 0x56
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c3a97
mov ebx, dword [esp + 0x38]
lea eax, [ecx + 1]
mov dword [edi], 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
movzx edx, word [ebx + 0x34]
mov eax, dword [esp + 0x2c]
mov ebx, dword [esp + 0x4c]
add ebx, dword [esp + 0x80]
mov edi, dword [edi]
cmp dword [eax], edi
jg 0x6c3ad0
push edx
push dword [esp + 0x6c]
mov edx, 0x1d
mov ecx, esi
push dword [esp + 0x84]
push ebx
call fcn.0067ad60
add esp, 0x10
mov edi, eax
jmp 0x6c3b02
mov ecx, dword [esp + 0x28]
lea eax, [edi + 1]
mov dword [ecx], eax
lea ecx, [edi + edi*4]
mov eax, dword [esi + 0x68]
mov esi, dword [esp + 0x3c]
mov dword [eax + ecx*4], 0xfd1d
mov dword [eax + ecx*4 + 4], ebx
mov ebx, dword [esp + 0x7c]
mov dword [eax + ecx*4 + 8], ebx
mov ebx, dword [esp + 0x68]
mov dword [eax + ecx*4 + 0xc], ebx
mov dword [eax + ecx*4 + 0x10], edx
push str.row
mov edx, 3
mov ecx, esi
call fcn.0067af40
mov ebx, dword [esp + 0x2c]
add esp, 4
mov eax, dword [esp + 0x2c]
mov ecx, dword [ebx]
cmp dword [eax], ecx
jg 0x6c3b3b
push 3
push 3
push 7
mov edx, 0x6f
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c3b6d
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x6f
mov dword [eax + ecx*4 + 4], 7
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
push str._missing_from_index
mov edx, 4
mov ecx, esi
call fcn.0067af40
mov eax, dword [esp + 0x30]
add esp, 4
mov ecx, dword [ebx]
cmp dword [eax], ecx
jg 0x6c3ba2
push 3
push 3
push 4
mov edx, 0x6f
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c3bd4
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x6f
mov dword [eax + ecx*4 + 4], 4
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x38]
mov edx, 4
mov ecx, esi
push dword [eax]
call fcn.0067af40
mov ecx, dword [ebx]
add esp, 4
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x2c]
cmp dword [eax], ecx
jg 0x6c3c0e
push 3
push 3
push 4
mov edx, 0x6f
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c3c40
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x6f
mov dword [eax + ecx*4 + 4], 4
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, esi
call fcn.006bf020
mov ecx, dword [esi]
mov edx, dword [ebx]
mov dword [esp + 0x7c], eax
cmp byte [ecx + 0x57], 0
je 0x6c3c5c
mov ecx, 0x96e3e0
jmp 0x6c3c65
mov eax, dword [esi + 0x68]
lea ecx, [edi + edi*4]
lea ecx, [eax + ecx*4]
mov eax, dword [esp + 0x34]
mov dword [ecx + 8], edx
test byte [eax + 0x1c], 0x80
jne 0x6c3e21
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x4c]
add edx, dword [esp + 0x80]
mov ecx, dword [ebx]
cmp dword [eax], ecx
jg 0x6c3ca1
push 0
push 3
push edx
mov edx, 0x8e
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c3ccf
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x8e
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x68]
mov edi, dword [ebx]
dec edx
movzx eax, word [eax + 0x34]
add edx, eax
mov eax, dword [esp + 0x2c]
cmp dword [eax], edi
jg 0x6c3d00
push edx
push 0
push 3
mov edx, 0x35
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
mov edi, eax
jmp 0x6c3d32
lea eax, [edi + 1]
mov dword [ebx], eax
lea ecx, [edi + edi*4]
mov eax, dword [esi + 0x68]
mov ebx, dword [esp + 0x28]
mov dword [eax + ecx*4], 0x35
mov dword [eax + ecx*4 + 4], 3
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
push str.rowid_not_at_end_of_record_for_row
mov edx, 3
mov ecx, esi
call fcn.0067af40
mov eax, dword [esp + 0x30]
add esp, 4
mov ecx, dword [ebx]
cmp dword [eax], ecx
jg 0x6c3d67
push 3
push 3
push 7
mov edx, 0x6f
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c3d99
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x6f
mov dword [eax + ecx*4 + 4], 7
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
push str._of_index
mov edx, 4
mov ecx, esi
call fcn.0067af40
mov eax, dword [esp + 0x30]
add esp, 4
mov edx, dword [esp + 0x14]
mov ecx, dword [ebx]
dec edx
cmp dword [eax], ecx
jg 0x6c3dd2
push 0
push edx
push 0
mov edx, 9
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c3e04
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov ebx, dword [esp + 0x28]
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 [ebx]
cmp byte [eax + 0x57], 0
je 0x6c3e15
mov eax, 0x96e3e0
jmp 0x6c3e1e
mov eax, dword [esi + 0x68]
lea ecx, [edi + edi*4]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov ecx, dword [esp + 0x38]
xor edi, edi
xor eax, eax
mov dword [esp + 0x44], edi
xor ebx, ebx
cmp ax, word [ecx + 0x32]
jae 0x6c40bb
lea esp, [esp]
mov eax, dword [ecx + 0x20]
cmp dword [eax + edi*4], 0x7fc3dc
je 0x6c3f2c
test ebx, ebx
jne 0x6c3e5e
mov eax, dword [esp + 0x18]
dec dword [eax + 0x38]
mov ebx, dword [eax + 0x38]
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
mov ecx, dword [edx]
cmp dword [eax], ecx
jg 0x6c3e8c
mov eax, dword [esp + 0x4c]
mov edx, 0x5e
add eax, dword [esp + 0x80]
mov ecx, esi
push 3
push edi
push eax
call fcn.0067ad20
add esp, 0xc
jmp 0x6c3ec9
mov edi, dword [esp + 0x44]
lea eax, [ecx + 1]
mov dword [edx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov esi, dword [esp + 0x4c]
add esi, dword [esp + 0x80]
mov dword [eax + ecx*4], 0x5e
mov dword [eax + ecx*4 + 4], esi
mov esi, dword [esp + 0x3c]
mov dword [eax + ecx*4 + 8], edi
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
mov ecx, dword [edx]
mov edx, dword [esp + 0x68]
add edx, edi
cmp dword [eax], ecx
jg 0x6c3ef2
push edx
push ebx
push 3
mov edx, 0x34
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c3f28
mov esi, dword [esp + 0x28]
lea eax, [ecx + 1]
mov edi, dword [esp + 0x44]
lea ecx, [ecx + ecx*4]
mov dword [esi], eax
mov esi, dword [esp + 0x3c]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x34
mov dword [eax + ecx*4 + 4], 3
mov dword [eax + ecx*4 + 8], ebx
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esp + 0x38]
movzx eax, word [ecx + 0x32]
inc edi
mov dword [esp + 0x44], edi
cmp edi, eax
jl 0x6c3e40
test ebx, ebx
je 0x6c40bb
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
mov edi, dword [edx]
cmp dword [eax], edi
jg 0x6c3f6c
push 0
push 0
push 0
mov edx, 9
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
mov edi, eax
jmp 0x6c3f9e
lea eax, [edi + 1]
mov dword [edx], 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 ecx, dword [esi + 0xc]
not ebx
mov edx, dword [esp + 0x28]
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x6c3fbc
push ebx
mov edx, esi
call fcn.0067b700
add esp, 4
jmp 0x6c3fc4
mov ecx, dword [ecx + 0x40]
mov eax, dword [edx]
mov dword [ecx + ebx*4], eax
push str.row
mov edx, 3
mov ecx, esi
call fcn.0067af40
mov ebx, dword [esp + 0x2c]
add esp, 4
mov eax, dword [esp + 0x2c]
mov ecx, dword [ebx]
cmp dword [eax], ecx
jg 0x6c3ffd
push 3
push 3
push 7
mov edx, 0x6f
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c402f
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x6f
mov dword [eax + ecx*4 + 4], 7
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
push str._values_differ_from_index
mov edx, 4
mov ecx, esi
call fcn.0067af40
mov eax, dword [esp + 0x30]
add esp, 4
mov edx, dword [esp + 0x14]
mov ecx, dword [ebx]
dec edx
cmp dword [eax], ecx
jg 0x6c4068
push 0
push edx
push 0
mov edx, 9
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c409a
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov ebx, dword [esp + 0x28]
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 [ebx]
cmp byte [eax + 0x57], 0
je 0x6c40ab
mov eax, 0x96e3e0
jmp 0x6c40b4
mov eax, dword [esi + 0x68]
lea ecx, [edi + edi*4]
lea eax, [eax + ecx*4]
mov ecx, dword [esp + 0x38]
mov dword [eax + 8], edx
cmp byte [ecx + 0x36], 0
je 0x6c433d
mov eax, dword [esp + 0x18]
xor ebx, ebx
dec dword [eax + 0x38]
mov edx, dword [eax + 0x38]
xor eax, eax
mov dword [esp + 0x44], edx
cmp ax, word [ecx + 0x32]
jae 0x6c416b
mov edi, dword [esp + 0x68]
mov eax, dword [ecx + 4]
movsx ecx, word [eax + ebx*2]
test ecx, ecx
js 0x6c4100
mov eax, dword [esp + 0x34]
add ecx, ecx
mov eax, dword [eax + 4]
test byte [eax + ecx*8 + 4], 0xf
jne 0x6c4159
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov eax, dword [esp + 0x2c]
cmp dword [eax], ecx
jg 0x6c4127
push 0
push edx
push edi
mov edx, 0x32
mov ecx, esi
call fcn.0067ad20
mov edx, dword [esp + 0x50]
add esp, 0xc
jmp 0x6c4159
mov esi, dword [esp + 0x28]
lea eax, [ecx + 1]
lea ecx, [ecx + ecx*4]
mov dword [esi], eax
mov esi, dword [esp + 0x3c]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x32
mov dword [eax + ecx*4 + 4], edi
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 + 0x38]
inc ebx
inc edi
movzx eax, word [ecx + 0x32]
cmp ebx, eax
jl 0x6c40e5
mov ebx, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x4c]
add edx, dword [esp + 0x80]
mov edi, dword [ebx]
cmp dword [eax], edi
jg 0x6c419c
push 0
push 0
push edx
mov edx, 0x27
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
mov edi, eax
jmp 0x6c41ce
lea eax, [edi + 1]
mov dword [ebx], eax
lea ecx, [edi + edi*4]
mov eax, dword [esi + 0x68]
mov esi, dword [esp + 0x3c]
mov dword [eax + ecx*4], 0x27
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 eax, dword [esp + 0x2c]
mov ecx, dword [ebx]
cmp dword [eax], ecx
jg 0x6c41f2
mov ebx, dword [esp + 0x44]
mov edx, 9
push 0
push ebx
push 0
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c4224
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov ebx, dword [esp + 0x44]
mov dword [eax + ecx*4], 9
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], ebx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x28]
mov edx, dword [eax]
mov eax, dword [esi]
cmp byte [eax + 0x57], 0
je 0x6c4239
mov eax, 0x96e3e0
jmp 0x6c4242
mov eax, dword [esi + 0x68]
lea ecx, [edi + edi*4]
lea eax, [eax + ecx*4]
mov edi, dword [esp + 0x4c]
add edi, dword [esp + 0x80]
mov dword [eax + 8], edx
mov eax, dword [esp + 0x38]
movzx edx, word [eax + 0x32]
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov eax, dword [esp + 0x2c]
cmp dword [eax], ecx
jg 0x6c427e
push edx
push dword [esp + 0x6c]
mov edx, 0x29
mov ecx, esi
push ebx
push edi
call fcn.0067ad60
add esp, 0x10
jmp 0x6c42ac
mov esi, dword [esp + 0x28]
lea eax, [ecx + 1]
lea ecx, [ecx + ecx*4]
mov dword [esi], eax
mov esi, dword [esp + 0x3c]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0xfd29
mov dword [eax + ecx*4 + 4], edi
mov edi, dword [esp + 0x68]
mov dword [eax + ecx*4 + 8], ebx
mov dword [eax + ecx*4 + 0xc], edi
mov dword [eax + ecx*4 + 0x10], edx
push str.non_unique_entry_in_index
mov edx, 3
mov ecx, esi
call fcn.0067af40
mov edi, dword [esp + 0x2c]
add esp, 4
mov eax, dword [esp + 0x2c]
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x6c42e7
push 0
push dword [esp + 0x18]
mov edx, 9
mov ecx, esi
push 0
call fcn.0067ad20
add esp, 0xc
jmp 0x6c4319
mov edx, dword [esp + 0x14]
lea eax, [ecx + 1]
mov dword [edi], 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 ecx, dword [esi + 0xc]
not ebx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x6c4333
push ebx
mov edx, esi
call fcn.0067b700
add esp, 4
jmp 0x6c4341
mov ecx, dword [ecx + 0x40]
mov eax, dword [edi]
mov dword [ecx + ebx*4], eax
jmp 0x6c4341
mov edi, dword [esp + 0x28]
mov eax, dword [esi]
mov edx, dword [edi]
cmp byte [eax + 0x57], 0
je 0x6c4352
mov eax, 0x96e3e0
jmp 0x6c435f
mov eax, dword [esp + 0x7c]
lea ecx, [eax + eax*4]
mov eax, dword [esi + 0x68]
lea eax, [eax + ecx*4]
mov edi, dword [esp + 0xb8]
mov dword [eax + 8], edx
test edi, edi
je 0x6c4395
mov eax, dword [esp + 0x18]
not edi
mov edx, dword [eax + 8]
mov ecx, dword [edx + 0xc]
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x6c438c
push edi
call fcn.0067b700
add esp, 4
jmp 0x6c4395
mov ecx, dword [ecx + 0x40]
mov eax, dword [edx + 0x6c]
mov dword [ecx + edi*4], eax
mov ebx, dword [esp + 0x38]
mov ecx, dword [esp + 0x18]
mov ebx, dword [ebx + 0x14]
inc dword [esp + 0x4c]
mov edi, dword [esp + 0x4c]
mov dword [esp + 0x38], ebx
test ebx, ebx
jne 0x6c39f4
mov edi, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
mov ebx, dword [esp + 0x1c]
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x6c43de
push 0
push ebx
push dword [esp + 0x78]
mov edx, 0x27
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c440c
mov edx, dword [esp + 0x70]
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x27
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], ebx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esi]
mov edx, dword [edi]
cmp byte [eax + 0x57], 0
je 0x6c441d
mov eax, 0x96e3e8
jmp 0x6c4429
mov eax, dword [esi + 0x68]
lea ecx, [ebx + ebx*4]
lea eax, [eax + ecx*4]
add eax, 0xfffffff4
cmp byte [esp + 0x63], 0x71
mov dword [eax], edx
je 0x6c4630
push str.wrong__of_entries_in_index
mov edx, 2
mov ecx, esi
call fcn.0067af40
mov eax, dword [esp + 0x38]
add esp, 4
mov ebx, dword [eax + 8]
test ebx, ebx
je 0x6c45ea
mov ecx, dword [esp + 0x5c]
mov eax, 8
mov dword [esp + 0x14], eax
cmp ecx, ebx
je 0x6c45da
mov edx, dword [esp + 0x80]
mov ecx, dword [edi]
add edx, 0xfffffff8
add edx, eax
mov eax, dword [esp + 0x2c]
cmp dword [eax], ecx
jg 0x6c449a
push 0
push 3
push edx
mov edx, 0x62
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c44cc
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov esi, dword [esp + 0x3c]
mov dword [eax + ecx*4], 0x62
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x2c]
mov edi, dword [edi]
mov edx, dword [esp + 0x14]
cmp dword [eax], edi
jg 0x6c44f2
push 3
push 0
push edx
mov edx, 0x35
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
mov edi, eax
jmp 0x6c4524
mov ecx, dword [esp + 0x28]
lea eax, [edi + 1]
mov dword [ecx], eax
lea ecx, [edi + edi*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x35
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
test eax, eax
jle 0x6c453e
lea ecx, [eax + eax*4]
mov edx, 0x90
mov eax, dword [esi + 0x68]
mov word [eax + ecx*4 - 0x12], dx
push dword [ebx]
mov edx, 4
mov ecx, esi
call fcn.0067af40
mov edx, dword [esp + 0x2c]
add esp, 4
mov eax, dword [esp + 0x2c]
mov ecx, dword [edx]
cmp dword [eax], ecx
jg 0x6c4574
push 3
push 2
push 4
mov edx, 0x6f
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c45a6
lea eax, [ecx + 1]
mov dword [edx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x6f
mov dword [eax + ecx*4 + 4], 4
mov dword [eax + ecx*4 + 8], 2
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, esi
call fcn.006bf020
mov eax, dword [esp + 0x28]
mov edx, dword [eax]
mov eax, dword [esi]
cmp byte [eax + 0x57], 0
je 0x6c45c2
mov eax, 0x96e3e0
jmp 0x6c45cb
mov eax, dword [esi + 0x68]
lea ecx, [edi + edi*4]
lea eax, [eax + ecx*4]
mov edi, dword [esp + 0x28]
mov ecx, dword [esp + 0x5c]
mov dword [eax + 8], edx
mov eax, dword [esp + 0x14]
mov ebx, dword [ebx + 0x14]
inc eax
mov dword [esp + 0x14], eax
test ebx, ebx
jne 0x6c4466
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x6c4630
movzx eax, word [eax + 0x32]
cmp eax, 1
jne 0x6c461d
mov edx, dword [esp + 0x50]
test edx, edx
je 0x6c4630
mov ecx, dword [esp + 0x18]
mov al, byte [ecx + 0x13]
cmp al, 8
jae 0x6c4630
movzx eax, al
mov dword [ecx + eax*4 + 0xa0], edx
inc byte [ecx + 0x13]
jmp 0x6c4630
mov ecx, dword [esp + 0x18]
cmp eax, dword [ecx + 0x1c]
jle 0x6c4630
mov dword [ecx + 0x1c], eax
mov eax, dword [esp + 0x50]
mov dword [ecx + 0x20], eax
mov ebx, dword [esp + 0x30]
mov ebx, dword [ebx]
mov dword [esp + 0x30], ebx
test ebx, ebx
jne 0x6c26e0
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 0x18]
mov ebx, dword [esp + 0x54]
inc ebx
mov edx, ebx
mov dword [esp + 0x54], ebx
cmp ebx, dword [eax + 0x14]
jl 0x6c2310
mov ebx, 1
push ecx
push 0x7ff748
mov edx, 7
mov ecx, esi
call fcn.0067b960
mov edx, eax
add esp, 8
test edx, edx
je 0x6c46aa
sub ebx, dword [esp + 0x20]
mov ecx, str.unknown_error
mov eax, dword [str.database_disk_image_is_malformed]
test eax, eax
mov dword [edx + 8], ebx
mov byte [edx + 0x29], 0xff
cmovne ecx, eax
mov dword [edx + 0x38], 0x88a5a0
mov byte [edx + 0x65], 0xff
mov dword [edx + 0x74], ecx
mov eax, dword [esi]
mov ecx, dword [esi + 0x6c]
sub ecx, 2
cmp byte [eax + 0x57], 0
mov eax, 0x96e3e0
jne 0x6c46c0
mov eax, dword [esi + 0x68]
mov dword [eax + 0xc], ecx
jmp 0x6c52ae
test ecx, ecx
jne 0x6c4766
mov ecx, edi
call fcn.006c6710
test eax, eax
jne 0x6c52ae
mov eax, dword [edi]
movzx eax, byte [eax + 0x54]
mov eax, dword [eax*8 + 0x7ffcb0]
test eax, eax
je 0x6c52ae
push eax
mov edx, 1
mov ecx, esi
call fcn.0067af40
mov ecx, dword [esi + 0x6c]
add esp, 4
cmp dword [esi + 0x70], ecx
jg 0x6c472a
push 0
push 1
push 1
mov edx, 0x54
mov ecx, esi
call fcn.0067ad20
mov edx, dword [esp + 0x30]
add esp, 0xc
jmp 0x6c52c5
mov edx, dword [esp + 0x24]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x54
mov dword [eax + ecx*4 + 4], 1
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x6c52c5
mov edx, dword [esp + 0x10]
test byte [edx + 0x18], 0x40
jne 0x6c52ae
mov edi, dword [str.UTF8]
mov ebx, 0x7ffcb0
test edi, edi
je 0x6c4810
mov edx, ecx
sub edi, ecx
jmp 0x6c4790
movzx eax, byte [edx]
movzx esi, byte [edx + edi]
cmp eax, esi
jne 0x6c4844
test eax, eax
jne 0x6c4856
mov cl, byte [ebx + 4]
mov edx, 2
movzx eax, cl
test cl, cl
mov ecx, dword [esp + 0x10]
cmovne edx, eax
mov dword [esp + 0xb8], edx
push 0
mov eax, dword [ecx + 0x10]
mov eax, dword [eax + 0xc]
mov byte [eax + 0x4d], dl
mov byte [ecx + 0x54], dl
add ecx, 0x1b0
mov edx, 0x7fc3dc
call fcn.0065a860
add esp, 4
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x6c47fd
mov eax, dword [esp + 0xb8]
movzx eax, al
lea eax, [eax + eax*4]
lea ecx, [ecx + eax*4]
add ecx, 0xffffffec
mov eax, dword [esp + 0x10]
mov edx, 1
mov dword [eax + 8], ecx
mov ecx, eax
call fcn.0067f8f0
cmp dword [ebx], 0
jne 0x6c52ae
push dword [esp + 0xc]
push str.unsupported_encoding:__s
push dword [esp + 0x20]
call fcn.00658480
mov edx, dword [esp + 0x30]
add esp, 0xc
mov ecx, dword [esp + 0x10]
call fcn.00654910
mov ebx, dword [esp + 0xc]
jmp 0x6c52c3
movzx ecx, byte [eax + 0x7fc958]
movzx eax, byte [esi + 0x7fc958]
sub ecx, eax
jne 0x6c485c
inc edx
jmp 0x6c4790
mov edi, dword [ebx + 8]
add ebx, 8
test edi, edi
je 0x6c4819
mov ecx, dword [esp + 0xc]
jmp 0x6c4787
mov eax, dword [esi + 0x9c]
mov edx, dword [esp + 0x40]
bts eax, edx
mov edi, dword [ebx + 8]
mov dword [esi + 0x9c], eax
cmp edx, 1
je 0x6c48ad
mov eax, dword [esi]
mov ecx, edx
shl ecx, 4
mov eax, dword [eax + 0x10]
mov eax, dword [eax + ecx + 4]
cmp byte [eax + 9], 0
je 0x6c48ad
mov eax, dword [esi + 0xa0]
bts eax, edx
mov dword [esi + 0xa0], eax
cmp dword [esp + 0xc], 0
je 0x6c4942
test byte [ebx + 5], 8
jne 0x6c4942
push ecx
push 0x7fb21c
mov edx, 2
mov ecx, esi
call fcn.0067b960
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x38]
mov esi, eax
mov dword [esp + 0x38], 0
mov eax, dword [esp + 0x48]
add esp, 8
mov dword [esi + 4], eax
mov dword [esi + 0x18], eax
mov dword [esi + 0x1c], edi
call fcn.006594b0
mov ecx, dword [esp + 0x30]
mov eax, 1
mov dword [esi + 0x20], ecx
mov word [esi + 0x16], ax
cmp edi, eax
jne 0x6c52ae
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x20]
and eax, 0x10000000
or eax, 0
je 0x6c52ae
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
mov byte [esi + 0x14], 0xb8
call fcn.00654910
mov ebx, dword [esp + 0xc]
jmp 0x6c52c3
push ecx
push 0x800050
mov edx, 3
mov ecx, esi
call fcn.0067b960
mov ecx, dword [esp + 0x48]
add esp, 8
mov dword [eax + 4], ecx
mov dword [eax + 0x18], ecx
mov ecx, 1
mov dword [eax + 0x20], edi
mov edx, dword [esi + 0x6c]
cmp edx, ecx
jle 0x6c52ae
mov eax, dword [esi + 0x68]
add eax, 0x14
lea ebx, [ebx]
cmp byte [eax], 0xa6
je 0x6c4992
inc ecx
add eax, 0x14
cmp ecx, edx
jl 0x6c4980
jmp 0x6c52ae
mov eax, dword [esi + 0x68]
mov byte [eax + 0x14], 0xb8
jmp 0x6c52ae
mov eax, dword [esp + 0x18]
xor edi, edi
mov dword [eax + 0x2c], 1
mov ecx, 1
cmp edi, 0x24
ja 0x6c4a26
mov eax, dword [edi*4 + 0x7fcf20]
inc edi
test eax, eax
je 0x6c4a26
mov edx, ecx
mov ecx, esi
push eax
call fcn.0067af40
mov ecx, dword [esi + 0x6c]
add esp, 4
cmp dword [esi + 0x70], ecx
jg 0x6c49f1
push 0
push 1
push 1
mov edx, 0x54
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c49ab
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x54
mov dword [eax + ecx*4 + 4], 1
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x6c49ab
mov edx, dword [esi + 0x6c]
mov ecx, 1
cmp edx, ecx
jle 0x6c52ae
mov eax, dword [esi + 0x68]
add eax, 0x14
lea esp, [esp]
cmp byte [eax], 0xa6
je 0x6c4992
inc ecx
add eax, 0x14
cmp ecx, edx
jl 0x6c4a40
jmp 0x6c52ae
mov eax, dword [esp + 0x50]
mov edx, 0xc
cmp dword [eax], 0
cmovne edx, dword [esp + 0x40]
xor ebx, ebx
mov dword [esp + 0x20], edx
test ecx, ecx
je 0x6c4b06
mov edi, str.full
mov edx, ecx
sub edi, ecx
mov edi, edi
movzx ecx, byte [edx]
movzx eax, byte [edi + edx]
cmp ecx, eax
jne 0x6c4a94
test ecx, ecx
jne 0x6c4aa6
lea ebx, [ecx + 1]
jmp 0x6c4b02
movzx eax, byte [eax + 0x7fc958]
movzx ecx, byte [ecx + 0x7fc958]
sub ecx, eax
jne 0x6c4aa9
inc edx
jmp 0x6c4a80
mov edx, dword [esp + 0xc]
mov edi, str.restart
sub edi, edx
movzx ecx, byte [edx]
movzx eax, byte [edi + edx]
cmp ecx, eax
jne 0x6c4ac8
test ecx, ecx
jne 0x6c4ada
lea ebx, [ecx + 2]
jmp 0x6c4b02
movzx eax, byte [eax + 0x7fc958]
movzx ecx, byte [ecx + 0x7fc958]
sub ecx, eax
jne 0x6c4add
inc edx
jmp 0x6c4ab4
mov edx, dword [esp + 0xc]
mov edi, str.truncate
sub edi, edx
jmp 0x6c4af0
movzx ecx, byte [edx]
movzx eax, byte [edi + edx]
cmp ecx, eax
jne 0x6c4b2e
test ecx, ecx
jne 0x6c4b40
lea ebx, [ecx + 3]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x18]
mov dword [eax + 0x2c], 3
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x6c4b43
push 1
push ebx
push edx
mov edx, 3
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c4b6e
movzx eax, byte [eax + 0x7fc958]
movzx ecx, byte [ecx + 0x7fc958]
sub ecx, eax
jne 0x6c4b02
inc edx
jmp 0x6c4af0
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 3
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], ebx
mov dword [eax + ecx*4 + 0xc], 1
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x6c4b7f
push 0
push 3
jmp 0x6bfcf1
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x54
mov dword [eax + ecx*4 + 4], 1
mov dword [eax + ecx*4 + 8], 3
jmp 0x6bfb9f
test ecx, ecx
je 0x6c4bcc
lea edx, [esp + 0x30]
mov dword [esp + 0x30], 0
call fcn.006594b0
push dword [esp + 0x30]
push dword [esp + 0x14]
call fcn.006ff430
add esp, 8
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x110], 0x6ff3f0
jne 0x6c4be7
mov eax, dword [eax + 0x114]
jmp 0x6c52a1
xor eax, eax
jmp 0x6c52a1
mov edx, dword [esp + 0x10]
mov eax, dword [edx + 0xc]
test eax, eax
je 0x6c4c07
push eax
call dword [0x8bbd08]
mov edx, dword [esp + 0x14]
add esp, 4
cmp byte [edx + 0x5f], 0
jne 0x6c4c18
mov ecx, edx
call fcn.0066a830
mov edx, dword [esp + 0x10]
xor esi, esi
cmp dword [edx + 0x14], esi
jle 0x6c4c50
xor edi, edi
mov eax, dword [edx + 0x10]
mov eax, dword [edi + eax + 4]
test eax, eax
je 0x6c4c47
mov eax, dword [eax + 4]
mov eax, dword [eax]
mov eax, dword [eax + 0xe4]
push dword [eax + 0x34]
call dword [0x8bbd4c]
mov edx, dword [esp + 0x14]
add esp, 4
inc esi
add edi, 0x10
cmp esi, dword [edx + 0x14]
jl 0x6c4c21
cmp byte [edx + 0x5f], 0
jne 0x6c4c61
mov ecx, edx
call fcn.0066a880
mov edx, dword [esp + 0x10]
mov eax, dword [edx + 0xc]
jmp 0x6bf5bd
test ecx, ecx
je 0x6c4c91
lea edx, [esp + 0x30]
mov dword [esp + 0x30], 0
call fcn.006594b0
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x1c], ecx
test cl, 2
je 0x6c52ae
jmp 0x6c4c99
mov dword [esp + 0x1c], 0xfffe
cmp dword [esp + 0x34], 0
mov edx, dword [edi + 0x28]
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x48], edx
lea eax, [edx + 1]
mov dword [edi + 0x28], eax
je 0x6c4cb9
mov eax, ecx
mov dword [esp + 0x44], eax
jmp 0x6c4ccd
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x14]
dec eax
mov dword [esp + 0x44], eax
cmp ecx, eax
jg 0x6c5024
mov ebx, 1
mov edi, ecx
rol ebx, cl
shl edi, 4
mov dword [esp + 0x84], ebx
mov dword [esp + 0x64], edi
cmp ecx, 1
je 0x6c5007
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx + 0x7c]
test eax, eax
cmovne ecx, eax
mov eax, dword [ecx + 0x58]
test ebx, eax
jne 0x6c4d0a
mov ebx, dword [esp + 0x40]
bts eax, ebx
mov dword [ecx + 0x58], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x10]
mov eax, dword [edi + eax + 0xc]
mov ebx, dword [eax + 0x10]
mov dword [esp + 0x14], ebx
test ebx, ebx
je 0x6c4ff8
jmp 0x6c4d30
mov edi, dword [ebx + 8]
test dword [edi + 0x1c], 0x100
je 0x6c4fe6
mov ax, word [edi + 0x26]
add ax, 0x2e
movzx ecx, ax
mov eax, dword [edi + 8]
mov dword [esp + 0xb8], ecx
test eax, eax
je 0x6c4d71
lea esp, [esp]
test byte [eax + 0x38], 0x80
je 0x6c4df5
mov eax, dword [eax + 0x14]
test eax, eax
jne 0x6c4d60
test cx, cx
je 0x6c4df5
mov ecx, dword [esp + 0x18]
push 0x70
push edi
push dword [esp + 0x48]
call fcn.006b7cb0
mov ebx, dword [esp + 0x28]
add esp, 0xc
mov ecx, dword [esi + 0x6c]
and ebx, 1
mov eax, dword [esp + 0xb8]
add ebx, 2
add ebx, ecx
movsx edx, ax
cmp dword [esi + 0x70], ecx
jg 0x6c4dc2
push edx
push ebx
push dword [esp + 0x50]
mov edx, 0x21
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c4df1
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov esi, dword [esp + 0x48]
mov dword [eax + ecx*4], 0x21
mov dword [eax + ecx*4 + 4], esi
mov esi, dword [esp + 0x3c]
mov dword [eax + ecx*4 + 8], ebx
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
mov ebx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
push dword [edi]
mov ecx, dword [esp + 0x68]
mov eax, dword [edx + 0x10]
push dword [ecx + eax]
push str.ANALYZE___w_.__w_
push edx
call fcn.00657240
add esp, 0x10
mov edi, eax
test byte [esp + 0x1c], 1
je 0x6c4f3e
mov ecx, dword [esp + 0x18]
mov al, byte [ecx + 0x13]
test al, al
jne 0x6c4e33
inc dword [ecx + 0x2c]
mov ebx, dword [ecx + 0x2c]
jmp 0x6c4e42
dec al
mov byte [ecx + 0x13], al
movzx eax, al
mov ebx, dword [ecx + eax*4 + 0xa0]
mov edx, dword [esi + 0x6c]
cmp dword [esi + 0x70], edx
jg 0x6c4e62
push 0
push ebx
push 0
mov edx, 0x75
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
mov edx, eax
jmp 0x6c4e95
lea eax, [edx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [edx + edx*4]
mov eax, dword [esi + 0x68]
mov esi, dword [esp + 0x3c]
mov dword [eax + ecx*4], 0x75
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], ebx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esi]
cmp byte [ecx + 0x57], 0
je 0x6c4ead
push edi
mov edx, 0xfffffffa
call fcn.0067ba70
add esp, 4
jmp 0x6c4ee1
test edx, edx
jns 0x6c4eb5
mov edx, dword [esi + 0x6c]
dec edx
mov eax, dword [esi + 0x68]
lea ecx, [edx + edx*4]
cmp byte [eax + ecx*4 + 1], 0
lea eax, [eax + ecx*4]
je 0x6c4ed6
push 0xfffffffffffffffa
push edi
mov edx, eax
mov ecx, esi
call fcn.0067bb60
add esp, 8
jmp 0x6c4ee1
test edi, edi
je 0x6c4ee1
mov dword [eax + 0x10], edi
mov byte [eax + 1], 0xfa
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x6c4f06
push 0
push 1
push ebx
mov edx, 0x54
mov ecx, esi
call fcn.0067ad20
mov ebx, dword [esp + 0x20]
add esp, 0xc
jmp 0x6c4fe2
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x54
mov dword [eax + ecx*4 + 4], ebx
mov ebx, dword [esp + 0x14]
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x6c4fe2
mov edx, dword [esi + 0x6c]
cmp dword [esi + 0x70], edx
jg 0x6c4f5f
push 0
push 0
push 0
mov edx, 0x94
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
mov edx, eax
jmp 0x6c4f96
mov ebx, dword [esp + 0x14]
lea eax, [edx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [edx + edx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x94
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]
cmp byte [ecx + 0x57], 0
je 0x6c4fae
push edi
mov edx, 0xfffffffa
call fcn.0067ba70
add esp, 4
jmp 0x6c4fe2
test edx, edx
jns 0x6c4fb6
mov edx, dword [esi + 0x6c]
dec edx
mov eax, dword [esi + 0x68]
lea ecx, [edx + edx*4]
cmp byte [eax + ecx*4 + 1], 0
lea eax, [eax + ecx*4]
je 0x6c4fd7
push 0xfffffffffffffffa
push edi
mov edx, eax
mov ecx, esi
call fcn.0067bb60
add esp, 8
jmp 0x6c4fe2
test edi, edi
je 0x6c4fe2
mov dword [eax + 0x10], edi
mov byte [eax + 1], 0xfa
mov edx, dword [esp + 0x48]
mov ebx, dword [ebx]
mov dword [esp + 0x14], ebx
test ebx, ebx
jne 0x6c4d30
mov edi, dword [esp + 0x64]
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x44]
mov ebx, dword [esp + 0x84]
inc ecx
rol ebx, 1
add edi, 0x10
mov dword [esp + 0x40], ecx
mov dword [esp + 0x64], edi
mov dword [esp + 0x84], ebx
cmp ecx, eax
jle 0x6c4ce4
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x6c5046
push 0
push 0
push 0
mov edx, 0xa6
mov ecx, esi
call fcn.0067ad20
add esp, 0xc
jmp 0x6c52ae
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0xa6
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], 0
jmp 0x6bfb9f
test ecx, ecx
je 0x6c5098
lea edx, [esp + 0xb8]
call fcn.006593a0
test eax, eax
jne 0x6c5098
push dword [esp + 0xbc]
push dword [esp + 0xbc]
call fcn.006543d0
add esp, 8
call fcn.006fd220
test eax, eax
je 0x6c50ad
or edi, 0xffffffff
or ebx, edi
push ebx
push edi
jmp 0x6c52a4
mov eax, dword [0x96e500]
test eax, eax
je 0x6c50c5
push eax
call dword [0x8bbd08]
mov eax, dword [0x96e500]
add esp, 4
mov edi, dword [0x96e508]
mov ebx, dword [0x96e50c]
test eax, eax
je 0x6c50df
push eax
call dword [0x8bbd10]
add esp, 4
push ebx
push edi
jmp 0x6c52a4
test ecx, ecx
je 0x6c5176
lea edx, [esp + 0xb8]
call fcn.006593a0
test eax, eax
jne 0x6c5176
call fcn.006fd220
test eax, eax
je 0x6c5112
or ebx, 0xffffffff
or edi, ebx
jmp 0x6c5144
mov eax, dword [0x96e500]
test eax, eax
je 0x6c512a
push eax
call dword [0x8bbd08]
mov eax, dword [0x96e500]
add esp, 4
mov ebx, dword [0x96e510]
mov edi, dword [0x96e514]
test eax, eax
je 0x6c5144
push eax
call dword [0x8bbd10]
add esp, 4
mov edx, dword [esp + 0xbc]
test edx, edx
jl 0x6c5176
mov ecx, dword [esp + 0xb8]
jg 0x6c515c
test ecx, ecx
je 0x6c5176
mov eax, ebx
or eax, edi
je 0x6c516c
cmp edi, edx
jl 0x6c5176
jg 0x6c516c
cmp ebx, ecx
jbe 0x6c5176
push edx
push ecx
call fcn.00654510
add esp, 8
call fcn.006fd220
test eax, eax
je 0x6c518b
or edi, 0xffffffff
or ebx, edi
push ebx
push edi
jmp 0x6c52a4
mov eax, dword [0x96e500]
test eax, eax
je 0x6c51a3
push eax
call dword [0x8bbd08]
mov eax, dword [0x96e500]
add esp, 4
mov edi, dword [0x96e510]
mov ebx, dword [0x96e514]
jmp 0x6c50d1
test ecx, ecx
je 0x6c51f7
lea edx, [esp + 0xb8]
call fcn.006593a0
test eax, eax
jne 0x6c51f7
cmp dword [esp + 0xbc], eax
jl 0x6c51f7
mov eax, dword [esp + 0xb8]
jg 0x6c51de
test eax, eax
jb 0x6c51f7
mov ecx, 8
and eax, 0x7fffffff
cmp eax, ecx
cmova eax, ecx
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0xa4], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0xa4]
jmp 0x6c52a1
test ecx, ecx
je 0x6c523f
lea edx, [esp + 0xb8]
call fcn.006593a0
test eax, eax
jne 0x6c523f
cmp dword [esp + 0xbc], eax
jl 0x6c523f
mov eax, dword [esp + 0xb8]
jg 0x6c5230
test eax, eax
jb 0x6c523f
mov ecx, dword [esp + 0x10]
and eax, 0x7fffffff
mov dword [ecx + 0x1f0], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x1f0]
jmp 0x6c52a1
test ecx, ecx
je 0x6c5297
lea edx, [esp + 0x30]
mov dword [esp + 0x30], 0
call fcn.006594b0
mov edi, dword [esp + 0x30]
test edi, edi
jle 0x6c5287
mov eax, dword [esp + 0x10]
push eax
push 0x6fe990
push eax
call fcn.006fe9f0
mov eax, dword [esp + 0x1c]
add esp, 0xc
mov dword [eax + 0x1f4], edi
jmp 0x6c529b
push 0
push 0
push dword [esp + 0x18]
call fcn.006fe9f0
add esp, 0xc
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x1f4]
cdq
push edx
push eax
mov ecx, esi
call fcn.006bedc0
add esp, 8
mov ebx, dword [esp + 0xc]
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
call fcn.00654910
test ebx, ebx
je 0x6c52ce
mov edx, ebx
mov ecx, dword [esp + 0x10]
call fcn.00654910
mov ecx, dword [esp + 0xdc]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.0073297b
mov esp, ebp
pop ebp
ret