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

Disassembly:
push ebp
lea ebp, [esp - 0x74]
sub esp, 0x2b4
push ebx
xor eax, eax
push esi
mov esi, dword [ebp + 0x7c]
mov ebx, dword [esi + 0x68]
push edi
mov edi, dword [esi]
mov cl, byte [edi + 0x4e]
mov dword [ebp + 0x70], eax
mov byte [ebp + 0x1f], al
mov dword [ebp + 8], eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], eax
mov eax, dword [esi + 0x58]
mov dword [ebp + 0x30], ebx
mov dword [ebp + 0x6c], edi
mov byte [ebp + 0x2c], cl
mov dword [ebp + 0x68], eax
call fcn.0043eecf
cmp dword [edi + 0x158], 0
je 0x483b36
mov edi, dword [edi + 0x160]
mov eax, dword [esi + 0xb4]
xor edx, edx
div edi
sub edi, edx
and dword [ebp - 4], 0
mov dword [ebp - 8], edi
jmp 0x483b3e
or dword [ebp - 8], 0xffffffff
or dword [ebp - 4], 0xffffffff
cmp dword [esi + 0x28], 7
je 0x4865c5
mov eax, dword [ebp + 0x6c]
xor ecx, ecx
mov edi, esi
mov dword [edi + 0x28], ecx
mov dword [edi + 0x38], ecx
mov dword [edi + 0x3c], ecx
mov dword [edi + 0x78], ecx
mov dword [eax + 0x1ac], ecx
mov eax, dword [eax + 0x110]
test eax, eax
jne 0x487610
mov ebx, dword [edi + 0x24]
imul ebx, ebx, 0x14
add ebx, dword [ebp + 0x30]
add dword [ebp - 0x30], 1
mov dl, byte [ebx]
adc dword [ebp - 0x2c], ecx
movzx ecx, dl
cmp ecx, 0xaa
ja case.0x483b90.85
jmp dword [ecx*4 + 0x488374]
mov ecx, dword [ebx + 4]
imul ecx, ecx, 0x28
add ecx, dword [ebp + 0x68]
push 4
pop eax
mov word [ecx + 8], ax
mov eax, ebx
sub eax, dword [ebp + 0x30]
push 0x14
cdq
pop esi
idiv esi
cdq
mov dword [ecx], eax
mov dword [ecx + 4], edx
jmp 0x487fd5
mov eax, dword [ebx + 4]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
mov ebx, dword [eax]
imul ebx, ebx, 0x14
add ebx, dword [ebp + 0x30]
mov ecx, 0x80
mov word [eax + 8], cx
jmp case.0x483b90.85
mov ecx, dword [ebx + 4]
mov eax, dword [ebx + 0xc]
imul ecx, ecx, 0x28
add ecx, dword [ebp + 0x68]
dec eax
cdq
mov dword [ecx], eax
push 4
pop eax
mov dword [ecx + 4], edx
mov word [ecx + 8], ax
cmp dword [ebx + 8], 0
jne 0x487fd5
jmp 0x487fe2
mov eax, dword [ebx + 4]
mov ecx, dword [ebp + 0x30]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
mov edx, dword [eax]
imul edx, edx, 0x14
mov edx, dword [edx + ecx + 8]
imul edx, edx, 0x14
lea ebx, [edx + ecx - 0x14]
jmp 0x483bce
mov ecx, dword [ebx + 4]
imul ecx, ecx, 0x28
add ecx, dword [ebp + 0x68]
push 4
pop eax
mov word [ecx + 8], ax
mov eax, ebx
sub eax, dword [ebp + 0x30]
push 0x14
cdq
pop ebx
idiv ebx
mov esi, dword [ecx]
imul esi, esi, 0x14
add esi, dword [ebp + 0x30]
mov ebx, esi
cdq
mov dword [ecx], eax
mov dword [ecx + 4], edx
jmp case.0x483b90.85
mov eax, dword [ebx + 0xc]
mov ecx, dword [ebp + 0x68]
imul eax, eax, 0x28
test byte [eax + ecx + 8], 1
je case.0x483b90.85
mov eax, ebx
sub eax, dword [ebp + 0x30]
push 0x14
cdq
pop ecx
idiv ecx
cmp dword [ebx + 4], 0
mov dword [ebp + 0x4c], eax
jne 0x488038
lea ecx, [edi + 0xc8]
mov edx, dword [ecx]
test edx, edx
je 0x488038
mov eax, dword [edx + 4]
mov esi, dword [ebp + 0x7c]
dec dword [esi + 0xd0]
mov dword [ecx], eax
mov ecx, dword [esi + 0x2c]
mov eax, dword [ebp + 0x6c]
call fcn.00436e65
mov edi, edx
call fcn.00473372
cmp dword [ebx + 8], 4
jne 0x483cc0
mov ecx, dword [esi + 0x68]
imul eax, eax, 0x14
mov eax, dword [eax + ecx + 8]
dec eax
mov ecx, dword [esi + 0x68]
imul eax, eax, 0x14
mov edx, dword [esi + 0x58]
add eax, ecx
mov dword [ebp + 0x30], ecx
mov dword [ebp + 0x68], edx
mov ebx, eax
mov edi, esi
jmp case.0x483b90.85
mov eax, ebx
mov ecx, edi
call fcn.004374fd
mov ecx, eax
mov eax, dword [ebx + 4]
cdq
mov dword [ecx], eax
mov dword [ecx + 4], edx
jmp case.0x483b90.85
mov eax, ebx
mov ecx, edi
call fcn.004374fd
mov ecx, dword [ebx + 0x10]
mov edx, dword [ecx]
mov dword [eax], edx
mov ecx, dword [ecx + 4]
mov dword [eax + 4], ecx
jmp case.0x483b90.85
mov eax, ebx
mov ecx, edi
call fcn.004374fd
push 8
pop ecx
mov word [eax + 8], cx
mov ecx, dword [ebx + 0x10]
fld qword [ecx]
fstp qword [eax]
jmp case.0x483b90.85
mov eax, ebx
mov ecx, edi
call fcn.004374fd
push dword [ebx + 0x10]
mov esi, eax
call fcn.00431bb3
cmp byte [ebp + 0x2c], 1
pop ecx
mov dword [ebx + 4], eax
je 0x483da5
push 1
push 0xffffffffffffffff
push dword [ebx + 0x10]
xor eax, eax
call fcn.00448ac8
add esp, 0xc
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487513
movzx eax, byte [ebp + 0x2c]
push eax
mov eax, esi
call fcn.00448a48
pop ecx
test eax, eax
jne 0x4865c5
and dword [esi + 0x18], eax
mov eax, 0x800
or word [esi + 8], ax
cmp byte [ebx + 1], 0xf9
jne 0x483d95
mov ecx, dword [ebx + 0x10]
mov eax, dword [ebp + 0x6c]
call fcn.00431905
mov byte [ebx + 1], 0xf9
mov eax, dword [esi + 0x10]
mov dword [ebx + 0x10], eax
mov eax, dword [esi + 0xc]
mov dword [ebx + 4], eax
mov eax, dword [ebx + 4]
mov ecx, dword [ebp + 0x6c]
cmp eax, dword [ecx + 0x6c]
jg 0x487513
mov edi, dword [ebp + 0x7c]
mov byte [ebx], 0x47
mov eax, ebx
mov ecx, edi
call fcn.004374fd
mov ecx, eax
mov eax, 0xa02
mov word [ecx + 8], ax
mov eax, dword [ebx + 0x10]
mov dword [ecx + 0x10], eax
mov eax, dword [ebx + 4]
mov dword [ecx + 0xc], eax
mov al, byte [ebp + 0x2c]
mov byte [ecx + 0xa], al
mov esi, dword [ebx + 0xc]
test esi, esi
jle 0x487fe2
movzx eax, word [ebx + 2]
imul esi, esi, 0x28
cdq
mov dword [ebp - 0x174], edx
mov edx, dword [ebp + 0x68]
mov edx, dword [esi + edx]
cmp edx, eax
jne 0x487fe2
mov eax, dword [ebp + 0x68]
mov eax, dword [esi + eax + 4]
cmp eax, dword [ebp - 0x174]
jne 0x487fe2
mov eax, 0xa10
mov word [ecx + 8], ax
jmp case.0x483b90.85
mov eax, ebx
mov ecx, edi
call fcn.004374fd
mov ecx, dword [ebx + 4]
mov esi, eax
mov eax, dword [ebx + 0xc]
sub eax, dword [ebx + 8]
neg ecx
sbb ecx, ecx
and dword [esi + 0xc], 0
and ecx, 0x100
inc ecx
movzx ecx, cx
mov dword [ebp + 0x5c], eax
mov dword [ebp + 0x4c], ecx
mov word [esi + 8], cx
test eax, eax
jle 0x487fe2
add esi, 0x28
mov eax, esi
call fcn.004363bd
and dword [esi + 0xc], 0
mov ax, word [ebp + 0x4c]
dec dword [ebp + 0x5c]
cmp dword [ebp + 0x5c], 0
mov word [esi + 8], ax
jg 0x483e60
jmp case.0x483b90.85
mov eax, dword [ebx + 4]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
mov edx, 0xff41
mov cx, word [eax + 8]
and cx, dx
or cx, 1
jmp 0x483bd3
mov eax, ebx
mov ecx, edi
call fcn.004374fd
push 0
push dword [ebx + 4]
mov esi, eax
push dword [ebx + 0x10]
xor eax, eax
call fcn.00448ac8
mov al, byte [ebp + 0x2c]
add esp, 0xc
mov byte [esi + 0xa], al
jmp case.0x483b90.85
mov eax, dword [ebx + 4]
mov ecx, dword [edi + 0x64]
imul eax, eax, 0x28
lea edi, [eax + ecx - 0x28]
mov ecx, edi
call fcn.004364b1
test eax, eax
jne 0x487513
mov esi, dword [ebx + 8]
imul esi, esi, 0x28
add esi, dword [ebp + 0x68]
mov eax, 0x2400
test word [esi + 8], ax
je 0x483f01
mov eax, esi
call fcn.004363bd
push 0x14
push edi
push esi
call fcn.0058ca40
mov ax, word [esi + 8]
mov ecx, 0xebff
and ax, cx
mov ecx, 0x840
add esp, 0xc
or ax, cx
mov word [esi + 8], ax
jmp 0x487fe2
mov eax, dword [ebx + 0xc]
mov dword [ebp + 0x64], eax
mov eax, dword [ebx + 4]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
mov dword [ebp + 0x54], eax
mov eax, dword [ebx + 8]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
mov dword [ebp + 0x58], eax
push dword [ebp + 0x58]
mov esi, dword [ebp + 0x54]
call fcn.0043653c
pop ecx
mov ecx, dword [ebp + 0x58]
mov eax, 0x1000
test word [ecx + 8], ax
je 0x483f74
mov esi, ecx
call fcn.004465d8
test eax, eax
jne 0x4865c5
mov edi, dword [ebp + 0x7c]
add dword [ebp + 0x54], 0x28
add dword [ebp + 0x58], 0x28
dec dword [ebp + 0x64]
jne 0x483f48
jmp case.0x483b90.85
mov edi, dword [ebx + 4]
mov esi, dword [ebx + 8]
imul edi, edi, 0x28
mov eax, dword [ebx + 0xc]
imul esi, esi, 0x28
add edi, dword [ebp + 0x68]
add esi, dword [ebp + 0x68]
mov dword [ebp + 0x5c], eax
push 0x1000
push edi
push esi
call fcn.004364e6
mov eax, 0x1000
add esp, 0xc
test word [esi + 8], ax
je 0x483fc5
call fcn.004465d8
test eax, eax
jne 0x4865c5
mov eax, dword [ebp + 0x5c]
dec dword [ebp + 0x5c]
test eax, eax
je 0x487fe2
add esi, 0x28
add edi, 0x28
jmp 0x483f9e
mov eax, dword [ebx + 4]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
push 0x1000
push eax
mov eax, dword [ebx + 8]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
push eax
call fcn.004364e6
add esp, 0xc
jmp case.0x483b90.85
mov eax, dword [ebx + 4]
mov ecx, dword [ebp + 0x68]
imul eax, eax, 0x28
push dword [eax + ecx + 4]
push dword [eax + ecx]
mov eax, dword [ebx + 8]
imul eax, eax, 0x28
add eax, ecx
call fcn.0043641f
pop ecx
pop ecx
jmp case.0x483b90.85
mov ecx, dword [ebx + 4]
mov eax, dword [ebx + 8]
imul ecx, ecx, 0x28
mov esi, dword [ebx + 0xc]
imul eax, eax, 0x28
add ecx, dword [ebp + 0x68]
imul esi, esi, 0x28
add eax, dword [ebp + 0x68]
add esi, dword [ebp + 0x68]
mov dl, byte [eax + 8]
mov dword [ebp + 0x54], ecx
movzx ecx, word [ecx + 8]
or dl, cl
mov dword [ebp + 0x60], eax
mov dword [ebp + 0x40], ecx
test dl, 1
je 0x484063
mov eax, esi
call fcn.004363bd
jmp case.0x483b90.85
test cl, 0x12
jne 0x484079
mov edi, dword [ebp + 0x54]
push 0
push dword [ebp + 0x2c]
call fcn.00448a60
pop ecx
pop ecx
jmp 0x484089
test ecx, 0x4000
je 0x4840a9
mov eax, dword [ebp + 0x54]
call fcn.00442486
test eax, eax
jne 0x4865c5
mov eax, dword [ebp + 0x54]
mov ax, word [eax + 8]
mov ecx, 0xfffd
and ax, cx
movzx eax, ax
mov dword [ebp + 0x40], eax
mov eax, dword [ebp + 0x60]
movzx ecx, word [eax + 8]
mov dword [ebp + 0x5c], ecx
test cl, 0x12
jne 0x4840e4
mov edi, dword [ebp + 0x60]
push 0
push dword [ebp + 0x2c]
call fcn.00448a60
pop ecx
pop ecx
test eax, eax
jne 0x4865c5
mov eax, edi
mov ax, word [eax + 8]
mov ecx, 0xfffd
and ax, cx
movzx eax, ax
mov dword [ebp + 0x5c], eax
mov eax, edi
jmp 0x48410e
test ecx, 0x4000
je 0x48410e
call fcn.00442486
test eax, eax
jne 0x4865c5
mov eax, dword [ebp + 0x60]
mov cx, word [eax + 8]
mov edx, 0xfffd
and cx, dx
movzx ecx, cx
mov dword [ebp + 0x5c], ecx
mov eax, dword [eax + 0xc]
mov ecx, dword [ebp + 0x54]
add eax, dword [ecx + 0xc]
cdq
mov ecx, eax
mov eax, dword [ebp + 0x6c]
mov eax, dword [eax + 0x6c]
mov edi, edx
cdq
cmp edi, edx
mov dword [ebp - 0x168], ecx
jg 0x487513
jl 0x48413b
cmp ecx, eax
ja 0x487513
xor eax, eax
cmp esi, dword [ebp + 0x60]
sete al
add ecx, 3
push eax
push ecx
call fcn.00442339
pop ecx
pop ecx
test eax, eax
jne 0x4865c5
mov ax, word [esi + 8]
mov edi, dword [ebp + 0x60]
mov ecx, 0x3e40
and ax, cx
or ax, 2
mov word [esi + 8], ax
cmp esi, edi
je 0x48418b
push dword [edi + 0xc]
push dword [edi + 0x10]
push dword [esi + 0x10]
call fcn.0058ca40
mov ax, word [ebp + 0x5c]
add esp, 0xc
mov word [edi + 8], ax
mov edi, dword [ebp + 0x54]
push dword [edi + 0xc]
mov eax, dword [esi + 0x10]
mov ecx, dword [ebp + 0x60]
push dword [edi + 0x10]
add eax, dword [ecx + 0xc]
push eax
call fcn.0058ca40
mov ax, word [ebp + 0x40]
mov word [edi + 8], ax
mov eax, dword [ebp - 0x168]
mov ecx, dword [esi + 0x10]
mov byte [eax + ecx], 0
mov ecx, dword [esi + 0x10]
mov byte [ecx + eax + 1], 0
mov ecx, dword [esi + 0x10]
mov byte [ecx + eax + 2], 0
mov dword [esi + 0xc], eax
mov al, byte [ebp + 0x2c]
mov ecx, 0x200
add esp, 0xc
or word [esi + 8], cx
mov byte [esi + 0xa], al
jmp 0x487fe2
mov esi, dword [ebx + 4]
imul esi, esi, 0x28
add esi, dword [ebp + 0x68]
mov eax, esi
call fcn.00442ed6
movzx eax, ax
mov dword [ebp + 0x4c], eax
mov eax, dword [ebx + 8]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
mov dword [ebp + 0x60], eax
call fcn.00442ed6
movzx ecx, ax
mov eax, dword [ebx + 0xc]
and cl, byte [ebp + 0x4c]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
mov dword [ebp + 0x58], eax
mov eax, dword [ebp + 0x60]
mov ax, word [eax + 8]
or ax, word [esi + 8]
movzx eax, ax
test cl, 4
je 0x484315
mov ecx, dword [esi + 4]
mov eax, dword [esi]
mov dword [ebp - 0x48], ecx
mov ecx, dword [ebp + 0x60]
mov edx, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [ebp - 0x1c], ecx
movzx ecx, byte [ebx]
sub ecx, 0x69
mov dword [ebp - 0x20], edx
je 0x4842dc
dec ecx
je 0x4842ce
dec ecx
je 0x4842bc
dec ecx
je 0x484285
mov ecx, dword [ebp - 0x48]
mov esi, eax
or esi, ecx
je 0x4843dc
mov esi, eax
and esi, ecx
cmp esi, 0xffffffff
jne 0x484278
xor eax, eax
inc eax
xor ecx, ecx
push ecx
push eax
push dword [ebp - 0x1c]
push edx
call fcn.00590ea0
jmp 0x4842b4
mov ecx, eax
or ecx, dword [ebp - 0x48]
je 0x4843dc
mov ecx, eax
and ecx, dword [ebp - 0x48]
cmp ecx, 0xffffffff
jne 0x4842a7
test edx, edx
jne 0x4842a7
cmp dword [ebp - 0x1c], 0x80000000
je 0x48431d
push dword [ebp - 0x48]
push eax
push dword [ebp - 0x1c]
push edx
call fcn.00590480
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
jmp 0x4842ee
push dword [ebp - 0x48]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.004327f6
add esp, 0xc
jmp 0x4842ea
push dword [ebp - 0x48]
push eax
lea eax, [ebp - 0x20]
call fcn.004327aa
jmp 0x4842e8
push dword [ebp - 0x48]
lea edi, [ebp - 0x20]
push eax
call fcn.00432726
pop ecx
pop ecx
test eax, eax
jne 0x48431d
mov eax, dword [ebp + 0x58]
mov ecx, dword [ebp - 0x20]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x1c]
mov dword [eax + 4], ecx
mov cx, word [eax + 8]
mov edx, 0x3e40
and cx, dx
or cx, 4
mov word [eax + 8], cx
jmp 0x487fe2
test al, 1
jne 0x4843dc
mov eax, esi
call fcn.004361bb
fstp qword [ebp + 0x48]
mov eax, dword [ebp + 0x60]
call fcn.004361bb
movzx eax, byte [ebx]
sub eax, 0x69
je 0x4843a1
dec eax
je 0x48439c
dec eax
je 0x484397
dec eax
je 0x484386
mov ecx, esi
fstp st(0)
call fcn.00436161
mov ecx, dword [ebp + 0x60]
mov esi, eax
mov edi, edx
call fcn.00436161
mov ecx, esi
or ecx, edi
je 0x4843d9
mov ecx, esi
and ecx, edi
cmp ecx, 0xffffffff
jne 0x484369
xor esi, esi
inc esi
xor edi, edi
push edi
push esi
push edx
push eax
call fcn.00590ea0
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xc8], edx
fild qword [ebp - 0xcc]
jmp 0x4843a4
fldz
fcomp qword [ebp + 0x48]
fnstsw ax
test ah, 0x44
jnp 0x4843d7
fdiv qword [ebp + 0x48]
jmp 0x4843a4
fmul qword [ebp + 0x48]
jmp 0x4843a4
fsub qword [ebp + 0x48]
jmp 0x4843a4
fadd qword [ebp + 0x48]
push ecx
fstp qword [ebp + 0x48]
fld qword [ebp + 0x48]
push ecx
fstp qword [esp]
call fcn.00431b70
pop ecx
pop ecx
test eax, eax
jne 0x4843d9
mov eax, dword [ebp + 0x58]
fld qword [ebp + 0x48]
mov cx, word [eax + 8]
fstp qword [eax]
mov edx, 0x3e40
and cx, dx
or cx, 8
jmp 0x48430c
fstp st(0)
mov edi, dword [ebp + 0x7c]
mov eax, dword [ebp + 0x58]
jmp 0x484059
mov eax, dword [ebx + 4]
test eax, eax
je case.0x483b90.85
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
push 0
push 0
jmp 0x484019
mov ecx, dword [ebx + 8]
mov esi, dword [ebx + 4]
imul ecx, ecx, 0x28
mov eax, dword [ebx + 0xc]
imul esi, esi, 0x28
add ecx, dword [ebp + 0x68]
imul eax, eax, 0x28
add esi, dword [ebp + 0x68]
mov dl, byte [ecx + 8]
add eax, dword [ebp + 0x68]
or dl, byte [esi + 8]
mov dword [ebp + 0x58], eax
test dl, 1
jne 0x484059
call fcn.00436161
mov ecx, esi
mov dword [ebp], eax
mov dword [ebp + 4], edx
call fcn.00436161
mov esi, eax
mov al, byte [ebx]
mov byte [ebp + 0x3b], al
cmp al, 0x65
jne 0x484453
and dword [ebp], esi
and dword [ebp + 4], edx
jmp 0x484536
cmp byte [ebp + 0x3b], 0x66
jne 0x484464
or dword [ebp], esi
or dword [ebp + 4], edx
jmp 0x484536
mov eax, esi
or eax, edx
je 0x484536
test edx, edx
jg 0x4844a5
jl 0x484478
test esi, esi
jae 0x48449a
mov al, 0xcf
sub al, byte [ebp + 0x3b]
cmp edx, 0xffffffff
mov byte [ebp + 0x3b], al
jl 0x484495
jg 0x48448c
cmp esi, 0xffffffc0
jbe 0x484495
neg esi
adc edx, 0
neg edx
jmp 0x48449a
push 0x40
pop esi
xor edx, edx
test edx, edx
jl 0x4844c9
jg 0x4844a5
cmp esi, 0x40
jb 0x4844c9
cmp dword [ebp + 4], 0
jg 0x4844be
jl 0x4844b3
cmp dword [ebp], 0
jae 0x4844be
cmp byte [ebp + 0x3b], 0x67
je 0x4844be
or eax, 0xffffffff
jmp 0x4844c0
xor eax, eax
cdq
mov dword [ebp], eax
mov dword [ebp + 4], edx
jmp 0x484536
push 8
lea eax, [ebp]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.0058ca40
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
add esp, 0xc
cmp byte [ebp + 0x3b], 0x67
mov ecx, esi
jne 0x4844f6
call fcn.00593fb0
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
jmp 0x484524
call fcn.005946d0
cmp dword [ebp + 4], 0
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
jg 0x484524
jl 0x48450f
cmp dword [ebp], 0
jae 0x484524
push 0x40
pop ecx
or edx, 0xffffffff
sub ecx, esi
mov eax, edx
call fcn.00593fb0
or dword [ebp - 0x28], eax
or dword [ebp - 0x24], edx
push 8
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp]
push eax
call fcn.0058ca40
add esp, 0xc
mov eax, dword [ebp + 0x58]
mov ecx, dword [ebp]
mov dword [eax], ecx
mov ecx, dword [ebp + 4]
mov dword [eax + 4], ecx
mov cx, word [eax + 8]
mov edx, 0x3e40
and cx, dx
or cx, 4
jmp 0x483bd3
mov esi, dword [ebx + 4]
imul esi, esi, 0x28
add esi, dword [ebp + 0x68]
call fcn.0043626b
mov eax, dword [ebx + 8]
cdq
add dword [esi], eax
adc dword [esi + 4], edx
jmp case.0x483b90.85
mov esi, dword [ebx + 4]
imul esi, esi, 0x28
add esi, dword [ebp + 0x68]
movzx eax, word [esi + 8]
test al, 4
jne 0x4845b2
push dword [ebp + 0x2c]
mov eax, esi
push 0x43
call fcn.0044946d
movzx eax, word [esi + 8]
pop ecx
pop ecx
test al, 4
jne 0x4845b2
cmp dword [ebx + 8], 0
jne 0x487fd5
mov dword [ebp + 0x70], 0x14
jmp 0x487528
and eax, 0x3e40
or eax, 4
mov word [esi + 8], ax
jmp case.0x483b90.85
mov esi, dword [ebx + 4]
imul esi, esi, 0x28
add esi, dword [ebp + 0x68]
test byte [esi + 8], 0x24
je case.0x483b90.85
call fcn.0043628e
jmp case.0x483b90.85
mov esi, dword [ebx + 4]
imul esi, esi, 0x28
add esi, dword [ebp + 0x68]
mov eax, 0x4000
test word [esi + 8], ax
je 0x484600
mov eax, esi
call fcn.00442486
mov dword [ebp + 0x70], eax
jmp 0x484604
and dword [ebp + 0x70], 0
cmp dword [ebp + 0x70], 0
jne 0x487528
push dword [ebp + 0x2c]
mov cl, byte [ebx + 8]
mov eax, esi
call fcn.0044c905
pop ecx
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487528
jmp case.0x483b90.85
mov esi, dword [ebx + 0xc]
mov ecx, dword [ebx + 4]
imul esi, esi, 0x28
add esi, dword [ebp + 0x68]
imul ecx, ecx, 0x28
add ecx, dword [ebp + 0x68]
movzx edx, word [esi + 8]
movzx eax, word [ecx + 8]
mov dword [ebp + 0x60], edx
or edx, eax
mov dword [ebp + 0x54], ecx
mov dword [ebp + 0x3c], eax
test dl, 1
je 0x4846bd
movzx eax, word [ebx + 2]
test al, al
jns 0x48468b
mov al, byte [ebp + 0x60]
and al, byte [ebp + 0x3c]
test al, 1
je 0x484678
test dword [ebp + 0x60], 0x100
jne 0x484678
xor eax, eax
jmp 0x48484c
test byte [ebp + 0x60], 1
push 0
pop eax
sete al
lea eax, [eax + eax - 1]
jmp 0x484833
test al, 0x20
je 0x4846b6
mov eax, dword [ebx + 8]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
xor ecx, ecx
mov dx, word [eax + 8]
mov esi, 0x3e40
inc ecx
and dx, si
or dx, cx
mov dword [ebp + 8], ecx
mov word [eax + 8], dx
jmp case.0x483b90.85
test al, 0x10
jmp 0x483bfa
mov al, byte [ebx + 2]
and al, 0x47
cmp al, 0x43
jl 0x4847ac
test dl, 2
je 0x484703
mov al, byte [ebp + 0x3c]
and al, 0x2e
cmp al, 2
jne 0x4846ed
mov eax, dword [ebp + 0x54]
push 0
call fcn.0043745b
movzx eax, word [esi + 8]
pop ecx
mov ecx, dword [ebp + 0x54]
mov dword [ebp + 0x60], eax
mov al, byte [ebp + 0x60]
and al, 0x2e
cmp al, 2
jne 0x484703
push 0
mov eax, esi
call fcn.0043745b
pop ecx
mov ecx, dword [ebp + 0x54]
mov al, byte [esi + 8]
and al, byte [ecx + 8]
test al, 4
je 0x484822
mov eax, dword [esi + 4]
cmp eax, dword [ecx + 4]
jl 0x48478c
jg 0x484721
mov eax, dword [ecx]
cmp dword [esi], eax
jbe 0x48478c
xor eax, eax
inc eax
movzx edx, byte [ebx]
movzx edx, byte [edx + 0x64ea54]
mov dword [ebp + 0x50], edx
mov dx, word [ebp + 0x60]
mov word [esi + 8], dx
mov dx, word [ebp + 0x3c]
mov word [ecx + 8], dx
movzx edx, word [ebx + 2]
test dl, 0x20
je 0x48485b
mov ecx, dword [ebx + 8]
imul ecx, ecx, 0x28
add ecx, dword [ebp + 0x68]
mov dword [ebp + 8], eax
test dl, 8
je 0x484770
xor eax, eax
cmp byte [ebx], 0x35
sete al
cmp eax, dword [ebp + 0x50]
je 0x487fe2
mov ax, word [ecx + 8]
mov edx, 0x3e40
and ax, dx
or ax, 4
mov word [ecx + 8], ax
mov eax, dword [ebp + 0x50]
jmp 0x483ce8
mov eax, dword [ecx + 4]
cmp dword [esi + 4], eax
jg 0x484671
jl 0x4847a4
mov eax, dword [ecx]
cmp dword [esi], eax
jae 0x484671
or eax, 0xffffffff
jmp 0x484837
cmp al, 0x42
jne 0x484822
test byte [ebp + 0x3c], 2
jne 0x4847f1
test byte [ebp + 0x3c], 0x2c
je 0x4847f1
mov edi, dword [ebp + 0x54]
push 1
push dword [ebp + 0x2c]
call fcn.00448a60
pop ecx
mov eax, edi
pop ecx
mov cx, word [eax + 8]
xor cx, word [ebp + 0x3c]
mov edx, 0x3e40
and cx, dx
xor word [ebp + 0x3c], cx
cmp eax, esi
jne 0x4847f1
mov eax, dword [ebp + 0x3c]
or eax, 2
movzx eax, ax
mov dword [ebp + 0x60], eax
test byte [ebp + 0x60], 2
jne 0x48481f
test byte [ebp + 0x60], 0x2c
je 0x48481f
push 1
push dword [ebp + 0x2c]
mov edi, esi
call fcn.00448a60
mov ax, word [esi + 8]
xor ax, word [ebp + 0x60]
pop ecx
pop ecx
mov ecx, 0x3e40
and ax, cx
xor word [ebp + 0x60], ax
mov edi, dword [ebp + 0x7c]
push dword [ebx + 0x10]
mov edx, dword [ebp + 0x54]
mov eax, esi
call fcn.00448eb7
pop ecx
mov ecx, dword [ebp + 0x54]
test eax, eax
jge 0x484846
movzx edx, byte [ebx]
movzx edx, byte [edx + 0x64ea44]
jmp 0x48472e
jne 0x484724
movzx edx, byte [ebx]
movzx edx, byte [edx + 0x64ea4c]
jmp 0x48472e
cmp dword [ebp + 0x50], 0
jmp 0x483bfa
cmp dword [ebp + 8], 0
jmp 0x483bfa
test byte [ebx + 2], 1
jne 0x484879
and dword [ebp + 0x64], 0
jmp 0x484882
mov eax, dword [ebx - 4]
add eax, 4
mov dword [ebp + 0x64], eax
mov edx, dword [ebx + 4]
mov eax, dword [ebx + 0xc]
mov ecx, dword [ebx + 0x10]
mov dword [ebp + 0x50], edx
mov edx, dword [ebx + 8]
xor esi, esi
mov dword [ebp + 0x4c], eax
mov dword [ebp + 0x40], ecx
mov dword [ebp + 0x44], edx
mov dword [ebp + 0x34], esi
test eax, eax
jle case.0x483b90.85
add ecx, 0x14
mov dword [ebp + 0x5c], ecx
mov eax, dword [ebp + 0x64]
test eax, eax
je 0x4848b7
mov esi, dword [eax + esi*4]
mov eax, dword [ebp + 0x5c]
mov eax, dword [eax]
mov ecx, dword [ebp + 0x40]
mov ecx, dword [ecx + 0x10]
mov edx, dword [ebp + 0x34]
movzx ecx, byte [ecx + edx]
push eax
mov eax, dword [ebp + 0x44]
lea edx, [esi + eax]
mov eax, dword [ebp + 0x50]
imul edx, edx, 0x28
add edx, dword [ebp + 0x68]
add eax, esi
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
and ecx, 1
mov dword [ebp + 0x28], ecx
call fcn.00448eb7
pop ecx
mov dword [ebp + 8], eax
test eax, eax
jne 0x484909
mov esi, dword [ebp + 0x34]
add dword [ebp + 0x5c], 4
inc esi
cmp esi, dword [ebp + 0x4c]
mov dword [ebp + 0x34], esi
jl 0x4848ad
jmp case.0x483b90.85
mov eax, dword [ebp + 0x40]
mov eax, dword [eax + 0x10]
mov ecx, dword [ebp + 0x34]
test byte [ecx + eax], 2
je 0x48493d
mov eax, dword [ebp + 0x50]
lea ecx, [esi + eax]
mov eax, dword [ebp + 0x68]
imul ecx, ecx, 0x28
test byte [ecx + eax + 8], 1
jne 0x48493a
mov ecx, dword [ebp + 0x44]
add esi, ecx
imul esi, esi, 0x28
test byte [esi + eax + 8], 1
je 0x48493d
neg dword [ebp + 8]
cmp dword [ebp + 0x28], 0
je 0x487fe2
neg dword [ebp + 8]
jmp case.0x483b90.85
cmp dword [ebp + 8], 0
mov ecx, dword [ebp + 0x30]
jge 0x48495d
mov eax, dword [ebx + 4]
jmp 0x484967
jne 0x484964
mov eax, dword [ebx + 8]
jmp 0x484967
mov eax, dword [ebx + 0xc]
imul eax, eax, 0x14
lea ebx, [eax + ecx - 0x14]
jmp case.0x483b90.85
mov eax, dword [ebx + 4]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
push 2
call fcn.004361dc
mov esi, eax
mov eax, dword [ebx + 8]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
push 2
call fcn.004361dc
imul esi, esi, 3
cmp byte [ebx], 0x2c
pop ecx
pop ecx
jne 0x4849a9
movzx eax, byte [esi + eax + 0x64e9f4]
jmp 0x4849b1
movzx eax, byte [esi + eax + 0x64ea90]
mov ecx, dword [ebx + 0xc]
imul ecx, ecx, 0x28
add ecx, dword [ebp + 0x68]
cmp eax, 2
jne 0x4849d4
mov ax, word [ecx + 8]
mov edx, 0x3e40
and ax, dx
or ax, 1
jmp 0x483e1f
cdq
mov dword [ecx], eax
mov ax, word [ecx + 8]
mov dword [ecx + 4], edx
mov edx, 0x3e40
and ax, dx
or ax, 4
jmp 0x483e1f
mov eax, dword [ebx + 4]
push dword [ebx + 0xc]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
call fcn.004361dc
xor eax, dword [ebx + 0x10]
cdq
push edx
push eax
mov eax, dword [ebx + 8]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
call fcn.0043641f
jmp 0x483ff9
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 8]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
imul esi, esi, 0x28
add esi, dword [ebp + 0x68]
test byte [eax + 8], 1
jne 0x484057
push 0
call fcn.004361dc
neg eax
sbb eax, eax
inc eax
cdq
push edx
push eax
mov eax, esi
jmp 0x484a0f
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 8]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
imul esi, esi, 0x28
add esi, dword [ebp + 0x68]
mov dword [ebp + 0x54], eax
mov eax, esi
call fcn.004363bd
mov ecx, dword [ebp + 0x54]
test byte [ecx + 8], 1
jne 0x487fe2
push 4
pop eax
mov word [esi + 8], ax
call fcn.00436161
not eax
not edx
mov dword [esi], eax
mov dword [esi + 4], edx
jmp case.0x483b90.85
mov esi, dword [edi + 0xc8]
test esi, esi
je 0x484ad1
mov eax, ebx
sub eax, dword [edi + 0x68]
push 0x14
cdq
pop ecx
idiv ecx
mov edx, dword [esi + 0x18]
xor ecx, ecx
inc ecx
mov dword [ebp + 0x4c], ecx
mov edi, eax
and eax, 7
mov dword [ebp + 0x28], eax
mov ecx, eax
mov eax, dword [ebp + 0x4c]
shl eax, cl
shr edi, 3
test byte [edi + edx], al
jne 0x487fd5
mov eax, edx
lea esi, [eax + edi]
mov al, 1
shl al, cl
or byte [esi], al
jmp 0x484ae0
mov eax, dword [edi + 0x68]
mov eax, dword [eax + 4]
cmp eax, dword [ebx + 4]
je 0x487fd5
mov edi, dword [ebp + 0x7c]
mov eax, dword [edi + 0x68]
mov eax, dword [eax + 4]
mov dword [ebx + 4], eax
jmp case.0x483b90.85
mov eax, dword [ebx + 4]
push dword [ebx + 0xc]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
call fcn.004361dc
pop ecx
test eax, eax
jmp 0x483bfa
xor eax, eax
cmp dword [ebx + 0xc], eax
sete al
push eax
mov eax, dword [ebx + 4]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
call fcn.004361dc
pop ecx
test eax, eax
je 0x487fd5
jmp 0x487fe2
mov eax, dword [ebx + 4]
mov ecx, dword [ebp + 0x68]
imul eax, eax, 0x28
test byte [eax + ecx + 8], 1
jmp 0x483bfa
mov eax, dword [ebx + 4]
mov ecx, dword [ebp + 0x68]
imul eax, eax, 0x28
test byte [eax + ecx + 8], 1
jmp 0x484b24
mov eax, dword [ebx + 4]
mov ecx, dword [edi + 0x60]
mov eax, dword [ecx + eax*4]
cmp byte [eax + 2], 0
je case.0x483b90.85
mov eax, dword [ebx + 0xc]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
call fcn.004363bd
jmp 0x487fd5
mov ecx, dword [edi + 0x60]
mov eax, dword [ebx + 4]
mov eax, dword [ecx + eax*4]
mov dword [ebp + 0x60], eax
mov eax, dword [ebx + 8]
lea ecx, [ebp + 0x34]
lea edx, [ebp + 0x60]
mov dword [ebp + 0x34], eax
call fcn.00464682
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487528
mov eax, dword [ebx + 0xc]
mov ecx, dword [ebp + 0x60]
imul eax, eax, 0x28
mov edx, dword [ecx + 0x48]
add eax, dword [ebp + 0x68]
mov dword [ebp + 0x3c], edx
mov edx, dword [ecx + 0x1c]
mov dword [ebp + 0x58], eax
cmp edx, dword [edi + 0x20]
je 0x484c88
cmp byte [ecx + 2], 0
je 0x484bef
cmp byte [ecx], 3
jne 0x484059
mov eax, dword [ecx + 0x20]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
lea edx, [ecx + 0x54]
mov esi, dword [eax + 0xc]
mov dword [edx], esi
mov dword [ecx + 0x50], esi
mov eax, dword [eax + 0x10]
mov dword [ebp + 0x64], edx
mov dword [ecx + 0x4c], eax
jmp 0x484c23
mov edi, dword [ebp + 0x60]
mov esi, dword [edi + 0x28]
call fcn.00435cb1
mov dword [edi + 0x50], eax
lea eax, [edi + 0x54]
push eax
mov ecx, esi
mov dword [ebp + 0x64], eax
call fcn.00435ceb
mov ecx, dword [ebp + 0x6c]
mov dword [edi + 0x4c], eax
mov eax, dword [edi + 0x50]
add esp, 4
cmp eax, dword [ecx + 0x6c]
ja 0x487513
mov edi, dword [ebp + 0x7c]
mov esi, dword [ebp + 0x60]
mov eax, dword [edi + 0x20]
mov dword [esi + 0x1c], eax
mov ecx, dword [esi + 0x4c]
mov al, byte [ecx]
cmp al, 0x80
jae 0x484c42
mov ecx, dword [ebp + 0x3c]
movzx eax, al
mov dword [ecx], eax
xor eax, eax
inc eax
jmp 0x484c53
mov edi, dword [ebp + 0x3c]
call fcn.00432659
mov esi, dword [ebp + 0x60]
mov edi, dword [ebp + 0x7c]
movzx eax, al
mov ecx, dword [ebp + 0x3c]
movzx eax, al
mov dword [esi + 0x30], eax
xor eax, eax
mov word [esi + 0x3a], ax
mov eax, dword [ebp + 0x64]
mov edx, dword [eax]
cmp edx, dword [ecx]
jae 0x484cea
and dword [esi + 0x4c], 0
and dword [eax], 0
mov eax, dword [ecx]
cmp eax, 0x18003
ja 0x484ddf
cmp eax, dword [esi + 0x50]
ja 0x484ddf
mov eax, dword [ebp + 0x60]
movzx edx, word [eax + 0x3a]
mov ecx, dword [ebp + 0x34]
cmp edx, ecx
ja 0x484e49
mov ecx, dword [eax + 0x30]
mov edx, dword [ebp + 0x3c]
cmp ecx, dword [edx]
jae 0x484e1f
cmp dword [eax + 0x4c], 0
jne 0x484cef
push 0x28
lea eax, [ebp - 0x1f0]
push 0
push eax
call fcn.0058d7c0
mov ecx, dword [ebp + 0x3c]
mov esi, dword [ecx]
mov ecx, dword [ebp + 0x60]
mov ecx, dword [ecx + 0x28]
add esp, 0xc
lea eax, [ebp - 0x1f0]
call fcn.0045ae89
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487528
mov eax, dword [ebp - 0x1e0]
jmp 0x484cf2
mov eax, dword [esi + 0x4c]
jmp 0x484cf5
mov eax, dword [eax + 0x4c]
mov esi, dword [ebp + 0x60]
mov ecx, dword [ebp + 0x3c]
mov edx, dword [ebp + 0x3c]
mov edx, dword [edx]
and dword [ebp - 0xc], 0
mov dword [ebp + 0x44], eax
movzx eax, word [esi + 0x3a]
mov ecx, dword [ecx + eax*4]
mov dword [ebp - 0x10], ecx
mov ecx, dword [esi + 0x30]
add ecx, dword [ebp + 0x44]
add edx, dword [ebp + 0x44]
mov dword [ebp + 0x64], eax
lea eax, [esi + eax*4 + 0x58]
mov dword [ebp + 0x50], ecx
mov dword [ebp + 0x5c], edx
mov dword [ebp + 0x40], eax
movzx eax, byte [ecx]
mov edx, dword [ebp + 0x40]
mov dword [ebp + 0x54], eax
mov dword [edx], eax
cmp eax, 0x80
jae 0x484d4e
inc ecx
mov dword [ebp + 0x50], ecx
call fcn.004368db
movzx eax, al
cdq
add dword [ebp - 0x10], eax
adc dword [ebp - 0xc], edx
jmp 0x484d79
mov ecx, dword [ebp + 0x50]
lea edi, [ebp + 0x54]
call fcn.00432659
mov ecx, dword [ebp + 0x40]
movzx eax, al
add dword [ebp + 0x50], eax
mov eax, dword [ebp + 0x54]
mov dword [ecx], eax
call fcn.004368c6
add dword [ebp - 0x10], eax
mov esi, dword [ebp + 0x60]
mov edi, dword [ebp + 0x7c]
adc dword [ebp - 0xc], 0
mov eax, dword [ebp + 0x64]
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp + 0x3c]
add dword [ebp + 0x40], 4
inc eax
mov dword [edx + eax*4], ecx
mov ecx, dword [ebp + 0x50]
mov dword [ebp + 0x64], eax
cmp eax, dword [ebp + 0x34]
ja 0x484d9a
cmp ecx, dword [ebp + 0x5c]
jb 0x484d27
cmp ecx, dword [ebp + 0x5c]
jb 0x484db0
ja 0x484dc1
mov eax, dword [esi + 0x50]
xor edx, edx
cmp dword [ebp - 0x10], eax
jne 0x484dc1
cmp dword [ebp - 0xc], edx
jne 0x484dc1
mov eax, dword [esi + 0x50]
xor edx, edx
cmp dword [ebp - 0xc], edx
jb 0x484dff
ja 0x484dc1
cmp dword [ebp - 0x10], eax
jbe 0x484dff
mov ecx, dword [ebp + 0x3c]
xor eax, eax
cmp dword [ecx], eax
jne 0x484dcf
mov ecx, dword [ebp + 0x5c]
jmp 0x484e02
cmp dword [esi + 0x4c], eax
jne 0x484ddf
lea eax, [ebp - 0x1f0]
call fcn.004360cf
mov ecx, dword [ebp + 0x30]
mov eax, dword [ecx + 0xc]
test eax, eax
jg 0x484967
push 0x1587b
call fcn.004538ff
mov dword [ebp + 0x70], eax
jmp 0x487527
mov eax, dword [ebp + 0x64]
sub ecx, dword [ebp + 0x44]
mov word [esi + 0x3a], ax
mov dword [esi + 0x30], ecx
cmp dword [esi + 0x4c], 0
jne 0x484e26
lea eax, [ebp - 0x1f0]
call fcn.004360cf
jmp 0x484e26
and dword [ebp + 0x54], 0
mov esi, dword [ebp + 0x60]
movzx eax, word [esi + 0x3a]
cmp eax, dword [ebp + 0x34]
ja 0x484e53
cmp byte [ebx + 1], 0xf5
jne 0x4843dc
push 0x800
push dword [ebx + 0x10]
push dword [ebp + 0x58]
jmp 0x483ff4
mov eax, dword [eax + ecx*4 + 0x58]
mov esi, dword [ebp + 0x60]
mov dword [ebp + 0x54], eax
mov edx, dword [ebp + 0x58]
mov eax, 0x2400
test word [edx + 8], ax
je 0x484e6b
mov eax, edx
call fcn.004363bd
mov edx, dword [ebp + 0x58]
mov eax, dword [ebp + 0x3c]
mov ecx, dword [ebp + 0x34]
lea ecx, [eax + ecx*4]
mov eax, dword [esi + 0x54]
cmp eax, dword [ecx + 4]
jb 0x484f0d
mov esi, dword [esi + 0x4c]
add esi, dword [ecx]
mov eax, dword [ebp + 0x54]
mov dword [ebp + 0x44], esi
cmp eax, 0xc
jae 0x484e97
mov ecx, esi
jmp 0x484f3c
mov cl, byte [ebp + 0x2c]
mov esi, dword [ebp + 0x58]
add eax, 0xfffffff4
shr eax, 1
mov dword [ebp + 0x64], eax
mov dword [edx + 0xc], eax
add eax, 2
cmp dword [edx + 0x18], eax
mov byte [edx + 0xa], cl
jge 0x484ed1
xor ecx, ecx
inc ecx
push 0
push eax
mov word [esi + 8], cx
call fcn.00442339
pop ecx
pop ecx
test eax, eax
jne 0x4865c5
mov edi, dword [ebp + 0x7c]
jmp 0x484ed7
mov eax, dword [edx + 0x14]
mov dword [edx + 0x10], eax
push dword [ebp + 0x64]
push dword [ebp + 0x44]
push dword [esi + 0x10]
call fcn.0058ca40
mov ecx, dword [esi + 0x10]
mov eax, dword [ebp + 0x64]
mov byte [eax + ecx], 0
mov ecx, dword [esi + 0x10]
mov byte [eax + ecx + 1], 0
mov eax, dword [ebp + 0x54]
add esp, 0xc
and eax, 1
mov ax, word [eax*2 + 0x64ea9c]
jmp 0x4845ba
mov al, byte [ebp + 0x2c]
mov byte [edx + 0xa], al
movzx eax, word [ebx + 2]
test al, 0xc0
je 0x484f2b
cmp dword [ebp + 0x54], 0xc
jb 0x484f27
test byte [ebp + 0x54], 1
je 0x484f37
test al, al
js 0x484f37
mov eax, dword [ebp + 0x54]
call fcn.004368c6
test eax, eax
jne 0x484f4c
mov ecx, 0x64e0b0
push dword [ebp + 0x58]
mov edx, dword [ebp + 0x54]
call fcn.00436a02
jmp 0x48401f
mov edi, dword [ebp + 0x58]
push eax
mov eax, dword [ebp + 0x60]
push dword [eax + 0x28]
mov eax, dword [ecx]
call fcn.0045ae05
pop ecx
pop ecx
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487528
mov edx, dword [ebp + 0x54]
mov esi, edi
mov ecx, dword [esi + 0x10]
push esi
call fcn.00436a02
mov eax, 0xefff
and word [esi + 8], ax
pop ecx
jmp 0x487fe2
mov esi, dword [ebx + 4]
mov edi, dword [ebx + 0x10]
imul esi, esi, 0x28
add esi, dword [ebp + 0x68]
movzx eax, byte [edi]
push dword [ebp + 0x2c]
push eax
mov eax, esi
call fcn.0044946d
cmp byte [edi], 0x45
pop ecx
pop ecx
jne 0x484ffc
movzx eax, word [esi + 8]
test al, 4
je 0x484ffc
mov edx, dword [esi + 4]
cmp edx, 0x7fff
mov ecx, dword [esi]
mov dword [ebp - 0xc4], ecx
mov dword [ebp - 0xc0], edx
jg 0x484fe8
jl 0x484fd0
cmp ecx, 0xffffffff
ja 0x484fe8
cmp edx, 0xffff8000
jl 0x484fe8
jg 0x484fde
test ecx, ecx
jb 0x484fe8
and eax, 0xfffb
or eax, 0x20
jmp 0x484ff8
fild qword [ebp - 0xc4]
and eax, 0xfffb
or eax, 8
fstp qword [esi]
mov word [esi + 8], ax
inc edi
cmp byte [edi], 0
je 0x487fe2
add esi, 0x28
jmp 0x484f93
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 8]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
imul esi, esi, 0x28
mov ecx, dword [ebx + 0x10]
lea esi, [esi + eax - 0x28]
mov dword [ebp + 0x40], esi
movzx esi, byte [edi + 0x93]
mov dword [ebp + 0x4c], esi
mov esi, dword [ebx + 0xc]
imul esi, esi, 0x28
add esi, dword [ebp + 0x68]
xor edx, edx
mov dword [ebp + 0x20], edx
mov dword [ebp + 0x24], edx
mov dword [ebp + 0x58], edx
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], edx
mov dword [ebp + 0x64], ecx
mov dword [ebp + 0x5c], eax
cmp ecx, edx
je 0x485092
lea edi, [eax + 8]
mov eax, dword [ebp + 0x64]
movzx eax, byte [eax]
push dword [ebp + 0x2c]
push eax
lea eax, [edi - 8]
call fcn.0044946d
pop ecx
pop ecx
mov ecx, dword [ebp + 0x64]
cmp byte [ecx], 0x45
jne 0x485083
movzx eax, word [edi]
test al, 4
je 0x485083
and eax, 0xfffb
or eax, 0x20
mov word [edi], ax
inc ecx
add edi, 0x28
cmp byte [ecx], 0
mov dword [ebp + 0x64], ecx
jne 0x485055
mov eax, dword [ebp + 0x5c]
mov edi, dword [ebp + 0x40]
add edi, 0x1c
movzx ecx, word [edi - 0x14]
test cl, 1
je 0x4850bd
mov edx, 0x4000
and dx, cx
movzx ecx, dx
neg ecx
sbb ecx, ecx
and ecx, 0xa
inc dword [ebp + 0x58]
mov dword [edi], ecx
jmp 0x48525b
test cl, 0x24
je 0x4851d6
mov edx, dword [edi - 0x1c]
mov dword [ebp - 0x80], edx
mov edx, dword [edi - 0x18]
mov dword [ebp - 0x7c], edx
mov edx, dword [ebp - 0x80]
mov dword [ebp - 0x44], edx
mov edx, dword [ebp - 0x7c]
mov dword [ebp - 0x40], edx
test edx, edx
jg 0x4850f9
jl 0x4850ea
cmp dword [ebp - 0x44], 0
jae 0x4850f9
mov edx, dword [ebp - 0x44]
not edx
mov dword [ebp - 0x18], edx
mov edx, dword [ebp - 0x40]
not edx
jmp 0x485102
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x18], edx
mov edx, dword [ebp - 0x40]
inc dword [ebp + 0x58]
mov dword [ebp - 0x14], edx
test edx, edx
ja 0x485185
jb 0x485114
cmp dword [ebp - 0x18], 0x7f
ja 0x485139
mov ecx, dword [ebp - 0x44]
and ecx, 1
cmp ecx, dword [ebp - 0x44]
jne 0x485134
xor ecx, ecx
cmp ecx, dword [ebp - 0x40]
jne 0x485134
cmp dword [ebp + 0x4c], 4
jl 0x485134
mov ecx, dword [ebp - 0x18]
add ecx, 8
jmp 0x48517e
xor ecx, ecx
inc ecx
jmp 0x485177
cmp dword [ebp - 0x14], 0
ja 0x485185
jb 0x48514a
cmp dword [ebp - 0x18], 0x7fff
ja 0x48514e
push 2
jmp 0x485176
cmp dword [ebp - 0x14], 0
ja 0x485185
jb 0x48515f
cmp dword [ebp - 0x18], 0x7fffff
ja 0x485163
push 3
jmp 0x485176
cmp dword [ebp - 0x14], 0
ja 0x485185
jb 0x485174
cmp dword [ebp - 0x18], 0x7fffffff
ja 0x485185
push 4
pop ecx
add dword [ebp + 0x20], ecx
adc dword [ebp + 0x24], 0
mov dword [edi], ecx
jmp 0x48525b
cmp dword [ebp - 0x14], 0x7fff
ja 0x4851a9
jb 0x485196
cmp dword [ebp - 0x18], 0xffffffff
ja 0x4851a9
add dword [ebp + 0x20], 6
mov dword [edi], 5
adc dword [ebp + 0x24], 0
jmp 0x48525b
add dword [ebp + 0x20], 8
adc dword [ebp + 0x24], 0
test cl, 0x20
je 0x4851cb
fild qword [ebp - 0x80]
and ecx, 0xffdf
or ecx, 8
mov word [edi - 0x14], cx
fstp qword [edi - 0x1c]
jmp 0x4851e6
mov dword [edi], 6
jmp 0x48525b
test cl, 8
je 0x4851ee
inc dword [ebp + 0x58]
add dword [ebp + 0x20], 8
adc dword [ebp + 0x24], 0
mov dword [edi], 7
jmp 0x48525b
mov eax, dword [edi - 0x10]
mov edx, ecx
shr edx, 1
and edx, 1
lea edx, [edx + eax*2 + 0xc]
mov dword [ebp + 0x64], eax
mov dword [ebp + 0x50], edx
test ecx, 0x4000
je 0x48523a
mov eax, dword [edi - 0x1c]
lea ecx, [edx + eax*2]
mov dword [ebp + 0x50], ecx
mov ecx, dword [ebp + 0x20]
or ecx, dword [ebp + 0x24]
je 0x485233
lea eax, [edi - 0x1c]
call fcn.00442486
test eax, eax
jne 0x4865c5
mov eax, dword [edi - 0x1c]
add dword [ebp + 0x64], eax
jmp 0x48523a
cdq
add dword [ebp - 0x38], eax
adc dword [ebp - 0x34], edx
mov eax, dword [ebp + 0x64]
add dword [ebp + 0x20], eax
push 0
push dword [ebp + 0x50]
adc dword [ebp + 0x24], 0
call fcn.004326bb
add dword [ebp + 0x58], eax
mov eax, dword [ebp + 0x50]
pop ecx
mov dword [edi], eax
mov eax, dword [ebp + 0x5c]
pop ecx
lea ecx, [edi - 0x1c]
cmp ecx, eax
je 0x48526a
sub edi, 0x28
jmp 0x485098
cmp dword [ebp + 0x58], 0x7e
jle 0x485292
mov eax, dword [ebp + 0x58]
cdq
push edx
push eax
call fcn.004326bb
mov edi, eax
add dword [ebp + 0x58], edi
mov eax, dword [ebp + 0x58]
cdq
push edx
push eax
call fcn.004326bb
add esp, 0x10
cmp edi, eax
jge 0x485295
inc dword [ebp + 0x58]
mov eax, dword [ebp + 0x58]
cdq
mov edi, eax
add edi, dword [ebp + 0x20]
mov dword [ebp - 0xa0], eax
mov eax, edx
adc eax, dword [ebp + 0x24]
mov ecx, edi
add ecx, dword [ebp - 0x38]
mov dword [ebp - 0x9c], edx
adc eax, dword [ebp - 0x34]
mov dword [ebp - 0xe0], eax
mov eax, dword [esi + 0x18]
cdq
cmp dword [ebp - 0xe0], edx
mov dword [ebp - 0x180], eax
jg 0x4852dd
jl 0x4852d5
cmp ecx, eax
ja 0x4852dd
mov eax, dword [esi + 0x14]
mov dword [esi + 0x10], eax
jmp 0x485311
mov eax, dword [ebp + 0x6c]
mov eax, dword [eax + 0x6c]
cdq
cmp dword [ebp - 0xe0], edx
mov dword [ebp - 0x150], eax
jg 0x487513
jl 0x485300
cmp ecx, eax
ja 0x487513
mov eax, edi
mov ecx, esi
call fcn.0044241b
test eax, eax
jne 0x4865c5
mov eax, dword [ebp + 0x58]
push 0x10
pop ecx
mov word [esi + 8], cx
mov ecx, dword [ebp - 0x38]
mov edx, ecx
or edx, dword [ebp - 0x34]
mov dword [esi + 0xc], edi
je 0x485333
mov dword [esi], ecx
mov ecx, 0x4010
mov word [esi + 8], cx
mov esi, dword [esi + 0x10]
lea edi, [esi + eax]
cmp eax, 0x80
jae 0x485347
mov byte [esi], al
xor eax, eax
inc eax
jmp 0x48535a
push dword [ebp - 0x9c]
push dword [ebp - 0xa0]
call fcn.00432476
pop ecx
pop ecx
movzx eax, al
add esi, eax
mov eax, dword [ebp + 0x5c]
mov dword [ebp + 0x34], eax
mov eax, dword [ebp + 0x34]
mov eax, dword [eax + 0x1c]
mov dword [ebp + 0x50], eax
cmp eax, 0x80
jae 0x48537c
mov byte [esi], al
xor eax, eax
inc eax
jmp 0x485388
push 0
push dword [ebp + 0x50]
call fcn.00432476
pop ecx
pop ecx
mov ecx, dword [ebp + 0x50]
movzx eax, al
add esi, eax
mov eax, dword [ebp + 0x34]
call fcn.004368e5
add dword [ebp + 0x34], 0x28
add edi, eax
mov eax, dword [ebp + 0x34]
cmp eax, dword [ebp + 0x40]
jbe 0x485365
jmp 0x487fe2
cmp dword [ebx + 0xc], 0
mov eax, dword [ebx + 4]
mov ecx, dword [edi + 0x60]
mov eax, dword [ecx + eax*4]
mov esi, dword [eax + 0x28]
je 0x4853c9
call fcn.00435d28
mov dword [ebp - 0x74], eax
mov esi, edx
jmp 0x4853ed
and dword [ebp - 0x74], 0
and dword [ebp - 0x70], 0
lea eax, [ebp - 0x74]
push eax
push dword [ebp + 0x6c]
call fcn.0045a37b
pop ecx
pop ecx
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487528
mov esi, dword [ebp - 0x70]
mov eax, ebx
mov ecx, edi
call fcn.004374fd
mov ecx, dword [ebp - 0x74]
mov dword [eax], ecx
mov dword [eax + 4], esi
jmp 0x487bce
mov eax, dword [ebx + 4]
mov ecx, dword [ebx + 0x10]
mov dword [ebp + 0x60], eax
mov dword [ebp + 0x5c], ecx
test eax, eax
jne 0x4854d6
mov eax, dword [ebp + 0x6c]
cmp dword [eax + 0xb8], 0
jg 0x487fef
push ecx
call fcn.00431bb3
mov esi, dword [ebp + 0x6c]
mov dword [ebp + 0x64], eax
mov eax, dword [esi + 0x1e0]
add eax, dword [esi + 0x1dc]
push eax
push 0
call fcn.0043a2c1
add esp, 0xc
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487528
mov eax, dword [ebp + 0x64]
add eax, 0x21
push 0
push eax
mov ecx, esi
call fcn.0043c3d9
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x485701
mov ecx, dword [ebp + 0x64]
inc ecx
push ecx
push dword [ebp + 0x5c]
lea eax, [esi + 0x20]
push eax
mov dword [esi], eax
call fcn.0058ca40
mov eax, dword [ebp + 0x6c]
add esp, 0xc
cmp byte [eax + 0x4f], 0
je 0x48549a
mov byte [eax + 0x4f], 0
mov byte [eax + 0x57], 1
jmp 0x4854a0
inc dword [eax + 0x1dc]
lea ecx, [eax + 0x1d0]
mov edx, dword [ecx]
mov dword [esi + 0x18], edx
mov dword [ecx], esi
mov ecx, dword [eax + 0x1e8]
mov dword [esi + 8], ecx
mov ecx, dword [eax + 0x1ec]
mov dword [esi + 0xc], ecx
mov ecx, dword [eax + 0x1f0]
mov dword [esi + 0x10], ecx
mov eax, dword [eax + 0x1f4]
mov dword [esi + 0x14], eax
jmp 0x485701
mov esi, dword [ebp + 0x6c]
mov eax, dword [esi + 0x1d0]
and dword [ebp + 0x50], 0
mov dword [ebp + 0x3c], eax
test eax, eax
je 0x488008
mov ecx, dword [ebp + 0x3c]
mov eax, dword [ebp + 0x5c]
mov ecx, dword [ecx]
call fcn.00431c85
test eax, eax
je 0x48550f
mov eax, dword [ebp + 0x3c]
mov eax, dword [eax + 0x18]
inc dword [ebp + 0x50]
mov dword [ebp + 0x3c], eax
test eax, eax
jne 0x4854ee
mov eax, dword [ebp + 0x3c]
xor ecx, ecx
cmp eax, ecx
je 0x488008
cmp dword [esi + 0xb8], ecx
jle 0x48552e
cmp dword [ebp + 0x60], 1
je 0x488025
cmp dword [eax + 0x18], ecx
jne 0x485583
cmp byte [esi + 0x57], 0
je 0x485583
xor eax, eax
inc eax
mov dword [ebp + 0x5c], eax
cmp dword [ebp + 0x60], eax
jne 0x485586
push eax
mov eax, edi
call fcn.0044cf3f
pop ecx
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x4875c4
mov edi, dword [ebp + 0x7c]
mov byte [esi + 0x4f], 1
call fcn.00476e0a
cmp eax, 5
je 0x488199
mov edi, dword [edi + 0x28]
mov dword [ebp + 0x70], edi
test edi, edi
mov edi, dword [ebp + 0x7c]
je 0x4855ed
mov byte [esi + 0x4f], 0
jmp 0x48564f
mov dword [ebp + 0x5c], ecx
mov eax, dword [esi + 0x1dc]
sub eax, dword [ebp + 0x50]
dec eax
cmp dword [ebp + 0x60], 2
mov dword [ebp + 0x50], eax
jne 0x4855f3
mov eax, dword [esi + 0x18]
and eax, 1
cmp dword [esi + 0x14], ecx
mov dword [ebp + 0x40], eax
mov dword [ebp + 0x44], ecx
jle 0x4855f6
xor edx, edx
cmp eax, ecx
sete dl
mov dword [ebp + 0x64], ecx
mov dword [ebp + 0x4c], edx
push dword [ebp + 0x4c]
mov eax, dword [esi + 0x10]
mov ecx, dword [ebp + 0x64]
push 0x204
push dword [ecx + eax + 4]
call fcn.0045e1e8
add esp, 0xc
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487528
inc dword [ebp + 0x44]
mov eax, dword [ebp + 0x44]
add dword [ebp + 0x64], 0x10
cmp eax, dword [esi + 0x14]
jl 0x4855b7
jmp 0x4855f6
mov byte [esi + 0x57], 0
jmp 0x48564f
mov dword [ebp + 0x40], ecx
xor eax, eax
cmp dword [esi + 0x14], eax
mov dword [ebp + 0x44], eax
jle 0x485635
mov dword [ebp + 0x64], eax
push dword [ebp + 0x50]
mov eax, dword [esi + 0x10]
push dword [ebp + 0x60]
mov ecx, dword [ebp + 0x64]
push dword [ecx + eax + 4]
call fcn.0046be6a
add esp, 0xc
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487528
inc dword [ebp + 0x44]
mov eax, dword [ebp + 0x44]
add dword [ebp + 0x64], 0x10
cmp eax, dword [esi + 0x14]
jl 0x485603
cmp dword [ebp + 0x40], 0
je 0x48564f
xor edx, edx
mov eax, esi
call fcn.00436e74
call fcn.0044e8b2
mov eax, esi
or dword [eax + 0x18], 1
cmp dword [ebp + 0x70], 0
jne 0x487528
jmp 0x485677
mov ecx, dword [esi + 0x1d0]
mov eax, dword [ecx + 0x18]
mov dword [esi + 0x1d0], eax
mov eax, esi
call fcn.00431905
dec dword [esi + 0x1dc]
mov eax, dword [ebp + 0x3c]
cmp dword [esi + 0x1d0], eax
jne 0x48565b
cmp dword [ebp + 0x60], 1
jne 0x4856af
mov ecx, eax
mov eax, dword [ecx + 0x18]
mov dword [esi + 0x1d0], eax
mov eax, esi
call fcn.00431905
cmp dword [ebp + 0x5c], 0
jne 0x487fe2
mov eax, dword [ebp + 0x6c]
dec dword [eax + 0x1dc]
jmp 0x4856e6
cmp dword [ebp + 0x5c], 0
mov eax, dword [ebp + 0x3c]
mov ecx, dword [eax + 8]
mov dword [esi + 0x1e8], ecx
mov ecx, dword [eax + 0xc]
mov dword [esi + 0x1ec], ecx
mov ecx, dword [eax + 0x10]
mov dword [esi + 0x1f0], ecx
mov eax, dword [eax + 0x14]
mov dword [esi + 0x1f4], eax
je 0x4856e6
cmp dword [ebp + 0x60], 2
jne 0x487fe2
push dword [ebp + 0x50]
mov esi, dword [ebp + 0x6c]
push dword [ebp + 0x60]
call fcn.0043a2c1
pop ecx
pop ecx
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487528
cmp dword [ebp + 0x70], 0
jmp 0x484621
mov ecx, dword [ebx + 8]
and dword [ebp + 0x64], 0
mov esi, dword [ebp + 0x6c]
test ecx, ecx
je 0x48572a
mov eax, dword [esi + 0x20]
and eax, 0x100000
xor edx, edx
or eax, edx
jne 0x488285
mov eax, dword [ebx + 4]
mov edx, dword [esi + 0x10]
shl eax, 4
mov eax, dword [eax + edx + 4]
mov dword [ebp + 0x4c], eax
test eax, eax
je 0x4857e9
lea edx, [ebp + 0x64]
push edx
push ecx
push eax
call fcn.0046bc18
add esp, 0xc
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x488291
test byte [edi + 0x98], 0x40
je 0x4857e9
cmp dword [ebx + 8], eax
je 0x4857e9
cmp byte [esi + 0x4f], al
je 0x48577b
cmp dword [esi + 0xb4], 1
jle 0x4857e9
cmp dword [edi + 0x30], 0
jne 0x485796
mov ecx, dword [esi + 0x1dc]
lea eax, [esi + 0x1e0]
inc dword [eax]
mov eax, dword [eax]
add ecx, eax
mov dword [edi + 0x30], ecx
mov eax, dword [edi + 0x30]
mov esi, dword [ebp + 0x6c]
dec eax
push eax
push 0
call fcn.0043a2c1
pop ecx
pop ecx
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x4857c3
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x30]
mov edi, dword [ebp + 0x4c]
call fcn.0043eab3
mov edi, dword [ebp + 0x7c]
pop ecx
mov dword [ebp + 0x70], eax
mov eax, esi
mov ecx, dword [eax + 0x1e8]
mov dword [edi + 0x48], ecx
mov ecx, dword [eax + 0x1ec]
mov dword [edi + 0x4c], ecx
mov ecx, dword [eax + 0x1f0]
mov dword [edi + 0x50], ecx
mov eax, dword [eax + 0x1f4]
mov dword [edi + 0x54], eax
cmp word [ebx + 2], 0
je 0x485701
mov eax, dword [ebp + 0x64]
cmp eax, dword [ebx + 0xc]
jne 0x485815
mov eax, dword [ebx + 4]
mov ecx, dword [esi + 0x10]
shl eax, 4
mov eax, dword [eax + ecx + 0xc]
mov eax, dword [eax + 4]
cmp eax, dword [ebx + 0x10]
je 0x485701
mov ecx, dword [edi + 0x7c]
mov eax, esi
call fcn.00431905
push str.database_schema_has_changed
push esi
call fcn.004412e2
mov dword [edi + 0x7c], eax
mov eax, dword [ebx + 4]
mov edx, dword [esi + 0x10]
pop ecx
pop ecx
mov ecx, eax
shl ecx, 4
mov ecx, dword [ecx + edx + 0xc]
mov edx, dword [ebp + 0x64]
cmp dword [ecx], edx
je 0x48584d
mov esi, dword [ebp + 0x6c]
call fcn.0044e860
lea eax, [edi + 0x98]
mov ecx, dword [eax]
and ecx, 0xfffffffd
or ecx, 1
mov dword [eax], ecx
mov dword [ebp + 0x70], 0x11
jmp 0x485701
mov ecx, dword [ebp + 0x6c]
mov ecx, dword [ecx + 0x10]
lea eax, [ebp - 0xac]
push eax
mov eax, dword [ebx + 4]
push dword [ebx + 0xc]
shl eax, 4
mov edi, dword [eax + ecx + 4]
call fcn.0043ead6
pop ecx
pop ecx
mov ecx, dword [ebp + 0x7c]
mov eax, ebx
call fcn.004374fd
mov ecx, eax
mov eax, dword [ebp - 0xac]
cdq
mov dword [ecx], eax
mov dword [ecx + 4], edx
jmp 0x487fe2
mov esi, dword [ebx + 4]
push dword [ebx + 0xc]
mov eax, dword [ebp + 0x6c]
push dword [ebx + 8]
shl esi, 4
add esi, dword [eax + 0x10]
push dword [esi + 4]
call fcn.00442106
mov dword [ebp + 0x70], eax
mov eax, dword [ebx + 8]
add esp, 0xc
cmp eax, 1
jne 0x4858e6
movzx eax, word [ebx + 2]
mov ecx, dword [ebx + 0xc]
sub ecx, eax
mov eax, dword [esi + 0xc]
mov dword [eax], ecx
mov eax, dword [ebp + 0x6c]
or dword [eax + 0x18], 1
jmp 0x4858f4
cmp eax, 2
jne 0x4858f4
mov eax, dword [esi + 0xc]
mov cl, byte [ebx + 0xc]
mov byte [eax + 0x4c], cl
cmp dword [ebx + 4], 1
jne 0x485701
mov eax, dword [ebp + 0x6c]
xor edx, edx
call fcn.00436e74
and dword [edi + 0x98], 0xfffffffc
jmp 0x485701
mov eax, dword [ebx + 4]
mov ecx, dword [edi + 0x60]
mov esi, dword [ecx + eax*4]
test esi, esi
je case.0x483b90.96
mov eax, dword [esi + 0x34]
cmp eax, dword [ebx + 8]
je 0x485a13
mov eax, dword [edi + 0x98]
and al, 3
cmp al, 1
je 0x4882b1
mov eax, dword [ebx + 8]
mov ecx, dword [ebp + 0x6c]
mov dword [ebp + 0x64], eax
mov eax, dword [ebx + 0xc]
mov dword [ebp + 0x28], eax
shl eax, 4
add eax, dword [ecx + 0x10]
xor esi, esi
mov ecx, dword [eax + 4]
mov dword [ebp + 0x4c], esi
mov dword [ebp + 0x5c], esi
mov dword [ebp + 0x18], ecx
cmp dl, 0x61
jne 0x485986
movzx ecx, word [ebx + 2]
mov eax, dword [eax + 0xc]
mov al, byte [eax + 0x4c]
and ecx, 8
or ecx, 4
mov dword [ebp + 0x40], ecx
lea ecx, [edi + 0x93]
cmp al, byte [ecx]
jae 0x48598a
mov byte [ecx], al
jmp 0x48598a
and dword [ebp + 0x40], 0
test byte [ebx + 2], 0x10
je 0x4859a6
mov esi, dword [ebp + 0x64]
imul esi, esi, 0x28
add esi, dword [ebp + 0x68]
call fcn.0043626b
mov eax, dword [esi]
mov esi, dword [ebp + 0x4c]
mov dword [ebp + 0x64], eax
mov al, byte [ebx + 1]
cmp al, 0xf7
jne 0x4859b9
mov eax, dword [ebx + 0x10]
movzx esi, word [eax + 8]
mov dword [ebp + 0x5c], eax
jmp 0x4859c0
cmp al, 0xfd
jne 0x4859c0
mov esi, dword [ebx + 0x10]
mov eax, dword [ebx + 4]
push 0
push dword [ebp + 0x28]
push esi
push edi
call fcn.004733e0
mov esi, eax
add esp, 0x10
test esi, esi
je 0x4865c5
mov edi, dword [ebp + 0x5c]
mov eax, dword [ebp + 0x64]
mov ecx, dword [esi + 0x28]
or dword [esi + 8], 4
push edi
push dword [ebp + 0x40]
mov dword [esi + 0x34], eax
push eax
mov eax, dword [ebp + 0x18]
mov byte [esi + 2], 1
call fcn.004575d8
mov dword [esi + 0x2c], edi
mov edi, dword [ebp + 0x7c]
add esp, 0xc
cmp byte [ebx + 1], 0xf7
mov dword [ebp + 0x70], eax
setne al
mov byte [esi + 4], al
movzx eax, word [ebx + 2]
mov ecx, dword [esi + 0x28]
and eax, 3
push eax
call fcn.0043579a
add esp, 4
jmp 0x485701
mov eax, dword [ebx + 8]
mov ecx, dword [edi + 0x60]
mov esi, dword [ecx + eax*4]
movsx eax, word [esi + 0x38]
push 0
push 0xffffffffffffffff
push eax
mov eax, dword [ebx + 4]
push edi
call fcn.004733e0
add esp, 0x10
test eax, eax
je 0x4865c5
or dword [eax + 8], 1
mov edi, dword [eax + 8]
mov byte [eax + 2], 1
mov ecx, dword [esi + 0x2c]
mov dword [eax + 0x2c], ecx
mov cl, byte [esi + 4]
push dword [eax + 0x2c]
mov byte [eax + 4], cl
mov ecx, dword [esi + 0x34]
mov dword [eax + 0x34], ecx
mov ecx, dword [esi + 8]
xor ecx, edi
and ecx, 4
xor ecx, edi
mov dword [eax + 8], ecx
mov ecx, dword [eax + 0x28]
push 4
push dword [eax + 0x34]
mov eax, dword [esi + 0xc]
call fcn.004575d8
add esp, 0xc
mov dword [ebp + 0x70], eax
jmp 0x487fe2
mov eax, dword [ebx + 4]
mov ecx, dword [edi + 0x60]
mov ecx, dword [ecx + eax*4]
mov dword [ebp + 0x64], ecx
test ecx, ecx
je 0x485ad6
mov ecx, dword [ecx + 0xc]
test ecx, ecx
je 0x485ad6
mov eax, dword [ebp + 0x64]
xor edx, edx
push edx
push dword [eax + 0x34]
mov esi, ecx
mov dword [eax + 0x10], edx
mov dword [eax + 0x14], edx
mov dword [eax + 0x1c], edx
call fcn.0046402d
mov esi, dword [ebp + 0x64]
pop ecx
pop ecx
mov dword [ebp + 0x70], eax
jmp 0x485bb0
push 0
push 0xffffffffffffffff
push dword [ebx + 8]
push edi
call fcn.004733e0
mov esi, eax
add esp, 0x10
test esi, esi
je 0x4865c5
or dword [esi + 8], 1
movzx eax, word [ebx + 2]
mov edx, dword [ebp + 0x6c]
push 0x41e
or eax, 5
push eax
push 0
push dword [edx]
lea edi, [esi + 0xc]
mov ecx, edi
call fcn.00462ec3
add esp, 0x10
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x485b97
push eax
push 1
push dword [edi]
call fcn.0046bc18
add esp, 0xc
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x485b97
mov eax, dword [ebx + 0x10]
mov dword [ebp + 0x4c], eax
mov dword [esi + 0x2c], eax
test eax, eax
je 0x485b78
movzx ecx, word [ebx + 2]
or ecx, 2
push ecx
lea eax, [esi + 0x34]
push eax
push dword [edi]
call fcn.00464001
add esp, 0xc
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x485b72
push dword [ebp + 0x4c]
mov ecx, dword [esi + 0x28]
mov eax, dword [edi]
push 4
push dword [esi + 0x34]
call fcn.004575d8
add esp, 0xc
mov dword [ebp + 0x70], eax
mov byte [esi + 4], 0
jmp 0x485b97
mov ecx, dword [esi + 0x28]
xor eax, eax
inc eax
push 0
push 4
mov dword [esi + 0x34], eax
push eax
mov eax, dword [edi]
call fcn.004575d8
add esp, 0xc
mov dword [ebp + 0x70], eax
mov byte [esi + 4], 1
mov edi, dword [ebp + 0x7c]
xor eax, eax
cmp word [ebx + 2], 8
setne al
shl eax, 2
xor eax, dword [esi + 8]
and eax, 4
xor dword [esi + 8], eax
cmp dword [ebp + 0x70], 0
jne 0x487528
mov byte [esi + 2], 1
jmp case.0x483b90.85
mov eax, dword [ebx + 4]
push 1
push 0xffffffffffffffff
push dword [ebx + 8]
push edi
call fcn.004733e0
add esp, 0x10
test eax, eax
je 0x4865c5
mov ecx, dword [ebx + 0x10]
push eax
mov dword [eax + 0x2c], ecx
push dword [ebx + 0xc]
push dword [ebp + 0x6c]
call fcn.004468b9
add esp, 0xc
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487528
jmp 0x487fe2
mov ecx, dword [edi + 0x60]
mov eax, dword [ebx + 4]
mov eax, dword [ecx + eax*4]
mov ecx, dword [eax + 0x10]
mov edx, dword [eax + 0x14]
mov esi, ecx
add esi, 1
mov edi, edx
adc edi, 0
mov dword [eax + 0x10], esi
mov dword [eax + 0x14], edi
mov eax, ecx
or eax, edx
jmp 0x484b24
mov eax, dword [ebx + 4]
push 3
push 0xffffffffffffffff
push dword [ebx + 0xc]
push edi
call fcn.004733e0
mov ecx, eax
add esp, 0x10
test ecx, ecx
je 0x4865c5
mov byte [ecx + 2], 1
mov eax, dword [ebx + 8]
mov dword [ecx + 0x20], eax
mov byte [ecx + 4], 1
call fcn.00435794
mov dword [ecx + 0x28], eax
jmp 0x487fe2
mov eax, dword [ebx + 4]
mov ecx, dword [edi + 0x60]
mov eax, dword [ecx + eax*4]
push edi
call fcn.004732f3
mov eax, dword [ebx + 4]
pop ecx
mov ecx, dword [edi + 0x60]
and dword [ecx + eax*4], 0
jmp case.0x483b90.85
mov eax, dword [ebx + 4]
mov edx, dword [edi + 0x60]
mov eax, dword [edx + eax*4]
mov dword [ebp + 0x60], ecx
xor ecx, ecx
mov dword [ebp + 0x50], eax
mov dword [ebp + 0x64], ecx
mov byte [eax + 2], cl
mov byte [eax + 3], cl
mov dword [eax + 0x1c], ecx
cmp byte [eax + 4], cl
je 0x485d7f
mov edi, dword [ebx + 0xc]
imul edi, edi, 0x28
add edi, dword [ebp + 0x68]
movzx eax, word [edi + 8]
mov dword [ebp + 0x4c], eax
and al, 0x2e
cmp al, 2
jne 0x485cc7
push ecx
mov eax, edi
call fcn.0043745b
pop ecx
mov ecx, edi
call fcn.00436161
mov cx, word [ebp + 0x4c]
mov dword [ebp - 0x6c], eax
movzx eax, word [edi + 8]
mov dword [ebp - 0x68], edx
mov word [edi + 8], cx
test al, 0x24
jne 0x485d45
test al, 8
jne 0x485d1a
test al, 1
jne 0x487fd5
cmp dword [ebp + 0x60], 0x18
jge 0x487fd5
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x28]
lea esi, [ebp + 0x14]
call fcn.00457b60
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487528
xor esi, esi
jmp 0x485ea7
fild qword [ebp - 0x6c]
fcom qword [edi]
fnstsw ax
test ah, 0x41
jne 0x485d33
test byte [ebp + 0x60], 1
fstp st(0)
je 0x485d45
dec dword [ebp + 0x60]
jmp 0x485d45
fcomp qword [edi]
fnstsw ax
test ah, 5
jp 0x485d45
test byte [ebp + 0x60], 1
jne 0x485d45
inc dword [ebp + 0x60]
mov esi, dword [ebp + 0x50]
mov edi, dword [esi + 0x28]
lea eax, [ebp + 0x14]
push eax
push 0
push dword [ebp - 0x68]
push dword [ebp - 0x6c]
push 0
call fcn.0045e25e
mov ecx, dword [ebp - 0x6c]
mov dword [esi + 0x40], ecx
mov ecx, dword [ebp - 0x68]
add esp, 0x14
mov dword [ebp + 0x70], eax
mov dword [esi + 0x44], ecx
test eax, eax
jne 0x487528
xor esi, esi
jmp 0x485e11
mov ecx, dword [eax + 0x28]
push 2
call fcn.00435ef9
add esp, 4
test eax, eax
je 0x485d97
mov dword [ebp + 0x64], 1
mov eax, dword [ebp + 0x50]
mov ecx, dword [eax + 0x2c]
mov dword [ebp - 0xbc], ecx
mov cx, word [ebx + 0x10]
mov word [ebp - 0xb4], cx
mov ecx, dword [ebp + 0x60]
and cl, 1
neg cl
sbb cl, cl
and cl, 0xfe
inc cl
mov byte [ebp - 0xb2], cl
mov ecx, dword [ebx + 0xc]
imul ecx, ecx, 0x28
add ecx, dword [ebp + 0x68]
xor esi, esi
mov dword [ebp - 0xb8], ecx
lea ecx, [ebp + 0x14]
push ecx
push esi
push esi
lea ecx, [ebp - 0xbc]
mov byte [ebp - 0xae], 0
mov edi, dword [eax + 0x28]
push esi
push ecx
call fcn.0045e25e
add esp, 0x14
mov dword [ebp + 0x70], eax
cmp eax, esi
jne 0x487528
cmp dword [ebp + 0x64], esi
je 0x485e11
cmp byte [ebp - 0xae], 0
je 0x485ea7
cmp dword [ebp + 0x60], 0x18
jl 0x485e5d
cmp dword [ebp + 0x14], esi
jl 0x485e2c
jne 0x485e24
cmp dword [ebp + 0x60], 0x19
je 0x485e2c
mov dword [ebp + 0x14], esi
jmp 0x485eb2
mov eax, dword [ebp + 0x50]
push esi
push dword [eax + 0x28]
mov dword [ebp + 0x14], esi
call fcn.0046367b
pop ecx
pop ecx
mov dword [ebp + 0x70], eax
cmp eax, esi
je 0x485eb2
cmp eax, 0x65
jne 0x487528
and dword [ebp + 0x70], 0
mov dword [ebp + 0x14], 1
jmp 0x487fd5
cmp dword [ebp + 0x14], esi
jg 0x485e7a
jne 0x485e6a
cmp dword [ebp + 0x60], 0x16
je 0x485e7a
mov eax, dword [ebp + 0x50]
mov ecx, dword [eax + 0x28]
call fcn.00435d20
mov dword [ebp + 0x14], eax
jmp 0x485ea7
mov eax, dword [ebp + 0x50]
push esi
push dword [eax + 0x28]
mov dword [ebp + 0x14], esi
call fcn.00463779
pop ecx
pop ecx
mov dword [ebp + 0x70], eax
cmp eax, esi
je 0x485eb2
cmp eax, 0x65
jne 0x487528
xor esi, esi
mov dword [ebp + 0x70], esi
mov dword [ebp + 0x14], 1
cmp dword [ebp + 0x14], esi
jne 0x487fd5
xor esi, esi
cmp dword [ebp + 0x64], esi
je 0x487fe2
add ebx, 0x14
jmp 0x487fe2
mov ecx, dword [edi + 0x60]
mov eax, dword [ebx + 4]
mov eax, dword [ecx + eax*4]
mov ecx, dword [ebx + 8]
shl ecx, 3
xor ecx, dword [eax + 8]
and ecx, 8
xor dword [eax + 8], ecx
jmp case.0x483b90.85
mov eax, dword [ebx + 4]
mov ecx, dword [edi + 0x60]
cmp dword [ecx + eax*4], 0
je case.0x483b90.11
jmp case.0x483b90.85
mov eax, dword [ebx + 4]
mov ecx, dword [edi + 0x60]
mov eax, dword [ecx + eax*4]
test byte [eax + 8], 8
jne case.0x483b90.85
mov ecx, dword [edi + 0x60]
mov edi, dword [ebx + 0xc]
mov eax, dword [ebx + 4]
imul edi, edi, 0x28
mov eax, dword [ecx + eax*4]
add edi, dword [ebp + 0x68]
cmp dword [ebx + 0x10], 0
mov dword [ebp + 0x5c], eax
jle 0x485f49
mov eax, dword [eax + 0x2c]
and dword [ebp + 0x64], 0
mov dword [ebp - 0x160], eax
mov ax, word [ebx + 0x10]
mov word [ebp - 0x158], ax
mov dword [ebp - 0x15c], edi
lea esi, [ebp - 0x160]
jmp 0x485f94
mov eax, 0x4000
test word [edi + 8], ax
je 0x485f5d
mov eax, edi
call fcn.00442486
jmp 0x485f5f
xor eax, eax
test eax, eax
jne 0x4865c5
mov eax, dword [ebp + 0x5c]
mov esi, dword [eax + 0x2c]
call fcn.00442ca3
mov esi, eax
mov dword [ebp + 0x64], esi
test esi, esi
je 0x4865c5
mov eax, dword [ebp + 0x5c]
push esi
push dword [edi + 0x10]
push dword [edi + 0xc]
push dword [eax + 0x2c]
call fcn.00436b4a
add esp, 0x10
xor ecx, ecx
mov byte [esi + 0xa], 0
cmp byte [ebx], 0x1c
mov dword [ebp + 0x40], ecx
jne 0x485fca
xor eax, eax
cmp ax, word [esi + 8]
jae 0x485fca
mov eax, dword [esi + 4]
add eax, 8
test byte [eax], 1
jne 0x485fc3
movzx edx, word [esi + 8]
inc ecx
add eax, 0x28
cmp ecx, edx
jl 0x485fb0
jmp 0x485fca
mov dword [ebp + 0x40], 1
lea eax, [ebp - 0xa4]
push eax
xor eax, eax
push eax
push eax
push eax
mov eax, dword [ebp + 0x5c]
mov edi, dword [eax + 0x28]
push esi
call fcn.0045e25e
add esp, 0x14
cmp dword [ebp + 0x64], 0
mov dword [ebp + 0x70], eax
je 0x485ff9
mov ecx, dword [ebp + 0x64]
mov eax, dword [ebp + 0x6c]
call fcn.004318c0
cmp dword [ebp + 0x70], 0
jne 0x487528
mov ecx, dword [ebp - 0xa4]
mov esi, dword [ebp + 0x5c]
xor eax, eax
test ecx, ecx
mov dword [esi + 0x20], ecx
sete al
and dword [esi + 0x1c], 0
mov cl, 1
sub cl, al
mov byte [esi + 2], cl
mov byte [esi + 3], 0
cmp byte [ebx], 0x1e
je 0x484b03
cmp dword [ebp + 0x40], 0
jne 0x487fd5
jmp 0x484b22
mov esi, dword [ebx + 0xc]
mov ecx, dword [ebp + 0x68]
imul esi, esi, 0x28
add esi, ecx
test byte [esi + 8], 0x24
jne 0x48608c
push 0xa
pop ecx
push dword [ebp + 0x2c]
lea edi, [ebp - 0x218]
push 0x43
lea eax, [ebp - 0x218]
rep movsd dword es:[edi], dword [esi]
call fcn.0044946d
test byte [ebp - 0x210], 4
pop ecx
pop ecx
je 0x487fd5
mov eax, dword [ebp - 0x218]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x214]
jmp 0x48609c
mov ecx, dword [ebp + 0x68]
mov eax, dword [ebx + 0xc]
imul eax, eax, 0x28
mov edx, dword [eax + ecx]
mov eax, dword [eax + ecx + 4]
mov dword [ebp - 0x54], edx
mov ecx, dword [ebp + 0x7c]
mov ecx, dword [ecx + 0x60]
mov dword [ebp - 0x50], eax
mov eax, dword [ebx + 4]
mov esi, dword [ecx + eax*4]
mov edi, dword [esi + 0x28]
xor eax, eax
lea ecx, [ebp + 0x58]
push ecx
push eax
push dword [ebp - 0x50]
push dword [ebp - 0x54]
mov dword [ebp + 0x58], eax
push eax
call fcn.0045e25e
and dword [esi + 0x1c], 0
mov dword [ebp + 0x70], eax
mov eax, dword [ebp - 0x54]
mov dword [esi + 0x40], eax
mov eax, dword [ebp - 0x50]
mov dword [esi + 0x44], eax
mov eax, dword [ebp + 0x58]
add esp, 0x14
mov byte [esi + 2], 0
mov byte [esi + 3], 0
mov dword [esi + 0x20], eax
test eax, eax
je 0x486104
cmp dword [ebx + 8], 0
jne 0x487fd5
push 0x15fa6
call fcn.004538ff
mov dword [ebp + 0x70], eax
pop ecx
cmp dword [ebp + 0x70], 0
jmp 0x485bf8
mov eax, ebx
mov ecx, edi
call fcn.004374fd
mov edx, dword [edi + 0x60]
mov ecx, dword [ebx + 4]
mov ecx, dword [edx + ecx*4]
mov edx, dword [ecx + 0x10]
mov dword [eax], edx
mov ecx, dword [ecx + 0x14]
mov dword [eax + 4], ecx
mov eax, dword [ebx + 4]
mov ecx, dword [edi + 0x60]
mov eax, dword [ecx + eax*4]
add dword [eax + 0x10], 1
adc dword [eax + 0x14], 0
jmp case.0x483b90.85
xor eax, eax
mov dword [ebp + 0xc], eax
mov dword [ebp + 0x10], eax
mov dword [ebp + 0x5c], eax
mov eax, ebx
mov ecx, edi
call fcn.004374fd
mov ecx, dword [edi + 0x60]
mov dword [ebp + 0x58], eax
mov eax, dword [ebx + 4]
mov eax, dword [ecx + eax*4]
test byte [eax + 8], 2
mov dword [ebp + 0x44], eax
jne 0x4861c1
mov eax, dword [eax + 0x28]
lea esi, [ebp + 0x5c]
call fcn.00457b60
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487528
cmp dword [ebp + 0x5c], eax
je 0x486190
and dword [ebp + 0x10], eax
mov dword [ebp + 0xc], 1
jmp 0x4861c1
mov eax, dword [ebp + 0x44]
mov esi, dword [eax + 0x28]
call fcn.00435c99
cmp edx, 0x7fffffff
mov dword [ebp + 0xc], eax
mov dword [ebp + 0x10], edx
jl 0x4861b9
jg 0x4861b0
cmp eax, 0xffffffff
jb 0x4861b9
mov eax, dword [ebp + 0x44]
or dword [eax + 8], 2
jmp 0x4861c1
add dword [ebp + 0xc], 1
adc dword [ebp + 0x10], 0
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x48623a
mov edi, dword [edi + 0xc8]
test edi, edi
je 0x4861e7
mov ecx, edi
jmp 0x4861d8
mov ecx, edx
mov edx, dword [ecx + 4]
test edx, edx
jne 0x4861d6
imul eax, eax, 0x28
add eax, dword [ecx + 0x10]
jmp 0x4861ed
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
mov esi, eax
call fcn.0043626b
mov eax, dword [esi]
mov ecx, dword [esi + 4]
cmp eax, 0xffffffff
jne 0x48620a
cmp ecx, 0x7fffffff
je 0x48629a
mov edx, dword [ebp + 0x44]
test byte [edx + 8], 2
jne 0x48629a
add eax, 1
adc ecx, 0
cmp dword [ebp + 0x10], ecx
jg 0x48622f
jl 0x486229
cmp dword [ebp + 0xc], eax
jae 0x48622f
mov dword [ebp + 0xc], eax
mov dword [ebp + 0x10], ecx
mov eax, dword [ebp + 0xc]
mov dword [esi], eax
mov eax, dword [ebp + 0x10]
mov dword [esi + 4], eax
mov eax, dword [ebp + 0x44]
test byte [eax + 8], 2
je 0x4862a6
and dword [ebp + 0x64], 0
lea eax, [ebp + 0xc]
push eax
push 8
call fcn.0043c5b5
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0xc]
push 0
pop esi
and eax, 0x3fffffff
add ecx, 1
lea edx, [ebp + 0x5c]
push edx
adc eax, esi
push esi
push eax
mov dword [ebp + 0x10], eax
mov eax, dword [ebp + 0x44]
mov edi, dword [eax + 0x28]
push ecx
push esi
mov dword [ebp + 0xc], ecx
call fcn.0045e25e
add esp, 0x1c
mov dword [ebp + 0x70], eax
cmp eax, esi
jne 0x487528
cmp dword [ebp + 0x5c], esi
jne 0x4862a6
inc dword [ebp + 0x64]
cmp dword [ebp + 0x64], 0x64
jl 0x486247
mov dword [ebp + 0x70], 0xd
jmp 0x487528
mov eax, dword [ebp + 0x44]
and dword [eax + 0x1c], 0
mov ecx, dword [ebp + 0xc]
mov byte [eax + 3], 0
mov eax, dword [ebp + 0x58]
mov dword [eax], ecx
mov ecx, dword [ebp + 0x10]
mov dword [eax + 4], ecx
jmp 0x487fe2
mov ecx, dword [ebx + 4]
mov esi, dword [edi + 0x60]
mov esi, dword [esi + ecx*4]
mov eax, dword [ebx + 8]
mov ecx, dword [ebx + 0xc]
imul eax, eax, 0x28
mov edx, dword [ebp + 0x68]
imul ecx, ecx, 0x28
add eax, edx
cmp byte [ebx + 1], 0xfa
mov edx, dword [ecx + edx]
mov dword [ebp - 0x140], edx
mov edx, dword [ebp + 0x68]
mov ecx, dword [ecx + edx + 4]
mov dword [ebp - 0x13c], ecx
mov ecx, dword [ebp + 0x6c]
jne 0x486321
cmp dword [ecx + 0xf0], 0
je 0x486321
movsx edx, byte [esi + 1]
mov ecx, dword [ecx + 0x10]
shl edx, 4
mov ecx, dword [edx + ecx]
mov dword [ebp + 0x40], ecx
mov ecx, dword [ebx + 0x10]
mov dword [ebp + 0x5c], ecx
mov ecx, dword [ebp + 0x6c]
jmp 0x486329
and dword [ebp + 0x5c], 0
and dword [ebp + 0x40], 0
test byte [ebx + 2], 1
je 0x486332
inc dword [edi + 0x2c]
test byte [ebx + 2], 0x20
je 0x48634a
mov edx, dword [ebp - 0x140]
mov dword [ecx + 0x28], edx
mov edx, dword [ebp - 0x13c]
mov dword [ecx + 0x2c], edx
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x138], ecx
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0x12c], ecx
movzx ecx, word [ebx + 2]
test cl, 0x10
je 0x48636d
mov edx, dword [esi + 0x20]
mov dword [ebp + 0x64], edx
jmp 0x486371
and dword [ebp + 0x64], 0
mov edx, 0x4000
test word [eax + 8], dx
je 0x486386
mov eax, dword [eax]
mov dword [ebp - 0x128], eax
jmp 0x48638d
and dword [ebp - 0x128], 0
push dword [ebp + 0x64]
and dword [ebp - 0x148], 0
and ecx, 0xa
push ecx
lea eax, [ebp - 0x148]
push eax
mov eax, dword [esi + 0x28]
call fcn.004637aa
and dword [esi + 0x1c], 0
add esp, 0xc
mov dword [ebp + 0x70], eax
mov byte [esi + 3], 0
test eax, eax
jne 0x487528
mov eax, dword [ebp + 0x5c]
test eax, eax
je 0x487fe2
push dword [ebp - 0x13c]
push dword [ebp - 0x140]
push dword [eax]
mov al, byte [ebx + 2]
push dword [ebp + 0x40]
and al, 4
movzx eax, al
neg eax
sbb eax, eax
and eax, 5
add eax, 0x12
push eax
mov eax, dword [ebp + 0x6c]
push dword [eax + 0xec]
call dword [eax + 0xf0]
add esp, 0x18
jmp case.0x483b90.85
cmp byte [ebx + 1], 0xfa
mov eax, dword [ebx + 8]
mov ecx, dword [edi + 0x60]
mov dword [ebp + 0x4c], eax
mov eax, dword [ebx + 4]
mov esi, dword [ecx + eax*4]
mov dword [ebp + 0x5c], esi
jne 0x486463
mov eax, dword [ebp + 0x6c]
cmp dword [eax + 0xf0], 0
je 0x486463
movsx ecx, byte [esi + 1]
mov eax, dword [eax + 0x10]
shl ecx, 4
test byte [ebx + 2], 2
mov eax, dword [ecx + eax]
mov dword [ebp + 0x40], eax
mov eax, dword [ebx + 0x10]
mov dword [ebp + 0x64], eax
je 0x48646b
cmp byte [esi + 4], 0
je 0x48646b
mov eax, esi
mov esi, dword [eax + 0x28]
call fcn.00435c99
mov ecx, dword [ebp + 0x5c]
mov dword [ecx + 0x40], eax
mov dword [ecx + 0x44], edx
mov esi, ecx
jmp 0x48646b
and dword [ebp + 0x40], 0
and dword [ebp + 0x64], 0
mov al, byte [ebx + 2]
mov ecx, dword [esi + 0x28]
call fcn.00463b22
and dword [esi + 0x1c], 0
and dword [esi + 0x20], 0
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487528
test byte [ebp + 0x4c], 1
je 0x487fe2
inc dword [edi + 0x2c]
mov eax, dword [ebp + 0x6c]
mov eax, dword [eax + 0xf0]
test eax, eax
je 0x487fe2
mov ecx, dword [ebp + 0x64]
test byte [ecx + 0x24], 0x80
jne 0x487fe2
mov ecx, dword [ebp + 0x5c]
push dword [ecx + 0x44]
push dword [ecx + 0x40]
mov ecx, dword [ebp + 0x64]
push dword [ecx]
mov ecx, dword [ebp + 0x6c]
push dword [ebp + 0x40]
push 9
push dword [ecx + 0xec]
call eax
jmp 0x4863fe
mov ecx, dword [edi + 0x2c]
mov eax, dword [ebp + 0x6c]
call fcn.00436e65
and dword [edi + 0x2c], 0
jmp case.0x483b90.85
mov ecx, dword [edi + 0x60]
mov eax, dword [ebx + 4]
mov eax, dword [ecx + eax*4]
mov ecx, dword [ebx + 0xc]
mov edx, dword [ebx + 0x10]
imul ecx, ecx, 0x28
add ecx, dword [ebp + 0x68]
and dword [ebp - 0x3c], 0
lea esi, [ebp - 0x3c]
push esi
push edx
push ecx
call fcn.0045c332
add esp, 0xc
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487528
cmp dword [ebp - 0x3c], eax
jmp 0x483bfa
mov esi, dword [ebx + 8]
mov eax, dword [ebx + 4]
imul esi, esi, 0x28
mov ecx, dword [edi + 0x60]
add esi, dword [ebp + 0x68]
mov eax, dword [ecx + eax*4]
call fcn.004435a6
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487528
mov eax, dword [ebx + 0xc]
mov ecx, dword [edi + 0x60]
mov eax, dword [ecx + eax*4]
and dword [eax + 0x1c], 0
jmp case.0x483b90.85
mov eax, ebx
mov ecx, edi
call fcn.004374fd
mov ecx, dword [edi + 0x60]
mov dword [ebp + 0x58], eax
mov eax, dword [ebx + 4]
mov eax, dword [ecx + eax*4]
mov edi, dword [eax + 0x28]
mov esi, edi
call fcn.00435cb1
mov esi, eax
mov eax, dword [ebp + 0x6c]
cmp esi, dword [eax + 0x6c]
ja 0x487513
mov eax, dword [ebp + 0x58]
mov ecx, edi
call fcn.0045ae89
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487528
cmp dword [ebx + 0xc], eax
jne 0x487fe2
mov ecx, dword [ebp + 0x58]
mov eax, 0x1000
test word [ecx + 8], ax
je 0x487fe2
mov esi, ecx
call fcn.004465d8
test eax, eax
je 0x487fe2
push dword [ebp + 0x6c]
call fcn.0043190f
mov edi, dword [ebp + 0x7c]
mov dword [esp], 0x64c744
call fcn.0044cce5
mov dword [ebp + 0x70], 7
jmp 0x487527
mov eax, ebx
mov ecx, edi
call fcn.004374fd
mov ecx, dword [ebx + 4]
mov edx, dword [edi + 0x60]
mov esi, dword [edx + ecx*4]
cmp byte [esi + 2], 0
mov dword [ebp + 0x58], eax
je 0x48660b
xor ecx, ecx
inc ecx
jmp 0x483bd3
cmp byte [esi + 3], 0
je 0x48661f
mov eax, dword [esi + 0x40]
mov dword [ebp - 0x5c], eax
mov eax, dword [esi + 0x44]
mov dword [ebp - 0x58], eax
jmp 0x48667a
cmp byte [esi], 2
jne 0x48664c
mov eax, dword [esi + 0x28]
mov esi, dword [eax]
mov ecx, dword [esi]
lea edx, [ebp - 0x5c]
push edx
push eax
call dword [ecx + 0x30]
mov edi, dword [ebp + 0x7c]
pop ecx
pop ecx
mov dword [ebp + 0x70], eax
call fcn.00442cd2
cmp dword [ebp + 0x70], 0
jne 0x487528
jmp 0x48667a
mov eax, esi
call fcn.00464668
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487528
cmp byte [esi + 2], al
je 0x48666c
mov ecx, dword [ebp + 0x58]
inc eax
jmp 0x483e1f
mov esi, dword [esi + 0x28]
call fcn.00435c99
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], edx
mov ecx, dword [ebp - 0x5c]
mov eax, dword [ebp + 0x58]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x58]
jmp 0x4862bc
mov eax, dword [ebx + 4]
mov ecx, dword [edi + 0x60]
mov eax, dword [ecx + eax*4]
and dword [eax + 0x1c], 0
cmp byte [eax], 0
mov byte [eax + 2], 1
jne 0x487fe2
mov esi, dword [eax + 0x28]
call fcn.0043577b
jmp case.0x483b90.85
mov ecx, dword [edi + 0x60]
mov eax, dword [ebx + 4]
mov edi, dword [ecx + eax*4]
and dword [ebp + 0x18], 0
mov ecx, dword [edi + 0x28]
cmp dl, 0x81
jne 0x4866d7
or dword [edi + 0x20], 0xffffffff
call fcn.00435c91
test eax, eax
jne 0x487fe2
lea esi, [ebp + 0x18]
mov eax, ecx
call fcn.00457b60
mov dword [ebp + 0x70], eax
mov eax, dword [ebp + 0x18]
xor ecx, ecx
mov byte [edi + 2], al
mov byte [edi + 3], 0
mov dword [edi + 0x1c], ecx
cmp dword [ebp + 0x70], ecx
jne 0x487528
cmp dword [ebx + 8], ecx
jle 0x487fe2
jmp 0x484b03
mov eax, dword [ebx + 4]
mov ecx, dword [edi + 0x60]
mov eax, dword [ecx + eax*4]
mov esi, dword [eax + 0x28]
push esi
lea eax, [ebp - 0x78]
call fcn.00457b34
pop ecx
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487528
cmp dword [ebp - 0x78], eax
jne 0x487fd5
call fcn.00435d28
test edx, edx
jl 0x487fe2
jg 0x48674b
test eax, eax
jb 0x487fe2
push edx
push eax
call fcn.00432940
cwde
cmp eax, dword [ebx + 0xc]
pop ecx
pop ecx
jge 0x487fe2
mov dword [ebp - 0x78], 1
jmp 0x487fd5
inc dword [edi + 0xac]
mov eax, dword [ebx + 4]
mov ecx, dword [edi + 0x60]
mov esi, dword [ecx + eax*4]
cmp byte [esi], 1
mov dword [ebp + 0x3c], 1
jne 0x486791
lea edi, [ebp + 0x3c]
mov ecx, esi
call fcn.0045c2e8
jmp 0x4867a5
push dword [esi + 0x28]
lea eax, [ebp + 0x3c]
call fcn.00457b34
and dword [esi + 0x1c], 0
pop ecx
mov byte [esi + 3], 0
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487528
mov eax, dword [ebp + 0x3c]
mov byte [esi + 2], al
jmp 0x484b03
mov eax, dword [ebx + 4]
mov ecx, dword [edi + 0x60]
mov esi, dword [ecx + eax*4]
push dword [ebp + 0x6c]
mov eax, esi
call fcn.00443531
jmp 0x4867e3
mov eax, dword [ebx + 4]
mov ecx, dword [edi + 0x60]
push dword [ebx + 0xc]
mov esi, dword [ecx + eax*4]
push dword [esi + 0x28]
call dword [ebx + 0x10]
pop ecx
mov dword [ebp + 0x70], eax
xor eax, eax
pop ecx
mov dword [esi + 0x1c], eax
cmp dword [ebp + 0x70], eax
jne 0x486806
mov byte [esi + 2], al
movzx eax, word [ebx + 2]
lea eax, [edi + eax*4 + 0xa4]
inc dword [eax]
jmp case.0x483b90.11
cmp dword [ebp + 0x70], 0x65
jne 0x487528
mov dword [ebp + 0x70], eax
mov byte [esi + 2], 1
jmp 0x487bce
mov esi, dword [ebx + 8]
mov eax, dword [ebx + 4]
imul esi, esi, 0x28
mov ecx, dword [edi + 0x60]
mov eax, dword [ecx + eax*4]
add esi, dword [ebp + 0x68]
test byte [ebx + 2], 1
mov dword [ebp + 0x18], eax
je 0x48683a
inc dword [edi + 0x2c]
mov eax, 0x4000
test word [esi + 8], ax
je 0x486851
mov eax, esi
call fcn.00442486
mov dword [ebp + 0x70], eax
jmp 0x486855
and dword [ebp + 0x70], 0
xor ecx, ecx
cmp dword [ebp + 0x70], ecx
jne 0x487528
mov eax, dword [esi + 0xc]
cdq
mov dword [ebp - 0x1c0], eax
mov dword [ebp - 0x1bc], edx
mov eax, dword [esi + 0x10]
mov dword [ebp - 0x1c8], eax
mov eax, dword [ebx + 0xc]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
mov dword [ebp - 0x1b4], eax
mov ax, word [ebx + 0x10]
mov word [ebp - 0x1b0], ax
movzx eax, word [ebx + 2]
test al, 0x10
je 0x4868a1
mov ecx, dword [ebp + 0x18]
mov ecx, dword [ecx + 0x20]
mov esi, dword [ebp + 0x18]
and eax, 0xa
push ecx
push eax
lea eax, [ebp - 0x1c8]
push eax
mov eax, dword [esi + 0x28]
call fcn.004637aa
add esp, 0xc
and dword [esi + 0x1c], 0
jmp 0x48461c
mov esi, dword [ebx + 8]
mov eax, dword [ebx + 4]
imul esi, esi, 0x28
mov ecx, dword [edi + 0x60]
mov eax, dword [ecx + eax*4]
add esi, dword [ebp + 0x68]
mov dword [ebp + 0x4c], eax
mov eax, 0x4000
test word [esi + 8], ax
je 0x4868f0
mov eax, esi
call fcn.00442486
mov dword [ebp + 0x70], eax
jmp 0x4868f4
and dword [ebp + 0x70], 0
cmp dword [ebp + 0x70], 0
jne 0x487528
mov eax, dword [ebp + 0x4c]
push esi
call fcn.0045bfcc
jmp 0x48461b
mov eax, dword [ebx + 4]
mov ecx, dword [ebp + 0x7c]
mov ecx, dword [ecx + 0x60]
mov esi, dword [ecx + eax*4]
mov eax, dword [esi + 0x2c]
mov edi, dword [esi + 0x28]
mov dword [ebp - 0x110], eax
mov ax, word [ebx + 0xc]
mov word [ebp - 0x108], ax
mov eax, dword [ebx + 8]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
mov byte [ebp - 0x106], 0
mov dword [ebp - 0x10c], eax
lea eax, [ebp - 0xa8]
push eax
xor eax, eax
push eax
push eax
push eax
lea eax, [ebp - 0x110]
push eax
call fcn.0045e25e
add esp, 0x14
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487528
cmp dword [ebp - 0xa8], eax
jne 0x486989
mov al, 4
mov ecx, edi
call fcn.00463b22
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487528
jmp 0x486994
cmp word [ebx + 2], 0
jne 0x4882bd
and dword [esi + 0x1c], 0
and dword [esi + 0x20], 0
jmp 0x487fe2
mov eax, dword [ebx + 4]
mov ecx, dword [edi + 0x60]
mov esi, dword [ecx + eax*4]
mov eax, esi
call fcn.00464668
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487528
cmp byte [esi + 2], al
jne 0x486a2a
and dword [ebp - 0x64], eax
and dword [ebp - 0x60], eax
lea eax, [ebp - 0x64]
push eax
push dword [esi + 0x28]
push dword [ebp + 0x6c]
call fcn.0045b561
add esp, 0xc
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487528
cmp byte [ebx], 0x85
jne 0x486a14
mov ecx, dword [edi + 0x60]
mov eax, dword [ebx + 0xc]
mov eax, dword [ecx + eax*4]
mov ecx, dword [ebp - 0x64]
mov dword [eax + 0x40], ecx
mov ecx, dword [ebp - 0x60]
mov byte [eax + 2], 0
mov dword [eax + 0x44], ecx
mov byte [eax + 3], 1
mov ecx, dword [ebx + 0x10]
mov dword [eax + 0x18], ecx
mov dword [eax + 0x24], esi
jmp case.0x483b90.85
mov eax, ebx
mov ecx, edi
call fcn.004374fd
mov ecx, dword [ebp - 0x64]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x60]
jmp 0x483d06
mov eax, dword [ebx + 8]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
jmp 0x484059
mov eax, dword [ebx + 4]
mov ecx, dword [edi + 0x60]
mov esi, dword [ecx + eax*4]
cmp byte [esi + 3], 0
je case.0x483b90.85
call fcn.0045e664
jmp 0x48461c
mov ecx, dword [edi + 0x60]
mov eax, dword [ebx + 4]
mov eax, dword [ecx + eax*4]
mov ecx, dword [eax + 0x2c]
mov dword [ebp - 0x120], ecx
mov cx, word [ebx + 0x10]
mov word [ebp - 0x118], cx
cmp dl, 0x28
sbb cl, cl
mov byte [ebp - 0x116], cl
mov ecx, dword [ebx + 0xc]
imul ecx, ecx, 0x28
add ecx, dword [ebp + 0x68]
xor esi, esi
mov dword [ebp - 0x11c], ecx
lea ecx, [ebp + 0x50]
push ecx
lea ecx, [ebp - 0x120]
push ecx
push dword [ebp + 0x6c]
mov dword [ebp + 0x50], esi
call fcn.0045b637
add esp, 0xc
test byte [ebx], 1
mov dword [ebp + 0x70], eax
jne 0x486ab4
neg dword [ebp + 0x50]
jmp 0x486ab7
inc dword [ebp + 0x50]
cmp dword [ebp + 0x70], esi
jne 0x487528
cmp dword [ebp + 0x50], esi
jg 0x487fd5
jmp 0x487fe2
mov eax, ebx
mov ecx, edi
call fcn.004374fd
mov esi, eax
xor eax, eax
inc eax
mov word [esi + 8], ax
mov eax, dword [ebp + 0x6c]
mov ecx, dword [eax + 0xc0]
inc ecx
cmp dword [eax + 0xb4], ecx
jg 0x4882c9
mov ecx, dword [ebx + 0xc]
mov eax, dword [eax + 0x10]
lea edx, [ebp + 0x40]
push edx
push dword [ebx + 4]
mov dword [ebp + 0x18], ecx
shl ecx, 4
push dword [ecx + eax + 4]
xor edi, edi
mov dword [ebp + 0x40], edi
call fcn.0046420e
add esp, 0xc
mov dword [ebp + 0x70], eax
push 4
pop eax
mov word [esi + 8], ax
mov eax, dword [ebp + 0x40]
cdq
mov dword [esi], eax
mov dword [esi + 4], edx
cmp dword [ebp + 0x70], edi
jne 0x487528
cmp dword [ebp + 0x40], edi
je 0x487fe2
mov edi, dword [ebx + 4]
mov esi, dword [ebp + 0x40]
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0x6c]
call fcn.00438f0f
mov al, byte [ebp + 0x18]
inc al
mov byte [ebp + 0x1f], al
jmp 0x487fe2
and dword [ebp + 0x28], 0
mov eax, dword [ebx + 0xc]
neg eax
sbb eax, eax
lea ecx, [ebp + 0x28]
and eax, ecx
mov ecx, dword [ebp + 0x6c]
mov ecx, dword [ecx + 0x10]
push eax
mov eax, dword [ebx + 8]
push dword [ebx + 4]
shl eax, 4
mov esi, dword [eax + ecx + 4]
call fcn.0046402d
cmp dword [ebx + 0xc], 0
pop ecx
pop ecx
mov dword [ebp + 0x70], eax
je 0x485701
mov eax, dword [ebp + 0x28]
add dword [edi + 0x2c], eax
mov ecx, dword [ebx + 0xc]
test ecx, ecx
jle 0x485701
mov edx, dword [ebp + 0x68]
imul ecx, ecx, 0x28
add ecx, edx
cdq
add dword [ecx], eax
adc dword [ecx + 4], edx
jmp 0x485701
mov eax, dword [ebx + 4]
mov ecx, dword [edi + 0x60]
mov eax, dword [ecx + eax*4]
cmp byte [eax], 1
jne 0x486bd8
push dword [ebp + 0x6c]
mov edi, dword [eax + 0x28]
call fcn.0044301d
pop ecx
jmp 0x487fe2
mov eax, dword [eax + 0x28]
call fcn.0046407c
jmp 0x48461c
mov eax, ebx
mov ecx, edi
call fcn.004374fd
mov ecx, dword [ebp + 0x6c]
push dword [ebx + 0xc]
and dword [ebp + 0x4c], 0
mov esi, eax
mov eax, dword [ebx + 4]
shl eax, 4
add eax, dword [ecx + 0x10]
lea ecx, [ebp + 0x4c]
push ecx
push dword [eax + 4]
call fcn.00464001
add esp, 0xc
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487528
mov eax, dword [ebp + 0x4c]
and dword [esi + 4], 0
mov dword [esi], eax
jmp case.0x483b90.85
mov esi, dword [ebp + 0x6c]
inc byte [esi + 0x5a]
xor eax, eax
push eax
push eax
push eax
push dword [ebx + 0x10]
push esi
call fcn.00488a1c
add esp, 0x14
dec byte [esi + 0x5a]
jmp 0x48461c
cmp dword [ebx + 0x10], 0
mov esi, dword [ebx + 4]
jne 0x486c94
mov ecx, dword [ebp + 0x6c]
mov ecx, dword [ecx + 0x10]
mov eax, esi
shl eax, 4
push dword [eax + ecx + 0xc]
call fcn.00449810
mov eax, dword [ebp + 0x6c]
and dword [eax + 0x18], 0xffffffef
push 1
lea ecx, [edi + 0x7c]
push ecx
push esi
push eax
call fcn.00488dd6
mov dword [ebp + 0x70], eax
mov eax, dword [ebp + 0x6c]
or dword [eax + 0x18], 1
add esp, 0x14
and dword [edi + 0x98], 0xfffffffc
jmp 0x486d55
mov edx, dword [ebp + 0x6c]
and dword [ebp - 0xf0], 0
lea eax, [edi + 0x7c]
mov dword [ebp - 0xf8], esi
mov dword [ebp - 0xfc], eax
mov eax, dword [edx + 0x10]
shl esi, 4
lea ecx, [esi + eax]
mov dword [ebp - 0x100], edx
mov eax, dword [ecx + 4]
call fcn.00435b2a
push dword [ebx + 0x10]
mov dword [ebp - 0xe8], eax
push str.sqlite_master
push dword [ecx]
mov esi, edx
push str.SELECTFROM__w_._s_WHERE__s_ORDER_BY_rowid
call fcn.0044b440
add esp, 0x10
mov dword [ebp + 0x4c], eax
test eax, eax
je 0x48802c
xor ecx, ecx
push ecx
mov dword [ebp - 0xf4], ecx
mov dword [ebp - 0xec], ecx
lea ecx, [ebp - 0x100]
push ecx
push fcn.0048390a
push eax
push esi
mov byte [esi + 0xa5], 1
call fcn.00488a1c
add esp, 0x14
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x486d44
mov eax, dword [ebp - 0xf4]
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x486d44
cmp dword [ebp - 0xec], eax
jne 0x486d44
push 0x16553
call fcn.004538ff
pop ecx
mov dword [ebp + 0x70], eax
mov ecx, dword [ebp + 0x4c]
mov eax, esi
call fcn.004318c0
mov byte [esi + 0xa5], 0
cmp dword [ebp + 0x70], 0
je case.0x483b90.85
mov esi, dword [ebp + 0x6c]
call fcn.0044e8b2
cmp dword [ebp + 0x70], 7
je 0x4865c5
jmp 0x487528
push dword [ebp + 0x6c]
mov ecx, dword [ebx + 4]
call fcn.0044e47f
jmp 0x48461b
push dword [ebx + 0x10]
mov eax, dword [ebx + 4]
mov esi, dword [ebp + 0x6c]
call fcn.00446e9b
jmp 0x48401f
push dword [ebx + 0x10]
mov eax, dword [ebx + 4]
push dword [ebp + 0x6c]
call fcn.0044406a
jmp 0x48401e
push dword [ebx + 0x10]
mov eax, dword [ebx + 4]
mov esi, dword [ebp + 0x6c]
call fcn.00447740
jmp 0x48401f
mov eax, dword [ebx + 4]
mov esi, dword [ebx + 0xc]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
imul esi, esi, 0x28
add esi, dword [ebp + 0x68]
mov edx, dword [ebx + 8]
mov ecx, dword [ebx + 0x10]
mov dword [ebp + 0x54], eax
lea eax, [ebp - 0x98]
push eax
mov eax, dword [esi]
inc eax
push eax
mov eax, dword [ebp + 0x6c]
add ecx, 4
push edx
mov edx, dword [eax + 0x10]
push ecx
movzx ecx, word [ebx + 2]
shl ecx, 4
mov ecx, dword [ecx + edx + 4]
push eax
call fcn.0045ab16
mov dword [ebp + 0x4c], eax
mov eax, dword [ebp + 0x54]
add esp, 0x14
call fcn.004363bd
mov eax, dword [ebp - 0x98]
test eax, eax
je 0x486e44
cmp dword [ebp + 0x4c], 0
je 0x4865c5
dec eax
cdq
sub dword [esi], eax
push 1
push 0xffffffffffffffff
sbb dword [esi + 4], edx
push dword [ebp + 0x4c]
mov esi, dword [ebp + 0x54]
mov eax, fcn.00431858
call fcn.00448ac8
mov edi, dword [ebp + 0x7c]
add esp, 0xc
movzx eax, byte [ebp + 0x2c]
push eax
mov eax, dword [ebp + 0x54]
call fcn.00448a48
pop ecx
jmp 0x487bce
mov esi, dword [ebx + 4]
mov eax, dword [ebx + 8]
imul esi, esi, 0x28
add esi, dword [ebp + 0x68]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
test byte [esi + 8], 0x10
mov dword [ebp + 0x60], eax
jne 0x486e82
call fcn.0043ebbd
test eax, eax
jne 0x4865c5
mov edi, dword [ebp + 0x7c]
mov eax, dword [ebp + 0x60]
push dword [eax + 4]
push dword [eax]
mov eax, dword [esi + 0x10]
call fcn.0043d4ee
jmp 0x48401e
mov esi, dword [ebx + 4]
imul esi, esi, 0x28
add esi, dword [ebp + 0x68]
test byte [esi + 8], 0x10
je 0x486edc
mov eax, dword [esi + 0x10]
lea edi, [ebp - 0xdc]
call fcn.0043414f
test eax, eax
je 0x486edc
mov eax, dword [ebx + 0xc]
push dword [ebp - 0xd8]
imul eax, eax, 0x28
push dword [ebp - 0xdc]
add eax, dword [ebp + 0x68]
call fcn.0043641f
mov edi, dword [ebp + 0x7c]
pop ecx
pop ecx
jmp 0x487bce
mov eax, esi
call fcn.004363bd
mov edi, dword [ebp + 0x7c]
jmp case.0x483b90.11
mov eax, dword [ebx + 0xc]
mov esi, dword [ebx + 4]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
imul esi, esi, 0x28
add esi, dword [ebp + 0x68]
mov dword [ebp + 0x5c], eax
test byte [esi + 8], 0x10
mov eax, dword [ebx + 0x10]
mov dword [ebp + 0x64], eax
jne 0x486f1c
call fcn.0043ebbd
test eax, eax
jne 0x4865c5
mov edi, dword [ebp + 0x7c]
cmp dword [ebp + 0x64], 0
je 0x486f4c
mov eax, dword [ebp + 0x5c]
push dword [eax + 4]
push dword [eax]
mov eax, dword [esi + 0x10]
push dword [ebp + 0x64]
call fcn.0043d535
add esp, 0xc
test eax, eax
jne 0x487fd5
cmp dword [ebp + 0x64], eax
mov edi, dword [ebp + 0x7c]
jl case.0x483b90.85
mov eax, dword [ebp + 0x5c]
jmp 0x486e85
mov eax, dword [ebx + 0xc]
mov edx, dword [ebx + 0x10]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
cmp word [ebx + 2], 0
mov dword [ebp + 0x5c], edx
mov dword [ebp + 0x4c], eax
je 0x486f8e
mov ecx, dword [edi + 0xc8]
mov esi, dword [edx + 0x14]
test ecx, ecx
je 0x486f8e
cmp dword [ecx + 0x1c], esi
je 0x486f86
mov ecx, dword [ecx + 4]
test ecx, ecx
jne 0x486f7a
test ecx, ecx
jne case.0x483b90.85
mov esi, dword [edi + 0xd0]
mov ecx, dword [ebp + 0x6c]
cmp esi, dword [ecx + 0x94]
jge 0x4882dc
test byte [eax + 8], 0x10
jne 0x487093
mov eax, dword [edx + 0xc]
mov edx, dword [edx + 8]
add edx, eax
mov dword [ebp + 0x64], edx
test eax, eax
jne 0x486fc0
inc edx
mov dword [ebp + 0x64], edx
mov eax, dword [ebp + 0x64]
add eax, 2
mov esi, eax
mov dword [ebp + 0x18], eax
imul esi, esi, 0xa
mov eax, dword [ebp + 0x5c]
add esi, dword [eax + 0xc]
mov eax, dword [eax + 4]
add eax, 7
cdq
and edx, 7
add eax, edx
sar eax, 3
lea eax, [eax + esi*4]
mov dword [ebp + 0x28], eax
cdq
push edx
push eax
call fcn.004461ee
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x4865c5
mov edi, dword [ebp + 0x4c]
mov eax, edi
call fcn.004360cf
mov ecx, dword [ebp + 0x5c]
mov dword [edi + 0x10], esi
mov dword [edi + 0x24], 0x4367e0
mov eax, 0x410
mov word [edi + 8], ax
mov eax, dword [ebp + 0x28]
mov dword [edi + 0xc], eax
mov edi, dword [ebp + 0x7c]
mov eax, dword [ebp + 0x64]
mov dword [esi + 0x3c], eax
mov dword [esi], edi
mov eax, dword [ecx + 0xc]
mov dword [esi + 0x40], eax
mov eax, ebx
sub eax, dword [ebp + 0x30]
push 0x14
cdq
pop ebx
idiv ebx
mov dword [esi + 0x30], eax
mov eax, dword [edi + 0x58]
mov dword [esi + 0x10], eax
mov eax, dword [edi + 0x18]
mov dword [esi + 0x38], eax
mov eax, dword [edi + 0x60]
mov dword [esi + 0x14], eax
mov eax, dword [edi + 0x1c]
mov dword [esi + 0x2c], eax
mov eax, dword [edi + 0x68]
mov dword [esi + 8], eax
mov eax, dword [edi + 0x6c]
mov dword [esi + 0x34], eax
mov eax, dword [ecx + 0x14]
mov ecx, dword [ebp + 0x6c]
mov dword [esi + 0x1c], eax
mov eax, dword [ebp + 0x18]
imul eax, eax, 0x28
add eax, esi
mov edx, eax
lea eax, [esi + 0x50]
jmp 0x48708d
mov ebx, 0x80
mov word [eax + 8], bx
mov dword [eax + 0x20], ecx
add eax, 0x28
cmp eax, edx
jne 0x48707e
jmp 0x487096
mov esi, dword [eax + 0x10]
inc dword [edi + 0xd0]
mov eax, dword [edi + 0xc8]
mov dword [esi + 4], eax
mov eax, dword [ecx + 0x28]
mov dword [esi + 0x20], eax
mov eax, dword [ecx + 0x2c]
mov dword [esi + 0x24], eax
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x44], eax
mov eax, dword [edi]
mov eax, dword [eax + 0x64]
mov dword [esi + 0x48], eax
lea eax, [edi + 0xdc]
mov ecx, dword [eax]
mov dword [esi + 0x28], ecx
and dword [eax], 0
and dword [edi + 0x2c], 0
mov ebx, dword [ebp + 0x5c]
mov dword [edi + 0xc8], esi
lea eax, [esi + 0x50]
mov dword [edi + 0x58], eax
mov ecx, dword [esi + 0x3c]
mov dword [edi + 0x18], ecx
movzx ecx, word [esi + 0x40]
mov dword [edi + 0x1c], ecx
mov ecx, dword [edi + 0x18]
imul ecx, ecx, 0x28
mov dword [ebp + 0x68], eax
add eax, ecx
mov dword [edi + 0x60], eax
mov ecx, dword [ebx + 0xc]
lea ecx, [eax + ecx*4]
mov dword [esi + 0x18], ecx
mov eax, dword [ebx + 4]
add eax, 7
cdq
and edx, 7
add eax, edx
sar eax, 3
push eax
push 0
push ecx
call fcn.0058d7c0
mov eax, dword [ebx]
mov dword [edi + 0x68], eax
mov ecx, dword [ebx + 4]
add esp, 0xc
mov dword [ebp + 0x30], eax
mov dword [edi + 0x6c], ecx
lea ebx, [eax - 0x14]
jmp 0x487bce
mov eax, ebx
mov ecx, edi
call fcn.004374fd
mov ecx, dword [edi + 0xc8]
mov edx, dword [ecx + 0x30]
mov esi, dword [ecx + 8]
imul edx, edx, 0x14
mov edx, dword [edx + esi + 4]
add edx, dword [ebx + 4]
push 0x1000
imul edx, edx, 0x28
add edx, dword [ecx + 0x10]
push edx
jmp 0x483ff3
mov ecx, dword [ebp + 0x6c]
mov eax, dword [ecx + 0x20]
and eax, 0x80000
xor edx, edx
or eax, edx
mov eax, dword [ebx + 8]
je 0x487182
add ecx, 0x1f0
cdq
jmp 0x48718e
cmp dword [ebx + 4], edx
cdq
je 0x487198
add ecx, 0x1e8
add dword [ecx], eax
adc dword [ecx + 4], edx
jmp case.0x483b90.85
add dword [edi + 0x40], eax
adc dword [edi + 0x44], edx
jmp case.0x483b90.85
cmp dword [ebx + 4], 0
je 0x4871cf
mov eax, dword [ebp + 0x6c]
mov ecx, dword [eax + 0x1e8]
or ecx, dword [eax + 0x1ec]
jne case.0x483b90.85
mov ecx, dword [eax + 0x1f0]
or ecx, dword [eax + 0x1f4]
jmp 0x484b24
mov eax, dword [edi + 0x40]
or eax, dword [edi + 0x44]
jne case.0x483b90.85
mov eax, dword [ebp + 0x6c]
jmp 0x4871be
mov ecx, dword [edi + 0xc8]
test ecx, ecx
jne 0x48723c
mov eax, dword [ebx + 4]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
mov esi, eax
mov dword [ebp + 0x54], eax
call fcn.0043626b
mov esi, dword [ebx + 8]
imul esi, esi, 0x28
add esi, dword [ebp + 0x68]
call fcn.0043626b
mov ecx, dword [ebp + 0x54]
mov eax, dword [esi]
mov esi, dword [esi + 4]
mov ecx, dword [ecx + 4]
cmp ecx, esi
jg 0x487fe2
jl 0x48722d
mov ecx, dword [ebp + 0x54]
mov ecx, dword [ecx]
cmp ecx, eax
jae 0x487fe2
mov ecx, dword [ebp + 0x54]
mov dword [ecx], eax
mov dword [ecx + 4], esi
jmp case.0x483b90.85
mov ecx, eax
mov eax, dword [ecx + 4]
test eax, eax
jne 0x48723a
mov eax, dword [ebx + 4]
imul eax, eax, 0x28
add eax, dword [ecx + 0x10]
jmp 0x4871f3
mov ecx, dword [ebx + 4]
imul ecx, ecx, 0x28
add ecx, dword [ebp + 0x68]
mov esi, dword [ecx + 4]
mov eax, dword [ecx]
mov dword [ebp - 0x170], eax
test esi, esi
jl case.0x483b90.85
jg 0x487274
test eax, eax
jbe case.0x483b90.85
mov eax, dword [ebx + 0xc]
mov edi, dword [ebp - 0x170]
cdq
sub edi, eax
sbb esi, edx
mov dword [ecx], edi
mov dword [ecx + 4], esi
jmp 0x487fd5
mov eax, dword [ebx + 0xc]
mov esi, dword [ebx + 4]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
imul esi, esi, 0x28
add esi, dword [ebp + 0x68]
mov dword [ebp + 0x5c], eax
mov eax, ebx
mov ecx, edi
call fcn.004374fd
mov ecx, dword [esi]
mov esi, dword [esi + 4]
mov dword [ebp + 0x58], eax
mov dword [ebp - 0x88], ecx
mov dword [ebp - 0x84], esi
test esi, esi
jl 0x487307
jg 0x4872c8
test ecx, ecx
jbe 0x487307
mov eax, dword [ebp + 0x5c]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
test eax, eax
jl 0x4872da
jg 0x4872de
test ecx, ecx
ja 0x4872de
xor ecx, ecx
xor eax, eax
push eax
push ecx
lea edi, [ebp - 0x88]
call fcn.00432726
pop ecx
test eax, eax
mov eax, dword [ebp + 0x58]
pop ecx
jne 0x487307
mov ecx, dword [ebp - 0x88]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x84]
jmp 0x4862bc
or dword [eax], 0xffffffff
or dword [eax + 4], 0xffffffff
jmp 0x487fe2
mov eax, dword [ebx + 4]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov esi, ecx
or esi, edx
je case.0x483b90.85
test edx, edx
jl 0x487fd5
jg 0x48733d
test ecx, ecx
jbe 0x487fd5
sub ecx, 1
sbb edx, 0
mov dword [eax], ecx
mov dword [eax + 4], edx
jmp 0x487fd5
mov eax, dword [ebx + 4]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
mov ecx, dword [eax + 4]
cmp ecx, 0x80000000
mov edx, dword [eax]
jl 0x487374
jg 0x487369
test edx, edx
jbe 0x487374
sub edx, 1
sbb ecx, 0
mov dword [eax], edx
mov dword [eax + 4], ecx
mov ecx, dword [eax]
or ecx, dword [eax + 4]
jmp 0x484b24
movzx eax, word [ebx + 2]
mov ecx, dword [ebp + 0x6c]
mov dword [ebp + 0x4c], eax
lea eax, [eax*4 + 0x44]
push 0
push eax
call fcn.0043c3d9
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x4865c5
mov eax, dword [ebp + 0x4c]
push dword [ebp + 0x6c]
and dword [esi + 8], 0
xor ecx, ecx
lea eax, [esi + eax*4 + 0x1c]
inc ecx
mov dword [esi], eax
call fcn.004363ad
mov eax, dword [ebx + 0x10]
mov dword [esi + 4], eax
mov eax, ebx
sub eax, dword [ebp + 0x30]
pop ecx
cdq
push 0x14
pop ecx
idiv ecx
mov edi, dword [ebp + 0x7c]
and dword [esi + 0x14], 0
mov dword [esi + 0xc], edi
mov byte [esi + 0x18], 0
mov dword [esi + 0x10], eax
mov al, byte [ebp + 0x4c]
mov byte [esi + 0x19], al
mov byte [ebx + 1], 0xf0
mov dword [ebx + 0x10], esi
mov byte [ebx], 0x9b
mov eax, dword [ebx + 0xc]
mov esi, dword [ebx + 0x10]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
cmp dword [esi + 8], eax
je 0x487432
movzx ecx, byte [esi + 0x19]
dec ecx
mov dword [esi + 8], eax
mov dword [ebp + 0x4c], ecx
js 0x487432
lea edx, [esi + ecx*4 + 0x1c]
mov dword [ebp + 0x64], edx
mov edx, dword [ebx + 8]
add edx, ecx
mov ecx, dword [ebp + 0x64]
imul edx, edx, 0x28
add edx, dword [ebp + 0x68]
sub dword [ebp + 0x64], 4
mov dword [ecx], edx
mov ecx, dword [ebp + 0x4c]
dec ecx
mov dword [ebp + 0x4c], ecx
test ecx, ecx
jge 0x487413
inc dword [eax + 0xc]
cmp dword [ebx + 4], 0
mov eax, dword [esi + 4]
lea ecx, [esi + 0x1c]
push ecx
movzx ecx, byte [esi + 0x19]
push ecx
push esi
je 0x48744d
call dword [eax + 0x1c]
jmp 0x487450
call dword [eax + 0x10]
mov eax, dword [esi + 0x14]
add esp, 0xc
test eax, eax
je 0x487fe2
jle 0x48747e
push dword [esi]
call fcn.00448fd6
mov edi, dword [ebp + 0x7c]
push eax
push 0x653908
call fcn.0044cce5
mov eax, dword [esi + 0x14]
add esp, 0xc
mov dword [ebp + 0x70], eax
cmp byte [esi + 0x18], 0
je 0x4874a0
mov eax, dword [ebx - 0x10]
test eax, eax
je 0x48749c
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
push 0
push 1
call fcn.0043641f
pop ecx
pop ecx
mov byte [esi + 0x18], 0
mov eax, dword [esi]
call fcn.004360cf
mov eax, dword [esi]
xor ecx, ecx
inc ecx
mov word [eax + 8], cx
and dword [esi + 0x14], 0
jmp 0x485701
mov esi, dword [ebx + 4]
mov edi, dword [ebx + 0xc]
imul esi, esi, 0x28
add esi, dword [ebp + 0x68]
test edi, edi
je 0x4874e4
imul edi, edi, 0x28
add edi, dword [ebp + 0x68]
push esi
mov esi, dword [ebx + 0x10]
call fcn.0043eb88
mov esi, dword [ebx + 0xc]
imul esi, esi, 0x28
add esi, dword [ebp + 0x68]
pop ecx
jmp 0x4874ec
mov edi, dword [ebx + 0x10]
call fcn.00436009
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x4882f5
movzx eax, byte [ebp + 0x2c]
push eax
mov eax, esi
call fcn.00448a48
pop ecx
mov ecx, esi
call fcn.004364b1
test eax, eax
je 0x487fe2
mov edi, dword [ebp + 0x7c]
push str.string_or_blob_too_big
call fcn.0044cce5
mov dword [ebp + 0x70], 0x12
pop ecx
mov eax, dword [ebp + 0x6c]
cmp byte [eax + 0x51], 0
je 0x487538
mov dword [ebp + 0x70], 7
mov eax, dword [ebp + 0x7c]
cmp dword [eax + 0x7c], 0
jne 0x487562
cmp dword [ebp + 0x70], 0xc0a
je 0x487562
mov edx, dword [ebp + 0x70]
call fcn.0043b9ac
mov edi, dword [ebp + 0x7c]
push eax
push 0x653908
call fcn.0044cce5
pop ecx
pop ecx
mov eax, dword [ebp + 0x70]
mov edi, dword [ebp + 0x7c]
mov esi, dword [ebp + 0x6c]
mov dword [edi + 0x28], eax
call fcn.00431be2
push dword [edi + 0x7c]
mov eax, ebx
push dword [edi + 0xc0]
sub eax, dword [ebp + 0x30]
push 0x14
pop ecx
cdq
idiv ecx
push eax
push str.statement_aborts_at__d:___s___s
push dword [ebp + 0x70]
call fcn.0044b57a
add esp, 0x14
call fcn.00476e0a
cmp dword [ebp + 0x70], 0xc0a
jne 0x4875ad
push esi
call fcn.0043190f
pop ecx
cmp byte [ebp + 0x1f], 0
mov dword [ebp + 0x70], 1
jbe 0x4875c4
movzx eax, byte [ebp + 0x1f]
dec eax
call fcn.0044e860
mov edi, dword [ebp - 4]
mov esi, dword [ebp + 0x6c]
cmp dword [ebp - 0x2c], edi
jb 0x488356
ja 0x4875e1
mov eax, dword [ebp - 0x30]
cmp eax, dword [ebp - 8]
jb 0x488356
mov eax, dword [esi + 0x158]
test eax, eax
je 0x488356
mov ecx, dword [esi + 0x160]
add dword [ebp - 8], ecx
push dword [esi + 0x15c]
adc edi, 0
call eax
pop ecx
test eax, eax
je 0x4875ca
or dword [ebp - 8], 0xffffffff
or dword [ebp - 4], 0xffffffff
mov dword [ebp + 0x70], 9
jmp 0x487528
mov esi, dword [ebp + 0x6c]
and dword [ebp - 0x94], 0
or dword [ebp - 0x8c], 0xffffffff
or dword [ebp - 0x90], 0xffffffff
lea eax, [ebp - 0x8c]
push eax
lea eax, [ebp - 0x90]
push eax
push dword [ebx + 8]
push dword [ebx + 4]
call fcn.004622c5
add esp, 0x10
mov dword [ebp + 0x70], eax
test eax, eax
je 0x48766e
cmp eax, 5
jne 0x487528
and dword [ebp + 0x70], 0
mov dword [ebp - 0x94], 1
mov esi, dword [ebx + 0xc]
and dword [ebp + 0x5c], 0
imul esi, esi, 0x28
add esi, dword [ebp + 0x68]
mov eax, dword [ebp + 0x5c]
mov eax, dword [ebp + eax*4 - 0x94]
cdq
push edx
push eax
mov eax, esi
call fcn.0043641f
inc dword [ebp + 0x5c]
pop ecx
add esi, 0x28
cmp dword [ebp + 0x5c], 3
pop ecx
jl 0x48767b
jmp case.0x483b90.85
mov eax, ebx
mov ecx, edi
call fcn.004374fd
mov edi, dword [ebp + 0x6c]
mov edx, dword [edi + 0x10]
mov ecx, dword [ebx + 0xc]
mov esi, eax
mov eax, dword [ebx + 4]
shl eax, 4
mov eax, dword [eax + edx + 4]
mov dword [ebp + 0x60], ecx
mov dword [ebp + 0x4c], eax
call fcn.00435e00
mov dword [ebp + 0x44], eax
call fcn.00434bde
mov dword [ebp + 0x34], eax
cmp ecx, 0xffffffff
jne 0x4876de
mov dword [ebp + 0x60], eax
mov eax, dword [ebp + 0x44]
call fcn.00434be3
test eax, eax
jne 0x4876f0
mov eax, dword [ebp + 0x34]
mov dword [ebp + 0x60], eax
mov eax, dword [ebp + 0x44]
push 1
call fcn.00434ba0
add esp, 4
cmp dword [ebp + 0x60], 5
jne 0x487720
push eax
call fcn.00431bb3
pop ecx
test eax, eax
je 0x48771a
mov eax, dword [ebp + 0x44]
call fcn.00434c09
test eax, eax
jne 0x487720
mov eax, dword [ebp + 0x34]
mov dword [ebp + 0x60], eax
mov eax, dword [ebp + 0x34]
cmp dword [ebp + 0x60], eax
je 0x487793
push 5
pop ecx
cmp eax, ecx
je 0x487734
cmp dword [ebp + 0x60], ecx
jne 0x487793
cmp byte [edi + 0x4f], 0
je 0x488311
cmp dword [edi + 0xb4], 1
jg 0x488311
cmp eax, ecx
jne 0x487765
mov eax, dword [ebp + 0x44]
push edi
call fcn.00462cbe
pop ecx
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487799
mov ecx, dword [ebp + 0x60]
jmp 0x48776d
cmp eax, 4
jne 0x487775
push 2
pop ecx
mov edi, dword [ebp + 0x44]
call fcn.0046b90a
cmp dword [ebp + 0x70], 0
jne 0x487799
xor eax, eax
cmp dword [ebp + 0x60], 5
sete al
inc eax
push eax
push dword [ebp + 0x4c]
call fcn.0046bee3
pop ecx
pop ecx
mov dword [ebp + 0x70], eax
cmp dword [ebp + 0x70], 0
je 0x48779f
mov eax, dword [ebp + 0x34]
mov dword [ebp + 0x60], eax
mov ecx, dword [ebp + 0x60]
mov edi, dword [ebp + 0x44]
call fcn.0046b90a
mov ecx, 0xa02
mov word [esi + 8], cx
call fcn.0043996e
push eax
mov dword [esi + 0x10], eax
call fcn.00431bb3
mov dword [esi + 0xc], eax
movzx eax, byte [ebp + 0x2c]
push eax
mov eax, esi
mov byte [esi + 0xa], 1
call fcn.00448a48
pop ecx
jmp 0x486103
mov eax, dword [ebx + 8]
test eax, eax
je 0x4877e9
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
jmp 0x4877eb
xor eax, eax
push eax
push dword [ebx + 4]
lea eax, [edi + 0x7c]
push dword [ebp + 0x6c]
push eax
call fcn.004831f4
add esp, 0x10
jmp 0x48461c
mov eax, dword [ebx + 4]
mov ecx, dword [ebp + 0x6c]
mov ecx, dword [ecx + 0x10]
shl eax, 4
push dword [eax + ecx + 4]
call fcn.00463434
pop ecx
mov dword [ebp + 0x70], eax
test eax, eax
je 0x487fe2
cmp eax, 0x65
jne 0x487528
and dword [ebp + 0x70], 0
jmp 0x487fd5
cmp dword [ebx + 4], 0
jne 0x48784c
mov edx, dword [ebx + 8]
mov eax, dword [ebp + 0x6c]
call fcn.00436e74
jmp case.0x483b90.85
mov ecx, dword [ebx + 8]
inc ecx
lea eax, [edi + 0x98]
xor ecx, dword [eax]
and ecx, 3
xor dword [eax], ecx
jmp case.0x483b90.85
mov eax, dword [ebx + 4]
mov ecx, dword [edi + 0x60]
mov eax, dword [ecx + eax*4]
mov eax, dword [eax + 0x28]
call fcn.00435ca7
jmp case.0x483b90.85
mov eax, dword [ebx + 4]
mov ecx, dword [edi + 0x60]
mov eax, dword [ecx + eax*4]
mov eax, dword [eax + 0x28]
call fcn.00435cac
jmp case.0x483b90.85
mov al, byte [ebx + 0xc]
test al, al
jne 0x4878b5
mov ecx, dword [ebp + 0x6c]
mov ecx, dword [ecx + 0x20]
and ecx, 0x400
push 0
mov dword [ebp + 0x48], ecx
pop ecx
jne case.0x483b90.85
test ecx, ecx
jne case.0x483b90.85
mov ecx, dword [ebx + 4]
mov edx, dword [ebp + 0x6c]
mov edx, dword [edx + 0x10]
push dword [ebx + 8]
shl ecx, 4
mov ecx, dword [ecx + edx + 4]
call fcn.0043eb3a
pop ecx
mov dword [ebp + 0x70], eax
test eax, eax
je case.0x483b90.85
cmp al, 6
jne 0x487528
push dword [ebx + 0x10]
push str.database_table_is_locked:__s
jmp 0x48832d
mov esi, dword [ebx + 0x10]
mov eax, dword [ebp + 0x6c]
push esi
call fcn.00445066
pop ecx
mov dword [ebp + 0x70], eax
test esi, esi
je 0x485701
mov esi, dword [esi + 8]
mov edi, dword [ebp + 0x7c]
call fcn.00442cd2
jmp 0x485701
push 0x28
lea eax, [ebp - 0x240]
push 0
push eax
call fcn.0058d7c0
mov edi, dword [ebx + 8]
mov esi, dword [ebp + 0x6c]
imul edi, edi, 0x28
add edi, dword [ebp + 0x68]
lea eax, [ebp - 0x240]
mov dword [ebp - 0x220], esi
call fcn.0044661f
mov dword [ebp + 0x70], eax
lea eax, [ebp - 0x240]
push eax
call fcn.00448fd6
add esp, 0x10
test eax, eax
je 0x487970
mov ecx, dword [ebp + 0x7c]
add ecx, 0x7c
push ecx
push eax
mov eax, dword [ebx + 4]
mov ecx, esi
call fcn.004520d7
pop ecx
pop ecx
mov dword [ebp + 0x70], eax
lea eax, [ebp - 0x240]
call fcn.004360cf
jmp 0x486104
mov eax, dword [ebp + 0x6c]
lea esi, [eax + 0xc0]
inc dword [esi]
push dword [ebx + 0x10]
push eax
mov eax, dword [ebx + 4]
call fcn.0044779a
dec dword [esi]
pop ecx
jmp 0x48461b
and dword [ebp + 0x44], 0
mov eax, dword [ebx + 0x10]
mov esi, dword [eax + 8]
test esi, esi
je 0x48834a
mov eax, dword [esi]
mov dword [ebp + 0x4c], eax
test eax, eax
je 0x48834a
lea eax, [ebp + 0x44]
push eax
mov eax, dword [ebp + 0x4c]
push esi
call dword [eax + 0x18]
mov edi, dword [ebp + 0x7c]
pop ecx
pop ecx
mov dword [ebp + 0x70], eax
call fcn.00442cd2
cmp dword [ebp + 0x70], 0
jne 0x487528
mov eax, dword [ebp + 0x44]
push 2
push 0xffffffffffffffff
mov dword [eax], esi
mov eax, dword [ebx + 4]
push 0
push edi
call fcn.004733e0
add esp, 0x10
test eax, eax
je 0x48833b
mov ecx, dword [ebp + 0x44]
mov dword [eax + 0x28], ecx
inc dword [esi + 4]
jmp case.0x483b90.85
mov eax, dword [ebx + 0xc]
mov edx, dword [edi + 0x60]
imul eax, eax, 0x28
mov ecx, dword [ebx + 4]
mov ecx, dword [edx + ecx*4]
add eax, dword [ebp + 0x68]
mov edi, dword [edi + 0x5c]
mov edx, dword [eax]
mov dword [ebp - 0x3c], ecx
mov ecx, dword [ecx + 0x28]
mov esi, dword [ecx]
mov dword [ebp + 0x4c], ecx
mov ecx, dword [esi]
mov dword [ebp + 0x28], ecx
mov ecx, dword [eax + 0x28]
mov dword [ebp + 0x18], edx
xor edx, edx
test ecx, ecx
jle 0x487a4e
add eax, 0x50
mov dword [edi + edx*4], eax
inc edx
add eax, 0x28
cmp edx, ecx
jl 0x487a43
mov eax, dword [ebp + 0x28]
push edi
push ecx
push dword [ebx + 0x10]
push dword [ebp + 0x18]
push dword [ebp + 0x4c]
call dword [eax + 0x20]
mov edi, dword [ebp + 0x7c]
add esp, 0x14
mov dword [ebp + 0x70], eax
call fcn.00442cd2
cmp dword [ebp + 0x70], 0
jne 0x487528
push dword [ebp + 0x4c]
mov eax, dword [ebp + 0x28]
call dword [eax + 0x28]
pop ecx
mov ecx, dword [ebp - 0x3c]
mov byte [ecx + 2], 0
test eax, eax
jne 0x487fd5
jmp case.0x483b90.85
mov esi, dword [ebx + 0xc]
mov eax, dword [ebx + 4]
imul esi, esi, 0x28
mov ecx, dword [edi + 0x60]
mov eax, dword [ecx + eax*4]
add esi, dword [ebp + 0x68]
cmp byte [eax + 2], 0
mov dword [ebp + 0x4c], eax
mov dword [ebp + 0x64], esi
jne 0x484057
mov eax, dword [eax + 0x28]
mov edi, dword [eax]
mov eax, dword [edi]
push 0x20
mov dword [ebp + 0x28], eax
lea eax, [ebp - 0x1a0]
push 0
push eax
call fcn.0058d7c0
add esp, 0xc
test byte [ebx + 2], 1
mov dword [ebp - 0x1a0], esi
je 0x487af1
mov eax, esi
call fcn.004363bd
and dword [esi], 0
mov eax, 0x4001
jmp 0x487b01
mov ax, word [esi + 8]
mov ecx, 0x3e40
and ax, cx
or ax, 1
mov word [esi + 8], ax
push dword [ebx + 8]
lea eax, [ebp - 0x1a0]
push eax
mov eax, dword [ebp + 0x4c]
push dword [eax + 0x28]
mov eax, dword [ebp + 0x28]
call dword [eax + 0x2c]
mov esi, edi
mov edi, dword [ebp + 0x7c]
add esp, 0xc
mov dword [ebp + 0x70], eax
call fcn.00442cd2
cmp dword [ebp - 0x18c], 0
jle 0x487b53
push dword [ebp + 0x64]
call fcn.00448fd6
push eax
push 0x653908
call fcn.0044cce5
mov eax, dword [ebp - 0x18c]
add esp, 0xc
mov dword [ebp + 0x70], eax
movzx eax, byte [ebp + 0x2c]
push eax
mov eax, dword [ebp + 0x64]
call fcn.00448a48
pop ecx
mov ecx, dword [ebp + 0x64]
call fcn.004364b1
test eax, eax
jne 0x487513
jmp 0x486104
mov eax, dword [ebx + 4]
mov ecx, dword [edi + 0x60]
mov eax, dword [ecx + eax*4]
cmp byte [eax + 2], 0
mov dword [ebp + 0x4c], eax
jne case.0x483b90.85
mov eax, dword [eax + 0x28]
mov esi, dword [eax]
mov ecx, dword [esi]
push eax
mov dword [ebp + 0x28], ecx
call dword [ecx + 0x24]
mov edi, dword [ebp + 0x7c]
pop ecx
mov dword [ebp + 0x70], eax
call fcn.00442cd2
cmp dword [ebp + 0x70], 0
jne 0x487528
mov eax, dword [ebp + 0x4c]
push dword [eax + 0x28]
mov eax, dword [ebp + 0x28]
call dword [eax + 0x28]
pop ecx
test eax, eax
jne 0x487bce
mov eax, dword [ebx + 8]
mov ecx, dword [ebp + 0x30]
imul eax, eax, 0x14
lea ebx, [eax + ecx - 0x14]
mov eax, dword [ebp + 0x6c]
mov eax, dword [eax + 0x110]
test eax, eax
jne 0x487610
mov eax, dword [ebp - 0x2c]
cmp eax, dword [ebp - 4]
jb 0x487fe2
ja 0x487bf9
mov eax, dword [ebp - 0x30]
cmp eax, dword [ebp - 8]
jb 0x487fe2
mov esi, dword [ebp + 0x6c]
mov eax, dword [esi + 0x158]
test eax, eax
je 0x487fe2
mov ecx, dword [esi + 0x160]
add dword [ebp - 8], ecx
push dword [esi + 0x15c]
adc dword [ebp - 4], 0
call eax
pop ecx
test eax, eax
jne 0x487608
mov eax, dword [ebp - 4]
cmp dword [ebp - 0x2c], eax
ja 0x487bfc
jb case.0x483b90.85
mov eax, dword [ebp - 8]
cmp dword [ebp - 0x30], eax
jae 0x487bfc
jmp case.0x483b90.85
mov esi, dword [ebp + 0x6c]
mov ecx, dword [esi + 0x20]
mov eax, 0x4000000
or dword [esi + 0x20], eax
and ecx, eax
mov eax, dword [esi + 0x24]
mov dword [esi + 0x24], eax
mov edi, dword [ebx + 4]
mov eax, dword [ebx + 0x10]
imul edi, edi, 0x28
mov eax, dword [eax + 8]
add edi, dword [ebp + 0x68]
mov dword [ebp + 0x4c], eax
push 1
mov eax, edi
mov dword [ebp + 0x28], ecx
call fcn.00448a48
pop ecx
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487528
mov eax, dword [ebp + 0x4c]
push dword [edi + 0x10]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x4c]
cmp dword [ebp + 0x28], 0
pop ecx
pop ecx
mov dword [ebp + 0x70], eax
jne 0x487ca7
mov eax, dword [esi + 0x24]
and dword [esi + 0x20], 0xfbffffff
mov dword [esi + 0x24], eax
mov esi, dword [ebp + 0x4c]
mov edi, dword [ebp + 0x7c]
call fcn.00442cd2
mov eax, edi
and dword [eax + 0x98], 0xfffffffc
cmp dword [ebp + 0x70], 0
jne 0x487528
jmp case.0x483b90.85
mov eax, dword [ebp + 0x6c]
cmp byte [eax + 0x51], 0
jne 0x4865c5
mov eax, dword [ebx + 0x10]
mov eax, dword [eax + 8]
mov dword [ebp + 0x4c], eax
test eax, eax
je 0x48834a
mov edi, dword [eax]
test edi, edi
je 0x48834a
cmp dword [edi + 0x34], 0
mov esi, dword [ebx + 8]
je 0x487fe2
mov eax, dword [ebp + 0x6c]
mov al, byte [eax + 0x56]
and dword [ebp + 0x5c], 0
mov byte [ebp + 0x3b], al
mov eax, dword [ebp + 0x7c]
mov ecx, dword [eax + 0x5c]
mov eax, dword [ebx + 0xc]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
test esi, esi
jle 0x487d30
mov edx, dword [ebp + 0x5c]
mov dword [ecx + edx*4], eax
add eax, 0x28
inc dword [ebp + 0x5c]
cmp dword [ebp + 0x5c], esi
jl 0x487d1f
mov al, byte [ebx + 2]
mov edx, dword [ebp + 0x6c]
mov byte [edx + 0x56], al
lea eax, [ebp - 0xd4]
push eax
push ecx
push esi
mov esi, dword [ebp + 0x4c]
push esi
call dword [edi + 0x34]
mov ecx, dword [ebp + 0x6c]
mov edi, dword [ebp + 0x7c]
mov dword [ebp + 0x70], eax
mov al, byte [ebp + 0x3b]
add esp, 0x10
mov byte [ecx + 0x56], al
call fcn.00442cd2
cmp dword [ebp + 0x70], 0
jne 0x487d81
cmp dword [ebx + 4], 0
je 0x487d81
mov ecx, dword [ebp - 0xd4]
mov eax, dword [ebp + 0x6c]
mov dword [eax + 0x28], ecx
mov ecx, dword [ebp - 0xd0]
mov dword [eax + 0x2c], ecx
cmp byte [ebp + 0x70], 0x13
jne 0x487dbe
mov eax, dword [ebx + 0x10]
cmp byte [eax + 0x10], 0
je 0x487dbe
movzx eax, word [ebx + 2]
cmp ax, 4
jne 0x487da3
and dword [ebp + 0x70], 0
jmp case.0x483b90.85
cmp ax, 5
jne 0x487dae
push 2
pop eax
jmp 0x487db1
movzx eax, ax
mov ecx, edi
mov byte [ecx + 0x92], al
jmp 0x485701
mov eax, edi
inc dword [eax + 0x2c]
jmp 0x485701
mov eax, ebx
mov ecx, edi
call fcn.004374fd
mov edx, dword [ebp + 0x6c]
mov edx, dword [edx + 0x10]
mov ecx, eax
mov eax, dword [ebx + 4]
shl eax, 4
mov eax, dword [eax + edx + 4]
call fcn.00435b2a
mov dword [ecx], eax
and dword [ecx + 4], 0
jmp case.0x483b90.85
mov eax, ebx
mov ecx, edi
call fcn.004374fd
mov ecx, dword [ebp + 0x6c]
mov ecx, dword [ecx + 0x10]
mov dword [ebp + 0x58], eax
mov eax, dword [ebx + 4]
shl eax, 4
mov esi, dword [eax + ecx + 4]
mov ecx, dword [ebx + 0xc]
xor eax, eax
test ecx, ecx
je 0x487e25
mov eax, esi
call fcn.00435b2a
cmp eax, ecx
jae 0x487e25
mov eax, ecx
push eax
call fcn.0043e9d4
pop ecx
mov ecx, dword [ebp + 0x58]
jmp 0x487de8
mov eax, dword [ebx + 0xc]
mov esi, dword [ebx + 0x10]
imul eax, eax, 0x28
add eax, dword [ebp + 0x68]
mov dword [ebp + 0x58], eax
cmp dword [esi], eax
je 0x487e79
movzx ecx, byte [esi + 0x19]
dec ecx
mov dword [esi + 0xc], edi
mov dword [esi], eax
mov dword [ebp + 0x4c], ecx
js 0x487e79
lea edx, [esi + ecx*4 + 0x1c]
mov dword [ebp + 0x64], edx
mov edx, dword [ebx + 8]
add edx, ecx
mov ecx, dword [ebp + 0x64]
imul edx, edx, 0x28
add edx, dword [ebp + 0x68]
sub dword [ebp + 0x64], 4
mov dword [ecx], edx
mov ecx, dword [ebp + 0x4c]
dec ecx
mov dword [ebp + 0x4c], ecx
test ecx, ecx
jge 0x487e5a
mov cx, word [eax + 8]
mov edx, 0x3e40
and cx, dx
or cx, 1
mov word [eax + 8], cx
mov eax, dword [esi + 4]
lea ecx, [esi + 0x1c]
push ecx
movzx ecx, byte [esi + 0x19]
push ecx
push esi
call dword [eax + 0x10]
mov eax, dword [esi + 0x14]
add esp, 0xc
test eax, eax
je 0x487eed
jle 0x487ec8
push dword [ebp + 0x58]
call fcn.00448fd6
mov edi, dword [ebp + 0x7c]
push eax
push 0x653908
call fcn.0044cce5
mov eax, dword [esi + 0x14]
add esp, 0xc
mov dword [ebp + 0x70], eax
push dword [ebx + 4]
lea eax, [edi + 0xdc]
push dword [esi + 0x10]
push dword [ebp + 0x6c]
call fcn.0043686c
and dword [esi + 0x14], 0
add esp, 0xc
cmp dword [ebp + 0x70], 0
jne 0x487528
mov esi, dword [ebp + 0x58]
test byte [esi + 8], 0x12
je 0x487fe2
jmp 0x4874f7
mov esi, dword [ebp + 0x6c]
mov cl, byte [esi + 0x58]
test cl, 0x41
je 0x487f96
cmp byte [edi + 0x95], 0
jne 0x487f96
mov eax, dword [ebx + 0x10]
test eax, eax
jne 0x487f28
mov eax, dword [edi + 0xc0]
test eax, eax
je 0x487f96
push eax
test cl, 0x40
je 0x487f4f
mov ecx, edi
call fcn.004491f6
push eax
push dword [esi + 0xd0]
mov dword [ebp + 0x4c], eax
call dword [esi + 0xcc]
push dword [ebp + 0x4c]
call fcn.00431858
jmp 0x487f93
cmp dword [esi + 0xbc], 1
jle 0x487f84
push str.____s
call fcn.0044b440
push eax
push edi
push dword [esi + 0xd0]
mov dword [ebp + 0x4c], eax
push 1
call dword [esi + 0xcc]
mov ecx, dword [ebp + 0x4c]
add esp, 0x18
mov eax, esi
call fcn.00431905
jmp 0x487f96
push edi
push dword [esi + 0xd0]
push 1
call dword [esi + 0xcc]
add esp, 0x10
mov eax, dword [ebx + 4]
cmp eax, dword [0x6b5a5c]
jl 0x487fcc
cmp byte [ebx], 0xaa
je case.0x483b90.85
xor edx, edx
inc edx
cmp dword [edi + 0x6c], edx
jle 0x487fc8
push 0x14
pop ecx
mov eax, dword [edi + 0x68]
add eax, ecx
cmp byte [eax], 0x11
jne 0x487fbf
and dword [eax + 4], 0
inc edx
add ecx, 0x14
cmp edx, dword [edi + 0x6c]
jl 0x487fb1
and dword [ebx + 4], 0
inc dword [ebx + 4]
inc dword [edi + 0xbc]
mov eax, dword [ebx + 8]
mov ecx, dword [ebp + 0x30]
imul eax, eax, 0x14
lea ebx, [eax + ecx - 0x14]
mov edi, dword [ebp + 0x7c]
add ebx, 0x14
xor ecx, ecx
jmp 0x483b78
push str.cannot_open_savepoint___SQL_statements_in_progress
mov edi, dword [ebp + 0x7c]
call fcn.0044cce5
mov dword [ebp + 0x70], 5
jmp 0x487527
push dword [ebp + 0x5c]
mov edi, dword [ebp + 0x7c]
push str.no_such_savepoint:__s
call fcn.0044cce5
pop ecx
mov dword [ebp + 0x70], 1
jmp 0x487527
push str.cannot_release_savepoint___SQL_statements_in_progress
jmp 0x487ff4
mov dword [ebp + 0x70], 7
jmp 0x486d5f
mov ecx, dword [ebx + 4]
mov dword [edi + 0x28], ecx
cmp dword [edi + 0x28], 0
mov cl, byte [ebx + 8]
mov byte [edi + 0x92], cl
mov dword [edi + 0x24], eax
je 0x4880bd
movzx eax, word [ebx + 2]
mov edi, dword [ebp + 0x7c]
test ax, ax
je 0x488092
movzx eax, ax
push dword [eax*4 + 0x64ea64]
push str._s_constraint_failed
call fcn.0044cce5
mov eax, dword [ebx + 0x10]
pop ecx
pop ecx
test eax, eax
je 0x4880a1
mov esi, dword [ebp + 0x6c]
push eax
push dword [edi + 0x7c]
push str._z:__s
call fcn.0044b440
add esp, 0xc
mov dword [edi + 0x7c], eax
jmp 0x4880a1
push dword [ebx + 0x10]
push 0x653908
call fcn.0044cce5
pop ecx
pop ecx
push dword [edi + 0x7c]
push dword [edi + 0xc0]
push dword [ebp + 0x4c]
push str.abort_at__d_in___s_:__s
push dword [ebx + 4]
call fcn.0044b57a
add esp, 0x14
mov edi, dword [ebp + 0x7c]
call fcn.00476e0a
mov dword [ebp + 0x70], eax
push 5
pop eax
cmp dword [ebp + 0x70], eax
je 0x4881b1
mov eax, dword [edi + 0x28]
neg eax
sbb eax, eax
and eax, 0xffffff9c
add eax, 0x65
mov dword [ebp + 0x70], eax
jmp 0x4875c4
push 0
mov eax, edi
call fcn.0044cf3f
pop ecx
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x487528
push 1
mov eax, edi
call fcn.0046c1b3
mov eax, dword [edi + 0x20]
inc eax
inc eax
or eax, 1
mov dword [edi + 0x20], eax
mov eax, dword [ebx + 4]
imul eax, eax, 0x28
pop ecx
mov ecx, dword [ebp + 0x68]
add eax, ecx
mov dword [edi + 0x78], eax
xor edi, edi
cmp dword [ebx + 8], edi
jle 0x488152
mov esi, eax
mov eax, 0x1000
test word [esi + 8], ax
je 0x488142
call fcn.004465d8
test eax, eax
jne 0x4865c5
mov eax, esi
call fcn.004424d3
inc edi
add esi, 0x28
cmp edi, dword [ebx + 8]
jl 0x48812a
mov eax, dword [ebp + 0x6c]
cmp byte [eax + 0x51], 0
jne 0x4865c5
test byte [eax + 0x58], 4
je 0x48817b
push 0
push dword [ebp + 0x7c]
push dword [eax + 0xd0]
push 4
call dword [eax + 0xcc]
add esp, 0x10
mov eax, ebx
sub eax, dword [ebp + 0x30]
push 0x14
cdq
pop ecx
idiv ecx
mov ecx, dword [ebp + 0x7c]
mov dword [ebp + 0x70], 0x64
inc eax
mov dword [ecx + 0x24], eax
jmp 0x4875c4
mov eax, ebx
sub eax, dword [ebp + 0x30]
push 0x14
cdq
pop ecx
idiv ecx
push 5
mov dword [edi + 0x24], eax
pop eax
mov byte [esi + 0x4f], 0
mov dword [ebp + 0x70], eax
mov dword [edi + 0x28], eax
jmp 0x4875c4
mov esi, dword [ebp + 0x6c]
movzx edx, byte [esi + 0x4f]
mov eax, dword [ebx + 4]
mov ecx, dword [ebx + 8]
mov dword [ebp + 0x4c], eax
cmp eax, edx
je 0x48825e
test ecx, ecx
je 0x4881e8
push 0x204
mov eax, esi
call fcn.00473166
pop ecx
mov byte [esi + 0x4f], 1
jmp 0x48821c
test eax, eax
je 0x4881ff
cmp dword [esi + 0xb8], 0
jle 0x4881ff
push str.cannot_commit_transaction___SQL_statements_in_progress
jmp 0x487ff4
push 1
mov eax, edi
call fcn.0044cf3f
pop ecx
mov dword [ebp + 0x70], eax
test eax, eax
jne 0x4875c4
mov al, byte [ebp + 0x4c]
mov ecx, esi
mov byte [ecx + 0x4f], al
mov edi, dword [ebp + 0x7c]
call fcn.00476e0a
push 5
pop ecx
cmp eax, ecx
jne 0x48824f
mov eax, ebx
sub eax, dword [ebp + 0x30]
push 0x14
cdq
pop esi
idiv esi
mov edx, dword [ebp + 0x6c]
mov dword [ebp + 0x70], ecx
mov dword [edi + 0x24], eax
mov al, 1
sub al, byte [ebp + 0x4c]
mov byte [edx + 0x4f], al
mov dword [edi + 0x28], ecx
jmp 0x4875c4
call fcn.0043b91b
mov eax, edi
mov eax, dword [eax + 0x28]
jmp 0x4880d7
test eax, eax
jne 0x488269
mov eax, str.cannot_start_a_transaction_within_a_transaction
jmp 0x488277
mov eax, str.cannot_rollback___no_transaction_is_active
test ecx, ecx
jne 0x488277
mov eax, str.cannot_commit___no_transaction_is_active
mov edi, dword [ebp + 0x7c]
push eax
call fcn.0044cce5
jmp 0x488019
mov dword [ebp + 0x70], 8
jmp 0x487528
cmp byte [ebp + 0x70], 5
jne 0x487528
mov eax, ebx
sub eax, dword [ebp + 0x30]
push 0x14
cdq
pop ecx
idiv ecx
mov dword [edi + 0x24], eax
mov eax, dword [ebp + 0x70]
jmp 0x4881b1
mov dword [ebp + 0x70], 0x204
jmp 0x487528
mov dword [ebp + 0x70], 0x30b
jmp 0x487528
mov dword [ebp + 0x70], 6
mov byte [edi + 0x92], 2
jmp 0x487528
mov edi, dword [ebp + 0x7c]
push str.too_many_levels_of_trigger_recursion
mov dword [ebp + 0x70], 1
call fcn.0044cce5
jmp 0x487527
push esi
call fcn.00448fd6
mov edi, dword [ebp + 0x7c]
push eax
push 0x653908
call fcn.0044cce5
add esp, 0xc
jmp 0x487528
mov dword [ebp + 0x70], 1
mov eax, str.into
cmp dword [ebp + 0x60], ecx
je 0x488327
mov eax, str.out_of
push eax
push str.cannot_change__s_wal_mode_from_within_a_transaction
mov edi, dword [ebp + 0x7c]
call fcn.0044cce5
pop ecx
jmp 0x487527
push dword [ebp + 0x44]
mov eax, dword [ebp + 0x4c]
call dword [eax + 0x1c]
pop ecx
jmp 0x4865c5
mov dword [ebp + 0x70], 6
jmp 0x487528
mov eax, dword [ebp + 0x7c]
mov ecx, dword [ebp - 0x30]
add dword [eax + 0xb4], ecx
call fcn.0043672a
mov eax, dword [ebp + 0x70]
pop edi
pop esi
pop ebx
add ebp, 0x74
leave
ret