Function at 0x469ab0
Capabilities:
Reference sql statements
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x124
mov eax, dword [0x53c1a4]
xor eax, esp
mov dword [esp + 0x11c], eax
push ebx
push ebp
push esi
mov esi, ecx
mov ebp, dword [esi]
mov ecx, dword [ebp + 8]
mov eax, dword [esi + 4]
mov edx, dword [ecx + 0xc]
mov ecx, dword [ebp + 0x30]
xor ebx, ebx
mov dword [esp + 0x40], eax
mov al, byte [edx + 0x4d]
mov edx, dword [ebp + 0x34]
push edi
mov edi, dword [esi + 8]
push esi
mov dword [esp + 0x24], esi
mov dword [esp + 0x20], ebx
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebp
mov byte [esp + 0x3b], bl
mov byte [esp + 0x2c], al
mov dword [esp + 0x44], ebx
mov dword [esp + 0x34], edi
mov dword [esp + 0x28], ebx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], ebx
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x40], edx
call fcn.004655b0
add esp, 4
cmp dword [esi + 0x5c], 7
je 0x46a000
xor eax, eax
mov dword [esi + 0x5c], eax
mov dword [esi + 0x14], eax
mov ecx, dword [ebp + 0xe0]
mov dword [ebp + 0x1b4], eax
test ecx, ecx
jne 0x46ea46
xor edx, edx
cmp dword [ebp + 0x114], eax
mov eax, dword [esi + 0x58]
setne dl
mov dword [esp + 0x1c], eax
mov dword [esp + 0x54], edx
cmp byte [ebp + 0x1e], 0
jne 0x46a000
cmp dword [esp + 0x54], 0
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x44]
lea ecx, [eax + eax*4]
lea ebp, [edx + ecx*4]
je 0x469bb1
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 0x11c]
cmp ecx, dword [esp + 0x40]
jne 0x469bad
mov edx, dword [eax + 0x118]
mov eax, dword [eax + 0x114]
push edx
call eax
add esp, 4
test eax, eax
jne 0x46e87c
mov dword [esp + 0x40], eax
inc dword [esp + 0x40]
test byte [ebp + 2], 2
je 0x469bd4
mov eax, dword [ebp + 8]
lea ecx, [eax + eax*4]
lea ebx, [edi + ecx*8]
mov eax, ebx
mov dword [esp + 0x24], ebx
call fcn.00463920
mov edx, 4
mov word [ebx + 0x1c], dx
movzx eax, byte [ebp]
dec eax
cmp eax, 0x90
ja case.0x469be4.17
jmp dword [eax*4 + 0x46ea80]
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 0xe0]
test ecx, ecx
jne 0x46ea46
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x1c], ebp
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
lea edx, [eax + eax*4]
lea ecx, [edi + edx*8]
mov eax, 4
mov word [ecx + 0x1c], ax
mov eax, dword [esp + 0x1c]
cdq
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
mov ecx, dword [ebp + 8]
dec ecx
mov dword [esp + 0x1c], ecx
jmp case.0x469be4.17
mov ebp, dword [ebp + 4]
lea edx, [ebp + ebp*4]
mov eax, dword [edi + edx*8 + 0x10]
mov dword [esp + 0x1c], eax
jmp case.0x469be4.17
mov ebp, dword [ebp + 4]
lea ecx, [ebp + ebp*4]
mov eax, dword [edi + ecx*8 + 0x10]
lea ecx, [edi + ecx*8]
mov edx, 4
mov word [ecx + 0x1c], dx
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x1c]
cdq
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x1c], ecx
jmp case.0x469be4.17
mov eax, dword [ebp + 0xc]
lea edx, [eax + eax*4]
test byte [edi + edx*8 + 0x1c], 1
je case.0x469be4.17
cmp dword [ebp + 4], 0
jne 0x46e889
mov eax, dword [esi + 0xa8]
test eax, eax
je 0x46e889
mov ecx, dword [eax + 0x3c]
dec dword [esi + 0xb0]
mov edi, dword [esp + 0x18]
mov dword [esi + 0xa8], ecx
mov ecx, dword [esi + 0x6c]
add dword [edi + 0x40], ecx
mov dword [edi + 0x3c], ecx
call fcn.00465eb0
cmp dword [ebp + 8], 4
mov edx, dword [edi + 0x30]
mov ecx, dword [edi + 0x34]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], ecx
jne 0x469cec
lea edx, [eax + eax*4]
mov eax, dword [esi + 4]
mov ecx, dword [eax + edx*4 + 8]
dec ecx
mov dword [esp + 0x1c], ecx
mov edx, dword [esi + 4]
mov eax, dword [esi + 8]
mov dword [esp + 0x44], edx
mov dword [esp + 0x30], eax
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
cdq
mov dword [ebx + 0x10], eax
mov dword [ebx + 0x14], edx
jmp case.0x469be4.17
mov ebp, dword [ebp + 0x10]
mov ecx, dword [ebp]
mov dword [ebx + 0x10], ecx
mov edx, dword [ebp + 4]
mov dword [ebx + 0x14], edx
jmp case.0x469be4.17
mov eax, 8
mov word [ebx + 0x1c], ax
mov ecx, dword [ebp + 0x10]
fld qword [ecx]
fstp qword [ebx + 8]
jmp case.0x469be4.17
mov edi, dword [ebp + 0x10]
mov ecx, edi
mov byte [ebp], 9
call fcn.0044c8f0
cmp byte [esp + 0x28], 1
mov dword [ebp + 4], eax
je 0x469e42
test edi, edi
jne 0x469d61
mov esi, ebx
call fcn.00463c30
jmp 0x469de0
mov eax, dword [ebx]
test eax, eax
je 0x469d6c
mov eax, dword [eax + 0x48]
jmp 0x469d71
mov eax, 0x3b9aca00
xor esi, esi
mov dword [esp + 0x14], eax
test eax, eax
jl 0x469d8b
jmp 0x469d80
cmp byte [edi + esi], 0
je 0x469d8b
inc esi
cmp esi, eax
jle 0x469d80
xor edx, edx
mov dword [esp + 0x2c], 0x202
push ebx
cmp edx, fcn.0044a9d0
jne 0x469da8
call fcn.00463990
mov dword [ebx + 0x24], edi
jmp 0x469db5
call fcn.00463990
mov dword [esp + 0x30], 0xa02
mov ax, word [esp + 0x30]
add esp, 4
cmp esi, dword [esp + 0x14]
mov dword [ebx + 0x20], 0
mov dword [ebx + 4], edi
mov dword [ebx + 0x18], esi
mov word [ebx + 0x1c], ax
mov byte [ebx + 0x1f], 1
mov byte [ebx + 0x1e], 3
jg 0x46a707
movzx ecx, byte [esp + 0x28]
mov eax, ebx
mov dword [esp + 0x14], 0
call fcn.004635c0
test eax, eax
jne 0x46a000
mov ebx, dword [esp + 0x24]
mov cx, word [ebx + 0x1c]
mov dword [ebx + 0x24], eax
mov edx, 0xfbff
and cx, dx
mov eax, 0x800
or cx, ax
mov word [ebx + 0x1c], cx
cmp byte [ebp + 1], 0xff
jne 0x469e32
mov ecx, dword [ebp + 0x10]
mov edx, dword [esp + 0x18]
push ecx
push edx
call fcn.0044a9d0
add esp, 8
mov byte [ebp + 1], 0xff
mov eax, dword [ebx + 4]
mov dword [ebp + 0x10], eax
mov ecx, dword [ebx + 0x18]
mov dword [ebp + 4], ecx
mov edx, dword [ebp + 4]
mov eax, dword [esp + 0x18]
cmp edx, dword [eax + 0x48]
jg 0x46a707
mov ecx, 0xa02
mov word [ebx + 0x1c], cx
mov edx, dword [ebp + 0x10]
mov cl, byte [esp + 0x28]
mov dword [ebx + 4], edx
mov eax, dword [ebp + 4]
mov dword [ebx + 0x18], eax
mov byte [ebx + 0x1f], cl
jmp case.0x469be4.17
mov edx, 1
mov word [ebx + 0x1c], dx
jmp case.0x469be4.17
mov esi, dword [ebp + 0x10]
mov ebp, dword [ebp + 4]
test esi, esi
jne 0x469e9e
mov esi, ebx
call fcn.00463c30
mov al, byte [esp + 0x28]
mov byte [ebx + 0x1f], al
jmp case.0x469be4.17
mov eax, dword [ebx]
test eax, eax
je 0x469ea9
mov eax, dword [eax + 0x48]
jmp 0x469eae
mov eax, 0x3b9aca00
mov edi, 0x10
test ebp, ebp
jge 0x469ed5
xor ebp, ebp
test eax, eax
jl 0x469ed0
lea ecx, [ecx]
mov cl, byte [esi + ebp + 1]
or cl, byte [esi + ebp]
je 0x469ed0
add ebp, 2
cmp ebp, eax
jle 0x469ec0
mov edi, 0x210
xor edx, edx
push ebx
cmp edx, fcn.0044a9d0
jne 0x469eed
call fcn.00463990
add esp, 4
mov dword [ebx + 0x24], esi
jmp 0x469efb
call fcn.00463990
add esp, 4
or edi, 0x800
mov al, byte [esp + 0x28]
mov byte [ebx + 0x1f], 1
mov dword [ebx + 0x20], 0
mov dword [ebx + 4], esi
mov dword [ebx + 0x18], ebp
mov word [ebx + 0x1c], di
mov byte [ebx + 0x1e], 4
mov byte [ebx + 0x1f], al
jmp case.0x469be4.17
mov ebp, dword [ebp + 4]
mov edx, dword [esi + 0x48]
lea ecx, [ebp + ebp*4]
lea esi, [edx + ecx*8 - 0x28]
mov ecx, esi
mov dword [esp + 0x68], esi
call fcn.00463e40
test eax, eax
jne 0x46a707
push 0x800
push esi
call fcn.00463e70
add esp, 8
jmp case.0x469be4.17
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x6c], eax
mov ecx, dword [ebp + 4]
mov dword [esp + 0x70], ecx
mov ebp, dword [ebp + 8]
lea ecx, [ecx + ecx*4]
lea edx, [ebp + ebp*4]
lea ebx, [edi + ecx*8]
lea ecx, [edi + edx*8]
mov dword [esp + 0x74], ebp
mov dword [esp + 0x24], ecx
test eax, eax
je 0x469fb3
mov esi, ecx
dec eax
mov dword [esp + 0x6c], eax
mov edx, dword [esi + 0x24]
mov dword [esp + 0x68], edx
mov eax, esi
mov dword [esi + 0x24], 0
call fcn.00463f20
mov eax, dword [esp + 0x68]
mov dword [ebx + 0x24], eax
mov eax, dword [esp + 0x6c]
add ebx, 0x28
add esi, 0x28
test eax, eax
jne 0x469f80
mov dword [esp + 0x24], esi
dec eax
mov dword [esp + 0x6c], eax
jmp case.0x469be4.17
mov eax, dword [ebp + 8]
mov ebp, dword [ebp + 4]
lea ecx, [eax + eax*4]
lea edx, [ebp + ebp*4]
lea eax, [edi + edx*8]
lea ebx, [edi + ecx*8]
push 0x1000
push eax
mov dword [esp + 0x2c], ebx
call fcn.00463e70
mov ecx, 0x1000
add esp, 8
test word [ebx + 0x1c], cx
je case.0x469be4.17
mov eax, ebx
call fcn.004636f0
test eax, eax
je case.0x469be4.17
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 0x20]
push 0x53fc24
add edi, 0x38
mov byte [eax + 0x1e], 1
call fcn.0044adc0
mov dword [esp + 0x18], 7
jmp 0x46a724
mov eax, dword [ebp + 8]
mov ebp, dword [ebp + 4]
lea edx, [eax + eax*4]
lea eax, [ebp + ebp*4]
lea ecx, [edi + eax*8]
lea ebx, [edi + edx*8]
push 0x1000
push ecx
mov dword [esp + 0x2c], ebx
call fcn.00463e70
add esp, 8
jmp case.0x469be4.17
push 0
mov ecx, esi
call fcn.004668f0
add esp, 4
mov dword [esp + 0x14], eax
test eax, eax
jne case.0x469be4.17
push 1
push esi
call fcn.004667d0
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne case.0x469be4.17
mov edx, dword [esi + 0x54]
add edx, 2
or edx, 1
mov dword [esi + 0x54], edx
mov eax, dword [ebp + 4]
lea eax, [eax + eax*4]
lea edi, [edi + eax*8]
xor ecx, ecx
mov dword [esi + 0x14], edi
mov dword [esp + 0x68], edi
mov dword [esp + 0x6c], ecx
cmp dword [ebp + 8], ecx
jle 0x46a0fc
mov eax, dword [esp + 0x68]
lea edx, [ecx + ecx*4]
lea eax, [eax + edx*8]
mov edx, 0x1000
test word [eax + 0x1c], dx
je 0x46a0cc
call fcn.004636f0
test eax, eax
jne 0x46a000
mov ecx, dword [esp + 0x6c]
lea eax, [ecx + ecx*4]
mov ecx, dword [esp + 0x68]
lea eax, [ecx + eax*8]
call fcn.004637b0
mov eax, dword [esp + 0x6c]
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x68]
lea ecx, [eax + edx*8]
call fcn.004697d0
mov ecx, dword [esp + 0x6c]
inc ecx
mov dword [esp + 0x6c], ecx
cmp ecx, dword [ebp + 8]
jl 0x46a0a6
mov ecx, dword [esp + 0x18]
cmp byte [ecx + 0x1e], 0
jne 0x46a000
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x20]
inc edx
mov dword [eax + 0x58], edx
mov edi, 0x64
jmp 0x46a783
mov eax, dword [ebp + 4]
lea edx, [eax + eax*4]
mov eax, dword [ebp + 8]
mov ebp, dword [ebp + 0xc]
lea esi, [edi + edx*8]
lea eax, [eax + eax*4]
mov dl, byte [edi + eax*8 + 0x1c]
lea ebx, [edi + eax*8]
movzx eax, word [esi + 0x1c]
lea ecx, [ebp + ebp*4]
or dl, al
lea edi, [edi + ecx*8]
mov dword [esp + 0x2c], esi
mov dword [esp + 0x24], edi
test dl, 1
je 0x46a15f
mov esi, edi
call fcn.00463c30
jmp case.0x469be4.17
test eax, 0x4000
je 0x46a175
mov eax, esi
call fcn.00463750
test eax, eax
jne 0x46a000
mov eax, 0x4000
test word [ebx + 0x1c], ax
je 0x46a18f
mov eax, ebx
call fcn.00463750
test eax, eax
jne 0x46a000
test byte [esi + 0x1c], 0x12
jne 0x46a1af
movzx esi, byte [esp + 0x28]
mov eax, dword [esp + 0x2c]
call fcn.00463800
test eax, eax
jne 0x46a000
mov esi, dword [esp + 0x2c]
test byte [ebx + 0x1c], 0x12
jne 0x46a1cd
movzx esi, byte [esp + 0x28]
mov eax, ebx
call fcn.00463800
test eax, eax
jne 0x46a000
mov esi, dword [esp + 0x2c]
mov eax, dword [esi + 0x18]
add eax, dword [ebx + 0x18]
cdq
mov ecx, edx
mov edx, dword [esp + 0x18]
mov edi, eax
mov dword [esp + 0x68], edi
mov dword [esp + 0x6c], ecx
mov eax, dword [edx + 0x48]
cdq
cmp ecx, edx
jg 0x46a707
jl 0x46a1fa
cmp edi, eax
ja 0x46a707
mov edi, dword [esp + 0x24]
mov ax, word [edi + 0x1c]
mov ecx, 0xbf02
and ax, cx
or ax, 2
xor edx, edx
cmp edi, ebx
sete dl
mov word [edi + 0x1c], ax
mov eax, dword [esp + 0x68]
add eax, 2
push edx
call fcn.004635e0
add esp, 4
test eax, eax
jne 0x46a000
cmp edi, ebx
je 0x46a249
mov eax, dword [ebx + 0x18]
mov ecx, dword [ebx + 4]
mov edx, dword [edi + 4]
push eax
push ecx
push edx
call fcn.004f26c0
add esp, 0xc
mov eax, dword [esi + 0x18]
mov edx, dword [ebx + 0x18]
mov ecx, dword [esi + 4]
add edx, dword [edi + 4]
push eax
push ecx
push edx
call fcn.004f26c0
mov ecx, dword [esp + 0x74]
mov eax, dword [edi + 4]
mov byte [ecx + eax], 0
mov eax, dword [esp + 0x74]
mov edx, dword [edi + 4]
mov byte [eax + edx + 1], 0
mov al, byte [esp + 0x34]
mov ecx, 0x200
add esp, 0xc
or word [edi + 0x1c], cx
mov edx, dword [esp + 0x68]
mov dword [edi + 0x18], edx
mov byte [edi + 0x1f], al
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
lea ecx, [eax + eax*4]
lea ebx, [edi + ecx*8]
mov esi, ebx
call fcn.00469910
mov eax, dword [ebp + 8]
lea edx, [eax + eax*4]
lea esi, [edi + edx*8]
call fcn.00469910
mov eax, dword [ebp + 0xc]
movzx edx, word [ebx + 0x1c]
lea eax, [eax + eax*4]
lea ecx, [edi + eax*8]
movzx eax, word [esi + 0x1c]
or edx, eax
mov dword [esp + 0x24], ecx
mov dword [esp + 0x68], edx
test dl, 1
jne 0x46a51b
mov cl, byte [ebx + 0x1c]
and cl, byte [esi + 0x1c]
test cl, 4
je 0x46a32d
mov eax, dword [ebx + 0x10]
mov dword [esp + 0x70], eax
mov ecx, dword [ebx + 0x14]
mov dword [esp + 0x74], ecx
mov edi, dword [esi + 0x10]
mov dword [esp + 0x78], edi
mov edx, dword [esi + 0x14]
mov dword [esp + 0x7c], edx
movzx edx, byte [ebp]
add edx, 0xffffffaa
cmp edx, 3
ja case.default.0x46a30c
jmp dword [edx*4 + 0x46ecc4]
push ecx
push eax
lea eax, [esp + 0x80]
push eax
call fcn.0044d740
add esp, 0xc
test eax, eax
je 0x46a403
mov eax, ebx
call fcn.00463aa0
fstp qword [esp + 0x80]
mov eax, esi
call fcn.00463aa0
fst qword [esp + 0x88]
movzx eax, byte [ebp]
add eax, 0xffffffaa
cmp eax, 3
ja case.default.0x46a359
jmp dword [eax*4 + 0x46ecd4]
push ecx
push eax
lea edx, [esp + 0x80]
call fcn.0044d7d0
add esp, 8
test eax, eax
jne 0x46a32d
jmp 0x46a403
push ecx
push eax
lea ecx, [esp + 0x80]
push ecx
call fcn.0044d820
add esp, 0xc
test eax, eax
jne 0x46a32d
jmp 0x46a403
mov edx, eax
or edx, ecx
je 0x46a51b
mov edx, eax
and edx, ecx
cmp edx, 0xffffffff
jne 0x46a3b7
test edi, edi
jne 0x46a3b7
cmp dword [esp + 0x7c], 0x80000000
je 0x46a32d
push ecx
push eax
mov eax, dword [esp + 0x84]
push eax
push edi
call fcn.004fefd0
jmp 0x46a3fb
mov edx, eax
or edx, ecx
je 0x46a51b
mov edx, eax
and edx, ecx
cmp edx, 0xffffffff
jne 0x46a3eb
mov eax, 1
xor ecx, ecx
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], ecx
push ecx
push eax
mov eax, dword [esp + 0x84]
push eax
push edi
call fcn.004ff080
mov dword [esp + 0x7c], edx
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x78]
mov dword [eax + 0x10], ecx
mov edx, dword [esp + 0x7c]
mov cx, word [eax + 0x1c]
mov dword [eax + 0x14], edx
mov edx, 0xbf04
and cx, dx
or cx, 4
mov word [eax + 0x1c], cx
jmp case.0x469be4.17
fadd qword [esp + 0x80]
jmp 0x46a4c7
fsub qword [esp + 0x80]
jmp 0x46a4c7
fmul qword [esp + 0x80]
jmp 0x46a4c7
fldz
fld qword [esp + 0x80]
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x44
jnp 0x46a517
fdivp st(1)
jmp 0x46a4c7
fld qword [esp + 0x80]
call fcn.005075e6
mov esi, eax
mov ebx, edx
mov dword [esp + 0x70], esi
mov dword [esp + 0x74], ebx
call fcn.005075e6
mov ecx, esi
or ecx, ebx
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], edx
je 0x46a51b
mov ecx, esi
and ecx, ebx
cmp ecx, 0xffffffff
jne 0x46a4b2
mov esi, 1
xor ebx, ebx
mov dword [esp + 0x70], esi
mov dword [esp + 0x74], ebx
push ebx
push esi
push edx
push eax
call fcn.004ff080
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], edx
fild qword [esp + 0x58]
sub esp, 8
fst qword [esp + 0x90]
fstp qword [esp]
call fcn.0044c8b0
add esp, 8
test eax, eax
jne 0x46a51b
mov esi, dword [esp + 0x24]
fld qword [esp + 0x88]
mov dx, word [esi + 0x1c]
fstp qword [esi + 8]
mov eax, 0xbf08
and dx, ax
or dx, 8
mov word [esi + 0x1c], dx
test byte [esp + 0x68], 8
jne case.0x469be4.17
call fcn.00463af0
jmp case.0x469be4.17
fstp st(0)
fstp st(0)
mov esi, dword [esp + 0x24]
call fcn.00463c30
jmp case.0x469be4.17
movzx ecx, byte [ebp + 3]
mov edx, dword [esi + 0xc]
mov dword [esp + 0xb0], edx
mov dword [esp + 0xb4], ecx
mov eax, dword [ebp + 0xc]
lea eax, [eax + eax*4]
lea edx, [edi + eax*8]
mov eax, dword [ebp + 8]
lea eax, [eax + eax*4]
lea edi, [edi + eax*8]
xor eax, eax
mov dword [esp + 0x24], edx
mov dword [esp + 0x6c], edi
mov dword [esp + 0x68], eax
test ecx, ecx
jle 0x46a5b0
mov ecx, dword [esp + 0xb0]
mov dword [ecx + eax*4], edi
mov eax, dword [esp + 0x6c]
mov edx, 0x1000
test word [eax + 0x1c], dx
je 0x46a58c
call fcn.004636f0
test eax, eax
jne 0x46a000
mov eax, dword [esp + 0x6c]
mov ecx, eax
call fcn.004697d0
mov eax, dword [esp + 0x68]
mov edi, dword [esp + 0x6c]
inc eax
add edi, 0x28
cmp eax, dword [esp + 0xb4]
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], edi
jl 0x46a562
cmp byte [ebp + 1], 0xfb
mov eax, dword [ebp + 0x10]
jne 0x46a5c7
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], 0
jmp 0x46a5d1
mov dword [esp + 0x74], eax
mov ecx, dword [eax]
mov dword [esp + 0x70], ecx
mov edi, dword [esp + 0x24]
mov esi, dword [esp + 0x18]
xor eax, eax
mov edx, 1
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], eax
mov ebx, edi
lea eax, [esp + 0x78]
mov word [esp + 0x94], dx
mov dword [esp + 0x78], esi
call fcn.00463f20
mov eax, dword [esp + 0x94]
mov ecx, dword [esp + 0x70]
and eax, 0xbf01
or eax, 1
mov word [esp + 0x94], ax
mov dword [esp + 0xa4], 0
test byte [ecx + 3], 8
je 0x46a63b
mov edx, dword [ebp - 4]
mov dword [esp + 0xa8], edx
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x3c]
mov dword [esi + 0x34], ecx
mov dword [esi + 0x30], eax
mov edx, dword [esp + 0xb0]
mov eax, dword [esp + 0xb4]
push edx
mov edx, dword [esp + 0x74]
push eax
mov eax, dword [edx + 0xc]
lea ecx, [esp + 0x78]
push ecx
call eax
mov ebx, dword [esp + 0x80]
mov ecx, dword [esi + 0x30]
mov edx, dword [esi + 0x34]
add esp, 0xc
mov dword [esp + 0x38], ecx
mov dword [esp + 0x3c], edx
test ebx, ebx
je 0x46a69a
mov eax, dword [ebp + 4]
push eax
call fcn.00466e50
mov ecx, dword [esp + 0x78]
add esp, 4
mov dword [ebp + 0x10], ecx
mov byte [ebp + 1], 0xf9
cmp byte [esi + 0x1e], 0
jne 0x46e921
cmp dword [esp + 0xa4], 0
je 0x46a6df
mov bl, 1
lea edi, [esp + 0x78]
call fcn.004644b0
mov edi, dword [esp + 0x20]
push eax
push 0x53f944
add edi, 0x38
mov eax, esi
call fcn.0044adc0
mov edx, dword [esp + 0xac]
mov edi, dword [esp + 0x2c]
add esp, 8
mov dword [esp + 0x14], edx
movzx ecx, byte [esp + 0x28]
lea eax, [esp + 0x78]
call fcn.004635c0
lea ebx, [esp + 0x78]
mov eax, edi
call fcn.00463f20
mov ecx, edi
call fcn.00463e40
test eax, eax
je case.0x469be4.17
mov edi, dword [esp + 0x20]
mov eax, dword [esp + 0x18]
push 0x53fc0c
add edi, 0x38
call fcn.0044adc0
mov dword [esp + 0x18], 0x12
add esp, 4
mov esi, dword [esp + 0x20]
mov edx, dword [esi + 0x38]
mov eax, dword [esi + 0xa0]
mov ecx, dword [esp + 0x1c]
mov edi, dword [esp + 0x14]
push edx
push eax
push ecx
push str.statement_aborts_at__d:___s___s
push edi
mov dword [esi + 0x5c], edi
call sym.ShuamePacket.exe_sqlite3_log
add esp, 0x14
push esi
call fcn.00466950
add esp, 4
cmp edi, 0xc0a
jne 0x46a769
mov edx, dword [esp + 0x18]
mov byte [edx + 0x1e], 1
mov al, byte [esp + 0x37]
mov edi, 1
test al, al
jbe 0x46a783
mov ecx, dword [esp + 0x18]
movzx eax, al
dec eax
call fcn.0047a1f0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
mov dword [eax + 0x30], ecx
mov dword [eax + 0x34], edx
mov eax, dword [esp + 0x20]
push eax
call fcn.00465610
mov ecx, dword [esp + 0x130]
add esp, 4
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004ea83a
add esp, 0x124
ret
mov eax, dword [ebp + 4]
lea eax, [eax + eax*4]
lea ebx, [edi + eax*8]
mov eax, dword [ebp + 8]
lea ecx, [eax + eax*4]
mov eax, dword [ebp + 0xc]
lea edx, [eax + eax*4]
mov al, byte [edi + ecx*8 + 0x1c]
or al, byte [ebx + 0x1c]
lea ecx, [edi + ecx*8]
lea esi, [edi + edx*8]
mov dword [esp + 0x24], esi
test al, 1
je 0x46a7f1
call fcn.00463c30
jmp case.0x469be4.17
call fcn.00463a30
mov ecx, ebx
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], edx
call fcn.00463a30
mov edi, eax
mov dword [esp + 0x78], edi
mov dword [esp + 0x7c], edx
mov al, byte [ebp]
mov byte [esp + 0x80], al
cmp al, 0x52
jne 0x46a82a
and dword [esp + 0x68], edi
and dword [esp + 0x6c], edx
jmp 0x46a92d
cmp al, 0x53
jne 0x46a83b
or dword [esp + 0x68], edi
or dword [esp + 0x6c], edx
jmp 0x46a92d
mov ecx, edi
or ecx, edx
je 0x46a92d
test edx, edx
jg 0x46a882
jl 0x46a84f
test edi, edi
jae 0x46a877
mov cl, 0xa9
sub cl, al
cmp edx, 0xffffffff
mov al, cl
mov byte [esp + 0x80], al
jl 0x46a8a7
jg 0x46a868
cmp edi, 0xffffffc0
jbe 0x46a8a7
neg edi
adc edx, 0
neg edx
mov dword [esp + 0x78], edi
mov dword [esp + 0x7c], edx
test edx, edx
jl 0x46a8c6
jg 0x46a882
cmp edi, 0x40
jb 0x46a8c6
cmp dword [esp + 0x6c], 0
jg 0x46a8b9
jl 0x46a892
cmp dword [esp + 0x68], 0
jae 0x46a8b9
cmp al, 0x54
je 0x46a8b9
or eax, 0xffffffff
cdq
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], edx
jmp 0x46a92d
mov dword [esp + 0x78], 0x40
mov dword [esp + 0x7c], 0
jmp 0x46a882
xor eax, eax
cdq
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], edx
jmp 0x46a92d
cmp al, 0x54
mov eax, dword [esp + 0x68]
mov ecx, edi
jne 0x46a8df
mov edx, dword [esp + 0x6c]
call fcn.00507590
mov ebx, eax
mov ebp, edx
jmp 0x46a919
mov esi, dword [esp + 0x6c]
mov edx, esi
call fcn.00505ae0
mov ebx, eax
mov ebp, edx
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], ebp
test esi, esi
jg 0x46a921
jl 0x46a903
cmp dword [esp + 0x68], 0
jae 0x46a921
mov ecx, 0x40
sub ecx, edi
or eax, 0xffffffff
or edx, 0xffffffff
call fcn.00507590
or ebx, eax
or ebp, edx
mov dword [esp + 0x74], ebp
mov dword [esp + 0x70], ebx
mov esi, dword [esp + 0x24]
mov dword [esp + 0x68], ebx
mov dword [esp + 0x6c], ebp
mov edx, dword [esp + 0x68]
mov cx, word [esi + 0x1c]
mov dword [esi + 0x10], edx
mov eax, dword [esp + 0x6c]
mov edx, 0xbf04
and cx, dx
or cx, 4
mov dword [esi + 0x14], eax
mov word [esi + 0x1c], cx
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
lea eax, [eax + eax*4]
lea esi, [edi + eax*8]
call fcn.00463b50
mov eax, dword [ebp + 8]
cdq
add dword [esi + 0x10], eax
adc dword [esi + 0x14], edx
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
lea ecx, [eax + eax*4]
lea esi, [edi + ecx*8]
call fcn.00469910
test byte [esi + 0x1c], 8
je 0x46a98a
call fcn.00463af0
movzx eax, word [esi + 0x1c]
test al, 4
jne 0x46a9a7
mov ebp, dword [ebp + 8]
test ebp, ebp
je 0x46e933
dec ebp
mov dword [esp + 0x1c], ebp
jmp case.0x469be4.17
and eax, 0xbf04
or eax, 4
mov word [esi + 0x1c], ax
jmp case.0x469be4.17
mov ebp, dword [ebp + 4]
lea edx, [ebp + ebp*4]
test byte [edi + edx*8 + 0x1c], 4
lea esi, [edi + edx*8]
je case.0x469be4.17
call fcn.00463b80
jmp case.0x469be4.17
mov ebp, dword [ebp + 4]
lea eax, [ebp + ebp*4]
movzx ecx, word [edi + eax*8 + 0x1c]
lea edi, [edi + eax*8]
test cl, 1
jne case.0x469be4.17
mov eax, ecx
shr eax, 3
and eax, 2
or eax, ecx
mov word [edi + 0x1c], ax
test al, 2
jne 0x46aa11
test al, 0xc
je 0x46aa11
movzx esi, byte [esp + 0x28]
mov eax, edi
call fcn.00463800
mov ecx, 0xfff3
and word [edi + 0x1c], cx
movzx eax, word [edi + 0x1c]
test eax, 0x4000
je 0x46aa3e
mov eax, edi
call fcn.00463750
mov edx, 0xbfe3
and word [edi + 0x1c], dx
mov dword [esp + 0x14], eax
jmp case.0x469be4.17
mov edx, 0xbfe3
and word [edi + 0x1c], dx
mov dword [esp + 0x14], 0
jmp case.0x469be4.17
mov ebp, dword [ebp + 4]
lea eax, [ebp + ebp*4]
lea edi, [edi + eax*8]
movzx eax, word [edi + 0x1c]
test al, 1
jne case.0x469be4.17
test al, 0x10
jne 0x46aa9b
test al, 2
jne 0x46aa82
test al, 0xc
je 0x46aa82
movzx esi, byte [esp + 0x28]
mov eax, edi
call fcn.00463800
mov cx, word [edi + 0x1c]
mov edx, 0xbf10
and cx, dx
or cx, 0x10
mov word [edi + 0x1c], cx
jmp case.0x469be4.17
and eax, 0xff10
mov word [edi + 0x1c], ax
jmp case.0x469be4.17
mov ebp, dword [ebp + 4]
lea eax, [ebp + ebp*4]
lea eax, [edi + eax*8]
call fcn.00463bb0
jmp case.0x469be4.17
mov ebp, dword [ebp + 4]
lea ecx, [ebp + ebp*4]
test byte [edi + ecx*8 + 0x1c], 1
lea esi, [edi + ecx*8]
jne case.0x469be4.17
call fcn.00463b50
jmp case.0x469be4.17
mov ebp, dword [ebp + 4]
lea edx, [ebp + ebp*4]
test byte [edi + edx*8 + 0x1c], 1
lea esi, [edi + edx*8]
jne case.0x469be4.17
call fcn.00463b80
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
lea eax, [eax + eax*4]
mov dx, word [edi + eax*8 + 0x1c]
lea esi, [edi + eax*8]
mov eax, dword [ebp + 0xc]
lea ecx, [eax + eax*4]
lea ebx, [edi + ecx*8]
mov word [esp + 0x6e], dx
mov ax, word [ebx + 0x1c]
mov cl, al
or cl, dl
mov word [esp + 0x70], ax
test cl, 1
je 0x46ab84
mov cl, byte [ebp + 3]
test cl, cl
jns 0x46ab41
and al, dl
test al, 1
mov eax, 0
sete al
jmp 0x46abf7
test cl, 0x10
je 0x46ab6e
mov ebp, dword [ebp + 8]
lea edx, [ebp + ebp*4]
mov ax, word [edi + edx*8 + 0x1c]
lea edi, [edi + edx*8]
mov ecx, 0xbf01
and ax, cx
or ax, 1
mov dword [esp + 0x24], edi
mov word [edi + 0x1c], ax
jmp case.0x469be4.17
test cl, 8
je case.0x469be4.17
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x1c], ebp
jmp case.0x469be4.17
mov al, byte [ebp + 3]
and al, 0x67
mov byte [esp + 0x6c], al
je 0x46abc3
mov edx, dword [esp + 0x28]
push edx
mov edi, esi
call fcn.00469990
mov eax, dword [esp + 0x2c]
add esp, 4
push eax
mov al, byte [esp + 0x70]
mov edi, ebx
call fcn.00469990
mov ecx, dword [esp + 0x1c]
add esp, 4
cmp byte [ecx + 0x1e], 0
jne 0x46a000
mov edi, dword [esp + 0x30]
mov edx, 0x4000
test word [esi + 0x1c], dx
je 0x46abd5
mov eax, esi
call fcn.00463750
mov eax, 0x4000
test word [ebx + 0x1c], ax
je 0x46abe7
mov eax, ebx
call fcn.00463750
mov ecx, dword [ebp + 0x10]
push ecx
mov eax, esi
mov ecx, ebx
call fcn.00464100
add esp, 4
mov dword [esp + 0x68], eax
movzx ecx, byte [ebp]
add ecx, 0xffffffb5
cmp ecx, 4
ja case.default.0x46ac07
jmp dword [ecx*4 + 0x46ece4]
xor edx, edx
test eax, eax
sete dl
mov eax, edx
jmp 0x46ac4a
xor ecx, ecx
test eax, eax
setne cl
jmp 0x46ac48
xor edx, edx
test eax, eax
setl dl
mov eax, edx
jmp 0x46ac4a
xor ecx, ecx
test eax, eax
setle cl
jmp 0x46ac48
xor edx, edx
test eax, eax
setg dl
mov eax, edx
jmp 0x46ac4a
xor ecx, ecx
test eax, eax
setge cl
mov eax, ecx
mov dword [esp + 0x68], eax
test byte [ebp + 3], 0x10
je 0x46ac95
mov ebp, dword [ebp + 8]
lea edx, [ebp + ebp*4]
mov ax, word [edi + edx*8 + 0x1c]
lea edi, [edi + edx*8]
mov ecx, 0xbf04
and ax, cx
or ax, 4
mov word [edi + 0x1c], ax
mov eax, dword [esp + 0x68]
cdq
mov dword [edi + 0x10], eax
mov dword [edi + 0x14], edx
mov dl, byte [esp + 0x6e]
mov byte [esi + 0x1c], dl
mov al, byte [esp + 0x70]
mov dword [esp + 0x24], edi
mov byte [ebx + 0x1c], al
jmp case.0x469be4.17
test eax, eax
je 0x46aca1
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x1c], ebp
mov dl, byte [esp + 0x6e]
mov byte [esi + 0x1c], dl
mov al, byte [esp + 0x70]
mov byte [ebx + 0x1c], al
jmp case.0x469be4.17
mov ecx, dword [ebp + 0x10]
mov dword [esp + 0x4c], ecx
jmp case.0x469be4.17
mov ecx, dword [ebp + 0xc]
mov dword [esp + 0x68], ecx
mov esi, dword [ebp + 0x10]
mov dword [esp + 0x78], esi
mov edx, dword [ebp + 4]
mov dword [esp + 0x70], edx
mov eax, dword [ebp + 8]
mov dword [esp + 0x74], eax
xor eax, eax
mov dword [esp + 0x6c], eax
test ecx, ecx
jle 0x46ad76
mov ebx, dword [esp + 0x4c]
mov edi, dword [esp + 0x30]
jmp 0x46acf8
mov esi, dword [esp + 0x78]
test ebx, ebx
je 0x46ad01
mov ecx, dword [ebx + eax*4]
jmp 0x46ad03
mov ecx, eax
mov dword [esp + 0x7c], ecx
mov edx, dword [esi + eax*4 + 0xc]
mov dword [esp + 0x80], edx
mov esi, dword [esi + 8]
movzx eax, byte [esi + eax]
push edx
mov edx, dword [esp + 0x78]
mov dword [esp + 0x88], eax
lea eax, [ecx + edx]
mov edx, dword [esp + 0x74]
add ecx, edx
lea eax, [eax + eax*4]
lea ecx, [ecx + ecx*4]
lea eax, [edi + eax*8]
lea ecx, [edi + ecx*8]
call fcn.00464100
add esp, 4
mov dword [esp + 0x48], eax
test eax, eax
jne 0x46ad66
mov eax, dword [esp + 0x6c]
inc eax
cmp eax, dword [esp + 0x68]
mov dword [esp + 0x6c], eax
jl 0x46acf4
mov dword [esp + 0x4c], 0
jmp case.0x469be4.17
cmp dword [esp + 0x84], 0
je 0x46ad76
neg eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], 0
jmp case.0x469be4.17
mov eax, dword [esp + 0x48]
test eax, eax
jge 0x46ad98
mov ebp, dword [ebp + 4]
dec ebp
mov dword [esp + 0x1c], ebp
jmp case.0x469be4.17
jne 0x46ada7
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x1c], ebp
jmp case.0x469be4.17
mov ebp, dword [ebp + 0xc]
dec ebp
mov dword [esp + 0x1c], ebp
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
lea edx, [eax + eax*4]
test byte [edi + edx*8 + 0x1c], 1
lea ecx, [edi + edx*8]
je 0x46adcb
mov edx, 2
jmp 0x46addd
call fcn.00463a30
or eax, edx
je 0x46addb
mov edx, 1
jmp 0x46addd
xor edx, edx
mov dword [esp + 0x68], edx
mov eax, dword [ebp + 8]
lea eax, [eax + eax*4]
test byte [edi + eax*8 + 0x1c], 1
lea ecx, [edi + eax*8]
je 0x46adf8
mov eax, 2
jmp 0x46ae0e
call fcn.00463a30
or eax, edx
mov edx, dword [esp + 0x68]
je 0x46ae0c
mov eax, 1
jmp 0x46ae0e
xor eax, eax
mov dword [esp + 0x6c], eax
cmp byte [ebp], 0x45
jne 0x46ae25
lea ecx, [eax + edx*2]
movzx eax, byte [edx + ecx + 0x518560]
jmp 0x46ae30
lea eax, [eax + edx*2]
movzx eax, byte [edx + eax + 0x51856c]
mov dword [esp + 0x68], eax
mov ebp, dword [ebp + 0xc]
lea ecx, [ebp + ebp*4]
lea edi, [edi + ecx*8]
mov dword [esp + 0x24], edi
cmp eax, 2
jne 0x46ae60
mov dx, word [edi + 0x1c]
mov eax, 0xbf01
and dx, ax
or dx, 1
mov word [edi + 0x1c], dx
jmp case.0x469be4.17
mov cx, word [edi + 0x1c]
cdq
mov dword [edi + 0x14], edx
mov edx, 0xbf04
and cx, dx
or cx, 4
mov dword [edi + 0x10], eax
mov word [edi + 0x1c], cx
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
mov ebp, dword [ebp + 8]
lea eax, [eax + eax*4]
test byte [edi + eax*8 + 0x1c], 1
lea edx, [ebp + ebp*4]
lea ecx, [edi + eax*8]
lea esi, [edi + edx*8]
mov dword [esp + 0x24], esi
je 0x46aea8
call fcn.00463c30
jmp case.0x469be4.17
call fcn.00463a30
or eax, edx
jne 0x46aec6
mov eax, 1
cdq
push edx
push eax
call fcn.00463cd0
add esp, 8
jmp case.0x469be4.17
xor eax, eax
cdq
push edx
push eax
call fcn.00463cd0
add esp, 8
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
mov ebp, dword [ebp + 8]
lea eax, [eax + eax*4]
test byte [edi + eax*8 + 0x1c], 1
lea edx, [ebp + ebp*4]
lea ecx, [edi + eax*8]
lea esi, [edi + edx*8]
mov dword [esp + 0x24], esi
je 0x46af00
call fcn.00463c30
jmp case.0x469be4.17
call fcn.00463a30
not edx
not eax
push edx
push eax
call fcn.00463cd0
add esp, 8
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
lea eax, [eax + eax*4]
test byte [edi + eax*8 + 0x1c], 1
lea eax, [edi + eax*8]
je 0x46af2d
mov eax, dword [ebp + 0xc]
jmp 0x46af5b
call fcn.00463aa0
fcomp qword [0x5239f0]
fnstsw ax
test ah, 0x44
jnp 0x46af46
mov eax, 1
jmp 0x46af48
xor eax, eax
mov dword [esp + 0x68], eax
cmp byte [ebp], 0x1b
jne 0x46af5f
xor ecx, ecx
test eax, eax
sete cl
mov eax, ecx
mov dword [esp + 0x68], eax
test eax, eax
je case.0x469be4.17
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x1c], ebp
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
lea edx, [eax + eax*4]
test byte [edi + edx*8 + 0x1c], 1
je case.0x469be4.17
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x1c], ebp
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
lea eax, [eax + eax*4]
test byte [edi + eax*8 + 0x1c], 1
jne case.0x469be4.17
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x1c], ebp
jmp case.0x469be4.17
mov ecx, dword [ebp + 4]
xor eax, eax
mov dword [esp + 0x78], ecx
mov edx, dword [ebp + 8]
mov dword [esp + 0x7c], edx
mov dword [esp + 0xa8], eax
mov dword [esp + 0xac], eax
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], eax
xor edx, edx
mov dword [esp + 0x80], edx
mov eax, dword [ebp + 0xc]
lea eax, [eax + eax*4]
lea eax, [edi + eax*8]
mov dword [esp + 0xa4], eax
mov cx, word [eax + 0x1c]
mov ebx, 0xbf01
and cx, bx
or cx, 1
mov word [eax + 0x1c], cx
mov ecx, dword [esp + 0x78]
mov eax, dword [esi + 0x44]
mov dword [esp + 0x84], edx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x80], eax
mov ecx, dword [eax]
mov dword [esp + 0x88], ecx
cmp ecx, edx
je 0x46b138
mov edi, eax
call fcn.00466ff0
mov dword [esp + 0x14], eax
test eax, eax
jne 0x46e9ff
mov eax, dword [esp + 0x80]
cmp byte [eax + 0x1c], 0
je 0x46b089
mov dword [esp + 0x68], 0
jmp case.0x469be4.17
mov edx, dword [eax + 0x4c]
mov ecx, dword [esp + 0x20]
cmp edx, dword [ecx + 0x54]
jne 0x46b0a8
mov ecx, dword [eax + 0x50]
mov dword [esp + 0x68], ecx
mov edx, dword [eax + 0x5c]
mov dword [esp + 0x84], edx
jmp 0x46b0d1
cmp byte [eax + 0x1f], 0
je 0x46b119
mov eax, dword [esp + 0x88]
lea edi, [esp + 0x70]
call fcn.0045c6c0
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x14], eax
mov dword [esp + 0x68], ecx
mov eax, dword [esp + 0x80]
test ecx, ecx
je case.0x469be4.17
mov edx, dword [esp + 0x18]
cmp ecx, dword [edx + 0x48]
ja 0x46a707
mov edx, dword [eax + 0x14]
mov esi, dword [esp + 0x20]
mov dword [esp + 0x94], edx
mov ecx, dword [eax + 0x54]
mov dword [esp + 0x8c], ecx
mov edi, dword [eax + 0x4c]
cmp edi, dword [esi + 0x54]
jne 0x46b189
mov eax, dword [eax + 0x58]
mov dword [esp + 0x90], eax
jmp 0x46b45e
mov esi, dword [esp + 0x88]
mov edi, esi
call fcn.0045c670
mov ecx, dword [edi + 0x2c]
mov dword [esp + 0x68], ecx
mov dword [esp + 0x14], 0
jmp 0x46b0ca
mov ecx, dword [eax + 0x10]
cmp ecx, edx
jle 0x46b180
lea ecx, [ecx + ecx*4]
lea edi, [edi + ecx*8]
mov dword [esp + 0xe8], edi
mov ecx, dword [edi + 0x18]
mov dword [esp + 0x68], ecx
mov ecx, dword [edi + 4]
mov dword [esp + 0x84], ecx
test byte [ebp + 3], 0x20
je 0x46b171
xor esi, esi
mov dword [eax + 0x4c], esi
mov ecx, dword [esp + 0x68]
jmp 0x46b0ca
mov esi, dword [esi + 0x54]
mov dword [eax + 0x4c], esi
mov ecx, dword [esp + 0x68]
jmp 0x46b0ca
mov dword [esp + 0x68], edx
jmp case.0x469be4.17
lea ecx, [ecx + edx*4]
mov dword [esp + 0x90], ecx
mov dword [esp + 0xe4], 0
mov dword [eax + 0x58], ecx
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0x68]
mov dword [ecx + 0x50], edx
mov ecx, dword [esp + 0x80]
mov eax, dword [esi + 0x54]
mov dword [ecx + 0x4c], eax
mov ecx, dword [esp + 0x84]
test ecx, ecx
je 0x46b1d0
mov dword [esp + 0xa0], ecx
jmp 0x46b246
mov edx, dword [esp + 0x80]
cmp byte [edx + 0x1f], 0
je 0x46b1f3
lea eax, [esp + 0xe4]
push eax
mov eax, dword [esp + 0x8c]
call fcn.0045cda0
jmp 0x46b207
mov eax, dword [esp + 0x88]
lea ecx, [esp + 0xe4]
push ecx
call fcn.0045cdc0
mov edx, dword [esp + 0x6c]
add esp, 4
mov dword [esp + 0xa0], eax
cmp edx, dword [esp + 0xe4]
ja 0x46b231
mov ecx, dword [esp + 0x80]
mov dword [esp + 0x84], eax
mov dword [ecx + 0x5c], eax
jmp 0x46b23f
mov edx, dword [esp + 0x80]
mov dword [edx + 0x5c], 0
mov ecx, dword [esp + 0xa0]
mov al, byte [ecx]
cmp al, 0x80
jae 0x46b25d
movzx edx, al
mov dword [esp + 0xd8], edx
mov eax, 1
jmp 0x46b27a
lea esi, [esp + 0xd8]
call fcn.0044d560
mov edx, dword [esp + 0xd8]
mov ecx, dword [esp + 0xa0]
movzx eax, al
movzx eax, al
mov dword [esp + 0xe0], eax
cmp edx, 0x18003
jbe 0x46b29f
mov eax, 0xfdf7
call fcn.004a4480
mov dword [esp + 0x14], eax
jmp case.0x469be4.17
mov eax, dword [esp + 0x94]
lea ebx, [eax + eax*4 + 3]
cmp ebx, edx
mov dword [esp + 0x98], ebx
jle 0x46b2be
mov ebx, edx
mov dword [esp + 0x98], ebx
cmp dword [esp + 0x84], 0
jne 0x46b334
cmp dword [esp + 0xe4], ebx
jge 0x46b334
mov edx, dword [esp + 0x80]
xor ecx, ecx
mov word [esp + 0xc4], cx
mov dword [esp + 0xa8], ecx
movzx eax, byte [edx + 0x1f]
push eax
push ecx
mov ecx, dword [esp + 0x90]
lea eax, [esp + 0xb0]
call fcn.004643a0
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne case.0x469be4.17
mov ecx, dword [esp + 0xac]
mov edx, dword [esp + 0xd8]
mov ebx, dword [esp + 0x98]
mov eax, dword [esp + 0x94]
mov dword [esp + 0xa0], ecx
lea esi, [ecx + ebx]
mov dword [esp + 0xd4], esi
mov esi, dword [esp + 0xe0]
add esi, ecx
xor ecx, ecx
mov dword [esp + 0xd0], esi
mov dword [esp + 0x9c], ecx
test eax, eax
jle 0x46b405
mov eax, dword [esp + 0xd0]
cmp eax, dword [esp + 0xd4]
mov eax, dword [esp + 0x90]
jae 0x46b4a3
mov dword [eax + ecx*4], edx
mov ecx, dword [esp + 0xd0]
mov al, byte [ecx]
mov edx, dword [esp + 0x9c]
cmp al, 0x80
jae 0x46b3a5
movzx ecx, al
mov eax, dword [esp + 0x8c]
mov dword [eax + edx*4], ecx
mov eax, 1
jmp 0x46b3b7
mov eax, dword [esp + 0x8c]
lea esi, [eax + edx*4]
call fcn.0044d560
movzx eax, al
mov edx, dword [esp + 0x8c]
movzx ecx, al
add dword [esp + 0xd0], ecx
mov ecx, dword [esp + 0x9c]
mov eax, dword [edx + ecx*4]
call fcn.00467180
mov edx, dword [esp + 0xd8]
add edx, eax
mov dword [esp + 0xdc], eax
mov dword [esp + 0xd8], edx
cmp edx, eax
jae 0x46b4b8
mov ecx, dword [esp + 0xd4]
inc ecx
mov dword [esp + 0xd0], ecx
lea edx, [esp + 0xa8]
push edx
call fcn.00463990
mov ecx, dword [esp + 0xd8]
mov eax, 1
mov word [esp + 0xc8], ax
mov eax, dword [esp + 0xd4]
add esp, 4
cmp eax, ecx
ja 0x46b5ef
mov edx, dword [esp + 0xd8]
mov esi, dword [esp + 0x68]
cmp edx, esi
ja 0x46b5ef
cmp eax, ecx
jne 0x46b457
cmp edx, esi
jne 0x46b5ef
mov ecx, dword [esp + 0x8c]
mov eax, dword [esp + 0x7c]
mov edx, dword [esp + 0x90]
cmp dword [edx + eax*4], 0
je 0x46b570
cmp dword [esp + 0x84], 0
je 0x46b4d2
mov eax, dword [esp + 0xa4]
call fcn.00463920
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x90]
mov ecx, dword [ecx + eax*4]
add ecx, dword [esp + 0x84]
jmp 0x46b54a
mov dword [eax + ecx*4], 0
mov edx, dword [esp + 0xd8]
mov ecx, dword [esp + 0x9c]
inc ecx
cmp ecx, dword [esp + 0x94]
mov dword [esp + 0x9c], ecx
jl 0x46b35f
jmp 0x46b405
mov eax, dword [ecx + eax*4]
call fcn.00467180
mov ebx, dword [esp + 0xa4]
mov dword [esp + 0x98], eax
lea eax, [esp + 0xa8]
call fcn.00463f20
mov eax, dword [esp + 0x80]
movzx ecx, byte [eax + 0x1f]
mov eax, dword [esp + 0x7c]
mov edx, dword [esp + 0x90]
mov ebx, dword [esp + 0x98]
push ecx
mov ecx, dword [edx + eax*4]
push ecx
mov ecx, dword [esp + 0x90]
lea eax, [esp + 0xb0]
call fcn.004643a0
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne case.0x469be4.17
mov ecx, dword [esp + 0xac]
mov eax, dword [esp + 0x7c]
mov dword [esp + 0xa0], ecx
mov edx, dword [esp + 0x8c]
mov esi, dword [esp + 0xa4]
mov eax, dword [edx + eax*4]
call fcn.00467250
mov ecx, dword [esp + 0xa4]
mov dl, byte [esp + 0x28]
mov byte [ecx + 0x1f], dl
jmp 0x46b58e
cmp byte [ebp + 1], 0xf8
jne 0x46b58e
mov eax, dword [ebp + 0x10]
mov ebx, dword [esp + 0xa4]
push 0x800
push eax
call fcn.00463e70
add esp, 8
cmp dword [esp + 0xcc], 0
je 0x46b5da
mov eax, dword [esp + 0xa4]
mov ecx, 0xe7ff
and word [eax + 0x1c], cx
mov eax, dword [esp + 0xa4]
mov edx, 0x200
or word [eax + 0x1c], dx
mov eax, dword [esp + 0xa4]
mov ecx, dword [esp + 0xac]
mov dword [eax + 4], ecx
mov edx, dword [esp + 0xcc]
mov eax, dword [esp + 0xa4]
mov dword [eax + 0x24], edx
mov eax, dword [esp + 0xa4]
call fcn.004636f0
mov dword [esp + 0x14], eax
jmp case.0x469be4.17
mov eax, 0xfe41
call fcn.004a4480
mov dword [esp + 0x14], eax
jmp case.0x469be4.17
mov ecx, dword [ebp + 0x10]
mov dword [esp + 0x68], ecx
mov ebp, dword [ebp + 4]
mov al, byte [ecx]
lea edx, [ebp + ebp*4]
lea edi, [edi + edx*8]
mov byte [esp + 0x6c], al
test al, al
je 0x46b659
lea ecx, [ecx]
inc ecx
mov dword [esp + 0x68], ecx
mov ecx, 0x4000
test word [edi + 0x1c], cx
je 0x46b63b
mov eax, edi
call fcn.00463750
mov al, byte [esp + 0x6c]
mov edx, dword [esp + 0x28]
push edx
call fcn.00469990
mov ecx, dword [esp + 0x6c]
mov al, byte [ecx]
add esp, 4
add edi, 0x28
mov byte [esp + 0x6c], al
test al, al
jne 0x46b620
inc ecx
mov dword [esp + 0x68], ecx
jmp case.0x469be4.17
xor eax, eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x88], eax
mov eax, dword [ebp + 4]
mov dword [esp + 0x9c], eax
mov ecx, dword [ebp + 0x10]
lea edx, [eax + eax*4]
lea ebx, [edi + edx*8]
mov dword [esp + 0xa0], ecx
movzx ecx, byte [esi + 0x65]
mov dword [esp + 0x94], ebx
mov eax, dword [ebp + 8]
mov dword [esp + 0x9c], eax
lea eax, [eax + eax*4]
lea eax, [ebx + eax*8 - 0x28]
mov dword [esp + 0xa4], ecx
mov dword [esp + 0x98], eax
mov ebp, dword [ebp + 0xc]
lea edx, [ebp + ebp*4]
lea ecx, [edi + edx*8]
mov edi, ebx
mov dword [esp + 0x24], ecx
mov dword [esp + 0x6c], edi
cmp ebx, eax
ja 0x46b7ba
cmp dword [esp + 0xa0], 0
je 0x46b719
mov edx, dword [esp + 0x28]
mov ecx, edi
sub ecx, ebx
push edx
mov eax, 0x66666667
imul ecx
mov ecx, dword [esp + 0xa4]
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov al, byte [eax + ecx]
call fcn.00469990
mov ebx, dword [esp + 0x98]
mov edi, dword [esp + 0x70]
add esp, 4
mov edx, 0x4000
test word [edi + 0x1c], dx
je 0x46b73c
cmp dword [edi + 0x18], 0
jle 0x46b73c
mov eax, edi
call fcn.00463750
mov ebx, dword [esp + 0x94]
mov edi, dword [esp + 0x6c]
mov eax, dword [esp + 0xa4]
push eax
mov ecx, edi
call fcn.00467090
mov ecx, eax
add esp, 4
mov dword [esp + 0x90], ecx
call fcn.00467180
mov esi, eax
cdq
add dword [esp + 0x70], eax
push 0
push ecx
adc dword [esp + 0x7c], edx
mov dword [esp + 0xb4], esi
call fcn.0044d5e0
add dword [esp + 0x80], eax
mov ecx, 0x4000
add esp, 8
test word [edi + 0x1c], cx
je 0x46b797
mov edx, dword [edi + 0x10]
add dword [esp + 0x88], edx
jmp 0x46b7a6
test esi, esi
je 0x46b7a6
mov dword [esp + 0x88], 0
add edi, 0x28
mov dword [esp + 0x6c], edi
cmp edi, dword [esp + 0x98]
jbe 0x46b6d8
mov esi, dword [esp + 0x78]
mov eax, esi
cdq
push edx
push eax
call fcn.0044d5e0
mov edi, eax
add esi, edi
mov eax, esi
cdq
push edx
push eax
mov dword [esp + 0x9c], edi
mov dword [esp + 0x88], esi
call fcn.0044d5e0
add esp, 0x10
cmp edi, eax
jge 0x46b7f0
inc esi
mov dword [esp + 0x78], esi
mov eax, dword [esp + 0x88]
cdq
mov edi, eax
mov eax, esi
mov ebx, edx
cdq
mov esi, eax
mov eax, dword [esp + 0x18]
sub esi, edi
mov ecx, edx
sbb ecx, ebx
add esi, dword [esp + 0x70]
adc ecx, dword [esp + 0x74]
mov dword [esp + 0x80], esi
mov dword [esp + 0x84], ecx
mov eax, dword [eax + 0x48]
cdq
cmp ecx, edx
jg 0x46a707
jl 0x46b837
cmp esi, eax
ja 0x46a707
mov edi, dword [esp + 0x24]
push 0
mov eax, esi
call fcn.004635e0
add esp, 4
test eax, eax
jne 0x46a000
mov eax, dword [esp + 0x78]
mov ecx, dword [edi + 4]
mov dword [esp + 0x68], ecx
cmp eax, 0x80
jae 0x46b86c
mov dl, al
mov byte [ecx], dl
mov eax, 1
jmp 0x46b871
call fcn.0044d3b0
mov ecx, dword [esp + 0x94]
movzx esi, al
mov eax, dword [esp + 0x98]
mov dword [esp + 0xa8], esi
mov dword [esp + 0x6c], ecx
cmp ecx, eax
ja 0x46b8fa
mov eax, dword [esp + 0xa4]
push eax
call fcn.00467090
add esp, 4
mov dword [esp + 0x90], eax
cmp eax, 0x80
jae 0x46b8bf
mov edx, dword [esp + 0x68]
mov cl, al
mov byte [esi + edx], cl
mov eax, 1
jmp 0x46b8ca
mov ecx, dword [esp + 0x68]
add ecx, esi
call fcn.0044d3b0
mov ecx, dword [esp + 0x6c]
mov esi, dword [esp + 0xa8]
movzx edx, al
mov eax, dword [esp + 0x98]
add ecx, 0x28
add esi, edx
mov dword [esp + 0xa8], esi
mov dword [esp + 0x6c], ecx
cmp ecx, eax
jbe 0x46b891
mov ecx, dword [esp + 0x94]
mov dword [esp + 0x6c], ecx
cmp ecx, eax
ja 0x46b946
mov eax, dword [esp + 0x80]
mov edx, dword [esp + 0x68]
sub eax, esi
push eax
mov eax, dword [esp + 0xa8]
lea ebx, [esi + edx]
call fcn.004671a0
mov ecx, dword [esp + 0x70]
mov esi, dword [esp + 0xac]
add ecx, 0x28
add esi, eax
add esp, 4
mov dword [esp + 0xa8], esi
mov dword [esp + 0x6c], ecx
cmp ecx, dword [esp + 0x98]
jbe 0x46b902
mov eax, dword [esp + 0x80]
mov ecx, 0x410
mov dword [edi + 0x18], eax
mov word [edi + 0x1c], cx
mov dword [edi + 0x20], 0
mov eax, dword [esp + 0x88]
test eax, eax
je 0x46b977
mov edx, 0x4410
mov dword [edi + 0x10], eax
mov word [edi + 0x1c], dx
mov byte [edi + 0x1f], 1
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
mov ecx, dword [esi + 0x44]
mov edx, dword [ecx + eax*4]
mov eax, dword [edx]
xor ecx, ecx
mov dword [esp + 0x70], eax
cmp eax, ecx
je 0x46b9b9
lea ecx, [esp + 0x68]
push ecx
call fcn.00460c60
mov edx, dword [esp + 0x6c]
mov dword [esp + 0x18], eax
mov dword [ebx + 0x10], edx
mov eax, dword [esp + 0x70]
add esp, 4
mov dword [ebx + 0x14], eax
jmp case.0x469be4.17
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x68], ecx
mov edx, ecx
mov dword [ebx + 0x10], edx
mov eax, dword [esp + 0x6c]
mov dword [ebx + 0x14], eax
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x68], eax
mov ebx, dword [ebp + 0x10]
mov dword [esp + 0x6c], ebx
test eax, eax
jne 0x46bad1
cmp dword [ecx + 0x90], eax
jle 0x46ba17
push str.cannot_open_savepoint___SQL_statements_in_progress
mov edi, dword [esp + 0x24]
add edi, 0x38
mov eax, ecx
call fcn.0044adc0
add esp, 4
mov dword [esp + 0x14], 5
jmp case.0x469be4.17
mov ecx, ebx
call fcn.0044c8f0
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x70], eax
mov edx, dword [ebx + 0x1e4]
add edx, dword [ebx + 0x1e0]
push edx
push 0
call fcn.00498af0
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne 0x46e9ff
mov ecx, dword [esp + 0x70]
add ecx, 0x19
mov esi, ebx
call fcn.0044ac10
mov dword [esp + 0x74], eax
test eax, eax
je case.0x469be4.17
lea ecx, [eax + 0x18]
mov dword [eax], ecx
mov edx, dword [esp + 0x70]
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x74]
inc edx
push edx
mov edx, dword [ecx]
push eax
push edx
call fcn.004f26c0
add esp, 0xc
cmp byte [esi + 0x1c], 0
je 0x46ba95
mov byte [esi + 0x1c], 0
mov byte [esi + 0x1e8], 1
jmp 0x46ba9b
inc dword [esi + 0x1e0]
mov eax, dword [esi + 0x1dc]
mov ecx, dword [esp + 0x74]
mov dword [ecx + 0x10], eax
mov edx, dword [esp + 0x74]
mov eax, dword [esi + 0x1f0]
mov dword [esi + 0x1dc], edx
mov ecx, dword [esp + 0x74]
mov dword [ecx + 8], eax
mov edx, dword [esi + 0x1f4]
mov eax, dword [esp + 0x74]
mov dword [eax + 0xc], edx
jmp case.0x469be4.17
xor ebp, ebp
mov dword [esp + 0x80], ebp
mov edi, dword [ecx + 0x1dc]
mov dword [esp + 0x78], edi
test edi, edi
je 0x46bb10
jmp 0x46baf0
mov ecx, dword [edi]
mov edx, ebx
call fcn.0044ca80
test eax, eax
je 0x46bb36
inc ebp
mov dword [esp + 0x80], ebp
mov edi, dword [edi + 0x10]
mov dword [esp + 0x78], edi
test edi, edi
jne 0x46baf0
mov edi, dword [esp + 0x20]
mov eax, dword [esp + 0x18]
push ebx
push str.no_such_savepoint:__s
add edi, 0x38
call fcn.0044adc0
add esp, 8
mov dword [esp + 0x14], 1
jmp case.0x469be4.17
mov ebx, dword [esp + 0x18]
xor eax, eax
cmp dword [ebx + 0x90], eax
jg 0x46bd12
mov ecx, dword [esp + 0x68]
cmp ecx, 2
jne 0x46bb5e
cmp dword [ebx + 0x8c], 1
jg 0x46bd19
cmp dword [edi + 0x10], eax
jne 0x46bbb9
cmp byte [ebx + 0x1e8], 0
je 0x46bbb9
mov dword [esp + 0x2c], 1
cmp ecx, 1
jne 0x46bbbd
push ecx
mov ecx, esi
call fcn.004668f0
mov edi, eax
add esp, 4
test edi, edi
jne 0x46a783
push esi
mov byte [ebx + 0x1c], 1
call fcn.00466950
add esp, 4
cmp eax, 5
je 0x46e940
mov byte [ebx + 0x1e8], 0
mov edx, dword [esi + 0x5c]
mov dword [esp + 0x14], edx
mov esi, ebx
jmp 0x46bc4d
mov dword [esp + 0x2c], eax
mov ecx, dword [ebx + 0x1e0]
sub ecx, ebp
dec ecx
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], eax
cmp dword [ebx + 4], eax
jle 0x46bc24
mov esi, ebx
jmp 0x46bbe7
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0x68]
push edx
mov edx, dword [esi + 8]
shl eax, 4
mov eax, dword [eax + edx + 4]
mov ebx, ecx
call fcn.0045c3e0
add esp, 4
mov dword [esp + 0x14], eax
test eax, eax
jne 0x46e9ff
mov eax, dword [esp + 0x84]
inc eax
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 4]
jl 0x46bbe0
mov edi, dword [esp + 0x78]
cmp dword [esp + 0x68], 2
mov esi, dword [esp + 0x18]
jne 0x46bc51
mov ebx, 0x200
test dword [esi + 0xc], ebx
je 0x46bc51
mov eax, esi
call fcn.004679e0
or eax, 0xffffffff
mov ecx, esi
call fcn.0047a1f0
or dword [esi + 0xc], ebx
mov edi, dword [esp + 0x78]
cmp dword [esi + 0x1dc], edi
je 0x46bc96
or ebx, 0xffffffff
lea esp, [esp]
mov eax, dword [esi + 0x1dc]
mov dword [esp + 0x7c], eax
mov eax, dword [eax + 0x10]
mov dword [esi + 0x1dc], eax
mov ecx, dword [esp + 0x7c]
push ecx
push esi
call fcn.0044a9d0
add dword [esi + 0x1e0], ebx
mov edi, dword [esp + 0x80]
add esp, 8
cmp dword [esi + 0x1dc], edi
jne 0x46bc60
cmp dword [esp + 0x68], 1
jne 0x46bccb
mov edx, dword [edi + 0x10]
mov dword [esi + 0x1dc], edx
mov eax, dword [esp + 0x78]
push eax
push esi
call fcn.0044a9d0
add esp, 8
cmp dword [esp + 0x2c], 0
jne case.0x469be4.17
mov ebx, dword [esp + 0x18]
dec dword [ebx + 0x1e0]
jmp 0x46bcec
cmp dword [esp + 0x2c], 0
mov ecx, dword [edi + 8]
mov dword [esi + 0x1f0], ecx
mov edx, dword [edi + 0xc]
mov dword [esi + 0x1f4], edx
jne case.0x469be4.17
mov ebx, dword [esp + 0x18]
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x68]
push eax
push ecx
call fcn.00498af0
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne 0x46e9ff
jmp case.0x469be4.17
cmp dword [esp + 0x68], 2
jne 0x46bd20
mov eax, str.rollback
jmp 0x46bd25
mov eax, str.release
mov edi, dword [esp + 0x20]
push eax
push str.cannot__s_savepoint___SQL_statements_in_progress
add edi, 0x38
mov eax, ebx
call fcn.0044adc0
add esp, 8
mov dword [esp + 0x14], 5
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x68], eax
mov ebp, dword [ebp + 8]
mov dword [esp + 0x6c], ebp
test eax, eax
je 0x46bd84
cmp byte [ecx + 0x1c], 0
jne 0x46bd84
mov edx, 1
mov dword [esp + 0x70], edx
test ebp, ebp
je 0x46bda3
cmp dword [ecx + 0x8c], edx
jle 0x46bd8c
push str.cannot_rollback_transaction___SQL_statements_in_progress
jmp 0x46b9f9
mov dword [esp + 0x70], 0
movzx edx, byte [ecx + 0x1c]
cmp eax, edx
jne 0x46e958
test eax, eax
jne 0x46bdb6
mov eax, str.cannot_start_a_transaction_within_a_transaction
jmp 0x46bdc4
cmp dword [ecx + 0x90], 0
jle 0x46bd8c
push str.cannot_commit_transaction___SQL_statements_in_progress
jmp 0x46b9f9
mov eax, str.cannot_rollback___no_transaction_is_active
test ebp, ebp
jne 0x46bdc4
mov eax, str.cannot_commit___no_transaction_is_active
mov edi, dword [esp + 0x20]
push eax
mov eax, dword [esp + 0x1c]
add edi, 0x38
call fcn.0044adc0
add esp, 4
mov dword [esp + 0x14], 1
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx + 8]
shl eax, 4
mov eax, dword [eax + edx + 4]
mov dword [esp + 0x68], eax
test eax, eax
je case.0x469be4.17
mov ecx, dword [ebp + 8]
push ecx
push eax
call fcn.0045b0b0
add esp, 8
mov dword [esp + 0x14], eax
cmp eax, 5
je 0x46e9d3
test eax, eax
jne 0x46e9ff
cmp dword [ebp + 8], eax
je case.0x469be4.17
mov esi, dword [esp + 0x20]
cmp byte [esi + 0x67], al
je case.0x469be4.17
mov ebx, dword [esp + 0x18]
cmp byte [ebx + 0x1c], al
je 0x46be50
cmp dword [ebx + 0x8c], 1
jle case.0x469be4.17
cmp dword [esi + 0x78], 0
jne 0x46be6d
inc dword [ebx + 0x1e4]
mov eax, dword [ebx + 0x1e4]
mov edx, dword [ebx + 0x1e0]
add edx, eax
mov dword [esi + 0x78], edx
mov eax, dword [esi + 0x78]
dec eax
push eax
push 0
call fcn.00498af0
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne 0x46be98
mov ecx, dword [esi + 0x78]
mov eax, dword [esp + 0x68]
push ecx
call fcn.0045c390
add esp, 4
mov dword [esp + 0x14], eax
mov edx, dword [ebx + 0x1f0]
mov dword [esi + 0x98], edx
mov eax, dword [ebx + 0x1f4]
mov dword [esi + 0x9c], eax
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
mov edx, dword [esp + 0x18]
mov dword [esp + 0x6c], eax
mov ebp, dword [ebp + 0xc]
lea ecx, [esp + 0x68]
mov dword [esp + 0x70], ebp
push ecx
mov ecx, dword [edx + 8]
shl eax, 4
mov eax, dword [eax + ecx + 4]
push ebp
call fcn.00460b70
mov eax, dword [esp + 0x70]
cdq
add esp, 8
mov dword [ebx + 0x10], eax
mov dword [ebx + 0x14], edx
jmp case.0x469be4.17
mov edx, dword [ebp + 4]
mov eax, dword [esp + 0x18]
shl edx, 4
add edx, dword [eax + 8]
mov dword [esp + 0x68], edx
mov eax, dword [ebp + 0xc]
lea ecx, [eax + eax*4]
lea esi, [edi + ecx*8]
call fcn.00463b50
mov edx, dword [esi + 0x10]
mov eax, dword [esp + 0x68]
mov ebx, dword [ebp + 8]
mov eax, dword [eax + 4]
push edx
call fcn.00460be0
mov dword [esp + 0x18], eax
mov eax, dword [ebp + 8]
add esp, 4
cmp eax, 1
jne 0x46bf49
mov ecx, dword [esp + 0x68]
mov eax, dword [esi + 0x10]
mov edx, dword [ecx + 0xc]
mov dword [edx], eax
mov eax, dword [esp + 0x18]
or dword [eax + 0xc], 0x200
jmp 0x46bf5b
cmp eax, 2
jne 0x46bf5b
mov ecx, dword [esp + 0x68]
mov edx, dword [ecx + 0xc]
mov al, byte [esi + 0x10]
mov byte [edx + 0x4c], al
cmp dword [ebp + 4], 1
jne case.0x469be4.17
mov eax, dword [esp + 0x18]
call fcn.004679e0
mov ecx, dword [esp + 0x20]
mov byte [ecx + 0x63], 0
jmp case.0x469be4.17
mov edx, dword [ebp + 4]
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 8]
shl edx, 4
mov eax, dword [edx + ecx + 4]
mov dword [esp + 0x70], eax
test eax, eax
je 0x46bfb9
lea edx, [esp + 0x68]
push edx
push 1
call fcn.00460b70
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x20]
mov edx, dword [ecx + 8]
add esp, 8
shl eax, 4
mov eax, dword [eax + edx + 0xc]
mov eax, dword [eax + 4]
jmp 0x46bfc3
mov dword [esp + 0x68], 0
xor eax, eax
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x6c], eax
cmp ecx, dword [ebp + 8]
jne 0x46bfd9
cmp eax, dword [ebp + 0xc]
je case.0x469be4.17
mov edx, dword [esi + 0x38]
mov edi, dword [esp + 0x18]
push edx
push edi
call fcn.0044a9d0
push edi
mov ebx, 0x53fad8
call fcn.0044ad40
mov dword [esi + 0x38], eax
mov ebp, dword [ebp + 4]
mov ecx, dword [edi + 8]
mov eax, ebp
shl eax, 4
mov edx, dword [eax + ecx + 0xc]
mov eax, dword [edx]
add esp, 0xc
cmp eax, dword [esp + 0x68]
je 0x46c018
mov eax, ebp
mov ecx, edi
call fcn.0047a1f0
mov byte [esi + 0x63], 1
mov dword [esp + 0x14], 0x11
jmp case.0x469be4.17
cmp byte [esi + 0x63], 0
je 0x46c03c
mov dword [esp + 0x14], 4
jmp case.0x469be4.17
mov ebx, dword [esp + 0x18]
xor ecx, ecx
mov dword [esp + 0x68], ecx
mov dword [esp + 0x6c], ecx
mov edx, dword [ebp + 8]
mov dword [esp + 0x70], edx
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x74], eax
shl eax, 4
add eax, dword [ebx + 8]
mov dword [esp + 0x84], eax
mov ebx, dword [eax + 4]
mov dword [esp + 0x7c], ebx
cmp byte [ebp], 0x27
jne 0x46c08a
mov dword [esp + 0x78], 1
mov eax, dword [eax + 0xc]
mov al, byte [eax + 0x4c]
cmp al, byte [esi + 0x65]
jae 0x46c092
mov byte [esi + 0x65], al
jmp 0x46c092
mov dword [esp + 0x78], 0
cmp byte [ebp + 3], 0
je 0x46c0bb
lea ecx, [edx + edx*4]
lea esi, [edi + ecx*8]
call fcn.00463b50
mov esi, dword [esi + 0x10]
cmp esi, 2
mov dword [esp + 0x70], esi
jl 0x46e9e7
mov ecx, dword [esp + 0x68]
mov esi, dword [esp + 0x20]
mov al, byte [ebp + 1]
cmp al, 0xfa
jne 0x46c0e2
mov eax, dword [ebp + 0x10]
mov edx, dword [esi]
mov dword [esp + 0x6c], eax
mov ecx, dword [edx + 8]
mov edx, dword [ecx + 0xc]
mov cl, byte [edx + 0x4d]
mov byte [eax + 4], cl
mov edx, dword [esp + 0x6c]
movzx ecx, word [edx + 6]
inc ecx
jmp 0x46c0e9
cmp al, 0xf2
jne 0x46c0ed
mov ecx, dword [ebp + 0x10]
mov dword [esp + 0x68], ecx
mov eax, dword [esp + 0x74]
push 1
push eax
push ecx
mov ecx, dword [ebp + 4]
push ecx
mov ebx, esi
call fcn.00469800
add esp, 0x10
mov dword [esp + 0x80], eax
test eax, eax
je 0x46a000
mov cl, 1
mov byte [eax + 0x1c], cl
mov edx, dword [esp + 0x80]
mov byte [edx + 0x20], cl
mov eax, dword [esp + 0x80]
mov ecx, dword [eax]
mov edx, dword [esp + 0x6c]
mov eax, dword [esp + 0x78]
push ecx
mov ecx, dword [esp + 0x74]
push edx
push eax
mov eax, dword [esp + 0x88]
push ecx
call fcn.0045c500
mov edx, dword [esp + 0x90]
mov ecx, dword [esp + 0x7c]
add esp, 0x10
mov dword [esp + 0x14], eax
mov dword [edx + 8], ecx
cmp eax, 0x10
jne 0x46c175
mov edx, dword [esp + 0x80]
mov dword [edx], 0
mov dword [esp + 0x14], 0
cmp byte [ebp + 1], 0xfa
mov ecx, dword [esp + 0x80]
setne al
mov byte [ecx + 0x1e], al
mov eax, dword [esp + 0x80]
cmp byte [eax + 0x1e], 0
sete dl
mov byte [eax + 0x1f], dl
jmp case.0x469be4.17
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 4]
push 1
push 0xffffffffffffffff
push eax
push ecx
mov ebx, esi
call fcn.00469800
add esp, 0x10
mov dword [esp + 0x68], eax
test eax, eax
je 0x46a000
mov ebx, 1
mov byte [eax + 0x1c], bl
movzx edx, byte [ebp + 3]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x68]
push 0x41e
or edx, 9
push edx
push eax
mov eax, dword [eax]
add ecx, 4
push eax
xor edx, edx
call fcn.0045a140
add esp, 0x10
mov dword [esp + 0x14], eax
test eax, eax
jne 0x46c2a6
mov ecx, dword [esp + 0x68]
mov edx, dword [ecx + 4]
push ebx
push edx
call fcn.0045b0b0
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne 0x46c2a6
cmp dword [ebp + 0x10], eax
je 0x46c285
mov ecx, dword [esp + 0x68]
lea eax, [esp + 0x50]
push 2
push eax
mov eax, dword [ecx + 4]
call fcn.00460510
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne 0x46c27b
mov eax, dword [esp + 0x68]
mov edx, dword [eax]
mov ecx, dword [ebp + 0x10]
mov eax, dword [eax + 4]
push edx
mov edx, dword [esp + 0x54]
push ecx
push ebx
push edx
call fcn.0045c500
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x24], eax
mov eax, dword [ebp + 0x10]
mov dword [ecx + 8], eax
mov edx, dword [esi]
mov eax, dword [edx + 8]
mov ecx, dword [eax + 0xc]
mov edx, dword [esp + 0x78]
mov eax, dword [edx + 8]
mov cl, byte [ecx + 0x4d]
add esp, 0x10
mov byte [eax + 4], cl
mov edx, dword [esp + 0x68]
mov byte [edx + 0x1e], 0
jmp 0x46c2a6
mov eax, dword [esp + 0x68]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
push ecx
push 0
push ebx
push ebx
call fcn.0045c500
mov edx, dword [esp + 0x78]
add esp, 0x10
mov dword [esp + 0x14], eax
mov byte [edx + 0x1e], bl
cmp byte [ebp + 3], 0x10
mov ecx, dword [esp + 0x68]
setne al
mov byte [ecx + 0x20], al
mov eax, dword [esp + 0x68]
cmp byte [eax + 0x1e], 0
sete dl
mov byte [eax + 0x1f], dl
jmp case.0x469be4.17
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 4]
push 0
push 0xffffffffffffffff
push eax
push ecx
mov ebx, esi
call fcn.00469800
add esp, 0x10
mov dword [esp + 0x68], eax
test eax, eax
je 0x46a000
mov cl, 1
mov byte [eax + 0x1c], cl
mov edx, dword [ebp + 8]
mov eax, dword [esp + 0x68]
mov dword [eax + 0x10], edx
mov edx, dword [esp + 0x68]
mov byte [edx + 0x1e], cl
mov eax, dword [esp + 0x68]
mov byte [eax + 0x1f], 0
jmp case.0x469be4.17
mov ecx, dword [ebp + 4]
mov edx, dword [esi + 0x44]
mov eax, dword [edx + ecx*4]
mov ebx, esi
call fcn.00465e60
mov eax, dword [ebp + 4]
mov ecx, dword [esi + 0x44]
mov dword [ecx + eax*4], 0
jmp case.0x469be4.17
mov edx, dword [ebp + 4]
mov eax, dword [esi + 0x44]
mov eax, dword [eax + edx*4]
mov dword [esp + 0x70], eax
cmp dword [eax], 0
je 0x469bfd
movzx ecx, byte [ebp]
mov dword [esp + 0x6c], ecx
mov byte [eax + 0x1c], 0
mov ecx, dword [esp + 0x70]
cmp byte [ecx + 0x1e], 0
je 0x46c50a
mov eax, dword [ebp + 0xc]
lea edx, [eax + eax*4]
lea esi, [edi + edx*8]
call fcn.00469910
mov ecx, esi
call fcn.00463a30
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x9c], edx
mov byte [eax + 0x19], 0
movzx eax, word [esi + 0x1c]
test al, 4
jne 0x46c4a3
test al, 8
jne 0x46c3a6
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x1c], ebp
jmp case.0x469be4.17
xor ebx, ebx
cmp dword [esp + 0x98], ebx
jne 0x46c44f
mov eax, SysReAllocString
cmp dword [esp + 0x9c], eax
jne 0x46c44f
mov dword [esp + 0x64], eax
mov dword [esp + 0x60], ebx
fild qword [esp + 0x60]
fcomp qword [esi + 8]
fnstsw ax
test ah, 0x41
je 0x46c3e9
fldz
fcomp qword [esi + 8]
fnstsw ax
test ah, 5
jp 0x46c44f
fldz
mov dword [esp + 0x68], 1
fcomp qword [esi + 8]
fnstsw ax
test ah, 0x41
jne 0x46c415
cmp dword [esp + 0x6c], 0x2e
jl 0x46c442
mov ecx, dword [esp + 0x70]
mov esi, dword [ecx]
lea edi, [esp + 0x68]
call fcn.0045d120
jmp 0x46c42b
cmp dword [esp + 0x6c], 0x2d
jg 0x46c442
mov edx, dword [esp + 0x70]
mov esi, dword [edx]
lea edi, [esp + 0x68]
call fcn.0045d150
mov dword [esp + 0x14], eax
cmp eax, ebx
jne 0x46e9ff
cmp dword [esp + 0x68], 0
je case.0x469be4.17
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x1c], ebp
jmp case.0x469be4.17
mov eax, dword [esp + 0x6c]
cmp eax, 0x2c
je 0x46c483
cmp eax, 0x2e
je 0x46c483
fild qword [esp + 0x98]
fcomp qword [esi + 8]
fnstsw ax
test ah, 0x41
jne 0x46c4a3
mov eax, 0xffffffff
add dword [esp + 0x98], eax
adc dword [esp + 0x9c], eax
jmp 0x46c4a3
fild qword [esp + 0x98]
fcomp qword [esi + 8]
fnstsw ax
test ah, 5
jp 0x46c4a3
add dword [esp + 0x98], 1
adc dword [esp + 0x9c], ebx
mov ecx, dword [esp + 0x9c]
mov edx, dword [esp + 0x98]
lea eax, [esp + 0x68]
push eax
mov eax, dword [esp + 0x74]
push 0
push ecx
mov ecx, dword [eax]
push edx
push 0
push ecx
call fcn.0045d190
add esp, 0x18
mov dword [esp + 0x14], eax
test eax, eax
jne 0x46e9ff
cmp dword [esp + 0x68], eax
jne 0x46c587
mov edx, dword [esp + 0x70]
mov byte [edx + 0x19], 1
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x70]
mov dword [ecx + 0x40], eax
mov edx, dword [esp + 0x9c]
mov eax, dword [esp + 0x70]
mov dword [eax + 0x44], edx
jmp 0x46c587
mov edx, dword [ebp + 0x10]
mov dword [esp + 0x90], edx
mov eax, dword [ecx + 8]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x6c]
and eax, 1
add eax, eax
add eax, eax
add eax, eax
mov word [esp + 0x7c], dx
mov word [esp + 0x7e], ax
mov eax, dword [ebp + 0xc]
lea edx, [eax + eax*4]
lea eax, [edi + edx*8]
mov edx, 0x4000
mov dword [esp + 0x88], eax
test word [eax + 0x1c], dx
je 0x46c556
call fcn.00463750
mov ecx, dword [esp + 0x70]
lea eax, [esp + 0x68]
push eax
mov eax, dword [ecx]
push 0
push 0
push 0
lea edx, [esp + 0x88]
push edx
push eax
call fcn.0045d190
add esp, 0x18
mov dword [esp + 0x14], eax
test eax, eax
jne 0x46e9ff
mov ecx, dword [esp + 0x70]
mov byte [ecx + 0x19], al
mov edx, dword [esp + 0x70]
mov byte [edx + 0x1d], 0
mov eax, dword [esp + 0x70]
xor esi, esi
mov dword [eax + 0x4c], esi
mov ecx, dword [esp + 0x6c]
cmp ecx, 0x2e
mov eax, dword [esp + 0x68]
jl 0x46c5e6
cmp eax, esi
jl 0x46c5b9
jne 0x46c5b0
cmp ecx, 0x2f
je 0x46c5b9
mov dword [esp + 0x68], esi
jmp case.0x469be4.17
mov edx, dword [esp + 0x70]
mov eax, dword [edx]
lea ecx, [esp + 0x68]
push ecx
push eax
call fcn.0045d570
add esp, 8
mov dword [esp + 0x14], eax
cmp eax, esi
jne 0x46e9ff
mov ecx, dword [esp + 0x70]
mov byte [ecx + 0x19], 0
jmp 0x46c437
cmp eax, esi
jg 0x46c609
jne 0x46c5f1
cmp ecx, 0x2c
je 0x46c609
mov edx, dword [esp + 0x70]
mov eax, dword [edx]
xor ecx, ecx
cmp byte [eax + 0x53], 1
setne cl
mov dword [esp + 0x68], ecx
jmp 0x46c437
mov eax, dword [esp + 0x70]
mov ecx, dword [eax]
lea edx, [esp + 0x68]
push edx
push ecx
call fcn.0045d6b0
add esp, 8
mov dword [esp + 0x14], eax
cmp eax, esi
jne 0x46e9ff
mov edx, dword [esp + 0x70]
mov byte [edx + 0x19], 0
jmp 0x46c437
mov eax, dword [ebp + 4]
mov ecx, dword [esi + 0x44]
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x68], eax
cmp dword [eax], 0
je case.0x469be4.17
mov byte [eax + 0x1c], 0
mov ebp, dword [ebp + 8]
lea edx, [ebp + ebp*4]
lea ecx, [edi + edx*8]
call fcn.00463a30
mov ecx, dword [esp + 0x68]
mov dword [ecx + 0x38], eax
mov eax, dword [esp + 0x68]
mov dword [eax + 0x3c], edx
mov ecx, dword [esp + 0x68]
mov byte [ecx + 0x19], 0
mov edx, dword [esp + 0x68]
mov byte [edx + 0x1d], 1
jmp case.0x469be4.17
mov ecx, dword [esi + 0x44]
xor edx, edx
mov dword [esp + 0x68], edx
mov eax, dword [ebp + 4]
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x6c], eax
mov ecx, dword [ebp + 0xc]
lea ecx, [ecx + ecx*4]
lea edi, [edi + ecx*8]
cmp dword [eax], edx
je 0x46c763
cmp dword [ebp + 0x10], edx
jle 0x46c6d6
mov edx, dword [eax + 8]
mov dword [esp + 0x78], edx
mov cx, word [ebp + 0x10]
mov word [esp + 0x7c], cx
mov edx, 0x10
lea ecx, [esp + 0x78]
mov dword [esp + 0x88], edi
mov word [esp + 0x7e], dx
mov dword [esp + 0x74], ecx
jmp 0x46c70b
mov edx, dword [edi + 4]
mov ecx, dword [edi + 0x18]
push edx
mov edx, dword [eax + 8]
push ecx
push edx
mov edx, 0x97
lea eax, [esp + 0x9c]
call fcn.00467470
add esp, 0xc
mov dword [esp + 0x74], eax
test eax, eax
je 0x46a000
or word [eax + 6], 0x10
mov eax, dword [esp + 0x6c]
mov edx, dword [esp + 0x74]
mov eax, dword [eax]
lea ecx, [esp + 0x70]
push ecx
push 0
push 0
push 0
push edx
push eax
call fcn.0045d190
add esp, 0x18
cmp dword [ebp + 0x10], 0
mov esi, eax
mov dword [esp + 0x14], esi
jne 0x46c73b
mov eax, dword [esp + 0x74]
call fcn.004675b0
test esi, esi
jne case.0x469be4.17
mov edx, dword [esp + 0x6c]
xor ecx, ecx
cmp dword [esp + 0x70], ecx
sete cl
mov dword [esp + 0x68], ecx
mov byte [edx + 0x1d], 0
mov eax, dword [esp + 0x6c]
mov dword [eax + 0x4c], esi
mov edx, dword [esp + 0x68]
cmp byte [ebp], 0x32
jne 0x46c770
test edx, edx
jmp 0x46c43c
test edx, edx
jne case.0x469be4.17
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x1c], ebp
jmp case.0x469be4.17
mov eax, dword [ebp + 0xc]
lea ecx, [eax + eax*4]
mov eax, dword [ebp + 0x10]
lea edx, [eax + eax*4]
lea eax, [edi + edx*8]
mov edx, dword [esi + 0x44]
mov dword [esp + 0x78], eax
lea ebx, [edi + ecx*8]
mov ecx, dword [ebp + 4]
mov eax, dword [edx + ecx*4]
mov dword [esp + 0x6c], eax
xor ecx, ecx
mov dword [eax + 0x48], ecx
mov eax, dword [esp + 0x6c]
mov dword [eax + 0x4c], ecx
mov edx, dword [esp + 0x6c]
mov ecx, dword [edx]
mov edi, dword [esp + 0x78]
mov dword [esp + 0x70], ecx
mov eax, dword [edx + 8]
mov cx, word [eax + 6]
xor eax, eax
xor esi, esi
mov word [esp + 0x74], cx
mov word [esp + 0x68], ax
cmp si, cx
jae 0x46c7fd
lea esp, [esp]
movzx esi, ax
lea esi, [esi + esi*4]
test byte [edi + esi*8 + 0x1c], 1
jne 0x46c8bc
inc ax
mov word [esp + 0x68], ax
cmp ax, cx
jb 0x46c7e0
cmp dword [esp + 0x70], 0
je case.0x469be4.17
mov ecx, dword [edx + 8]
mov edx, dword [esp + 0x74]
inc edx
mov eax, 0x20
mov esi, ebx
mov dword [esp + 0x80], ecx
mov word [esp + 0x84], dx
mov word [esp + 0x86], ax
mov dword [esp + 0x90], edi
call fcn.00463b50
mov eax, dword [esp + 0x6c]
mov ecx, dword [ebx + 0x10]
add eax, 0x48
push eax
push 0
mov dword [esp + 0xa0], ecx
mov edx, dword [ebx + 0x14]
push 0
push 0
lea ecx, [esp + 0x90]
mov dword [esp + 0xac], edx
mov edx, dword [esp + 0x80]
push ecx
push edx
call fcn.0045d190
add esp, 0x18
test byte [esp + 0x86], 0x20
mov dword [esp + 0x14], eax
jne 0x469bfd
mov eax, dword [esp + 0x88]
cmp eax, dword [esp + 0x98]
jne 0x46c8aa
mov ecx, dword [esp + 0x8c]
cmp ecx, dword [esp + 0x9c]
je 0x469bfd
mov dword [ebx + 0x10], eax
mov edx, dword [esp + 0x8c]
mov dword [ebx + 0x14], edx
jmp case.0x469be4.17
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x70], 0
jmp case.0x469be4.17
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 4]
mov edx, dword [esi + 0x44]
mov ecx, dword [edx + ecx*4]
lea eax, [eax + eax*4]
lea edi, [edi + eax*8]
mov dword [esp + 0x68], ecx
mov eax, dword [ecx]
mov dword [esp + 0x6c], eax
test eax, eax
je 0x46c983
xor esi, esi
mov dword [esp + 0x70], esi
mov ecx, dword [edi + 0x10]
lea ebx, [esp + 0x70]
push ebx
push esi
mov dword [esp + 0x80], ecx
mov edx, dword [edi + 0x14]
push edx
push ecx
push esi
push eax
mov dword [esp + 0x94], edx
call fcn.0045d190
mov ecx, dword [esp + 0x80]
mov dword [esp + 0x2c], eax
mov eax, dword [edi + 0x10]
mov dword [ecx + 0x40], eax
mov edx, dword [edi + 0x14]
mov eax, dword [esp + 0x80]
mov dword [eax + 0x44], edx
mov edx, dword [esp + 0x80]
add esp, 0x18
cmp dword [esp + 0x70], esi
sete cl
mov byte [edx + 0x19], cl
mov eax, dword [esp + 0x68]
mov byte [eax + 0x1c], 0
mov ecx, dword [esp + 0x68]
mov dword [ecx + 0x4c], esi
mov edx, dword [esp + 0x68]
mov byte [edx + 0x1d], 0
mov eax, dword [esp + 0x70]
cmp eax, esi
je 0x46c977
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x1c], ebp
mov ecx, dword [esp + 0x68]
mov dword [ecx + 0x48], eax
jmp case.0x469be4.17
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x1c], ebp
mov dword [ecx + 0x48], 0
jmp case.0x469be4.17
mov edx, dword [ebp + 4]
mov eax, dword [esi + 0x44]
mov eax, dword [eax + edx*4]
mov ecx, dword [eax + 0x30]
mov dword [ebx + 0x10], ecx
mov edx, dword [eax + 0x34]
mov dword [ebx + 0x14], edx
mov eax, dword [ebp + 4]
mov ecx, dword [esi + 0x44]
mov eax, dword [ecx + eax*4]
add dword [eax + 0x30], 1
adc dword [eax + 0x34], 0
jmp case.0x469be4.17
mov ecx, dword [esi + 0x44]
xor eax, eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], eax
mov dword [esp + 0x74], eax
mov edx, dword [ebp + 4]
mov edx, dword [ecx + edx*4]
mov dword [esp + 0x70], edx
mov ecx, dword [edx]
cmp ecx, eax
je 0x46cc59
cmp byte [edx + 0x1b], al
jne 0x46cb67
mov eax, dword [ecx + 0x18]
mov dword [esp + 0x68], eax
mov ecx, dword [ecx + 0x1c]
mov ebx, eax
or ebx, ecx
mov dword [esp + 0x6c], ecx
jne 0x46ca7c
mov esi, dword [edx]
lea edi, [esp + 0x74]
call fcn.0045d150
mov dword [esp + 0x14], eax
test eax, eax
jne 0x46e9ff
cmp dword [esp + 0x74], eax
je 0x46ca2c
lea eax, [ebx + 1]
xor ecx, ecx
jmp 0x46ca6c
mov edx, dword [esp + 0x70]
mov eax, dword [edx]
lea edi, [esp + 0x68]
call fcn.0045c6c0
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x68]
cmp eax, 0xffffffff
jne 0x46ca66
cmp ecx, 0x7fffffff
jne 0x46ca66
mov eax, dword [esp + 0x70]
mov byte [eax + 0x1b], 1
mov ecx, dword [esp + 0x6c]
mov eax, dword [esp + 0x68]
jmp 0x46ca74
add eax, 1
adc ecx, 0
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x68], eax
mov edi, dword [esp + 0x30]
mov esi, dword [esp + 0x20]
mov edx, dword [ebp + 0xc]
test edx, edx
je 0x46cb2e
mov esi, dword [esi + 0xa8]
test esi, esi
je 0x46cac0
mov ecx, esi
mov dword [esp + 0x80], ecx
mov eax, dword [ecx + 0x3c]
test eax, eax
je 0x46cab1
mov ecx, eax
mov dword [esp + 0x80], ecx
mov eax, dword [ecx + 0x3c]
test eax, eax
jne 0x46caa1
mov ebp, dword [ebp + 0xc]
mov eax, dword [ecx + 0x10]
lea edx, [ebp + ebp*4]
lea esi, [eax + edx*8]
jmp 0x46cac6
lea ecx, [edx + edx*4]
lea esi, [edi + ecx*8]
mov dword [esp + 0x7c], esi
call fcn.00463b50
mov edx, dword [esp + 0x7c]
mov eax, dword [edx + 0x10]
mov ecx, dword [edx + 0x14]
add edx, 0x10
cmp eax, 0xffffffff
jne 0x46caed
cmp ecx, 0x7fffffff
je 0x46e9f7
mov esi, dword [esp + 0x70]
cmp byte [esi + 0x1b], 0
jne 0x46e9f7
mov esi, dword [esp + 0x6c]
add eax, 1
adc ecx, 0
cmp esi, ecx
jg 0x46cb19
jl 0x46cb11
cmp dword [esp + 0x68], eax
jae 0x46cb19
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], ecx
mov eax, dword [esp + 0x68]
mov dword [edx], eax
mov ecx, dword [esp + 0x6c]
mov dword [edx + 4], ecx
mov ecx, dword [esp + 0x6c]
mov eax, dword [esp + 0x68]
cmp ecx, 0x7fffffff
jg 0x46cb45
jl 0x46cb3d
cmp eax, 0xffffffff
jae 0x46cb45
add eax, 1
adc ecx, 0
jmp 0x46cb49
xor eax, eax
xor ecx, ecx
mov edx, dword [esp + 0x70]
mov esi, dword [edx]
push ecx
push eax
call fcn.0045c550
mov edx, dword [esp + 0x78]
add esp, 8
cmp byte [edx + 0x1b], 0
je 0x46cc3e
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x38]
and eax, 0x3fffffff
add ecx, 1
lea esi, [esp + 0x74]
push esi
adc eax, 0
push 0
push eax
push ecx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], eax
mov dword [esp + 0x88], 0
mov eax, dword [edx]
push 0
push eax
call fcn.0045d190
add esp, 0x18
mov dword [esp + 0x14], eax
test eax, eax
jne 0x46cc3a
mov ecx, dword [esp + 0x74]
test ecx, ecx
jne 0x46cc2b
mov eax, dword [esp + 0x78]
inc eax
cmp eax, 0x64
mov dword [esp + 0x78], eax
jge 0x46cc2b
lea ecx, [esp + 0x68]
push ecx
push 8
call sym.ShuamePacket.exe_sqlite3_randomness
mov eax, dword [esp + 0x70]
add esp, 8
cmp dword [esp + 0x78], 5
jge 0x46cbec
and eax, 0xffffff
xor ecx, ecx
jmp 0x46cbf6
mov ecx, dword [esp + 0x6c]
and ecx, 0x3fffffff
add eax, 1
lea edx, [esp + 0x74]
push edx
adc ecx, 0
push 0
push ecx
push eax
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x7c], ecx
mov ecx, dword [eax]
push 0
push ecx
call fcn.0045d190
add esp, 0x18
mov dword [esp + 0x14], eax
test eax, eax
je 0x46cbaf
jmp 0x46cc3a
cmp dword [esp + 0x14], 0
jne 0x46cc3a
test ecx, ecx
je 0x46e9f7
mov edx, dword [esp + 0x70]
mov ebx, dword [esp + 0x24]
mov byte [edx + 0x19], 0
mov edx, dword [esp + 0x70]
mov byte [edx + 0x1d], 0
mov eax, dword [esp + 0x70]
mov dword [eax + 0x4c], 0
mov ecx, dword [esp + 0x68]
mov dword [ebx + 0x10], ecx
mov edx, dword [esp + 0x6c]
mov dword [ebx + 0x14], edx
jmp case.0x469be4.17
mov eax, dword [ebp + 8]
lea eax, [eax + eax*4]
lea ecx, [edi + eax*8]
mov eax, dword [esi + 0x44]
mov dword [esp + 0x68], ecx
mov edx, dword [ebp + 4]
mov edx, dword [eax + edx*4]
mov dword [esp + 0x78], edx
cmp byte [ebp], 0x37
mov eax, dword [ebp + 0xc]
jne 0x46cca5
lea eax, [eax + eax*4]
lea edi, [edi + eax*8]
mov dword [esp + 0x6c], edi
mov eax, dword [edi + 0x10]
mov dword [esp + 0x70], eax
mov edx, dword [edi + 0x14]
jmp 0x46ccaa
cdq
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], edx
test byte [ebp + 3], 1
je 0x46ccb7
inc dword [esi + 0x6c]
test byte [ebp + 3], 2
je 0x46ccd7
mov ecx, dword [esp + 0x18]
mov dword [ecx + 0x30], eax
mov dword [esp + 0x3c], edx
mov edx, dword [esp + 0x74]
mov dword [ecx + 0x34], edx
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x38], eax
xor eax, eax
test byte [ecx + 0x1c], 1
je 0x46cced
mov dword [ecx + 4], eax
mov ecx, dword [esp + 0x68]
mov dword [ecx + 0x18], eax
mov ecx, dword [esp + 0x68]
test byte [ebp + 3], 0x10
je 0x46cd03
mov edx, dword [esp + 0x78]
mov edx, dword [edx + 0x48]
mov dword [esp + 0x80], edx
jmp 0x46cd0a
mov dword [esp + 0x80], eax
mov edx, 0x4000
test word [ecx + 0x1c], dx
je 0x46cd18
mov eax, dword [ecx + 0x10]
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x7c], eax
mov esi, dword [ecx]
push 0
push 0
call fcn.0045c550
movzx edx, byte [ebp + 3]
mov eax, dword [esp + 0x84]
and edx, 8
push edx
push eax
mov eax, dword [esp + 0x78]
mov ecx, dword [eax + 0x18]
mov edx, dword [eax + 4]
mov eax, dword [esp + 0x84]
push ecx
mov ecx, dword [esp + 0x84]
push edx
mov edx, dword [esp + 0x90]
push eax
mov eax, dword [edx]
push ecx
push 0
push eax
mov eax, dword [esp + 0xa8]
call fcn.0045fdc0
mov ecx, dword [esp + 0xa0]
mov byte [ecx + 0x19], 0
mov edx, dword [esp + 0xa0]
mov byte [edx + 0x1d], 0
mov ecx, dword [esp + 0xa0]
add esp, 0x28
mov dword [esp + 0x14], eax
mov dword [ecx + 0x4c], 0
test eax, eax
jne case.0x469be4.17
mov ecx, dword [esp + 0x18]
cmp dword [ecx + 0xbc], eax
je case.0x469be4.17
cmp dword [ebp + 0x10], eax
je case.0x469be4.17
mov edx, dword [esp + 0x78]
mov eax, dword [edx + 0xc]
mov edx, dword [ecx + 8]
mov edi, dword [esp + 0x74]
shl eax, 4
mov edx, dword [eax + edx]
mov dword [esp + 0x84], edx
mov esi, dword [ebp + 0x10]
mov dword [esp + 0x88], esi
mov al, byte [ebp + 3]
and al, 4
movzx eax, al
push edi
mov edi, dword [esp + 0x74]
neg eax
sbb eax, eax
push edi
and eax, 5
add eax, 0x12
push esi
push edx
mov dword [esp + 0x9c], eax
mov edx, dword [ecx + 0xb8]
push eax
mov eax, dword [ecx + 0xbc]
push edx
call eax
add esp, 0x18
jmp case.0x469be4.17
mov edx, dword [esi + 0x44]
xor eax, eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], eax
mov ecx, dword [ebp + 4]
mov edi, dword [edx + ecx*4]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x70], edi
cmp dword [ecx + 0xbc], eax
je 0x46ce4f
cmp dword [ebp + 0x10], eax
je 0x46ce4f
mov edx, dword [edi + 0x40]
mov dword [esp + 0x68], edx
mov eax, dword [edi + 0x44]
mov dword [esp + 0x6c], eax
call fcn.00466ff0
mov dword [esp + 0x14], eax
test eax, eax
jne 0x46e9ff
mov ecx, dword [esp + 0x70]
mov esi, dword [ecx]
push eax
push eax
call fcn.0045c550
mov edx, dword [esp + 0x78]
mov esi, dword [edx]
add esp, 8
call fcn.0045ffe0
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x14], eax
mov dword [ecx + 0x4c], 0
test eax, eax
jne 0x46cecd
mov edx, dword [esp + 0x18]
mov ecx, dword [edx + 0xbc]
test ecx, ecx
je 0x46cecd
mov eax, dword [ebp + 0x10]
test eax, eax
je 0x46cecd
mov esi, dword [esp + 0x6c]
push esi
mov esi, dword [esp + 0x6c]
push esi
mov esi, dword [edx + 8]
mov edx, dword [edx + 0xb8]
push eax
mov eax, dword [esp + 0x7c]
mov eax, dword [eax + 0xc]
shl eax, 4
mov eax, dword [eax + esi]
push eax
push 9
push edx
call ecx
add esp, 0x18
test byte [ebp + 8], 1
je case.0x469be4.17
mov eax, dword [esp + 0x20]
inc dword [eax + 0x6c]
jmp case.0x469be4.17
mov eax, dword [esi + 0x6c]
mov ecx, dword [esp + 0x18]
add dword [ecx + 0x40], eax
mov dword [ecx + 0x3c], eax
mov dword [esi + 0x6c], 0
jmp case.0x469be4.17
mov eax, dword [ebp + 8]
mov ecx, dword [esp + 0x30]
lea eax, [eax + eax*4]
lea edx, [ecx + eax*8]
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x24], edx
mov edx, dword [ecx + 0x44]
mov edi, dword [edx + eax*4]
mov dword [esp + 0x68], edi
mov eax, dword [edi]
mov dword [esp + 0x6c], eax
call fcn.00466ff0
mov dword [esp + 0x14], eax
test eax, eax
jne 0x46e9ff
mov ecx, dword [esp + 0x68]
cmp byte [ecx + 0x1f], al
je 0x46cf75
mov eax, dword [esp + 0x6c]
lea edi, [esp + 0x78]
call fcn.0045c6c0
mov edx, dword [esp + 0x18]
mov eax, dword [edx + 0x48]
mov ecx, dword [esp + 0x7c]
cdq
cmp ecx, edx
jg 0x46a707
mov ecx, dword [esp + 0x78]
jl 0x46cf6d
cmp ecx, eax
ja 0x46a707
mov eax, ecx
mov dword [esp + 0x70], eax
jmp 0x46cf94
mov esi, dword [esp + 0x6c]
mov edi, esi
call fcn.0045c670
mov eax, dword [edi + 0x2c]
mov edx, dword [esp + 0x18]
mov dword [esp + 0x70], eax
cmp eax, dword [edx + 0x48]
ja 0x46a707
mov edi, dword [esp + 0x24]
push 0
call fcn.004635e0
add esp, 4
test eax, eax
jne 0x46a000
mov eax, dword [esp + 0x70]
mov esi, edi
mov cx, word [esi + 0x1c]
mov edx, 0xbf10
and cx, dx
or cx, 0x10
mov dword [esi + 0x18], eax
mov word [esi + 0x1c], cx
mov eax, dword [esp + 0x68]
cmp byte [eax + 0x1f], 0
je 0x46cff4
mov eax, dword [esi + 4]
mov ecx, dword [esp + 0x70]
push 0
push eax
mov eax, dword [esp + 0x74]
push ecx
push 0
call fcn.0045c9d0
mov dword [esp + 0x24], eax
mov byte [esi + 0x1f], 1
jmp 0x46e855
mov edx, dword [esi + 4]
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x6c]
push edx
push eax
push 0
push ecx
call fcn.0045cce0
mov dword [esp + 0x24], eax
mov byte [esi + 0x1f], 1
jmp 0x46e855
mov edx, dword [ebp + 4]
mov eax, dword [esi + 0x44]
mov edi, dword [eax + edx*4]
mov dword [esp + 0x68], edi
cmp byte [edi + 0x1c], 0
je 0x46d037
mov ecx, 1
mov word [ebx + 0x1c], cx
jmp case.0x469be4.17
cmp byte [edi + 0x1d], 0
je 0x46d050
mov edx, dword [edi + 0x38]
mov dword [esp + 0x70], edx
mov eax, dword [edi + 0x3c]
mov dword [esp + 0x74], eax
jmp 0x46d0c4
cmp dword [edi + 0x24], 0
je 0x46d08a
mov ecx, dword [edi + 0x24]
mov eax, dword [ecx]
mov dword [esp + 0x78], eax
mov eax, dword [eax]
mov dword [esp + 0x7c], eax
mov ecx, dword [edi + 0x24]
lea edx, [esp + 0x70]
push edx
mov edx, dword [eax + 0x30]
push ecx
call edx
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x80]
push eax
push esi
call fcn.00469a30
add esp, 0x10
jmp 0x46d0c4
call fcn.00466ff0
mov dword [esp + 0x14], eax
test eax, eax
jne 0x46e9ff
mov eax, dword [esp + 0x68]
cmp byte [eax + 0x19], 0
je 0x46d0b5
mov ecx, dword [eax + 0x40]
mov dword [esp + 0x70], ecx
mov edx, dword [eax + 0x44]
mov dword [esp + 0x74], edx
jmp 0x46d0c4
mov eax, dword [eax]
lea edi, [esp + 0x70]
call fcn.0045c6c0
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x70]
mov dword [eax + 0x10], ecx
mov edx, dword [esp + 0x74]
mov dword [eax + 0x14], edx
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
mov ecx, dword [esi + 0x44]
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x68], eax
mov byte [eax + 0x1c], 1
mov edx, dword [esp + 0x68]
mov byte [edx + 0x19], 0
mov eax, dword [esp + 0x68]
mov esi, dword [eax]
test esi, esi
je case.0x469be4.17
call fcn.00458dc0
jmp case.0x469be4.17
mov ecx, dword [ebp + 4]
mov edx, dword [esi + 0x44]
mov eax, dword [edx + ecx*4]
mov dword [esp + 0x68], eax
mov esi, dword [eax]
mov dword [esp + 0x6c], esi
test esi, esi
jne 0x46d12d
mov dword [esp + 0x70], 1
jmp 0x46d13e
lea edi, [esp + 0x70]
call fcn.0045d150
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x68]
mov cl, byte [esp + 0x70]
mov byte [eax + 0x1c], cl
mov edx, dword [esp + 0x68]
mov byte [edx + 0x1d], 0
mov eax, dword [esp + 0x68]
mov byte [eax + 0x19], 0
mov ecx, dword [esp + 0x68]
mov dword [ecx + 0x4c], 0
mov ebp, dword [ebp + 8]
test ebp, ebp
jle case.0x469be4.17
cmp dword [esp + 0x70], 0
je case.0x469be4.17
dec ebp
mov dword [esp + 0x1c], ebp
jmp case.0x469be4.17
inc dword [esi + 0x80]
mov edx, dword [ebp + 4]
mov eax, dword [esi + 0x44]
mov eax, dword [eax + edx*4]
mov dword [esp + 0x68], eax
mov dword [esp + 0x70], 1
mov esi, dword [eax]
mov dword [esp + 0x6c], esi
test esi, esi
je 0x46d1e0
lea edi, [esp + 0x70]
call fcn.0045d120
cmp dword [esp + 0x70], 0
mov edx, dword [esp + 0x68]
sete cl
mov byte [edx + 0x1a], cl
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x68]
mov byte [eax + 0x1d], 0
mov ecx, dword [esp + 0x68]
mov dword [ecx + 0x4c], 0
mov edx, dword [esp + 0x68]
mov byte [edx + 0x19], 0
mov eax, dword [esp + 0x68]
mov cl, byte [esp + 0x70]
mov byte [eax + 0x1c], cl
cmp dword [esp + 0x70], 0
je case.0x469be4.17
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x1c], ebp
jmp case.0x469be4.17
mov edx, dword [esp + 0x18]
mov eax, dword [edx + 0xe0]
test eax, eax
jne 0x46ea46
mov ecx, dword [ebp + 4]
mov edx, dword [esi + 0x44]
mov eax, dword [edx + ecx*4]
mov dword [esp + 0x68], eax
test eax, eax
je case.0x469be4.17
mov ecx, dword [eax]
mov dword [esp + 0x6c], ecx
test ecx, ecx
jne 0x46d239
mov byte [eax + 0x1c], 1
jmp case.0x469be4.17
mov dword [esp + 0x70], 1
cmp byte [ebp], 0x43
jne 0x46d254
lea eax, [esp + 0x70]
push eax
push ecx
call fcn.0045d570
jmp 0x46d25f
lea edx, [esp + 0x70]
push edx
push ecx
call fcn.0045d6b0
mov cl, byte [esp + 0x78]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x70]
mov byte [eax + 0x1c], cl
mov edx, dword [esp + 0x70]
add esp, 8
mov dword [edx + 0x4c], 0
cmp dword [esp + 0x70], 0
jne 0x46d29d
mov eax, dword [ebp + 8]
dec eax
mov dword [esp + 0x1c], eax
mov al, byte [ebp + 3]
test al, al
je 0x46d29d
movzx eax, al
inc dword [esi + eax*4 + 0x78]
lea esi, [esi + eax*4 + 0x78]
mov ecx, dword [esp + 0x68]
mov byte [ecx + 0x19], 0
jmp case.0x469be4.17
mov edx, dword [ebp + 4]
mov eax, dword [esi + 0x44]
mov edx, dword [eax + edx*4]
mov dword [esp + 0x68], edx
mov eax, dword [ebp + 8]
lea ecx, [eax + eax*4]
lea edi, [edi + ecx*8]
mov ecx, dword [edx]
mov dword [esp + 0x6c], ecx
test ecx, ecx
je case.0x469be4.17
mov eax, 0x4000
test word [edi + 0x1c], ax
je 0x46d2f4
mov eax, edi
call fcn.00463750
mov dword [esp + 0x14], eax
test eax, eax
jne case.0x469be4.17
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x68]
mov eax, dword [edi + 0x18]
mov dword [esp + 0x70], eax
mov edi, dword [edi + 4]
mov dword [esp + 0x74], edi
test byte [ebp + 3], 0x10
je 0x46d30d
mov esi, dword [edx + 0x48]
jmp 0x46d30f
xor esi, esi
mov edx, dword [ebp + 0xc]
push edx
push 0
push 0
cdq
push 0x5486e6
push edx
push eax
push edi
push ecx
mov eax, esi
call fcn.0045fdc0
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x88]
add esp, 0x20
mov dword [eax + 0x4c], 0
jmp case.0x469be4.17
mov ecx, dword [ebp + 4]
mov edx, dword [esi + 0x44]
mov eax, dword [edx + ecx*4]
mov dword [esp + 0x68], eax
mov ecx, dword [eax]
mov dword [esp + 0x6c], ecx
test ecx, ecx
je case.0x469be4.17
mov eax, dword [eax + 8]
mov dword [esp + 0x78], eax
mov dx, word [ebp + 0xc]
xor eax, eax
mov word [esp + 0x7c], dx
mov word [esp + 0x7e], ax
mov ebp, dword [ebp + 8]
lea edx, [ebp + ebp*4]
lea eax, [edi + edx*8]
lea edx, [esp + 0x70]
push edx
push 0
push 0
mov dword [esp + 0x94], eax
push 0
lea eax, [esp + 0x88]
push eax
push ecx
call fcn.0045d190
add esp, 0x18
mov dword [esp + 0x14], eax
test eax, eax
jne 0x46d3bc
cmp dword [esp + 0x70], eax
jne 0x46d3bc
mov esi, dword [esp + 0x6c]
call fcn.0045ffe0
mov dword [esp + 0x14], eax
mov ecx, dword [esp + 0x68]
mov dword [ecx + 0x4c], 0
jmp case.0x469be4.17
mov edx, dword [ebp + 4]
mov eax, dword [esi + 0x44]
mov eax, dword [eax + edx*4]
mov dword [esp + 0x6c], eax
mov ecx, dword [eax]
mov dword [esp + 0x68], ecx
mov edx, 1
mov word [ebx + 0x1c], dx
cmp dword [esp + 0x68], 0
je case.0x469be4.17
mov edi, dword [esp + 0x6c]
call fcn.00466ff0
mov dword [esp + 0x14], eax
test eax, eax
jne 0x46e9ff
mov eax, dword [esp + 0x6c]
cmp byte [eax + 0x1c], 0
jne case.0x469be4.17
mov eax, dword [esp + 0x68]
lea ecx, [esp + 0x70]
push ecx
call fcn.004677a0
add esp, 4
mov dword [esp + 0x14], eax
test eax, eax
jne 0x46e9ff
mov edx, dword [esp + 0x70]
mov eax, dword [esp + 0x24]
mov dword [eax + 0x10], edx
mov ecx, dword [esp + 0x74]
mov edx, 4
mov dword [eax + 0x14], ecx
mov word [eax + 0x1c], dx
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
mov ecx, dword [esi + 0x44]
mov edi, dword [ecx + eax*4]
mov dword [esp + 0x68], edi
cmp dword [edi], 0
je case.0x469be4.17
mov edx, dword [edi + 8]
mov dword [esp + 0x70], edx
mov ax, word [ebp + 0x10]
mov word [esp + 0x74], ax
cmp byte [ebp + 3], 0
je 0x46d48b
mov ecx, 0xc
mov word [esp + 0x76], cx
jmp 0x46d495
mov edx, 4
mov word [esp + 0x76], dx
mov eax, dword [ebp + 0xc]
mov ecx, dword [esp + 0x30]
lea eax, [eax + eax*4]
lea edx, [ecx + eax*8]
lea eax, [esp + 0x6c]
push eax
lea ecx, [esp + 0x74]
push ecx
mov dword [esp + 0x88], edx
call fcn.00467900
add esp, 8
cmp byte [ebp], 0x51
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x6c]
jne 0x46d4cd
neg eax
jmp 0x46d4ce
inc eax
mov dword [esp + 0x6c], eax
test eax, eax
jle case.0x469be4.17
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x1c], ebp
jmp case.0x469be4.17
mov edx, dword [esp + 0x18]
mov dword [esp + 0x6c], 0
mov eax, dword [edx + 0x88]
mov dword [esp + 0x70], eax
mov edx, 1
test eax, eax
je 0x46d530
mov ecx, 0xbdf20da3
jmp 0x46d510
cmp dword [eax + 0x34], ecx
jne 0x46d525
cmp byte [eax + 0x66], 2
jae 0x46d525
cmp dword [eax + 0x58], 0
jl 0x46d525
add dword [esp + 0x6c], edx
mov eax, dword [eax + 0x40]
mov dword [esp + 0x70], eax
test eax, eax
jne 0x46d510
mov eax, edx
mov word [ebx + 0x1c], ax
cmp dword [esp + 0x6c], edx
jle 0x46d54d
mov dword [esp + 0x14], 6
mov byte [esi + 0x60], 2
jmp case.0x469be4.17
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x74], eax
mov edx, dword [ebp + 4]
lea ecx, [esp + 0x68]
push ecx
mov ecx, dword [esp + 0x1c]
push edx
mov edx, dword [ecx + 8]
shl eax, 4
mov eax, dword [eax + edx + 4]
call fcn.00460b20
mov ecx, eax
mov eax, 4
mov word [ebx + 0x1c], ax
mov eax, dword [esp + 0x70]
cdq
add esp, 8
mov dword [esp + 0x14], ecx
mov dword [ebx + 0x10], eax
mov dword [ebx + 0x14], edx
test ecx, ecx
jne case.0x469be4.17
mov esi, dword [esp + 0x68]
test esi, esi
je case.0x469be4.17
mov edi, dword [ebp + 4]
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x18]
call fcn.0047c060
mov al, byte [esp + 0x74]
inc al
mov byte [esp + 0x37], al
jmp case.0x469be4.17
mov dword [esp + 0x68], 0
mov ecx, dword [ebp + 0xc]
mov eax, dword [ebp + 8]
mov ebx, dword [ebp + 4]
neg ecx
sbb ecx, ecx
lea edx, [esp + 0x68]
and ecx, edx
push ecx
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx + 8]
shl eax, 4
mov esi, dword [eax + edx + 4]
call fcn.00460710
add esp, 4
cmp dword [ebp + 0xc], 0
mov dword [esp + 0x14], eax
je case.0x469be4.17
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x20]
add dword [ecx + 0x6c], eax
mov ebp, dword [ebp + 0xc]
test ebp, ebp
jle case.0x469be4.17
lea ecx, [ebp + ebp*4]
cdq
add dword [edi + ecx*8 + 0x10], eax
lea ecx, [edi + ecx*8 + 0x10]
adc dword [ecx + 4], edx
jmp case.0x469be4.17
mov edx, dword [esp + 0x18]
mov dword [esp + 0x68], 0
mov eax, dword [ebp + 4]
shl eax, 4
add eax, dword [edx + 8]
xor ecx, ecx
mov dword [esp + 0x70], eax
cmp byte [ebp], 0x62
setne cl
inc ecx
mov dword [esp + 0x6c], ecx
mov eax, dword [eax + 4]
push ecx
lea ecx, [esp + 0x6c]
push ecx
call fcn.00460510
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x70]
cdq
add esp, 8
mov dword [ebx + 0x10], eax
mov dword [ebx + 0x14], edx
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
mov dword [esp + 0x68], eax
mov edx, 0x53faf4
cmp eax, 1
je 0x46d68d
mov edx, 0x53fb08
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x6c], edx
mov dword [esp + 0x74], ecx
mov edi, dword [ebp + 4]
add esi, 0x38
mov dword [esp + 0x7c], esi
mov dword [esp + 0x78], edi
mov esi, dword [ebp + 0x10]
push esi
push edx
mov edx, dword [ecx + 8]
shl eax, 4
mov eax, dword [eax + edx]
push eax
push str.SELECT_name__rootpage__sql_FROM__q._s_WHERE__s_ORDER_BY_rowid
mov esi, ecx
call fcn.0044be60
add esp, 0x10
mov dword [esp + 0x70], eax
test eax, eax
je 0x46a000
push 0
lea ecx, [esp + 0x78]
push ecx
mov byte [esi + 0x7c], 1
mov edx, dword [esp + 0x78]
push fcn.0048b810
push edx
push esi
mov dword [esp + 0x94], 0
call sym.ShuamePacket.exe_sqlite3_exec
mov edi, eax
add esp, 0x14
mov dword [esp + 0x14], edi
test edi, edi
jne 0x46d711
mov eax, dword [esp + 0x80]
mov dword [esp + 0x14], eax
mov edi, eax
mov ecx, dword [esp + 0x70]
push ecx
push esi
call fcn.0044a9d0
add esp, 8
mov byte [esi + 0x7c], 0
cmp edi, 7
je 0x46a000
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x18]
call fcn.00478ad0
mov dword [esp + 0x14], eax
jmp case.0x469be4.17
mov edx, dword [esp + 0x18]
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp + 4]
push edx
call fcn.0047a540
add esp, 4
jmp case.0x469be4.17
mov eax, dword [esp + 0x18]
mov ecx, dword [ebp + 0x10]
push eax
mov eax, dword [ebp + 4]
call fcn.0047a120
add esp, 4
jmp case.0x469be4.17
mov ecx, dword [esp + 0x18]
mov eax, dword [ebp + 4]
push ecx
mov ecx, dword [ebp + 0x10]
call fcn.00495170
add esp, 4
jmp case.0x469be4.17
mov eax, dword [ebp + 8]
mov esi, dword [esp + 0x18]
lea ecx, [eax*4 + 4]
mov dword [esp + 0x68], eax
call fcn.0044ac10
mov dword [esp + 0x6c], eax
test eax, eax
je 0x46a000
mov ecx, dword [ebp + 0xc]
mov edx, dword [esp + 0x30]
lea ecx, [ecx + ecx*4]
lea ecx, [edx + ecx*8]
mov dword [esp + 0x7c], ecx
mov ecx, dword [ebp + 4]
lea ecx, [ecx + ecx*4]
lea esi, [edx + ecx*8]
xor ecx, ecx
cmp dword [esp + 0x68], ecx
mov dword [esp + 0x70], ecx
jle 0x46d809
jmp 0x46d7e0
lea edx, [ecx + ecx*4]
lea ecx, [esi + edx*8]
call fcn.00463a30
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x6c]
mov dword [edx + ecx*4], eax
mov ecx, dword [esp + 0x70]
inc ecx
cmp ecx, dword [esp + 0x68]
mov dword [esp + 0x70], ecx
jl 0x46d7e0
mov eax, dword [esp + 0x6c]
mov edi, dword [esp + 0x18]
mov dword [eax + ecx*4], 0
mov ecx, dword [esp + 0x7c]
mov edx, dword [ecx + 0x10]
mov ecx, dword [esp + 0x6c]
lea eax, [esp + 0x74]
push eax
mov eax, dword [esp + 0x6c]
push edx
movzx edx, byte [ebp + 3]
push eax
mov eax, dword [edi + 8]
shl edx, 4
mov edx, dword [edx + eax + 4]
call fcn.00461950
mov ecx, dword [esp + 0x78]
add esp, 0xc
push ecx
push edi
mov dword [esp + 0x80], eax
call fcn.0044a9d0
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x84]
cdq
add ecx, 0x10
add esp, 8
sub dword [ecx], eax
sbb dword [ecx + 4], edx
call fcn.00463c30
cmp dword [esp + 0x74], 0
je 0x46d895
mov eax, dword [esp + 0x78]
test eax, eax
je 0x46a000
push 1
push 0xffffffffffffffff
push eax
mov eax, sym.ShuamePacket.exe_sqlite3_free
mov ecx, esi
call fcn.00463f70
add esp, 0xc
movzx ecx, byte [esp + 0x28]
mov eax, esi
call fcn.004635c0
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
mov ebp, dword [ebp + 8]
lea edx, [eax + eax*4]
lea esi, [edi + edx*8]
mov bl, 0x20
lea eax, [ebp + ebp*4]
lea ebp, [edi + eax*8]
test byte [esi + 0x1c], bl
jne 0x46d8d0
mov edi, esi
call fcn.00463d90
test byte [esi + 0x1c], bl
je 0x46a000
mov ecx, dword [ebp + 0x14]
mov edx, dword [ebp + 0x10]
mov edi, dword [esi + 0x10]
push ecx
push edx
call fcn.004518e0
add esp, 8
jmp case.0x469be4.17
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 0xe0]
test ecx, ecx
jne 0x46ea46
mov eax, dword [ebp + 4]
lea edx, [eax + eax*4]
test byte [edi + edx*8 + 0x1c], 0x20
lea ebx, [edi + edx*8]
je 0x46d93b
mov eax, dword [ebx + 0x10]
lea esi, [esp + 0x68]
call fcn.00451c40
test eax, eax
je 0x46d93b
mov eax, dword [esp + 0x6c]
mov ebp, dword [ebp + 0xc]
mov ecx, dword [esp + 0x68]
push eax
lea edx, [ebp + ebp*4]
push ecx
lea esi, [edi + edx*8]
call fcn.00463cd0
add esp, 8
jmp case.0x469be4.17
mov esi, ebx
call fcn.00463c30
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x1c], ebp
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
lea eax, [eax + eax*4]
lea esi, [edi + eax*8]
mov eax, dword [ebp + 0xc]
lea ecx, [eax + eax*4]
mov eax, dword [ebp + 0x10]
lea ebx, [edi + ecx*8]
mov dword [esp + 0x68], eax
test byte [esi + 0x1c], 0x20
mov dword [esp + 0x2c], ebx
jne 0x46d987
mov edi, esi
call fcn.00463d90
test byte [esi + 0x1c], 0x20
je 0x46a000
mov eax, dword [esp + 0x68]
test eax, eax
je 0x46d9d1
jl 0x46d992
and eax, 0xf
jmp 0x46d997
mov eax, 0xff
mov edx, dword [ebx + 0x14]
mov ecx, dword [ebx + 0x10]
push edx
mov bl, al
mov eax, dword [esi + 0x10]
push ecx
call fcn.00451cc0
add esp, 8
mov dword [esp + 0x6c], eax
test eax, eax
je 0x46d9c1
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x1c], ebp
jmp case.0x469be4.17
mov eax, dword [esp + 0x68]
mov ebx, dword [esp + 0x2c]
test eax, eax
jl case.0x469be4.17
mov edx, dword [ebx + 0x14]
mov eax, dword [ebx + 0x10]
mov edi, dword [esi + 0x10]
push edx
push eax
call fcn.004518e0
add esp, 8
jmp case.0x469be4.17
mov ecx, dword [ebp + 0x10]
mov dword [esp + 0x80], ecx
mov eax, dword [ebp + 0xc]
lea edx, [eax + eax*4]
lea edi, [edi + edx*8]
mov dword [esp + 0x70], edi
cmp byte [ebp + 3], 0
je 0x46da34
mov eax, dword [esi + 0xa8]
mov edx, dword [ecx + 0x10]
mov dword [esp + 0x84], edx
mov dword [esp + 0x7c], eax
test eax, eax
je 0x46da34
mov edi, edi
cmp dword [eax + 0x20], edx
je case.0x469be4.17
mov eax, dword [eax + 0x3c]
mov dword [esp + 0x7c], eax
test eax, eax
jne 0x46da20
mov eax, dword [esi + 0xb0]
mov edx, dword [esp + 0x18]
cmp eax, dword [edx + 0x70]
jl 0x46da66
mov edi, dword [esp + 0x20]
push str.too_many_levels_of_trigger_recursion
add edi, 0x38
mov eax, edx
mov dword [esp + 0x18], 1
call fcn.0044adc0
add esp, 4
jmp case.0x469be4.17
test byte [edi + 0x1c], 0x40
jne 0x46dbb6
mov eax, dword [ecx + 8]
add eax, dword [ecx + 0xc]
mov ebx, edx
mov dword [esp + 0x68], eax
mov ecx, dword [ecx + 0xc]
lea eax, [eax + eax*4]
lea edi, [ecx + eax*2]
lea edi, [edi*4 + 0x40]
mov eax, ebx
mov dword [esp + 0x6c], edi
call fcn.0044abf0
mov dword [esp + 0x7c], eax
test eax, eax
je 0x46a000
mov edx, dword [esp + 0x70]
push edx
call fcn.00463990
mov ecx, dword [esp + 0x74]
mov eax, 0x40
mov word [ecx + 0x1c], ax
mov edx, dword [esp + 0x80]
mov eax, dword [esp + 0x74]
mov dword [eax + 0x10], edx
mov ecx, dword [esp + 0x80]
mov eax, dword [esp + 0x24]
mov dword [ecx], eax
mov edx, dword [esp + 0x80]
mov ecx, dword [esp + 0x6c]
mov dword [edx + 0x24], ecx
mov edx, dword [esp + 0x84]
mov ecx, dword [edx + 0xc]
mov edx, dword [esp + 0x80]
mov dword [edx + 0x28], ecx
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0x20]
mov dword [ecx + 4], edx
mov ecx, dword [eax + 8]
mov edx, dword [esp + 0x80]
mov dword [edx + 0x10], ecx
mov ecx, dword [eax + 0x18]
mov edx, dword [esp + 0x80]
mov dword [edx + 0x14], ecx
mov ecx, dword [eax + 0x44]
mov edx, dword [esp + 0x80]
mov dword [edx + 0x18], ecx
mov cx, word [eax + 0x32]
mov edx, dword [esp + 0x80]
mov word [edx + 0x1c], cx
mov ecx, dword [eax + 4]
mov edx, dword [esp + 0x80]
mov dword [edx + 8], ecx
mov ecx, dword [eax + 0x1c]
mov edx, dword [esp + 0x80]
mov dword [edx + 0xc], ecx
mov ecx, dword [esp + 0x84]
mov edx, dword [ecx + 0x10]
mov ecx, dword [esp + 0x80]
mov dword [ecx + 0x20], edx
mov edx, dword [esp + 0x80]
mov ecx, dword [edx + 0x24]
lea ecx, [ecx + ecx*4]
lea esi, [edx + ecx*8 + 0x40]
lea ecx, [edx + 0x40]
add esp, 4
mov dword [esp + 0x78], esi
mov dword [esp + 0x74], ecx
cmp ecx, esi
je 0x46dbc1
lea esp, [esp]
mov edx, 1
mov word [ecx + 0x1c], dx
mov ecx, dword [esp + 0x74]
mov dword [ecx], ebx
mov ecx, dword [esp + 0x74]
add ecx, 0x28
mov dword [esp + 0x74], ecx
cmp ecx, dword [esp + 0x78]
jne 0x46db90
mov edx, dword [esp + 0x7c]
jmp 0x46dbc1
mov edx, dword [edi + 0x10]
mov eax, dword [esp + 0x20]
mov dword [esp + 0x7c], edx
inc dword [eax + 0xb0]
mov ecx, dword [eax + 0xa8]
mov dword [edx + 0x3c], ecx
mov edx, dword [esp + 0x7c]
mov ecx, dword [esp + 0x38]
mov dword [edx + 0x30], ecx
mov edx, dword [esp + 0x7c]
mov ecx, dword [esp + 0x3c]
mov dword [edx + 0x34], ecx
mov edx, dword [eax + 0x6c]
mov ecx, dword [esp + 0x7c]
mov dword [ecx + 0x38], edx
mov ecx, dword [esp + 0x7c]
lea edx, [ecx + 0x18]
mov dword [eax + 0xa8], ecx
mov dword [eax + 8], edx
mov dword [eax + 0x6c], 0
mov esi, dword [ecx + 0x24]
mov dword [eax + 0x18], esi
mov cx, word [ecx + 0x28]
mov word [eax + 0x32], cx
mov ecx, esi
inc ecx
lea ecx, [ecx + ecx*4]
mov dword [esp + 0x30], edx
lea edx, [edx + ecx*8]
mov ecx, dword [esp + 0x80]
mov dword [eax + 0x44], edx
mov edx, dword [ecx]
mov dword [eax + 4], edx
mov ecx, dword [ecx + 4]
mov dword [esp + 0x44], edx
mov dword [eax + 0x1c], ecx
mov dword [esp + 0x1c], 0xffffffff
jmp case.0x469be4.17
mov esi, dword [esi + 0xa8]
mov dword [esp + 0x68], esi
mov eax, dword [esi + 4]
lea edx, [eax + eax*4]
mov eax, dword [esi + 8]
mov eax, dword [eax + edx*4 + 4]
add eax, dword [ebp + 4]
mov edx, dword [esi + 0x10]
lea ecx, [eax + eax*4]
lea eax, [edx + ecx*8]
push 0x1000
push eax
mov dword [esp + 0x74], eax
call fcn.00463e70
add esp, 8
jmp case.0x469be4.17
cmp dword [ebp + 4], 0
mov eax, dword [ebp + 8]
cdq
je 0x46dca1
mov ecx, dword [esp + 0x18]
add dword [ecx + 0x1f0], eax
adc dword [ecx + 0x1f4], edx
jmp case.0x469be4.17
add dword [esi + 0x90], eax
adc dword [esi + 0x94], edx
jmp case.0x469be4.17
cmp dword [ebp + 4], 0
je 0x46dcdb
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 0x1f0]
or ecx, dword [eax + 0x1f4]
jne case.0x469be4.17
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x1c], ebp
jmp case.0x469be4.17
mov edx, dword [esi + 0x90]
or edx, dword [esi + 0x94]
jne case.0x469be4.17
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x1c], ebp
jmp case.0x469be4.17
mov esi, dword [esi + 0xa8]
test esi, esi
je 0x46dd2c
mov ecx, esi
mov dword [esp + 0x6c], ecx
mov eax, dword [ecx + 0x3c]
test eax, eax
je 0x46dd1e
mov ecx, eax
mov dword [esp + 0x6c], ecx
mov eax, dword [ecx + 0x3c]
test eax, eax
jne 0x46dd11
mov eax, dword [ebp + 4]
mov ecx, dword [ecx + 0x10]
lea eax, [eax + eax*4]
lea esi, [ecx + eax*8]
jmp 0x46dd35
mov eax, dword [ebp + 4]
lea edx, [eax + eax*4]
lea esi, [edi + edx*8]
mov dword [esp + 0x68], esi
call fcn.00463b50
mov ebp, dword [ebp + 8]
lea eax, [ebp + ebp*4]
lea esi, [edi + eax*8]
call fcn.00463b50
mov eax, dword [esp + 0x68]
mov ecx, dword [esi + 0x10]
mov esi, dword [esi + 0x14]
mov edx, dword [eax + 0x14]
add eax, 0x10
cmp edx, esi
jg case.0x469be4.17
jl 0x46dd71
mov edx, dword [eax]
cmp edx, ecx
jae case.0x469be4.17
mov dword [eax], ecx
mov dword [eax + 4], esi
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
lea eax, [eax + eax*4]
cmp dword [edi + eax*8 + 0x14], 0
jl case.0x469be4.17
jg 0x46dd99
cmp dword [edi + eax*8 + 0x10], 0
jbe case.0x469be4.17
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x1c], ebp
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
lea eax, [eax + eax*4]
cmp dword [edi + eax*8 + 0x14], 0
jg case.0x469be4.17
jl 0x46ddc4
cmp dword [edi + eax*8 + 0x10], 0
jae case.0x469be4.17
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x1c], ebp
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
lea eax, [eax + eax*4]
lea ecx, [edi + eax*8]
mov eax, dword [ebp + 0xc]
cdq
add dword [ecx + 0x10], eax
adc dword [ecx + 0x14], edx
mov edx, dword [ecx + 0x10]
or edx, dword [ecx + 0x14]
jne case.0x469be4.17
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x1c], ebp
jmp case.0x469be4.17
movzx ecx, byte [ebp + 3]
mov edx, dword [esi + 0xc]
mov dword [esp + 0x68], ecx
mov eax, dword [ebp + 8]
lea eax, [eax + eax*4]
lea edi, [edi + eax*8]
xor eax, eax
mov dword [esp + 0x74], edi
mov dword [esp + 0xb8], edx
mov dword [esp + 0x6c], eax
test ecx, ecx
jle 0x46de53
mov ecx, dword [esp + 0xb8]
mov dword [ecx + eax*4], edi
mov ecx, dword [esp + 0x74]
call fcn.004697d0
mov eax, dword [esp + 0x6c]
mov edi, dword [esp + 0x74]
inc eax
add edi, 0x28
cmp eax, dword [esp + 0x68]
mov dword [esp + 0x6c], eax
mov dword [esp + 0x74], edi
jl 0x46de26
mov edx, dword [ebp + 0x10]
mov ecx, dword [esp + 0x30]
mov esi, dword [esp + 0x18]
mov dword [esp + 0x78], edx
mov eax, dword [ebp + 0xc]
lea eax, [eax + eax*4]
lea eax, [ecx + eax*8]
xor edi, edi
mov dword [esp + 0x70], eax
mov dword [esp + 0xa8], eax
inc dword [eax + 0x18]
mov eax, dword [esp + 0x78]
mov edx, 1
mov word [esp + 0x9c], dx
mov dword [esp + 0x84], edi
mov dword [esp + 0xa4], edi
mov dword [esp + 0xa0], edi
mov dword [esp + 0x80], esi
mov dword [esp + 0xac], edi
mov dword [esp + 0xb0], edi
test byte [eax + 3], 8
je 0x46dec6
mov ecx, dword [ebp - 4]
mov dword [esp + 0xb0], ecx
mov edx, dword [esp + 0xb8]
mov ecx, dword [esp + 0x68]
mov eax, dword [eax + 0x10]
push edx
push ecx
lea edx, [esp + 0x80]
push edx
call eax
add esp, 0xc
cmp dword [esp + 0xac], edi
je 0x46df1c
mov bl, 1
lea edi, [esp + 0x80]
call fcn.004644b0
mov edi, dword [esp + 0x20]
push eax
push 0x53fb80
add edi, 0x38
mov eax, esi
call fcn.0044adc0
mov ecx, dword [esp + 0xb4]
add esp, 8
mov dword [esp + 0x14], ecx
lea edx, [esp + 0x80]
push edx
call fcn.00463990
add esp, 4
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
lea eax, [eax + eax*4]
lea ecx, [edi + eax*8]
mov dword [esp + 0x68], ecx
mov eax, dword [ebp + 0x10]
call fcn.004638b0
mov dword [esp + 0x14], eax
test eax, eax
je 0x46df72
mov edi, dword [esp + 0x68]
mov bl, 1
call fcn.004644b0
mov edi, dword [esp + 0x20]
push eax
mov eax, dword [esp + 0x1c]
push 0x53fb84
add edi, 0x38
call fcn.0044adc0
add esp, 8
movzx ecx, byte [esp + 0x28]
mov eax, dword [esp + 0x68]
call fcn.004635c0
mov ecx, dword [esp + 0x68]
call fcn.00463e40
test eax, eax
jne 0x46a707
jmp case.0x469be4.17
mov esi, dword [esp + 0x18]
or eax, 0xffffffff
xor ebx, ebx
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x74], eax
mov dword [esp + 0x70], eax
mov ecx, dword [ebp + 8]
mov edx, dword [ebp + 4]
push ecx
push edx
lea edx, [esp + 0x7c]
lea ecx, [esp + 0x78]
call fcn.004a31f0
add esp, 8
mov dword [esp + 0x14], eax
cmp eax, 5
jne 0x46dfd8
mov dword [esp + 0x14], ebx
mov dword [esp + 0x6c], 1
xor eax, eax
mov dword [esp + 0x68], eax
mov ebp, dword [ebp + 0xc]
lea ecx, [ebp + ebp*4]
lea edi, [edi + ecx*8]
mov dword [esp + 0x78], edi
lea esp, [esp]
mov eax, dword [esp + eax*4 + 0x6c]
cdq
push edx
push eax
mov esi, edi
call fcn.00463cd0
mov eax, dword [esp + 0x70]
mov edi, dword [esp + 0x80]
inc eax
add edi, 0x28
add esp, 8
cmp eax, 3
mov dword [esp + 0x68], eax
mov dword [esp + 0x78], edi
jl 0x46dff0
jmp case.0x469be4.17
mov edx, dword [ebp + 0xc]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x70], edx
mov eax, dword [ebp + 4]
mov ecx, dword [ecx + 8]
shl eax, 4
mov eax, dword [eax + ecx + 4]
mov dword [esp + 0x68], eax
mov eax, dword [eax + 4]
mov edi, dword [eax]
mov dword [esp + 0x6c], edi
movzx esi, byte [edi + 5]
mov dword [esp + 0x74], esi
cmp edx, 0xffffffff
jne 0x46e05a
mov edx, esi
mov dword [esp + 0x70], edx
cmp byte [edi + 0xf], 3
jae 0x46e076
mov ecx, dword [edi + 0x40]
cmp dword [ecx], 0
je 0x46e07c
cmp dword [edi + 0x4c], 0
jl 0x46e07c
jg 0x46e076
cmp dword [edi + 0x48], 0
jbe 0x46e07c
mov edx, esi
mov dword [esp + 0x70], edx
mov eax, dword [edi + 0x90]
mov dword [esp + 0x78], eax
cmp edx, 5
jne 0x46e0a6
cmp byte [eax], 0
je 0x46e09b
mov eax, edi
call fcn.004563a0
test eax, eax
jne 0x46e0a6
mov edx, esi
mov dword [esp + 0x70], edx
jmp 0x46e164
cmp edx, esi
je 0x46e164
cmp esi, 5
je 0x46e0bc
cmp edx, 5
jne 0x46e164
mov eax, dword [esp + 0x18]
cmp byte [eax + 0x1c], 0
je 0x46e127
cmp dword [eax + 0x8c], 1
jg 0x46e127
cmp esi, 5
jne 0x46e0eb
call fcn.004564e0
mov dword [esp + 0x14], eax
test eax, eax
jne 0x46e11d
mov ecx, dword [esp + 0x70]
mov eax, dword [esp + 0x6c]
jmp 0x46e0f5
cmp esi, 4
jne 0x46e0fe
lea ecx, [esi - 2]
mov eax, edi
call fcn.004561f0
mov edx, dword [esp + 0x70]
mov ecx, dword [esp + 0x68]
xor eax, eax
cmp edx, 5
sete al
inc eax
push eax
push ecx
call fcn.00461f50
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
je 0x46e15c
mov edx, dword [esp + 0x74]
mov dword [esp + 0x70], edx
jmp 0x46e160
mov dword [esp + 0x14], 1
mov eax, str.into
cmp edx, 5
je 0x46e13e
mov eax, str.out_of
push eax
push str.cannot_change__s_wal_mode_from_within_a_transaction
mov edi, dword [esp + 0x28]
mov eax, dword [esp + 0x20]
add edi, 0x38
call fcn.0044adc0
add esp, 8
jmp case.0x469be4.17
mov edx, dword [esp + 0x70]
mov edi, dword [esp + 0x6c]
mov ecx, edx
mov eax, edi
call fcn.004561f0
mov dword [esp + 0x70], eax
mov ebp, dword [ebp + 8]
mov eax, dword [esp + 0x30]
lea edx, [ebp + ebp*4]
lea edx, [eax + edx*8]
mov ecx, 0xa02
mov word [edx + 0x1c], cx
mov eax, dword [esp + 0x70]
mov dword [esp + 0x24], edx
cmp eax, 6
jne 0x46e199
xor ecx, ecx
jmp 0x46e1a0
mov ecx, dword [eax*4 + 0x5189f0]
mov dword [edx + 4], ecx
call fcn.0044c8f0
movzx ecx, byte [esp + 0x28]
mov dword [edx + 0x18], eax
mov eax, edx
mov byte [edx + 0x1f], 1
call fcn.004635c0
jmp case.0x469be4.17
mov edx, dword [esp + 0x18]
push edx
lea eax, [esi + 0x38]
call fcn.00497810
add esp, 4
mov dword [esp + 0x14], eax
jmp case.0x469be4.17
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx + 8]
shl eax, 4
mov eax, dword [eax + edx + 4]
mov dword [esp + 0x68], eax
call fcn.0045bc10
mov dword [esp + 0x14], eax
cmp eax, 0x65
jne case.0x469be4.17
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x14], 0
jmp case.0x469be4.17
cmp dword [ebp + 4], 0
jne 0x46e229
mov eax, dword [esp + 0x18]
call fcn.004679e0
jmp case.0x469be4.17
mov byte [esi + 0x63], 1
jmp case.0x469be4.17
mov cl, byte [ebp + 0xc]
test cl, cl
jne 0x46e24a
mov eax, dword [esp + 0x18]
test dword [eax + 0xc], 0x80000
jne case.0x469be4.17
mov edx, dword [ebp + 8]
mov eax, dword [ebp + 4]
push edx
mov edx, dword [esp + 0x1c]
mov edx, dword [edx + 8]
shl eax, 4
mov esi, dword [eax + edx + 4]
call fcn.00461e90
add esp, 4
mov dword [esp + 0x14], eax
cmp al, 6
jne case.0x469be4.17
mov eax, dword [ebp + 0x10]
push eax
push str.database_table_is_locked:__s
jmp 0x46e144
mov edi, dword [ebp + 0x10]
mov eax, dword [esp + 0x18]
mov dword [esp + 0x68], edi
call fcn.00498a60
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x68]
test eax, eax
je case.0x469be4.17
mov ecx, dword [eax + 8]
mov edx, dword [esp + 0x20]
push ecx
push edx
call fcn.00469a30
add esp, 8
jmp case.0x469be4.17
mov eax, dword [ebp + 0x10]
mov ecx, dword [esp + 0x18]
add esi, 0x38
push esi
push eax
mov eax, dword [ebp + 4]
call fcn.00498620
add esp, 8
mov dword [esp + 0x14], eax
jmp case.0x469be4.17
mov byte [esi + 0x66], 2
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp + 4]
push ecx
mov ecx, dword [esp + 0x1c]
call fcn.004988d0
add esp, 4
mov dword [esp + 0x14], eax
mov byte [esi + 0x66], 0
jmp case.0x469be4.17
xor ebx, ebx
mov dword [esp + 0x68], ebx
mov dword [esp + 0x6c], ebx
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 8]
mov dword [esp + 0x70], eax
mov ecx, dword [eax]
lea edx, [esp + 0x6c]
push edx
mov dword [esp + 0x78], ecx
push eax
mov eax, dword [ecx + 0x18]
call eax
mov ecx, dword [esp + 0x78]
push ecx
mov edi, eax
push esi
mov dword [esp + 0x24], edi
call fcn.00469a30
add esp, 0x10
cmp edi, ebx
jne case.0x469be4.17
mov edx, dword [esp + 0x70]
mov eax, dword [esp + 0x6c]
push ebx
push 0xffffffffffffffff
mov dword [eax], edx
mov ecx, dword [ebp + 4]
push ebx
push ecx
mov ebx, esi
call fcn.00469800
add esp, 0x10
mov dword [esp + 0x68], eax
test eax, eax
je 0x46e37b
mov edx, dword [esp + 0x6c]
mov dword [eax + 0x24], edx
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax]
mov edx, dword [ecx]
mov eax, dword [esp + 0x68]
mov dword [eax + 0x28], edx
jmp case.0x469be4.17
mov ecx, dword [esp + 0x18]
mov byte [ecx + 0x1e], 1
mov edx, dword [esp + 0x6c]
mov eax, dword [esp + 0x74]
mov ecx, dword [eax + 0x1c]
push edx
call ecx
add esp, 4
jmp case.0x469be4.17
mov eax, dword [ebp + 0xc]
mov ecx, dword [esi + 0x44]
lea edx, [eax + eax*4]
mov esi, dword [esi + 0xc]
lea edi, [edi + edx*8]
mov dword [esp + 0x74], edi
lea ebx, [edi + 0x28]
mov dword [esp + 0x78], ebx
mov eax, dword [ebp + 4]
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x84], eax
mov edx, dword [eax + 0x24]
mov dword [esp + 0x7c], edx
mov eax, dword [edx]
mov dword [esp + 0x80], eax
mov eax, dword [eax]
mov dword [esp + 0x70], eax
mov ecx, dword [ebx + 0x10]
mov dword [esp + 0x68], ecx
mov eax, dword [edi + 0x10]
mov dword [esp + 0x6c], eax
xor eax, eax
cmp ecx, eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x90], esi
mov dword [esp + 0x8c], eax
jle 0x46e447
jmp 0x46e405
mov ebx, dword [esp + 0x78]
lea ecx, [eax + eax*4 + 5]
lea edx, [ebx + ecx*8]
mov ecx, dword [esp + 0x90]
mov dword [ecx + eax*4], edx
mov edx, dword [esp + 0x8c]
mov eax, dword [esp + 0x90]
mov ecx, dword [eax + edx*4]
call fcn.004697d0
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x68]
inc eax
cmp eax, ecx
mov dword [esp + 0x8c], eax
jl 0x46e401
mov edx, dword [esp + 0x7c]
mov eax, dword [esp + 0x90]
mov esi, dword [esp + 0x20]
push eax
mov eax, dword [esp + 0x70]
push ecx
mov byte [esi + 0x66], 1
mov ecx, dword [ebp + 0x10]
push ecx
mov ecx, dword [esp + 0x7c]
push eax
push edx
mov edx, dword [ecx + 0x20]
call edx
mov edi, eax
mov eax, dword [esp + 0x94]
add esp, 0x14
push eax
push esi
mov dword [esp + 0x1c], edi
mov byte [esi + 0x66], 0
call fcn.00469a30
add esp, 8
test edi, edi
jne 0x46e4a5
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x70]
mov eax, dword [edx + 0x28]
push ecx
call eax
add esp, 4
mov dword [esp + 0x88], eax
cmp dword [esp + 0x88], 0
je 0x46e4b7
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x1c], ebp
mov ecx, dword [esp + 0x84]
mov byte [ecx + 0x1c], 0
jmp case.0x469be4.17
mov edx, dword [ebp + 4]
mov eax, dword [esi + 0x44]
mov ecx, dword [eax + edx*4]
mov eax, dword [ebp + 0xc]
lea edx, [eax + eax*4]
lea edi, [edi + edx*8]
mov dword [esp + 0x70], edi
cmp byte [ecx + 0x1c], 0
mov dword [esp + 0x2c], ecx
je 0x46e4f3
mov esi, edi
call fcn.00463c30
jmp case.0x469be4.17
mov edi, dword [esp + 0x2c]
mov eax, dword [edi + 0x24]
mov eax, dword [eax]
push 0x40
mov dword [esp + 0x6c], eax
mov ecx, dword [eax]
lea edx, [esp + 0x7c]
push 0
push edx
mov dword [esp + 0x78], ecx
call fcn.004f08c0
mov ebx, dword [esp + 0x7c]
add esp, 0xc
lea eax, [esp + 0x80]
call fcn.00463f20
mov eax, dword [esp + 0x9c]
and eax, 0xbf01
or eax, 1
mov word [esp + 0x9c], ax
mov ecx, dword [ebp + 8]
mov eax, dword [edi + 0x24]
push ecx
mov ecx, dword [esp + 0x70]
lea edx, [esp + 0x7c]
push edx
mov edx, dword [ecx + 0x2c]
push eax
call edx
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x74]
add esp, 0xc
push eax
push esi
call fcn.00469a30
mov eax, dword [esp + 0xb4]
add esp, 8
test eax, eax
je 0x46e578
mov dword [esp + 0x14], eax
movzx ecx, byte [esp + 0x28]
lea eax, [esp + 0x80]
call fcn.004635c0
mov eax, dword [esp + 0x70]
lea ebx, [esp + 0x80]
call fcn.00463f20
mov ecx, dword [esp + 0x70]
call fcn.00463e40
test eax, eax
jne 0x46a707
jmp case.0x469be4.17
mov edx, dword [esi + 0x44]
mov dword [esp + 0x70], 0
mov ecx, dword [ebp + 4]
mov eax, dword [edx + ecx*4]
mov dword [esp + 0x74], eax
cmp byte [eax + 0x1c], 0
jne case.0x469be4.17
mov ecx, dword [eax + 0x24]
mov ecx, dword [ecx]
mov dword [esp + 0x68], ecx
mov ecx, dword [ecx]
mov dword [esp + 0x6c], ecx
mov byte [esi + 0x66], 1
mov edx, dword [eax + 0x24]
mov eax, dword [ecx + 0x24]
push edx
call eax
mov ecx, dword [esp + 0x6c]
add esp, 4
push ecx
mov edi, eax
push esi
mov dword [esp + 0x1c], edi
mov byte [esi + 0x66], 0
call fcn.00469a30
add esp, 8
test edi, edi
jne 0x46e621
mov edx, dword [esp + 0x74]
mov eax, dword [edx + 0x24]
mov ecx, dword [esp + 0x6c]
mov edx, dword [ecx + 0x28]
push eax
call edx
add esp, 4
mov dword [esp + 0x70], eax
cmp dword [esp + 0x70], 0
jne case.0x469be4.17
mov ebp, dword [ebp + 8]
dec ebp
mov dword [esp + 0x1c], ebp
jmp case.0x469be4.17
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 8]
mov dword [esp + 0x68], eax
mov ebp, dword [ebp + 4]
lea ecx, [ebp + ebp*4]
lea edi, [edi + ecx*8]
mov dword [esp + 0x6c], edi
mov ecx, dword [edi + 4]
mov edx, dword [eax]
mov edx, dword [edx + 0x4c]
push ecx
push eax
call edx
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x70]
push eax
push esi
call fcn.00469a30
mov byte [esi + 0x63], 0
jmp 0x46e855
mov ecx, dword [ebp + 0x10]
mov eax, dword [ecx + 8]
mov dword [esp + 0x68], eax
mov eax, dword [eax]
mov dword [esp + 0x6c], eax
mov ecx, dword [ebp + 8]
mov dword [esp + 0x70], ecx
cmp dword [eax + 0x34], 0
je case.0x469be4.17
mov edx, dword [esp + 0x18]
mov bl, byte [edx + 0x22]
mov eax, dword [esi + 0xc]
mov dword [esp + 0x80], eax
mov eax, dword [ebp + 0xc]
lea edx, [eax + eax*4]
lea edi, [edi + edx*8]
mov dword [esp + 0x84], edi
mov dword [esp + 0x74], 0
test ecx, ecx
jle 0x46e6ff
mov ecx, edi
call fcn.004697d0
mov eax, dword [esp + 0x84]
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x80]
mov dword [edx + ecx*4], eax
mov eax, dword [esp + 0x74]
mov edi, dword [esp + 0x84]
inc eax
add edi, 0x28
cmp eax, dword [esp + 0x70]
mov dword [esp + 0x84], edi
mov dword [esp + 0x74], eax
jl 0x46e6c3
mov al, byte [ebp + 3]
mov edi, dword [esp + 0x18]
mov byte [edi + 0x22], al
mov edx, dword [esp + 0x80]
mov eax, dword [esp + 0x70]
lea ecx, [esp + 0x78]
push ecx
mov ecx, dword [esp + 0x6c]
push edx
mov edx, dword [esp + 0x74]
push eax
mov eax, dword [edx + 0x34]
push ecx
call eax
mov byte [edi + 0x22], bl
mov ecx, dword [esp + 0x78]
push ecx
push esi
mov dword [esp + 0x2c], eax
call fcn.00469a30
mov ecx, dword [esp + 0x2c]
add esp, 0x18
test ecx, ecx
jne 0x46e765
cmp dword [ebp + 4], ecx
je 0x46e765
mov eax, dword [esp + 0x78]
mov edx, dword [esp + 0x7c]
mov dword [esp + 0x38], eax
mov dword [edi + 0x30], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x3c], edx
mov dword [edi + 0x34], eax
cmp ecx, 0x13
jne 0x46e7a3
mov ecx, dword [ebp + 0x10]
cmp byte [ecx + 0x10], 0
je 0x46e7a3
mov al, byte [ebp + 3]
cmp al, 4
jne 0x46e787
mov dword [esp + 0x14], 0
jmp case.0x469be4.17
cmp al, 5
jne 0x46e798
mov eax, 2
mov byte [esi + 0x60], al
jmp case.0x469be4.17
movzx eax, al
mov byte [esi + 0x60], al
jmp case.0x469be4.17
inc dword [esi + 0x6c]
jmp case.0x469be4.17
mov edx, dword [ebp + 4]
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 8]
shl edx, 4
mov edx, dword [edx + ecx + 4]
mov eax, dword [edx + 4]
mov ecx, dword [eax + 0x30]
mov dword [ebx + 0x10], ecx
mov dword [ebx + 0x14], 0
jmp case.0x469be4.17
mov eax, dword [esp + 0x18]
mov edx, dword [ebp + 4]
mov ecx, dword [eax + 8]
mov ebp, dword [ebp + 0xc]
shl edx, 4
mov ecx, dword [edx + ecx + 4]
xor eax, eax
test ebp, ebp
je 0x46e7f7
mov edx, dword [ecx + 4]
mov eax, dword [edx + 0x30]
cmp eax, ebp
jae 0x46e7f7
mov eax, ebp
call fcn.0045aac0
cdq
mov dword [ebx + 0x10], eax
mov dword [ebx + 0x14], edx
jmp case.0x469be4.17
mov eax, dword [esp + 0x18]
cmp dword [eax + 0x98], 0
je case.0x469be4.17
mov ebp, dword [ebp + 0x10]
mov ecx, ebp
test ebp, ebp
jne 0x46e821
mov ecx, dword [esi + 0xa0]
mov dword [esp + 0x68], ecx
test ecx, ecx
je case.0x469be4.17
push esi
call fcn.00469490
mov esi, dword [esp + 0x1c]
add esp, 4
mov dword [esp + 0x6c], eax
mov ecx, dword [esi + 0x9c]
mov edx, dword [esi + 0x98]
push eax
push ecx
call edx
mov eax, dword [esp + 0x74]
push eax
push esi
call fcn.0044a9d0
add esp, 0x10
inc dword [esp + 0x1c]
cmp dword [esp + 0x14], 0
jne 0x46a727
mov ebx, dword [esp + 0x24]
mov edi, dword [esp + 0x30]
mov ebp, dword [esp + 0x18]
mov esi, dword [esp + 0x20]
jmp 0x469b60
mov dword [esp + 0x14], 9
jmp 0x46a727
mov ecx, dword [ebp + 4]
mov eax, dword [esp + 0x1c]
mov dword [esi + 0x5c], ecx
mov dl, byte [ebp + 8]
mov byte [esi + 0x60], dl
mov dword [esi + 0x58], eax
mov eax, dword [ebp + 0x10]
test eax, eax
je 0x46e8dc
mov esi, dword [esp + 0x20]
push eax
mov eax, dword [esp + 0x1c]
push 0x53f908
lea edi, [esi + 0x38]
call fcn.0044adc0
mov ecx, dword [ebp + 0x10]
mov edx, dword [esi + 0xa0]
mov eax, dword [esp + 0x24]
push ecx
mov ecx, dword [ebp + 4]
push edx
push eax
push str.abort_at__d_in___s_:__s
push ecx
call sym.ShuamePacket.exe_sqlite3_log
add esp, 0x1c
jmp 0x46e8fd
test ecx, ecx
je 0x46e8fd
mov edx, dword [esi + 0xa0]
mov eax, dword [esp + 0x1c]
mov ecx, dword [ebp + 4]
push edx
push eax
push str.constraint_failed_at__d_in___s_
push ecx
call sym.ShuamePacket.exe_sqlite3_log
add esp, 0x10
push esi
call fcn.00466950
mov edi, 5
add esp, 4
cmp eax, edi
je 0x46e950
mov edi, dword [esi + 0x5c]
neg edi
sbb edi, edi
and edi, 0xffffff9c
add edi, 0x65
jmp 0x46a783
lea ecx, [esp + 0x78]
push ecx
call fcn.00463990
add esp, 4
jmp 0x46a000
mov dword [esp + 0x14], 0x14
jmp 0x46e9ff
mov edx, dword [esp + 0x1c]
mov dword [esi + 0x58], edx
mov byte [ebx + 0x1c], 0
mov edi, 5
mov dword [esi + 0x5c], edi
jmp 0x46a783
test ebp, ebp
je 0x46e98a
mov esi, dword [esp + 0x18]
mov eax, esi
call fcn.004a2750
mov byte [esi + 0x1c], 1
mov edi, esi
mov esi, edi
call fcn.004a2360
mov eax, dword [esp + 0x20]
mov edi, dword [eax + 0x5c]
neg edi
sbb edi, edi
and edi, 0xffffff9c
add edi, 0x65
jmp 0x46a783
push 1
mov ecx, esi
call fcn.004668f0
mov edi, eax
add esp, 4
test edi, edi
jne 0x46a783
mov al, byte [esp + 0x68]
mov edi, dword [esp + 0x18]
push esi
mov byte [edi + 0x1c], al
call fcn.00466950
add esp, 4
cmp eax, 5
jne 0x46e96d
mov ecx, dword [esp + 0x1c]
mov dl, 1
sub dl, byte [esp + 0x68]
mov dword [esi + 0x58], ecx
mov byte [edi + 0x1c], dl
mov edi, eax
mov dword [esi + 0x5c], edi
jmp 0x46a783
mov ecx, dword [esp + 0x1c]
mov edi, 5
mov dword [esi + 0x58], ecx
mov dword [esi + 0x5c], edi
jmp 0x46a783
mov eax, 0x10157
call fcn.004a4480
mov dword [esp + 0x14], eax
jmp 0x46e9ff
mov dword [esp + 0x14], 0xd
mov ecx, dword [esp + 0x18]
cmp byte [ecx + 0x1e], 0
je 0x46ea13
mov dword [esp + 0x14], 7
jmp 0x46ea21
cmp dword [esp + 0x14], 0xc0a
je 0x46a727
mov eax, dword [esp + 0x14]
call fcn.004a2820
mov edi, dword [esp + 0x20]
push eax
push 0x53fc34
add edi, 0x38
mov eax, ecx
call fcn.0044adc0
add esp, 8
jmp 0x46a727
mov eax, 9
mov dword [esp + 0x14], eax
mov dword [esi + 0x5c], eax
mov eax, dword [str.interrupted]
test eax, eax
jne 0x46ea60
mov eax, str.unknown_error
mov edi, dword [esp + 0x20]
push eax
mov eax, dword [esp + 0x1c]
push 0x53fc38
add edi, 0x38
call fcn.0044adc0
add esp, 8
jmp 0x46a727