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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x250
and dword [ebp - 8], 0
and dword [ebp - 0x84], 0
push ebx
push esi
mov esi, dword [ebp + 8]
mov ebx, dword [esi]
mov eax, dword [ebx + 8]
mov eax, dword [eax + 0x14]
mov al, byte [eax + 0x59]
push edi
lea edi, [esi + 0x114]
mov dword [ebp - 0xc], ebx
mov byte [ebp - 0x40], al
mov dword [ebp - 0x11c], edi
call fcn.00483fc7
cmp dword [esi + 0x74], 7
je 0x48ddab
xor eax, eax
mov dword [esi + 0x74], eax
mov dword [esi + 0xf8], eax
cmp dword [ebx + 0xd8], eax
mov dword [ebx + 0x144], eax
jne 0x490af2
mov eax, dword [esi + 0x70]
mov dword [ebp - 0x18], eax
mov eax, ebx
jmp 0x48da7a
mov eax, dword [ebp - 0xc]
cmp byte [eax + 0x1e], 0
jne 0x48ddab
mov ebx, dword [ebp - 0x18]
mov ecx, dword [eax + 0xe8]
imul ebx, ebx, 0x14
add ebx, dword [esi + 0x14]
test ecx, ecx
mov dword [ebp - 0x24], ebx
je 0x48dac5
mov edx, dword [ebp - 0x84]
cmp dword [eax + 0xf0], edx
jne 0x48dabf
push dword [eax + 0xec]
call ecx
test eax, eax
pop ecx
jne 0x49097a
and dword [ebp - 0x84], eax
inc dword [ebp - 0x84]
movzx eax, byte [ebx]
mov dl, byte [eax + 0x6c20f0]
test dl, 2
je 0x48daf4
mov edi, dword [ebx + 8]
mov eax, dword [ebp + 8]
imul edi, edi, 0x28
add edi, dword [eax + 0x4c]
mov esi, edi
mov dword [ebp - 0x28], edi
call fcn.0048a286
mov esi, dword [ebp + 8]
mov word [edi + 0x1c], 1
jmp 0x48db2a
test dl, 4
je 0x48db64
mov eax, dword [ebx + 4]
mov ecx, dword [esi + 0x4c]
imul eax, eax, 0x28
add eax, ecx
test dl, 8
mov dword [ebp - 0x10], eax
je 0x48db4f
mov eax, dword [ebx + 8]
imul eax, eax, 0x28
add eax, ecx
test dl, 0x20
mov dword [ebp - 0x48], eax
je 0x48db27
mov eax, dword [ebx + 0xc]
imul eax, eax, 0x28
add eax, ecx
mov dword [ebp - 0x28], eax
mov edi, dword [ebp - 0x28]
mov cl, byte [ebx]
movzx eax, cl
lea edx, [eax - 1]
cmp edx, 0x8d
mov dword [ebp - 0x14], eax
ja case.0x48db48.12
movzx edx, byte [edx + 0x490cae]
jmp dword [edx*4 + 0x490b16]
test dl, 0x10
mov edi, dword [ebp - 0x28]
je 0x48db2a
mov eax, dword [ebx + 0xc]
imul eax, eax, 0x28
add eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x48db2a
test dl, 8
je 0x48db77
mov eax, dword [ebx + 8]
imul eax, eax, 0x28
add eax, dword [esi + 0x4c]
mov dword [ebp - 0x48], eax
jmp 0x48db27
test dl, 0x10
mov edi, dword [ebp - 0x28]
je 0x48db2a
mov eax, dword [ebx + 0xc]
imul eax, eax, 0x28
add eax, dword [esi + 0x4c]
jmp 0x48db5f
mov eax, dword [ebp - 0xc]
cmp dword [eax + 0xd8], 0
jne 0x490af2
mov ebx, dword [ebx + 8]
dec ebx
mov dword [ebp - 0x18], ebx
jmp case.0x48db48.12
mov ecx, dword [ebp - 0x18]
lea eax, [esi + 0xe8]
mov edx, dword [eax]
inc ecx
mov dword [esi + edx*4 + 0x84], ecx
inc dword [eax]
mov eax, dword [ebx + 8]
dec eax
mov dword [ebp - 0x18], eax
jmp case.0x48db48.12
lea eax, [esi + 0xe8]
dec dword [eax]
mov eax, dword [eax]
mov esi, dword [esi + eax*4 + 0x84]
dec esi
mov dword [ebp - 0x18], esi
jmp case.0x48db48.12
mov word [edi + 0x1c], 4
mov eax, dword [ebx + 4]
cdq
mov dword [edi], eax
mov dword [edi + 4], edx
jmp case.0x48db48.12
mov word [edi + 0x1c], 4
mov ebx, dword [ebx + 0x10]
mov eax, dword [ebx]
mov dword [edi], eax
mov eax, dword [ebx + 4]
mov dword [edi + 4], eax
jmp case.0x48db48.12
mov word [edi + 0x1c], 8
mov eax, dword [ebx + 0x10]
fld qword [eax]
fstp qword [edi + 8]
jmp case.0x48db48.12
push dword [ebx + 0x10]
mov byte [ebx], 0x1b
call fcn.0058cca0
cmp byte [ebp - 0x40], 1
pop ecx
mov dword [ebx + 4], eax
je 0x48dccf
push 1
push dword [ebx + 0x10]
xor eax, eax
or ecx, 0xffffffff
mov edx, edi
call fcn.0048a60b
movzx eax, byte [ebp - 0x40]
push eax
mov eax, edi
call fcn.0048a00f
add esp, 0xc
test eax, eax
jne 0x48ddab
mov eax, edi
call fcn.0048a0dd
test eax, eax
jne 0x48ddab
and dword [edi + 0x24], eax
mov ax, word [edi + 0x1c]
and ax, 0xffbf
or ax, 0x80
mov word [edi + 0x1c], ax
cmp byte [ebx + 1], 0xff
jne 0x48dc92
push dword [ebx + 0x10]
call fcn.0047d517
pop ecx
mov byte [ebx + 1], 0xff
mov eax, dword [edi + 0x14]
mov dword [ebx + 0x10], eax
mov edi, dword [edi + 0x18]
mov eax, dword [ebp - 0xc]
mov dword [ebx + 4], edi
cmp edi, dword [eax + 0x50]
jle case.0x48db48.12
mov eax, dword [ebp + 8]
push 0
add eax, 0xf4
push str.string_or_blob_too_big
push eax
call fcn.0047d8af
mov dword [ebp - 8], 0x12
jmp 0x490aea
mov ecx, dword [ebp - 0xc]
cmp eax, dword [ecx + 0x50]
jg 0x48dcae
mov word [edi + 0x1c], 0xa2
mov eax, dword [ebx + 0x10]
mov dword [edi + 0x14], eax
mov eax, dword [ebx + 4]
mov dword [edi + 0x18], eax
mov al, byte [ebp - 0x40]
mov byte [edi + 0x1f], al
jmp case.0x48db48.12
mov ecx, dword [ebx + 4]
push 0
push dword [ebx + 0x10]
xor eax, eax
mov edx, edi
call fcn.0048a60b
mov al, byte [ebp - 0x40]
mov byte [edi + 0x1f], al
jmp 0x490963
mov ebx, dword [ebx + 4]
mov eax, dword [esi + 0x38]
dec ebx
imul ebx, ebx, 0x28
lea edi, [ebx + eax]
mov ecx, edi
call fcn.0048a542
test eax, eax
jne 0x48dcae
mov eax, dword [ebp - 0x28]
push 0x80
call fcn.0048a568
jmp 0x490964
mov esi, dword [ebx + 4]
mov ebx, dword [ebx + 8]
imul esi, esi, 0x28
mov eax, dword [ebp + 8]
imul ebx, ebx, 0x28
mov eax, dword [eax + 0x4c]
add ebx, eax
mov edi, dword [ebx + 0x24]
and dword [ebx + 0x24], 0
add esi, eax
push ebx
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x28], ebx
call fcn.0048a5e4
mov dword [esi + 0x24], edi
jmp 0x490964
mov edi, dword [ebx + 4]
mov ebx, dword [ebx + 8]
imul edi, edi, 0x28
mov esi, dword [esi + 0x4c]
imul ebx, ebx, 0x28
add edi, esi
add ebx, esi
mov esi, 0x100
push esi
mov eax, ebx
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x28], ebx
call fcn.0048a568
test word [ebx + 0x1c], si
pop ecx
je case.0x48db48.12
mov eax, ebx
call fcn.0048a0dd
test eax, eax
je case.0x48db48.12
mov eax, dword [ebp - 0xc]
mov esi, dword [ebp + 8]
push 0
mov byte [eax + 0x1e], 1
lea eax, [esi + 0xf4]
push str.out_of_memory
push eax
call fcn.0047d8af
mov dword [ebp - 8], 7
add esp, 0xc
mov eax, dword [ebp - 8]
xor ebx, ebx
push esi
mov dword [esi + 0x74], eax
inc ebx
call fcn.0048bcdd
pop ecx
mov edi, dword [ebp - 0x11c]
call fcn.00484001
pop edi
pop esi
mov eax, ebx
pop ebx
leave
ret
mov edi, dword [ebx + 4]
mov ebx, dword [ebx + 8]
imul edi, edi, 0x28
mov esi, dword [esi + 0x4c]
imul ebx, ebx, 0x28
add edi, esi
add ebx, esi
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x28], ebx
push 0x100
mov eax, ebx
jmp 0x48dd30
mov eax, dword [ebp - 0x10]
movzx eax, word [eax + 0x1c]
mov ecx, dword [ebp - 0x48]
mov cl, byte [ecx + 0x1c]
or cl, al
test cl, 1
je 0x48de46
mov ax, word [edi + 0x1c]
and ax, 0xffe1
or ax, 1
mov word [edi + 0x1c], ax
mov byte [edi + 0x1e], 5
jmp case.0x48db48.12
test ax, 0x800
je 0x48de54
mov eax, dword [ebp - 0x10]
call fcn.0048a12f
mov eax, dword [ebp - 0x10]
test byte [eax + 0x1c], 0x12
jne 0x48de73
movzx eax, byte [ebp - 0x40]
push eax
mov eax, dword [ebp - 0x10]
call fcn.0048a1bc
test eax, eax
pop ecx
jne 0x48ddab
mov eax, dword [ebp - 0x48]
test word [eax + 0x1c], 0x800
je 0x48de83
call fcn.0048a12f
mov eax, dword [ebp - 0x48]
test byte [eax + 0x1c], 0x12
jne 0x48dea2
movzx eax, byte [ebp - 0x40]
push eax
mov eax, dword [ebp - 0x48]
call fcn.0048a1bc
test eax, eax
pop ecx
jne 0x48ddab
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x18]
mov ecx, dword [ebp - 0x48]
add eax, dword [ecx + 0x18]
cdq
mov ebx, eax
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x50]
mov ecx, edx
cdq
cmp ecx, edx
jg 0x48dcae
jl 0x48decc
cmp ebx, eax
ja 0x48dcae
mov ax, word [edi + 0x1c]
and ax, 0xffe2
or ax, 2
mov word [edi + 0x1c], ax
xor eax, eax
cmp edi, dword [ebp - 0x48]
sete al
push eax
lea eax, [ebx + 2]
call fcn.0048a02f
test eax, eax
pop ecx
jne 0x48ddab
mov esi, dword [ebp - 0x28]
mov edi, dword [ebp - 0x48]
cmp esi, edi
je 0x48df11
push dword [edi + 0x18]
push dword [edi + 0x14]
push dword [esi + 0x14]
call fcn.0058e7b0
add esp, 0xc
mov eax, dword [ebp - 0x10]
push dword [eax + 0x18]
push dword [eax + 0x14]
mov eax, dword [esi + 0x14]
add eax, dword [edi + 0x18]
push eax
call fcn.0058e7b0
mov eax, dword [esi + 0x14]
mov byte [ebx + eax], 0
mov eax, dword [esi + 0x14]
mov byte [ebx + eax + 1], 0
mov al, byte [ebp - 0x40]
add esp, 0xc
or word [esi + 0x1c], 0x20
mov dword [esi + 0x18], ebx
mov byte [esi + 0x1f], al
jmp case.0x48db48.12
mov esi, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x48]
movzx eax, word [esi + 0x1c]
movzx edx, word [ecx + 0x1c]
mov dword [ebp - 0x20], eax
movzx eax, ax
movzx edx, dx
or eax, edx
test al, 1
mov dword [ebp - 0x1c], eax
jne 0x48de2d
movzx edx, word [ecx + 0x1c]
mov al, byte [ebp - 0x20]
and al, dl
test al, 4
je 0x48e011
mov eax, dword [ecx]
mov edx, dword [ecx + 4]
mov ecx, dword [ebp - 0x14]
sub ecx, 0x4e
mov ebx, dword [esi]
mov esi, dword [esi + 4]
je 0x48e008
dec ecx
je 0x48dfff
dec ecx
je 0x48dff1
dec ecx
mov ecx, ebx
je 0x48dfc1
or ecx, esi
je 0x48de2d
mov ecx, ebx
and ecx, esi
cmp ecx, 0xffffffff
jne 0x48dfb3
xor ebx, ebx
inc ebx
xor esi, esi
push esi
push ebx
push edx
push eax
call fcn.00594f40
jmp 0x48e69a
or ecx, esi
je 0x48de2d
mov ecx, ebx
and ecx, esi
cmp ecx, 0xffffffff
jne 0x48dfe3
test eax, eax
jne 0x48dfe3
cmp edx, 0x80000000
jne 0x48dfe3
xor ebx, ebx
inc ebx
xor esi, esi
push esi
push ebx
push edx
push eax
call fcn.00594e90
jmp 0x48e69a
push esi
push ebx
push edx
push eax
call fcn.00594e50
jmp 0x48e69a
sub eax, ebx
sbb edx, esi
jmp 0x48e69a
add eax, ebx
adc edx, esi
jmp 0x48e69a
mov esi, dword [ebp - 0x10]
call fcn.0048a392
fstp qword [ebp - 0x34]
mov esi, dword [ebp - 0x48]
call fcn.0048a392
movzx eax, byte [ebx]
sub eax, 0x4e
je 0x48e096
dec eax
je 0x48e091
dec eax
je 0x48e08c
dec eax
je 0x48e07b
fld qword [ebp - 0x34]
call fcn.00593ed6
mov esi, eax
mov ebx, edx
call fcn.00593ed6
mov ecx, esi
or ecx, ebx
je 0x48de2d
mov ecx, esi
and ecx, ebx
cmp ecx, 0xffffffff
jne 0x48e05e
xor esi, esi
inc esi
xor ebx, ebx
push ebx
push esi
push edx
push eax
call fcn.00594f40
mov dword [ebp - 0x17c], eax
mov dword [ebp - 0x178], edx
fild qword [ebp - 0x17c]
jmp 0x48e099
fldz
fcomp qword [ebp - 0x34]
fnstsw ax
test ah, 0x44
jnp 0x48e0e0
fdiv qword [ebp - 0x34]
jmp 0x48e099
fmul qword [ebp - 0x34]
jmp 0x48e099
fsub qword [ebp - 0x34]
jmp 0x48e099
fadd qword [ebp - 0x34]
fstp qword [ebp - 0x34]
push ecx
fld qword [ebp - 0x34]
push ecx
fstp qword [esp]
call fcn.0047f139
add esp, 8
test eax, eax
jne 0x48de2d
mov ax, word [edi + 0x1c]
fld qword [ebp - 0x34]
and ax, 0xffe8
fstp qword [edi + 8]
or ax, 8
test byte [ebp - 0x1c], 8
mov word [edi + 0x1c], ax
jne case.0x48db48.12
mov esi, edi
call fcn.0048a3f1
jmp case.0x48db48.12
fstp st(0)
jmp 0x48de2d
mov ecx, dword [ebx + 8]
movzx edi, byte [ebx + 3]
imul ecx, ecx, 0x28
mov edx, dword [esi + 0x24]
add ecx, dword [esi + 0x4c]
xor esi, esi
test edi, edi
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x1c], edx
jle 0x48e113
mov dword [edx + esi*4], ecx
call fcn.0048d83e
inc esi
add ecx, 0x28
cmp esi, edi
jl 0x48e103
cmp byte [ebx + 1], 0xfb
mov eax, dword [ebx + 0x10]
jne 0x48e125
and dword [ebp - 0x1d0], 0
jmp 0x48e12d
mov dword [ebp - 0x1d0], eax
mov eax, dword [eax]
mov edi, dword [ebx + 0xc]
and dword [ebp - 0x1ac], 0
imul edi, edi, 0x28
and dword [ebp - 0x1a8], 0
mov dword [ebp - 0x1d4], eax
mov eax, dword [ebp + 8]
add edi, dword [eax + 0x4c]
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x1bc], eax
lea eax, [ebp - 0x1cc]
push eax
mov esi, edi
mov dword [ebp - 0x28], edi
mov word [ebp - 0x1b0], 1
call fcn.0048a5e4
mov eax, dword [ebp - 0x1b0]
and dword [ebp - 0x1a0], 0
and ax, 0xffe1
or ax, 1
mov word [ebp - 0x1b0], ax
mov eax, dword [ebp - 0x1d4]
cmp byte [eax + 3], 0
pop ecx
je 0x48e1a2
mov ecx, dword [ebx - 4]
mov dword [ebp - 0x19c], ecx
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x1d4]
push dword [ebp - 0x14]
push ecx
call dword [eax + 0x10]
mov eax, dword [ebp - 0xc]
add esp, 0xc
cmp byte [eax + 0x1e], 0
jne 0x490a34
cmp dword [ebp - 0x1d0], 0
je 0x48e1ea
push dword [ebx + 4]
mov edi, dword [ebp - 0x1d0]
call fcn.0048c043
mov eax, dword [ebp - 0x1d0]
mov edi, dword [ebp - 0x28]
pop ecx
mov dword [ebx + 0x10], eax
mov byte [ebx + 1], 0xf9
cmp dword [ebp - 0x1a0], 0
je 0x48e21f
push 0
push ecx
lea eax, [ebp - 0x1cc]
push eax
call fcn.0048cafb
pop ecx
pop ecx
push eax
mov eax, dword [ebp + 8]
add eax, 0xf4
push eax
call fcn.0047d8af
mov eax, dword [ebp - 0x1a0]
add esp, 0xc
mov dword [ebp - 8], eax
movzx eax, byte [ebp - 0x40]
push eax
lea eax, [ebp - 0x1cc]
call fcn.0048a00f
lea esi, [ebp - 0x1cc]
pop ecx
push edi
call fcn.0048a5e4
pop ecx
mov ecx, edi
call fcn.0048a542
test eax, eax
jne 0x48dcae
jmp case.0x48db48.12
mov eax, dword [ebp - 0x48]
mov al, byte [eax + 0x1c]
mov ecx, dword [ebp - 0x10]
or al, byte [ecx + 0x1c]
test al, 1
jne 0x48de2d
mov esi, dword [ebp - 0x48]
call fcn.0048a31d
mov esi, dword [ebp - 0x10]
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], edx
call fcn.0048a31d
mov ecx, eax
movzx eax, byte [ebx]
sub eax, 0x4a
je 0x48e2ad
dec eax
je 0x48e2a5
mov edx, dword [ebp - 0x60]
dec eax
mov eax, dword [ebp - 0x64]
je 0x48e298
call fcn.00594e20
jmp 0x48e29d
call fcn.00595000
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], edx
jmp 0x48e2b3
or dword [ebp - 0x64], ecx
or dword [ebp - 0x60], edx
jmp 0x48e2b3
and dword [ebp - 0x64], ecx
and dword [ebp - 0x60], edx
mov eax, dword [ebp - 0x64]
mov dword [edi], eax
mov eax, dword [ebp - 0x60]
mov dword [edi + 4], eax
mov ax, word [edi + 0x1c]
and ax, 0xffe4
or ax, 4
mov word [edi + 0x1c], ax
jmp case.0x48db48.12
mov esi, dword [ebp - 0x10]
mov eax, esi
call fcn.0048a417
mov eax, dword [ebx + 8]
cdq
add dword [esi], eax
adc dword [esi + 4], edx
jmp case.0x48db48.12
push dword [ebp - 0x40]
mov esi, dword [ebp - 0x10]
push 0x63
mov eax, esi
call fcn.0048d9ac
movzx eax, word [esi + 0x1c]
test al, 0xc
pop ecx
pop ecx
mov dword [ebp - 0x20], eax
je 0x48db9a
test al, 4
je 0x48e324
xor ecx, ecx
xor eax, eax
cmp dword [ebx + 0xc], ecx
je 0x48e319
inc eax
add eax, dword [esi]
adc ecx, dword [esi + 4]
mov edi, eax
mov edx, ecx
jmp 0x48e378
fld qword [esi + 8]
call fcn.00593ed6
mov edi, eax
mov dword [ebp - 0xd4], edi
mov dword [ebp - 0xd0], edx
fild qword [ebp - 0xd4]
fcomp qword [esi + 8]
fnstsw ax
test ah, 5
jp 0x48e35c
add edi, 1
adc edx, 0
mov dword [ebp - 0xd4], edi
mov dword [ebp - 0xd0], edx
cmp dword [ebx + 0xc], 0
je 0x48e378
fild qword [ebp - 0xd4]
fcomp qword [esi + 8]
fnstsw ax
test ah, 0x44
jp 0x48e378
add edi, 1
adc edx, 0
mov eax, dword [ebp - 0x20]
mov dword [esi], edi
mov dword [esi + 4], edx
and ax, 0xffe4
or ax, 4
mov word [esi + 0x1c], ax
jmp case.0x48db48.12
push dword [ebp - 0x40]
mov esi, dword [ebp - 0x10]
push 0x63
mov eax, esi
call fcn.0048d9ac
movzx eax, word [esi + 0x1c]
test al, 4
pop ecx
pop ecx
jne 0x48e380
mov ebx, dword [ebx + 8]
test ebx, ebx
jne 0x48db9d
mov dword [ebp - 8], 0x14
jmp 0x490ab0
mov eax, dword [ebp - 0x10]
test byte [eax + 0x1c], 4
je case.0x48db48.12
mov eax, dword [ebp - 0x10]
call fcn.0048a438
jmp case.0x48db48.12
mov eax, dword [ebp - 0x10]
movzx eax, word [eax + 0x1c]
test al, 1
jne case.0x48db48.12
mov esi, dword [ebp - 0x10]
push dword [ebp - 0x40]
movzx ecx, al
shr cl, 3
push 0x61
and ecx, 2
or ecx, eax
mov eax, esi
mov word [esi + 0x1c], cx
call fcn.0048d9ac
test word [esi + 0x1c], 0x800
pop ecx
pop ecx
je 0x48e41e
mov eax, esi
call fcn.0048a12f
mov dword [ebp - 8], eax
jmp 0x48e422
and dword [ebp - 8], 0
and word [esi + 0x1c], 0xffe3
jmp case.0x48db48.12
mov eax, dword [ebp - 0x10]
movzx ecx, word [eax + 0x1c]
test cl, 1
jne case.0x48db48.12
test cl, 0x10
jne 0x48e451
push dword [ebp - 0x40]
push 0x61
call fcn.0048d9ac
mov eax, dword [ebp - 0x10]
pop ecx
pop ecx
mov cx, word [eax + 0x1c]
and cx, 0xfff0
or cx, 0x10
mov word [eax + 0x1c], cx
jmp case.0x48db48.12
mov eax, dword [ebp - 0x10]
test byte [eax + 0x1c], 0xd
jne case.0x48db48.12
call fcn.0048a457
jmp case.0x48db48.12
mov eax, dword [ebp - 0x10]
test byte [eax + 0x1c], 1
jne case.0x48db48.12
call fcn.0048a417
jmp case.0x48db48.12
mov eax, dword [ebp - 0x10]
test byte [eax + 0x1c], 1
jne case.0x48db48.12
jmp 0x48e3ce
mov ecx, dword [ebp - 0x10]
mov al, byte [ecx + 0x1c]
mov edi, dword [ebp - 0x54]
or al, byte [edi + 0x1c]
test al, 1
je 0x48e512
mov al, byte [ebx + 3]
test al, 0x10
je 0x48e590
mov word [ebp - 0x208], 4
movzx eax, word [ecx + 0x1c]
not eax
and eax, 1
cdq
mov dword [ebp - 0x224], eax
lea eax, [ebp - 0x224]
mov dword [ebp - 0x10], eax
mov word [ebp - 0x230], 4
movzx eax, word [edi + 0x1c]
not eax
and eax, 1
mov dword [ebp - 0x220], edx
cdq
mov dword [ebp - 0x24c], eax
lea eax, [ebp - 0x24c]
mov dword [ebp - 0x248], edx
mov dword [ebp - 0x54], eax
mov al, byte [ebx + 3]
and al, 0x67
mov byte [ebp - 0xc0], al
je 0x48e544
push dword [ebp - 0x40]
mov eax, dword [ebp - 0x10]
push dword [ebp - 0xc0]
call fcn.0048d9ac
push dword [ebp - 0x40]
mov eax, dword [ebp - 0x54]
push dword [ebp - 0xc0]
call fcn.0048d9ac
add esp, 0x10
mov eax, dword [ebp - 0x10]
test word [eax + 0x1c], 0x800
je 0x48e554
call fcn.0048a12f
mov eax, dword [ebp - 0x54]
test word [eax + 0x1c], 0x800
je 0x48e564
call fcn.0048a12f
push dword [ebx + 0x10]
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x54]
call fcn.0048a71d
pop ecx
movzx ecx, byte [ebx]
sub ecx, 0x43
je 0x48e5e6
dec ecx
je 0x48e5dd
dec ecx
je 0x48e5d4
dec ecx
je 0x48e5cb
dec ecx
je 0x48e5c2
xor ecx, ecx
test eax, eax
setge cl
jmp 0x48e5ed
test al, al
jns 0x48e5b5
mov ebx, dword [ebx + 8]
imul ebx, ebx, 0x28
add ebx, dword [esi + 0x4c]
mov ax, word [ebx + 0x1c]
and ax, 0xffe1
or ax, 1
mov dword [ebp - 0x28], ebx
mov word [ebx + 0x1c], ax
jmp case.0x48db48.12
test al, 8
je case.0x48db48.12
jmp 0x48db9a
xor ecx, ecx
test eax, eax
setl cl
jmp 0x48e5ed
xor ecx, ecx
test eax, eax
setle cl
jmp 0x48e5ed
xor ecx, ecx
test eax, eax
setg cl
jmp 0x48e5ed
xor ecx, ecx
test eax, eax
sete cl
jmp 0x48e5ed
xor ecx, ecx
test eax, eax
setne cl
test byte [ebx + 3], 0x80
mov eax, ecx
je 0x48e704
mov ebx, dword [ebx + 8]
imul ebx, ebx, 0x28
add ebx, dword [esi + 0x4c]
cdq
mov cx, word [ebx + 0x1c]
and cx, 0xffe4
or cx, 4
mov dword [ebp - 0x28], ebx
mov word [ebx + 0x1c], cx
mov dword [ebx], eax
mov dword [ebx + 4], edx
jmp case.0x48db48.12
mov eax, dword [ebp - 0x10]
test byte [eax + 0x1c], 1
je 0x48e633
mov dword [ebp - 0x20], 2
jmp 0x48e64c
mov esi, dword [ebp - 0x10]
call fcn.0048a31d
or eax, edx
je 0x48e648
mov dword [ebp - 0x20], 1
jmp 0x48e64c
and dword [ebp - 0x20], 0
mov esi, dword [ebp - 0x48]
test byte [esi + 0x1c], 1
je 0x48e65a
push 2
pop ecx
jmp 0x48e666
call fcn.0048a31d
xor ecx, ecx
or eax, edx
je 0x48e666
inc ecx
mov eax, dword [ebp - 0x20]
imul eax, eax, 3
cmp byte [ebx], 0x3d
jne 0x48e67b
movzx eax, byte [eax + ecx + 0x637054]
jmp 0x48e683
movzx eax, byte [eax + ecx + 0x637088]
cmp eax, 2
jne 0x48e699
mov ax, word [edi + 0x1c]
and ax, 0xffe1
or ax, 1
jmp 0x48e2ca
cdq
mov dword [edi], eax
mov dword [edi + 4], edx
jmp 0x48e2be
mov eax, dword [ebp - 0x10]
test byte [eax + 0x1c], 1
jne case.0x48db48.12
mov esi, eax
call fcn.0048a417
mov eax, dword [esi]
or eax, dword [esi + 4]
jne 0x48e6c4
xor eax, eax
inc eax
jmp 0x48e6c6
xor eax, eax
cdq
mov dword [esi], eax
mov dword [esi + 4], edx
jmp case.0x48db48.12
mov eax, dword [ebp - 0x10]
test byte [eax + 0x1c], 1
jne case.0x48db48.12
mov esi, eax
call fcn.0048a417
mov eax, dword [esi]
mov ecx, dword [esi + 4]
not eax
not ecx
mov dword [esi], eax
mov dword [esi + 4], ecx
jmp case.0x48db48.12
mov eax, dword [ebp - 0x10]
test byte [eax + 0x1c], 1
je 0x48e70b
mov eax, dword [ebx + 0xc]
test eax, eax
jmp 0x48e5b7
mov esi, dword [ebp - 0x10]
call fcn.0048a392
fcomp qword [0x63ce58]
fnstsw ax
test ah, 0x44
jnp 0x48e725
xor eax, eax
inc eax
jmp 0x48e727
xor eax, eax
cmp byte [ebx], 0x49
jne 0x48e704
xor ecx, ecx
test eax, eax
sete cl
mov eax, ecx
jmp 0x48e704
mov eax, dword [ebx + 0xc]
mov ecx, dword [ebp - 0x10]
test byte [ecx + 0x1c], 1
jne 0x48db9a
add dword [ebp - 0x10], 0x28
dec eax
test eax, eax
jg 0x48e73a
jmp case.0x48db48.12
mov eax, dword [ebp - 0x10]
test byte [eax + 0x1c], 1
jne case.0x48db48.12
jmp 0x48db9a
mov eax, dword [ebx + 8]
mov ecx, dword [ebx + 4]
mov dword [ebp - 0x30], eax
mov eax, dword [ebx + 0xc]
imul eax, eax, 0x28
add eax, dword [esi + 0x4c]
xor edx, edx
mov word [ebp - 0xe0], dx
mov dword [ebp - 0xec], edx
mov dword [ebp - 0xd8], edx
mov di, word [eax + 0x1c]
and di, 0xffe1
or di, 1
mov word [eax + 0x1c], di
mov dword [ebp - 0x4c], eax
mov eax, dword [esi + 0x30]
mov eax, dword [eax + ecx*4]
cmp dword [eax], edx
mov dword [ebp - 0x20], eax
je 0x48e81c
mov esi, eax
call fcn.0048c144
test eax, eax
mov dword [ebp - 8], eax
jne 0x490ab0
and dword [ebp - 0x50], eax
mov eax, esi
cmp byte [eax + 0x1c], 0
mov ecx, dword [eax]
mov dword [ebp - 0x44], ecx
je 0x48e7d7
and dword [ebp - 0x70], 0
jmp 0x48e817
mov ecx, dword [eax + 0x68]
mov edx, dword [ebp + 8]
cmp ecx, dword [edx + 0x54]
jne 0x48e7f0
mov ecx, dword [eax + 0x6c]
mov eax, dword [eax + 0x78]
mov dword [ebp - 0x70], ecx
mov dword [ebp - 0x50], eax
jmp 0x48e817
cmp byte [eax + 0x22], 0
mov eax, dword [ebp - 0x44]
je 0x48e80f
lea edi, [ebp - 0x1fc]
call fcn.00485fcd
mov eax, dword [ebp - 0x1fc]
mov dword [ebp - 0x70], eax
jmp 0x48e817
lea edi, [ebp - 0x70]
call fcn.00486014
mov eax, dword [ebp - 0x20]
jmp 0x48e82e
mov ecx, dword [eax + 0x34]
mov dword [ebp - 0x70], ecx
mov ecx, dword [eax + 0x38]
mov dword [ebp - 0x50], ecx
mov dword [eax + 0x68], edx
mov dword [ebp - 0x44], edx
mov eax, dword [eax + 0x50]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x70]
test eax, eax
je case.0x48db48.12
mov ecx, dword [ebp - 0xc]
cmp eax, dword [ecx + 0x50]
ja 0x48dcae
mov esi, dword [ebp - 0x20]
mov edx, dword [esi + 0x68]
mov ecx, dword [ebp + 8]
cmp edx, dword [ecx + 0x54]
mov eax, dword [esi + 0x70]
mov dword [ebp - 0x2c], eax
jne 0x48e86a
mov eax, dword [esi + 0x74]
mov dword [ebp - 0x14], eax
jmp 0x48e9e0
mov edx, dword [ebp - 0x58]
mov edi, dword [ebp - 0x70]
lea eax, [eax + edx*4]
mov dword [ebp - 0x14], eax
mov dword [esi + 0x74], eax
mov dword [esi + 0x6c], edi
mov eax, dword [ecx + 0x54]
mov dword [esi + 0x68], eax
mov eax, dword [ebp - 0x50]
test eax, eax
je 0x48e88e
mov dword [ebp - 8], eax
jmp 0x48e8d2
cmp byte [esi + 0x22], 0
mov eax, dword [ebp - 0x44]
je 0x48e8af
cmp byte [eax + 0x43], 1
jne 0x48e8b9
push 0
lea ecx, [ebp - 0x90]
push ecx
call fcn.0048641e
pop ecx
pop ecx
jmp 0x48e8bb
cmp byte [eax + 0x43], 1
jne 0x48e8b9
push 1
jmp 0x48e89f
xor eax, eax
cmp dword [ebp - 0x90], edi
mov dword [ebp - 8], eax
jb 0x48e8ce
mov dword [ebp - 0x50], eax
mov dword [esi + 0x78], eax
jmp 0x48e8d2
and dword [esi + 0x78], 0
mov cl, byte [eax]
cmp cl, 0x80
jae 0x48e8e8
movzx edi, cl
mov dword [ebp - 0x78], edi
mov dword [ebp - 0x1c], 1
jmp 0x48e8fc
mov ecx, dword [ebp - 8]
lea edi, [ebp - 0x78]
call fcn.0047f9d1
mov edi, dword [ebp - 0x78]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 8]
cmp dword [ebp - 0x50], 0
jne 0x48e946
cmp dword [ebp - 0x90], edi
jae 0x48e946
xor eax, eax
mov word [ebp - 0xe0], ax
mov dword [ebp - 0xec], eax
movzx ecx, byte [esi + 0x22]
push ecx
push eax
push dword [ebp - 0x44]
lea eax, [ebp - 0xfc]
mov ebx, edi
call fcn.0048a8ae
add esp, 0xc
test eax, eax
mov dword [ebp - 8], eax
jne case.0x48db48.12
mov eax, dword [ebp - 0xe8]
mov ebx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x1c]
add edi, eax
cmp dword [ebp - 0x58], 0
mov dword [ebp - 0x24], edi
lea esi, [ecx + eax]
jbe 0x48e9a7
mov edi, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x58]
sub ecx, edi
mov dword [ebp - 8], ecx
mov dword [ebp - 0x1c], eax
cmp esi, dword [ebp - 0x24]
jae 0x48e99b
mov eax, dword [ebp - 0x78]
mov dword [edi + ecx], eax
mov al, byte [esi]
cmp al, 0x80
jae 0x48e983
movzx eax, al
mov dword [edi], eax
xor eax, eax
inc eax
jmp 0x48e98d
mov ecx, esi
call fcn.0047f9d1
mov ecx, dword [ebp - 8]
add esi, eax
mov eax, dword [edi]
call fcn.0048c26d
add dword [ebp - 0x78], eax
jmp 0x48e99f
and dword [edi + ecx], 0
add edi, 4
dec dword [ebp - 0x1c]
jne 0x48e968
lea eax, [ebp - 0xfc]
push eax
call fcn.0048a2b9
cmp esi, dword [ebp - 0x24]
pop ecx
mov word [ebp - 0xe0], 1
ja 0x48eafa
mov eax, dword [ebp - 0x78]
cmp eax, dword [ebp - 0x70]
ja 0x48eafa
cmp esi, dword [ebp - 0x24]
jne 0x48e9e0
cmp eax, dword [ebp - 0x70]
jne 0x48eafa
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x14]
shl eax, 2
add ecx, eax
mov dword [ebp - 0x30], ecx
mov ecx, dword [ecx]
test ecx, ecx
je 0x48eaaa
cmp dword [ebp - 0x50], 0
je 0x48ea47
mov edx, dword [ebp - 0x4c]
test byte [edx + 0x1c], 0x40
mov edx, dword [ebp - 0x50]
je 0x48ea3d
add ecx, edx
mov edx, dword [ebp - 0x2c]
mov eax, dword [eax + edx]
lea esi, [ebp - 0xfc]
call fcn.0048c326
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0x4c]
mov ebx, esi
call fcn.0048a5a1
test eax, eax
mov dword [ebp - 8], eax
jne case.0x48db48.12
jmp 0x48ea9f
add ecx, edx
mov edx, dword [ebp - 0x2c]
mov eax, dword [eax + edx]
jmp 0x48ea97
mov ecx, dword [ebp - 0x2c]
lea edi, [eax + ecx]
mov eax, dword [edi]
call fcn.0048c26d
mov esi, dword [ebp - 0x4c]
mov ebx, eax
lea eax, [ebp - 0xfc]
push eax
call fcn.0048a5e4
mov eax, dword [ebp - 0x20]
movzx eax, byte [eax + 0x22]
pop ecx
push eax
mov eax, dword [ebp - 0x30]
push dword [eax]
lea eax, [ebp - 0xfc]
push dword [ebp - 0x44]
call fcn.0048a8ae
add esp, 0xc
test eax, eax
mov dword [ebp - 8], eax
jne case.0x48db48.12
mov eax, dword [edi]
mov ecx, dword [ebp - 0xe8]
mov esi, dword [ebp - 0x4c]
call fcn.0048c326
mov al, byte [ebp - 0x40]
mov ecx, dword [ebp - 0x4c]
mov byte [ecx + 0x1f], al
jmp 0x48eac1
cmp byte [ebx + 1], 0xf8
jne 0x48eac1
mov edi, dword [ebx + 0x10]
mov eax, dword [ebp - 0x4c]
push 0x80
call fcn.0048a568
pop ecx
cmp dword [ebp - 0xd8], 0
mov eax, dword [ebp - 0x4c]
je 0x48eaf0
mov cx, word [eax + 0x1c]
and cx, 0xfe7f
or cx, 0x20
mov word [eax + 0x1c], cx
mov ecx, dword [ebp - 0xe8]
mov dword [eax + 0x14], ecx
mov ecx, dword [ebp - 0xd8]
mov dword [eax + 0x24], ecx
call fcn.0048a0dd
jmp 0x49015c
mov dword [ebp - 8], 0xb
jmp case.0x48db48.12
mov eax, dword [ebx + 4]
mov ecx, dword [ebx + 8]
imul eax, eax, 0x28
add eax, dword [esi + 0x4c]
imul ecx, ecx, 0x28
mov edi, dword [ebx + 0x10]
lea ebx, [ecx + eax - 0x28]
cmp eax, ebx
mov esi, eax
ja case.0x48db48.12
and dword [ebp - 0x14], 0
test word [esi + 0x1c], 0x800
je 0x48eb39
mov eax, esi
call fcn.0048a12f
push dword [ebp - 0x40]
mov eax, dword [ebp - 0x14]
cdq
push 0x28
pop ecx
idiv ecx
movzx eax, byte [eax + edi]
push eax
mov eax, esi
call fcn.0048d9ac
add dword [ebp - 0x14], 0x28
add esi, 0x28
cmp esi, ebx
pop ecx
pop ecx
jbe 0x48eb2a
jmp case.0x48db48.12
mov ecx, dword [ebx + 8]
movzx edx, byte [esi + 0x100]
imul ecx, ecx, 0x28
mov edi, dword [ebx + 0x10]
xor eax, eax
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x44], eax
mov eax, dword [ebx + 4]
imul eax, eax, 0x28
add eax, dword [esi + 0x4c]
mov dword [ebp - 0x2c], edx
lea ecx, [ecx + eax - 0x28]
cmp eax, ecx
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20], ecx
mov esi, eax
ja 0x48ec3f
mov dword [ebp - 0x14], 0xffffffe8
sub dword [ebp - 0x14], eax
test edi, edi
je 0x48ebd3
push dword [ebp - 0x40]
mov eax, dword [ebp - 0x14]
lea eax, [esi + eax + 0x18]
cdq
push 0x28
pop ecx
idiv ecx
movzx eax, byte [eax + edi]
push eax
mov eax, esi
call fcn.0048d9ac
pop ecx
pop ecx
test word [esi + 0x1c], 0x800
je 0x48ebe8
cmp dword [esi + 0x18], 0
jle 0x48ebe8
mov eax, esi
call fcn.0048a12f
push dword [ebp - 0x2c]
mov edx, esi
call fcn.0048c1a8
pop ecx
mov dword [ebp - 0x30], eax
call fcn.0048c26d
mov dword [ebp - 0x58], eax
cdq
add dword [ebp - 0x9c], eax
push 0
push dword [ebp - 0x30]
adc dword [ebp - 0x98], edx
call fcn.0047fa64
add dword [ebp - 0x24], eax
test word [esi + 0x1c], 0x800
pop ecx
pop ecx
je 0x48ec29
mov eax, dword [esi]
add dword [ebp - 0x44], eax
jmp 0x48ec33
cmp dword [ebp - 0x58], 0
je 0x48ec33
and dword [ebp - 0x44], 0
add esi, 0x28
cmp esi, dword [ebp - 0x20]
jbe 0x48ebb1
mov eax, dword [ebp - 0x24]
cdq
push edx
push eax
call fcn.0047fa64
mov esi, eax
add dword [ebp - 0x24], esi
mov eax, dword [ebp - 0x24]
cdq
push edx
push eax
call fcn.0047fa64
add esp, 0x10
cmp esi, eax
jge 0x48ec64
inc dword [ebp - 0x24]
mov eax, dword [ebp - 0x44]
cdq
mov dword [ebp - 0xcc], eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0xc8], edx
cdq
mov esi, eax
sub esi, dword [ebp - 0xcc]
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x50]
mov ecx, edx
sbb ecx, dword [ebp - 0xc8]
add esi, dword [ebp - 0x9c]
cdq
adc ecx, dword [ebp - 0x98]
cmp ecx, edx
ja 0x48dcae
jb 0x48ecad
cmp esi, eax
ja 0x48dcae
mov edi, dword [ebx + 0xc]
mov eax, dword [ebp + 8]
imul edi, edi, 0x28
add edi, dword [eax + 0x4c]
push 0
mov eax, esi
mov dword [ebp - 0x28], edi
call fcn.0048a02f
test eax, eax
pop ecx
jne 0x48ddab
mov eax, dword [ebp - 0x24]
cmp eax, 0x80
mov ebx, dword [edi + 0x14]
mov dword [ebp - 0x30], ebx
jae 0x48ece9
mov byte [ebx], al
mov dword [ebp - 0x50], 1
jmp 0x48ecf3
mov ecx, ebx
call fcn.0047f816
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x20]
mov dword [ebp - 0x4c], eax
ja 0x48ed35
push dword [ebp - 0x2c]
mov edx, dword [ebp - 0x4c]
call fcn.0048c1a8
cmp eax, 0x80
pop ecx
mov ecx, dword [ebp - 0x50]
jae 0x48ed1c
mov byte [ecx + ebx], al
xor eax, eax
inc eax
jmp 0x48ed23
add ecx, ebx
call fcn.0047f816
add dword [ebp - 0x4c], 0x28
add dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x4c]
cmp eax, dword [ebp - 0x20]
jbe 0x48ecfe
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x4c], eax
jmp 0x48ed5f
mov eax, dword [ebp - 0x50]
push dword [ebp - 0x2c]
mov ecx, esi
sub ecx, eax
push ecx
mov ecx, dword [ebp - 0x30]
lea ebx, [eax + ecx]
mov eax, dword [ebp - 0x4c]
call fcn.0048c280
add dword [ebp - 0x50], eax
add dword [ebp - 0x4c], 0x28
mov eax, dword [ebp - 0x4c]
pop ecx
pop ecx
cmp eax, dword [ebp - 0x20]
jbe 0x48ed3a
and dword [edi + 0x20], 0
cmp dword [ebp - 0x44], 0
mov dword [edi + 0x18], esi
mov word [edi + 0x1c], 0x50
je 0x48ed8e
mov eax, dword [ebp - 0xcc]
mov dword [edi], eax
mov eax, dword [ebp - 0xc8]
mov dword [edi + 4], eax
mov word [edi + 0x1c], 0x850
mov byte [edi + 0x1f], 1
jmp case.0x48db48.12
mov eax, dword [ebp - 0xc]
cmp byte [eax + 0x1c], 0
je 0x48edad
cmp dword [eax + 0x90], 1
jle case.0x48db48.12
mov ecx, dword [ebx + 4]
mov eax, dword [eax + 8]
imul ecx, ecx, 0x18
mov ebx, dword [ecx + eax + 4]
mov eax, dword [ebx + 4]
test eax, eax
je 0x48edcb
cmp byte [eax + 0x10], 0
jne case.0x48db48.12
call fcn.00485d56
mov dword [ebp - 8], eax
mov eax, dword [ebp + 8]
mov dword [eax + 0x14c], 1
jmp case.0x48db48.12
mov eax, dword [ebp - 0xc]
cmp dword [eax + 0x90], 1
mov cl, byte [ebx + 4]
mov dl, byte [ebx + 8]
mov byte [ebp - 0x71], cl
jle 0x48ee30
test cl, cl
je 0x48ee30
cmp byte [eax + 0x1c], 0
jne 0x48ee30
test dl, dl
mov eax, str.rollback
jne 0x48ee12
mov eax, str.commit
push 0
push str._transaction___SQL_statements_in_progress
push eax
push str.cannot
add esi, 0xf4
push esi
call fcn.0047d8af
add esp, 0x14
jmp 0x48ee64
cmp cl, byte [eax + 0x1c]
jne 0x490a46
test cl, cl
jne 0x48ee44
mov eax, str.cannot_start_a_transaction_within_a_transaction
jmp 0x48ee52
test dl, dl
mov eax, str.cannot_rollback___no_transaction_is_active
jne 0x48ee52
mov eax, str.cannot_commit___no_transaction_is_active
push 0
push eax
add esi, 0xf4
push esi
call fcn.0047d8af
add esp, 0xc
mov dword [ebp - 8], 1
jmp case.0x48db48.12
mov eax, dword [ebx + 4]
mov ecx, dword [ebp - 0xc]
imul eax, eax, 0x18
mov ecx, dword [ecx + 8]
mov edi, dword [eax + ecx + 4]
test edi, edi
je case.0x48db48.12
push dword [ebx + 8]
call fcn.004854fb
pop ecx
push 5
pop ebx
cmp eax, ebx
mov dword [ebp - 8], eax
je 0x490a8b
test eax, eax
je case.0x48db48.12
cmp eax, 8
jne 0x490ab0
jmp case.0x48db48.12
mov eax, dword [ebx + 4]
test eax, eax
mov ebx, dword [ebx + 0xc]
jge 0x48eec8
or ecx, 0xffffffff
sub ecx, eax
mov eax, ecx
neg ebx
imul eax, eax, 0x18
lea ecx, [ebp - 0x160]
push ecx
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ecx + 8]
mov edi, dword [eax + ecx + 4]
inc ebx
push ebx
call fcn.00488fd1
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x160]
cdq
pop ecx
pop ecx
mov ecx, dword [ebp - 0x28]
mov dword [ecx], eax
mov ax, word [ecx + 0x1c]
and ax, 0xffe4
or ax, 4
mov dword [ecx + 4], edx
mov word [ecx + 0x1c], ax
jmp case.0x48db48.12
mov esi, dword [ebx + 4]
mov eax, dword [ebp - 0xc]
imul esi, esi, 0x18
add esi, dword [eax + 8]
mov edi, dword [ebp - 0x54]
mov eax, edi
call fcn.0048a417
mov eax, dword [ebx + 8]
push dword [edi]
inc eax
push eax
mov eax, dword [esi + 4]
call fcn.00489058
mov dword [ebp - 8], eax
mov eax, dword [ebx + 8]
test eax, eax
pop ecx
pop ecx
jne 0x48ef4d
mov eax, dword [esi + 0x14]
mov ecx, dword [edi]
mov dword [eax], ecx
mov eax, dword [ebp - 0xc]
or dword [eax + 0xc], 0x10
jmp 0x48ef5a
cmp eax, 1
jne 0x48ef5a
mov eax, dword [esi + 0x14]
mov cl, byte [edi]
mov byte [eax + 0x58], cl
cmp dword [ebx + 4], 1
jne case.0x48db48.12
mov eax, dword [ebp - 0xc]
call fcn.0048c9b3
jmp case.0x48db48.12
mov eax, dword [ebx + 4]
mov ecx, dword [ebp - 0xc]
imul eax, eax, 0x18
mov ecx, dword [ecx + 8]
mov edi, dword [eax + ecx + 4]
test edi, edi
je 0x48efa0
lea eax, [ebp - 0xb0]
push eax
push 1
call fcn.00488fd1
mov edi, dword [ebp - 0xb0]
pop ecx
pop ecx
mov dword [ebp - 8], eax
jmp 0x48efac
and dword [ebp - 8], 0
xor edi, edi
mov dword [ebp - 0xb0], edi
cmp dword [ebp - 8], 0
jne case.0x48db48.12
cmp edi, dword [ebx + 8]
je case.0x48db48.12
add esi, 0xf4
push dword [esi]
call fcn.0047d517
pop ecx
push dword [ebp - 0xc]
mov eax, str.database_schema_has_changed
call fcn.0047d873
mov dword [esi], eax
mov ebx, dword [ebx + 4]
mov eax, ebx
imul eax, eax, 0x18
pop ecx
mov ecx, dword [ebp - 0xc]
mov edx, dword [ecx + 8]
mov eax, dword [eax + edx + 0x14]
cmp dword [eax], edi
je 0x48effc
mov eax, ebx
mov ebx, ecx
call fcn.004964ae
mov eax, dword [ebp - 0xc]
call fcn.0048c9b3
mov dword [ebp - 8], 0x11
jmp case.0x48db48.12
mov eax, dword [ebx + 4]
mov edx, dword [ebp - 0xc]
mov edi, dword [ebx + 8]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebx + 0xc]
mov dword [ebp - 0x30], eax
imul eax, eax, 0x18
add eax, dword [edx + 8]
cmp cl, 9
mov edx, dword [eax + 4]
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x58], edx
jne 0x48f051
mov eax, dword [eax + 0x14]
mov al, byte [eax + 0x58]
lea ecx, [esi + 0x100]
cmp al, byte [ecx]
mov dword [ebp - 0x1c], 1
jae 0x48f055
mov byte [ecx], al
jmp 0x48f055
and dword [ebp - 0x1c], 0
cmp byte [ebx + 3], 0
je 0x48f070
imul edi, edi, 0x28
add edi, dword [esi + 0x4c]
mov eax, edi
mov dword [ebp - 0x48], edi
call fcn.0048a417
mov eax, dword [edi]
mov dword [ebp - 0x14], eax
mov edx, dword [ebp - 0x2c]
push 1
push dword [ebp - 0x30]
lea ecx, [ebx - 0x14]
mov ebx, esi
call fcn.0048d86a
mov ebx, eax
test ebx, ebx
pop ecx
pop ecx
je 0x48ddab
push dword [ebx]
mov edi, dword [ebp - 0x24]
mov eax, dword [ebp - 0x58]
mov byte [ebx + 0x1c], 1
push dword [edi + 0x10]
push dword [ebp - 0x1c]
push dword [ebp - 0x14]
call fcn.00485ef2
add esp, 0x10
cmp byte [edi + 1], 0xfa
mov esi, eax
mov dword [ebp - 8], esi
jne 0x48f0d8
mov ecx, dword [edi + 0x10]
mov dword [ebx + 0x4c], ecx
mov edx, dword [ebx + 0x4c]
add ecx, 5
mov dword [ebx + 0x48], ecx
mov ecx, dword [ebp + 8]
mov eax, dword [ecx]
mov eax, dword [eax + 8]
mov eax, dword [eax + 0x14]
mov al, byte [eax + 0x59]
mov byte [edx + 4], al
jmp 0x48f0e5
and dword [ebx + 0x4c], 0
mov ecx, dword [ebp + 8]
lea eax, [ebx + 0x23]
mov dword [ebx + 0x48], eax
test esi, esi
je 0x48f117
push 5
pop edx
cmp esi, edx
je 0x490a99
cmp esi, 0x10
jne 0x490ab0
cmp byte [edi + 1], 0xfa
setne al
test al, al
mov byte [ebx + 0x21], al
sete al
and dword [ebx], 0
mov byte [ebx + 0x22], al
jmp 0x49057d
mov esi, dword [ebx]
call fcn.004890bf
test al, 0xf0
jne 0x48f15c
mov ecx, eax
and ecx, 7
cmp ecx, 5
je 0x48f131
cmp ecx, 2
jne 0x48f15c
mov cl, al
shr eax, 1
and cl, 1
and al, 1
test cl, cl
mov byte [ebx + 0x21], cl
mov byte [ebx + 0x22], al
je 0x48f14a
cmp byte [edi + 1], 0xfa
je 0x48f15c
test al, al
je case.0x48db48.12
cmp byte [edi + 1], 0xfa
je case.0x48db48.12
mov dword [ebp - 8], 0xb
jmp 0x490ab0
mov edx, dword [ebx + 4]
push 1
mov ecx, ebx
push 0xffffffffffffffff
mov ebx, esi
call fcn.0048d86a
mov esi, eax
test esi, esi
pop ecx
pop ecx
je 0x48ddab
mov edx, dword [ebp - 0xc]
push 0x41e
lea edi, [esi + 0x30]
push 1
mov ebx, 0x1f4
xor eax, eax
mov byte [esi + 0x1c], 1
call fcn.004ac98c
test eax, eax
pop ecx
pop ecx
mov dword [ebp - 8], eax
jne 0x48f246
lea ebx, [esi + 0x30]
mov edi, dword [ebx]
push 1
call fcn.004854fb
test eax, eax
pop ecx
mov dword [ebp - 8], eax
jne 0x48f246
mov edi, dword [ebp - 0x24]
cmp dword [edi + 0x10], eax
je 0x48f227
lea eax, [ebp - 0x140]
push 2
push eax
mov eax, dword [ebx]
call fcn.00488c9d
test eax, eax
pop ecx
pop ecx
mov dword [ebp - 8], eax
jne 0x48f221
push dword [esi]
mov eax, dword [ebx]
push dword [edi + 0x10]
push 1
push dword [ebp - 0x140]
call fcn.00485ef2
mov ecx, dword [ebp + 8]
mov dword [ebp - 8], eax
mov eax, dword [edi + 0x10]
mov dword [esi + 0x4c], eax
mov ecx, dword [ecx]
mov ecx, dword [ecx + 8]
mov ecx, dword [ecx + 0x14]
mov cl, byte [ecx + 0x59]
mov byte [eax + 4], cl
mov eax, dword [esi + 0x4c]
add esp, 0x10
add eax, 5
mov dword [esi + 0x48], eax
mov byte [esi + 0x21], 0
jmp 0x48f246
push dword [esi]
mov eax, dword [ebx]
push 0
push 1
push 1
call fcn.00485ef2
mov dword [ebp - 8], eax
lea eax, [esi + 0x23]
add esp, 0x10
mov byte [esi + 0x21], 1
mov dword [esi + 0x48], eax
cmp byte [esi + 0x21], 0
sete al
mov byte [esi + 0x22], al
jmp case.0x48db48.12
mov edx, dword [ebx + 4]
push 0
lea ecx, [ebx - 0x14]
push 0xffffffffffffffff
mov ebx, esi
call fcn.0048d86a
test eax, eax
pop ecx
pop ecx
je 0x48ddab
mov ecx, dword [ebp - 0x24]
mov byte [eax + 0x1c], 1
mov byte [eax + 0x1e], 1
mov cl, byte [ecx + 8]
mov byte [eax + 0x1f], cl
lea ecx, [eax + 0x23]
mov dword [eax + 0x48], ecx
mov byte [eax + 0x21], 1
mov byte [eax + 0x22], 0
jmp case.0x48db48.12
mov ebx, dword [ebx + 4]
mov edi, ebx
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0x30]
shl edi, 2
mov esi, dword [edi + eax]
push ebx
call fcn.0048b6c9
mov eax, dword [ebx + 0x30]
and dword [edi + eax], 0
jmp 0x490964
mov ecx, dword [ebx + 4]
mov edx, dword [esi + 0x30]
mov edi, dword [edx + ecx*4]
cmp dword [edi], 0
je case.0x48db48.12
cmp eax, 6
mov byte [edi + 0x1c], 0
je 0x48f2db
cmp eax, 0x40
je 0x48f2db
xor eax, eax
jmp 0x48f2de
xor eax, eax
inc eax
mov ecx, dword [edi + 0x48]
mov byte [ecx], al
cmp byte [edi + 0x21], 0
je 0x48f348
mov esi, dword [ebp - 0x54]
call fcn.0048a31d
mov esi, eax
xor eax, eax
cmp dword [ebx + 8], eax
mov dword [ebp - 0x1f0], edx
jne 0x48f312
mov dword [edi + 0x28], esi
mov dword [edi + 0x2c], edx
mov byte [edi + 0x19], al
mov byte [edi + 0x20], 1
jmp case.0x48db48.12
mov ebx, dword [edi]
push eax
push edx
push esi
push eax
lea edx, [ebp - 0x68]
xor ecx, ecx
call fcn.00486677
add esp, 0x10
test eax, eax
mov dword [ebp - 8], eax
jne 0x490ab0
mov eax, dword [ebp - 0x1f0]
cmp dword [ebp - 0x68], 0
mov dword [edi + 0xc], eax
sete al
mov dword [edi + 8], esi
mov byte [edi + 0x19], al
jmp 0x48f3a2
mov eax, dword [edi + 0x4c]
mov dword [ebp - 0x14c], eax
mov ax, word [ebx + 0x10]
mov word [ebp - 0x148], ax
mov eax, dword [ebx + 0xc]
mov ebx, dword [edi]
imul eax, eax, 0x28
add eax, dword [esi + 0x4c]
lea edx, [ebp - 0x68]
mov dword [ebp - 0x144], eax
xor eax, eax
push eax
push eax
push eax
lea eax, [ebp - 0x14c]
push eax
xor ecx, ecx
mov byte [ebp - 0x146], 0
mov byte [ebp - 0x145], 0
call fcn.00486677
add esp, 0x10
test eax, eax
mov dword [ebp - 8], eax
jne 0x490ab0
mov byte [edi + 0x19], al
mov eax, dword [edi + 0x48]
xor ebx, ebx
cmp dword [ebp - 0x14], 0x75
mov byte [edi + 0x20], bl
mov dword [edi + 0x68], ebx
mov byte [eax], bl
je 0x48f3dd
cmp dword [ebp - 0x14], 6
je 0x48f3dd
cmp dword [ebp - 0x68], ebx
jl 0x48f3cd
lea eax, [ebp - 0x68]
push eax
push dword [edi]
call fcn.00486b5b
jmp 0x48f3ed
mov eax, dword [edi]
xor ecx, ecx
cmp byte [eax + 0x43], 1
setne cl
mov dword [ebp - 0x68], ecx
jmp 0x48f403
cmp dword [ebp - 0x68], ebx
jge 0x48f400
lea eax, [ebp - 0x68]
push eax
push dword [edi]
call fcn.00486a80
cmp eax, ebx
pop ecx
pop ecx
mov dword [ebp - 8], eax
jne 0x490ab0
mov byte [edi + 0x19], 0
jmp 0x48f403
mov dword [ebp - 0x68], ebx
cmp dword [ebp - 0x68], 0
je case.0x48db48.12
mov eax, dword [ebp - 0x24]
mov eax, dword [eax + 8]
jmp 0x48dbbe
mov eax, dword [ebx + 4]
mov esi, dword [esi + 0x30]
mov esi, dword [esi + eax*4]
xor edx, edx
cmp dword [esi], edx
je 0x48f479
cmp cl, 0x7a
jne 0x48f433
mov eax, dword [esi + 0x4c]
mov byte [eax + 6], 1
mov ecx, dword [ebp - 0x54]
mov eax, dword [ecx + 0x18]
mov ecx, dword [ecx + 0x14]
mov ebx, dword [esi]
cdq
push 0
push edx
push eax
push 0
lea edx, [ebp - 0x13c]
call fcn.00486677
mov ecx, dword [esi + 0x4c]
add esp, 0x10
test eax, eax
mov dword [ebp - 8], eax
mov byte [ecx + 6], 0
jne case.0x48db48.12
mov ebx, dword [ebp - 0x24]
xor edx, edx
cmp dword [ebp - 0x13c], eax
mov byte [esi + 0x20], al
sete dl
mov dword [esi + 0x68], eax
cmp byte [ebx], 0x7a
jne 0x48f485
test edx, edx
jmp 0x48e5b7
test edx, edx
jmp 0x48e75c
mov eax, dword [ebx + 4]
mov ebx, dword [ebx + 0x10]
mov edi, dword [ebp - 0x54]
imul ebx, ebx, 0x28
add ebx, dword [esi + 0x4c]
mov dword [ebp - 0x30], eax
mov eax, edi
call fcn.0048a417
mov eax, dword [edi]
mov ecx, dword [ebp - 0x30]
mov dword [ebp - 0x124], eax
mov eax, dword [edi + 4]
mov dword [ebp - 0x120], eax
mov eax, dword [esi + 0x30]
mov edi, dword [eax + ecx*4]
mov eax, dword [edi]
test eax, eax
mov dword [ebp - 0x14], eax
je case.0x48db48.12
mov esi, dword [ebx + 0x14]
mov dword [ebp - 0x1c], esi
call fcn.0048c77b
mov esi, dword [ebx + 0x18]
mov ebx, dword [ebp - 0x14]
sub esi, eax
xor ecx, ecx
push ecx
mov eax, esi
cdq
push edx
push eax
mov dword [edi + 0x68], ecx
push ecx
mov ecx, dword [ebp - 0x1c]
lea edx, [ebp - 0x80]
call fcn.00486677
add esp, 0x10
test eax, eax
mov dword [ebp - 8], eax
jne 0x490ab0
xor ebx, ebx
cmp dword [ebp - 0x80], ebx
jge 0x48f525
lea eax, [ebp - 0x80]
push eax
push dword [ebp - 0x14]
call fcn.00486a80
cmp dword [ebp - 0x80], ebx
pop ecx
pop ecx
mov dword [ebp - 8], eax
jne 0x48f40d
lea eax, [ebp - 0x80]
push eax
push dword [ebp - 0x1c]
mov ecx, edi
push esi
push ebx
call fcn.0048c877
add esp, 0x10
cmp eax, ebx
mov dword [ebp - 8], eax
jne 0x490ab0
cmp dword [ebp - 0x80], 0
jg 0x48f40d
lea eax, [ebp - 0x18c]
push eax
push dword [ebp - 0x14]
call fcn.0048c7ba
test eax, eax
pop ecx
pop ecx
mov dword [ebp - 8], eax
jne 0x490ab0
mov edx, dword [ebp - 0x18c]
cmp edx, dword [ebp - 0x124]
mov ecx, dword [ebp - 0x188]
jne 0x48f589
cmp ecx, dword [ebp - 0x120]
je 0x48f40d
mov eax, dword [ebp - 0x54]
mov dword [eax], edx
mov dword [eax + 4], ecx
jmp case.0x48db48.12
mov eax, dword [ebx + 4]
mov ecx, dword [esi + 0x30]
mov esi, dword [ecx + eax*4]
mov ebx, dword [esi]
test ebx, ebx
je case.0x48db48.12
mov eax, dword [ebp - 0x54]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
push 0
push eax
push ecx
push 0
lea edx, [ebp - 0xb8]
xor ecx, ecx
call fcn.00486677
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x54]
mov ecx, dword [eax]
mov dword [esi + 8], ecx
mov eax, dword [eax + 4]
mov dword [esi + 0xc], eax
xor eax, eax
add esp, 0x10
cmp dword [ebp - 0xb8], eax
mov byte [esi + 0x1c], al
sete cl
cmp dword [ebp - 0xb8], eax
mov byte [esi + 0x19], cl
mov dword [esi + 0x68], eax
jmp 0x48f407
mov ebx, dword [ebx + 4]
mov ecx, dword [esi + 0x30]
mov eax, ebx
shl eax, 2
mov ecx, dword [eax + ecx]
mov edx, dword [ecx + 0x58]
mov dword [edi], edx
mov ecx, dword [ecx + 0x5c]
mov dword [edi + 4], ecx
mov ecx, dword [esi + 0x30]
mov eax, dword [eax + ecx]
add dword [eax + 0x58], 1
adc dword [eax + 0x5c], 0
jmp 0x48e2be
mov eax, dword [ebx + 4]
mov ecx, dword [esi + 0x30]
mov eax, dword [ecx + eax*4]
and dword [ebp - 0x3c], 0
and dword [ebp - 0x38], 0
mov dword [ebp - 0x2c], eax
mov eax, dword [eax]
test eax, eax
je 0x48f82c
and dword [ebp - 0x14], 0
mov esi, eax
call fcn.004890bf
and al, 3
cmp al, 1
jne 0x48f15c
mov esi, dword [ebp - 0x2c]
cmp byte [esi + 0x1b], 0
jne 0x48f768
cmp byte [esi + 0x1d], 0
je 0x48f677
mov eax, dword [esi + 0x10]
mov dword [ebp - 0x3c], eax
mov eax, dword [esi + 0x14]
mov dword [ebp - 0x38], eax
jmp 0x48f6d7
mov eax, dword [esi]
lea ebx, [ebp - 0x88]
call fcn.0048663b
test eax, eax
mov dword [ebp - 8], eax
jne 0x490ab0
xor ebx, ebx
cmp dword [ebp - 0x88], ebx
je 0x48f6a5
mov dword [ebp - 0x3c], 1
mov dword [ebp - 0x38], ebx
jmp 0x48f6d4
mov esi, dword [ebp - 0x2c]
mov eax, dword [esi]
lea edi, [ebp - 0x3c]
call fcn.00485fcd
cmp dword [ebp - 0x3c], 0xffffffff
jne 0x48f6c7
cmp dword [ebp - 0x38], 0x7fffffff
jne 0x48f6c7
mov byte [esi + 0x1b], 1
jmp 0x48f6ce
add dword [ebp - 0x3c], 1
adc dword [ebp - 0x38], ebx
mov edi, dword [ebp - 0x28]
mov esi, dword [ebp - 0x2c]
mov ebx, dword [ebp - 0x24]
mov ebx, dword [ebx + 0xc]
test ebx, ebx
je 0x48f731
mov eax, dword [ebp + 8]
imul ebx, ebx, 0x28
add ebx, dword [eax + 0x4c]
mov eax, ebx
call fcn.0048a417
mov eax, dword [ebx]
cmp eax, 0xffffffff
mov ecx, dword [ebx + 4]
jne 0x48f704
cmp ecx, 0x7fffffff
je 0x490aa9
cmp byte [esi + 0x1b], 0
jne 0x490aa9
add eax, 1
adc ecx, 0
cmp dword [ebp - 0x38], ecx
jg 0x48f726
jl 0x48f720
cmp dword [ebp - 0x3c], eax
jae 0x48f726
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], ecx
mov eax, dword [ebp - 0x3c]
mov dword [ebx], eax
mov eax, dword [ebp - 0x38]
mov dword [ebx + 4], eax
cmp dword [ebp - 0x38], 0x7fffffff
ja 0x48f75a
jb 0x48f742
cmp dword [ebp - 0x3c], 0xffffffff
jae 0x48f75a
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x38]
add eax, 1
adc ecx, 0
mov byte [esi + 0x1d], 1
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], ecx
jmp 0x48f75e
mov byte [esi + 0x1d], 0
cmp byte [esi + 0x1b], 0
je 0x48f820
mov ebx, dword [ebp - 0xc]
mov eax, dword [ebx + 0x38]
and dword [ebp - 0x20], 0
mov dword [ebp - 0x3c], eax
mov eax, dword [ebx + 0x3c]
mov dword [ebp - 0x38], eax
xor ecx, ecx
cmp dword [ebp - 0x20], ecx
jne 0x48f79d
mov eax, dword [ebp - 0x3c]
and eax, 0xffffff
cmp eax, dword [ebp - 0x3c]
jne 0x48f79d
cmp ecx, dword [ebp - 0x38]
jne 0x48f79d
add dword [ebp - 0x3c], 1
adc dword [ebp - 0x38], ecx
jmp 0x48f7bb
lea eax, [ebp - 0x3c]
push eax
push 8
call fcn.0047ebc2
cmp dword [ebp - 0x20], 5
pop ecx
pop ecx
jge 0x48f7bb
and dword [ebp - 0x3c], 0xffffff
and dword [ebp - 0x38], 0
mov eax, dword [ebp - 0x3c]
or eax, dword [ebp - 0x38]
je 0x48f7e8
mov ebx, dword [esi]
push 0
push dword [ebp - 0x38]
lea edx, [ebp - 0x88]
push dword [ebp - 0x3c]
xor ecx, ecx
push 0
call fcn.00486677
mov ebx, dword [ebp - 0xc]
add esp, 0x10
inc dword [ebp - 0x20]
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x20], 0x64
jge 0x48f801
cmp dword [ebp - 0x14], 0
jne 0x48f801
cmp dword [ebp - 0x88], 0
je 0x48f77b
cmp dword [ebp - 0x14], 0
mov eax, dword [ebp - 0x3c]
mov dword [ebx + 0x38], eax
mov eax, dword [ebp - 0x38]
mov dword [ebx + 0x3c], eax
jne 0x48f820
cmp dword [ebp - 0x88], 0
je 0x490aa9
and dword [esi + 0x68], 0
mov byte [esi + 0x19], 0
mov byte [esi + 0x20], 0
mov ax, word [edi + 0x1c]
and ax, 0xffe4
or ax, 4
mov word [edi + 0x1c], ax
mov eax, dword [ebp - 0x3c]
mov dword [edi], eax
mov eax, dword [ebp - 0x38]
jmp 0x48dc05
mov edi, dword [ebx + 8]
mov eax, dword [ebx + 0xc]
imul edi, edi, 0x28
mov ecx, dword [esi + 0x4c]
imul eax, eax, 0x28
mov edx, dword [esi + 0x30]
add eax, ecx
add edi, ecx
test byte [ebx + 3], 1
mov ecx, dword [ebx + 4]
mov ecx, dword [edx + ecx*4]
mov edx, dword [eax]
mov dword [ebp - 0xa4], edx
mov edx, dword [eax + 4]
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0xa0], edx
je 0x48f885
inc dword [esi + 0x104]
test byte [ebx + 3], 2
je 0x48f899
mov esi, dword [eax]
mov edx, dword [ebp - 0xc]
mov dword [edx + 0x30], esi
mov esi, dword [eax + 4]
mov dword [edx + 0x34], esi
cmp byte [ecx + 0x1d], 0
je 0x48f8b4
mov edx, dword [eax + 4]
cmp edx, dword [ecx + 0x14]
jl 0x48f8b4
jg 0x48f8b0
mov eax, dword [eax]
cmp eax, dword [ecx + 0x10]
jb 0x48f8b4
mov byte [ecx + 0x1d], 0
movzx eax, word [edi + 0x1c]
test al, 1
je 0x48f8c4
and dword [edi + 0x14], 0
and dword [edi + 0x18], 0
cmp byte [ecx + 0x1e], 0
je 0x48f96c
cmp byte [ecx + 0x1f], 0
jne 0x48f8e3
mov eax, dword [ebp - 0x44]
push dword [eax + 0x38]
call fcn.0047d517
pop ecx
mov ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0xa4]
mov dword [ecx + 0x40], eax
mov eax, dword [ebp - 0xa0]
mov dword [ecx + 0x44], eax
mov eax, dword [edi + 0x18]
mov dword [ecx + 0x34], eax
mov edx, dword [edi + 0x14]
cmp edx, dword [edi + 0x24]
je 0x48f949
cmp byte [ecx + 0x1f], 0
jne 0x48f949
add eax, 2
push eax
call fcn.0047d447
test eax, eax
mov esi, dword [ebp - 0x44]
pop ecx
mov dword [esi + 0x38], eax
je 0x48ddab
push dword [esi + 0x34]
push dword [edi + 0x14]
push eax
call fcn.0058e7b0
mov eax, dword [esi + 0x34]
mov ecx, dword [esi + 0x38]
mov byte [eax + ecx], 0
mov ecx, dword [esi + 0x38]
mov eax, dword [esi + 0x34]
mov byte [eax + ecx + 1], 0
add esp, 0xc
mov ecx, esi
jmp 0x48f966
cmp byte [ecx + 0x1f], 0
mov dword [ecx + 0x38], edx
jne 0x48f966
mov ax, word [edi + 0x1c]
and ax, 0xffbf
or ax, 0x100
and dword [edi + 0x24], 0
mov word [edi + 0x1c], ax
mov byte [ecx + 0x1c], 0
jmp 0x48f9a8
test ax, 0x800
je 0x48f976
mov eax, dword [edi]
jmp 0x48f978
xor eax, eax
movzx ecx, byte [ebx + 3]
and ecx, 8
push ecx
push eax
push dword [edi + 0x18]
mov eax, dword [ebp - 0x44]
push dword [edi + 0x14]
mov eax, dword [eax]
push dword [ebp - 0xa0]
push dword [ebp - 0xa4]
push 0
call fcn.00488694
mov ecx, dword [ebp - 0x44]
add esp, 0x1c
mov dword [ebp - 8], eax
and dword [ecx + 0x68], 0
cmp dword [ebp - 8], 0
mov byte [ecx + 0x19], 0
mov byte [ecx + 0x20], 0
jne case.0x48db48.12
mov eax, dword [ebp - 0xc]
mov ecx, dword [eax + 0xb8]
test ecx, ecx
je case.0x48db48.12
mov eax, dword [ebx + 0x10]
test eax, eax
je case.0x48db48.12
push dword [ebp - 0xa0]
push dword [ebp - 0xa4]
push eax
mov eax, dword [ebp - 0x44]
mov edx, dword [eax + 4]
mov eax, dword [ebp - 0xc]
imul edx, edx, 0x18
mov esi, dword [eax + 8]
push dword [edx + esi]
mov dl, byte [ebx + 3]
and dl, 4
neg dl
sbb edx, edx
and edx, 5
add edx, 0x12
push edx
push dword [eax + 0xb4]
call ecx
add esp, 0x18
jmp case.0x48db48.12
mov eax, dword [ebx + 4]
mov ecx, dword [esi + 0x30]
mov esi, dword [ecx + eax*4]
mov eax, dword [ebp - 0xc]
cmp dword [eax + 0xb8], 0
je 0x48fa47
cmp dword [ebx + 0x10], 0
je 0x48fa47
mov eax, dword [esi + 8]
mov dword [ebp - 0x134], eax
mov eax, dword [esi + 0xc]
mov dword [ebp - 0x130], eax
call fcn.0048c144
test eax, eax
mov dword [ebp - 8], eax
jne 0x490ab0
mov ebx, dword [esi]
call fcn.0048884e
and dword [esi + 0x68], 0
test eax, eax
mov dword [ebp - 8], eax
mov byte [esi + 0x1d], 0
jne 0x48faaa
mov eax, dword [ebp - 0xc]
mov edx, dword [eax + 0xb8]
test edx, edx
je 0x48faaa
mov ecx, dword [ebp - 0x24]
mov ecx, dword [ecx + 0x10]
test ecx, ecx
je 0x48faaa
push dword [ebp - 0x130]
push dword [ebp - 0x134]
push ecx
mov ecx, dword [esi + 4]
mov esi, dword [eax + 8]
imul ecx, ecx, 0x18
push dword [ecx + esi]
push 9
push dword [eax + 0xb4]
call edx
add esp, 0x18
mov eax, dword [ebp - 0x24]
test byte [eax + 8], 1
je case.0x48db48.12
mov eax, dword [ebp + 8]
inc dword [eax + 0x104]
jmp case.0x48db48.12
cmp dword [ebx + 4], 0
je 0x48fada
mov eax, dword [esi + 0x104]
mov ecx, dword [ebp - 0xc]
add dword [ecx + 0x48], eax
mov dword [ecx + 0x44], eax
and dword [esi + 0x104], 0
jmp case.0x48db48.12
mov eax, dword [ebx + 8]
mov ecx, dword [ebp + 8]
imul eax, eax, 0x28
add eax, dword [ecx + 0x4c]
mov ecx, dword [ecx + 0x30]
mov dword [ebp - 0x28], eax
mov eax, dword [ebx + 4]
mov esi, dword [ecx + eax*4]
mov ebx, dword [esi]
mov dword [ebp - 0x1c], ebx
call fcn.0048c144
test eax, eax
mov dword [ebp - 8], eax
jne 0x490ab0
cmp byte [esi + 0x22], 0
mov eax, ebx
je 0x48fb53
lea edi, [ebp - 0x194]
call fcn.00485fcd
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x50]
mov ecx, dword [ebp - 0x190]
cdq
cmp ecx, edx
jg 0x48dcae
mov ebx, dword [ebp - 0x194]
jl 0x48fb4b
cmp ebx, eax
ja 0x48dcae
mov dword [ebp - 0xbc], ebx
jmp 0x48fb70
lea edi, [ebp - 0xbc]
call fcn.00486014
mov ebx, dword [ebp - 0xbc]
mov eax, dword [ebp - 0xc]
cmp ebx, dword [eax + 0x50]
ja 0x48dcae
mov edi, dword [ebp - 0x28]
push 0
mov eax, ebx
call fcn.0048a02f
test eax, eax
pop ecx
jne 0x48ddab
mov ax, word [edi + 0x1c]
push dword [edi + 0x14]
and ax, 0xfff0
or ax, 0x10
mov dword [edi + 0x18], ebx
mov word [edi + 0x1c], ax
cmp byte [esi + 0x22], 0
push ebx
push 0
je 0x48fbb1
mov esi, dword [ebp - 0x1c]
call fcn.004863ac
add esp, 0xc
jmp 0x48fbbc
push dword [ebp - 0x1c]
call fcn.004863e9
add esp, 0x10
mov dword [ebp - 8], eax
jmp 0x48ed8e
mov ecx, dword [ebp + 8]
mov eax, dword [ebx + 4]
mov ecx, dword [ecx + 0x30]
mov esi, dword [ecx + eax*4]
call fcn.0048c144
test eax, eax
mov dword [ebp - 8], eax
jne 0x490ab0
cmp byte [esi + 0x19], al
je 0x48fbf3
mov eax, dword [esi + 8]
mov dword [ebp - 0xac], eax
mov eax, dword [esi + 0xc]
jmp 0x48fc05
cmp byte [esi + 0x1e], 0
je 0x48fc0d
mov eax, dword [esi + 0x40]
mov dword [ebp - 0xac], eax
mov eax, dword [esi + 0x44]
mov dword [ebp - 0xa8], eax
jmp 0x48fc27
cmp byte [esi + 0x1c], 0
jne case.0x48db48.12
mov eax, dword [esi]
lea edi, [ebp - 0xac]
call fcn.00485fcd
mov edi, dword [ebp - 0x28]
mov eax, dword [ebp - 0xac]
mov dword [edi], eax
mov eax, dword [ebp - 0xa8]
jmp 0x48e2bb
mov eax, dword [ebx + 4]
mov ecx, dword [esi + 0x30]
mov eax, dword [ecx + eax*4]
mov byte [eax + 0x1c], 1
mov byte [eax + 0x19], 0
jmp case.0x48db48.12
mov eax, dword [ebx + 4]
mov ecx, dword [esi + 0x30]
mov esi, dword [ecx + eax*4]
mov eax, dword [esi]
lea ebx, [ebp - 0x128]
call fcn.0048663b
and dword [esi + 0x68], 0
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x128]
test eax, eax
mov byte [esi + 0x1c], al
mov byte [esi + 0x20], 0
je case.0x48db48.12
mov eax, dword [ebp - 0x24]
mov eax, dword [eax + 8]
test eax, eax
jle case.0x48db48.12
jmp 0x48dbbe
mov eax, dword [ebx + 4]
mov ecx, dword [esi + 0x30]
mov esi, dword [ecx + eax*4]
mov edi, dword [esi]
test edi, edi
je 0x48fcdf
mov eax, edi
call fcn.00486505
test eax, eax
jne 0x48fcc8
cmp byte [edi + 0x43], al
jne 0x48fcbd
mov dword [ebp - 0x6c], 1
jmp 0x48fcc8
and dword [ebp - 0x6c], 0
mov eax, edi
call fcn.004865b9
cmp dword [ebp - 0x6c], 0
mov dword [ebp - 8], eax
sete al
and dword [esi + 0x68], 0
mov byte [esi + 0x1a], al
mov byte [esi + 0x20], 0
jmp 0x48fce6
mov dword [ebp - 0x6c], 1
mov eax, dword [ebp - 0x6c]
mov byte [esi + 0x1c], al
jmp 0x48e704
mov eax, dword [ebp - 0xc]
cmp dword [eax + 0xd8], 0
jne 0x490af2
mov eax, dword [ebx + 4]
mov ecx, dword [esi + 0x30]
mov esi, dword [ecx + eax*4]
test esi, esi
je case.0x48db48.12
cmp byte [esi + 0x1c], 0
mov eax, dword [esi]
jne 0x48fd5a
lea ecx, [ebp - 0x8c]
mov dword [ebp - 0x8c], 1
cmp byte [ebx], 0x67
push ecx
push eax
jne 0x48fd38
call fcn.00486a80
jmp 0x48fd3d
call fcn.00486b5b
and dword [esi + 0x68], 0
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x8c]
test eax, eax
pop ecx
pop ecx
mov byte [esi + 0x1c], al
jne 0x48fd5a
mov ebx, dword [ebx + 8]
dec ebx
mov dword [ebp - 0x18], ebx
mov byte [esi + 0x19], 0
jmp case.0x48db48.12
mov eax, dword [ebx + 4]
mov ecx, dword [esi + 0x30]
mov esi, dword [ecx + eax*4]
mov eax, dword [esi]
test eax, eax
mov dword [ebp - 0x30], eax
je case.0x48db48.12
mov eax, dword [ebp - 0x48]
test word [eax + 0x1c], 0x800
mov edi, eax
je 0x48fd90
call fcn.0048a12f
mov dword [ebp - 8], eax
jmp 0x48fd94
and dword [ebp - 8], 0
xor ecx, ecx
cmp dword [ebp - 8], ecx
jne case.0x48db48.12
push dword [ebx + 0xc]
mov eax, dword [edi + 0x18]
mov edi, dword [edi + 0x14]
push ecx
push ecx
cdq
push 0x61b5f4
push edx
push eax
mov eax, dword [ebp - 0x30]
push edi
call fcn.00488694
add esp, 0x1c
and dword [esi + 0x68], 0
mov dword [ebp - 8], eax
jmp case.0x48db48.12
mov eax, dword [ebx + 4]
mov ecx, dword [esi + 0x30]
mov edi, dword [ecx + eax*4]
mov eax, dword [edi]
test eax, eax
mov dword [ebp - 0x30], eax
je case.0x48db48.12
mov ecx, dword [edi + 0x4c]
mov dword [ebp - 0x15c], ecx
mov cx, word [ebx + 0xc]
mov word [ebp - 0x158], cx
mov ecx, dword [ebx + 8]
imul ecx, ecx, 0x28
add ecx, dword [esi + 0x4c]
lea edx, [ebp - 0x118]
mov dword [ebp - 0x154], ecx
xor ecx, ecx
push ecx
push ecx
push ecx
lea ecx, [ebp - 0x15c]
push ecx
xor ecx, ecx
mov ebx, eax
mov byte [ebp - 0x156], 0
mov byte [ebp - 0x155], 0
call fcn.00486677
add esp, 0x10
test eax, eax
mov dword [ebp - 8], eax
jne 0x48fe46
cmp dword [ebp - 0x118], eax
jne 0x48fe46
call fcn.0048884e
mov dword [ebp - 8], eax
and dword [edi + 0x68], 0
jmp case.0x48db48.12
mov ecx, dword [esi + 0x30]
mov eax, dword [ebx + 4]
mov eax, dword [ecx + eax*4]
mov ecx, dword [eax]
test ecx, ecx
je case.0x48db48.12
cmp byte [eax + 0x1c], 0
jne case.0x48db48.12
lea eax, [ebp - 0x174]
push eax
push ecx
call fcn.0048c7ba
test eax, eax
pop ecx
pop ecx
mov dword [ebp - 8], eax
jne 0x490ab0
mov ax, word [edi + 0x1c]
and ax, 0xffe4
or ax, 4
mov word [edi + 0x1c], ax
mov eax, dword [ebp - 0x174]
mov dword [edi], eax
mov eax, dword [ebp - 0x170]
jmp 0x48dc05
mov eax, dword [ebx + 4]
mov ecx, dword [esi + 0x30]
mov edi, dword [ecx + eax*4]
cmp dword [edi], 0
je case.0x48db48.12
mov eax, dword [edi + 0x4c]
mov cl, byte [ebx + 3]
mov dword [ebp - 0x16c], eax
mov ax, word [ebx + 0x10]
mov word [ebp - 0x168], ax
mov eax, dword [ebx + 0xc]
imul eax, eax, 0x28
add eax, dword [esi + 0x4c]
xor esi, esi
mov dword [ebp - 0x164], eax
mov eax, dword [edi + 0x48]
mov byte [eax], cl
lea eax, [ebp - 0x7c]
push eax
push esi
lea eax, [ebp - 0x16c]
push esi
push eax
mov ecx, edi
mov byte [ebp - 0x166], 0
mov byte [ebp - 0x165], 0
call fcn.0048c877
mov dword [ebp - 8], eax
mov eax, dword [edi + 0x48]
add esp, 0x10
mov byte [eax], 0
cmp byte [ebx], 0x28
jne 0x48ff20
neg dword [ebp - 0x7c]
jmp 0x48ff23
inc dword [ebp - 0x7c]
cmp dword [ebp - 0x7c], esi
jle case.0x48db48.12
jmp 0x48db9a
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x8c]
xor ecx, ecx
test eax, eax
je 0x48ff78
cmp dword [eax + 0x44], 0xbdf20da3
jne 0x48ff59
cmp byte [eax + 0x101], 2
jae 0x48ff59
cmp dword [eax + 0x70], 0
jl 0x48ff59
inc ecx
mov eax, dword [eax + 8]
test eax, eax
jne 0x48ff40
cmp ecx, 1
jle 0x48ff78
mov dword [ebp - 8], 6
mov dword [esi + 0x7c], 2
jmp case.0x48db48.12
mov eax, dword [ebx + 0xc]
mov ecx, dword [ebx + 4]
imul eax, eax, 0x18
mov dword [ebp - 0x30], ecx
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ecx + 8]
mov esi, dword [ecx + eax + 4]
mov dword [ebp - 0x1c], eax
mov eax, esi
call fcn.00483e11
mov eax, dword [esi + 4]
mov ecx, dword [esi]
mov dword [eax + 4], ecx
lea eax, [ebp - 0x138]
push eax
push dword [ebp - 0x30]
push esi
call fcn.00488e3d
add esp, 0xc
mov dword [ebp - 0x30], eax
call fcn.00483e73
mov ax, word [edi + 0x1c]
mov esi, dword [ebp - 0x138]
mov ecx, dword [ebp - 0x30]
and ax, 0xffe4
or ax, 4
test ecx, ecx
mov word [edi + 0x1c], ax
mov eax, esi
cdq
mov dword [ebp - 8], ecx
mov dword [edi], eax
mov dword [edi + 4], edx
jne case.0x48db48.12
test esi, esi
je case.0x48db48.12
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 8]
add eax, dword [ebp - 0x1c]
mov ebx, dword [ebx + 4]
mov ecx, dword [eax + 0x14]
mov ecx, dword [ecx + 0x10]
jmp 0x490010
mov edx, dword [ecx + 8]
cmp dword [edx + 0x14], esi
jne 0x49000e
mov dword [edx + 0x14], ebx
mov ecx, dword [ecx]
test ecx, ecx
jne 0x490003
mov eax, dword [eax + 0x14]
mov eax, dword [eax + 0x24]
jmp 0x490029
mov ecx, dword [eax + 8]
cmp dword [ecx + 0x14], esi
jne 0x490027
mov dword [ecx + 0x14], ebx
mov eax, dword [eax]
test eax, eax
jne 0x49001c
jmp case.0x48db48.12
mov eax, dword [ebx + 8]
mov ecx, dword [ebp - 0xc]
imul eax, eax, 0x18
mov ecx, dword [ecx + 8]
push dword [ebx + 4]
mov eax, dword [eax + ecx + 4]
call fcn.00488dd2
mov dword [ebp - 8], eax
jmp 0x490964
mov ebx, dword [ebx + 4]
mov eax, dword [ebp - 0xc]
imul ebx, ebx, 0x18
add ebx, dword [eax + 8]
xor eax, eax
cmp cl, 0x32
setne al
dec eax
and eax, 3
inc eax
inc eax
push eax
lea eax, [ebp - 0x150]
push eax
mov eax, dword [ebx + 4]
call fcn.00488c9d
test eax, eax
pop ecx
pop ecx
mov dword [ebp - 8], eax
jne case.0x48db48.12
mov eax, dword [ebp - 0x150]
jmp 0x48e699
cmp dword [ebx + 8], 0
mov eax, dword [ebx + 4]
jne 0x4900b6
mov edx, dword [ebp - 0xc]
mov edx, dword [edx + 8]
mov ecx, eax
imul ecx, ecx, 0x18
mov ecx, dword [ecx + edx + 0x14]
test byte [ecx + 0x5a], 1
je case.0x48db48.12
cmp eax, 1
mov ecx, str.sqlite_temp_master
je 0x4900c5
mov ecx, str.sqlite_master
push dword [ebx + 0x10]
mov edi, dword [ebp - 0xc]
mov dword [ebp - 0x1e8], eax
imul eax, eax, 0x18
push ecx
mov ecx, dword [edi + 8]
add esi, 0xf4
mov dword [ebp - 0x1ec], edi
mov dword [ebp - 0x1e4], esi
push dword [eax + ecx]
push str.SELECT_name__rootpage__sql_FROM__q._s_WHERE__s
call fcn.0047e9e2
mov esi, eax
add esp, 0x10
test esi, esi
je 0x48ddab
push 0
lea eax, [ebp - 0x1ec]
push eax
push fcn.0049f84e
push esi
push edi
mov byte [edi + 0x80], 1
call fcn.0049da49
add esp, 0x14
cmp eax, 4
mov dword [ebp - 8], eax
jne 0x490134
mov eax, dword [ebp - 0x1e0]
mov dword [ebp - 8], eax
push esi
call fcn.0047d517
cmp dword [ebp - 8], 7
mov byte [edi + 0x80], 0
pop ecx
je 0x48ddab
jmp case.0x48db48.12
mov ecx, dword [ebx + 4]
mov eax, dword [ebp - 0xc]
call fcn.00495555
mov dword [ebp - 8], eax
jmp case.0x48db48.12
push dword [ebx + 0x10]
mov eax, dword [ebx + 4]
push dword [ebp - 0xc]
call fcn.00496722
jmp 0x490963
push dword [ebx + 0x10]
mov eax, dword [ebx + 4]
mov edi, dword [ebp - 0xc]
call fcn.00496436
jmp 0x490964
push dword [ebx + 0x10]
mov eax, dword [ebx + 4]
mov ebx, dword [ebp - 0xc]
call fcn.004a4d2c
jmp 0x490964
mov eax, dword [ebx + 8]
mov dword [ebp - 0x2c], eax
lea eax, [eax*4 + 4]
push eax
call fcn.0047d447
test eax, eax
pop ecx
mov dword [ebp - 0x1c], eax
je 0x48ddab
mov edi, dword [ebx + 0xc]
mov eax, dword [ebx + 4]
imul edi, edi, 0x28
mov esi, dword [esi + 0x4c]
imul eax, eax, 0x28
and dword [ebp - 0x14], 0
add eax, esi
add edi, esi
cmp dword [ebp - 0x2c], 0
mov dword [ebp - 0x10], eax
jle 0x4901f8
mov esi, eax
call fcn.0048a31d
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x1c]
mov dword [edx + ecx*4], eax
inc ecx
add esi, 0x28
cmp ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x14], ecx
jl 0x4901de
mov esi, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
and dword [esi + eax*4], 0
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ecx + 8]
lea eax, [ebp - 0xb4]
push eax
movzx eax, byte [ebx + 3]
push dword [edi]
imul eax, eax, 0x18
push dword [ebp - 0x2c]
push esi
push dword [eax + ecx + 4]
call fcn.004897fd
mov ecx, eax
mov eax, dword [ebp - 0xb4]
cdq
add esp, 0x14
sub dword [edi], eax
sbb dword [edi + 4], edx
mov edi, dword [ebp - 0x10]
mov ax, word [edi + 0x1c]
and ax, 0xffe1
or ax, 1
cmp dword [ebp - 0xb4], 0
mov word [edi + 0x1c], ax
mov byte [edi + 0x1e], 5
je 0x49026a
push 1
push ecx
mov eax, fcn.0047d517
or ecx, 0xffffffff
mov edx, edi
call fcn.0048a60b
pop ecx
pop ecx
movzx eax, byte [ebp - 0x40]
push eax
mov eax, edi
call fcn.0048a00f
pop ecx
push esi
call fcn.0047d517
jmp 0x490964
mov esi, dword [ebp - 0x10]
call fcn.0048a31d
mov edi, dword [ebp + 8]
push edx
push eax
add edi, 0x58
call fcn.00489f4d
pop ecx
cmp eax, 7
jmp 0x490145
mov eax, dword [ebp - 0xc]
cmp dword [eax + 0xd8], 0
jne 0x490af2
mov edx, dword [ebx + 4]
mov eax, dword [ebp + 8]
imul edx, edx, 0x28
add edx, dword [eax + 0x4c]
lea esi, [eax + 0x58]
mov cx, word [edx + 0x1c]
and cx, 0xffe4
or cx, 4
mov dword [ebp - 0x28], edx
mov word [edx + 0x1c], cx
call fcn.00489fa4
cmp eax, 0x65
jmp 0x48e75c
mov edi, dword [esi + 0x64]
cmp edi, dword [esi + 0x68]
lea eax, [edi + 1]
mov dword [esi + 0x64], eax
jl 0x490310
mov dword [esi + 0x68], eax
lea eax, [edi + 1]
imul eax, eax, 0x18
push eax
push dword [esi + 0x6c]
mov eax, dword [ebp - 0xc]
call fcn.0047d7ea
test eax, eax
pop ecx
pop ecx
mov dword [esi + 0x6c], eax
je 0x48ddab
mov eax, dword [ebp + 8]
imul edi, edi, 0x18
add edi, dword [eax + 0x6c]
mov ecx, dword [ebp - 0xc]
mov edx, dword [ecx + 0x30]
mov dword [edi], edx
mov ecx, dword [ecx + 0x34]
mov dword [edi + 4], ecx
mov ecx, dword [eax + 0x104]
mov dword [edi + 8], ecx
add eax, 0x58
add edi, 0xc
mov esi, eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push 0xc
push 0
push eax
movsd dword es:[edi], dword [esi]
call fcn.0058ee10
add esp, 0xc
jmp case.0x48db48.12
mov eax, dword [ebp + 8]
dec dword [eax + 0x64]
mov ecx, dword [eax + 0x64]
imul ecx, ecx, 0x18
add ecx, dword [eax + 0x6c]
lea edi, [eax + 0x58]
mov esi, ecx
mov edx, dword [esi]
mov ecx, dword [ebp - 0xc]
mov dword [ecx + 0x30], edx
mov edx, dword [esi + 4]
mov dword [ecx + 0x34], edx
mov ecx, dword [esi + 8]
mov dword [eax + 0x104], ecx
call fcn.00489fe8
add esi, 0xc
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
jmp case.0x48db48.12
mov edi, dword [ebp - 0x10]
mov eax, edi
call fcn.0048a417
mov esi, dword [ebp - 0x48]
mov eax, esi
call fcn.0048a417
mov eax, dword [esi]
mov esi, dword [esi + 4]
mov ecx, dword [edi + 4]
cmp ecx, esi
jg case.0x48db48.12
jl 0x4903ba
mov ecx, edi
mov ecx, dword [ecx]
cmp ecx, eax
jae case.0x48db48.12
mov ecx, dword [ebp - 0x10]
mov dword [ecx], eax
mov dword [ecx + 4], esi
jmp case.0x48db48.12
mov eax, dword [ebp - 0x10]
cmp dword [eax + 4], 0
jl case.0x48db48.12
jg 0x48db9a
cmp dword [eax], 0
jbe case.0x48db48.12
jmp 0x48db9a
mov eax, dword [ebp - 0x10]
cmp dword [eax + 4], 0
jg case.0x48db48.12
jl 0x48db9a
cmp dword [eax], 0
jae case.0x48db48.12
jmp 0x48db9a
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax]
or ecx, dword [eax + 4]
jmp 0x48e75c
mov ecx, dword [ebx + 8]
movzx eax, byte [ebx + 3]
imul ecx, ecx, 0x28
add ecx, dword [esi + 0x4c]
mov edi, dword [esi + 0x24]
xor edx, edx
test eax, eax
mov dword [ebp - 0x1c], eax
jle 0x490440
mov dword [edi + edx*4], ecx
call fcn.0048d83e
inc edx
add ecx, 0x28
cmp edx, dword [ebp - 0x1c]
jl 0x49042f
mov eax, dword [ebx + 0x10]
mov ecx, dword [ebp - 0xc]
mov dword [ebp - 0x114], eax
mov eax, dword [ebx + 0xc]
imul eax, eax, 0x28
add eax, dword [esi + 0x4c]
mov dword [ebp - 0xe4], eax
inc dword [eax + 0x18]
xor eax, eax
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0xe8], eax
mov dword [ebp - 0xec], eax
mov dword [ebp - 0xe0], eax
mov dword [ebp - 0xdc], eax
mov eax, dword [ebp - 0x114]
mov word [ebp - 0xf0], 1
mov dword [ebp - 0xfc], ecx
cmp byte [eax + 3], 0
je 0x4904a2
mov ecx, dword [ebx - 4]
mov dword [ebp - 0xdc], ecx
push edi
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x114]
push ecx
call dword [eax + 0x14]
add esp, 0xc
cmp dword [ebp - 0xe0], 0
je 0x4904e6
push 0
push ecx
lea eax, [ebp - 0x10c]
push eax
call fcn.0048cafb
pop ecx
pop ecx
push eax
add esi, 0xf4
push esi
call fcn.0047d8af
mov eax, dword [ebp - 0xe0]
add esp, 0xc
mov dword [ebp - 8], eax
lea eax, [ebp - 0x10c]
push eax
call fcn.0048a2b9
jmp 0x490964
mov edi, dword [ebx + 4]
mov ecx, dword [ebx + 0x10]
imul edi, edi, 0x28
add edi, dword [esi + 0x4c]
mov eax, edi
call fcn.0048a231
cmp eax, 1
mov dword [ebp - 8], eax
jne 0x49052d
push 0
push ecx
push edi
call fcn.0048cafb
pop ecx
pop ecx
push eax
add esi, 0xf4
push esi
call fcn.0047d8af
add esp, 0xc
movzx eax, byte [ebp - 0x40]
push eax
mov eax, edi
call fcn.0048a00f
jmp 0x48e23c
push dword [ebp - 0xc]
add esi, 0xf4
push esi
call fcn.004a6032
mov dword [ebp - 8], eax
jmp 0x490963
mov eax, dword [ebx + 4]
mov ecx, dword [ebp - 0xc]
imul eax, eax, 0x18
mov ecx, dword [ecx + 8]
mov eax, dword [eax + ecx + 4]
call fcn.00485a29
cmp eax, 0x65
mov dword [ebp - 8], eax
jne case.0x48db48.12
mov ebx, dword [ebx + 8]
dec ebx
mov dword [ebp - 0x18], ebx
and dword [ebp - 8], 0
jmp case.0x48db48.12
cmp dword [ebx + 4], 0
je 0x48ef64
mov byte [esi + 0xff], 1
jmp case.0x48db48.12
mov edx, dword [ebx + 4]
mov ecx, dword [ebp - 0xc]
imul edx, edx, 0x18
mov edi, dword [ecx + 8]
mov al, byte [ebx + 0xc]
mov ecx, dword [ebx + 8]
mov edi, dword [edx + edi + 4]
call fcn.00489e6f
cmp eax, 6
mov dword [ebp - 8], eax
jne case.0x48db48.12
push 0
push dword [ebx + 0x10]
add esi, 0xf4
push str.database_table_is_locked:
push esi
call fcn.0047d8af
add esp, 0x10
jmp case.0x48db48.12
mov eax, dword [ebx + 0x10]
mov esi, dword [ebp - 0xc]
call fcn.004a6c8b
jmp 0x49015c
push dword [ebx + 0x10]
mov eax, dword [ebx + 4]
mov edx, dword [ebp - 0xc]
lea ecx, [esi + 0xf4]
call fcn.004a6a16
jmp 0x49004a
mov ecx, dword [ebp - 0xc]
add esi, 0x101
mov byte [esi], 2
push dword [ebx + 0x10]
mov eax, dword [ebx + 4]
call fcn.004a6b9d
mov dword [ebp - 8], eax
mov byte [esi], 0
jmp 0x490964
mov edi, dword [ebx + 0x10]
and dword [ebp - 0x20], 0
mov eax, dword [edi]
lea ecx, [ebp - 0x20]
push ecx
push edi
mov dword [ebp - 0x30], eax
call dword [eax + 0x18]
test eax, eax
pop ecx
pop ecx
mov dword [ebp - 8], eax
jne case.0x48db48.12
mov eax, dword [ebp - 0x20]
mov dword [eax], edi
mov edx, dword [ebx + 4]
push 0
lea ecx, [ebx - 0x14]
push 0xffffffffffffffff
mov ebx, esi
call fcn.0048d86a
test eax, eax
pop ecx
pop ecx
je 0x49067e
mov ecx, dword [ebp - 0x20]
mov dword [eax + 0x60], ecx
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ecx]
mov ecx, dword [ecx]
mov dword [eax + 0x64], ecx
jmp case.0x48db48.12
mov eax, dword [ebp - 0xc]
push dword [ebp - 0x20]
mov byte [eax + 0x1e], 1
mov eax, dword [ebp - 0x30]
call dword [eax + 0x1c]
jmp 0x490964
mov eax, dword [ebx + 0xc]
mov ecx, dword [ebx + 4]
imul eax, eax, 0x28
mov edx, dword [esi + 0x30]
mov edi, dword [edx + ecx*4]
mov ecx, dword [edi + 0x60]
mov ecx, dword [ecx]
add eax, dword [esi + 0x4c]
mov ecx, dword [ecx]
and dword [ebp - 0x2c], 0
mov edx, dword [esi + 0x24]
mov dword [ebp - 0x1c], ecx
mov ecx, dword [eax + 0x28]
mov dword [ebp - 0x14], ecx
cmp dword [ebp - 0x14], 0
mov ecx, dword [eax]
mov dword [ebp - 0x58], ecx
jle 0x4906eb
lea ecx, [eax + 0x50]
jmp 0x4906cf
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x2c]
mov dword [edx + eax*4], ecx
call fcn.0048d83e
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
add ecx, 0x28
cmp eax, dword [ebp - 0x14]
mov dword [ebp - 0x30], ecx
jl 0x4906cc
mov eax, dword [ebp - 0x1c]
push edx
push dword [ebp - 0x14]
add esi, 0x101
mov byte [esi], 1
push dword [ebx + 0x10]
push dword [ebp - 0x58]
push dword [edi + 0x60]
call dword [eax + 0x20]
add esp, 0x14
test eax, eax
mov dword [ebp - 8], eax
mov byte [esi], 0
jne 0x490729
push dword [edi + 0x60]
mov eax, dword [ebp - 0x1c]
call dword [eax + 0x28]
test eax, eax
pop ecx
je 0x490729
mov ebx, dword [ebx + 8]
dec ebx
mov dword [ebp - 0x18], ebx
mov byte [edi + 0x1c], 0
jmp case.0x48db48.12
mov eax, dword [ebx + 4]
mov ecx, dword [esi + 0x30]
mov eax, dword [ecx + eax*4]
cmp byte [eax + 0x1c], 0
jne case.0x48db48.12
mov eax, dword [eax + 0x60]
mov ecx, dword [eax]
mov ecx, dword [ecx]
lea edx, [ebp - 0x1dc]
push edx
push eax
call dword [ecx + 0x30]
mov dword [ebp - 8], eax
mov ax, word [edi + 0x1c]
and ax, 0xffe4
or ax, 4
mov word [edi + 0x1c], ax
mov eax, dword [ebp - 0x1dc]
mov dword [edi], eax
mov eax, dword [ebp - 0x1d8]
mov dword [edi + 4], eax
jmp 0x490963
mov edi, dword [ebx + 0xc]
mov eax, dword [ebx + 4]
imul edi, edi, 0x28
mov ecx, dword [esi + 0x30]
mov eax, dword [ecx + eax*4]
add edi, dword [esi + 0x4c]
cmp byte [eax + 0x1c], 0
mov dword [ebp - 0x30], eax
jne 0x48de2d
mov eax, dword [eax + 0x60]
mov eax, dword [eax]
mov eax, dword [eax]
push 0x40
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x114]
push 0
push eax
call fcn.0058ee10
lea eax, [ebp - 0x10c]
add esp, 0xc
push eax
mov esi, edi
call fcn.0048a5e4
mov eax, dword [ebp - 0xf0]
and ax, 0xffe1
or ax, 1
pop ecx
push dword [ebx + 8]
mov word [ebp - 0xf0], ax
lea eax, [ebp - 0x114]
push eax
mov eax, dword [ebp - 0x30]
push dword [eax + 0x60]
mov eax, dword [ebp - 0x1c]
call dword [eax + 0x2c]
mov dword [ebp - 8], eax
movzx eax, byte [ebp - 0x40]
add esp, 0xc
push eax
lea eax, [ebp - 0x10c]
call fcn.0048a00f
lea esi, [ebp - 0x10c]
jmp 0x48e235
mov eax, dword [ebx + 4]
mov ecx, dword [esi + 0x30]
mov edi, dword [ecx + eax*4]
cmp byte [edi + 0x1c], 0
jne case.0x48db48.12
mov eax, dword [edi + 0x60]
mov eax, dword [eax]
mov eax, dword [eax]
add esi, 0x101
mov byte [esi], 1
push dword [edi + 0x60]
mov dword [ebp - 0x30], eax
call dword [eax + 0x24]
test eax, eax
pop ecx
mov dword [ebp - 8], eax
mov byte [esi], 0
jne 0x48db9a
push dword [edi + 0x60]
mov eax, dword [ebp - 0x30]
call dword [eax + 0x28]
pop ecx
test eax, eax
jmp 0x48e75c
mov edi, dword [ebx + 0x10]
mov ebx, dword [ebx + 4]
imul ebx, ebx, 0x28
add ebx, dword [esi + 0x4c]
test byte [ebx + 0x1c], 0x12
jne 0x49088a
movzx eax, byte [ebp - 0x40]
push eax
mov eax, ebx
call fcn.0048a1bc
test eax, eax
pop ecx
jne 0x48ddab
inc dword [edi + 4]
push dword [ebx + 0x14]
mov eax, dword [edi]
push edi
call dword [eax + 0x4c]
pop ecx
pop ecx
mov ecx, dword [ebp - 0xc]
mov dword [ebp - 8], eax
mov eax, edi
call fcn.004a63a4
jmp case.0x48db48.12
mov edi, dword [ebx + 0x10]
mov eax, dword [edi]
cmp dword [eax + 0x34], 0
mov ecx, dword [ebx + 8]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x14], ecx
jne 0x4908ca
push 0
push str.read_only_table
jmp 0x48ee55
mov ecx, dword [esi + 0x24]
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebx + 0xc]
imul ecx, ecx, 0x28
add ecx, dword [esi + 0x4c]
xor edx, edx
cmp dword [ebp - 0x14], edx
jle 0x4908f7
call fcn.0048d83e
mov eax, dword [ebp - 0x1c]
mov dword [eax + edx*4], ecx
add ecx, 0x28
inc edx
cmp edx, dword [ebp - 0x14]
jl 0x4908e0
mov eax, dword [ebp - 0x30]
inc dword [edi + 4]
lea ecx, [ebp - 0x184]
push ecx
push dword [ebp - 0x1c]
push dword [ebp - 0x14]
push edi
call dword [eax + 0x34]
mov dword [ebp - 8], eax
mov eax, edi
mov edi, dword [ebp - 0xc]
add esp, 0x10
mov ecx, edi
call fcn.004a63a4
cmp dword [ebx + 4], 0
je 0x49093b
cmp dword [ebp - 8], 0
jne 0x49093b
mov eax, dword [ebp - 0x184]
mov dword [edi + 0x30], eax
mov eax, dword [ebp - 0x180]
mov dword [edi + 0x34], eax
inc dword [esi + 0x104]
jmp case.0x48db48.12
mov ebx, dword [ebx + 0x10]
test ebx, ebx
je case.0x48db48.12
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x94]
test eax, eax
je case.0x48db48.12
mov ecx, dword [ebp - 0xc]
push ebx
push dword [ecx + 0x98]
call eax
pop ecx
pop ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 8], 0
mov esi, dword [ebp + 8]
je 0x48da77
jmp 0x48ddd2
mov dword [ebp - 8], 9
jmp 0x48ddd2
mov eax, dword [ebx + 4]
mov dword [esi + 0x74], eax
mov eax, dword [ebp - 0x18]
mov dword [esi + 0x70], eax
mov eax, dword [ebx + 8]
mov dword [esi + 0x7c], eax
mov ebx, dword [ebx + 0x10]
test ebx, ebx
je 0x4909b1
push 0
lea eax, [esi + 0xf4]
push ebx
push eax
call fcn.0047d8af
add esp, 0xc
push esi
call fcn.0048bcdd
pop ecx
push 5
pop ebx
cmp eax, ebx
je 0x490a91
mov ebx, dword [esi + 0x74]
neg ebx
sbb ebx, ebx
and ebx, 0xffffff9c
add ebx, 0x65
jmp 0x48dde2
mov eax, dword [esi + 0x54]
mov ecx, dword [esi + 0x4c]
inc eax
inc eax
or eax, 1
mov dword [esi + 0x54], eax
mov eax, dword [ebx + 4]
imul eax, eax, 0x28
add eax, ecx
xor edi, edi
mov dword [esi + 0xf8], eax
cmp dword [ebx + 8], edi
jle 0x490a15
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x6c]
call fcn.0048a179
mov ecx, dword [ebp - 0x6c]
call fcn.0048d83e
add dword [ebp - 0x6c], 0x28
inc edi
cmp edi, dword [ebx + 8]
jl 0x4909fb
mov eax, dword [ebp - 0xc]
cmp byte [eax + 0x1e], 0
jne 0x48ddab
mov eax, dword [ebp - 0x18]
inc dword [esi + 0x50]
inc eax
push 0x64
mov dword [esi + 0x70], eax
pop ebx
jmp 0x48dde2
lea eax, [ebp - 0x1cc]
push eax
call fcn.0048a2b9
pop ecx
jmp 0x48ddab
cmp dword [ebx + 8], 0
mov edi, eax
je 0x490a5c
call fcn.004ac327
mov byte [edi + 0x1c], 1
jmp 0x4909c3
mov bl, byte [ebp - 0x71]
push esi
mov byte [edi + 0x1c], bl
call fcn.0048bcdd
pop ecx
push 5
pop ecx
cmp eax, ecx
jne 0x4909c3
mov eax, dword [ebp - 0x18]
mov dword [esi + 0x70], eax
mov al, 1
sub al, bl
mov byte [edi + 0x1c], al
mov ebx, ecx
mov dword [esi + 0x74], ecx
jmp 0x48dde2
mov eax, dword [ebp - 0x18]
mov dword [esi + 0x70], eax
mov dword [esi + 0x74], ebx
jmp 0x48dde2
mov eax, dword [ebp - 0x18]
mov dword [ecx + 0x70], eax
mov ebx, edx
mov dword [ecx + 0x74], edx
jmp 0x48dde2
mov dword [ebp - 8], 0xd
mov eax, dword [ebp - 0xc]
cmp byte [eax + 0x1e], 0
je 0x490ac0
mov dword [ebp - 8], 7
mov eax, dword [ebp - 8]
and eax, 0xff
cmp eax, 0x65
jg 0x490ad4
call fcn.004ac3c1
jmp 0x490ad9
mov eax, str.unknown_error
push 0
push eax
mov eax, dword [ebp + 8]
add eax, 0xf4
push eax
call fcn.0047d8af
mov esi, dword [ebp + 8]
jmp 0x48ddcf
push 9
pop eax
mov dword [ebp - 8], eax
mov dword [esi + 0x74], eax
call fcn.004ac3c1
push 0
push eax
lea eax, [esi + 0xf4]
push eax
call fcn.0047d8af
jmp 0x48ddcf