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

Disassembly:
push ebp
push edi
mov edi, eax
push esi
push ebx
sub esp, 0x15c
mov esi, dword [edi + 0xa0]
mov dword [esp], eax
mov eax, dword [eax + 0x68]
mov dword [esp + 0x18], eax
mov eax, dword [edi]
movzx ecx, byte [eax + 0x4e]
mov dword [esp + 4], eax
mov byte [esp + 0x3b], cl
mov ecx, dword [edi + 0x58]
mov dword [esp + 0x14], ecx
test esi, esi
je 0x7cdd90
lea edx, [edi + 0xa0]
call fcn.0076d0a0
mov eax, dword [esp + 4]
mov dword [esp + 0x1c], 0xffffffff
mov ebx, dword [eax + 0x150]
test ebx, ebx
je 0x7cddbf
mov ecx, dword [eax + 0x158]
mov eax, dword [esp]
xor edx, edx
mov eax, dword [eax + 0xb4]
div ecx
sub ecx, edx
mov dword [esp + 0x1c], ecx
mov eax, dword [esp]
cmp dword [eax + 0x28], 7
je 0x7ce2d0
mov ecx, dword [esp + 4]
mov dword [eax + 0x38], 0
mov dword [eax + 0x3c], 0
mov dword [eax + 0x78], 0
mov dword [ecx + 0x1a4], 0
mov ecx, dword [ecx + 0x108]
mov dword [esp + 0x70], ecx
test ecx, ecx
jne 0x7ce0c0
mov eax, dword [eax + 0x24]
mov esi, dword [esp + 0x18]
mov dword [esp + 0x3c], 0
mov dword [esp + 8], 0
mov dword [esp + 0x10], 0
lea eax, [eax + eax*4]
mov byte [esp + 0x3a], 0
lea ebp, [esi + eax*4]
lea esi, [esi]
nop
movzx esi, byte [ebp]
add dword [esp + 0x10], 1
mov ebx, esi
cmp bl, 0xaa
ja case.0x7cde44.85
jmp dword [esi*4 + 0xbef2e4]
mov ebx, dword [esi + 0x28]
mov eax, ebx
call fcn.00761b80
xor eax, eax
mov ecx, dword [ebx + 0x2c]
sub esp, 0xc
mov word [esp + 0xb4], ax
mov eax, dword [esp + 0x10]
xor edx, edx
mov dword [esp + 0xc4], 0
mov dword [esp + 0xcc], eax
lea eax, [esp + 0xac]
mov dword [esp + 0x2c], eax
push eax
mov eax, ebx
call fcn.007af090
mov dword [esp + 0x18], eax
add esp, 0x10
test eax, eax
jne 0x7ce385
mov eax, dword [esp + 0xb0]
movzx edx, byte [eax]
test dl, dl
js 0x7d6399
movzx eax, dl
mov dword [esp + 0x94], eax
cmp eax, 2
jbe 0x7d548e
cmp eax, dword [esp + 0xac]
ja 0x7d548e
mov edx, dword [esp + 0xb0]
lea eax, [edx + eax - 1]
movzx edx, byte [eax]
test dl, dl
js 0x7d67a2
mov dword [esp + 0x98], edx
lea eax, [edx - 1]
cmp eax, 8
ja 0x7d548e
cmp edx, 7
je 0x7d548e
movzx ecx, byte [edx + 0xbfa2c0]
mov ebx, dword [esp + 0x94]
mov eax, dword [esp + 0xac]
add ebx, ecx
cmp eax, ebx
jb 0x7d548e
sub eax, ecx
lea ecx, [esp + 0xe8]
add eax, dword [esp + 0xb0]
call fcn.00761d90
mov eax, dword [esp + 0xe8]
mov edx, dword [esp + 0xec]
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], edx
test word [esp + 0xa8], 0x2400
jne 0x7cdf64
mov edi, dword [esp + 0xb8]
test edi, edi
je 0x7cdf6d
mov eax, dword [esp + 0x20]
call fcn.00767e50
cmp byte [ebp], 0x85
je 0x7d57b5
mov eax, dword [ebp + 8]
lea edx, [eax + eax*4]
mov eax, dword [esp]
mov eax, dword [eax + 0x58]
lea eax, [eax + edx*8]
test word [eax + 8], 0x2400
jne 0x7d605d
mov ecx, 4
mov word [eax + 8], cx
mov ecx, dword [esp + 0x28]
mov ebx, dword [esp + 0x2c]
mov dword [eax], ecx
mov dword [eax + 4], ebx
lea esi, [esi]
nop
add ebp, 0x14
jmp 0x7cde30
mov dword [ebx + 0x1c], 0
mov byte [ebx + 2], 0
mov edi, dword [esp]
movzx eax, word [ebp + 2]
mov dword [esp + 8], 0
add dword [edi + eax*4 + 0xa4], 1
mov eax, dword [ebp + 8]
mov edi, dword [esp + 0x18]
lea eax, [eax + eax*4]
lea ebp, [edi + eax*4 - 0x14]
mov eax, dword [esp + 4]
mov eax, dword [eax + 0x108]
test eax, eax
jne 0x7d559e
mov ebx, dword [esp + 0x1c]
mov edi, dword [esp + 0x10]
cmp ebx, edi
ja case.0x7cde44.85
mov esi, dword [esp + 4]
mov eax, dword [esi + 0x150]
test eax, eax
jne 0x7ce036
jmp case.0x7cde44.85
cmp edi, ebx
jb 0x7d25f0
mov eax, dword [esi + 0x150]
test eax, eax
je 0x7d2600
sub esp, 0xc
add ebx, dword [esi + 0x158]
push dword [esi + 0x154]
call eax
add esp, 0x10
test eax, eax
je 0x7ce020
mov eax, ebp
sub eax, dword [esp + 0x18]
mov dword [esp + 0x1c], 0xffffffff
sar eax, 2
mov dword [esp + 8], 9
imul edi, eax, 0xcccccccd
mov eax, dword [esp + 4]
movzx ecx, byte [eax + 0x51]
mov eax, dword [esp]
mov eax, dword [eax + 0x7c]
test cl, cl
jne 0x7ce116
test eax, eax
je 0x7ce220
mov ecx, dword [esp + 8]
mov esi, dword [esp]
mov ebx, ecx
mov dword [esi + 0x28], ecx
and ebx, 0xfb
cmp ecx, 0xc0a
je 0x7ce238
cmp ebx, 0xa
jne 0x7ce130
mov eax, dword [esp + 4]
call fcn.00769f80
jmp 0x7ce130
mov dword [esp + 0x10], 0
mov ebp, dword [esp + 0x18]
xor edi, edi
mov byte [esp + 0x3a], 0
mov esi, dword [esp + 4]
mov ecx, dword [esp]
cmp byte [esi + 0x51], 1
sbb eax, eax
and eax, 2
add eax, 7
mov dword [ecx + 0x28], eax
mov dword [esp + 8], eax
call fcn.00770370
sub esp, 4
push eax
push 0xbec70c
push ecx
call fcn.00795be0
movzx ecx, byte [esi + 0x51]
add esp, 0x10
mov eax, dword [esp]
mov eax, dword [eax + 0x7c]
test cl, cl
je 0x7ce083
test eax, eax
je 0x7d2690
mov eax, dword [esp]
mov dword [esp + 8], 7
mov dword [eax + 0x28], 7
sub esp, 0xc
mov esi, dword [esp + 0xc]
push dword [esi + 0x7c]
push dword [esi + 0xc0]
push edi
push str.statement_aborts_at__d:___s___s
push dword [esp + 0x24]
call fcn.00787f60
add esp, 0x20
mov eax, esi
call fcn.007b5370
cmp byte [esp + 0x3a], 0
mov esi, 1
jne 0x7ce2b0
mov edi, dword [esp + 0x1c]
cmp dword [esp + 0x10], edi
jb 0x7ce1f0
mov eax, dword [esp + 4]
mov eax, dword [eax + 0x150]
test eax, eax
je 0x7ce1f0
mov edi, dword [esp + 0x10]
mov ebx, dword [esp + 0x1c]
mov dword [esp + 8], ebp
mov ebp, dword [esp + 4]
jmp 0x7ce1a1
cmp ebx, edi
ja 0x7ce1f0
mov eax, dword [ebp + 0x150]
test eax, eax
je 0x7ce1f0
sub esp, 0xc
add ebx, dword [ebp + 0x158]
push dword [ebp + 0x154]
call eax
add esp, 0x10
test eax, eax
je 0x7ce193
mov ebp, dword [esp + 8]
mov dword [esp + 0x1c], 0xffffffff
mov dword [esp + 8], 9
mov eax, ebp
sub eax, dword [esp + 0x18]
sar eax, 2
imul edi, eax, 0xcccccccd
mov eax, dword [esp + 4]
movzx ecx, byte [eax + 0x51]
jmp 0x7ce108
mov eax, dword [esp]
mov edi, dword [esp + 0x10]
mov ecx, dword [eax + 0xa0]
add dword [eax + 0xb4], edi
test ecx, ecx
je 0x7ce20f
mov eax, dword [esp]
call fcn.0076d170
add esp, 0x15c
mov eax, esi
pop ebx
pop esi
pop edi
pop ebp
ret
cmp dword [esp + 8], 0xc0a
jne 0x7d3f67
mov esi, dword [esp]
mov dword [esi + 0x28], 0xc0a
sub esp, 0xc
push eax
mov esi, dword [esp + 0x10]
push dword [esi + 0xc0]
push edi
push str.statement_aborts_at__d:___s___s
push 0xc0a
call fcn.00787f60
add esp, 0x20
mov eax, esi
call fcn.007b5370
mov eax, dword [esp + 4]
test dword [eax + 0x50], 0xffff00
jne 0x7ce159
mov eax, dword [esp + 4]
mov ebx, dword [eax + 0xbc]
mov byte [eax + 0x51], 1
test ebx, ebx
jle 0x7ce28d
mov dword [eax + 0x108], 1
mov eax, dword [esp + 4]
mov esi, 1
call fcn.00769140
cmp byte [esp + 0x3a], 0
je 0x7ce169
lea esi, [esi]
lea esi, [esi]
movzx edx, byte [esp + 0x3a]
mov eax, dword [esp + 4]
sub edx, 1
call fcn.00777f70
jmp 0x7ce169
mov dword [esp + 0x10], 0
mov ebp, dword [esp + 0x18]
xor edi, edi
mov byte [esp + 0x3a], 0
mov eax, dword [esp + 4]
test dword [eax + 0x50], 0xffff00
jne 0x7ce311
mov edx, dword [eax + 0xbc]
mov byte [eax + 0x51], 1
test edx, edx
jle 0x7ce308
mov dword [eax + 0x108], 1
mov eax, dword [esp + 4]
call fcn.00769140
sub esp, 8
push 0xbeca54
push dword [esp + 0xc]
call fcn.00795be0
mov eax, dword [esp + 0x14]
add esp, 0x10
movzx ecx, byte [eax + 0x51]
mov dword [esp + 8], 7
jmp 0x7ce108
mov eax, dword [esp]
add dword [eax + 0xac], 1
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov eax, dword [eax + 0x60]
mov esi, dword [eax + edx*4]
cmp byte [esi], 1
mov edi, dword [esi + 0x28]
je 0x7d28c2
mov eax, edi
call fcn.00788c30
mov dword [esp + 8], eax
test eax, eax
je 0x7d3cff
cmp dword [esp + 8], 0x10
je 0x7d3853
mov byte [esi + 3], 0
mov dword [esi + 0x1c], 0
mov eax, ebp
sub eax, dword [esp + 0x18]
sar eax, 2
imul edi, eax, 0xcccccccd
mov eax, dword [esp + 4]
movzx ecx, byte [eax + 0x51]
jmp 0x7ce108
mov eax, dword [ebp + 8]
lea edx, [eax + eax*4]
mov eax, dword [esp]
mov eax, dword [eax + 0x58]
lea ebx, [eax + edx*8]
test word [ebx + 8], 0x2400
jne 0x7d46c8
mov esi, 4
mov word [ebx + 8], si
mov esi, dword [ebp + 0x10]
test esi, esi
je 0x7d5282
sub esp, 0xc
push esi
call sub.msvcrt.dll_strlen
add esp, 0x10
and eax, 0x3fffffff
cmp byte [esp + 0x3b], 1
mov dword [ebp + 4], eax
je 0x7ce45c
sub esp, 8
mov ecx, 0xffffffff
mov edx, esi
mov eax, ebx
push 0
push 1
call fcn.00780ba0
mov dword [esp + 0x18], eax
add esp, 0x10
test eax, eax
jne 0x7d0af3
movzx eax, word [ebx + 8]
test al, 2
je 0x7ce434
movzx edx, byte [esp + 0x3b]
cmp byte [ebx + 0xa], dl
je 0x7ce434
mov eax, ebx
call fcn.00782920
test eax, eax
jne 0x7cf0a1
movzx eax, word [ebx + 8]
or ah, 8
mov dword [ebx + 0x18], 0
mov word [ebx + 8], ax
cmp byte [ebp + 1], 0xf9
je 0x7d53de
mov byte [ebp + 1], 0xf9
mov eax, dword [ebx + 0x10]
mov dword [ebp + 0x10], eax
mov eax, dword [ebx + 0xc]
mov dword [ebp + 4], eax
mov edx, dword [esp + 4]
cmp dword [edx + 0x6c], eax
jl 0x7d0af3
mov byte [ebp], 0x47
mov eax, dword [ebp + 8]
lea edx, [eax + eax*4]
mov eax, dword [esp]
mov eax, dword [eax + 0x58]
lea eax, [eax + edx*8]
test word [eax + 8], 0x2400
jne 0x7d2942
mov ecx, 4
mov word [eax + 8], cx
mov edx, 0xa02
movzx ecx, byte [esp + 0x3b]
mov word [eax + 8], dx
mov edx, dword [ebp + 0x10]
mov dword [eax + 0x10], edx
mov edx, dword [ebp + 4]
mov byte [eax + 0xa], cl
mov dword [eax + 0xc], edx
mov edx, dword [ebp + 0xc]
test edx, edx
jle case.0x7cde44.85
mov esi, dword [esp + 0x14]
lea ecx, [edx + edx*4]
movzx edx, word [ebp + 2]
xor edx, dword [esi + ecx*8]
or edx, dword [esi + ecx*8 + 4]
jne case.0x7cde44.85
mov edi, 0xa10
mov word [eax + 8], di
jmp case.0x7cde44.85
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov eax, dword [eax + 0x60]
mov esi, dword [eax + edx*4]
test esi, esi
je case.0x7cde44.96
mov eax, dword [ebp + 8]
cmp dword [esi + 0x34], eax
je 0x7ce5b4
mov eax, dword [esp]
movzx eax, byte [eax + 0x98]
mov byte [esp + 8], al
and eax, 3
cmp al, 1
je 0x7d64e8
mov esi, dword [ebp + 0xc]
mov edx, dword [esp + 4]
mov dword [esp + 8], 0
mov edi, dword [ebp + 8]
mov eax, esi
shl eax, 4
add eax, dword [edx + 0x10]
mov edx, dword [eax + 4]
mov dword [esp + 0x20], edx
movzx edx, word [ebp + 2]
cmp bl, 0x61
je 0x7d3beb
and edx, 0x10
jne 0x7d3c1b
movzx eax, byte [ebp + 1]
cmp al, 0xf7
je 0x7d3bdf
xor ecx, ecx
xor ebx, ebx
cmp al, 0xfd
jne 0x7ce562
mov ecx, dword [ebp + 0x10]
sub esp, 8
mov edx, dword [ebp + 4]
push 0
push esi
mov eax, dword [esp + 0x10]
call fcn.007b4cb0
add esp, 0x10
mov esi, eax
test eax, eax
je 0x7cf0a1
sub esp, 8
or byte [eax + 8], 4
mov edx, edi
mov byte [eax + 2], 1
mov dword [eax + 0x34], edi
push dword [eax + 0x28]
push ebx
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x30]
call fcn.00788f80
mov dword [esi + 0x2c], ebx
mov dword [esp + 0x18], eax
add esp, 0x10
cmp byte [ebp + 1], 0xf7
setne byte [esi + 4]
movzx eax, word [ebp + 2]
mov edx, dword [esi + 0x28]
mov edi, dword [esp + 8]
and eax, 3
mov byte [edx + 3], al
test edi, edi
jne 0x7ce385
add ebp, 0x14
jmp 0x7cde30
mov eax, dword [ebp + 0xc]
mov edi, dword [esp + 0x14]
lea eax, [eax + eax*4]
test byte [edi + eax*8 + 8], 1
je case.0x7cde44.85
mov eax, ebp
sub eax, dword [esp + 0x18]
sar eax, 2
imul ebx, eax, 0xcccccccd
mov eax, dword [ebp + 4]
test eax, eax
jne 0x7d685b
mov edi, dword [esp]
mov eax, dword [edi + 0xc8]
test eax, eax
je 0x7d6962
mov edx, dword [eax + 4]
mov esi, dword [esp + 4]
sub dword [edi + 0xd0], 1
mov dword [edi + 0xc8], edx
mov edx, dword [edi + 0x2c]
add dword [esi + 0x68], edx
mov dword [esi + 0x64], edx
call fcn.007b4c20
cmp dword [ebp + 8], 4
je 0x7d3ca9
mov edi, dword [edi + 0x68]
mov dword [esp + 0x18], edi
mov esi, dword [esp]
lea eax, [eax + eax*4]
mov edi, dword [esi + 0x58]
mov esi, dword [esp + 0x18]
lea ebp, [esi + eax*4]
mov dword [esp + 0x14], edi
add ebp, 0x14
jmp 0x7cde30
mov eax, dword [ebp + 4]
mov edi, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea edx, [edi + eax*8]
mov eax, dword [ebp + 0xc]
sub eax, 1
mov dword [edx], eax
sar eax, 0x1f
mov dword [edx + 4], eax
mov eax, 4
mov word [edx + 8], ax
mov eax, dword [ebp + 8]
test eax, eax
je case.0x7cde44.85
jmp 0x7ceaf3
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x14]
mov esi, 4
mov edi, dword [esp + 0x18]
lea eax, [eax + eax*4]
lea edx, [ecx + eax*8]
mov eax, ebp
sub eax, edi
mov ecx, dword [edx]
mov word [edx + 8], si
sar eax, 2
imul eax, eax, 0xcccccccd
mov dword [edx], eax
sar eax, 0x1f
mov dword [edx + 4], eax
lea eax, [ecx + ecx*4]
lea ebp, [edi + eax*4]
jmp case.0x7cde44.85
mov eax, dword [esp]
mov edx, dword [eax + 0xc8]
mov eax, dword [eax + 0x68]
test edx, edx
je 0x7d4730
mov ecx, ebp
sub ecx, eax
sar ecx, 2
imul ecx, ecx, 0xcccccccd
mov eax, ecx
and ecx, 7
shr eax, 3
add eax, dword [edx + 0x18]
movzx ebx, byte [eax]
bt ebx, ecx
mov edx, ebx
jb 0x7d1f70
mov ebx, 1
shl ebx, cl
or edx, ebx
mov byte [eax], dl
mov eax, dword [esp]
mov eax, dword [eax + 0x68]
mov eax, dword [eax + 4]
mov dword [ebp + 4], eax
jmp case.0x7cde44.85
mov eax, dword [ebp + 4]
mov edi, dword [esp + 0x14]
mov edx, dword [ebp + 0xc]
lea eax, [eax + eax*4]
lea eax, [edi + eax*8]
call fcn.0076cff0
test eax, eax
je case.0x7cde44.85
jmp 0x7d1f70
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x14]
mov edx, dword [ebp + 8]
lea eax, [eax + eax*4]
lea edx, [edx + edx*4]
lea eax, [ecx + eax*8]
lea ebx, [ecx + edx*8]
test byte [eax + 8], 1
je 0x7d4445
test word [ebx + 8], 0x2400
jne 0x7d39a4
mov eax, 1
mov word [ebx + 8], ax
jmp case.0x7cde44.85
mov ecx, dword [ebp + 0xc]
mov eax, dword [ebp + 4]
xor edx, edx
test ecx, ecx
mov ecx, dword [esp + 0x14]
lea eax, [eax + eax*4]
sete dl
lea eax, [ecx + eax*8]
call fcn.0076cff0
test eax, eax
jne case.0x7cde44.85
jmp 0x7d1f70
mov eax, dword [ebp + 4]
mov esi, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea ebx, [esi + eax*8]
movzx eax, word [ebx + 8]
test al, 4
je 0x7d4480
and ax, 0x3e40
or eax, 4
mov word [ebx + 8], ax
jmp case.0x7cde44.85
mov ecx, dword [esp + 0x3c]
test ecx, ecx
js 0x7d3280
jne 0x7d471d
mov eax, dword [ebp + 8]
mov edx, dword [esp + 0x18]
lea eax, [eax + eax*4]
lea ebp, [edx + eax*4 - 0x14]
jmp case.0x7cde44.85
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov eax, dword [eax + 0x60]
mov eax, dword [eax + edx*4]
cmp byte [eax + 2], 0
je case.0x7cde44.85
mov eax, dword [ebp + 0xc]
mov edx, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea eax, [edx + eax*8]
test word [eax + 8], 0x2400
jne 0x7d5824
mov edx, 1
mov word [eax + 8], dx
mov eax, dword [ebp + 8]
jmp 0x7ceaf3
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov ecx, dword [esp + 0x14]
mov eax, dword [eax + 0x60]
mov edi, dword [eax + edx*4]
xor eax, eax
mov word [edi + 2], ax
mov eax, dword [ebp + 0xc]
cmp byte [edi + 4], 0
mov dword [edi + 0x1c], 0
lea eax, [eax + eax*4]
lea ecx, [ecx + eax*8]
jne 0x7d2ab4
mov eax, dword [edi + 0x28]
and ebx, 1
movzx edx, byte [eax + 3]
mov dword [esp + 8], eax
mov eax, dword [edi + 0x2c]
and edx, 2
cmp bl, 1
mov byte [esp + 0x20], dl
mov edx, dword [ebp + 0x10]
mov dword [esp + 0xe8], eax
lea eax, [esp + 0xa0]
mov word [esp + 0xf0], dx
sbb edx, edx
and edx, 2
mov dword [esp + 0xec], ecx
sub edx, 1
mov byte [esp + 0xf6], 0
mov byte [esp + 0xf2], dl
push eax
push 0
push 0
push 0
lea eax, [esp + 0xf8]
mov edx, eax
mov eax, dword [esp + 0x18]
call fcn.007af0f0
mov dword [esp + 0x18], eax
add esp, 0x10
test eax, eax
jne 0x7ce385
cmp byte [esp + 0x20], 0
mov eax, dword [esp + 0xa0]
je 0x7ce90b
cmp byte [esp + 0xf6], 0
mov dword [esp + 8], 1
je 0x7d5c74
cmp esi, 0x17
jle 0x7d3e54
test eax, eax
js 0x7d5309
cmp esi, 0x19
jne 0x7ce929
test eax, eax
je 0x7d5309
mov dword [esp + 0xa0], 0
mov eax, dword [esp + 8]
test eax, eax
je 0x7d2b39
add ebp, 0x14
jmp 0x7d2b39
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov eax, dword [eax + 0x60]
mov eax, dword [eax + edx*4]
test eax, eax
jne case.0x7cde44.85
jmp case.0x7cde44.11
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov eax, dword [eax + 0x60]
mov esi, dword [eax + edx*4]
test byte [esi + 8], 8
jne case.0x7cde44.85
mov eax, dword [ebp + 0xc]
mov edx, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea edi, [edx + eax*8]
mov eax, dword [ebp + 0x10]
test eax, eax
jle 0x7d31b6
mov edx, dword [esi + 0x2c]
mov word [esp + 0xf0], ax
mov byte [esp + 0xf2], 0
mov eax, dword [esi + 0x28]
mov dword [esp + 0xe8], edx
mov dword [esp + 0xec], edi
mov dword [esp + 8], eax
jmp 0x7cea0e
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov ecx, dword [esp + 0x14]
mov eax, dword [eax + 0x60]
mov esi, dword [eax + edx*4]
mov eax, dword [ebp + 0xc]
lea eax, [eax + eax*4]
lea edi, [ecx + eax*8]
mov eax, dword [ebp + 0x10]
test eax, eax
jle 0x7d31b6
mov edx, dword [esi + 0x2c]
mov byte [esp + 0xf2], 0
mov ecx, dword [esi + 0x28]
mov word [esp + 0xf0], ax
mov dword [esp + 0xe8], edx
mov dword [esp + 0xec], edi
mov dword [esp + 8], ecx
cmp bl, 0x1c
je 0x7d51a4
lea eax, [esp + 0xa0]
xor ebx, ebx
push eax
push 0
push 0
push 0
mov eax, dword [esp + 0x18]
lea edx, [esp + 0xf8]
call fcn.007af0f0
mov dword [esp + 0x18], eax
add esp, 0x10
mov edi, dword [esp + 8]
test edi, edi
jne 0x7ce385
mov eax, dword [esp + 0xa0]
mov byte [esi + 3], 0
mov dword [esi + 0x1c], 0
test eax, eax
mov dword [esi + 0x20], eax
setne byte [esi + 2]
cmp byte [ebp], 0x1e
je 0x7d3cc2
or eax, ebx
je case.0x7cde44.85
jmp 0x7d1f70
mov eax, dword [ebp + 0xc]
mov edi, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea eax, [edi + eax*8]
test byte [eax + 8], 0x24
je 0x7d434b
mov esi, dword [eax]
mov edi, dword [eax + 4]
mov eax, dword [esp]
mov edx, dword [ebp + 4]
lea ecx, [esp + 0xe8]
mov eax, dword [eax + 0x60]
mov ebx, dword [eax + edx*4]
xor edx, edx
mov eax, dword [ebx + 0x28]
mov dword [esp + 0xe8], 0
push ecx
push 0
push edi
push esi
call fcn.007af0f0
xor ecx, ecx
mov dword [ebx + 0x1c], 0
mov dword [esp + 0x18], eax
mov word [ebx + 2], cx
mov eax, dword [esp + 0xf8]
add esp, 0x10
mov dword [ebx + 0x40], esi
mov dword [ebx + 0x44], edi
mov dword [ebx + 0x20], eax
test eax, eax
je 0x7d0e82
mov eax, dword [ebp + 8]
test eax, eax
je 0x7d6bb9
mov edi, dword [esp + 0x18]
lea eax, [eax + eax*4]
lea ebp, [edi + eax*4 - 0x14]
add ebp, 0x14
jmp 0x7cde30
mov eax, dword [ebp + 0xc]
mov esi, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea eax, [esi + eax*8]
jmp 0x7cea8a
mov eax, dword [ebp + 0xc]
mov ecx, dword [esp + 0x14]
cmp word [ebp + 2], 0
mov ebx, dword [ebp + 0x10]
lea eax, [eax + eax*4]
lea esi, [ecx + eax*8]
jne 0x7d495e
mov eax, dword [esp]
mov edi, dword [esp + 4]
mov eax, dword [eax + 0xd0]
cmp eax, dword [edi + 0x94]
jge 0x7d6d35
mov edi, dword [ebx + 0xc]
mov dword [esp + 0x20], edi
test byte [esi + 8], 0x10
jne 0x7d3873
cmp edi, 1
mov ecx, dword [ebx + 4]
mov eax, edi
adc eax, dword [ebx + 8]
mov dword [esp + 0x28], eax
lea eax, [eax + eax*4]
lea edx, [edi + eax*2 + 0x14]
lea eax, [ecx + 0xe]
add ecx, 7
cmovns eax, ecx
sar eax, 3
lea eax, [eax + edx*4]
mov dword [esp + 0x14], eax
mov edx, eax
mov ecx, eax
mov eax, dword [esp + 4]
sar ecx, 0x1f
call fcn.00769450
mov edi, eax
test eax, eax
je 0x7cf0a1
test word [esi + 8], 0x2400
jne 0x7cebaf
mov edx, dword [esi + 0x18]
test edx, edx
je 0x7cebb6
mov eax, esi
call fcn.00767e50
mov eax, 0x410
mov ecx, dword [esp]
mov edx, dword [esp + 0x28]
mov dword [esi + 0x10], edi
mov word [esi + 8], ax
mov eax, dword [esp + 0x14]
mov dword [esi + 0x24], 0x761d70
mov dword [esi + 0xc], eax
mov eax, ebp
sub eax, dword [esp + 0x18]
lea ebp, [edi + 0x50]
sar eax, 2
mov esi, dword [ebx + 0xc]
mov dword [edi + 0x3c], edx
imul eax, eax, 0xcccccccd
mov dword [edi], ecx
mov dword [edi + 0x40], esi
mov dword [esp + 0x14], ebp
mov dword [edi + 0x30], eax
mov eax, dword [ecx + 0x58]
mov dword [edi + 0x10], eax
mov eax, dword [ecx + 0x18]
mov dword [edi + 0x38], eax
mov eax, dword [ecx + 0x60]
mov dword [edi + 0x14], eax
mov eax, dword [ecx + 0x1c]
mov dword [edi + 0x2c], eax
mov eax, dword [ecx + 0x68]
mov dword [edi + 8], eax
mov eax, dword [ecx + 0x6c]
mov dword [edi + 0x34], eax
mov eax, dword [ebx + 0x14]
mov dword [edi + 0x1c], eax
lea eax, [edx + edx*4]
lea edx, [edi + eax*8 + 0x50]
mov eax, dword [ecx + 0xd0]
mov ecx, ebp
cmp edx, ebp
je 0x7d62c3
mov ebp, dword [esp + 4]
mov word [ecx + 8], 0x80
add ecx, 0x28
mov dword [ecx - 8], ebp
cmp edx, ecx
jne 0x7cec40
mov dword [esp + 0x20], esi
mov ebp, dword [esp]
add eax, 1
mov dword [ebp + 0xd0], eax
mov eax, dword [ebp + 0xc8]
mov dword [edi + 4], eax
mov eax, dword [esp + 4]
mov edx, dword [eax + 0x2c]
mov eax, dword [eax + 0x28]
mov dword [edi + 0x20], eax
mov eax, dword [ebp + 0x2c]
mov dword [edi + 0x24], edx
mov dword [edi + 0x44], eax
mov eax, dword [ebp]
mov eax, dword [eax + 0x64]
mov dword [edi + 0x48], eax
mov eax, dword [ebp + 0xdc]
mov dword [edi + 0x28], eax
mov eax, dword [esp + 0x14]
mov dword [ebp + 0x60], ecx
mov dword [ebp + 0x58], eax
mov eax, dword [esp + 0x28]
mov dword [ebp + 0xdc], 0
mov dword [ebp + 0x18], eax
mov eax, esi
and eax, 0xffff
mov dword [ebp + 0x2c], 0
mov dword [ebp + 0x1c], eax
mov eax, dword [esp + 0x20]
mov dword [ebp + 0xc8], edi
lea edx, [ecx + eax*4]
mov ecx, dword [ebx + 4]
mov dword [edi + 0x18], edx
lea eax, [ecx + 0xe]
add ecx, 7
cmovns eax, ecx
sub esp, 4
sar eax, 3
push eax
push 0
push edx
call sub.msvcrt.dll_memset
mov ecx, dword [ebx]
mov eax, dword [ebx + 4]
mov dword [esp + 0x28], ecx
add esp, 0x10
mov dword [ebp + 0x68], ecx
mov dword [ebp + 0x6c], eax
lea ebp, [ecx - 0x14]
jmp 0x7cdfe8
mov eax, dword [ebp + 4]
test eax, eax
jne 0x7d2c92
mov esi, dword [esp]
mov eax, dword [esi + 0x44]
or eax, dword [esi + 0x40]
jne case.0x7cde44.85
mov esi, dword [esp + 4]
mov eax, dword [esi + 0x1ec]
or eax, dword [esi + 0x1e8]
jne case.0x7cde44.85
jmp 0x7d1f70
mov eax, dword [ebp + 4]
mov esi, dword [esp + 0x14]
xor ecx, ecx
lea eax, [eax + eax*4]
lea esi, [esi + eax*8]
mov eax, dword [esi]
mov edx, dword [esi + 4]
cmp ecx, eax
sbb ecx, edx
jge case.0x7cde44.85
mov ecx, dword [ebp + 0xc]
mov ebx, ecx
sar ebx, 0x1f
sub eax, ecx
sbb edx, ebx
mov dword [esi], eax
mov dword [esi + 4], edx
mov eax, dword [ebp + 8]
jmp 0x7ceaf3
mov eax, dword [ebp + 4]
mov esi, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea edx, [esi + eax*8]
mov ebx, dword [edx + 4]
mov ecx, dword [edx]
mov esi, ebx
or esi, ecx
je case.0x7cde44.85
xor esi, esi
mov eax, dword [ebp + 8]
cmp esi, ecx
sbb esi, ebx
jge 0x7ceaf3
add ecx, 0xffffffff
adc ebx, 0xffffffff
mov dword [edx], ecx
mov dword [edx + 4], ebx
jmp 0x7ceaf3
mov eax, dword [ebp + 4]
mov esi, dword [esp + 0x14]
lea eax, [eax + eax*4]
test byte [esi + eax*8 + 8], 1
je case.0x7cde44.85
jmp 0x7d1f70
mov eax, dword [ebp + 4]
mov edi, dword [esp + 0x14]
lea eax, [eax + eax*4]
test byte [edi + eax*8 + 8], 1
jne case.0x7cde44.85
jmp 0x7d1f70
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea edi, [ecx + eax*8]
mov eax, dword [ebp + 0xc]
lea eax, [eax + eax*4]
lea ebx, [ecx + eax*8]
movzx eax, word [edi + 8]
movzx ecx, word [ebx + 8]
mov edx, eax
mov word [esp + 0x20], ax
mov word [esp + 0x40], ax
movzx eax, word [ebp + 2]
or edx, ecx
mov word [esp + 0x28], cx
mov word [esp + 0x50], cx
mov word [esp + 0x30], ax
test dl, 1
jne 0x7d2c40
movzx eax, byte [esp + 0x30]
and eax, 0x47
cmp al, 0x42
jle 0x7d3d9e
and edx, 2
je 0x7d566e
movzx eax, word [esp + 0x20]
and eax, 0x2e
cmp ax, 2
je 0x7d6946
movzx edx, word [esp + 0x50]
mov eax, edx
and eax, 0x2e
cmp ax, 2
je 0x7d6930
movzx eax, word [edi + 8]
and eax, edx
test al, 4
je 0x7d3de8
mov eax, dword [edi]
mov esi, dword [edi + 4]
mov ecx, dword [ebx]
mov edx, dword [ebx + 4]
mov dword [esp + 0x40], eax
movzx eax, word [ebp + 2]
mov dword [esp + 0x50], esi
movzx esi, byte [ebp]
mov word [esp + 0x30], ax
and eax, 0x20
mov word [esp + 0x48], ax
mov eax, dword [esp + 0x40]
cmp eax, ecx
mov eax, dword [esp + 0x50]
sbb eax, edx
jl 0x7d2c74
mov eax, dword [esp + 0x40]
cmp ecx, eax
sbb edx, dword [esp + 0x50]
jge 0x7d3e1d
mov edx, 0xffffffff
movzx esi, byte [esi + 0xbf46f8]
movzx ecx, word [esp + 0x28]
cmp word [esp + 0x48], 0
mov word [ebx + 8], cx
movzx ecx, word [esp + 0x20]
mov word [edi + 8], cx
je 0x7d3d91
mov ecx, dword [ebp + 8]
mov edi, dword [esp + 0x14]
lea ecx, [ecx + ecx*4]
lea ecx, [edi + ecx*8]
test byte [esp + 0x30], 8
je 0x7cef0e
xor eax, eax
cmp byte [ebp], 0x35
mov dword [esp + 0x3c], edx
sete al
cmp eax, esi
je case.0x7cde44.85
movzx eax, word [ecx + 8]
mov dword [ecx], esi
sar esi, 0x1f
mov dword [ecx + 4], esi
and ax, 0x3e40
mov dword [esp + 0x3c], edx
or eax, 4
mov word [ecx + 8], ax
jmp case.0x7cde44.85
mov ebx, dword [esp + 0x3c]
test ebx, ebx
je case.0x7cde44.85
jmp 0x7d1f70
mov eax, dword [esp]
mov edx, dword [ebp + 4]
cmp bl, 0x27
mov esi, dword [esp + 0x14]
mov eax, dword [eax + 0x60]
mov edx, dword [eax + edx*4]
mov eax, dword [edx + 0x2c]
mov dword [esp + 0xa0], eax
mov eax, dword [ebp + 0x10]
mov word [esp + 0xa8], ax
setbe al
neg eax
mov byte [esp + 0xaa], al
mov eax, dword [ebp + 0xc]
mov ebx, dword [edx + 0x28]
lea eax, [eax + eax*4]
lea eax, [esi + eax*8]
mov esi, 0x7ffffffe
mov dword [esp + 0xa4], eax
mov eax, ebx
call fcn.00761b80
mov ecx, dword [ebx + 0x2c]
xor edx, edx
mov eax, ecx
add eax, 0xffffffff
adc edx, 0xffffffff
mov dword [esp + 8], eax
mov eax, 0
cmp esi, dword [esp + 8]
mov dword [esp + 0xc], edx
sbb eax, dword [esp + 0xc]
jb 0x7d4e8d
mov eax, dword [esp + 4]
xor edi, edi
sub esp, 0xc
xor edx, edx
mov word [esp + 0xfc], di
mov dword [esp + 0x114], eax
mov dword [esp + 0x10c], 0
lea eax, [esp + 0xf4]
push eax
mov eax, ebx
xor ebx, ebx
call fcn.007af090
mov dword [esp + 0x18], eax
add esp, 0x10
test eax, eax
je 0x7d3308
mov edx, ebx
lea eax, [ebx + 1]
mov ebx, dword [esp + 8]
neg edx
test byte [ebp], 1
cmove eax, edx
test ebx, ebx
jne 0x7ce385
test eax, eax
jle case.0x7cde44.85
jmp 0x7d1f70
mov eax, dword [ebp + 4]
mov edx, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea ebx, [edx + eax*8]
movzx eax, word [ebx + 8]
test al, 0x10
jne 0x7d2cad
test ah, 0x24
jne 0x7d3952
mov esi, 1
mov word [ebx + 8], si
jmp case.0x7cde44.11
mov eax, dword [ebp + 4]
mov edx, dword [esp + 0x14]
mov edi, dword [ebp + 0xc]
lea eax, [eax + eax*4]
lea esi, [edx + eax*8]
mov eax, dword [ebp + 8]
lea eax, [eax + eax*4]
lea ebx, [edx + eax*8]
jmp 0x7cf082
test edi, edi
je case.0x7cde44.85
add ebx, 0x28
add esi, 0x28
sub edi, 1
mov ecx, 0x1000
mov edx, esi
mov eax, ebx
call fcn.00773bb0
test byte [ebx + 9], 0x10
je 0x7cf071
mov eax, ebx
call fcn.00780b40
test eax, eax
je 0x7cf071
mov eax, ebp
sub eax, dword [esp + 0x18]
sar eax, 2
imul edi, eax, 0xcccccccd
jmp 0x7ce2e3
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov eax, dword [eax + 0x60]
mov eax, dword [eax + edx*4]
mov esi, dword [eax + 0x28]
mov eax, esi
call fcn.00788c30
mov dword [esp + 8], eax
test eax, eax
je 0x7d4290
cmp dword [esp + 8], 0x10
jne 0x7ce385
mov eax, dword [ebp + 8]
mov dword [esp + 8], 0
jmp 0x7ceaf3
mov eax, dword [ebp + 4]
test eax, eax
je case.0x7cde44.85
mov edx, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea eax, [edx + eax*8]
test word [eax + 8], 0x2400
jne 0x7d52a4
mov ecx, 4
mov dword [eax], 0
mov dword [eax + 4], 0
mov word [eax + 8], cx
jmp case.0x7cde44.85
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea esi, [ecx + eax*8]
mov eax, esi
call fcn.0076cf00
movzx ecx, word [esi + 8]
and cx, 0x3e40
or ecx, 4
mov word [esi + 8], cx
mov ecx, dword [ebp + 8]
mov ebx, ecx
sar ebx, 0x1f
add eax, ecx
adc edx, ebx
mov dword [esi], eax
mov dword [esi + 4], edx
jmp case.0x7cde44.85
mov eax, dword [ebp + 4]
mov edx, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea ecx, [edx + eax*8]
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x30], ecx
lea eax, [eax + eax*4]
lea eax, [edx + eax*8]
mov dword [esp + 0x40], eax
mov eax, dword [ebp + 0x10]
mov dword [esp + 0x20], eax
test byte [ecx + 8], 0x10
je 0x7d4200
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x20]
mov ebx, dword [eax]
mov esi, dword [eax + 4]
mov eax, dword [esp + 0x30]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x28], eax
test ecx, ecx
jne 0x7d4087
mov eax, dword [esp + 0x28]
mov edx, ebx
mov ecx, esi
call fcn.00769a30
jmp case.0x7cde44.85
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov eax, dword [eax + 0x60]
mov esi, dword [eax + edx*4]
mov eax, dword [esi + 0x28]
mov dword [esp + 0xe8], 0
cmp bl, 0x81
jne 0x7cf1f8
mov dword [esi + 0x20], 0xffffffff
cmp byte [eax], 0
je case.0x7cde44.85
lea edx, [esp + 0xe8]
call fcn.00788dd0
mov edx, dword [esp + 0xe8]
mov byte [esi + 3], 0
mov dword [esp + 8], eax
mov byte [esi + 2], dl
mov dword [esi + 0x1c], 0
test eax, eax
jne 0x7ce385
mov eax, dword [ebp + 8]
test edx, edx
je case.0x7cde44.85
test eax, eax
jle case.0x7cde44.85
jmp 0x7ceaf3
mov eax, dword [ebp + 4]
mov esi, dword [esp + 0x14]
mov edx, 2
lea eax, [eax + eax*4]
lea eax, [esi + eax*8]
call fcn.0076cff0
mov edx, 2
mov ebx, eax
mov eax, dword [ebp + 8]
lea eax, [eax + eax*4]
lea eax, [esi + eax*8]
call fcn.0076cff0
cmp byte [ebp], 0x2c
je 0x7d3f01
lea edx, [ebx + ebx*2 + 0xbf4704]
movzx ecx, byte [edx + eax]
mov eax, dword [ebp + 0xc]
mov esi, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea edx, [esi + eax*8]
movzx eax, word [edx + 8]
and ax, 0x3e40
cmp ecx, 2
je 0x7d3ef5
mov dword [edx], ecx
or eax, 4
sar ecx, 0x1f
mov dword [edx + 4], ecx
mov word [edx + 8], ax
jmp case.0x7cde44.85
mov eax, dword [esp + 4]
movzx ecx, byte [eax + 0x51]
test cl, cl
jne 0x7cf0a1
mov eax, dword [ebp + 0x10]
mov ebx, dword [eax + 8]
test ebx, ebx
je 0x7d6762
mov eax, dword [ebx]
test eax, eax
je 0x7d6762
mov esi, dword [eax + 0x34]
test esi, esi
je case.0x7cde44.85
mov eax, dword [esp + 4]
mov edi, dword [ebp + 8]
mov edx, dword [esp + 0x14]
movzx eax, byte [eax + 0x56]
mov byte [esp + 0x20], al
mov eax, dword [esp]
mov ecx, dword [eax + 0x5c]
mov eax, dword [ebp + 0xc]
lea eax, [eax + eax*4]
mov dword [esp + 8], ecx
lea edx, [edx + eax*8]
mov eax, ecx
lea ecx, [ecx + edi*4]
test edi, edi
jle 0x7cf31e
mov dword [eax], edx
add eax, 4
add edx, 0x28
cmp ecx, eax
jne 0x7cf312
mov edx, dword [esp + 4]
movzx eax, word [ebp + 2]
mov byte [edx + 0x56], al
lea eax, [esp + 0xe8]
push eax
push dword [esp + 0xc]
push edi
push ebx
call esi
movzx ecx, byte [esp + 0x30]
mov edi, dword [esp + 0x14]
mov esi, eax
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x10]
mov byte [edi + 0x56], cl
lea ecx, [ebx + 8]
lea edx, [eax + 0x7c]
call fcn.00774eb0
add esp, 0x10
test esi, esi
jne 0x7d4e56
mov ecx, dword [ebp + 4]
test ecx, ecx
je 0x7cf384
mov eax, dword [esp + 0xe8]
mov edx, dword [esp + 0xec]
mov esi, dword [esp + 4]
mov dword [esi + 0x28], eax
mov dword [esi + 0x2c], edx
mov eax, dword [esp]
add dword [eax + 0x2c], 1
jmp case.0x7cde44.85
mov eax, dword [ebp + 4]
mov edx, dword [esp + 0x14]
mov esi, dword [ebp + 0xc]
lea eax, [eax + eax*4]
lea ebx, [edx + eax*8]
mov eax, dword [ebp + 8]
lea eax, [eax + eax*4]
lea edi, [edx + eax*8]
jmp 0x7cf3bf
add ebx, 0x28
add edi, 0x28
sub esi, 1
je case.0x7cde44.85
mov edx, ebx
mov eax, edi
call fcn.00768040
test byte [edi + 9], 0x10
je 0x7cf3b0
mov eax, edi
call fcn.00780b40
test eax, eax
je 0x7cf3b0
jmp 0x7cf0a1
mov eax, dword [ebp + 8]
mov edi, dword [esp + 0x14]
mov edx, dword [ebp + 4]
lea eax, [eax + eax*4]
lea edx, [edx + edx*4]
lea eax, [edi + eax*8]
mov ecx, dword [edi + edx*8 + 4]
mov edx, dword [edi + edx*8]
test word [eax + 8], 0x2400
jne 0x7d3f8e
mov dword [eax], edx
mov edx, 4
mov dword [eax + 4], ecx
mov word [eax + 8], dx
jmp case.0x7cde44.85
mov ebx, ebp
sub ebx, dword [esp + 0x18]
mov edx, dword [esp]
xor eax, eax
sar ebx, 2
imul ebx, ebx, 0xcccccccd
cmp eax, dword [edx + 0x40]
sbb eax, dword [edx + 0x44]
mov edi, ebx
jl 0x7d3165
mov edx, dword [esp]
mov eax, dword [edx]
mov eax, dword [eax + 0x1d8]
test eax, eax
jne 0x7d3199
mov edx, dword [esp]
mov ecx, dword [esp + 0x14]
mov eax, dword [edx + 0x20]
mov dword [esp + 8], eax
add eax, 2
or eax, 1
mov dword [edx + 0x20], eax
mov eax, dword [ebp + 4]
lea eax, [eax + eax*4]
lea esi, [ecx + eax*8]
mov eax, dword [ebp + 8]
mov dword [edx + 0x78], esi
test eax, eax
jle 0x7d2900
mov dword [esp + 8], ebx
mov ebx, ebp
mov ebp, dword [esp + 0x70]
jmp 0x7cf4a9
and ax, 0x202
cmp ax, 2
je 0x7cf4cf
add ebp, 1
add esi, 0x28
cmp dword [ebx + 8], ebp
jle 0x7d28fa
movzx eax, word [esi + 8]
test ah, 0x10
je 0x7cf490
mov eax, esi
call fcn.00780b40
test eax, eax
jne 0x7d509e
movzx eax, word [esi + 8]
and ax, 0x202
cmp ax, 2
jne 0x7cf49a
mov eax, esi
call fcn.00780ae0
jmp 0x7cf49a
mov eax, dword [ebp + 4]
mov esi, dword [esp + 0x14]
mov ecx, 0x1000
lea eax, [eax + eax*4]
lea edx, [esi + eax*8]
mov eax, dword [ebp + 8]
lea eax, [eax + eax*4]
lea eax, [esi + eax*8]
call fcn.00773bb0
jmp case.0x7cde44.85
mov eax, dword [ebp + 4]
mov edi, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea ebx, [edi + eax*8]
test byte [ebx + 8], 0x24
je case.0x7cde44.85
mov eax, ebx
call fcn.0076cfa0
movzx eax, word [ebx + 8]
fstp qword [ebx]
and ax, 0x3e40
or eax, 8
mov word [ebx + 8], ax
jmp case.0x7cde44.85
mov eax, dword [ebp + 4]
mov edx, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea ebx, [edx + eax*8]
test byte [ebx + 9], 0x40
je 0x7cf557
mov eax, ebx
call fcn.007809c0
mov dword [esp + 8], eax
test eax, eax
jne 0x7ce385
movzx ecx, byte [esp + 0x3b]
movzx edx, byte [ebp + 8]
mov eax, ebx
call fcn.0078ec50
mov dword [esp + 8], eax
test eax, eax
je case.0x7cde44.85
jmp 0x7ce385
xor edi, edi
test byte [ebp + 2], 1
jne 0x7d29e1
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 4]
mov edx, dword [ebp + 8]
mov esi, dword [ebp + 0x10]
mov dword [esp + 0x40], eax
mov dword [esp + 0x20], ecx
mov dword [esp + 0x28], edx
test eax, eax
jle case.0x7cde44.85
mov dword [esp + 0x3c], ebp
xor ebx, ebx
mov ebp, edi
mov edi, dword [esp + 0x14]
jmp 0x7cf5cd
add ebx, 1
cmp dword [esp + 0x40], ebx
je 0x7d3cf2
mov eax, ebx
test ebp, ebp
je 0x7cf5d7
mov eax, dword [ebp + ebx*4]
mov edx, dword [esi + 0x10]
movzx ecx, byte [edx + ebx]
mov byte [esp + 0x30], cl
mov ecx, dword [esp + 0x28]
lea edx, [eax + ecx]
add eax, dword [esp + 0x20]
mov ecx, dword [esi + ebx*4 + 0x14]
lea edx, [edx + edx*4]
lea eax, [eax + eax*4]
lea edx, [edi + edx*8]
lea eax, [edi + eax*8]
mov dword [esp + 0x48], edx
mov dword [esp + 0x50], eax
call fcn.0078dc30
test eax, eax
je 0x7cf5c0
mov ebp, dword [esp + 0x3c]
mov dword [esp + 0x3c], eax
mov eax, dword [esi + 0x10]
test byte [eax + ebx], 2
je 0x7cf637
mov eax, dword [esp + 0x50]
test byte [eax + 8], 1
jne 0x7cf633
mov eax, dword [esp + 0x48]
test byte [eax + 8], 1
je 0x7cf637
neg dword [esp + 0x3c]
mov edx, dword [esp + 0x3c]
mov eax, edx
neg eax
test byte [esp + 0x30], 1
cmove eax, edx
mov dword [esp + 0x3c], eax
jmp case.0x7cde44.85
mov dword [esp + 0xe8], 0
mov edx, dword [ebp + 8]
test edx, edx
je 0x7d23ee
mov eax, dword [esp + 4]
test byte [eax + 0x22], 0x10
je 0x7d23ee
mov dword [esp + 8], 8
jmp 0x7ce385
mov edi, dword [esp + 4]
mov eax, dword [ebp + 4]
shl eax, 4
add eax, dword [edi + 0x10]
mov edi, dword [eax + 4]
cmp byte [edi + 9], 0
mov ebx, dword [edi + 4]
je 0x7d3780
mov eax, edi
call fcn.0076c790
cmp byte [ebx + 0x11], 0
jne 0x7d378a
cmp byte [edi + 9], 0
je 0x7cf0e2
sub dword [edi + 0xc], 1
jne 0x7cf0e2
mov eax, edi
call fcn.0076c820
jmp 0x7cf0e2
mov edi, dword [esp + 4]
sub esp, 0xc
add byte [edi + 0x5a], 1
push 0
push 0
push 0
push dword [ebp + 0x10]
push edi
call fcn.007d80d0
sub byte [edi + 0x5a], 1
mov dword [esp + 0x28], eax
add esp, 0x20
test eax, eax
je case.0x7cde44.85
jmp 0x7ce385
mov eax, dword [esp]
mov ebx, dword [ebp + 4]
mov ecx, dword [esp + 4]
mov edx, dword [ebp + 0x10]
lea esi, [eax + 0x7c]
mov eax, ebx
shl eax, 4
add eax, dword [ecx + 0x10]
test edx, edx
je 0x7d294c
mov ecx, dword [esp + 4]
sub esp, 0xc
mov dword [esp + 0xfc], ebx
mov dword [esp + 0xf8], esi
mov dword [esp + 0xf4], ecx
mov esi, ecx
mov dword [esp + 0x104], 0
push edx
push str.sqlite_master
push dword [eax]
push str.SELECTFROM__w_._s_WHERE__s_ORDER_BY_rowid
push ecx
call fcn.00795c10
add esp, 0x20
mov ebx, eax
test eax, eax
je 0x7d6ed7
sub esp, 0xc
mov byte [esi + 0xa5], 1
mov dword [esp + 0x100], 0
mov dword [esp + 0x108], 0
push 0
lea edi, [esp + 0xf8]
push edi
push fcn.007ec5f0
push ebx
push esi
call fcn.007d80d0
mov dword [esp + 0x28], eax
add esp, 0x20
test eax, eax
jne 0x7d3563
mov eax, dword [esp + 0xf4]
mov dword [esp + 8], eax
test eax, eax
jne 0x7d3563
mov eax, dword [esp + 0xfc]
test eax, eax
je 0x7d573b
mov esi, dword [esp + 4]
mov edx, ebx
mov eax, esi
call fcn.00767880
mov byte [esi + 0xa5], 0
jmp 0x7d298f
mov edx, dword [ebp + 4]
mov eax, dword [esp + 4]
call fcn.007d8580
mov dword [esp + 8], eax
test eax, eax
je case.0x7cde44.85
jmp 0x7ce385
mov edi, dword [esp + 4]
mov eax, dword [ebp + 4]
xor ecx, ecx
mov edx, dword [ebp + 0x10]
shl eax, 4
add eax, dword [edi + 0x10]
mov eax, dword [eax + 0xc]
add eax, 8
call fcn.0076b3e0
mov edx, eax
mov eax, edi
call fcn.00777760
or dword [edi + 0x18], 1
jmp case.0x7cde44.85
mov ecx, dword [esp + 4]
mov eax, dword [ebp + 4]
mov edx, dword [ebp + 0x10]
shl eax, 4
add eax, dword [ecx + 0x10]
xor ecx, ecx
mov eax, dword [eax + 0xc]
add eax, 0x18
call fcn.0076b3e0
test eax, eax
je 0x7cf89c
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + 8]
cmp eax, edx
je 0x7d39d4
test edx, edx
je 0x7cf891
mov ecx, dword [edx + 0x14]
cmp ecx, eax
jne 0x7cf88d
jmp 0x7d5888
mov edx, dword [ecx + 0x14]
cmp eax, edx
je 0x7d588a
mov ecx, edx
test ecx, ecx
jne 0x7cf880
mov edx, eax
mov eax, dword [esp + 4]
call fcn.00776df0
mov eax, dword [esp + 4]
or dword [eax + 0x18], 1
jmp case.0x7cde44.85
mov eax, dword [ebp + 4]
mov esi, dword [esp + 4]
xor ecx, ecx
mov edx, dword [ebp + 0x10]
shl eax, 4
add eax, dword [esi + 0x10]
mov eax, dword [eax + 0xc]
add eax, 0x28
call fcn.0076b3e0
mov ebx, eax
test eax, eax
je case.0x7cde44.85
mov eax, dword [eax + 0x18]
cmp dword [ebx + 0x14], eax
je 0x7d3b18
mov esi, dword [esp + 4]
mov edx, ebx
mov eax, esi
call fcn.007774b0
or dword [esi + 0x18], 1
jmp case.0x7cde44.85
mov eax, dword [ebp + 4]
mov esi, dword [esp + 0x14]
mov ebx, dword [ebp + 0x10]
lea eax, [eax + eax*4]
lea edx, [esi + eax*8]
mov eax, dword [ebp + 8]
mov dword [esp + 0x20], edx
lea eax, [eax + eax*4]
lea eax, [edx + eax*8 - 0x28]
mov dword [esp + 0x40], eax
mov eax, dword [esp]
movzx eax, byte [eax + 0x93]
mov byte [esp + 0x60], al
mov eax, dword [ebp + 0xc]
lea eax, [eax + eax*4]
lea eax, [esi + eax*8]
mov dword [esp + 0x50], eax
test ebx, ebx
jne 0x7d3124
mov dword [esp + 0x28], 0
mov ebx, dword [esp + 0x40]
mov dword [esp + 0x48], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x30], 0
mov dword [esp + 0x34], 0
mov dword [esp + 0x58], ebp
jmp 0x7cf98e
shl eax, 0x11
add dword [esp + 0x28], 1
sar eax, 0x1f
and eax, 0xa
mov dword [ebx + 0x1c], eax
cmp ebx, dword [esp + 0x20]
je 0x7d2738
sub ebx, 0x28
movzx eax, word [ebx + 8]
test al, 1
jne 0x7cf970
test al, 0x24
je 0x7d2515
mov esi, dword [ebx]
mov edi, dword [ebx + 4]
add dword [esp + 0x28], 1
mov ecx, esi
test edi, edi
js 0x7d2534
mov ebp, 0x7f
mov edx, edi
cmp ebp, esi
mov ebp, 0
sbb ebp, edi
jl 0x7d254e
mov eax, esi
and eax, 0xfffffffe
or eax, edi
jne 0x7cf9dc
cmp byte [esp + 0x60], 3
ja 0x7d335a
add dword [esp + 0x30], 1
mov dword [ebx + 0x1c], 1
adc dword [esp + 0x34], 0
jmp 0x7cf981
mov eax, dword [ebp + 8]
lea edx, [eax + eax*4]
mov eax, dword [esp]
mov eax, dword [eax + 0x58]
lea edi, [eax + edx*8]
test word [edi + 8], 0x2400
jne 0x7d4079
mov ecx, 4
mov word [edi + 8], cx
mov eax, dword [ebp + 4]
mov edx, dword [esp + 4]
mov esi, dword [ebp + 0xc]
shl eax, 4
add eax, dword [edx + 0x10]
mov eax, dword [eax + 4]
cmp esi, 0xffffffff
mov dword [esp + 0x28], eax
mov eax, dword [eax + 4]
mov ebx, dword [eax]
movzx ecx, byte [ebx + 5]
cmove esi, ecx
cmp byte [ebx + 0x10], 2
mov dword [esp + 0x20], ecx
ja 0x7d3e8e
mov eax, dword [ebx + 0x40]
mov edx, dword [eax]
test edx, edx
je 0x7cfa5b
xor eax, eax
cmp eax, dword [ebx + 0x48]
sbb eax, dword [ebx + 0x4c]
cmovl esi, ecx
cmp byte [ebx + 0xf], 0
jne 0x7d2bb6
cmp esi, 5
jne 0x7d2bbf
mov eax, dword [ebx + 0xa8]
test eax, eax
je 0x7d4759
sub esp, 0xc
push eax
call sub.msvcrt.dll_strlen
add esp, 0x10
test eax, 0x3fffffff
je 0x7d4759
cmp byte [ebx + 0xd], 0
jne 0x7d4759
cmp byte [ebx + 4], 0
jne 0x7cfabc
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax]
cmp dword [eax], 1
jle 0x7d4759
mov eax, dword [eax + 0x34]
test eax, eax
je 0x7d4759
cmp dword [esp + 0x20], 5
mov esi, 5
je 0x7d4759
mov eax, dword [esp + 4]
cmp byte [eax + 0x4f], 0
je 0x7d6d87
cmp dword [eax + 0xb4], 1
jg 0x7d6d87
cmp dword [esp + 0x20], 5
je 0x7d61fd
cmp dword [esp + 0x20], 4
je 0x7d62df
mov eax, dword [esp + 8]
test eax, eax
jne 0x7d2bdf
xor edx, edx
cmp esi, 5
mov eax, dword [esp + 0x28]
sete dl
add edx, 1
call fcn.007a9da0
mov dword [esp + 8], eax
jmp 0x7d2bd0
mov eax, dword [ebp + 4]
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
lea eax, [eax + eax*4]
lea eax, [edx + eax*8]
mov edx, dword [eax]
lea edx, [edx + edx*4]
lea ebp, [ecx + edx*4]
mov edx, 0x80
mov word [eax + 8], dx
jmp case.0x7cde44.85
mov eax, dword [ebp + 8]
mov ecx, dword [esp + 0x14]
mov esi, dword [ebp + 0x10]
mov dword [esp + 0x30], eax
mov eax, dword [ebp + 0xc]
lea eax, [eax + eax*4]
lea edi, [ecx + eax*8]
mov eax, dword [ebp + 4]
mov dword [esp + 0x48], edi
lea eax, [eax + eax*4]
lea eax, [ecx + eax*8]
mov dword [esp + 0x28], eax
mov eax, dword [edi]
mov edi, dword [esp + 4]
mov dword [esp + 0x20], eax
lea ebx, [eax + 1]
movzx eax, word [ebp + 2]
shl eax, 4
add eax, dword [edi + 0x10]
mov ecx, dword [eax + 4]
mov edi, dword [ecx + 4]
cmp byte [ecx + 9], 0
mov dword [esp + 0x40], ecx
mov eax, dword [edi + 4]
mov edx, dword [eax + 0x24]
mov eax, dword [eax + 0x20]
mov dword [esp + 0x54], edx
mov dword [esp + 0x50], eax
je 0x7cfbb4
mov eax, ecx
call fcn.0076c790
mov eax, dword [esp + 4]
mov edx, dword [edi + 0x2c]
mov dword [esp + 0xa0], edi
mov dword [esp + 0xe4], eax
mov eax, dword [edi]
mov dword [esp + 0xac], edx
mov dword [esp + 0xa4], eax
lea eax, [esp + 0xe8]
mov dword [esp + 0xcc], eax
mov eax, 0x100
mov word [esp + 0xdc], ax
xor eax, eax
mov dword [esp + 0xb0], ebx
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], 0
mov dword [esp + 0xc0], 0
mov dword [esp + 0xc4], 0
mov dword [esp + 0xa8], 0
mov dword [esp + 0xe0], 0
mov dword [esp + 0xc8], 0
mov dword [esp + 0xd0], 0x64
mov dword [esp + 0xd4], 0x3b9aca00
mov dword [esp + 0xd8], 0
test edx, edx
jne 0x7d2d23
call fcn.0076bac0
sub esp, 0xc
push dword [esp + 0xb4]
call fcn.007677d0
add esp, 0x10
mov eax, dword [esp + 0xb8]
test eax, eax
jne 0x7d4225
mov esi, dword [esp + 0xb4]
lea ebx, [esp + 0xc8]
test esi, esi
je 0x7d4214
mov edi, dword [esp + 0x40]
cmp byte [edi + 9], 0
je 0x7cfcda
mov eax, dword [edi + 0xc]
mov dword [esp + 0x20], eax
sub eax, 1
mov dword [edi + 0xc], eax
jne 0x7cfcda
mov eax, edi
call fcn.0076c820
mov eax, ebx
call fcn.007697a0
mov ebx, eax
mov eax, dword [esp + 0x28]
test word [eax + 8], 0x2400
jne 0x7d424e
mov eax, dword [esp + 0x28]
mov edi, 1
mov word [eax + 8], di
test esi, esi
je 0x7cdfe8
test ebx, ebx
je 0x7cf0a1
mov edi, dword [esp + 0x48]
lea eax, [esi - 1]
mov ecx, 0xffffffff
cdq
sub dword [edi], eax
sbb dword [edi + 4], edx
sub esp, 8
mov edx, ebx
push fcn.007677d0
push 1
mov eax, dword [esp + 0x38]
call fcn.00780ba0
add esp, 0x10
mov ecx, dword [esp + 0x28]
movzx edx, byte [esp + 0x3b]
test byte [ecx + 8], 2
je 0x7cdfe8
movzx eax, byte [ecx + 0xa]
cmp edx, eax
je 0x7cdfe8
mov eax, ecx
call fcn.00782920
jmp 0x7cdfe8
mov eax, dword [ebp + 4]
mov esi, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea ebx, [esi + eax*8]
mov eax, dword [ebp + 8]
lea eax, [eax + eax*4]
lea esi, [esi + eax*8]
test byte [ebx + 8], 0x10
jne 0x7cfd90
mov eax, ebx
call fcn.00769900
test eax, eax
jne 0x7cf0a1
mov edx, dword [esi]
mov ecx, dword [esi + 4]
mov eax, dword [ebx + 0x10]
call fcn.00769a30
jmp case.0x7cde44.85
mov eax, dword [esp]
mov edx, dword [ebp + 4]
sub esp, 8
mov eax, dword [eax + 0x60]
mov ebx, dword [eax + edx*4]
push dword [ebp + 0xc]
push dword [ebx + 0x28]
call dword [ebp + 0x10]
mov dword [ebx + 0x1c], 0
mov dword [esp + 0x18], eax
add esp, 0x10
test eax, eax
je 0x7cdfbf
cmp dword [esp + 8], 0x65
jne 0x7ce385
mov byte [ebx + 2], 1
mov dword [esp + 8], 0
jmp 0x7cdfe8
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov eax, dword [eax + 0x60]
mov ebx, dword [eax + edx*4]
mov edx, dword [ebp + 8]
cmp byte [ebx + 3], 0
mov dword [esp + 0x28], edx
jne 0x7d2a8e
mov eax, dword [ebx + 0x28]
cmp byte [eax], 0
jne 0x7d58d8
mov eax, dword [ebp + 0xc]
mov edi, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea eax, [edi + eax*8]
mov dword [esp + 0x30], eax
mov eax, dword [ebx + 0x48]
mov dword [esp + 0x20], eax
mov eax, dword [esp]
mov edx, dword [eax + 0x20]
cmp dword [ebx + 0x1c], edx
je 0x7d46bd
cmp byte [ebx + 2], 0
je 0x7d4de1
cmp byte [ebx], 3
jne 0x7d4762
mov eax, dword [ebx + 0x20]
lea eax, [eax + eax*4]
lea eax, [edi + eax*8]
mov ecx, dword [eax + 0xc]
mov eax, dword [eax + 0x10]
mov dword [ebx + 0x54], ecx
mov dword [ebx + 0x50], ecx
mov dword [ebx + 0x4c], eax
mov dword [ebx + 0x1c], edx
movzx edx, byte [eax]
test dl, dl
js 0x7d57e6
mov eax, dword [esp + 0x20]
mov edi, 1
mov dword [eax], edx
mov esi, dword [esp + 0x20]
xor eax, eax
mov dword [ebx + 0x30], edi
mov word [ebx + 0x3a], ax
mov eax, dword [esi]
cmp dword [ebx + 0x54], eax
jae 0x7d61df
mov dword [ebx + 0x54], 0
mov eax, dword [esi]
mov dword [ebx + 0x4c], 0
cmp eax, 0x18003
ja 0x7d4b49
cmp eax, dword [ebx + 0x50]
ja 0x7d4b49
xor esi, esi
xor eax, eax
cmp esi, dword [esp + 0x28]
jg 0x7d4a63
mov edx, dword [esp + 0x20]
mov edi, dword [ebx + 0x30]
mov ecx, dword [edx]
mov dword [esp + 8], ecx
cmp edi, ecx
jae 0x7d5617
mov ecx, dword [ebx + 0x4c]
mov dword [esp + 0x48], ecx
test ecx, ecx
je 0x7d67d2
mov eax, dword [edx + eax*4]
mov ecx, dword [esp + 0x48]
xor edx, edx
mov dword [esp + 0x50], ebp
mov ebp, edx
add edi, ecx
add ecx, dword [esp + 8]
mov dword [esp + 8], ecx
mov ecx, ebx
mov ebx, edi
mov edi, eax
jmp 0x7cff3d
movzx eax, byte [eax + 0xbfa2c0]
xor edx, edx
add ebx, 1
add edi, eax
adc ebp, edx
mov eax, dword [esp + 0x20]
add esi, 1
mov dword [eax + esi*4], edi
cmp esi, dword [esp + 0x28]
jg 0x7d59b0
cmp ebx, dword [esp + 8]
jae 0x7d5949
movzx eax, byte [ebx]
mov dword [esp + 0xa0], eax
mov dword [ecx + esi*4 + 0x58], eax
cmp eax, 0x7f
jbe 0x7cff0f
mov eax, ebx
lea edx, [esp + 0xa0]
mov dword [esp + 0x40], ecx
call fcn.0076b280
mov ecx, dword [esp + 0x40]
movzx eax, al
add ebx, eax
mov eax, dword [esp + 0xa0]
mov dword [ecx + esi*4 + 0x58], eax
cmp eax, 0x7f
jbe 0x7d478c
sub eax, 0xc
shr eax, 1
xor edx, edx
add edi, eax
adc ebp, edx
jmp 0x7cff1f
mov eax, dword [ebp + 4]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x28], ebp
mov ebx, dword [ebp + 0x10]
movzx esi, byte [esp + 0x3b]
lea eax, [eax + eax*4]
lea edi, [edx + eax*8]
movsx edx, byte [ebx]
mov dword [esp + 0x20], edi
jmp 0x7cffc3
add ebx, 1
movsx edx, byte [ebx]
test dl, dl
je 0x7d271e
add dword [esp + 0x20], 0x28
mov eax, dword [esp + 0x20]
mov ecx, esi
call fcn.0078ebe0
cmp byte [ebx], 0x45
jne 0x7cffb0
mov eax, dword [esp + 0x20]
movzx ecx, word [eax + 8]
test cl, 4
je 0x7cffb0
mov edx, dword [eax + 4]
and ecx, 0xfffffffb
mov eax, dword [eax]
mov ebp, edx
add ebp, 0x8000
cmp ebp, 0xffff
ja 0x7d28a4
mov eax, dword [esp + 0x20]
or ecx, 0x20
mov word [eax + 8], cx
jmp 0x7cffb0
mov eax, dword [ebp + 0xc]
mov edi, dword [esp + 0x14]
mov ecx, dword [ebp + 4]
lea eax, [eax + eax*4]
lea edx, [edi + eax*8]
mov edi, dword [esp]
mov esi, dword [edx + 0x28]
mov eax, dword [edi + 0x60]
mov edi, dword [edi + 0x5c]
mov eax, dword [eax + ecx*4]
mov ebx, dword [eax + 0x28]
mov dword [esp + 0x20], eax
mov eax, dword [ebx]
mov dword [esp + 0x28], eax
mov eax, dword [eax]
mov dword [esp + 8], eax
mov eax, dword [edx]
mov dword [esp + 0x30], eax
test esi, esi
jle 0x7d005c
add edx, 0x50
mov eax, edi
lea ecx, [edi + esi*4]
lea esi, [esi]
mov dword [eax], edx
add eax, 4
add edx, 0x28
cmp ecx, eax
jne 0x7d0050
sub esp, 0xc
push edi
push esi
push dword [ebp + 0x10]
push dword [esp + 0x48]
push ebx
mov eax, dword [esp + 0x28]
call dword [eax + 0x20]
add esp, 0x20
mov ecx, dword [esp + 0x28]
mov esi, eax
mov eax, dword [esp]
add ecx, 8
lea edx, [eax + 0x7c]
call fcn.00774eb0
test esi, esi
jne 0x7d6b30
sub esp, 0xc
push ebx
mov eax, dword [esp + 0x18]
call dword [eax + 0x28]
mov edx, dword [esp + 0x30]
mov dword [esp + 0x18], eax
add esp, 0x10
mov byte [edx + 2], 0
test eax, eax
je case.0x7cde44.85
jmp 0x7cf0e2
mov eax, dword [esp + 4]
test byte [eax + 0x58], 1
je 0x7d0102
mov eax, dword [esp]
test byte [eax + 0x98], 0x10
jne 0x7d0102
mov eax, dword [ebp + 0x10]
test eax, eax
je 0x7d616d
mov esi, dword [esp + 4]
cmp dword [esi + 0xbc], 1
jg 0x7d6130
push eax
push dword [esp + 4]
mov eax, dword [esp + 0xc]
push dword [eax + 0xd0]
push 1
call dword [eax + 0xcc]
add esp, 0x10
mov eax, dword [ebp + 4]
cmp eax, dword [0x84985c]
jl 0x7d3f76
cmp byte [ebp], 0xaa
je case.0x7cde44.85
mov eax, dword [esp]
mov edx, dword [eax + 0x6c]
cmp edx, 1
jle 0x7d0148
mov eax, dword [esp]
lea edx, [edx + edx*4]
mov ecx, dword [eax + 0x68]
lea eax, [ecx + 0x14]
lea edx, [ecx + edx*4]
cmp byte [eax], 0x11
jne 0x7d0141
mov dword [eax + 4], 0
add eax, 0x14
cmp edx, eax
jne 0x7d0135
mov eax, 1
mov dword [ebp + 4], eax
mov eax, dword [esp]
add dword [eax + 0xbc], 1
mov eax, dword [ebp + 8]
jmp 0x7ceaf3
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov eax, dword [eax + 0x60]
mov ebx, dword [eax + edx*4]
mov esi, dword [ebx + 0x28]
cmp byte [esi + 0x38], 0
je 0x7d29b2
cmp byte [esi + 0x39], 0
je 0x7d4d30
mov eax, dword [esi + 0x10]
call fcn.00778a10
mov dword [esp + 8], eax
test eax, eax
jne 0x7d4d24
mov eax, dword [esi + 0x10]
mov eax, dword [eax + 0x18]
mov dword [ebx + 0x1c], 0
test eax, eax
jne 0x7cdfbf
jmp 0x7cfddb
mov eax, dword [ebp + 4]
mov esi, dword [esp + 4]
lea ecx, [esp + 0xe8]
mov edx, dword [ebp + 0xc]
shl eax, 4
add eax, dword [esi + 0x10]
mov eax, dword [eax + 4]
call fcn.0076cea0
mov eax, dword [ebp + 8]
lea edx, [eax + eax*4]
mov eax, dword [esp]
mov eax, dword [eax + 0x58]
lea eax, [eax + edx*8]
test word [eax + 8], 0x2400
jne 0x7d46a9
mov edx, 4
mov word [eax + 8], dx
mov edx, dword [esp + 0xe8]
mov dword [eax], edx
sar edx, 0x1f
mov dword [eax + 4], edx
jmp case.0x7cde44.85
mov eax, dword [ebp + 4]
mov edi, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea ecx, [edi + eax*8]
mov edx, dword [ecx + 4]
mov eax, dword [ecx]
lea esi, [edx - 0x80000000]
or esi, eax
je case.0x7cde44.85
add eax, 0xffffffff
adc edx, 0xffffffff
mov dword [ecx], eax
mov dword [ecx + 4], edx
or edx, eax
je 0x7d1f70
jmp case.0x7cde44.85
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov eax, dword [eax + 0x60]
mov eax, dword [eax + edx*4]
mov ebx, dword [eax + 0x28]
mov eax, ebx
call fcn.00788c30
mov dword [esp + 8], eax
cmp eax, 0x10
je 0x7d2673
mov esi, dword [esp + 8]
test esi, esi
jne 0x7ce385
mov ecx, dword [esp + 4]
mov eax, dword [ecx + 0x108]
test eax, eax
jne 0x7d2673
mov dword [esp + 0x20], 0
mov dword [esp + 0x24], 0
mov dword [esp + 8], ebp
mov ebp, ecx
mov ecx, dword [ebx + 0x74]
cmp byte [ecx + 8], 0
movzx edi, word [ecx + 0x18]
je 0x7d2610
xor edx, edx
movzx eax, di
add dword [esp + 0x20], eax
adc dword [esp + 0x24], edx
jmp 0x7d02db
mov eax, ebx
call fcn.00761bd0
mov ecx, dword [ebx + 0x74]
movzx esi, word [ebx + 0x46]
movzx edi, word [ecx + 0x18]
cmp si, di
jb 0x7d3ce6
cmp byte [ebx + 0x44], 0
jne 0x7d02c0
mov eax, ebx
mov ebp, dword [esp + 8]
call fcn.00788c30
mov dword [esp + 8], eax
test eax, eax
jne 0x7ce385
mov eax, dword [ebp + 8]
lea edx, [eax + eax*4]
mov eax, dword [esp]
mov eax, dword [eax + 0x58]
lea eax, [eax + edx*8]
test word [eax + 8], 0x2400
jne 0x7d46b3
mov ebx, 4
mov word [eax + 8], bx
mov ecx, dword [esp + 0x20]
mov ebx, dword [esp + 0x24]
mov dword [esp + 8], 0
mov dword [eax], ecx
mov dword [eax + 4], ebx
jmp 0x7cdfe8
mov eax, dword [ebp + 4]
mov edi, dword [esp + 0x14]
mov edx, dword [ebp + 0xc]
lea eax, [eax + eax*4]
lea eax, [edi + eax*8]
call fcn.0076cff0
xor eax, dword [ebp + 0x10]
mov ecx, eax
mov edx, eax
mov eax, dword [ebp + 8]
sar ecx, 0x1f
lea eax, [eax + eax*4]
lea eax, [edi + eax*8]
test word [eax + 8], 0x2400
jne 0x7d4333
mov dword [eax], edx
mov edx, 4
mov dword [eax + 4], ecx
mov word [eax + 8], dx
jmp case.0x7cde44.85
mov eax, dword [esp + 4]
mov ebx, dword [ebp + 4]
mov edx, dword [ebp + 8]
movzx eax, byte [eax + 0x4f]
cmp eax, ebx
je 0x7d515a
test edx, edx
jne 0x7d3939
test ebx, ebx
je 0x7d03b1
mov eax, dword [esp + 4]
mov eax, dword [eax + 0xb8]
test eax, eax
jg 0x7d6016
mov edi, dword [esp]
mov ecx, dword [edi]
mov eax, dword [ecx + 0x1e8]
mov edx, dword [ecx + 0x1ec]
add eax, dword [ecx + 0x1e0]
adc edx, dword [ecx + 0x1e4]
xor ecx, ecx
cmp ecx, eax
sbb ecx, edx
jl 0x7d517b
mov eax, dword [esp + 4]
mov byte [eax + 0x4f], bl
mov eax, dword [esp]
call fcn.007b5370
mov esi, eax
cmp eax, 5
je 0x7d55b2
mov eax, dword [esp + 4]
mov ebx, dword [esp + 4]
mov edx, dword [eax + 0x1cc]
test edx, edx
je 0x7d042a
lea esi, [esi]
lea esi, [esi]
mov eax, dword [edx + 0x18]
mov dword [ebx + 0x1cc], eax
mov eax, ebx
call fcn.00767880
mov edx, dword [ebx + 0x1cc]
test edx, edx
jne 0x7d0410
mov eax, dword [esp + 4]
mov dword [eax + 0x1d4], 0
mov dword [eax + 0x1d8], 0
mov byte [eax + 0x57], 0
mov eax, dword [esp]
cmp dword [eax + 0x28], 1
sbb esi, esi
and esi, 0x64
add esi, 1
jmp 0x7ce169
mov eax, dword [ebp + 4]
mov edx, dword [esp + 0x14]
mov edi, 0x80
mov esi, dword [esp + 0x18]
lea eax, [eax + eax*4]
lea eax, [edx + eax*8]
mov edx, dword [eax]
lea edx, [edx + edx*4]
mov edx, dword [esi + edx*4 + 8]
mov word [eax + 8], di
lea edx, [edx + edx*4]
lea ebp, [esi + edx*4 - 0x14]
jmp case.0x7cde44.85
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov eax, dword [eax + 0x60]
mov ebx, dword [eax + edx*4]
cmp byte [ebx + 2], 0
jne case.0x7cde44.85
mov eax, dword [ebx + 0x28]
sub esp, 0xc
mov edi, dword [eax]
mov esi, dword [edi]
push eax
call dword [esi + 0x24]
lea ecx, [edi + 8]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x10]
lea edx, [eax + 0x7c]
call fcn.00774eb0
add esp, 0x10
mov edi, dword [esp + 8]
test edi, edi
jne 0x7ce385
sub esp, 0xc
push dword [ebx + 0x28]
call dword [esi + 0x28]
mov dword [esp + 0x18], eax
add esp, 0x10
test eax, eax
je case.0x7cde44.11
mov dword [esp + 8], 0
jmp 0x7cdfe8
mov eax, dword [ebp + 0xc]
mov ebx, dword [ebp + 0x10]
mov esi, dword [esp + 0x14]
lea eax, [eax + eax*4]
movzx ecx, byte [ebx + 0x19]
lea esi, [esi + eax*8]
cmp dword [ebx], esi
jne 0x7d30e3
movzx eax, word [esi + 8]
sub esp, 4
lea edx, [ebx + 0x1c]
and ax, 0x3e40
or eax, 1
mov word [esi + 8], ax
mov eax, dword [ebx + 4]
push edx
push ecx
push ebx
call dword [eax + 0x10]
mov eax, dword [ebx + 0x14]
add esp, 0x10
test eax, eax
je 0x7d0593
jle 0x7d0562
mov edx, 1
mov eax, esi
call fcn.0078c260
sub esp, 4
push eax
push 0xbec70c
push dword [esp + 0xc]
call fcn.00795be0
mov eax, dword [ebx + 0x14]
mov dword [esp + 0x18], eax
add esp, 0x10
mov eax, dword [esp]
mov ecx, dword [ebx + 0x10]
sub esp, 0xc
push dword [ebp + 4]
lea edx, [eax + 0xdc]
mov eax, dword [esp + 0x14]
call fcn.00767ac0
add esp, 0x10
mov edi, dword [esp + 8]
mov dword [ebx + 0x14], 0
test edi, edi
jne 0x7ce385
movzx eax, word [esi + 8]
test al, 0x12
je case.0x7cde44.85
test al, 2
je 0x7d05c0
movzx edx, byte [esp + 0x3b]
cmp byte [esi + 0xa], dl
je 0x7d05c0
mov eax, esi
call fcn.00782920
movzx eax, word [esi + 8]
test al, 0x12
je case.0x7cde44.85
mov edx, dword [esi + 0xc]
test ah, 0x40
je 0x7d05ca
add edx, dword [esi]
mov eax, dword [esi + 0x20]
cmp dword [eax + 0x6c], edx
jge case.0x7cde44.85
jmp 0x7d0af3
mov eax, dword [ebp + 8]
xor edx, edx
test eax, eax
je 0x7d05f3
mov esi, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea edx, [esi + eax*8]
mov eax, dword [esp]
sub esp, 0xc
mov ecx, dword [ebp + 4]
push edx
mov edx, dword [esp + 0x14]
add eax, 0x7c
call fcn.007f2050
mov dword [esp + 0x18], eax
add esp, 0x10
test eax, eax
je case.0x7cde44.85
jmp 0x7ce385
mov dword [esp + 0xe8], 0
sub esp, 8
mov dword [esp + 0xf8], 0xffffffff
mov dword [esp + 0xf4], 0xffffffff
mov ecx, dword [ebp + 8]
lea eax, [esp + 0xf8]
mov edx, dword [ebp + 4]
push eax
lea eax, [esp + 0xf8]
push eax
mov eax, dword [esp + 0x14]
call fcn.007b4ff0
mov dword [esp + 0x18], eax
add esp, 0x10
test eax, eax
jne 0x7d2b57
mov edx, dword [esp + 0xe8]
mov eax, dword [ebp + 0xc]
mov ecx, dword [esp + 0x14]
lea esi, [esp + 0xe8]
lea edi, [esp + 0xf4]
lea eax, [eax + eax*4]
lea ebx, [ecx + eax*8]
mov ecx, edx
sar ecx, 0x1f
test word [ebx + 8], 0x2400
jne 0x7d06cc
mov eax, 4
mov dword [ebx], edx
mov dword [ebx + 4], ecx
mov word [ebx + 8], ax
add esi, 4
cmp edi, esi
je 0x7d3bb1
mov edx, dword [esi]
add ebx, 0x28
mov ecx, edx
sar ecx, 0x1f
test word [ebx + 8], 0x2400
je 0x7d06a1
mov eax, ebx
call fcn.00767cd0
jmp 0x7d06af
mov eax, dword [ebp + 8]
lea edx, [eax + eax*4]
mov eax, dword [esp]
mov eax, dword [eax + 0x58]
lea ebx, [eax + edx*8]
test word [ebx + 8], 0x2400
jne 0x7d46d6
mov eax, 4
mov word [ebx + 8], ax
mov dword [esp + 0xe8], 0
mov edi, dword [esp + 4]
lea edx, [esp + 0xe8]
mov eax, dword [ebp + 4]
mov ecx, dword [ebp + 0xc]
shl eax, 4
add eax, dword [edi + 0x10]
mov eax, dword [eax + 4]
call fcn.007ae8f0
mov dword [esp + 8], eax
test eax, eax
jne 0x7ce385
mov eax, dword [esp + 0xe8]
mov dword [ebx], eax
sar eax, 0x1f
mov dword [ebx + 4], eax
jmp case.0x7cde44.85
mov eax, dword [ebp + 8]
lea edx, [eax + eax*4]
mov eax, dword [esp]
mov eax, dword [eax + 0x58]
lea eax, [eax + edx*8]
test word [eax + 8], 0x2400
jne 0x7d4303
mov esi, 4
mov word [eax + 8], si
mov esi, dword [esp]
mov ecx, dword [esi + 0xc8]
mov edx, dword [ecx + 0x30]
mov ebx, dword [ecx + 8]
mov ecx, dword [ecx + 0x10]
lea edx, [edx + edx*4]
lea edx, [ebx + edx*4]
mov ebx, dword [ebp + 4]
add ebx, dword [edx + 4]
lea edx, [ebx + ebx*4]
lea edx, [ecx + edx*8]
mov ecx, 0x1000
call fcn.00773bb0
jmp case.0x7cde44.85
mov eax, dword [ebp + 8]
mov edi, dword [esp + 4]
cdq
test byte [edi + 0x22], 8
jne 0x7d2b46
mov ecx, dword [ebp + 4]
test ecx, ecx
je 0x7d4c33
mov esi, dword [esp + 4]
add dword [esi + 0x1e0], eax
adc dword [esi + 0x1e4], edx
jmp case.0x7cde44.85
mov eax, dword [ebp + 8]
lea edx, [eax + eax*4]
mov eax, dword [esp]
mov eax, dword [eax + 0x58]
lea eax, [eax + edx*8]
test word [eax + 8], 0x2400
jne 0x7d4656
mov edx, 4
mov word [eax + 8], dx
mov edx, dword [ebp + 0x10]
mov edi, 8
mov word [eax + 8], di
fld qword [edx]
fstp qword [eax]
jmp case.0x7cde44.85
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov edi, dword [esp + 0x14]
lea edx, [edx + edx*4]
mov eax, dword [eax + 0xc8]
shl edx, 3
lea ebx, [edi + edx]
test eax, eax
jne 0x7d0882
mov eax, ebx
call fcn.0076cf00
mov dword [ebx], eax
movzx eax, word [ebx + 8]
mov dword [ebx + 4], edx
mov edx, dword [esp + 0x14]
and ax, 0x3e40
or eax, 4
mov word [ebx + 8], ax
mov eax, dword [ebp + 8]
lea eax, [eax + eax*4]
lea esi, [edx + eax*8]
mov eax, esi
call fcn.0076cf00
movzx ecx, word [esi + 8]
mov dword [esi], eax
and cx, 0x3e40
mov dword [esi + 4], edx
or ecx, 4
cmp dword [ebx], eax
mov word [esi + 8], cx
mov ecx, dword [ebx + 4]
sbb ecx, edx
jge case.0x7cde44.85
mov dword [ebx], eax
mov dword [ebx + 4], edx
jmp case.0x7cde44.85
mov eax, ecx
mov ecx, dword [eax + 4]
test ecx, ecx
jne 0x7d0880
add edx, dword [eax + 0x10]
mov ebx, edx
jmp 0x7d0822
mov eax, dword [ebp + 4]
mov edi, dword [esp + 0x14]
mov ebx, dword [ebp + 0xc]
lea eax, [eax + eax*4]
lea esi, [edi + eax*8]
mov eax, dword [ebp + 8]
lea edx, [eax + eax*4]
mov eax, dword [esp]
mov eax, dword [eax + 0x58]
lea eax, [eax + edx*8]
test word [eax + 8], 0x2400
jne 0x7d4329
mov edi, 4
mov word [eax + 8], di
mov edi, dword [esi + 4]
mov esi, dword [esi]
xor edx, edx
cmp edx, esi
sbb edx, edi
jge 0x7d3241
mov ecx, dword [esp + 0x14]
lea edx, [ebx + ebx*4]
mov ebx, dword [ecx + edx*8 + 4]
mov ecx, dword [ecx + edx*8]
mov dword [esp + 0x24], ebx
mov dword [esp + 0x20], ecx
test ebx, ebx
jns 0x7d08ff
mov dword [esp + 0x20], 0
mov dword [esp + 0x24], 0
mov ecx, 0xffffffff
mov ebx, 0x7fffffff
sub ecx, esi
sbb ebx, edi
cmp ecx, dword [esp + 0x20]
mov ecx, dword [esp + 0x20]
mov edx, ebx
mov ebx, dword [esp + 0x24]
sbb edx, ebx
jl 0x7d3241
add esi, ecx
adc edi, ebx
mov dword [eax], esi
mov dword [eax + 4], edi
jmp case.0x7cde44.85
movzx eax, word [ebp + 2]
xor ecx, ecx
lea edi, [eax*4 + 0x44]
mov esi, eax
mov eax, dword [esp + 4]
mov edx, edi
call fcn.00769310
mov ebx, eax
mov eax, ebp
sub eax, dword [esp + 0x18]
sar eax, 2
imul eax, eax, 0xcccccccd
test ebx, ebx
je 0x7d6c41
lea edx, [ebx + edi - 0x28]
mov edi, dword [esp + 4]
mov ecx, 1
mov dword [ebx + 8], 0
mov dword [ebx], edx
mov word [edx + 8], cx
mov ecx, esi
mov esi, 0xfffff09b
mov dword [edx + 0x20], edi
mov edi, dword [ebp + 0x10]
mov dword [edx + 0x18], 0
mov dword [ebx + 0x10], eax
mov eax, dword [esp]
mov dword [ebx + 4], edi
mov dword [ebx + 0xc], eax
xor eax, eax
mov byte [ebx + 0x18], 0
mov dword [ebx + 0x14], 0
mov byte [ebx + 0x19], cl
mov dword [ebp + 0x10], ebx
mov word [ebp], si
mov edx, dword [ebp + 0xc]
mov esi, dword [esp + 0x14]
movzx ecx, cl
lea edx, [edx + edx*4]
lea esi, [esi + edx*8]
cmp esi, eax
jne 0x7d2865
mov edx, dword [ebp + 4]
add dword [esi + 0xc], 1
lea eax, [ebx + 0x1c]
test edx, edx
je 0x7d2727
sub esp, 4
push eax
push ecx
push ebx
call dword [edi + 0x1c]
add esp, 0x10
mov eax, dword [ebx + 0x14]
test eax, eax
je case.0x7cde44.85
jg 0x7d3253
cmp byte [ebx + 0x18], 0
je 0x7d0a39
mov eax, dword [ebp - 0x10]
test eax, eax
je 0x7d0a35
mov edx, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea eax, [edx + eax*8]
test word [eax + 8], 0x2400
jne 0x7d5c81
mov edi, 4
mov dword [eax], 1
mov dword [eax + 4], 0
mov word [eax + 8], di
mov byte [ebx + 0x18], 0
mov eax, dword [ebx]
test word [eax + 8], 0x2400
jne 0x7d0a4a
mov esi, dword [eax + 0x18]
test esi, esi
je 0x7d0a51
call fcn.00767e50
mov eax, dword [ebx]
mov ecx, dword [esp + 8]
mov edx, 1
mov word [eax + 8], dx
mov dword [ebx + 0x14], 0
test ecx, ecx
je case.0x7cde44.85
jmp 0x7ce385
mov ebx, dword [ebp + 0x10]
mov eax, dword [ebx + 8]
movzx ecx, byte [ebx + 0x19]
mov edi, dword [ebx + 4]
jmp 0x7d09b5
mov eax, dword [ebp + 4]
mov edx, dword [esp + 0x14]
mov esi, dword [ebp + 0x10]
lea eax, [eax + eax*4]
lea ebx, [edx + eax*8]
mov eax, dword [ebp + 0xc]
test eax, eax
jne 0x7d2a03
mov edx, esi
mov eax, ebx
call fcn.00767b40
mov dword [esp + 8], eax
mov eax, dword [esp + 8]
test eax, eax
jne 0x7d6c87
movzx eax, word [ebx + 8]
test al, 2
je 0x7d0ad5
movzx edx, byte [esp + 0x3b]
cmp byte [ebx + 0xa], dl
je 0x7d0ad5
mov eax, ebx
call fcn.00782920
movzx eax, word [ebx + 8]
test al, 0x12
je case.0x7cde44.85
mov edx, dword [ebx + 0xc]
test ah, 0x40
je 0x7d0ae7
add edx, dword [ebx]
mov eax, dword [ebx + 0x20]
cmp dword [eax + 0x6c], edx
jge case.0x7cde44.85
sub esp, 8
push str.string_or_blob_too_big
push dword [esp + 0xc]
call fcn.00795be0
mov eax, ebp
sub eax, dword [esp + 0x28]
sar eax, 2
imul edi, eax, 0xcccccccd
mov eax, dword [esp + 0x14]
add esp, 0x10
movzx ecx, byte [eax + 0x51]
mov dword [esp + 8], 0x12
jmp 0x7ce108
mov edx, dword [ebp + 4]
mov eax, dword [ebp + 8]
test edx, edx
je 0x7d491f
mov esi, dword [esp]
add eax, 1
and eax, 3
movzx ecx, byte [esi + 0x98]
mov edx, ecx
mov byte [esp + 0x20], cl
and edx, 0xfffffffc
or eax, edx
mov byte [esi + 0x98], al
jmp case.0x7cde44.85
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov eax, dword [eax + 0x60]
mov eax, dword [eax + edx*4]
mov eax, dword [eax + 0x28]
or byte [eax + 1], 0x40
jmp case.0x7cde44.85
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov eax, dword [eax + 0x60]
mov eax, dword [eax + edx*4]
mov eax, dword [eax + 0x28]
and byte [eax + 1], 0xbf
jmp case.0x7cde44.85
mov edx, dword [ebp + 0xc]
test dl, dl
jne 0x7d0ba9
mov eax, dword [esp + 4]
test byte [eax + 0x21], 4
jne case.0x7cde44.85
mov esi, dword [esp + 4]
mov eax, dword [ebp + 4]
mov dword [esp + 8], 0
shl eax, 4
add eax, dword [esi + 0x10]
mov esi, dword [eax + 4]
cmp byte [esi + 9], 0
je case.0x7cde44.85
lea edi, [edx + 1]
mov ebx, dword [ebp + 8]
mov eax, esi
call fcn.0076c790
mov eax, edi
movzx ecx, al
mov edx, ebx
mov eax, esi
call fcn.00761650
mov dword [esp + 8], eax
test eax, eax
je 0x7d60c2
cmp byte [esi + 9], 0
jne 0x7d60ac
mov eax, ebp
sub eax, dword [esp + 0x18]
sar eax, 2
imul edi, eax, 0xcccccccd
cmp byte [esp + 8], 6
jne 0x7ce394
push eax
push dword [ebp + 0x10]
push str.database_table_is_locked:__s
push dword [esp + 0xc]
call fcn.00795be0
mov eax, dword [esp + 0x14]
add esp, 0x10
movzx ecx, byte [eax + 0x51]
jmp 0x7ce108
mov eax, dword [esp + 4]
mov ebx, dword [ebp + 0x10]
mov edx, dword [eax + 0x15c]
test edx, edx
jle 0x7d247c
mov esi, dword [eax + 0x174]
test esi, esi
jne 0x7d247c
mov eax, ebp
sub eax, dword [esp + 0x18]
sar eax, 2
imul edi, eax, 0xcccccccd
test ebx, ebx
jne 0x7d70ad
mov eax, dword [esp + 4]
mov dword [esp + 8], 6
movzx ecx, byte [eax + 0x51]
jmp 0x7ce108
mov edi, dword [esp + 4]
mov eax, dword [ebp + 4]
mov edx, dword [ebp + 0x10]
add dword [edi + 0xc0], 1
shl eax, 4
add eax, dword [edi + 0x10]
mov ecx, dword [eax]
mov eax, edi
call fcn.0076a150
mov esi, eax
test eax, eax
je 0x7d4741
mov eax, dword [eax + 0x40]
mov ebx, eax
test eax, eax
je 0x7d39bc
lea esi, [esi]
nop
mov edx, dword [ebx + 8]
mov edx, dword [edx + 4]
test edx, edx
jg 0x7d65f0
mov ebx, dword [ebx + 0x18]
test ebx, ebx
jne 0x7d0cd0
mov dword [esi + 0x40], 0
mov edi, dword [esp + 4]
mov dword [esp + 8], ebp
jmp 0x7d0d19
mov ebp, dword [edx + 0x178]
mov dword [eax + 0x18], ebp
mov dword [edx + 0x178], eax
mov eax, ecx
test ecx, ecx
je 0x7d4cc9
mov edx, dword [eax]
mov ecx, dword [eax + 0x18]
cmp edi, edx
jne 0x7d0d00
mov dword [esi + 0x40], eax
mov ebx, eax
mov dword [eax + 0x18], 0
jmp 0x7d0d0f
xor eax, eax
mov ecx, 0xa
lea edi, [esp + 0xe8]
rep stosd dword es:[edi], eax
mov ecx, dword [esp + 0x14]
mov edi, dword [esp + 4]
mov eax, dword [ebp + 8]
mov dword [esp + 0x108], edi
lea eax, [eax + eax*4]
lea edx, [ecx + eax*8]
lea eax, [esp + 0xe8]
call fcn.007829c0
mov edx, 1
mov dword [esp + 8], eax
lea eax, [esp + 0xe8]
call fcn.0078c260
test eax, eax
je 0x7d0e5f
mov ecx, dword [ebp + 4]
mov edx, eax
mov eax, edi
shl ecx, 4
add ecx, dword [edi + 0x10]
mov ecx, dword [ecx]
call fcn.0076a150
xor ecx, ecx
mov esi, eax
mov eax, dword [eax + 0x3c]
mov ebx, dword [eax]
lea eax, [edi + 0x160]
mov edx, ebx
call fcn.00760b50
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x7d3e2b
mov eax, dword [ecx]
mov edx, dword [eax + 4]
test edx, edx
je 0x7d3e2b
mov edi, dword [eax + 0x14]
test edi, edi
je 0x7d3e2b
sub esp, 8
mov eax, dword [esp + 8]
add eax, 0x7c
push eax
push edx
mov edi, dword [esp + 0x14]
mov edx, esi
mov eax, edi
call fcn.00795d10
mov dword [esp + 0x18], eax
add esp, 0x10
test eax, eax
jne 0x7d0e5f
mov eax, dword [esi + 0x40]
test eax, eax
je 0x7d0e5f
mov edx, edi
jmp 0x7d0e04
mov eax, dword [eax + 0x18]
test eax, eax
je 0x7d0e5f
cmp edx, dword [eax]
jne 0x7d0dfd
mov eax, dword [esp + 4]
call fcn.00785740
mov dword [esp + 8], eax
test eax, eax
jne 0x7d0e5f
mov eax, dword [esi + 0x40]
test eax, eax
je 0x80af09
mov esi, dword [esp + 4]
cmp esi, dword [eax]
je 0x7d0e3f
mov eax, dword [eax + 0x18]
test eax, eax
je 0x80af09
mov ecx, dword [esp + 4]
cmp ecx, dword [eax]
jne 0x7d0e2c
mov edi, dword [esp + 4]
mov edx, dword [edi + 0x15c]
mov ecx, dword [edi + 0x174]
lea ebx, [edx + 1]
mov dword [edi + 0x15c], ebx
mov dword [ecx + edx*4], eax
add dword [eax + 0xc], 1
test word [esp + 0xf0], 0x2400
jne 0x7d0e76
mov ecx, dword [esp + 0x100]
test ecx, ecx
je 0x7d0e82
lea eax, [esp + 0xe8]
call fcn.00767e50
mov ebx, dword [esp + 8]
test ebx, ebx
jne 0x7ce385
add ebp, 0x14
jmp 0x7cde30
mov dword [esp + 0xe8], 0
mov eax, dword [ebp + 0x10]
mov ebx, dword [eax + 8]
test ebx, ebx
je 0x7d6488
mov esi, dword [ebx]
test esi, esi
je 0x7d6488
sub esp, 8
lea eax, [esp + 0xf0]
push eax
push ebx
call dword [esi + 0x18]
mov edi, dword [esp + 0x10]
lea ecx, [ebx + 8]
mov dword [esp + 0x18], eax
lea edx, [edi + 0x7c]
mov eax, edi
call fcn.00774eb0
add esp, 0x10
mov eax, dword [esp + 8]
test eax, eax
jne 0x7ce385
mov eax, dword [esp + 0xe8]
sub esp, 8
mov edx, dword [ebp + 4]
xor ecx, ecx
mov dword [eax], ebx
mov eax, edi
push 2
push 0xffffffffffffffff
call fcn.007b4cb0
add esp, 0x10
test eax, eax
je 0x7d6b70
mov edx, dword [esp + 0xe8]
mov dword [eax + 0x28], edx
add dword [ebx + 4], 1
jmp case.0x7cde44.85
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov ecx, dword [esp + 0x14]
mov eax, dword [eax + 0x60]
mov esi, dword [eax + edx*4]
mov eax, dword [ebp + 0xc]
cmp byte [esi + 2], 0
lea eax, [eax + eax*4]
lea ebx, [ecx + eax*8]
je 0x7d44d0
test word [ebx + 8], 0x2400
jne 0x7d39b0
mov eax, 1
mov word [ebx + 8], ax
jmp case.0x7cde44.85
mov edx, dword [esp + 4]
mov edi, dword [esp + 0x14]
mov eax, dword [edx + 0x20]
mov esi, eax
or eax, 0x4000000
mov dword [edx + 0x20], eax
mov eax, dword [ebp + 0x10]
and esi, 0x4000000
mov ebx, dword [eax + 8]
mov eax, dword [ebp + 4]
lea eax, [eax + eax*4]
lea edi, [edi + eax*8]
test byte [edi + 8], 2
je 0x7d0fb1
cmp byte [edi + 0xa], 1
je 0x7d0fb1
mov edx, 1
mov eax, edi
call fcn.007822b0
mov dword [esp + 8], eax
test eax, eax
jne 0x7ce385
sub esp, 8
mov eax, dword [ebx]
push dword [edi + 0x10]
push ebx
call dword [eax + 0x4c]
mov dword [esp + 0x18], eax
add esp, 0x10
test esi, esi
jne 0x7d0fd3
mov eax, dword [esp + 4]
and dword [eax + 0x20], 0xfbffffff
mov esi, dword [esp]
lea ecx, [ebx + 8]
mov eax, esi
lea edx, [esi + 0x7c]
call fcn.00774eb0
and byte [esi + 0x98], 0xfc
jmp 0x7d0e82
mov eax, dword [ebp + 8]
lea edx, [eax + eax*4]
mov eax, dword [esp]
mov eax, dword [eax + 0x58]
lea eax, [eax + edx*8]
test word [eax + 8], 0x2400
jne 0x7d443b
mov edx, 4
mov word [eax + 8], dx
mov edx, dword [ebp + 4]
mov ecx, dword [esp + 4]
shl edx, 4
add edx, dword [ecx + 0x10]
mov edx, dword [edx + 4]
mov edx, dword [edx + 4]
mov edx, dword [edx + 0x2c]
mov dword [eax + 4], 0
and edx, 0x7fffffff
mov dword [eax], edx
jmp case.0x7cde44.85
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov eax, dword [eax + 0x60]
mov esi, dword [eax + edx*4]
mov eax, dword [esi + 0x28]
cmp byte [eax], 0
jne 0x7d50a5
cmp byte [esi + 2], 0
je 0x7cde4b
mov eax, dword [ebp + 8]
mov edx, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea eax, [edx + eax*8]
test word [eax + 8], 0x2400
jne 0x7d3978
mov edx, 1
mov dword [esp + 8], 0
mov word [eax + 8], dx
jmp case.0x7cde44.85
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov eax, dword [eax + 0x60]
mov eax, dword [eax + edx*4]
cmp byte [eax + 3], 0
je case.0x7cde44.85
call fcn.007b0020
mov dword [esp + 8], eax
test eax, eax
je case.0x7cde44.85
jmp 0x7ce385
mov eax, dword [ebp + 8]
lea edx, [eax + eax*4]
mov eax, dword [esp]
mov eax, dword [eax + 0x58]
lea edi, [eax + edx*8]
test word [edi + 8], 0x2400
jne 0x7d433d
mov ecx, 4
mov word [edi + 8], cx
mov esi, dword [esp + 4]
mov edx, 1
mov word [edi + 8], dx
mov eax, dword [esi + 0xc0]
mov dword [esp + 8], eax
add eax, 1
cmp dword [esi + 0xb4], eax
jg 0x7d6c48
mov eax, dword [esp + 4]
mov esi, dword [ebp + 0xc]
mov ebx, dword [ebp + 4]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x40], esi
shl esi, 4
mov dword [esp + 0x30], esi
mov esi, dword [eax + esi + 4]
cmp byte [esi + 9], 0
je 0x7d1133
mov eax, esi
call fcn.0076c790
mov dword [esp + 0x98], 0
mov eax, dword [esi + 4]
mov dword [esp + 0x20], eax
cmp ebx, dword [eax + 0x2c]
ja 0x7d4e2b
lea ecx, [esp + 0x98]
sub esp, 0xc
mov edx, ebx
push 0
mov eax, dword [esp + 0x30]
call fcn.00761a10
mov dword [esp + 0xa4], eax
mov edx, eax
add esp, 0x10
test eax, eax
je 0x7d3365
cmp byte [esi + 9], 0
je 0x7d6a3d
mov eax, dword [esi + 0xc]
sub eax, 1
mov dword [esp + 8], eax
mov dword [esi + 0xc], eax
jne 0x7d6a3d
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
mov eax, esi
mov dword [esp + 0x20], edx
call fcn.0076c820
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x28]
mov ebx, dword [esp + 0x2c]
mov eax, 4
mov word [edi + 8], ax
mov dword [edi], ecx
mov dword [edi + 4], ebx
test edx, edx
jne 0x7d6a53
mov eax, dword [esp + 8]
test eax, eax
je case.0x7cde44.85
mov eax, dword [esp + 4]
mov edi, dword [esp + 0x30]
mov ecx, dword [ebp + 4]
mov esi, dword [esp + 8]
mov eax, dword [eax + 0x10]
mov ebx, dword [eax + edi + 0xc]
mov eax, dword [ebx + 0x10]
test eax, eax
je 0x7d1211
lea esi, [esi]
mov edx, dword [eax + 8]
cmp dword [edx + 0x1c], esi
jne 0x7d120b
mov dword [edx + 0x1c], ecx
mov eax, dword [eax]
test eax, eax
jne 0x7d1200
mov eax, dword [ebx + 0x20]
mov ebx, dword [esp + 8]
test eax, eax
je 0x7d1231
lea esi, [esi]
mov edx, dword [eax + 8]
cmp dword [edx + 0x2c], ebx
jne 0x7d122b
mov dword [edx + 0x2c], ecx
mov eax, dword [eax]
test eax, eax
jne 0x7d1220
movzx eax, byte [esp + 0x40]
mov dword [esp + 8], 0
add eax, 1
mov byte [esp + 0x3a], al
jmp case.0x7cde44.85
mov dword [esp + 0xe8], 0
mov eax, dword [ebp + 0xc]
mov ecx, 0
mov esi, dword [esp + 4]
mov edx, dword [ebp + 4]
test eax, eax
lea eax, [esp + 0xe8]
cmovne ecx, eax
mov eax, dword [ebp + 8]
shl eax, 4
add eax, dword [esi + 0x10]
mov eax, dword [eax + 4]
call fcn.007ae870
mov dword [esp + 8], eax
mov eax, dword [ebp + 0xc]
test eax, eax
je 0x7d0e82
mov esi, dword [esp]
mov edx, dword [esp + 0xe8]
add dword [esi + 0x2c], edx
test eax, eax
jle 0x7d0e82
mov edi, dword [esp + 0x14]
lea ecx, [eax + eax*4]
mov eax, edx
cdq
add dword [edi + ecx*8], eax
adc dword [edi + ecx*8 + 4], edx
jmp 0x7d0e82
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov eax, dword [eax + 0x60]
mov eax, dword [eax + edx*4]
cmp byte [eax], 1
mov ecx, dword [eax + 0x28]
je 0x7d3f7e
mov edx, dword [ecx + 0x40]
mov eax, dword [ecx + 8]
xor ecx, ecx
call fcn.007ae870
mov dword [esp + 8], eax
test eax, eax
je case.0x7cde44.85
jmp 0x7ce385
sub esp, 8
mov ecx, dword [ebp + 8]
mov edx, dword [ebp + 4]
push 1
push 0xffffffffffffffff
mov eax, dword [esp + 0x10]
call fcn.007b4cb0
add esp, 0x10
mov ebx, eax
test eax, eax
je 0x7cf0a1
mov esi, dword [ebp + 0xc]
mov eax, dword [ebp + 0x10]
mov dword [esp + 8], esi
mov esi, dword [esp + 4]
mov dword [ebx + 0x2c], eax
cmp byte [esi + 0x50], 2
je 0x7d1338
cmp byte [0x849764], 0
jne 0x7d3590
mov dword [esp + 0x20], 0x88
xor esi, esi
mov edx, 0x88
movzx eax, word [eax + 6]
lea edi, [eax*4 + 0x14]
mov eax, dword [esp + 4]
add edx, edi
mov ecx, edx
sar ecx, 0x1f
call fcn.00769450
mov dword [ebx + 0x28], eax
test eax, eax
je 0x7d3d49
mov edx, dword [esp + 0x20]
mov dword [esp + 0x30], eax
sub esp, 4
add edx, eax
mov dword [eax + 0x1c], edx
mov eax, dword [ebx + 0x2c]
lea ebx, [esi - 1]
mov dword [esp + 0x24], edx
push edi
mov edi, edx
push eax
push edx
call sub.msvcrt.dll_memcpy
add esp, 0x10
lea edx, [esi + 1]
mov ecx, dword [esp + 8]
cmp dl, 1
mov dword [edi + 0xc], 0
movzx eax, dl
seta byte [esp + 0x28]
test ecx, ecx
mov ecx, dword [esp + 0x30]
je 0x7d39df
test esi, esi
jne 0x7d39df
movzx esi, word [esp + 8]
mov word [edi + 6], si
mov esi, dword [esp + 4]
mov esi, dword [esi + 0x10]
mov edi, dword [esi + 4]
mov edi, dword [edi + 4]
mov edi, dword [edi + 0x20]
mov byte [ecx + 0x3b], dl
movzx edx, byte [esp + 0x28]
mov byte [ecx + 0x3a], bl
mov dword [ecx + 0xc], edi
mov byte [ecx + 0x39], dl
mov edx, dword [esp + 4]
mov dword [ecx + 0x18], edx
lea ebx, [ecx + 0x48]
xor edx, edx
lea esi, [esi]
nop
add edx, 1
mov dword [ebx], ecx
add ebx, 0x48
cmp eax, edx
jg 0x7d1400
mov eax, dword [esp + 4]
cmp byte [eax + 0x50], 2
je 0x7d4da9
mov eax, dword [esi + 0xc]
mov ebx, dword [0x84982c]
mov esi, dword [eax + 0x50]
imul ebx, edi
mov eax, esi
cdq
mov dword [ecx], ebx
test edx, edx
js 0x7d5289
imul edi
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov esi, dword [esp + 8]
mov eax, 0x20000000
mov edx, dword [esp + 0xc]
cmp eax, esi
mov esi, 0
mov eax, dword [esp + 8]
sbb esi, edx
mov esi, 0x20000000
cmovge esi, eax
cmp ebx, esi
cmovle ebx, esi
mov dword [ecx + 4], ebx
cmp byte [0x849768], 0
je 0x7d543a
mov eax, dword [esp + 0x20]
cmp word [eax + 8], 0xc
jbe 0x7d46e4
mov dword [esp + 8], 0
jmp case.0x7cde44.85
mov eax, dword [ebp + 4]
mov edx, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea esi, [edx + eax*8]
mov eax, dword [ebp + 8]
lea eax, [eax + eax*4]
lea ebx, [edx + eax*8]
test word [ebx + 8], 0x2400
jne 0x7d4474
mov eax, 1
mov word [ebx + 8], ax
test byte [esi + 8], 1
jne case.0x7cde44.85
mov edi, 4
mov eax, esi
mov word [ebx + 8], di
call fcn.0076cf00
not eax
not edx
mov dword [ebx], eax
mov dword [ebx + 4], edx
jmp case.0x7cde44.85
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov eax, dword [eax + 0x60]
mov esi, dword [eax + edx*4]
mov eax, dword [esi + 0x10]
mov edx, dword [esi + 0x14]
mov ecx, eax
mov ebx, edx
add ecx, 1
adc ebx, 0
or edx, eax
mov dword [esi + 0x10], ecx
mov dword [esi + 0x14], ebx
jne case.0x7cde44.85
jmp 0x7d1f70
mov edi, dword [esp]
mov edx, dword [esp + 4]
mov eax, dword [edi + 0x2c]
add dword [edx + 0x68], eax
mov dword [edx + 0x64], eax
mov dword [edi + 0x2c], 0
jmp case.0x7cde44.85
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov ecx, dword [ebp + 0xc]
mov ebx, dword [ebp + 0x10]
mov eax, dword [eax + 0x60]
mov dword [esp + 0x20], ecx
mov eax, dword [eax + edx*4]
mov edi, dword [eax + 0x28]
mov ecx, dword [eax + 0x2c]
mov esi, dword [edi + 0x20]
test esi, esi
je 0x7d525d
cmp byte [edi + 0x38], 0
je 0x7d2ff0
cmp byte [edi + 0x39], 0
je 0x7d4c82
mov eax, dword [edi + 0x10]
mov edi, dword [eax + 0x14]
mov dword [esp + 8], edi
mov edi, dword [eax + 0x20]
sub esp, 8
lea edx, [ecx + 0xc]
lea eax, [ecx + 4]
push esi
push edi
mov ecx, dword [esp + 0x18]
call fcn.00773850
add esp, 0x10
test ebx, ebx
jle 0x7d15c6
mov ecx, dword [esi + 4]
xor eax, eax
lea edx, [ecx + 0x30]
test byte [ecx + 8], 1
je 0x7d15bf
jmp 0x7cf0e2
movzx ecx, word [edx]
add edx, 0x28
and ecx, 1
jne 0x7cf0e2
add eax, 1
cmp ebx, eax
jne 0x7d15b0
mov eax, dword [esp + 0x20]
mov edi, dword [esp + 0x14]
sub esp, 0xc
mov ecx, esi
lea eax, [eax + eax*4]
lea eax, [edi + eax*8]
mov edx, dword [eax + 0x10]
mov eax, dword [eax + 0xc]
push 0
call fcn.0078df80
mov dword [esp + 0x18], eax
add esp, 0x10
test eax, eax
je case.0x7cde44.85
jmp 0x7cf0e2
mov eax, dword [ebp + 8]
mov esi, dword [esp + 0x14]
mov edx, dword [ebp + 4]
lea eax, [eax + eax*4]
lea ebx, [esi + eax*8]
mov eax, dword [esp]
mov eax, dword [eax + 0x60]
mov eax, dword [eax + edx*4]
mov eax, dword [eax + 0x28]
cmp byte [eax + 0x38], 0
je 0x7d2c85
cmp byte [eax + 0x39], 0
je 0x7d4c70
mov eax, dword [eax + 0x10]
mov esi, dword [eax + 0x14]
mov edi, dword [eax + 0x20]
cmp dword [ebx + 0x18], esi
jl 0x7d513d
mov edx, dword [ebx + 0x14]
movzx eax, word [ebx + 8]
mov dword [ebx + 0x10], edx
and eax, 0x2d
and ax, 0x3e40
sub esp, 4
mov dword [ebx + 0xc], esi
or eax, 0x10
mov word [ebx + 8], ax
push esi
push edi
push edx
call sub.msvcrt.dll_memcpy
mov eax, dword [esp + 0x10]
mov edx, dword [ebp + 0xc]
add esp, 0x10
mov eax, dword [eax + 0x60]
mov dword [esp + 8], 0
mov eax, dword [eax + edx*4]
mov dword [eax + 0x1c], 0
jmp case.0x7cde44.85
mov eax, dword [ebp + 8]
lea edx, [eax + eax*4]
mov eax, dword [esp]
mov eax, dword [eax + 0x58]
lea ebx, [eax + edx*8]
test word [ebx + 8], 0x2400
jne 0x7d431b
mov eax, 4
mov word [ebx + 8], ax
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov eax, dword [eax + 0x60]
mov eax, dword [eax + edx*4]
mov esi, dword [eax + 0x28]
mov eax, esi
call fcn.00761b80
mov eax, dword [esp + 4]
mov ecx, dword [esi + 0x2c]
cmp dword [eax + 0x6c], ecx
jb 0x7d0af3
sub esp, 0xc
xor edx, edx
mov eax, esi
push ebx
call fcn.007af090
mov dword [esp + 0x18], eax
add esp, 0x10
test eax, eax
jne 0x7ce385
mov eax, dword [ebp + 0xc]
test eax, eax
jne case.0x7cde44.85
test byte [ebx + 9], 0x10
je case.0x7cde44.85
mov eax, ebx
call fcn.00780b40
mov dword [esp + 8], eax
test eax, eax
je case.0x7cde44.85
jmp 0x7cf0a1
mov eax, dword [ebp + 8]
lea edx, [eax + eax*4]
mov eax, dword [esp]
mov eax, dword [eax + 0x58]
lea ebx, [eax + edx*8]
test word [ebx + 8], 0x2400
jne 0x7d4260
mov eax, 4
mov word [ebx + 8], ax
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov eax, dword [eax + 0x60]
mov esi, dword [eax + edx*4]
cmp byte [esi + 2], 0
jne 0x7d29f5
cmp byte [esi + 3], 0
je 0x7d4c41
mov eax, dword [esi + 0x40]
mov edx, dword [esi + 0x44]
mov dword [ebx], eax
mov dword [ebx + 4], edx
jmp case.0x7cde44.85
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov eax, dword [eax + 0x60]
mov eax, dword [eax + edx*4]
cmp byte [eax], 0
mov byte [eax + 2], 1
mov dword [eax + 0x1c], 0
jne case.0x7cde44.85
mov ebx, dword [eax + 0x28]
sub esp, 0xc
push dword [ebx + 0x10]
call fcn.007677d0
mov dword [ebx + 0x10], 0
add esp, 0x10
mov byte [ebx], 1
jmp case.0x7cde44.85
mov edi, dword [esp]
mov edx, dword [ebp + 4]
mov eax, dword [edi + 0x60]
mov esi, dword [eax + edx*4]
mov eax, dword [ebp + 8]
mov edx, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea eax, [edx + eax*8]
mov dword [esp + 0x20], eax
test byte [ebp + 2], 1
jne 0x7d29ec
mov eax, dword [esp + 0x20]
test byte [eax + 9], 0x40
jne 0x7d463c
mov eax, dword [esp + 0x20]
mov edi, dword [esi + 0x28]
mov eax, dword [eax + 0x10]
cmp bl, 0x82
je 0x7d4ebd
mov edx, dword [esp + 0x20]
movzx ecx, word [ebp + 2]
mov edx, dword [edx + 0xc]
mov dword [esp + 0xe8], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0xf0], edx
sar edx, 0x1f
mov dword [esp + 0xf4], edx
mov edx, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea eax, [edx + eax*8]
mov dword [esp + 0xfc], eax
mov eax, dword [ebp + 0x10]
mov word [esp + 0x100], ax
xor eax, eax
test cl, 0x10
je 0x7d1848
mov eax, dword [esi + 0x20]
sub esp, 0xc
and ecx, 0xa
push eax
mov eax, edi
lea edx, [esp + 0xf8]
call fcn.007b0090
mov dword [esi + 0x1c], 0
mov dword [esp + 0x18], eax
add esp, 0x10
jmp 0x7d0e82
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov ecx, dword [esp + 0x14]
mov eax, dword [eax + 0x60]
mov ebx, dword [eax + edx*4]
mov eax, dword [ebx + 0x2c]
mov esi, dword [ebx + 0x28]
mov dword [esp + 0xe8], eax
mov eax, dword [ebp + 0xc]
mov byte [esp + 0xf2], 0
mov word [esp + 0xf0], ax
mov eax, dword [ebp + 8]
lea eax, [eax + eax*4]
lea eax, [ecx + eax*8]
mov dword [esp + 0xec], eax
lea eax, [esp + 0xa0]
push eax
mov eax, esi
push 0
push 0
push 0
lea edx, [esp + 0xf8]
call fcn.007af0f0
mov dword [esp + 0x18], eax
add esp, 0x10
test eax, eax
jne 0x7ce385
mov eax, dword [esp + 0xa0]
test eax, eax
je 0x7d426e
mov dword [ebx + 0x1c], 0
mov dword [ebx + 0x20], 0
jmp case.0x7cde44.85
mov eax, dword [ebp + 4]
mov esi, dword [ebp + 0x10]
test eax, eax
mov dword [esp + 0x28], eax
mov eax, dword [esp + 4]
jne 0x7d47ca
mov ecx, dword [eax + 0xb8]
test ecx, ecx
jg 0x7d6daf
test esi, esi
je 0x7d3b11
sub esp, 0xc
push esi
call sub.msvcrt.dll_strlen
add esp, 0x10
and eax, 0x3fffffff
mov ebx, eax
mov eax, dword [esp + 4]
mov edx, dword [eax + 0x174]
test edx, edx
je 0x7d1969
mov ecx, dword [eax + 0x1d4]
xor edx, edx
add ecx, dword [eax + 0x1d8]
call fcn.0076f460
mov dword [esp + 8], eax
test eax, eax
jne 0x7ce385
mov eax, dword [esp + 4]
lea edx, [ebx + 0x21]
xor ecx, ecx
call fcn.00769310
mov dword [esp + 8], 0
mov edi, eax
test eax, eax
je case.0x7cde44.85
sub esp, 4
lea eax, [eax + 0x20]
add ebx, 1
mov dword [edi], eax
push ebx
push esi
push eax
call sub.msvcrt.dll_memcpy
add esp, 0x10
mov eax, dword [esp + 4]
cmp byte [eax + 0x4f], 0
je 0x7d524d
mov byte [eax + 0x4f], 0
mov byte [eax + 0x57], 1
mov esi, dword [esp + 4]
mov dword [esp + 8], 0
mov eax, dword [esi + 0x1cc]
mov edx, dword [esi + 0x1e4]
mov dword [edi + 0x18], eax
mov eax, dword [esi + 0x1e0]
mov dword [esi + 0x1cc], edi
mov dword [edi + 8], eax
mov eax, dword [esi + 0x1e8]
mov dword [edi + 0xc], edx
mov edx, dword [esi + 0x1ec]
mov dword [edi + 0x10], eax
mov dword [edi + 0x14], edx
jmp case.0x7cde44.85
mov dword [esp + 0xa0], 0
mov eax, dword [ebp + 8]
mov dword [esp + 0xe8], 0
mov dword [esp + 0xec], 0
lea edx, [eax + eax*4]
mov eax, dword [esp]
mov eax, dword [eax + 0x58]
lea eax, [eax + edx*8]
mov dword [esp + 0x30], eax
test word [eax + 8], 0x2400
jne 0x7d462e
mov eax, dword [esp + 0x30]
mov edi, 4
mov word [eax + 8], di
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov eax, dword [eax + 0x60]
mov edi, dword [eax + edx*4]
test byte [edi + 8], 2
je 0x7d45c0
mov edx, dword [ebp + 0xc]
test edx, edx
je 0x7d3893
mov eax, dword [esp]
lea edx, [edx + edx*4]
mov ecx, dword [esp + 0x14]
shl edx, 3
mov eax, dword [eax + 0xc8]
add ecx, edx
mov dword [esp + 0x20], ecx
test eax, eax
jne 0x7d4d89
mov ebx, dword [esp + 0x20]
mov eax, ebx
call fcn.0076cf00
movzx ecx, word [ebx + 8]
mov dword [ebx], eax
mov word [esp + 0x28], cx
and cx, 0x3e40
or ecx, 4
mov dword [ebx + 4], edx
mov word [ebx + 8], cx
mov ecx, eax
mov ebx, edx
not ecx
xor ebx, 0x7fffffff
or ebx, ecx
je 0x7d63b5
test byte [edi + 8], 2
jne 0x7d63b5
mov ecx, dword [esp + 0xe8]
mov ebx, dword [esp + 0xec]
mov esi, edx
cmp eax, ecx
sbb esi, ebx
jl 0x7d1aeb
add eax, 1
adc edx, 0
mov ecx, eax
mov ebx, edx
mov eax, dword [esp + 0x20]
mov dword [eax], ecx
mov dword [eax + 4], ebx
mov eax, dword [esp + 0x30]
mov byte [edi + 3], 0
mov dword [edi + 0x1c], 0
mov dword [eax], ecx
mov dword [eax + 4], ebx
jmp case.0x7cde44.85
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 4]
xor esi, esi
mov dword [esp + 0x20], 0
mov ecx, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea edi, [ecx + eax*8]
mov eax, dword [esp]
mov eax, dword [eax + 0x60]
mov ebx, dword [eax + edx*4]
mov eax, dword [ebp + 0xc]
lea eax, [eax + eax*4]
mov edx, dword [ecx + eax*8 + 4]
mov eax, dword [ecx + eax*8]
mov dword [esp + 0xf4], edx
mov dword [esp + 0xf0], eax
cmp byte [ebp + 1], 0xfa
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], edx
je 0x7d3e97
movzx eax, word [ebp + 2]
mov word [esp + 8], ax
test byte [esp + 8], 1
je 0x7d1b74
mov eax, dword [esp]
add dword [eax + 0x2c], 1
test byte [esp + 8], 0x20
je 0x7d1b8d
mov eax, dword [esp + 4]
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
mov dword [eax + 0x28], edx
mov dword [eax + 0x2c], ecx
mov eax, dword [edi + 0x10]
xor edx, edx
mov dword [esp + 0xf8], eax
mov eax, dword [edi + 0xc]
mov dword [esp + 0x104], eax
test byte [esp + 8], 0x10
je 0x7d1bad
mov edx, dword [ebx + 0x20]
xor eax, eax
test byte [edi + 9], 0x40
jne 0x7d2b77
mov dword [esp + 0x108], eax
mov ecx, dword [esp + 8]
sub esp, 0xc
mov dword [esp + 0xf4], 0
mov eax, dword [ebx + 0x28]
push edx
and ecx, 0xa
lea edx, [esp + 0xf8]
call fcn.007b0090
mov byte [ebx + 3], 0
mov dword [esp + 0x18], eax
add esp, 0x10
mov dword [ebx + 0x1c], 0
test eax, eax
jne 0x7ce385
test esi, esi
je case.0x7cde44.85
movzx eax, word [ebp + 2]
mov edi, dword [esp + 4]
mov ecx, dword [esi]
and eax, 4
mov edx, dword [edi + 0xe8]
cmp ax, 1
sbb eax, eax
sub esp, 8
and eax, 0xfffffffb
push dword [esp + 0xfc]
add eax, 0x17
push dword [esp + 0xfc]
push ecx
push dword [esp + 0x34]
push eax
push dword [edi + 0xe4]
call edx
add esp, 0x20
jmp case.0x7cde44.85
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 4]
xor edi, edi
mov dword [esp + 0x20], 0
cmp byte [ebp + 1], 0xfa
mov dword [esp + 8], eax
mov eax, dword [esp]
mov eax, dword [eax + 0x60]
mov ebx, dword [eax + edx*4]
movzx eax, word [ebp + 2]
mov esi, dword [ebx + 0x28]
je 0x7d3f11
movzx edx, al
mov eax, esi
call fcn.007afb70
mov dword [ebx + 0x1c], 0
mov dword [ebx + 0x20], 0
test eax, eax
jne 0x7d6b50
and dword [esp + 8], 1
je case.0x7cde44.85
mov eax, dword [esp]
mov esi, dword [esp + 4]
mov dword [esp + 8], 0
add dword [eax + 0x2c], 1
mov eax, dword [esi + 0xe8]
test eax, eax
je case.0x7cde44.85
test byte [edi + 0x24], 0x80
jne case.0x7cde44.85
sub esp, 8
push dword [ebx + 0x44]
push dword [ebx + 0x40]
push dword [edi]
push dword [esp + 0x34]
push 9
push dword [esi + 0xe4]
call eax
add esp, 0x20
jmp case.0x7cde44.85
mov eax, dword [ebp + 8]
lea edx, [eax + eax*4]
mov eax, dword [esp]
mov eax, dword [eax + 0x58]
lea edi, [eax + edx*8]
test word [edi + 8], 0x2400
jne 0x7d430d
mov eax, 4
mov word [edi + 8], ax
mov eax, dword [ebp + 4]
mov edx, dword [esp + 4]
mov ecx, dword [ebp + 0xc]
shl eax, 4
add eax, dword [edx + 0x10]
mov ebx, dword [eax + 4]
movzx eax, byte [ebx + 9]
test ecx, ecx
jne 0x7d2b7e
test al, al
je 0x7d534c
mov eax, ebx
call fcn.0076c790
mov eax, dword [ebx + 4]
mov eax, dword [eax]
mov esi, dword [eax + 0x9c]
cmp byte [ebx + 9], 0
je 0x7d1d5f
sub dword [ebx + 0xc], 1
je 0x7d535c
mov dword [edi], esi
sar esi, 0x1f
mov dword [edi + 4], esi
jmp case.0x7cde44.85
mov eax, dword [ebp + 4]
mov edx, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea edi, [edx + eax*8]
mov eax, dword [ebp + 8]
lea eax, [eax + eax*4]
lea esi, [edx + eax*8]
mov eax, dword [ebp + 0xc]
lea eax, [eax + eax*4]
lea ebx, [edx + eax*8]
movzx edx, word [edi + 8]
movzx eax, word [esi + 8]
mov word [esp + 0x20], ax
or eax, edx
mov word [esp + 0x28], dx
test al, 1
jne 0x7d2a74
test byte [esp + 0x28], 0x12
je 0x7d52b2
test word [esp + 0x28], 0x4000
jne 0x7d5810
test byte [esp + 0x20], 0x12
je 0x7d52e2
test word [esp + 0x20], 0x4000
jne 0x7d57f7
mov ecx, dword [esp + 4]
mov eax, dword [esi + 0xc]
add eax, dword [edi + 0xc]
mov dword [esp + 0x30], eax
cmp eax, dword [ecx + 0x6c]
jg 0x7d0af3
xor ecx, ecx
cmp esi, ebx
lea edx, [eax + 3]
mov eax, ebx
sete cl
call fcn.0077fe80
test eax, eax
jne 0x7cf0a1
movzx eax, word [ebx + 8]
mov edx, dword [esi + 0xc]
and ax, 0x3e40
or eax, 2
mov word [ebx + 8], ax
mov eax, dword [ebx + 0x10]
cmp esi, ebx
je 0x7d1e40
mov ecx, dword [esi + 0x10]
sub esp, 4
push edx
push ecx
push eax
call sub.msvcrt.dll_memcpy
movzx eax, word [esp + 0x30]
mov edx, dword [esi + 0xc]
add esp, 0x10
mov word [esi + 8], ax
mov eax, dword [ebx + 0x10]
add eax, edx
mov edx, dword [edi + 0x10]
sub esp, 4
push dword [edi + 0xc]
push edx
push eax
call sub.msvcrt.dll_memcpy
movzx eax, word [esp + 0x38]
mov esi, dword [esp + 0x40]
mov word [edi + 8], ax
mov eax, dword [ebx + 0x10]
mov byte [eax + esi], 0
mov eax, dword [ebx + 0x10]
mov byte [eax + esi + 1], 0
mov eax, dword [ebx + 0x10]
mov byte [eax + esi + 2], 0
movzx eax, byte [esp + 0x4b]
add esp, 0x10
or word [ebx + 8], 0x200
mov dword [ebx + 0xc], esi
mov byte [ebx + 0xa], al
jmp case.0x7cde44.85
mov eax, dword [esp + 4]
mov ebx, dword [ebp + 4]
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 8]
shl ebx, 4
add ebx, dword [eax + 0x10]
mov eax, dword [ebx + 4]
call fcn.007a9d30
mov dword [esp + 8], eax
mov eax, dword [ebp + 8]
cmp eax, 1
je 0x7d3ee0
cmp eax, 2
je 0x7d3996
cmp dword [ebp + 4], 1
jne 0x7d0e82
mov eax, dword [esp + 4]
mov edx, dword [eax + 4]
test edx, edx
je 0x7d1ef2
movzx eax, byte [edx + 0x98]
and eax, 0xfffffffc
or eax, 1
mov byte [edx + 0x98], al
mov edx, dword [edx + 8]
test edx, edx
jne 0x7d1ed8
mov eax, dword [esp]
and byte [eax + 0x98], 0xfc
jmp 0x7d0e82
sub esp, 8
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 4]
push 3
push 0xffffffffffffffff
mov eax, dword [esp + 0x10]
call fcn.007b4cb0
add esp, 0x10
test eax, eax
je 0x7cf0a1
mov byte [eax + 2], 1
mov edx, dword [ebp + 8]
mov byte [eax + 4], 1
mov dword [eax + 0x20], edx
mov dword [eax + 0x28], 0xc13ea8
jmp case.0x7cde44.85
mov eax, dword [ebp + 4]
mov edx, dword [esp + 0x14]
mov ecx, 4
lea eax, [eax + eax*4]
lea edx, [edx + eax*8]
mov eax, ebp
sub eax, dword [esp + 0x18]
sar eax, 2
mov word [edx + 8], cx
imul eax, eax, 0xcccccccd
mov dword [edx], eax
sar eax, 0x1f
mov dword [edx + 4], eax
lea esi, [esi]
mov eax, dword [ebp + 8]
jmp 0x7ceaf3
mov eax, dword [ebp + 4]
lea edx, [eax + eax*4]
mov eax, dword [esp]
mov eax, dword [eax + 0x64]
lea esi, [eax + edx*8 - 0x28]
movzx eax, word [esi + 8]
test al, 0x12
jne 0x7d3ec1
mov eax, dword [ebp + 8]
mov edi, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea ebx, [edi + eax*8]
test word [ebx + 8], 0x2400
jne 0x7d4660
mov eax, dword [esi]
mov dword [ebx], eax
mov eax, dword [esi + 4]
mov dword [ebx + 4], eax
mov eax, dword [esi + 8]
mov dword [ebx + 8], eax
mov eax, dword [esi + 0xc]
mov dword [ebx + 0xc], eax
mov eax, dword [esi + 0x10]
mov dword [ebx + 0x10], eax
movzx eax, word [ebx + 8]
and ah, 0xeb
or ax, 0x840
mov word [ebx + 8], ax
jmp case.0x7cde44.85
mov eax, dword [ebp + 8]
lea edx, [eax + eax*4]
mov eax, dword [esp]
mov eax, dword [eax + 0x58]
lea eax, [eax + edx*8]
test word [eax + 8], 0x2400
jne 0x7d4676
mov ebx, 4
mov word [eax + 8], bx
mov edx, dword [ebp + 4]
mov dword [eax], edx
sar edx, 0x1f
mov dword [eax + 4], edx
jmp case.0x7cde44.85
mov eax, dword [ebp + 8]
lea edx, [eax + eax*4]
mov eax, dword [esp]
mov eax, dword [eax + 0x58]
lea eax, [eax + edx*8]
test word [eax + 8], 0x2400
jne 0x7d466c
mov ecx, 4
mov word [eax + 8], cx
mov edx, dword [ebp + 0x10]
mov ecx, dword [edx]
mov ebx, dword [edx + 4]
mov dword [eax], ecx
mov dword [eax + 4], ebx
jmp case.0x7cde44.85
mov esi, dword [esp]
mov eax, dword [ebp + 8]
mov edx, dword [esi + 0x58]
lea ecx, [eax + eax*4]
lea ebx, [edx + ecx*8]
test word [ebx + 8], 0x2400
jne 0x7d4698
mov esi, 4
mov word [ebx + 8], si
mov esi, dword [ebp + 0xc]
sub esi, eax
cmp dword [ebp + 4], 1
mov dword [ebx + 0xc], 0
sbb edi, edi
and di, 0xff00
add di, 0x101
mov word [ebx + 8], di
test esi, esi
jg 0x7d20a8
jmp case.0x7cde44.85
mov word [ebx + 8], di
mov dword [ebx + 0xc], 0
sub esi, 1
je case.0x7cde44.85
add ebx, 0x28
test word [ebx + 8], 0x2400
je 0x7d2094
mov eax, ebx
call fcn.00767c10
jmp 0x7d2094
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea edx, [ecx + eax*8]
movzx eax, word [edx + 8]
and al, 0x40
or eax, 1
mov word [edx + 8], ax
jmp case.0x7cde44.85
mov eax, dword [ebp + 8]
lea edx, [eax + eax*4]
mov eax, dword [esp]
mov eax, dword [eax + 0x58]
lea ebx, [eax + edx*8]
test word [ebx + 8], 0x2400
jne 0x7d468a
mov ecx, 4
mov word [ebx + 8], cx
sub esp, 8
mov ecx, dword [ebp + 4]
mov edx, dword [ebp + 0x10]
mov eax, ebx
push 0
push 0
call fcn.00780ba0
movzx eax, byte [esp + 0x4b]
add esp, 0x10
mov byte [ebx + 0xa], al
jmp case.0x7cde44.85
mov edi, dword [esp]
mov edx, dword [ebp + 8]
sub esp, 8
mov eax, dword [edi + 0x60]
mov ebx, dword [eax + edx*4]
mov edx, dword [ebp + 4]
mov eax, edi
movsx ecx, word [ebx + 0x38]
push 0
push 0xffffffffffffffff
call fcn.007b4cb0
add esp, 0x10
mov ecx, eax
test eax, eax
je 0x7cf0a1
mov byte [eax + 2], 1
movzx eax, byte [eax + 8]
sub esp, 8
or eax, 1
mov byte [ecx + 8], al
mov edi, dword [ebx + 0x2c]
and eax, 0xfffffffb
mov dword [ecx + 0x2c], edi
movzx edx, byte [ebx + 4]
mov byte [ecx + 4], dl
mov edx, dword [ebx + 0x34]
mov dword [ecx + 0x34], edx
movzx esi, byte [ebx + 8]
and esi, 4
or eax, esi
mov byte [ecx + 8], al
mov eax, dword [ebx + 0xc]
push dword [ecx + 0x28]
mov ecx, 4
push edi
call fcn.00788f80
mov dword [esp + 0x18], eax
add esp, 0x10
jmp case.0x7cde44.85
mov eax, dword [ebp + 8]
lea edx, [eax + eax*4]
mov eax, dword [esp]
mov eax, dword [eax + 0x58]
lea eax, [eax + edx*8]
test word [eax + 8], 0x2400
jne 0x7d4680
mov edx, 4
mov word [eax + 8], dx
mov edi, dword [esp]
mov ecx, dword [ebp + 4]
mov edx, dword [edi + 0x60]
mov edx, dword [edx + ecx*4]
mov ecx, dword [edx + 0x10]
mov ebx, dword [edx + 0x14]
mov esi, ecx
mov edi, ebx
add esi, 1
adc edi, 0
mov dword [edx + 0x10], esi
mov dword [edx + 0x14], edi
mov dword [eax], ecx
mov dword [eax + 4], ebx
jmp case.0x7cde44.85
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov eax, dword [eax + 0x60]
mov ebx, dword [eax + edx*4]
test ebx, ebx
je 0x7d3293
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x7d3293
mov dword [ebx + 0x10], 0
mov edx, dword [ebx + 0x34]
xor ecx, ecx
mov dword [ebx + 0x14], 0
mov dword [ebx + 0x1c], 0
call fcn.007ae870
mov dword [esp + 8], eax
mov esi, dword [esp + 8]
test esi, esi
jne 0x7ce385
mov byte [ebx + 2], 1
jmp case.0x7cde44.85
mov eax, dword [ebp + 4]
mov edi, dword [esp + 0x14]
mov edx, dword [ebp + 0xc]
lea eax, [eax + eax*4]
lea ebx, [edi + eax*8]
mov eax, dword [ebp + 8]
lea edx, [edx + edx*4]
lea esi, [edi + edx*8]
movzx edx, word [ebx + 8]
lea eax, [eax + eax*4]
mov dword [esp + 0x28], esi
lea eax, [edi + eax*8]
or dx, word [eax + 8]
and edx, 1
je 0x7d3f98
test word [esi + 8], 0x2400
jne 0x7d398a
mov eax, dword [esp + 0x28]
mov edx, 1
mov word [eax + 8], dx
jmp case.0x7cde44.85
mov eax, dword [ebp + 4]
mov edx, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea eax, [edx + eax*8]
mov dword [esp + 0x28], eax
movzx eax, word [eax + 8]
mov ebx, eax
and bx, 0x2c
jne 0x7d3a1f
test al, 0x12
jne 0x7d3a14
mov edx, dword [ebp + 8]
mov edi, dword [esp + 0x14]
lea edx, [edx + edx*4]
lea edi, [edi + edx*8]
movzx edx, word [edi + 8]
mov dword [esp + 0x40], edi
mov ebx, edx
and bx, 0x2c
jne 0x7d70cb
test dl, 0x12
jne 0x7d54fd
mov eax, dword [ebp + 0xc]
mov ecx, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea eax, [ecx + eax*8]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x28]
or dx, word [eax + 8]
and edx, 1
jne 0x7d3b64
mov eax, dword [esp + 0x28]
call fcn.0076cfa0
mov eax, dword [esp + 0x40]
fstp qword [esp + 0x20]
call fcn.0076cfa0
movzx eax, byte [ebp]
fld qword [esp + 0x20]
cmp al, 0x6a
je 0x7d5d9d
jbe 0x7d3d26
cmp al, 0x6b
je 0x7d5cab
cmp al, 0x6c
jne 0x7d5d2c
fldz
fxch st(1)
fucomi st(1)
fstp st(1)
jnp 0x7d3b5a
fdivp st(1)
fstp qword [esp + 0x20]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
mov edx, eax
and edx, 0x7ff00000
cmp edx, 0x7ff00000
je 0x7d5652
mov edx, dword [esp + 0x30]
fld qword [esp + 0x20]
movzx eax, word [edx + 8]
fstp qword [edx]
mov word [esp + 0x20], ax
and ax, 0x3e40
or eax, 8
mov word [edx + 8], ax
jmp case.0x7cde44.85
mov edi, dword [esp]
mov edx, dword [ebp + 4]
mov eax, dword [edi + 0x60]
mov edx, dword [eax + edx*4]
mov eax, edi
call fcn.007b4b20
mov edx, dword [ebp + 4]
mov eax, dword [edi + 0x60]
mov dword [eax + edx*4], 0
jmp case.0x7cde44.85
mov eax, dword [esp]
mov edx, dword [ebp + 4]
mov eax, dword [eax + 0x60]
mov edx, dword [eax + edx*4]
movzx eax, byte [ebp + 8]
and eax, 1
lea ecx, [eax*8]
movzx eax, byte [edx + 8]
and eax, 0xfffffff7
or eax, ecx
mov byte [edx + 8], al
jmp case.0x7cde44.85
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 4]
shl eax, 4
add eax, dword [ecx + 0x10]
mov ebx, dword [eax + 4]
test ebx, ebx
je 0x7d30d3
lea ecx, [esp + 0xe8]
mov eax, ebx
call fcn.007a94e0
mov dword [esp + 8], eax
test eax, eax
jne 0x7d6e0f
mov eax, dword [esp]
cmp byte [eax + 0x98], 0
js 0x7d3001
cmp word [ebp + 2], 0
je 0x7d246f
mov eax, dword [esp + 0xe8]
cmp dword [ebp + 0xc], eax
jne 0x7d6e3f
mov eax, dword [ebp + 4]
mov esi, dword [esp + 4]
mov edi, dword [ebp + 0x10]
shl eax, 4
add eax, dword [esi + 0x10]
mov eax, dword [eax + 0xc]
cmp dword [eax + 4], edi
jne 0x7d6e3f
mov ecx, dword [esp + 8]
test ecx, ecx
jne 0x7ce385
mov dword [esp + 8], 0
jmp case.0x7cde44.85
test ebx, ebx
je 0x7d53f7
mov esi, dword [ebx + 8]
mov eax, dword [esp]
mov edi, dword [esi]
add eax, 0x7c
mov dword [esp + 0x20], eax
mov ecx, dword [edi + 0x38]
test ecx, ecx
je 0x7d395e
test edx, edx
jle 0x7d24d0
mov eax, dword [esp + 4]
mov ecx, dword [eax + 0x174]
xor eax, eax
cmp ebx, dword [ecx]
jne 0x7d24c9
jmp 0x7d697d
cmp ebx, dword [ecx + eax*4]
je 0x7d4d6d
add eax, 1
cmp edx, eax
jne 0x7d24c0
mov esi, dword [esp + 4]
mov eax, esi
call fcn.00785740
test eax, eax
je 0x7d553b
mov ecx, dword [ebx + 8]
mov edx, dword [esp + 0x20]
mov dword [esp + 8], eax
mov eax, dword [esp]
add ecx, 8
call fcn.00774eb0
mov eax, ebp
mov esi, dword [esp + 4]
sub eax, dword [esp + 0x18]
sar eax, 2
imul edi, eax, 0xcccccccd
movzx ecx, byte [esi + 0x51]
jmp 0x7ce108
test al, 8
je 0x7d2580
add dword [esp + 0x28], 1
mov dword [ebx + 0x1c], 7
add dword [esp + 0x30], 8
adc dword [esp + 0x34], 0
jmp 0x7cf981
mov ebp, 0x7f
not ecx
mov edx, edi
cmp ebp, ecx
not edx
mov ebp, 0
sbb ebp, edx
jge 0x7cf9dc
mov ebp, 0x7fff
cmp ebp, ecx
mov ebp, 0
sbb ebp, edx
jb 0x7d26ca
add dword [esp + 0x30], 2
mov dword [ebx + 0x1c], 2
adc dword [esp + 0x34], 0
jmp 0x7cf981
mov edx, eax
mov edi, dword [ebx + 0xc]
shr dx, 1
and edx, 1
lea esi, [edx + edi*2 + 0xc]
test ah, 0x40
je 0x7d25b2
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
mov eax, dword [ebx]
or ecx, edx
lea esi, [esi + eax*2]
jne 0x7d3c48
cdq
add dword [esp + 0x48], eax
adc dword [esp + 0x4c], edx
xor edx, edx
mov eax, esi
add dword [esp + 0x30], edi
mov ecx, 1
adc dword [esp + 0x34], edx
xor edx, edx
shrd eax, edx, 7
shr edx, 7
mov edi, edx
or edi, eax
je 0x7d25e2
shrd eax, edx, 7
shr edx, 7
add ecx, 1
mov ebp, edx
or ebp, eax
jne 0x7d25d2
add dword [esp + 0x28], ecx
mov dword [ebx + 0x1c], esi
jmp 0x7cf981
mov dword [esp + 0x1c], ebx
add ebp, 0x14
jmp 0x7cde30
mov dword [esp + 0x1c], ebx
add ebp, 0x14
jmp 0x7cde30
cmp byte [ecx + 2], 0
movzx esi, word [ebx + 0x46]
jne 0x7d2627
xor edx, edx
movzx eax, di
add dword [esp + 0x20], eax
adc dword [esp + 0x24], edx
mov edx, dword [ecx + 0x38]
cmp si, di
je 0x7d2708
mov eax, dword [ecx + 0x40]
movzx esi, si
movzx edi, byte [eax + esi*2]
movzx eax, byte [eax + esi*2 + 1]
shl edi, 8
or eax, edi
movzx edi, word [ecx + 0x1a]
and eax, edi
mov edx, dword [edx + eax]
mov eax, ebx
bswap edx
call fcn.00788b00
test eax, eax
jne 0x7d48c2
mov eax, dword [ebp + 0x108]
test eax, eax
je 0x7d0299
mov ebp, dword [esp + 8]
mov dword [esp + 0x20], 0
mov dword [esp + 0x24], 0
jmp 0x7d02f8
mov dword [esp + 8], 7
mov ebx, 3
mov eax, dword [esp + 8]
call fcn.00770370
sub esp, 4
push eax
push 0xbec70c
mov esi, dword [esp + 0xc]
push esi
call fcn.00795be0
mov eax, esi
mov esi, dword [esp + 0x18]
add esp, 0x10
mov dword [eax + 0x28], esi
jmp 0x7ce0a9
mov ebp, 0x7fffff
cmp ebp, ecx
mov ebp, 0
sbb ebp, edx
jae 0x7d299c
mov ebp, 0x7fffffff
cmp ebp, ecx
mov ecx, 0
sbb ecx, edx
jb 0x7d47a8
add dword [esp + 0x30], 4
mov dword [ebx + 0x1c], 4
adc dword [esp + 0x34], 0
jmp 0x7cf981
movzx eax, byte [ecx + 9]
mov edx, dword [edx + eax + 8]
mov eax, ebx
bswap edx
call fcn.00788b00
jmp 0x7d2659
mov ebp, dword [esp + 0x28]
jmp case.0x7cde44.85
sub esp, 4
push eax
push ecx
push ebx
call dword [edi + 0x10]
add esp, 0x10
jmp 0x7d09eb
mov eax, dword [esp + 0x28]
mov ebp, dword [esp + 0x58]
cmp eax, 0x7e
jg 0x7d49ec
add eax, 1
mov dword [esp + 0x60], eax
mov dword [esp + 0x58], eax
sar eax, 0x1f
mov dword [esp + 0x5c], eax
mov esi, dword [esp + 0x48]
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0x30]
mov edi, dword [esp + 0x4c]
add edx, dword [esp + 0x58]
mov eax, dword [eax + 0x18]
mov ecx, dword [esp + 0x34]
adc ecx, dword [esp + 0x5c]
add esi, edx
adc edi, ecx
mov dword [esp + 0x28], esi
mov dword [esp + 0x2c], edi
mov edi, eax
sar edi, 0x1f
cmp eax, dword [esp + 0x28]
sbb edi, dword [esp + 0x2c]
jge 0x7d49db
mov edi, dword [esp + 4]
mov ebx, dword [edi + 0x6c]
mov edi, ebx
sar edi, 0x1f
cmp ebx, dword [esp + 0x28]
sbb edi, dword [esp + 0x2c]
jl 0x7d0af3
mov ebx, edx
cmp eax, edx
jl 0x7d3af6
mov eax, dword [esp + 0x50]
mov esi, dword [eax + 0x14]
mov dword [eax + 0x10], esi
mov edi, dword [esp + 0x50]
mov edx, 0x10
mov ecx, dword [esp + 0x48]
mov dword [edi + 0xc], ebx
mov ebx, dword [esp + 0x4c]
mov word [edi + 8], dx
mov edx, ebx
or edx, ecx
je 0x7d27f0
mov eax, 0x4010
mov dword [edi], ecx
mov word [edi + 8], ax
mov eax, dword [esp + 0x60]
lea ebx, [esi + eax]
cmp eax, 0x7f
jg 0x7d3ccf
mov byte [esi], al
mov eax, 1
add esi, eax
mov dword [esp + 0x28], ebp
mov edi, dword [esp + 0x20]
jmp 0x7d2829
cmp ecx, 0xb
ja 0x7d3ba0
add edi, 0x28
cmp dword [esp + 0x40], edi
jb 0x7d3bbe
mov ecx, dword [edi + 0x1c]
cmp ecx, 0x7f
ja 0x7d3b90
lea eax, [ecx - 1]
mov byte [esi], cl
add esi, 1
cmp eax, 6
ja 0x7d2813
movzx ebp, byte [ecx + 0xbfa2c0]
mov eax, dword [edi]
mov edx, dword [edi + 4]
mov ecx, ebp
sub ecx, 1
mov byte [ebx + ecx], al
shrd eax, edx, 8
shr edx, 8
test ecx, ecx
jne 0x7d2850
add ebx, ebp
jmp 0x7d281c
lea eax, [ecx - 1]
mov dword [ebx + 8], esi
cmp eax, 0xffffffff
je 0x7d09cd
mov edx, dword [ebp + 8]
mov dword [esp + 0x20], eax
add edx, eax
mov eax, dword [esp + 0x14]
lea edx, [edx + edx*4]
lea edx, [eax + edx*8]
mov eax, dword [esp + 0x20]
lea esi, [esi]
nop
mov dword [ebx + eax*4 + 0x1c], edx
sub eax, 1
sub edx, 0x28
cmp eax, 0xffffffff
jne 0x7d2890
jmp 0x7d09cd
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x20]
or ecx, 8
mov dword [esp + 0x34], edx
fild qword [esp + 0x30]
mov word [eax + 8], cx
fstp qword [eax]
jmp 0x7cffb0
cmp byte [edi + 0x38], 0
jne 0x7d35a9
mov eax, dword [edi + 0x24]
test eax, eax
je 0x7d53a8
lea ecx, [edi + 0x28]
lea edx, [edi + 0x24]
lea eax, [edi + 0x40]
call fcn.00779450
mov dword [esp + 8], eax
test eax, eax
jne 0x7ce385
mov byte [esi + 2], 0
jmp case.0x7cde44.85
mov ebp, ebx
mov ebx, dword [esp + 8]
mov eax, dword [esp + 4]
cmp byte [eax + 0x51], 0
jne 0x7ce2e3
mov eax, dword [esp + 4]
test byte [eax + 0x58], 4
je 0x7d292f
push 0
push dword [esp + 4]
push dword [eax + 0xd0]
push 4
call dword [eax + 0xcc]
add esp, 0x10
mov eax, dword [esp]
add ebx, 1
mov esi, 0x64
mov dword [eax + 0x24], ebx
jmp 0x7ce169
call fcn.00767e10
jmp 0x7ce491
sub esp, 0xc
push dword [eax + 0xc]
call fcn.00777e20
mov edi, dword [esp + 0x14]
mov ecx, esi
mov edx, ebx
and dword [edi + 0x18], 0xffffffef
mov eax, edi
mov dword [esp], 1
call fcn.007d86a0
mov esi, dword [esp + 0x10]
or dword [edi + 0x18], 1
mov dword [esp + 0x18], eax
add esp, 0x10
and byte [esi + 0x98], 0xfc
test eax, eax
jne 0x7d3577
mov dword [esp + 8], 0
jmp case.0x7cde44.85
add dword [esp + 0x30], 3
mov dword [ebx + 0x1c], 3
adc dword [esp + 0x34], 0
jmp 0x7cf981
mov edx, dword [esi + 0x24]
mov edi, dword [esi + 0x28]
mov eax, dword [edx + 4]
mov dword [esi + 0x24], eax
mov dword [edx + 4], 0
test edi, edi
je 0x7d5474
test eax, eax
jne 0x7cdfb8
mov dword [ebx + 0x1c], 0
jmp 0x7cfddb
mov eax, dword [ebp - 4]
lea edi, [eax + 4]
jmp 0x7cf58c
add dword [edi + 0x2c], 1
jmp 0x7d17db
mov eax, 1
mov word [ebx + 8], ax
jmp case.0x7cde44.85
lea eax, [eax + eax*4]
lea edi, [edx + eax*8]
xor edx, edx
xor eax, eax
mov dword [esp + eax + 0xe8], edx
add eax, 4
cmp eax, 0x20
jb 0x7d2a0d
test word [edi + 8], 0x2400
jne 0x7d5340
mov eax, 1
mov word [edi + 8], ax
mov dword [esp + 0xf0], ebx
sub esp, 0xc
mov dword [esp + 0xf4], edi
mov dword [esp + 0xf8], esi
lea eax, [esp + 0xf4]
push eax
call dword [esi + 0x18]
mov eax, dword [esp + 0x10c]
mov esi, dword [esp + 0x24]
mov dword [esp + 0x18], eax
mov eax, dword [ebp + 0xc]
add esp, 0x10
lea eax, [eax + eax*4]
lea ebx, [esi + eax*8]
jmp 0x7d0aac
test word [ebx + 8], 0x2400
jne 0x7d5368
mov eax, 1
mov word [ebx + 8], ax
jmp case.0x7cde44.85
mov eax, dword [ebx + 0x18]
test eax, eax
je 0x7d4dc5
mov eax, dword [eax + edx*4 + 4]
test eax, eax
jle 0x7d4dc5
sub eax, 1
mov ebx, dword [ebx + 0x24]
mov dword [esp + 0x28], eax
jmp 0x7cfe15
movzx eax, word [ecx + 8]
mov word [esp + 0x28], ax
and eax, 0x2e
cmp ax, 2
je 0x7d5ae2
mov eax, ecx
mov dword [esp + 0x30], ecx
call fcn.0076cf00
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], edx
movzx eax, word [ecx + 8]
movzx edx, word [esp + 0x28]
mov word [ecx + 8], dx
test al, 0x24
jne 0x7d43f6
test al, 8
jne 0x7d5388
cmp esi, 0x17
jg 0x7d1f70
test al, 1
jne 0x7d1f70
mov eax, dword [edi + 0x28]
lea edx, [esp + 0xa0]
call fcn.00788dd0
mov dword [esp + 8], eax
test eax, eax
jne 0x7ce385
mov eax, dword [esp + 0xa0]
test eax, eax
jne 0x7d3e81
mov dword [esp + 8], 0
jmp case.0x7cde44.85
add dword [edi + 0x1e8], eax
adc dword [edi + 0x1ec], edx
jmp case.0x7cde44.85
cmp dword [esp + 8], 5
jne 0x7ce385
mov dword [esp + 0xe8], 1
mov edx, 1
jmp 0x7d0679
mov eax, dword [edi]
jmp 0x7d1bb9
mov edx, dword [ebx + 4]
mov esi, dword [edx + 0x2c]
and esi, 0x7fffffff
cmp esi, ecx
cmovb esi, ecx
test al, al
je 0x7d540e
mov eax, ebx
call fcn.0076c790
mov eax, dword [ebx + 4]
mov eax, dword [eax]
test esi, esi
jle 0x7d1d49
mov dword [eax + 0x9c], esi
jmp 0x7d1d4f
cmp esi, 5
je 0x7d5404
mov eax, dword [esp + 0x20]
cmp esi, eax
je 0x7d2bd0
cmp eax, 5
je 0x7cfacc
mov eax, dword [esp + 8]
test eax, eax
cmovne esi, dword [esp + 0x20]
mov dword [esp + 0x20], esi
mov edx, dword [esp + 0x20]
mov eax, ebx
mov ebx, 0xa02
call fcn.007a9290
mov word [edi + 8], bx
cmp eax, 6
je 0x7d59e4
mov eax, dword [eax*4 + 0xbf5154]
mov dword [edi + 0x10], eax
test eax, eax
je 0x7d6183
sub esp, 0xc
push eax
call sub.msvcrt.dll_strlen
add esp, 0x10
and eax, 0x3fffffff
movzx edx, byte [esp + 0x3b]
mov dword [edi + 0xc], eax
mov byte [edi + 0xa], 1
cmp edx, 1
je 0x7d0e82
mov eax, edi
call fcn.00782920
jmp 0x7d0e82
mov edx, eax
and edx, 0x20
mov word [esp + 0x48], dx
test al, 0x80
je 0x7d4c94
movzx edx, word [esp + 0x40]
and edx, ecx
and edx, 1
je 0x7d2c69
mov edx, ecx
and dh, 1
je 0x7d3e1d
test byte [esp + 0x50], 1
jne 0x7ceebb
mov edx, 1
movzx esi, byte [esi + 0xbf46e8]
jmp 0x7ceec7
mov edi, dword [eax + 0x24]
mov esi, dword [edi]
add edi, 8
jmp 0x7d1639
mov esi, dword [esp + 4]
mov eax, dword [esi + 0x1e4]
or eax, dword [esi + 0x1e0]
jne case.0x7cde44.85
jmp 0x7ced20
mov esi, dword [ebx + 0x10]
movzx edx, word [esi + 0x1a]
mov eax, dword [esi + 8]
test dl, 2
jne 0x7d2ccc
test dl, 1
je 0x7d5c92
or edx, 3
mov word [esi + 0x1a], dx
test eax, eax
je 0x7d5485
mov ecx, dword [eax]
mov ebx, dword [eax + 4]
mov eax, dword [eax + 8]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], ebx
mov dword [esi + 8], eax
test eax, eax
je 0x7d63c2
mov eax, dword [ebp + 0xc]
mov esi, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea eax, [esi + eax*8]
test word [eax + 8], 0x2400
jne 0x7d5dd2
mov ebx, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
mov dword [eax + 4], ebx
mov ebx, 4
mov dword [eax], ecx
mov word [eax + 8], bx
jmp 0x7cdfe8
shr edx, 3
lea eax, [edx + 1]
xor edx, edx
call fcn.00767610
mov dword [esp + 0xa8], eax
test eax, eax
je 0x7d5423
mov eax, dword [edi + 0x20]
call fcn.007674c0
mov dword [esp + 0xe0], eax
test eax, eax
je 0x7d62b3
mov eax, dword [0x849750]
xor edx, edx
div dword [edi + 0x20]
add eax, 1
cmp eax, dword [esp + 0xac]
ja 0x7d2d86
mov edx, eax
and eax, 7
mov ebx, 1
shr edx, 3
mov ecx, eax
add edx, dword [esp + 0xa8]
shl ebx, cl
or byte [edx], bl
mov eax, dword [edi + 0xc]
lea ebx, [esi + 4]
mov dword [esp + 0xbc], str.Main_freelist:
mov edx, dword [eax + 0x38]
mov eax, dword [edx + 0x24]
mov ecx, dword [edx + 0x20]
lea edx, [esp + 0xa0]
sub esp, 0xc
mov dword [esp + 0x2c], edx
mov edx, 1
bswap eax
push eax
mov eax, dword [esp + 0x30]
bswap ecx
call fcn.0079c020
mov dword [esp + 0xcc], 0
add esp, 0x10
cmp byte [edi + 0x11], 0
je 0x7d5511
mov ecx, dword [esp + 0x30]
test ecx, ecx
jle 0x7d6a73
mov eax, ebx
xor edx, edx
lea ebx, [ebx + ecx*4]
mov ecx, dword [eax]
cmp edx, ecx
cmovl edx, ecx
add eax, 4
cmp ebx, eax
jne 0x7d2dec
mov eax, dword [edi + 0xc]
mov eax, dword [eax + 0x38]
mov eax, dword [eax + 0x34]
bswap eax
cmp eax, edx
je 0x7d604e
push eax
push edx
push str.max_rootpage___d__disagrees_with_header___d_
push dword [esp + 0x2c]
call fcn.0079be70
add esp, 0x10
mov eax, dword [edi + 4]
mov ecx, dword [esp + 0x30]
and dword [eax + 0x20], 0xffdfffff
test ecx, ecx
jle 0x7d2eb3
mov edx, dword [esp + 0xb0]
test edx, edx
je 0x7d2eb3
mov dword [esp + 0x58], ebp
xor ebx, ebx
mov ebp, dword [esp + 0x30]
jmp 0x7d2e5b
mov eax, dword [esp + 0xb0]
test eax, eax
je 0x7d2eac
mov edx, dword [esi + ebx*4 + 4]
test edx, edx
je 0x7d2ea5
cmp byte [edi + 0x11], 0
je 0x7d2e88
cmp edx, 1
jle 0x7d2e88
sub esp, 0xc
mov ecx, 1
push 0
mov eax, dword [esp + 0x30]
call fcn.0079bf90
mov edx, dword [esi + ebx*4 + 4]
add esp, 0x10
sub esp, 8
push 0x7fffffff
push 0xffffffffffffffff
mov eax, dword [esp + 0x30]
lea ecx, [esp + 0xa8]
call fcn.0079c250
add esp, 0x10
add ebx, 1
cmp ebx, ebp
jne 0x7d2e50
mov ebp, dword [esp + 0x58]
mov eax, dword [edi + 4]
mov ecx, dword [esp + 0x50]
mov ebx, dword [esp + 0x54]
mov dword [eax + 0x20], ecx
mov dword [eax + 0x24], ebx
mov eax, dword [esp + 0xac]
test eax, eax
je 0x7d479c
mov eax, dword [esp + 0xb0]
test eax, eax
je 0x7d479c
mov dword [esp + 0x50], ebp
mov ebx, 1
mov ebp, edi
jmp 0x7d2f4e
xor esi, esi
cmp ebx, 1
jbe 0x7d2f27
mov edx, 0xcccccccd
mov eax, edx
mul dword [ebp + 0x24]
lea eax, [ebx - 2]
shr edx, 2
lea esi, [edx + 1]
xor edx, edx
div esi
xor edx, edx
imul eax, esi
lea esi, [eax + 2]
mov ecx, eax
mov eax, dword [0x849750]
add ecx, 3
div dword [ebp + 0x20]
add eax, 1
cmp esi, eax
cmove esi, ecx
cmp ebx, esi
je 0x7d3d6d
add ebx, 1
cmp ebx, dword [esp + 0xac]
ja 0x7d4798
mov eax, dword [esp + 0xb0]
test eax, eax
je 0x7d4798
mov edi, ebx
mov eax, dword [esp + 0xa8]
mov ecx, ebx
mov esi, 1
shr edi, 3
and ecx, 7
movzx eax, byte [eax + edi]
shl esi, cl
mov dword [esp + 0x30], esi
test esi, eax
jne 0x7d2eec
xor esi, esi
cmp ebx, 1
jbe 0x7d2fb1
mov edx, 0xcccccccd
mov eax, edx
mul dword [ebp + 0x24]
lea eax, [ebx - 2]
shr edx, 2
lea esi, [edx + 1]
xor edx, edx
div esi
xor edx, edx
imul eax, esi
lea esi, [eax + 2]
mov ecx, eax
mov eax, dword [0x849750]
add ecx, 3
div dword [ebp + 0x20]
add eax, 1
cmp esi, eax
cmove esi, ecx
cmp ebx, esi
jne 0x7d2fbf
cmp byte [ebp + 0x11], 0
jne 0x7d2f2f
sub esp, 4
push ebx
push str.Page__d_is_never_used
push dword [esp + 0x2c]
call fcn.0079be70
mov eax, dword [esp + 0xb8]
add esp, 0x10
movzx eax, byte [eax + edi]
test dword [esp + 0x30], eax
je 0x7d2f2f
jmp 0x7d2eec
mov edi, dword [edi + 0x24]
mov eax, dword [edi]
add edi, 8
mov dword [esp + 8], eax
jmp 0x7d1579
mov eax, dword [ebp + 8]
test eax, eax
je 0x7d2430
mov eax, dword [esp + 4]
cmp byte [eax + 0x4f], 0
je 0x7d3023
cmp dword [eax + 0xb4], 1
jle 0x7d2430
mov edi, dword [esp]
mov esi, dword [edi + 0x30]
test esi, esi
jne 0x7d304d
mov eax, dword [esp + 4]
mov ecx, dword [eax + 0x1d8]
lea esi, [ecx + 1]
mov dword [esp + 0x20], ecx
mov dword [eax + 0x1d8], esi
add esi, dword [eax + 0x1d4]
mov dword [edi + 0x30], esi
mov eax, dword [esp + 4]
mov edi, dword [eax + 0x174]
test edi, edi
je 0x7d3073
xor edx, edx
lea ecx, [esi - 1]
call fcn.0076f460
test eax, eax
jne 0x7d6799
mov eax, dword [esp]
mov esi, dword [eax + 0x30]
cmp byte [ebx + 9], 0
mov edi, dword [ebx + 4]
je 0x7d6a89
mov eax, ebx
call fcn.0076c790
mov eax, dword [edi]
cmp esi, dword [eax + 0x60]
jle 0x7d3098
cmp byte [eax + 6], 0
jne 0x7d6ad2
cmp byte [ebx + 9], 0
je 0x7d30a8
sub dword [ebx + 0xc], 1
je 0x7d6eab
mov edi, dword [esp + 4]
mov ecx, dword [esp]
mov eax, dword [edi + 0x1e0]
mov edx, dword [edi + 0x1e4]
mov dword [ecx + 0x48], eax
mov eax, dword [edi + 0x1e8]
mov dword [ecx + 0x4c], edx
mov edx, dword [edi + 0x1ec]
mov dword [ecx + 0x50], eax
mov dword [ecx + 0x54], edx
cmp word [ebp + 2], 0
je 0x7d2463
jmp 0x7d2437
mov eax, dword [esp]
mov dword [ebx], esi
mov dword [ebx + 0xc], eax
lea eax, [ecx - 1]
cmp eax, 0xffffffff
je 0x7d0510
mov edx, dword [ebp + 8]
mov edi, dword [esp + 0x14]
add edx, eax
lea edx, [edx + edx*4]
lea edx, [edi + edx*8]
lea esi, [esi]
lea esi, [esi]
mov dword [ebx + eax*4 + 0x1c], edx
sub eax, 1
sub edx, 0x28
cmp eax, 0xffffffff
jne 0x7d3110
jmp 0x7d0510
movzx edi, byte [esp + 0x3b]
movsx edx, byte [ebx]
mov esi, dword [esp + 0x20]
jmp 0x7d3143
add ebx, 1
movsx edx, byte [ebx]
add esi, 0x28
test dl, dl
je 0x7cf937
mov ecx, edi
mov eax, esi
call fcn.0078ebe0
cmp byte [ebx], 0x45
jne 0x7d3132
movzx eax, word [esi + 8]
test al, 4
je 0x7d3132
and eax, 0xfffffffb
or eax, 0x20
mov word [esi + 8], ax
jmp 0x7d3132
sub esp, 8
mov dword [edx + 0x28], 0x313
mov byte [edx + 0x92], 2
push str.FOREIGN_KEY_constraint_failed
push edx
call fcn.00795be0
mov eax, dword [esp + 0x14]
add esp, 0x10
movzx ecx, byte [eax + 0x51]
mov dword [esp + 8], 1
jmp 0x7ce108
mov eax, dword [edx + 0x30]
test eax, eax
je 0x7cf44c
mov eax, dword [esp]
mov edx, 1
call fcn.007ae710
jmp 0x7cf44c
test byte [edi + 9], 0x40
je 0x7d31cb
mov eax, edi
call fcn.007809c0
test eax, eax
jne 0x7cf0a1
mov eax, dword [esi + 0x2c]
call fcn.00769410
mov dword [esp + 0x20], eax
test eax, eax
je 0x7cf0a1
sub esp, 8
mov eax, dword [esi + 0x2c]
mov ecx, dword [edi + 0xc]
mov ebx, dword [esp + 0x28]
lea edx, [eax + 0xc]
add eax, 4
push ebx
push dword [edi + 0x10]
call fcn.00773850
mov byte [ebx + 0xa], 0
add esp, 0x10
cmp byte [ebp], 0x1c
je 0x7d644a
lea edi, [esp + 0xa0]
mov eax, dword [esi + 0x28]
xor ebx, ebx
push edi
push 0
push 0
push 0
mov edx, dword [esp + 0x30]
call fcn.007af0f0
mov dword [esp + 0x18], eax
add esp, 0x10
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 4]
call fcn.00767880
jmp 0x7cea35
mov dword [eax], 0xffffffff
mov dword [eax + 4], 0xffffffff
jmp case.0x7cde44.85
mov eax, dword [ebx]
mov edx, 1
call fcn.0078c260
sub esp, 4
push eax
push 0xbec70c
push dword [esp + 0xc]
call fcn.00795be0
mov eax, dword [ebx + 0x14]
mov dword [esp + 0x18], eax
add esp, 0x10
jmp 0x7d09fc
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x18]
lea eax, [eax + eax*4]
lea ebp, [ecx + eax*4 - 0x14]
jmp case.0x7cde44.85
sub esp, 8
mov ecx, dword [ebp + 8]
push 0
push 0xffffffffffffffff
mov eax, dword [esp + 0x10]
call fcn.007b4cb0
add esp, 0x10
mov ebx, eax
test eax, eax
je 0x7cf0a1
or byte [eax + 8], 1
movzx eax, word [ebp + 2]
sub esp, 4
xor edx, edx
push 0x41e
or eax, 5
movzx eax, ax
push eax
lea eax, [ebx + 0xc]
push eax
mov eax, dword [esp + 0x14]
mov ecx, eax
mov eax, dword [eax]
call fcn.007b2f70
mov dword [esp + 0x18], eax
add esp, 0x10
test eax, eax
je 0x7d4988
cmp word [ebp + 2], 8
movzx eax, byte [ebx + 8]
setne dl
shl edx, 2
and eax, 0xfffffffb
or eax, edx
mov byte [ebx + 8], al
jmp 0x7d2233
lea eax, [esp + 0xa0]
sub esp, 0xc
push 0
mov ecx, eax
mov edx, dword [esp + 0x108]
mov eax, dword [esp + 0x104]
call fcn.0078df80
add esp, 0x10
mov ebx, eax
test word [esp + 0xf0], 0x2400
jne 0x7d3349
mov esi, dword [esp + 0x100]
test esi, esi
je 0x7cefff
lea eax, [esp + 0xe8]
call fcn.00767e50
jmp 0x7cefff
add esi, 8
mov dword [ebx + 0x1c], esi
jmp 0x7cf981
xor ecx, ecx
mov edx, ebx
mov eax, esi
call fcn.007ae870
mov dword [esp + 8], eax
mov dword [esp + 0x94], eax
test eax, eax
jne 0x7d56bf
mov eax, dword [esp + 0x20]
cmp byte [eax + 0x11], 0
je 0x7d567d
lea eax, [esp + 0xa0]
mov edx, 4
mov ecx, eax
mov eax, esi
call fcn.0076cea0
mov edx, dword [esp + 0xa0]
mov eax, dword [esp + 0x98]
cmp ebx, edx
je 0x7d667e
test eax, eax
je 0x7d33cf
mov eax, dword [eax + 0x48]
call fcn.00761530
mov edx, dword [esp + 0xa0]
sub esp, 0xc
push 0
mov eax, dword [esp + 0x30]
lea ecx, [esp + 0xf8]
call fcn.00761a10
mov dword [esp + 0xa4], eax
mov edx, eax
add esp, 0x10
test eax, eax
jne 0x7d1179
sub esp, 4
mov ecx, 1
push 0
push ebx
push 0
mov edx, dword [esp + 0xf8]
mov eax, dword [esp + 0x30]
call fcn.007aaab0
mov dword [esp + 0xa4], eax
mov edx, eax
mov eax, dword [esp + 0xf8]
add esp, 0x10
test eax, eax
je 0x7d343b
mov eax, dword [eax + 0x48]
call fcn.00761530
mov edx, dword [esp + 0x94]
test edx, edx
jne 0x7d1179
mov dword [esp + 0xe8], 0
sub esp, 0xc
push 0
mov edx, dword [esp + 0xb0]
mov eax, dword [esp + 0x30]
lea ecx, [esp + 0xf8]
call fcn.00761a10
mov edx, eax
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0xf8]
add esp, 0x10
test edx, edx
je 0x7d6fd2
test eax, eax
je 0x7d1179
mov eax, dword [eax + 0x48]
call fcn.00761530
mov edx, dword [esp + 0x94]
test edx, edx
jne 0x7d1179
mov ecx, dword [esp + 0xa0]
mov eax, ecx
mov dword [esp + 8], ecx
sar eax, 0x1f
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], eax
sub ecx, 1
mov eax, dword [0x849750]
mov ebx, dword [esp + 0x20]
xor edx, edx
mov dword [esp + 0xa0], ecx
mov dword [esp + 0x58], esi
mov byte [esp + 0x48], 0
div dword [ebx + 0x20]
add eax, 1
mov esi, eax
jmp 0x7d34ec
mov byte [esp + 0x48], 1
sub ecx, 1
cmp esi, ecx
je 0x7d34e4
xor eax, eax
cmp ecx, 1
jbe 0x7d3526
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x50], eax
mov eax, 0xcccccccd
mul dword [esp + 0x50]
lea eax, [ecx - 2]
shr edx, 2
lea ebx, [edx + 1]
xor edx, edx
div ebx
imul ebx, eax
lea eax, [ebx + 2]
add ebx, 3
cmp esi, eax
cmove eax, ebx
cmp eax, ecx
je 0x7d34e4
cmp byte [esp + 0x48], 0
mov esi, dword [esp + 0x58]
je 0x7d353c
mov dword [esp + 0xa0], ecx
mov edx, 4
mov eax, esi
call fcn.007a9d30
mov edx, eax
cmp byte [esi + 9], 0
je 0x7d11b5
sub dword [esi + 0xc], 1
jne 0x7d11b5
jmp 0x7d11a6
mov esi, dword [esp + 4]
mov edx, ebx
mov eax, esi
call fcn.00767880
mov byte [esi + 0xa5], 0
mov eax, dword [esp + 4]
call fcn.00777fb0
cmp dword [esp + 8], 7
je 0x7cf0a1
jmp 0x7ce385
mov esi, dword [esi + 0x98]
lea edx, [esi + esi*8]
lea edx, [edx*8 + 0x88]
mov dword [esp + 0x20], edx
jmp 0x7d1347
mov eax, edi
call fcn.00779790
mov edx, eax
mov eax, edi
call fcn.00775840
mov dword [esp + 8], eax
test eax, eax
jne 0x7ce385
mov eax, dword [edi + 0x48]
mov ecx, 0x78e840
mov eax, dword [eax + 0x18]
mov dword [esp + 0x68], eax
movzx eax, byte [edi + 0x3c]
cmp al, 1
je 0x7d35eb
cmp al, 2
mov ecx, 0x78e650
mov eax, 0x78e9f0
cmove ecx, eax
movzx eax, byte [edi + 0x3b]
mov byte [esp + 8], al
test eax, eax
je 0x7d3609
lea ebx, [eax + eax*8]
mov edx, edi
lea ebx, [edi + ebx*8]
mov dword [edx + 0x60], ecx
add edx, 0x48
cmp ebx, edx
jne 0x7d35ff
cmp byte [esp + 8], 1
ja 0x7d6664
mov dword [esp + 0x30], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x58], edi
mov dword [esp + 0x50], ebp
mov dword [esp + 0x80], esi
mov edx, dword [esp + 0x20]
mov esi, dword [esp + 0x58]
lea edx, [edx + edx*8]
lea edi, [esi + edx*8 + 0x40]
mov dword [esp + 8], edi
cmp dword [esp + 0x20], eax
jge 0x7d3679
mov edi, dword [esp + 8]
mov edx, dword [esp + 0x20]
mov esi, dword [edi + 0x1c]
lea edi, [edx + 1]
mov dword [esp + 0x40], edi
test esi, esi
jne 0x7d4b64
mov edi, dword [esp + 0x40]
add dword [esp + 8], 0x48
mov dword [esp + 0x20], edi
cmp dword [esp + 0x20], eax
jl 0x7d364c
mov edi, dword [esp + 0x58]
mov ebp, dword [esp + 0x50]
mov esi, dword [esp + 0x80]
cmp byte [edi + 0x39], 0
je 0x7d6a99
lea eax, [eax + eax*8 - 9]
lea ebx, [edi + eax*8 + 0x40]
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x7d70ef
mov eax, dword [esp + 0x68]
mov edx, 0x38
xor ecx, ecx
call fcn.00769450
mov dword [esp + 8], eax
mov dword [edi + 0x10], eax
test eax, eax
je 0x7d6c72
mov eax, dword [esp + 8]
mov edx, dword [esp + 0x30]
lea ecx, [eax + 0x30]
mov eax, ebx
call fcn.007757b0
mov edx, eax
test eax, eax
jne 0x7d376f
mov eax, dword [esp + 8]
mov eax, dword [eax + 0x30]
mov dword [eax + 0x18], 1
mov ecx, dword [eax]
mov eax, dword [eax + 0x10]
cdq
sub dword [ecx + 0x40], eax
sbb dword [ecx + 0x44], edx
cmp byte [edi + 0x3b], 1
jbe 0x7d6f88
mov eax, dword [esp + 0x30]
mov dword [esp + 0x20], ebp
xor ecx, ecx
mov eax, dword [eax + 0xc]
lea ebx, [eax + 0x30]
mov eax, dword [ebx]
test eax, eax
je 0x7d372d
mov dword [eax + 0x18], 1
mov ebp, dword [eax]
mov eax, dword [eax + 0x10]
cdq
sub dword [ebp + 0x40], eax
sbb dword [ebp + 0x44], edx
movzx eax, byte [edi + 0x3b]
add ecx, 1
add ebx, 0x38
lea edx, [eax - 1]
cmp ecx, edx
jl 0x7d3714
mov ebp, dword [esp + 0x20]
xor ebx, ebx
jmp 0x7d374a
movzx eax, byte [edi + 0x3b]
cmp eax, ebx
jle 0x7d6f9a
mov edx, dword [esp + 0x30]
imul eax, ebx, 0x38
add ebx, 1
add eax, dword [edx + 0xc]
mov edx, 1
call fcn.00778f90
test eax, eax
je 0x7d3746
mov edx, eax
mov dword [esp + 0x30], 0
jmp 0x7d5eab
cmp byte [ebx + 0x11], 0
je 0x7cf0e2
mov eax, dword [ebx + 0xc]
mov edx, dword [ebx + 0x2c]
mov eax, dword [eax + 0x38]
mov dword [esp + 0x20], edx
mov esi, dword [eax + 0x24]
mov eax, ebx
bswap esi
mov ecx, esi
call fcn.00761ad0
mov edx, dword [esp + 0x20]
mov dword [esp + 0x28], eax
cmp edx, eax
jb 0x7d5a8f
test esi, esi
je 0x7cf6af
mov eax, dword [ebx + 8]
xor ecx, ecx
xor edx, edx
call fcn.007ae600
mov dword [esp + 8], eax
test eax, eax
jne 0x7d56fe
mov eax, dword [ebx + 8]
test eax, eax
je 0x7d37e7
and byte [eax + 1], 0xfb
mov eax, dword [eax + 0x18]
test eax, eax
jne 0x7d37dc
sub esp, 0xc
mov eax, ebx
push 0
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x38]
call fcn.007aafa0
mov dword [esp + 0x18], eax
add esp, 0x10
test eax, eax
jne 0x7d56fe
mov eax, dword [ebx + 0xc]
mov eax, dword [eax + 0x48]
call fcn.007a6440
mov edx, dword [ebx + 0xc]
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x2c]
mov edx, dword [edx + 0x38]
bswap eax
mov dword [edx + 0x1c], eax
cmp byte [edi + 9], 0
je 0x7d3837
sub dword [edi + 0xc], 1
je 0x7d5712
mov ecx, dword [esp + 8]
test ecx, ecx
je case.0x7cde44.85
cmp dword [esp + 8], 0x65
je 0x7cf0e2
jmp 0x7ce385
mov eax, 1
mov dword [esi + 0x1c], 0
mov word [esi + 2], ax
mov eax, dword [ebp + 8]
mov dword [esp + 8], 0
jmp 0x7ceaf3
mov edi, dword [esi + 0x10]
mov edx, dword [edi + 0x3c]
lea ecx, [edi + 0x50]
mov esi, dword [edi + 0x40]
mov dword [esp + 0x14], ecx
lea ecx, [edx + edx*4]
mov dword [esp + 0x28], edx
lea ecx, [edi + ecx*8 + 0x50]
jmp 0x7cec54
lea eax, [esp + 0xa0]
mov dword [esp + 0x20], eax
mov ebx, 0x64
mov dword [esp + 0x40], ebp
mov dword [esp + 0x28], edi
mov esi, ebx
jmp 0x7d38c8
mov ebx, dword [esp + 0xa0]
test ebx, ebx
jne 0x7d5784
sub esi, 1
je 0x7d63b1
call fcn.0077b440
test eax, eax
jne 0x7d38e2
lea edx, [esp + 0xe8]
mov eax, 8
call fcn.0077ba40
mov edi, dword [esp + 0xe8]
mov eax, dword [esp + 0xec]
mov ecx, edi
and eax, 0x3fffffff
mov ebx, eax
add ecx, 1
mov ebp, eax
mov eax, dword [esp + 0x28]
adc ebx, 0
mov dword [esp + 0xe8], ecx
xor edx, edx
mov dword [esp + 0xec], ebx
mov eax, dword [eax + 0x28]
push dword [esp + 0x20]
push 0
push ebx
push ecx
call fcn.007af0f0
add esp, 0x10
test eax, eax
je 0x7d38b0
mov ebp, dword [esp + 0x40]
mov dword [esp + 8], eax
jmp 0x7ce385
mov edi, dword [esp + 4]
mov edx, 0x204
mov eax, edi
call fcn.007aee30
mov byte [edi + 0x4f], 1
jmp 0x7d03e1
mov eax, ebx
call fcn.00767c10
jmp case.0x7cde44.11
mov edx, eax
mov eax, dword [esp]
lea ecx, [esi + 8]
call fcn.00774eb0
mov dword [esp + 8], 0
jmp case.0x7cde44.85
call fcn.00767c10
mov dword [esp + 8], 0
jmp case.0x7cde44.85
mov eax, esi
call fcn.00767c10
jmp case.0x7cde44.85
mov eax, dword [ebx + 0xc]
mov edx, dword [ebp + 0xc]
mov byte [eax + 0x4c], dl
jmp 0x7d1ec3
mov eax, ebx
call fcn.00767c10
jmp case.0x7cde44.85
mov eax, ebx
call fcn.00767c10
jmp case.0x7cde44.85
mov eax, dword [esp + 4]
mov dword [esp + 8], 0
sub dword [eax + 0xc0], 1
jmp case.0x7cde44.85
mov edx, dword [eax + 0x14]
mov dword [ecx + 8], edx
jmp 0x7cf891
mov edi, dword [esp + 4]
mov esi, dword [edi + 0x10]
mov edi, dword [esi + 4]
mov edi, dword [edi + 4]
mov edi, dword [edi + 0x20]
mov byte [ecx + 0x3a], bl
movzx ebx, byte [esp + 0x28]
mov byte [ecx + 0x3b], dl
mov dword [ecx + 0xc], edi
mov byte [ecx + 0x39], bl
mov ebx, dword [esp + 4]
mov dword [ecx + 0x18], ebx
test dl, dl
jne 0x7d13f2
jmp 0x7d140c
mov eax, dword [esp + 0x28]
call fcn.00780a30
mov ebx, eax
mov eax, dword [ebp + 8]
mov edx, dword [esp + 0x14]
lea eax, [eax + eax*4]
lea eax, [edx + eax*8]
movzx edx, word [eax + 8]
mov dword [esp + 0x40], eax
mov eax, edx
and ax, 0x2c
je 0x7d22e4
mov ecx, dword [ebp + 0xc]
mov edi, dword [esp + 0x14]
and eax, ebx
test al, 4
mov eax, dword [esp + 0x28]
lea ecx, [ecx + ecx*4]
lea ecx, [edi + ecx*8]
mov dword [esp + 0x30], ecx
je 0x7d7004
mov esi, dword [eax]
mov edi, dword [eax + 4]
mov eax, dword [esp + 0x40]
mov edx, dword [eax + 4]
mov eax, dword [eax]
mov dword [esp + 0x20], eax
movzx eax, byte [ebp]
mov dword [esp + 0x24], edx
cmp al, 0x6a
je 0x7d59f2
jbe 0x7d3c5e
cmp al, 0x6b
je 0x7d5a1b
cmp al, 0x6c
jne 0x7d58a4
mov edx, edi
or edx, esi
je 0x7d3b64
mov ecx, dword [esp + 0x20]
mov ebx, dword [esp + 0x24]
mov eax, ecx
lea edx, [ebx - 0x80000000]
or eax, edx
jne 0x7d3ac2
mov eax, esi
and eax, edi
cmp eax, 0xffffffff
je 0x7d230f
push edi
push esi
push dword [esp + 0x2c]
push dword [esp + 0x2c]
call fcn.0080a460
add esp, 0x10
mov ecx, dword [esp + 0x30]
mov dword [ecx], eax
movzx eax, word [ecx + 8]
mov dword [ecx + 4], edx
mov word [esp + 0x20], ax
and ax, 0x3e40
or eax, 4
mov word [ecx + 8], ax
jmp case.0x7cde44.85
mov esi, dword [esp + 0x50]
mov eax, esi
call fcn.00780010
test eax, eax
jne 0x7cf0a1
mov esi, dword [esi + 0x10]
jmp 0x7d27c7
xor ebx, ebx
jmp 0x7d193c
mov edx, dword [ebx + 4]
add eax, 8
xor ecx, ecx
call fcn.00760b50
mov eax, dword [eax + 8]
test eax, eax
je 0x7cf8dc
mov edx, dword [eax + 0x44]
test edx, edx
je 0x7cf8dc
cmp edx, ebx
jne 0x7d3b4e
jmp 0x7d70c3
cmp eax, ebx
je 0x7d647b
mov edx, eax
mov eax, dword [edx + 0x20]
test eax, eax
jne 0x7d3b44
jmp 0x7cf8dc
jne 0x7d2359
fstp st(0)
fstp st(0)
mov eax, dword [esp + 0x30]
test word [eax + 8], 0x2400
jne 0x7d5664
mov eax, dword [esp + 0x30]
mov ebx, 1
mov word [eax + 8], bx
jmp case.0x7cde44.85
mov edx, ecx
mov eax, esi
xor ecx, ecx
call fcn.0076b1f0
movzx eax, al
add esi, eax
mov eax, dword [edi + 0xc]
lea ebp, [ebx + eax]
test eax, eax
jne 0x7d3bc7
mov ebx, ebp
jmp 0x7d281c
mov dword [esp + 8], 0
jmp case.0x7cde44.85
mov ebp, dword [esp + 0x28]
jmp case.0x7cde44.85
mov edx, dword [edi + 0x10]
sub esp, 4
push eax
push edx
push ebx
mov ebx, ebp
call sub.msvcrt.dll_memcpy
add esp, 0x10
jmp 0x7d281c
mov ebx, dword [ebp + 0x10]
movzx ecx, word [ebx + 8]
jmp 0x7ce562
mov ecx, edx
mov eax, dword [eax + 0xc]
and ecx, 8
or ecx, 4
movzx eax, byte [eax + 0x4c]
movzx ecx, cx
mov dword [esp + 8], ecx
mov ecx, dword [esp]
cmp al, byte [ecx + 0x93]
jae 0x7ce542
mov byte [ecx + 0x93], al
jmp 0x7ce542
mov edx, dword [esp + 0x14]
lea eax, [edi + edi*4]
lea ebx, [edx + eax*8]
mov eax, ebx
call fcn.0076cf00
mov dword [ebx + 4], edx
movzx edx, word [ebx + 8]
mov edi, eax
mov dword [ebx], eax
and dx, 0x3e40
or edx, 4
mov word [ebx + 8], dx
jmp 0x7ce54b
mov eax, ebx
call fcn.007809c0
test eax, eax
jne 0x7d67c9
add edi, dword [ebx]
jmp 0x7d25b2
cmp al, 0x69
jne 0x7d58a4
test edi, edi
js 0x7d650c
mov ecx, dword [esp + 0x20]
xor eax, eax
mov ebx, dword [esp + 0x24]
cmp eax, ecx
sbb eax, ebx
jge 0x7d3c98
mov eax, 0xffffffff
mov edx, 0x7fffffff
sub eax, ecx
sbb edx, ebx
cmp eax, esi
mov eax, edx
sbb eax, edi
jl 0x7d230f
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
add eax, esi
adc edx, edi
jmp 0x7d3ad4
mov edx, dword [esp]
lea eax, [eax + eax*4]
mov esi, dword [edx + 0x68]
mov eax, dword [esi + eax*4 + 8]
mov dword [esp + 0x18], esi
sub eax, 1
jmp 0x7ce648
test eax, eax
jne case.0x7cde44.85
jmp 0x7d1f70
mov edx, dword [esp + 0x58]
mov ecx, dword [esp + 0x5c]
mov eax, esi
call fcn.0076b1f0
movzx eax, al
jmp 0x7d2807
add esi, 1
mov word [ebx + 0x46], si
jmp 0x7d2627
mov ebp, dword [esp + 0x3c]
mov dword [esp + 0x3c], eax
jmp case.0x7cde44.85
mov eax, edi
call fcn.00788bd0
mov byte [esi + 3], 0
mov dword [esp + 8], eax
mov dword [esi + 0x1c], 0
test eax, eax
jne 0x7ce385
mov byte [esi + 2], 0
jmp case.0x7cde44.85
cmp al, 0x69
jne 0x7d5d32
faddp st(1)
fstp qword [esp + 0x20]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
mov edx, eax
and edx, 0x7ff00000
jmp 0x7d236f
mov eax, ebp
sub eax, dword [esp + 0x18]
mov dword [esp + 8], 7
sar eax, 2
imul edi, eax, 0xcccccccd
mov eax, dword [esp + 4]
movzx ecx, byte [eax + 0x51]
jmp 0x7ce108
cmp byte [ebp + 0x11], 0
je 0x7d2f2f
sub esp, 4
push ebx
push str.Pointer_map_page__d_is_referenced
push dword [esp + 0x2c]
call fcn.0079be70
add esp, 0x10
jmp 0x7d2f2f
test esi, esi
je case.0x7cde44.85
jmp 0x7d1f70
jne 0x7d3de8
movzx eax, word [esp + 0x20]
test al, 2
jne 0x7d3db1
test al, 0x2c
jne 0x7d6af1
movzx eax, word [esp + 0x50]
test al, 2
jne 0x7d3de8
test al, 0x2c
je 0x7d3de8
movzx edx, byte [esp + 0x3b]
mov ecx, 1
mov eax, ebx
call fcn.0078bed0
movzx eax, word [ebx + 8]
movzx edx, word [esp + 0x50]
and ax, 0x3e40
and dx, 0xc1bf
or eax, edx
mov word [esp + 0x28], ax
mov ecx, dword [ebp + 0x10]
mov edx, edi
mov eax, ebx
call fcn.0078dc30
movzx esi, byte [ebp]
mov edx, eax
movzx eax, word [ebp + 2]
mov ecx, eax
mov word [esp + 0x30], ax
and ecx, 0x20
mov word [esp + 0x48], cx
test edx, edx
js 0x7ceec0
test edx, edx
jne 0x7d2c79
movzx esi, byte [esi + 0xbf46f0]
xor edx, edx
jmp 0x7ceec7
sub esp, 4
push ebx
push str.no_such_module:__s
push dword [esp + 0x10]
call fcn.00795c10
mov ecx, dword [esp + 0x10]
add esp, 0x10
mov dword [ecx + 0x7c], eax
mov dword [esp + 8], 1
jmp 0x7d0e5f
mov edx, dword [edi + 0x28]
test eax, eax
jg 0x7d5220
jne 0x7d3e6a
cmp esi, 0x16
je 0x7d5220
xor eax, eax
cmp byte [edx], 0
setne al
mov dword [esp + 0xa0], eax
test eax, eax
je 0x7ce934
mov dword [esp + 8], 0
jmp 0x7d1f70
mov esi, dword [esp + 0x20]
jmp 0x7cfa5b
mov eax, dword [esp + 4]
mov ecx, dword [eax + 0xe8]
test ecx, ecx
je 0x7d1b5d
movsx ecx, byte [ebx + 1]
mov esi, dword [ebp + 0x10]
shl ecx, 4
add ecx, dword [eax + 0x10]
mov eax, dword [ecx]
mov dword [esp + 0x20], eax
jmp 0x7d1b5d
mov edx, dword [esi + 0xc]
test ah, 0x40
je 0x7d3ecb
add edx, dword [esi]
mov eax, dword [esi + 0x20]
cmp dword [eax + 0x6c], edx
jge 0x7d1f94
jmp 0x7d0af3
mov eax, dword [ebx + 0xc]
mov edx, dword [ebp + 0xc]
mov dword [eax], edx
mov eax, dword [esp + 4]
or dword [eax + 0x18], 1
jmp 0x7d1ec3
or eax, 1
mov word [edx + 8], ax
jmp case.0x7cde44.85
lea edx, [ebx + ebx*2 + 0xbf4710]
movzx ecx, byte [edx + eax]
jmp 0x7cf27e
mov ecx, dword [esp + 4]
mov edx, dword [ecx + 0xe8]
test edx, edx
je 0x7d1c7b
movsx edx, byte [ebx + 1]
shl edx, 4
add edx, dword [ecx + 0x10]
mov edi, dword [edx]
mov dword [esp + 0x20], edi
mov edi, dword [ebp + 0x10]
test al, 2
je 0x7d1c7b
cmp byte [ebx + 4], 0
je 0x7d1c7b
mov eax, esi
call fcn.00761b80
mov eax, dword [esi + 0x20]
mov edx, dword [esi + 0x24]
mov esi, dword [ebx + 0x28]
mov dword [ebx + 0x40], eax
movzx eax, word [ebp + 2]
mov dword [ebx + 0x44], edx
jmp 0x7d1c7b
mov ebx, dword [esp + 8]
and ebx, 0xfb
jmp 0x7d269d
add eax, 1
jmp 0x7d014d
mov eax, dword [esp + 4]
mov edx, ecx
call fcn.00775d40
jmp case.0x7cde44.85
call fcn.00767cd0
jmp case.0x7cde44.85
call fcn.0076cf00
mov dword [esp + 0x20], eax
mov eax, ebx
mov dword [esp + 0x24], edx
call fcn.0076cf00
movzx ebx, byte [ebp]
cmp bl, 0x65
je 0x7d571e
cmp bl, 0x66
je 0x7d61c4
mov edi, edx
or edi, eax
je 0x7d404f
test edx, edx
js 0x7d68f8
mov ecx, 0x3f
cmp ecx, eax
mov ecx, 0
sbb ecx, edx
jl 0x7d661b
mov ecx, eax
cmp bl, 0x67
je 0x7d6d66
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
mov ebx, eax
mov esi, edx
xor eax, eax
shr esi, cl
shrd ebx, edx, cl
test cl, 0x20
cmovne ebx, esi
cmovne esi, eax
test edx, edx
jns 0x7d4047
mov eax, pe_nt_image_headers32
xor edi, edi
sub eax, ecx
mov ecx, eax
or eax, 0xffffffff
mov edx, eax
shld edx, eax, cl
shl eax, cl
test cl, 0x20
cmovne edx, eax
cmovne eax, edi
mov dword [esp + 0x24], edx
mov edx, eax
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x24]
or edx, ebx
mov ebx, edx
or eax, esi
mov esi, eax
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], esi
mov edi, dword [esp + 0x28]
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
mov dword [edi], eax
movzx eax, word [edi + 8]
mov dword [edi + 4], edx
mov word [esp + 0x20], ax
and ax, 0x3e40
or eax, 4
mov word [edi + 8], ax
jmp case.0x7cde44.85
mov eax, edi
call fcn.00767e10
mov edi, eax
jmp 0x7cfa13
mov edx, dword [esp + 0x20]
cmp edx, dword [eax + 0x1c]
je 0x7d418c
mov edi, dword [eax + 8]
mov dword [esp + 0x48], edi
test edi, edi
je 0x7d4181
test byte [eax + 0x1a], 1
je 0x7d6317
mov eax, dword [esp + 0x28]
mov edi, dword [eax + 0x14]
test edi, edi
je 0x7d6ba9
mov eax, dword [edi + 0xc]
lea edx, [edi + 8]
test eax, eax
je 0x7d415e
lea ecx, [esp + 0xa0]
mov dword [esp + 0x58], ebp
mov ebp, dword [esp + 0x48]
mov dword [esp + 0x60], ebx
mov ebx, edx
mov dword [esp + 0x68], esi
mov esi, ecx
jmp 0x7d40f5
mov eax, dword [edi + 0xc]
lea ebx, [edi + 8]
test eax, eax
je 0x7d6097
lea ecx, [esp + 0xe8]
mov edx, esi
call fcn.00761200
mov dword [edi + 0xc], 0
mov edx, ebp
mov eax, dword [esp + 0xa0]
call fcn.00761160
mov edi, dword [edi + 8]
mov ebp, eax
test edi, edi
jne 0x7d40e7
mov ebp, dword [esp + 0x58]
mov esi, dword [esp + 0x68]
mov dword [esp + 0x48], eax
mov dword [esp + 0x50], ebx
mov ebx, dword [esp + 0x60]
mov eax, dword [esp + 0x28]
call fcn.007699e0
mov edi, eax
mov eax, dword [esp + 0x50]
mov dword [eax], edi
test edi, edi
je 0x7d416a
mov dword [edi], 0
mov dword [edi + 4], 0
mov dword [edi + 8], 0
mov eax, dword [esp + 0x48]
call fcn.007612d0
mov dword [edi + 0xc], eax
mov eax, dword [esp + 0x28]
or word [eax + 0x1a], 1
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 0x20]
mov dword [eax + 0x1c], edi
mov eax, dword [esp + 0x28]
mov edi, dword [eax + 0x14]
test edi, edi
je 0x7d41d4
mov eax, dword [edi + 0xc]
test eax, eax
je 0x7d41cd
mov dword [esp + 0x28], edi
jmp 0x7d41ab
mov eax, dword [eax + 8]
test eax, eax
je 0x7d41c9
mov ecx, dword [eax]
mov edx, dword [eax + 4]
cmp ecx, ebx
mov edi, edx
sbb edi, esi
jl 0x7d41a4
cmp ebx, ecx
mov edi, esi
sbb edi, edx
jge 0x7d1f70
mov eax, dword [eax + 0xc]
jmp 0x7d41a7
mov edi, dword [esp + 0x28]
mov edi, dword [edi + 8]
test edi, edi
jne 0x7d4197
mov ebx, dword [esp + 0x20]
test ebx, ebx
js case.0x7cde44.85
mov eax, dword [esp + 0x40]
mov ebx, dword [eax]
mov esi, dword [eax + 4]
mov eax, dword [esp + 0x30]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x28], eax
jmp 0x7cf1b7
mov eax, ecx
call fcn.00769900
test eax, eax
je 0x7cf197
jmp 0x7cf0a1
sub esp, 0xc
push ebx
call fcn.007678e0
add esp, 0x10
jmp 0x7cfcba
sub esp, 0xc
lea ebx, [esp + 0xd4]
push ebx
call fcn.007678e0
mov eax, dword [esp + 0xc4]
lea esi, [eax + 1]
mov dword [esp + 0xc4], esi
add esp, 0x10
jmp 0x7cfcb2
call fcn.00767c10
test esi, esi
jne 0x7cfd08
jmp 0x7cfd3a
mov eax, ebx
call fcn.00767e10
mov ebx, eax
jmp 0x7d1744
mov edx, 4
mov eax, esi
call fcn.007afb70
test eax, eax
je 0x7d18ea
jmp 0x7d3930
mov eax, esi
call fcn.00788bd0
mov dword [esp + 8], eax
test eax, eax
jne 0x7ce385
movzx ecx, byte [esi]
test cl, cl
jne case.0x7cde44.85
mov eax, dword [esi + 0x74]
cmp byte [eax + 8], 0
je case.0x7cde44.85
movsx edi, byte [esi + 0x44]
movzx eax, word [eax + 0x18]
xor edx, edx
test edi, edi
jle 0x7d42ef
mov dword [esp + 0x20], ebp
xor ebx, ebx
nop
mov ebx, dword [esi + ebx*4 + 0x78]
add ecx, 1
movzx ebp, word [ebx + 0x18]
mov ebx, edx
imul ebx, ebp
mul ebp
add edx, ebx
movzx ebx, cl
cmp ebx, edi
jl 0x7d42d0
mov ebp, dword [esp + 0x20]
call fcn.00760a80
cwde
cmp eax, dword [ebp + 0xc]
jge case.0x7cde44.85
jmp 0x7d1f70
call fcn.00767e10
jmp 0x7d0767
mov eax, edi
call fcn.00767e10
mov edi, eax
jmp 0x7d1d16
mov eax, ebx
call fcn.00767e10
mov ebx, eax
jmp 0x7d16b0
call fcn.00767e10
jmp 0x7d08c4
call fcn.00767cd0
jmp case.0x7cde44.85
mov eax, edi
call fcn.00767e10
mov edi, eax
jmp 0x7d10e4
mov edx, dword [eax]
movzx ecx, byte [esp + 0x3b]
mov dword [esp + 0xe8], edx
mov edx, dword [eax + 4]
mov dword [esp + 0xec], edx
mov edx, dword [eax + 8]
mov dword [esp + 0xf0], edx
mov edx, dword [eax + 0xc]
mov dword [esp + 0xf4], edx
mov edx, dword [eax + 0x10]
mov dword [esp + 0xf8], edx
mov edx, dword [eax + 0x14]
mov dword [esp + 0xfc], edx
mov edx, dword [eax + 0x18]
mov dword [esp + 0x100], edx
mov edx, dword [eax + 0x1c]
mov dword [esp + 0x104], edx
mov edx, dword [eax + 0x20]
mov dword [esp + 0x108], edx
mov eax, dword [eax + 0x24]
mov edx, 0x43
mov dword [esp + 0x10c], eax
lea eax, [esp + 0xe8]
call fcn.0078ebe0
test byte [esp + 0xf0], 4
je 0x7d1f70
mov esi, dword [esp + 0xe8]
mov edi, dword [esp + 0xec]
jmp 0x7cea8f
fxch st(1)
fcompi st(1)
fstp st(0)
jbe 0x7d43f6
and ebx, 1
cmp bl, 1
adc esi, 0
lea edx, [esp + 0xa0]
mov eax, dword [edi + 0x28]
push edx
xor edx, edx
push 0
push dword [esp + 0x2c]
push dword [esp + 0x2c]
call fcn.007af0f0
mov ecx, dword [esp + 0x30]
mov ebx, dword [esp + 0x34]
mov dword [esp + 0x18], eax
add esp, 0x10
mov dword [edi + 0x40], ecx
mov dword [edi + 0x44], ebx
test eax, eax
jne 0x7ce385
mov eax, dword [esp + 0xa0]
jmp 0x7ce90b
call fcn.00767e10
jmp 0x7d1013
xor edx, edx
call fcn.0076cff0
xor edx, edx
test eax, eax
sete dl
xor ecx, ecx
test word [ebx + 8], 0x2400
jne 0x7d5831
mov eax, 4
mov dword [ebx], edx
mov dword [ebx + 4], ecx
mov word [ebx + 8], ax
jmp case.0x7cde44.85
mov eax, ebx
call fcn.00767c10
jmp 0x7d14be
movzx ecx, byte [esp + 0x3b]
mov eax, ebx
mov edx, 0x43
call fcn.0078ebe0
movzx eax, word [ebx + 8]
test al, 4
jne 0x7ce7c8
mov eax, dword [ebp + 8]
test eax, eax
jne 0x7ceaf3
mov eax, ebp
sub eax, dword [esp + 0x18]
mov dword [esp + 8], 0x14
sar eax, 2
imul edi, eax, 0xcccccccd
mov eax, dword [esp + 4]
movzx ecx, byte [eax + 0x51]
jmp 0x7ce108
mov ecx, dword [esi + 0x28]
xor edx, edx
mov edi, dword [ecx]
mov eax, dword [edi]
mov dword [esp + 8], eax
xor eax, eax
mov dword [esp + eax + 0xec], edx
add eax, 4
cmp eax, 0x1c
jb 0x7d44df
mov dword [esp + 0xe8], ebx
test byte [ebp + 2], 1
je 0x7d5374
test word [ebx + 8], 0x2400
jne 0x7d62d0
mov eax, 0x4001
mov dword [ebx], 0
mov word [ebx + 8], ax
sub esp, 4
push dword [ebp + 8]
lea eax, [esp + 0xf0]
push eax
push ecx
mov eax, dword [esp + 0x18]
call dword [eax + 0x2c]
mov esi, dword [esp + 0x10]
lea ecx, [edi + 8]
mov dword [esp + 0x18], eax
lea edx, [esi + 0x7c]
mov eax, esi
call fcn.00774eb0
add esp, 0x10
mov eax, dword [esp + 0xfc]
test eax, eax
jle 0x7d457c
mov edx, 1
mov eax, ebx
call fcn.0078c260
sub esp, 4
push eax
push 0xbec70c
push esi
call fcn.00795be0
mov eax, dword [esp + 0x10c]
mov dword [esp + 0x18], eax
add esp, 0x10
movzx eax, word [ebx + 8]
test al, 2
je 0x7d4599
movzx edx, byte [esp + 0x3b]
cmp byte [ebx + 0xa], dl
je 0x7d4599
mov eax, ebx
call fcn.00782920
movzx eax, word [ebx + 8]
test al, 0x12
je 0x7d0e82
mov edx, dword [ebx + 0xc]
test ah, 0x40
je 0x7d45ab
add edx, dword [ebx]
mov eax, dword [ebx + 0x20]
cmp dword [eax + 0x6c], edx
jge 0x7d0e82
jmp 0x7d0af3
lea eax, [esp + 0xa0]
mov edx, eax
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x28]
call fcn.00788dd0
test eax, eax
jne 0x7d3930
mov esi, dword [esp + 0xa0]
test esi, esi
je 0x7d583d
mov dword [esp + 0xe8], 1
mov dword [esp + 0xec], 0
mov eax, dword [ebp + 0xc]
mov dword [esp + 8], eax
test eax, eax
jne 0x7d5895
test byte [edi + 8], 2
jne 0x7d389e
mov ecx, dword [esp + 0xe8]
mov ebx, dword [esp + 0xec]
jmp 0x7d1af4
call fcn.00767e10
mov dword [esp + 0x30], eax
jmp 0x7d1a46
call fcn.007809c0
mov dword [esp + 8], eax
test eax, eax
jne 0x7ce385
movzx ebx, byte [ebp]
jmp 0x7d17e9
call fcn.00767e10
jmp 0x7d07f0
mov eax, ebx
call fcn.00767c10
jmp 0x7d1fad
call fcn.00767e10
jmp 0x7d2035
call fcn.00767e10
jmp 0x7d2001
call fcn.00767e10
jmp 0x7d21c5
mov eax, ebx
call fcn.00767e10
mov ebx, eax
jmp 0x7d20ff
mov eax, ebx
call fcn.00767e10
mov ebx, eax
mov eax, dword [ebp + 8]
jmp 0x7d206b
call fcn.00767e10
jmp 0x7d01f6
call fcn.00767e10
jmp 0x7d031c
movzx esi, word [ebx + 0x3a]
mov eax, esi
jmp 0x7cfec0
mov eax, ebx
call fcn.00767e10
mov ebx, eax
jmp 0x7ce3c5
mov eax, ebx
call fcn.00767e10
mov ebx, eax
jmp 0x7d06f9
mov dword [esp + 8], 0
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 0x14]
test eax, eax
je 0x7d4704
mov edx, dword [esp + 4]
cmp eax, dword [edx + 8]
jne 0x7d0e82
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 0x10]
test byte [eax], 2
jne 0x7d0e82
mov byte [ecx + 0x3c], 3
jmp 0x7d0e82
mov eax, dword [ebp + 0xc]
mov edx, dword [esp + 0x18]
lea eax, [eax + eax*4]
lea ebp, [edx + eax*4 - 0x14]
jmp case.0x7cde44.85
mov eax, dword [eax + 4]
cmp eax, dword [ebp + 4]
jne 0x7ce722
jmp 0x7d1f70
mov eax, dword [esp + 4]
mov dword [esp + 8], 0
sub dword [eax + 0xc0], 1
jmp case.0x7cde44.85
mov esi, dword [esp + 0x20]
jmp 0x7d2bd0
mov eax, dword [esp + 0x30]
test word [eax + 8], 0x2400
jne 0x7d5ad8
mov eax, dword [esp + 0x30]
mov ecx, 1
mov word [eax + 8], cx
mov dword [esp + 8], 0
jmp case.0x7cde44.85
movzx eax, byte [eax + 0xbfa2c0]
jmp 0x7cff84
mov ebp, dword [esp + 0x50]
mov eax, dword [esp + 0xe0]
jmp 0x7cfc7e
cmp edx, 0x7fff
ja 0x7d55e1
add dword [esp + 0x30], 6
mov dword [ebx + 0x1c], 5
adc dword [esp + 0x34], 0
jmp 0x7cf981
mov ebx, dword [eax + 0x1cc]
test ebx, ebx
je 0x7d6ba2
xor eax, eax
mov dword [esp + 0x30], ebp
mov ebp, eax
mov ecx, dword [ebx]
mov edx, esi
mov dword [esp + 0x20], ebx
jmp 0x7d4809
movzx ebx, byte [edi + 0xbfad00]
cmp byte [eax + 0xbfad00], bl
jne 0x7d48d0
add ecx, 1
add edx, 1
movzx eax, byte [ecx]
movzx edi, byte [edx]
cmp eax, edi
jne 0x7d47f0
test eax, eax
jne 0x7d4803
mov eax, dword [esp + 4]
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x20], ebp
mov ebp, dword [esp + 0x30]
mov esi, dword [eax + 0xb8]
test esi, esi
jle 0x7d483c
cmp dword [esp + 0x28], 1
je 0x7d70a1
mov esi, dword [ebx + 0x18]
xor edi, edi
test esi, esi
je 0x7d5cb2
mov eax, dword [esp + 0x20]
mov esi, dword [esp + 4]
not eax
add eax, dword [esi + 0x1d4]
cmp dword [esp + 0x28], 2
mov dword [esp + 0x20], eax
mov edx, dword [esi + 0x14]
je 0x7d6575
mov dword [esp + 0x40], 0
test edx, edx
jle 0x7d5b40
mov dword [esp + 8], ebp
xor esi, esi
mov ebp, dword [esp + 4]
jmp 0x7d489c
add esi, 1
cmp dword [ebp + 0x14], esi
jle 0x7d5af8
mov eax, esi
shl eax, 4
add eax, dword [ebp + 0x10]
mov eax, dword [eax + 4]
test eax, eax
je 0x7d4890
cmp byte [eax + 8], 2
jne 0x7d4890
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x28]
call fcn.007ae630
test eax, eax
je 0x7d4890
mov ebp, dword [esp + 8]
jmp 0x7d3930
mov ebx, dword [esp + 0x20]
add ebp, 1
mov ebx, dword [ebx + 0x18]
test ebx, ebx
jne 0x7d47e0
mov ebp, dword [esp + 0x30]
mov eax, esi
push edi
push eax
push str.no_such_savepoint:__s
push dword [esp + 0xc]
call fcn.00795be0
mov eax, ebp
sub eax, dword [esp + 0x28]
sar eax, 2
imul edi, eax, 0xcccccccd
mov eax, dword [esp + 0x14]
add esp, 0x10
movzx ecx, byte [eax + 0x51]
mov dword [esp + 8], 1
jmp 0x7ce108
mov edi, dword [esp + 4]
mov edx, dword [edi + 4]
test edx, edx
je case.0x7cde44.85
add eax, 1
and eax, 3
mov ecx, eax
lea esi, [esi]
lea esi, [esi]
movzx eax, byte [edx + 0x98]
and eax, 0xfffffffc
or eax, ecx
mov byte [edx + 0x98], al
mov edx, dword [edx + 8]
test edx, edx
jne 0x7d4940
jmp case.0x7cde44.85
mov eax, dword [esp]
mov edx, dword [ebx + 0x14]
mov eax, dword [eax + 0xc8]
test eax, eax
jne 0x7d497e
jmp 0x7ceb33
mov eax, dword [eax + 4]
test eax, eax
je 0x7ceb33
cmp dword [eax + 0x1c], edx
jne 0x7d4973
jmp case.0x7cde44.85
mov eax, dword [ebx + 0xc]
xor ecx, ecx
mov edx, 1
call fcn.007a94e0
mov dword [esp + 8], eax
test eax, eax
jne 0x7d32ec
mov esi, dword [ebp + 0x10]
mov eax, dword [ebx + 0xc]
mov dword [ebx + 0x2c], esi
test esi, esi
je 0x7d5da4
movzx ecx, word [ebp + 2]
lea edx, [ebx + 0x34]
or ecx, 2
movzx ecx, cx
call fcn.007ae8f0
mov dword [esp + 8], eax
test eax, eax
je 0x7d5ff3
mov byte [ebx + 4], 0
jmp 0x7d32ec
mov eax, dword [esp + 0x50]
mov ebx, edx
mov esi, dword [eax + 0x14]
mov dword [eax + 0x10], esi
jmp 0x7d27c7
mov eax, dword [esp + 0x28]
mov ecx, 1
cdq
shrd eax, edx, 7
shr edx, 7
mov ebx, edx
or ebx, eax
je 0x7d4a13
shrd eax, edx, 7
shr edx, 7
add ecx, 1
mov esi, edx
or esi, eax
jne 0x7d4a03
mov eax, dword [esp + 0x28]
mov ebx, 1
add eax, ecx
cdq
mov dword [esp + 0x60], eax
mov dword [esp + 0x58], eax
shrd eax, edx, 7
mov dword [esp + 0x5c], edx
shr edx, 7
shrd eax, edx, 7
shr edx, 7
add ebx, 1
mov edi, edx
or edi, eax
jne 0x7d4a32
cmp ebx, ecx
jle 0x7d275b
add dword [esp + 0x60], 1
mov eax, dword [esp + 0x60]
mov dword [esp + 0x58], eax
sar eax, 0x1f
mov dword [esp + 0x5c], eax
jmp 0x7d275b
mov eax, dword [esp + 0x28]
mov eax, dword [ebx + eax*4 + 0x58]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x30]
test word [eax + 8], 0x2400
jne 0x7d54f3
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 0x20]
mov edx, dword [esp + 0xa0]
add eax, 1
lea esi, [eax*4]
mov eax, dword [edi + eax*4]
cmp dword [ebx + 0x54], eax
jb 0x7d50c0
mov esi, dword [edi + esi - 4]
add esi, dword [ebx + 0x4c]
cmp edx, 0xb
jbe 0x7d6120
mov ecx, dword [esp + 0x30]
movzx eax, byte [esp + 0x3b]
sub edx, 0xc
shr edx, 1
mov byte [ecx + 0xa], al
mov ebx, edx
lea eax, [edx + 1]
mov dword [ecx + 0xc], edx
cmp eax, dword [ecx + 0x18]
jge 0x7d6423
mov edi, dword [esp + 0x30]
mov eax, dword [edi + 0x14]
mov dword [edi + 0x10], eax
sub esp, 4
push ebx
push esi
push eax
call sub.msvcrt.dll_memcpy
mov edx, dword [esp + 0x40]
mov eax, dword [edx + 0x10]
mov byte [eax + ebx], 0
mov eax, dword [edx + 0x10]
mov byte [eax + ebx + 1], 0
mov eax, dword [esp + 0xb0]
add esp, 0x10
and eax, 1
movzx eax, word [eax + eax + 0xbf4700]
mov word [edx + 8], ax
jmp 0x7d477f
mov eax, dword [esp + 8]
test eax, eax
jne 0x7d4b49
test word [esp + 0xf0], 0x2400
jne 0x7d4b3d
cmp dword [esp + 0x100], 0
je 0x7d4b49
lea eax, [esp + 0xe8]
call fcn.00767e50
mov esi, dword [esp + 0x18]
mov eax, dword [esi + 0xc]
test eax, eax
jle 0x7d6ff2
lea eax, [eax + eax*4]
lea ebp, [esi + eax*4 - 0x14]
jmp 0x7d477f
mov eax, 0x10
mov ebx, esi
mov ecx, esi
mov ebp, 0
mov dword [esp + 0x94], 0
sar ebx, 0x1f
cmp eax, esi
mov eax, 0
sbb eax, ebx
jge 0x7d4ba4
mov eax, 0x10
xor edx, edx
shld edx, eax, 4
shl eax, 4
add ebp, 1
mov edi, edx
cmp eax, ecx
sbb edi, ebx
jl 0x7d4b92
mov dword [esp + 0xe8], 0
mov dword [esp + 0xec], 0
cmp esi, 0x10
jg 0x7d5df5
sub esp, 0xc
mov edx, esi
lea eax, [esp + 0xa0]
push eax
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0xf8]
call fcn.00778cf0
add esp, 0x10
mov edx, eax
test edx, edx
jne 0x7d708c
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 0x94]
test eax, eax
je 0x7d5de4
imul ecx, dword [esp + 0x20], 0x38
add ecx, dword [eax + 0xc]
mov eax, dword [esp + 8]
add ecx, 0x30
call fcn.007757b0
mov edx, eax
test eax, eax
jne 0x7d7083
mov eax, dword [esp + 0x40]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x58]
movzx eax, byte [eax + 0x3b]
jmp 0x7d3633
mov edi, dword [esp]
add dword [edi + 0x40], eax
adc dword [edi + 0x44], edx
jmp case.0x7cde44.85
cmp byte [esi], 2
mov edi, dword [esi + 0x28]
je 0x7d5c2e
cmp byte [edi], 0
jne 0x7d6830
mov eax, edi
call fcn.00761b80
mov eax, dword [edi + 0x20]
mov edx, dword [edi + 0x24]
mov dword [esp + 8], 0
jmp 0x7d176a
mov edx, dword [eax + 0x14]
mov eax, dword [edx + 8]
imul eax, dword [eax + 4], 0x38
add eax, dword [edx + 0xc]
jmp 0x7d1633
mov edx, dword [edi + 0x14]
mov eax, dword [edx + 8]
imul eax, dword [eax + 4], 0x38
add eax, dword [edx + 0xc]
jmp 0x7d156f
cmp word [esp + 0x48], 0
je 0x7d5642
mov eax, dword [ebp + 8]
mov edi, dword [esp + 0x14]
mov dword [esp + 0x3c], 1
lea eax, [eax + eax*4]
lea edx, [edi + eax*8]
movzx eax, word [edx + 8]
and ax, 0x3e40
or eax, 1
mov word [edx + 8], ax
jmp case.0x7cde44.85
mov eax, dword [ebx + 4]
mov ebp, dword [esp + 8]
mov edx, dword [eax]
mov eax, dword [edx + 0x14]
test eax, eax
je 0x7d5ca3
sub esp, 0xc
add dword [esi + 0x20], 1
push dword [ebx + 8]
call eax
mov dword [esp + 0x18], eax
add esp, 0x10
test eax, eax
je 0x7d5c00
mov edx, esi
mov esi, dword [esp + 4]
mov eax, esi
call fcn.00777760
sub dword [esi + 0xc0], 1
mov eax, ebp
sub eax, dword [esp + 0x18]
movzx ecx, byte [esi + 0x51]
sar eax, 2
imul edi, eax, 0xcccccccd
jmp 0x7ce108
mov dword [ebx + 0x1c], 0
jmp 0x7cfdd0
mov eax, dword [esi + 0x14]
lea edx, [esp + 0xe8]
mov dword [esp + 0xe8], 0
call fcn.00778bc0
mov dword [esp + 8], eax
test eax, eax
jne 0x7d4d24
mov eax, dword [esp + 0xe8]
mov dword [ebx + 0x1c], 0
test eax, eax
je 0x7cdfbf
jmp 0x7cfddb
mov edx, dword [esp + 0x20]
mov eax, dword [esp]
lea ecx, [esi + 8]
call fcn.00774eb0
mov dword [esp + 8], 0
jmp case.0x7cde44.85
mov esi, dword [esp + 0x30]
jmp 0x7d4d92
mov eax, ecx
mov ecx, dword [eax + 4]
test ecx, ecx
jne 0x7d4d90
add edx, dword [eax + 0x10]
mov dword [esp + 0x30], esi
mov dword [esp + 0x20], edx
jmp 0x7d1a88
mov eax, dword [esp + 0x20]
cmp word [eax + 8], 0xc
jbe 0x7d46e4
mov dword [esp + 8], 0
jmp case.0x7cde44.85
mov eax, ebx
call fcn.007b0020
mov dword [esp + 8], eax
mov eax, dword [esp + 8]
test eax, eax
je 0x7cfe15
jmp 0x7ce385
mov esi, dword [ebx + 0x28]
mov eax, esi
call fcn.00761b80
mov edx, dword [esi + 0x74]
mov eax, dword [esi + 0x28]
movzx edi, word [esi + 0x30]
mov ecx, dword [esi + 0x2c]
mov esi, 0
mov edx, dword [edx + 0x3c]
mov dword [ebx + 0x4c], eax
mov dword [ebx + 0x50], ecx
sub edx, eax
cmovs edx, esi
mov esi, dword [esp + 4]
cmp edi, edx
cmovle edx, edi
mov dword [ebx + 0x54], edx
cmp dword [esi + 0x6c], ecx
jb 0x7d0af3
mov edi, dword [esp]
mov edx, dword [edi + 0x20]
jmp 0x7cfe67
sub esp, 0xc
push 0xbeb7d8
push 0x11eef
push str.database_corruption
push str._s_at_line__d_of___.10s_
push 0xb
call fcn.00787f60
add esp, 0x20
mov edx, 0xb
jmp 0x7d1179
cmp byte [esp + 8], 0x13
jne 0x7d4e6a
mov eax, dword [ebp + 0x10]
cmp byte [eax + 0x10], 0
jne 0x7d6067
mov eax, dword [esp]
add dword [eax + 0x2c], 1
mov eax, dword [esp + 4]
movzx ecx, byte [eax + 0x51]
mov eax, ebp
sub eax, dword [esp + 0x18]
sar eax, 2
imul edi, eax, 0xcccccccd
jmp 0x7ce108
sub esp, 0xc
xor ebx, ebx
push 0xbeb7d8
push 0x14158
push str.database_corruption
push str._s_at_line__d_of___.10s_
push 0xb
call fcn.00787f60
add esp, 0x20
mov dword [esp + 8], 0xb
jmp 0x7cefff
movzx edx, byte [eax + 1]
test dl, dl
js 0x7d63ff
movzx eax, dl
mov dword [esp + 0xe8], eax
lea edx, [eax - 1]
cmp edx, 8
ja 0x7d592f
cmp eax, 7
je 0x7d592f
and byte [edi + 0x3c], 1
mov eax, dword [esp + 0x20]
mov ecx, dword [eax + 0xc]
lea eax, [ecx + 8]
mov dword [esp + 0x40], ecx
mov dword [esp + 0x30], eax
mov eax, ecx
mov ecx, 1
cdq
shrd eax, edx, 7
shr edx, 7
mov ebx, edx
or ebx, eax
je 0x7d4f23
shrd eax, edx, 7
shr edx, 7
add ecx, 1
mov esi, edx
or esi, eax
jne 0x7d4f13
mov eax, dword [esp + 0x40]
mov esi, dword [edi + 0x28]
lea ebx, [ecx + eax]
mov eax, dword [edi + 4]
mov dword [esp + 0x28], esi
mov dword [esp + 8], eax
test eax, eax
jne 0x7d58e8
mov eax, dword [edi + 0x2c]
add eax, ebx
mov dword [edi + 0x2c], eax
cmp ebx, dword [edi + 8]
jle 0x7d4f50
mov dword [edi + 8], ebx
mov ecx, dword [esp + 0x28]
test ecx, ecx
je 0x7d64c9
mov ecx, dword [edi + 0x30]
mov eax, dword [esp + 0x30]
mov ebx, dword [edi + 0x34]
add eax, ecx
mov esi, eax
mov eax, dword [edi + 0x24]
mov dword [esp + 0x48], esi
cmp esi, ebx
jle 0x7d5058
mov esi, ebx
mov edx, eax
sub edx, dword [esp + 0x28]
sar esi, 0x1f
shld esi, ebx, 1
add ebx, ebx
test eax, eax
mov eax, 0xffffffff
mov ecx, eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0x30], ebx
cmovne ecx, edx
mov dword [esp + 0x34], esi
mov edx, eax
mov dword [esp + 0x50], ecx
mov ecx, eax
sar ecx, 0x1f
cmp ebx, eax
mov eax, esi
sbb eax, ecx
jge 0x7d4fcb
shld esi, ebx, 1
add ebx, ebx
cmp ebx, edx
mov eax, esi
sbb eax, ecx
jl 0x7d4fb5
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], esi
mov eax, dword [edi + 4]
mov esi, eax
mov dword [esp + 0x60], eax
mov ebx, dword [esp + 0x60]
sar esi, 0x1f
mov dword [esp + 0x58], eax
mov dword [esp + 0x64], esi
mov esi, dword [esp + 0x30]
cmp eax, esi
mov esi, dword [esp + 0x64]
mov eax, esi
sbb eax, dword [esp + 0x34]
jge 0x7d5013
mov eax, dword [esp + 0x58]
cmp dword [esp + 0x48], eax
mov eax, ecx
mov dword [esp + 0x30], edx
sbb eax, esi
mov dword [esp + 0x34], ecx
jge 0x7d5013
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], esi
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x28]
call fcn.00768e60
mov dword [esp + 0x28], eax
test eax, eax
je 0x7d69c7
mov eax, dword [esp + 0x50]
test eax, eax
js 0x7d6999
mov eax, dword [esp + 0x50]
add eax, dword [esp + 0x28]
mov dword [edi + 0x24], eax
mov esi, dword [esp + 0x28]
mov ecx, dword [esp + 0x30]
mov dword [edi + 0x28], esi
mov dword [edi + 0x34], ecx
mov ecx, dword [edi + 0x30]
mov edx, dword [esp + 0x40]
mov esi, dword [esp + 0x28]
add edx, 0xf
lea ebx, [esi + ecx]
and edx, 0xfffffff8
add edx, ecx
mov dword [edi + 0x30], edx
test eax, eax
je 0x7d5077
sub eax, esi
mov dword [ebx + 4], eax
mov esi, dword [esp + 0x20]
lea eax, [ebx + 8]
sub esp, 4
mov edx, dword [esi + 0x10]
push dword [esi + 0xc]
push edx
push eax
call sub.msvcrt.dll_memcpy
mov eax, dword [esi + 0xc]
add esp, 0x10
mov dword [ebx], eax
mov dword [edi + 0x24], ebx
jmp 0x7d0e82
mov ebp, ebx
jmp 0x7ce2e3
mov eax, esi
call fcn.007afb20
mov dword [esp + 8], eax
test eax, eax
je 0x7d1055
jmp 0x7ce385
movzx eax, byte [esp + 0x3b]
mov ecx, dword [esp + 0x30]
mov byte [ecx + 0xa], al
movzx eax, word [ebp + 2]
test al, 0xc0
je 0x7d50ea
cmp edx, 0xb
jbe 0x7d50e2
test dl, 1
je 0x7d53cb
test al, 0x80
jne 0x7d53cb
cmp edx, 0x7f
jbe 0x7d53bc
sub edx, 0xc
shr edx, 1
mov ecx, edx
mov eax, dword [esp + 0x20]
sub esp, 0xc
mov edi, dword [esp + 0x3c]
mov edx, dword [eax + esi - 4]
mov eax, dword [ebx + 0x28]
push edi
call fcn.007af090
mov dword [esp + 0x18], eax
add esp, 0x10
test eax, eax
jne 0x7ce385
mov eax, dword [edi + 0x10]
mov edx, dword [esp + 0xa0]
mov ecx, edi
call fcn.00761d90
and word [edi + 8], 0xefff
jmp 0x7d477f
mov edx, esi
mov eax, ebx
call fcn.00780010
test eax, eax
jne 0x7d3d49
movzx eax, word [ebx + 8]
mov edx, dword [ebx + 0x10]
jmp 0x7d164f
mov ecx, str.cannot_start_a_transaction_within_a_transaction
test eax, eax
je 0x7d5172
test edx, edx
mov ecx, str.cannot_rollback___no_transaction_is_active
mov eax, str.cannot_commit___no_transaction_is_active
cmove ecx, eax
sub esp, 8
push ecx
jmp 0x7d48ef
sub esp, 8
mov dword [edi + 0x28], 0x313
mov esi, 1
mov byte [edi + 0x92], 2
push str.FOREIGN_KEY_constraint_failed
push edi
call fcn.00795be0
add esp, 0x10
jmp 0x7ce169
movzx ebx, ax
test ax, ax
je 0x7cea0e
test byte [edi + 8], 1
jne 0x7d7054
lea eax, [esp + 0xe8]
mov dword [esp + 0x20], 0
mov dword [esp + 0x28], eax
lea edx, [edi + 0x30]
xor eax, eax
jmp 0x7d51e3
movzx ecx, word [edx]
add edx, 0x28
and ecx, 1
jne 0x7d57ab
add eax, 1
cmp eax, ebx
jl 0x7d51d4
xor ebx, ebx
lea eax, [esp + 0xa0]
push eax
push 0
push 0
push 0
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x18]
call fcn.007af0f0
mov dword [esp + 0x18], eax
add esp, 0x10
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x7d322f
jmp 0x7cea35
mov dword [esp + 0xa0], 0
sub esp, 8
push 0
push edx
call fcn.007af970
add esp, 0x10
test eax, eax
jne 0x7d532c
mov eax, dword [esp + 0xa0]
jmp 0x7d3e79
mov eax, dword [esp + 4]
add dword [eax + 0x1d4], 1
jmp 0x7d19b5
mov eax, ecx
mov dword [esp + 8], ecx
call fcn.00769410
mov ecx, dword [esp + 8]
test eax, eax
mov esi, eax
mov dword [edi + 0x20], eax
je 0x7d3d49
mov word [eax + 8], bx
jmp 0x7d1558
xor eax, eax
jmp 0x7ce3e1
neg eax
adc edx, 0
neg edx
shld edx, eax, 0xa
shl eax, 0xa
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
jmp 0x7d1440
xor edx, edx
xor ecx, ecx
call fcn.00767cd0
jmp case.0x7cde44.85
movzx edx, byte [esp + 0x3b]
xor ecx, ecx
mov eax, edi
call fcn.0078bed0
test eax, eax
jne 0x7cf0a1
movzx eax, word [edi + 8]
and eax, 0xfffffffd
mov word [esp + 0x28], ax
movzx eax, word [esi + 8]
mov word [esp + 0x20], ax
jmp 0x7d1dbf
movzx edx, byte [esp + 0x3b]
xor ecx, ecx
mov eax, esi
call fcn.0078bed0
test eax, eax
jne 0x7cf0a1
movzx eax, word [esi + 8]
and eax, 0xfffffffd
mov word [esp + 0x20], ax
jmp 0x7d1dd7
mov dword [esp + 0xa0], 0
sub esp, 8
push 0
push dword [edi + 0x28]
call fcn.007afad0
add esp, 0x10
test eax, eax
je 0x7d5241
cmp eax, 0x65
je 0x7d3e81
jmp 0x7d3930
mov eax, edi
call fcn.00767c10
jmp 0x7d2a31
mov eax, dword [ebx + 4]
mov eax, dword [eax]
mov esi, dword [eax + 0x9c]
jmp 0x7d1d5f
mov eax, ebx
call fcn.0076c820
jmp 0x7d1d5f
mov eax, ebx
call fcn.00767c10
jmp case.0x7cde44.85
movzx eax, word [ebx + 8]
and ax, 0x3e40
or eax, 1
mov word [ebx + 8], ax
jmp 0x7d451a
fld qword [ecx]
fild qword [esp + 0x20]
fcomi st(1)
jbe 0x7d43e5
fstp st(0)
fstp st(0)
and ebx, 1
cmp bl, 1
adc esi, 0xffffffff
jmp 0x7d43f6
mov byte [esi + 2], 1
mov eax, dword [ebp + 8]
mov dword [esp + 8], 0
jmp 0x7ceaf3
movzx ecx, byte [edx + 0xbfa2c0]
test ecx, ecx
jne 0x7d50fa
mov ecx, dword [esp + 0x30]
mov eax, 0xbfac00
call fcn.00761d90
jmp 0x7d477f
mov edx, dword [ebp + 0x10]
test edx, edx
je 0x7ce44c
mov eax, dword [esp + 4]
call fcn.00767880
jmp 0x7ce44c
mov dword [esp + 8], 0
jmp case.0x7cde44.85
mov eax, 0xbf578c
jmp 0x7cfa7c
mov eax, dword [edx]
test esi, esi
jg 0x7d2bab
mov esi, dword [eax + 0x9c]
jmp 0x7d1d5f
mov dword [esp + 0xb8], 1
mov eax, dword [esp + 0xe0]
jmp 0x7cfc7e
mov dword [ecx + 0x34], edi
mov eax, edi
cdq
mov dword [esp + 8], ecx
call fcn.00767320
mov ecx, dword [esp + 8]
test eax, eax
mov dword [ecx + 0x28], eax
mov eax, dword [esp + 0x20]
je 0x7d664c
cmp word [eax + 8], 0xc
jbe 0x7d46e4
mov dword [esp + 8], 0
jmp case.0x7cde44.85
mov eax, dword [esp + 4]
call fcn.00767880
mov eax, dword [esi + 0x24]
jmp 0x7d29cd
movzx eax, word [ebx + 8]
jmp 0x7cf03f
test word [esp + 0xa8], 0x2400
jne 0x7d54a5
mov esi, dword [esp + 0xb8]
test esi, esi
je 0x7d54ae
mov eax, dword [esp + 0x20]
call fcn.00767e50
sub esp, 0xc
push 0xbeb7d8
push 0x14137
push str.database_corruption
push str._s_at_line__d_of___.10s_
push 0xb
call fcn.00787f60
mov eax, ebp
sub eax, dword [esp + 0x38]
sar eax, 2
imul edi, eax, 0xcccccccd
mov eax, dword [esp + 0x24]
add esp, 0x20
movzx ecx, byte [eax + 0x51]
mov dword [esp + 8], 0xb
jmp 0x7ce108
call fcn.00767c10
jmp 0x7d4a82
mov esi, dword [esp + 0x40]
mov eax, esi
call fcn.00780a30
movzx edx, word [esi + 8]
jmp 0x7d3a40
mov eax, dword [edi + 0xc]
mov eax, dword [eax + 0x38]
mov ebx, dword [eax + 0x40]
test ebx, ebx
je 0x7d2e20
sub esp, 8
push str.incremental_vacuum_enabled_with_a_max_rootpage_of_zero
push dword [esp + 0x2c]
call fcn.0079be70
add esp, 0x10
jmp 0x7d2e20
sub esp, 0xc
push dword [ebx + 8]
call dword [edi + 0x38]
add esp, 0x10
test eax, eax
jne 0x7d24e3
mov eax, dword [esi + 0x1d4]
add eax, dword [esi + 0x1d8]
mov dword [esp + 8], eax
mov eax, dword [esi + 0x15c]
mov edx, dword [esi + 0x174]
lea ecx, [eax + 1]
mov dword [esi + 0x15c], ecx
mov dword [edx + eax*4], ebx
mov edx, dword [esp + 8]
add dword [ebx + 0xc], 1
mov eax, dword [ebx + 8]
test edx, edx
jne 0x7d66cc
lea ecx, [eax + 8]
mov edx, dword [esp + 0x20]
mov eax, dword [esp]
call fcn.00774eb0
jmp case.0x7cde44.85
mov eax, ebp
sub eax, dword [esp + 0x18]
sar eax, 2
imul edi, eax, 0xcccccccd
jmp 0x7ce0d3
mov eax, ebp
sub eax, dword [esp + 0x18]
mov edi, dword [esp]
sar eax, 2
mov edx, dword [esp + 4]
imul eax, eax, 0xcccccccd
mov dword [edi + 0x24], eax
mov eax, 1
sub eax, ebx
mov byte [edx + 0x4f], al
mov dword [edi + 0x28], 5
jmp 0x7ce169
add dword [esp + 0x30], 8
adc dword [esp + 0x34], 0
test al, 0x20
je 0x7d61f1
mov dword [esp + 0x68], esi
and eax, 0xffffffdf
mov dword [esp + 0x6c], edi
fild qword [esp + 0x68]
or eax, 8
mov word [ebx + 8], ax
mov dword [ebx + 0x1c], 7
fstp qword [ebx]
jmp 0x7cf981
mov dword [esp + 0xa0], 0
cmp byte [ebp + 1], 0xf5
jne 0x7d4762
mov edx, dword [ebp + 0x10]
mov eax, dword [esp + 0x30]
mov ecx, 0x800
call fcn.00773bb0
jmp 0x7d477f
test byte [esp + 0x30], 0x10
je case.0x7cde44.85
jmp 0x7d1f70
and eax, 0xfffff
or eax, ecx
jne 0x7d3b64
jmp 0x7d237b
call fcn.00767c10
jmp case.0x7cde44.85
movzx edx, word [esp + 0x28]
movzx eax, word [esp + 0x20]
jmp 0x7cee68
mov eax, dword [esp + 0x98]
lea edx, [esp + 0x94]
call fcn.007aba00
mov eax, dword [esp + 0x98]
test eax, eax
je 0x7d56a3
mov eax, dword [eax + 0x48]
call fcn.00761530
mov edx, dword [esp + 0x94]
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
jmp 0x7d354a
mov eax, dword [esp + 0x98]
test eax, eax
je 0x7d56dd
mov eax, dword [eax + 0x48]
call fcn.00761530
mov eax, dword [esp + 0x94]
mov dword [esp + 8], eax
mov edx, dword [esp + 8]
mov dword [esp + 0x28], 0
mov dword [esp + 8], 0
mov dword [esp + 0x2c], 0
jmp 0x7d354a
cmp byte [edi + 9], 0
je 0x7d3843
sub dword [edi + 0xc], 1
jne 0x7d3843
mov eax, edi
call fcn.0076c820
jmp 0x7d3837
mov esi, dword [esp + 0x20]
mov edi, dword [esp + 0x24]
mov ecx, esi
mov esi, edi
and ecx, eax
and esi, edx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], esi
jmp 0x7d404f
sub esp, 0xc
push 0xbeb7d8
push 0x16345
push str.database_corruption
push str._s_at_line__d_of___.10s_
push 0xb
call fcn.00787f60
add esp, 0x20
mov edi, dword [esp + 4]
mov edx, ebx
mov eax, edi
call fcn.00767880
mov byte [edi + 0xa5], 0
mov eax, edi
call fcn.00777fb0
mov dword [esp + 8], 0xb
jmp 0x7ce385
mov dword [esp + 0x78], edi
mov ecx, dword [esp + 0xe8]
mov edi, dword [esp + 0x28]
mov dword [esp + 0x7c], ebp
mov ebx, dword [esp + 0xec]
mov ebp, dword [esp + 0x40]
mov dword [esp + 8], eax
jmp 0x7d1af4
mov ebx, 1
jmp 0x7d51ec
mov eax, dword [esp]
mov edx, dword [ebp + 0xc]
mov ebx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x28]
mov eax, dword [eax + 0x60]
mov eax, dword [eax + edx*4]
mov dword [eax + 0x44], ebx
mov ebx, 0x100
mov word [eax + 2], bx
mov edx, dword [ebp + 0x10]
mov dword [eax + 0x40], ecx
mov dword [eax + 0x18], edx
mov dword [eax + 0x24], esi
jmp case.0x7cde44.85
mov edx, dword [esp + 0x20]
call fcn.0076b280
movzx edi, al
jmp 0x7cfe80
mov eax, esi
call fcn.007809c0
test eax, eax
je 0x7d52f8
jmp 0x7cf0a1
mov eax, edi
call fcn.007809c0
test eax, eax
je 0x7d52c8
jmp 0x7cf0a1
call fcn.00767c10
mov eax, dword [ebp + 8]
jmp 0x7ceaf3
mov eax, ebx
call fcn.00767cd0
jmp case.0x7cde44.85
mov ebx, dword [edi + 0x28]
mov eax, ebx
call fcn.00761b80
mov ecx, dword [ebx + 0x20]
mov ebx, dword [ebx + 0x24]
mov eax, ecx
mov edx, ebx
mov dword [esp + 0xe8], ecx
not eax
xor edx, 0x7fffffff
mov dword [esp + 0xec], ebx
or edx, eax
je 0x7d641a
add ecx, 1
adc ebx, 0
mov dword [esp + 0xe8], ecx
mov dword [esp + 0xec], ebx
jmp 0x7d4602
mov ecx, edx
mov edx, dword [eax + 0x14]
mov dword [ecx + 0x14], edx
jmp 0x7cf891
mov edx, eax
mov dword [esp + 8], 0
jmp 0x7d1a67
mov edx, edi
or edx, esi
je 0x7d3b64
mov eax, edi
xor edx, edx
and eax, esi
mov ecx, eax
xor eax, eax
cmp ecx, 0xffffffff
je 0x7d3ad4
push edi
push esi
push dword [esp + 0x2c]
push dword [esp + 0x2c]
call fcn.0080a5b0
add esp, 0x10
jmp 0x7d3ad4
mov eax, ebx
call fcn.007afb20
mov dword [esp + 8], eax
jmp 0x7d4dd0
mov esi, dword [esp + 0x28]
test esi, esi
je 0x7d6495
mov ecx, dword [edi + 0x30]
test ecx, ecx
je 0x7d637b
mov eax, dword [esp + 0x30]
add eax, ecx
cmp dword [esp + 8], eax
jge 0x7d637b
mov eax, edi
call fcn.00779790
mov dword [edi + 0x30], 0
mov dword [esp + 8], eax
mov eax, dword [edi + 0x28]
mov dword [esp + 0x28], eax
mov eax, ebx
jmp 0x7d4f45
cmp eax, 0xa
jle 0x7d5d94
test al, 1
je 0x7d5d94
and byte [edi + 0x3c], 2
jmp 0x7d4eec
mov dword [esp + 0x40], edi
mov edi, ebx
mov ebx, ecx
mov ecx, dword [esp + 8]
mov eax, dword [ebx + 0x4c]
mov dword [esp + 0x44], ebp
mov ebp, dword [esp + 0x50]
mov dword [esp + 8], eax
cmp edi, ecx
ja 0x7d5977
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0x40]
xor eax, dword [ebx + 0x50]
or edx, eax
je 0x7d59e0
mov eax, dword [esp + 0x20]
xor esi, esi
mov eax, dword [eax]
test eax, eax
jne 0x7d4b1f
mov eax, dword [esp + 8]
sub ecx, dword [esp + 0x48]
mov word [ebx + 0x3a], si
mov dword [ebx + 0x30], ecx
test eax, eax
je 0x7d6545
movzx esi, si
cmp esi, dword [esp + 0x28]
jg 0x7d4a72
jmp 0x7d5622
mov dword [esp + 0x40], edi
mov edi, ebx
mov ebx, ecx
mov ecx, dword [esp + 8]
mov eax, dword [ebx + 0x4c]
mov dword [esp + 0x44], ebp
mov ebp, dword [esp + 0x50]
mov dword [esp + 8], eax
cmp edi, ecx
jae 0x7d5964
xor edx, edx
mov eax, dword [ebx + 0x50]
cmp eax, dword [esp + 0x40]
mov eax, edx
sbb eax, dword [esp + 0x44]
jb 0x7d5977
mov ecx, edi
jmp 0x7d5987
mov dword [edi + 0x10], 0
xor eax, eax
jmp 0x7d2c1f
lea edx, [edi - 0x80000000]
or edx, esi
jne 0x7d6327
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x20]
test edx, edx
jns 0x7d230f
add edx, 0x80000000
jmp 0x7d3ad4
xor eax, eax
cmp eax, esi
mov ecx, eax
sbb ecx, edi
jge 0x7d6711
push edi
push esi
push 0x7fffffff
push 0xffffffffffffffff
call fcn.0080a460
add esp, 0x10
mov ecx, dword [esp + 0x20]
cmp eax, ecx
sbb edx, dword [esp + 0x24]
jl 0x7d230f
push edi
push esi
push 0x80000000
push 0
call fcn.0080a460
add esp, 0x10
mov ecx, dword [esp + 0x20]
mov ebx, dword [esp + 0x24]
cmp ecx, eax
mov eax, ebx
sbb eax, edx
jl 0x7d230f
mov ebx, dword [esp + 0x24]
mov eax, dword [esp + 0x20]
mov edx, ebx
imul eax, edi
imul edx, esi
lea ebx, [edx + eax]
mov eax, dword [esp + 0x20]
mul esi
add edx, ebx
jmp 0x7d3ad4
sub esp, 0xc
push 0xbeb7d8
push 0x10985
push str.database_corruption
push str._s_at_line__d_of___.10s_
push 0xb
call fcn.00787f60
add esp, 0x20
cmp byte [edi + 9], 0
je 0x7d6d42
sub dword [edi + 0xc], 1
mov dword [esp + 8], 0xb
jne 0x7ce385
mov eax, edi
call fcn.0076c820
jmp 0x7ce385
call fcn.00767c10
jmp 0x7d477f
mov eax, ecx
xor edx, edx
mov dword [esp + 0x20], ecx
call fcn.00776760
mov ecx, dword [esp + 0x20]
jmp 0x7d2aca
mov eax, dword [esp + 0x40]
mov ebp, dword [esp + 8]
test eax, eax
je 0x7d5b4c
mov dword [esp + 8], 0
mov eax, dword [esp + 4]
mov eax, dword [eax + 4]
test eax, eax
je 0x7d5b31
movzx edx, byte [eax + 0x98]
and edx, 0xfffffffc
or edx, 1
mov byte [eax + 0x98], dl
mov eax, dword [eax + 8]
test eax, eax
jne 0x7d5b17
mov esi, dword [esp + 4]
mov eax, esi
call fcn.00777fb0
or dword [esi + 0x18], 1
mov ecx, dword [esp + 8]
test ecx, ecx
jne 0x7ce385
mov esi, dword [esp + 4]
mov edx, dword [esi + 0x1cc]
cmp ebx, edx
je 0x7d5b81
lea esi, [esi]
mov eax, dword [edx + 0x18]
mov dword [esi + 0x1cc], eax
mov eax, esi
call fcn.00767880
mov edx, dword [esi + 0x1cc]
sub dword [esi + 0x1d4], 1
cmp edx, ebx
jne 0x7d5b60
cmp dword [esp + 0x28], 1
je 0x7d676f
mov eax, dword [ebx + 8]
mov edx, dword [ebx + 0xc]
mov ecx, dword [esp + 4]
mov dword [ecx + 0x1e0], eax
mov eax, dword [ebx + 0x10]
mov dword [ecx + 0x1e4], edx
mov edx, dword [ebx + 0x14]
mov dword [ecx + 0x1e8], eax
mov dword [ecx + 0x1ec], edx
test edi, edi
je 0x7d5bcb
cmp dword [esp + 0x28], 2
mov dword [esp + 8], 0
jne case.0x7cde44.85
mov eax, dword [esp + 4]
mov edx, dword [eax + 0x174]
test edx, edx
je 0x7d6923
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x28]
call fcn.0076f460
mov dword [esp + 8], eax
test eax, eax
je case.0x7cde44.85
jmp 0x7ce385
mov dword [ebx + 8], 0
mov eax, ebx
mov dword [esi + 0x40], 0
call fcn.0076f220
mov edx, esi
mov esi, dword [esp + 4]
mov eax, esi
call fcn.00777760
sub dword [esi + 0xc0], 1
jmp case.0x7cde44.85
sub esp, 8
mov esi, dword [edi]
lea edx, [esp + 0xf0]
mov eax, dword [esi]
push edx
push edi
call dword [eax + 0x30]
lea ecx, [esi + 8]
mov edi, eax
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x10]
lea edx, [eax + 0x7c]
call fcn.00774eb0
add esp, 0x10
test edi, edi
jne 0x7ce385
mov eax, dword [esp + 0xe8]
mov edx, dword [esp + 0xec]
jmp 0x7d176a
test eax, eax
je 0x7ce940
jmp 0x7d3e81
mov edx, 1
xor ecx, ecx
call fcn.00767cd0
jmp 0x7d0a35
call fcn.007654d0
movzx edx, word [esi + 0x1a]
mov dword [esi + 8], eax
jmp 0x7d2cc5
mov eax, dword [edx + 0x10]
jmp 0x7d4cdd
fmulp st(1)
jmp 0x7d3d30
mov eax, dword [esp + 4]
cmp byte [eax + 0x57], 0
je 0x7d4849
mov esi, dword [esp + 0x28]
cmp esi, 1
jne 0x7d703a
mov eax, dword [esp]
mov ecx, dword [eax]
mov eax, dword [ecx + 0x1e8]
add eax, dword [ecx + 0x1e0]
mov edx, dword [ecx + 0x1ec]
adc edx, dword [ecx + 0x1e4]
cmp edi, eax
sbb edi, edx
jl 0x7d62f0
mov eax, dword [esp + 4]
mov byte [eax + 0x4f], 1
mov eax, dword [esp]
call fcn.007b5370
cmp eax, 5
je 0x7d700c
mov eax, dword [esp]
mov eax, dword [eax + 0x28]
mov dword [esp + 8], eax
test eax, eax
je 0x7d618a
mov esi, dword [esp + 4]
mov byte [esi + 0x4f], 0
jmp 0x7d4d0c
fstp st(0)
fstp st(0)
jmp 0x7d5d36
fstp st(0)
fstp st(0)
mov eax, dword [esp + 0x28]
call fcn.0076cf00
mov esi, eax
mov edi, edx
mov eax, dword [esp + 0x40]
mov ebx, edi
call fcn.0076cf00
or ebx, esi
je 0x7d3b64
mov ecx, edi
and ecx, esi
cmp ecx, 0xffffffff
je 0x7d6c7c
push edi
push esi
push edx
push eax
call fcn.0080a5b0
add esp, 0x10
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], edx
fild qword [esp + 0x20]
fstp qword [esp + 0x20]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
mov edx, eax
and edx, 0x7ff00000
jmp 0x7d236f
mov byte [edi + 0x3c], 0
jmp 0x7d4eec
fsubp st(1)
jmp 0x7d235b
sub esp, 8
mov ecx, 4
mov edx, 1
mov dword [ebx + 0x34], 1
push dword [ebx + 0x28]
push 0
call fcn.00788f80
mov byte [ebx + 4], 1
mov dword [esp + 0x18], eax
add esp, 0x10
jmp 0x7d32ec
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
call fcn.00767cd0
jmp 0x7cdfe8
mov eax, dword [esp + 0x58]
mov dword [esp + 0x30], edx
movzx eax, byte [eax + 0x3b]
jmp 0x7d3666
mov eax, 0x10
call fcn.00767640
mov dword [esp + 0x94], eax
test eax, eax
je 0x7d6b94
mov eax, dword [esp + 8]
mov dword [esp + 0x28], 0
mov edx, dword [eax + 0x1c]
lea eax, [esp + 0x98]
mov dword [esp + 0x60], eax
test edx, edx
jle 0x7d4bed
mov dword [esp + 0x84], ebp
mov dword [esp + 0x98], 0
mov eax, dword [esp + 0x28]
shl eax, 4
sub edx, eax
mov dword [esp + 0x48], eax
mov eax, 0x10
cmp edx, 0x10
cmovg edx, eax
sub esp, 0xc
push dword [esp + 0x6c]
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0xf8]
call fcn.00778cf0
add esp, 0x10
test eax, eax
je 0x7d5ec0
mov ebp, dword [esp + 0x50]
mov edx, eax
mov eax, dword [esp + 0x94]
mov dword [esp + 8], edx
call fcn.00775770
mov edx, dword [esp + 8]
mov eax, dword [esp + 0x30]
mov dword [esp + 8], edx
call fcn.00775770
mov dword [esp + 0x30], 0
mov edx, dword [esp + 8]
mov eax, dword [esp + 0x30]
mov dword [esp + 8], edx
call fcn.00775770
jmp 0x7ce385
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x98]
lea ecx, [esp + 0xa0]
mov ebx, dword [esp + 0x94]
add eax, 1
mov dword [esp + 0x74], eax
mov eax, dword [esp + 8]
call fcn.007757b0
mov ecx, dword [esp + 0x84]
cmp ecx, 1
jle 0x7d5fb1
mov edi, 1
mov esi, 1
jmp 0x7d5f07
mov edi, edx
lea edx, [edi + 1]
shl esi, 4
cmp ecx, edx
jne 0x7d5f05
test eax, eax
jne 0x7d5f68
mov ebp, 1
jmp 0x7d5f2f
mov ebx, dword [eax + 4]
sar esi, 4
lea eax, [ebp + 1]
cmp edi, ebp
je 0x7d7095
mov ebp, eax
mov eax, dword [esp + 0x28]
cdq
idiv esi
and eax, 0xf
imul eax, eax, 0x38
add eax, dword [ebx + 0xc]
mov ebx, eax
mov eax, dword [eax + 0x30]
test eax, eax
jne 0x7d5f1c
mov eax, 0x10
call fcn.00767640
test eax, eax
je 0x7d5faa
mov edx, eax
mov eax, dword [esp + 8]
lea ecx, [ebx + 0x30]
call fcn.007757b0
test eax, eax
je 0x7d5fa2
mov edx, eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x28], edx
call fcn.00775690
mov eax, dword [esp + 0x48]
mov esi, dword [esp + 8]
mov edx, dword [esp + 0x28]
add eax, 0x10
cmp eax, dword [esi + 0x1c]
jge 0x7d4be5
mov ebp, dword [esp + 0x50]
mov eax, dword [esp + 0x94]
jmp 0x7d5e85
mov eax, dword [ebx + 0x30]
jmp 0x7d5f1c
mov edx, 7
jmp 0x7d5f6a
mov ecx, dword [esp + 0xa0]
test eax, eax
jne 0x7d6f91
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 8]
and edx, 0xf
imul edx, edx, 0x38
add edx, dword [ebx + 0xc]
mov dword [edx + 0x30], ecx
mov edx, dword [eax + 0x1c]
mov eax, dword [esp + 0x48]
add eax, 0x10
cmp eax, edx
jge 0x7d4bed
mov eax, dword [esp + 0x74]
mov dword [esp + 0x28], eax
jmp 0x7d5e37
sub esp, 8
mov edx, dword [ebx + 0x34]
mov eax, dword [ebx + 0xc]
push dword [ebx + 0x28]
push esi
mov ecx, 4
call fcn.00788f80
mov dword [esp + 0x18], eax
add esp, 0x10
jmp 0x7d49d2
sub esp, 8
push str.cannot_commit_transaction___SQL_statements_in_progress
push dword [esp + 0xc]
call fcn.00795be0
mov eax, ebp
sub eax, dword [esp + 0x28]
sar eax, 2
imul edi, eax, 0xcccccccd
mov eax, dword [esp + 0x14]
add esp, 0x10
movzx ecx, byte [eax + 0x51]
mov dword [esp + 8], 5
jmp 0x7ce108
mov eax, dword [edi + 4]
and dword [eax + 0x20], 0xffdfffff
jmp 0x7d2e36
call fcn.00767e10
jmp 0x7cdf9b
movzx eax, word [ebp + 2]
cmp ax, 4
je 0x7d6916
mov edx, 2
cmp ax, 5
cmove eax, edx
mov edx, dword [esp]
mov byte [edx + 0x92], al
mov eax, dword [esp + 4]
movzx ecx, byte [eax + 0x51]
jmp 0x7d4e79
mov ebx, dword [esp + 0x60]
mov esi, dword [esp + 0x68]
mov dword [esp + 0x48], ebp
mov ebp, dword [esp + 0x58]
jmp 0x7d415e
sub dword [esi + 0xc], 1
jne 0x7d0bfc
mov eax, esi
call fcn.0076c820
jmp 0x7d0bfc
mov ecx, dword [esi + 4]
mov eax, dword [ecx + 0x48]
test eax, eax
jne 0x7d60dc
jmp 0x7d6f1e
mov eax, dword [eax + 0xc]
test eax, eax
je 0x7d6f1e
cmp ebx, dword [eax + 4]
jne 0x7d60d1
cmp esi, dword [eax]
jne 0x7d60d1
mov ecx, edi
cmp cl, byte [eax + 8]
jbe 0x7d6753
mov byte [eax + 8], cl
cmp byte [esi + 9], 0
je case.0x7cde44.85
sub dword [esi + 0xc], 1
jne case.0x7cde44.85
mov eax, esi
call fcn.0076c820
mov dword [esp + 8], 0
jmp case.0x7cde44.85
mov ecx, dword [esp + 0x30]
mov eax, esi
call fcn.00761d90
jmp 0x7d477f
sub esp, 4
push eax
push str.____s
push esi
call fcn.00795c10
push eax
mov ebx, eax
push dword [esp + 0x14]
push dword [esi + 0xd0]
push 1
call dword [esi + 0xcc]
add esp, 0x20
test ebx, ebx
je 0x7d0102
mov edx, ebx
mov eax, esi
call fcn.00767880
jmp 0x7d0102
mov eax, dword [esp]
mov eax, dword [eax + 0xc0]
test eax, eax
je 0x7d0102
jmp 0x7d00d7
xor eax, eax
jmp 0x7d2c1f
mov eax, dword [esp + 4]
mov edi, 1
mov esi, dword [esp + 4]
mov edx, dword [eax + 0x1cc]
mov byte [eax + 0x57], 0
cmp ebx, edx
jne 0x7d5b60
mov eax, dword [ebx + 0x18]
mov edi, dword [esp + 4]
mov edx, ebx
mov dword [edi + 0x1cc], eax
mov eax, edi
call fcn.00767880
jmp case.0x7cde44.85
mov esi, dword [esp + 0x20]
mov edi, dword [esp + 0x24]
mov ecx, esi
or edi, edx
or ecx, eax
mov dword [esp + 0x24], edi
mov dword [esp + 0x20], ecx
jmp 0x7d404f
mov esi, dword [ebx + 0x4c]
mov dword [esp + 8], eax
mov dword [esp + 0x48], esi
xor esi, esi
jmp 0x7cfef1
mov dword [ebx + 0x1c], 6
jmp 0x7cf981
movzx eax, byte [ebx + 0x11]
cmp al, 5
sete cl
cmp dword [ebx + 0xd8], 0
mov edx, ecx
je 0x7d69d4
cmp al, 3
jbe 0x7d69af
test dl, dl
jne 0x7d69af
sub esp, 8
movzx ecx, byte [ebx + 0xb]
mov eax, dword [ebx + 0xd8]
push dword [ebx + 0xd0]
push dword [ebx + 0x98]
mov edx, dword [esp + 0x14]
call fcn.007b2ca0
mov dword [ebx + 0xd8], 0
mov dword [esp + 0x18], eax
mov eax, dword [ebx + 0x3c]
add esp, 0x10
mov eax, dword [eax]
test eax, eax
je 0x7d626d
cmp dword [eax], 2
jle 0x7d626d
mov eax, ebx
call fcn.00775f90
mov eax, dword [esp + 8]
test eax, eax
je 0x7d69a1
cmp byte [ebx + 4], 0
jne 0x7d2bdf
mov edx, dword [ebx + 0x3c]
mov eax, dword [edx]
test eax, eax
je 0x7d62a7
cmp byte [ebx + 0xd], 0
jne 0x7d629d
push ecx
push ecx
push 1
push edx
call dword [eax + 0x20]
add esp, 0x10
cmp byte [ebx + 0x11], 5
je 0x7d62a7
mov byte [ebx + 0x11], 1
movzx eax, byte [ebx + 0xc]
mov byte [ebx + 0x12], al
jmp 0x7d2bdf
mov dword [esp + 0xb8], 1
jmp 0x7cfc7e
mov dword [esp + 0x20], esi
mov ecx, dword [esp + 0x14]
jmp 0x7cec54
mov eax, ebx
call fcn.00767c10
mov ecx, dword [esi + 0x28]
jmp 0x7d450b
mov edx, 2
mov eax, ebx
call fcn.007a9290
jmp 0x7cfafd
mov eax, dword [esp]
sub esp, 8
mov dword [eax + 0x28], 0x313
mov byte [eax + 0x92], 2
push str.FOREIGN_KEY_constraint_failed
push eax
call fcn.00795be0
add esp, 0x10
jmp 0x7ce169
mov eax, edi
call fcn.007654d0
mov dword [esp + 0x48], eax
jmp 0x7d40ad
xor eax, eax
cmp eax, esi
mov edx, eax
sbb edx, edi
jl 0x7d6c03
mov ecx, dword [esp + 0x20]
cmp eax, ecx
sbb eax, dword [esp + 0x24]
jge 0x7d636a
mov ecx, esi
mov ebx, edi
mov eax, 0xffffffff
mov edx, 0x7fffffff
neg ecx
adc ebx, 0
neg ebx
sub eax, dword [esp + 0x20]
sbb edx, dword [esp + 0x24]
cmp eax, ecx
mov eax, edx
sbb eax, ebx
jl 0x7d230f
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
sub eax, esi
sbb edx, edi
jmp 0x7d3ad4
mov eax, dword [edi + 0x2c]
add eax, ebx
mov dword [edi + 0x2c], eax
cmp ebx, dword [edi + 8]
jg 0x7d67bc
mov dword [esp + 8], 0
jmp 0x7d4f5f
lea edx, [esp + 0x94]
call fcn.0076b280
mov eax, dword [esp + 0x94]
jmp 0x7cdebb
mov ebp, dword [esp + 0x40]
mov dword [esp + 8], 0xd
jmp 0x7ce385
mov edx, dword [esi]
test edx, edx
je 0x7d63d8
mov ebx, dword [edx]
mov eax, dword [esi + 4]
call fcn.00767880
mov edx, ebx
test ebx, ebx
jne 0x7d63c8
mov dword [esi], 0
mov dword [esi + 8], 0
mov dword [esi + 0xc], 0
mov dword [esi + 0x14], 0
mov dword [esi + 0x18], 0x10000
jmp 0x7d2cef
add eax, 1
lea edx, [esp + 0xe8]
call fcn.0076b280
mov eax, dword [esp + 0xe8]
jmp 0x7d4ed3
or byte [edi + 8], 2
jmp 0x7d4602
mov edx, 1
mov edi, ecx
mov eax, ecx
mov word [ecx + 8], dx
xor ecx, ecx
lea edx, [ebx + 2]
call fcn.0077fe80
test eax, eax
jne 0x7cf0a1
mov eax, dword [edi + 0x10]
jmp 0x7d4ae3
mov eax, dword [esp + 0x20]
movzx ebx, word [eax + 8]
mov eax, dword [esi + 0x28]
mov dword [esp + 8], eax
test ebx, ebx
je 0x7d6de8
mov eax, dword [esp + 0x20]
mov edi, dword [eax + 4]
test byte [edi + 8], 1
jne 0x7d6dbc
mov dword [esp + 0x28], eax
jmp 0x7d51cd
lea eax, [edx + 0x20]
mov edx, dword [ebx + 0x20]
mov dword [eax], edx
jmp 0x7cf8dc
mov dword [esp + 8], 6
jmp 0x7ce385
mov eax, dword [edi + 0x2c]
cmp dword [esp + 8], eax
jl 0x7d590f
cmp eax, dword [edi]
jle 0x7d64b3
cmp dword [0xc141f8], 0
jne 0x7d590f
add eax, ebx
mov dword [edi + 0x2c], eax
cmp ebx, dword [edi + 8]
jg 0x7d67bc
mov dword [esp + 8], 0
mov eax, dword [esp + 0x30]
cdq
call fcn.00767320
mov ebx, eax
test eax, eax
je 0x7d69c7
mov eax, dword [edi + 0x24]
mov dword [ebx + 4], eax
jmp 0x7d5077
mov eax, ebp
sub eax, dword [esp + 0x18]
mov dword [esp + 8], 0x204
sar eax, 2
imul edi, eax, 0xcccccccd
mov eax, dword [esp + 4]
movzx ecx, byte [eax + 0x51]
jmp 0x7ce108
mov ebx, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
test ebx, ebx
jns 0x7d3c98
mov eax, 1
mov edx, 0x80000000
sub eax, ecx
mov ecx, esi
sbb edx, ebx
add ecx, 1
mov ebx, edi
adc ebx, 0
cmp ecx, eax
mov ecx, ebx
sbb ecx, edx
jge 0x7d3c98
jmp 0x7d230f
test word [esp + 0xf0], 0x2400
jne 0x7d6560
mov edi, dword [esp + 0x100]
test edi, edi
je 0x7d599e
lea eax, [esp + 0xe8]
call fcn.00767e50
movzx esi, word [ebx + 0x3a]
jmp 0x7d599e
mov eax, dword [esi + 0x18]
mov esi, eax
and esi, 1
mov dword [esp + 0x30], esi
mov dword [esp + 0x40], esi
test edx, edx
jle 0x7d7044
not eax
xor esi, esi
and eax, 1
mov dword [esp + 8], eax
mov ecx, dword [esp + 4]
mov eax, esi
mov edx, 0x204
shl eax, 4
add eax, dword [ecx + 0x10]
mov ecx, dword [esp + 8]
mov eax, dword [eax + 4]
call fcn.007aec40
test eax, eax
jne 0x7d3930
mov ecx, dword [esp + 4]
add esi, 1
mov edx, dword [ecx + 0x14]
cmp edx, esi
jg 0x7d6598
mov dword [esp + 8], eax
test edx, edx
jg 0x7d487b
cmp dword [esp + 0x30], 0
je 0x7d5b4c
jmp 0x7d5b0c
mov esi, dword [esp + 4]
mov eax, ebp
sub eax, dword [esp + 0x18]
mov dword [esp + 8], 6
sar eax, 2
sub dword [esi + 0xc0], 1
imul edi, eax, 0xcccccccd
movzx ecx, byte [esi + 0x51]
jmp 0x7ce108
mov eax, dword [esp + 0x24]
not eax
shr eax, 0x1f
cmp bl, 0x67
sete cl
xor edi, edi
mov esi, ecx
or esi, eax
xor esi, 1
mov eax, esi
movzx esi, al
neg esi
adc edi, 0
mov dword [esp + 0x20], esi
neg edi
mov dword [esp + 0x24], edi
jmp 0x7d404f
cmp word [eax + 8], 0xc
ja 0x7d3d49
mov dword [esp + 8], 7
jmp 0x7d46ec
call fcn.00767640
mov dword [esp + 0x30], eax
test eax, eax
je 0x7d6da5
movzx eax, byte [edi + 0x3b]
jmp 0x7d361c
mov edx, dword [esp + 0x94]
test edx, edx
je 0x7d6eb7
test eax, eax
je 0x7d1179
mov eax, dword [eax + 0x48]
call fcn.00761530
mov eax, dword [esp + 0x94]
mov dword [esp + 8], eax
test eax, eax
jne 0x7d6fb1
mov ecx, dword [esp + 0xa0]
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
jmp 0x7d34bc
mov edx, dword [edi + 0x50]
test edx, edx
je 0x7d6ee5
mov edi, dword [esp + 8]
sub esp, 8
lea ecx, [edi - 1]
mov dword [ebx + 0x14], edi
push ecx
push eax
call edx
mov ecx, dword [ebx + 8]
mov edx, dword [esp + 0x30]
mov esi, eax
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x10]
add ecx, 8
call fcn.00774eb0
add esp, 0x10
test esi, esi
je case.0x7cde44.85
jmp 0x7ce385
mov edx, edi
mov ecx, esi
or edx, esi
je 0x7d5a6f
cmp eax, dword [esp + 0x20]
sbb eax, dword [esp + 0x24]
jge 0x7d6cc4
push dword [esp + 0x24]
push dword [esp + 0x24]
push 0x80000000
push 0
call fcn.0080a460
add esp, 0x10
cmp esi, eax
mov eax, edi
sbb eax, edx
jge 0x7d5a6f
jmp 0x7d230f
cmp byte [esi + 9], 0
jne 0x7d60fd
jmp case.0x7cde44.85
mov dword [esp + 8], 6
jmp 0x7d4e79
mov eax, dword [ebx + 0x18]
mov esi, dword [esp + 4]
mov edx, ebx
mov dword [esi + 0x1cc], eax
mov eax, esi
call fcn.00767880
test edi, edi
jne 0x7d6ac5
sub dword [esi + 0x1d4], 1
jmp 0x7d5bcb
mov dword [esp + 8], eax
jmp 0x7d30a8
lea ecx, [esp + 0x98]
mov edx, ecx
call fcn.0076b280
mov edx, dword [esp + 0x98]
jmp 0x7cdeee
mov dword [esp + 8], 0
jmp 0x7d4f4d
mov ebp, dword [esp + 0x58]
jmp 0x7cf0a1
mov eax, dword [esp + 0x48]
lea edi, [esp + 0xe8]
mov ecx, 0xa
xor edx, edx
sub esp, 0xc
rep stosd dword es:[edi], eax
lea ecx, [esp + 0xf4]
mov eax, dword [ebx + 0x28]
push ecx
mov edi, dword [esp + 0x30]
mov ecx, dword [edi]
call fcn.007af090
mov dword [esp + 0x18], eax
add esp, 0x10
test eax, eax
jne 0x7ce385
mov edx, edi
mov eax, dword [esp + 0xf8]
movzx esi, word [ebx + 0x3a]
mov ecx, dword [edx]
mov dword [esp + 0x48], eax
mov eax, dword [edi + esi*4]
mov dword [esp + 8], ecx
mov edi, dword [ebx + 0x30]
jmp 0x7cfef1
mov eax, esi
call fcn.007afb20
mov dword [esp + 8], eax
test eax, eax
jne 0x7ce385
cmp byte [esi + 2], 0
je 0x7d6f49
mov eax, 1
mov word [ebx + 8], ax
jmp case.0x7cde44.85
mov ecx, dword [esp]
mov dword [ecx + 0x28], eax
mov eax, dword [ebp + 8]
mov dword [ecx + 0x24], ebx
mov byte [ecx + 0x92], al
movzx eax, word [ebp + 2]
test ax, ax
je 0x7d6be7
sub esp, 4
push dword [eax*4 + 0xbf4750]
push str._s_constraint_failed
mov esi, dword [esp + 0xc]
push esi
call fcn.00795be0
mov eax, dword [ebp + 0x10]
add esp, 0x10
test eax, eax
je 0x7d68b5
push eax
push dword [esi + 0x7c]
push str._z:__s
push dword [esp + 0x10]
call fcn.00795c10
add esp, 0x10
mov dword [esi + 0x7c], eax
sub esp, 0xc
mov eax, dword [esp + 0xc]
push dword [eax + 0x7c]
push dword [eax + 0xc0]
push ebx
push str.abort_at__d_in___s_:__s
push dword [ebp + 4]
call fcn.00787f60
add esp, 0x20
mov eax, dword [esp]
call fcn.007b5370
mov esi, eax
mov eax, dword [esp]
cmp esi, 5
jne 0x7d0449
mov dword [eax + 0x28], 5
jmp 0x7ce169
mov ecx, 0xffffffcf
mov esi, edx
sub ecx, ebx
cmp eax, 0xffffffc1
sbb esi, 0xffffffff
mov ebx, ecx
jl 0x7d661b
neg eax
jmp 0x7d3fe8
mov dword [esp + 8], 0
jmp case.0x7cde44.85
mov dword [esp + 8], 0
jmp case.0x7cde44.85
xor edx, edx
mov eax, ebx
call fcn.00776760
movzx eax, word [edi + 8]
movzx edx, word [ebx + 8]
jmp 0x7cee68
mov eax, edi
xor edx, edx
call fcn.00776760
movzx eax, word [ebx + 8]
mov word [esp + 0x50], ax
mov word [esp + 0x28], ax
jmp 0x7cee50
mov edx, dword [esp]
mov eax, dword [ebp + 8]
mov dword [edx + 0x28], 0
mov byte [edx + 0x92], al
mov dword [edx + 0x24], ebx
jmp 0x7d68d6
mov edx, dword [esp + 0x20]
mov eax, dword [esp]
lea ecx, [esi + 8]
call fcn.00774eb0
mov dword [esp + 8], 0
jmp case.0x7cde44.85
mov eax, dword [edi + 0x24]
jmp 0x7d5047
mov edx, esi
mov eax, ebx
call fcn.007a9290
jmp 0x7cfb09
mov eax, ebx
call fcn.0076c140
mov dword [esp + 8], eax
test eax, eax
je 0x7d6225
jmp 0x7d2bdf
mov dword [esp + 8], 7
jmp 0x7ce385
mov dword [esp + 0xe8], 0
test al, al
je 0x7d6f01
test cl, cl
jne 0x7d6f01
mov eax, dword [ebx]
lea ecx, [esp + 0xe8]
push ecx
push 0
push dword [ebx + 0xdc]
push eax
call dword [eax + 0x20]
mov dword [esp + 0x18], eax
add esp, 0x10
test eax, eax
jne 0x7d2bdf
cmp dword [esp + 0xe8], 0
jne 0x7d6fba
cmp dword [ebx + 0xd8], 0
je 0x7d69a1
movzx eax, byte [ebx + 0x11]
cmp al, 5
sete dl
jmp 0x7d6215
mov ecx, 4
mov dword [edi], 0
mov word [edi + 8], cx
mov dword [edi + 4], 0
mov eax, ebp
sub eax, dword [esp + 0x18]
mov dword [esp + 8], edx
sar eax, 2
imul edi, eax, 0xcccccccd
mov eax, dword [esp + 4]
movzx ecx, byte [eax + 0x51]
jmp 0x7ce108
mov eax, dword [edi + 0xc]
mov eax, dword [eax + 0x38]
mov eax, dword [eax + 0x34]
bswap eax
test eax, eax
je 0x7d6ae2
xor edx, edx
jmp 0x7d2e0d
mov eax, dword [edi]
cmp esi, dword [eax + 0x60]
jg 0x7d308e
jmp 0x7d30a8
mov ebx, dword [esp + 0x30]
lea eax, [edi + 0x40]
xor ecx, ecx
mov edx, ebx
call fcn.00778fd0
mov dword [edi + 0x14], ebx
mov dword [esp + 8], eax
mov eax, dword [esp + 8]
test eax, eax
jne 0x7d70de
mov byte [esi + 2], 0
jmp case.0x7cde44.85
mov dword [esp + 8], 0
jmp case.0x7cde44.85
mov edx, esi
call fcn.00769040
mov dword [esp + 8], eax
jmp 0x7d3098
mov eax, dword [edi + 4]
and dword [eax + 0x20], 0xffdfffff
jmp 0x7d2eb3
movzx edx, byte [esp + 0x3b]
mov ecx, 1
mov eax, edi
call fcn.0078bed0
movzx edx, word [esp + 0x20]
movzx eax, word [edi + 8]
and dx, 0xc1bf
and ax, 0x3e40
or eax, edx
mov word [esp + 0x20], ax
cmp edi, ebx
jne 0x7d3db1
or eax, 2
mov word [esp + 0x28], ax
jmp 0x7d3de8
mov eax, ebp
sub eax, dword [esp + 0x18]
mov dword [esp + 8], esi
sar eax, 2
imul edi, eax, 0xcccccccd
mov eax, dword [esp + 4]
movzx ecx, byte [eax + 0x51]
jmp 0x7ce108
mov edx, ebp
mov ecx, dword [esp + 4]
sub edx, dword [esp + 0x18]
mov dword [esp + 8], eax
sar edx, 2
imul edi, edx, 0xcccccccd
movzx ecx, byte [ecx + 0x51]
jmp 0x7ce108
sub esp, 0xc
push dword [esp + 0xf4]
call dword [esi + 0x1c]
mov eax, ebp
sub eax, dword [esp + 0x28]
sar eax, 2
imul edi, eax, 0xcccccccd
add esp, 0x10
jmp 0x7ce2e3
mov ebp, dword [esp + 0x50]
mov edx, 7
jmp 0x7d5e85
mov eax, esi
jmp 0x7d48e8
mov eax, dword [esp + 0x28]
add eax, 0x14
mov dword [esp + 0x50], eax
jmp 0x7d4135
sub esp, 0xc
push 0xbeb7d8
push 0x15dac
push str.database_corruption
push str._s_at_line__d_of___.10s_
push 0xb
call fcn.00787f60
add esp, 0x20
mov dword [esp + 8], 0xb
jmp 0x7ce385
sub esp, 4
push dword [ebp + 0x10]
push 0xbec70c
push dword [esp + 0xc]
call fcn.00795be0
add esp, 0x10
jmp 0x7d68b5
mov eax, dword [esp + 0x24]
test eax, eax
jns 0x7d636a
mov eax, 1
mov edx, 0x80000000
mov ecx, eax
mov eax, 1
sub ecx, dword [esp + 0x20]
mov ebx, edx
sbb ebx, dword [esp + 0x24]
xor edx, edx
sub eax, esi
sbb edx, edi
cmp eax, ecx
mov eax, edx
sbb eax, ebx
jge 0x7d636a
jmp 0x7d230f
mov edi, eax
jmp 0x7ce2e3
mov eax, dword [esp]
mov dword [esp + 8], 6
mov byte [eax + 0x92], 2
mov eax, ebp
sub eax, dword [esp + 0x18]
sar eax, 2
movzx ecx, byte [esi + 0x51]
imul edi, eax, 0xcccccccd
jmp 0x7ce108
mov edx, 7
jmp 0x7d5eab
fldz
fstp qword [esp + 0x20]
jmp 0x7d237b
mov edx, 1
mov eax, ebx
call fcn.0078c260
sub esp, 4
push eax
push 0xbec70c
push dword [esp + 0xc]
call fcn.00795be0
mov eax, ebp
sub eax, dword [esp + 0x28]
sar eax, 2
imul edi, eax, 0xcccccccd
mov eax, dword [esp + 0x14]
add esp, 0x10
movzx ecx, byte [eax + 0x51]
jmp 0x7ce108
mov eax, dword [esp + 0x24]
or eax, dword [esp + 0x20]
je 0x7d5a6f
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x20]
add edx, 0x80000000
or eax, edx
je 0x7d230f
lea eax, [edi - 0x80000000]
or ecx, eax
je 0x7d230f
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
neg eax
adc edx, 0
mov dword [esp + 0x48], eax
neg edx
mov dword [esp + 0x4c], edx
push edi
push esi
push 0x80000000
push 1
call fcn.0080a460
add esp, 0x10
mov ecx, dword [esp + 0x48]
mov ebx, dword [esp + 0x4c]
cmp eax, ecx
sbb edx, ebx
jge 0x7d5a6f
jmp 0x7d230f
sub esp, 8
push str.too_many_levels_of_trigger_recursion
jmp 0x7d48ef
mov eax, ebp
sub eax, dword [esp + 0x18]
mov dword [esp + 8], 0xb
sar eax, 2
imul edi, eax, 0xcccccccd
mov eax, dword [esp + 4]
movzx ecx, byte [eax + 0x51]
jmp 0x7ce108
mov esi, dword [esp + 0x20]
mov edi, dword [esp + 0x24]
xor eax, eax
shld edi, esi, cl
shl esi, cl
test cl, 0x20
cmovne edi, esi
cmovne esi, eax
mov ebx, esi
mov esi, edi
jmp 0x7d4047
cmp esi, 5
mov eax, str.into
mov edx, str.out_of
cmovne eax, edx
sub esp, 4
push eax
push str.cannot_change__s_wal_mode_from_within_a_transaction
jmp 0x7d48ef
mov edx, 7
jmp 0x7d5e92
sub esp, 8
push str.cannot_open_savepoint___SQL_statements_in_progress
jmp 0x7d601e
lea eax, [esp + 0xa0]
mov ebx, 1
push eax
push 0
push 0
push 0
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x18]
call fcn.007af0f0
mov dword [esp + 0x18], eax
add esp, 0x10
jmp 0x7d322f
lea eax, [esp + 0xa0]
push eax
push 0
push 0
push 0
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x18]
call fcn.007af0f0
mov dword [esp + 0x18], eax
add esp, 0x10
jmp 0x7d322f
cmp byte [esp + 8], 5
jne 0x7ce385
mov eax, ebp
sub eax, dword [esp + 0x18]
mov edx, dword [esp]
sar eax, 2
imul eax, eax, 0xcccccccd
mov dword [edx + 0x24], eax
mov eax, edx
mov edx, dword [esp + 8]
mov dword [eax + 0x28], edx
mov esi, edx
jmp 0x7ce169
mov eax, dword [esp]
mov edx, dword [eax + 0x7c]
test edx, edx
je 0x7d6e52
mov eax, dword [esp + 4]
call fcn.00767880
mov edi, dword [esp + 4]
mov edx, str.database_schema_has_changed
mov eax, edi
call fcn.007697d0
mov esi, dword [esp]
mov edx, dword [ebp + 4]
mov ecx, dword [esp + 0xe8]
mov dword [esi + 0x7c], eax
mov eax, edx
shl eax, 4
add eax, dword [edi + 0x10]
mov eax, dword [eax + 0xc]
cmp dword [eax], ecx
je 0x7d6e88
mov eax, edi
call fcn.00777f70
mov edx, dword [esp]
mov dword [esp + 8], 0x11
movzx eax, byte [edx + 0x98]
and eax, 0xfffffffc
or eax, 1
mov byte [edx + 0x98], al
jmp 0x7ce385
mov eax, ebx
call fcn.0076c820
jmp 0x7d30a8
lea edx, [esp + 0x94]
call fcn.007aba00
mov eax, dword [esp + 0x98]
test eax, eax
jne 0x7d6695
jmp 0x7d669d
mov eax, dword [esp + 4]
call fcn.00777fb0
jmp 0x7cf0a1
lea ecx, [eax + 8]
mov edx, dword [esp + 0x20]
mov eax, dword [esp]
call fcn.00774eb0
mov dword [esp + 8], 0
jmp case.0x7cde44.85
mov edx, 1
mov eax, ebx
call fcn.0076bf40
mov dword [esp + 8], eax
test eax, eax
je 0x7d69ef
jmp 0x7d2bdf
xor edx, edx
mov eax, 0x10
mov dword [esp + 0x20], ecx
call fcn.00767610
mov ecx, dword [esp + 0x20]
test eax, eax
je 0x7d6f51
mov edx, dword [ecx + 0x48]
mov dword [eax + 4], ebx
mov dword [eax], esi
mov dword [eax + 0xc], edx
mov dword [ecx + 0x48], eax
jmp 0x7d60e5
mov edi, dword [esi + 0x28]
jmp 0x7d4c56
mov eax, ebp
sub eax, dword [esp + 0x18]
sar eax, 2
imul edi, eax, 0xcccccccd
cmp byte [esi + 9], 0
je 0x7d6f73
sub dword [esi + 0xc], 1
jne 0x7d6f73
mov eax, esi
call fcn.0076c820
mov eax, dword [esp + 4]
mov dword [esp + 8], 7
movzx ecx, byte [eax + 0x51]
jmp 0x7ce108
movzx eax, byte [edi + 0x3b]
jmp 0x7d3742
mov edx, eax
mov eax, ecx
jmp 0x7d5f71
mov eax, dword [esp + 8]
mov edx, 2
call fcn.00778e50
mov dword [esp + 8], eax
jmp 0x7d6ab0
mov edx, dword [esp + 8]
jmp 0x7d1179
mov eax, ebx
call fcn.00776010
mov dword [esp + 8], eax
test eax, eax
je 0x7d6a22
jmp 0x7d2bdf
lea edx, [esp + 0x94]
call fcn.007aba00
mov eax, dword [esp + 0xe8]
test eax, eax
jne 0x7d348d
jmp 0x7d3495
sub esp, 0xc
push 0xbeb7d8
push 0x156a0
jmp 0x7d6bc6
or edx, dword [eax + 8]
jmp 0x7d2306
mov eax, ebp
sub eax, dword [esp + 0x18]
mov edi, dword [esp]
mov esi, 5
sar eax, 2
imul eax, eax, 0xcccccccd
mov dword [edi + 0x24], eax
mov eax, dword [esp + 4]
mov byte [eax + 0x4f], 0
mov dword [edi + 0x28], 5
jmp 0x7ce169
mov edi, 1
jmp 0x7d4849
cmp dword [esp + 0x30], 0
je 0x7d5b40
jmp 0x7d5b0c
lea eax, [esp + 0xa0]
mov ebx, 1
push eax
push 0
push 0
push 0
mov eax, dword [esp + 0x18]
lea edx, [esp + 0xf8]
call fcn.007af0f0
mov dword [esp + 0x18], eax
add esp, 0x10
jmp 0x7cea35
mov ebp, dword [esp + 0x50]
jmp 0x7d5e92
mov ebp, dword [esp + 0x50]
jmp 0x7d5e7e
mov ecx, dword [esp + 0xa0]
jmp 0x7d5fc0
push edi
push edi
push str.cannot_release_savepoint___SQL_statements_in_progress
jmp 0x7d601e
mov ecx, dword [ebx + 8]
mov eax, dword [esp]
add ecx, 8
lea edx, [eax + 0x7c]
call fcn.00774eb0
jmp 0x7d0c7a
add eax, 0x44
jmp 0x7d647e
imul ecx, dword [ebp + 0xc], 0x28
add ecx, dword [esp + 0x14]
or edx, eax
mov dword [esp + 0x30], ecx
jmp 0x7d2306
mov edx, dword [esp + 8]
mov dword [esp + 0x30], 0
jmp 0x7d5eab
mov eax, dword [ebx + 8]
mov eax, dword [eax + 0x1c]
call fcn.00769410
mov dword [ebx + 0xc], eax
test eax, eax
je 0x7d6c72
mov edx, dword [ebx + 8]
mov edx, dword [edx + 0x1c]
movzx edx, word [edx + 6]
mov byte [eax + 0xb], 0
mov word [eax + 8], dx
jmp 0x7d36a5
mov edi, dword [esp + 4]
mov eax, dword [edi + 0x15c]
mov edx, dword [edi + 0x174]
lea ecx, [eax + 1]
mov dword [edi + 0x15c], ecx
mov dword [edx + eax*4], 0
mov eax, dword [0xc]
ud2