Function at 0x48eebd
Capabilities:
Enumerate pe sections
Reference sql statements

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xfc
mov eax, dword [0x5675a0]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
xor eax, eax
push esi
mov esi, ecx
push edi
mov edi, dword [esi]
mov ecx, dword [edi + 8]
mov ecx, dword [ecx + 0xc]
mov cl, byte [ecx + 0x49]
mov dword [ebp - 0xb4], eax
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0xd8], eax
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xdc], eax
mov dword [ebp - 0xe4], eax
mov dword [ebp - 0xe0], eax
mov eax, esi
mov dword [ebp - 0xb8], esi
mov dword [ebp - 0xbc], edi
mov byte [ebp - 0xd0], cl
call fcn.0046f4c4
cmp dword [esi + 0x64], 7
je 0x48f424
xor eax, eax
mov dword [esi + 0x64], eax
mov dword [esi + 0x2c], eax
mov dword [edi + 0x1a0], eax
mov eax, dword [edi + 0xd8]
test eax, eax
jne 0x493b47
mov eax, dword [esi + 0x60]
mov dword [ebp - 0xc0], eax
mov ecx, dword [ebp - 0xbc]
cmp byte [ecx + 0x1e], 0
jne 0x48f424
mov esi, dword [ebp - 0xc0]
mov edi, dword [ebp - 0xb8]
imul esi, esi, 0x14
add esi, dword [edi + 0x14]
mov eax, dword [ecx + 0x100]
test eax, eax
mov dword [ebp - 0xcc], esi
je 0x48efb7
mov edx, dword [ecx + 0x108]
cmp edx, dword [ebp - 0xe0]
jne 0x48efb1
push dword [ecx + 0x104]
call eax
test eax, eax
pop ecx
jne 0x4939af
and dword [ebp - 0xe0], eax
inc dword [ebp - 0xe0]
movzx eax, byte [esi]
mov dl, byte [eax + 0x5295f8]
push 2
pop ebx
test bl, dl
je 0x48efef
mov edi, dword [esi + 8]
mov eax, dword [ebp - 0xb8]
imul edi, edi, 0x28
add edi, dword [eax + 0x58]
mov eax, edi
mov dword [ebp - 0xc4], edi
call fcn.0047064d
and dword [edi + 0x18], 0
mov word [edi + 0x1c], 1
jmp 0x48f061
test dl, 4
je 0x48f037
mov eax, dword [esi + 4]
mov ecx, dword [edi + 0x58]
imul eax, eax, 0x28
add eax, ecx
test dl, 8
mov dword [ebp - 0xc8], eax
je 0x48f028
mov eax, dword [esi + 8]
imul eax, eax, 0x28
add eax, ecx
mov dword [ebp - 0xd4], eax
mov eax, dword [esi + 0xc]
imul eax, eax, 0x28
add eax, ecx
mov dword [ebp - 0xc4], eax
jmp 0x48f061
test dl, 0x10
je 0x48f061
mov eax, dword [esi + 0xc]
imul eax, eax, 0x28
add eax, ecx
jmp 0x48f05b
test dl, 8
je 0x48f04d
mov eax, dword [esi + 8]
imul eax, eax, 0x28
add eax, dword [edi + 0x58]
mov dword [ebp - 0xd4], eax
jmp 0x48f061
test dl, 0x10
je 0x48f061
mov eax, dword [esi + 0xc]
imul eax, eax, 0x28
add eax, dword [edi + 0x58]
mov dword [ebp - 0xd8], eax
movzx eax, byte [esi]
dec eax
cmp eax, 0x90
ja case.0x48f070.10
jmp dword [eax*4 + 0x493b63]
mov eax, dword [ebp - 0xbc]
mov eax, dword [eax + 0xd8]
test eax, eax
jne 0x493b47
mov esi, dword [esi + 8]
dec esi
mov dword [ebp - 0xc0], esi
jmp case.0x48f070.10
mov ecx, dword [esi + 4]
mov eax, dword [ebp - 0xb8]
imul ecx, ecx, 0x28
add ecx, dword [eax + 0x58]
mov eax, dword [ebp - 0xc0]
cdq
mov word [ecx + 0x1c], 4
mov dword [ecx], eax
mov dword [ecx + 4], edx
mov eax, dword [esi + 8]
mov dword [ebp - 0xc8], ecx
dec eax
mov dword [ebp - 0xc0], eax
jmp case.0x48f070.10
mov eax, dword [ebp - 0xc8]
mov eax, dword [eax]
jmp 0x48f0c5
mov ecx, dword [ebp - 0xc8]
mov eax, dword [ecx]
mov word [ecx + 0x1c], 4
mov dword [ebp - 0xb0], eax
mov eax, dword [ebp - 0xc0]
cdq
mov dword [ecx], eax
mov dword [ecx + 4], edx
mov eax, dword [ebp - 0xb0]
jmp 0x48f0c5
mov eax, dword [ebp - 0xd8]
test byte [eax + 0x1c], 1
je case.0x48f070.10
cmp dword [esi + 4], 0
mov edi, dword [ebp - 0xb8]
jne 0x4939be
lea ecx, [edi + 0xdc]
mov eax, dword [ecx]
test eax, eax
je 0x4939be
mov edx, dword [eax + 0x3c]
dec dword [edi + 0xe0]
mov dword [ecx], edx
mov ecx, dword [edi + 0x74]
mov edx, dword [ebp - 0xbc]
add dword [edx + 0x40], ecx
mov dword [edx + 0x3c], ecx
call fcn.0046857f
cmp dword [esi + 8], 4
mov dword [ebp - 0xc0], eax
jne case.0x48f070.10
mov ecx, dword [edi + 0x14]
imul eax, eax, 0x14
mov eax, dword [eax + ecx + 8]
jmp 0x48f0c4
mov ecx, dword [ebp - 0xc4]
mov word [ecx + 0x1c], 4
mov eax, dword [esi + 4]
cdq
mov dword [ecx], eax
mov dword [ecx + 4], edx
jmp case.0x48f070.10
mov eax, dword [ebp - 0xc4]
mov word [eax + 0x1c], 4
mov esi, dword [esi + 0x10]
mov ecx, dword [esi]
mov dword [eax], ecx
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
jmp case.0x48f070.10
mov eax, dword [ebp - 0xc4]
mov word [eax + 0x1c], 8
mov ecx, dword [esi + 0x10]
fld qword [ecx]
fstp qword [eax + 8]
jmp case.0x48f070.10
mov ecx, dword [esi + 0x10]
mov byte [esi], 9
call fcn.0046a192
cmp byte [ebp - 0xd0], 1
mov dword [esi + 4], eax
je 0x48f257
mov edx, dword [ebp - 0xc4]
push 1
push ecx
xor eax, eax
or ecx, 0xffffffff
call fcn.00484eef
cmp eax, 0x12
pop ecx
pop ecx
mov dword [ebp - 0xb4], eax
je 0x48fb27
movzx eax, byte [ebp - 0xd0]
push eax
mov eax, dword [ebp - 0xc4]
call fcn.0047aaa7
test eax, eax
pop ecx
jne 0x48f424
mov edi, dword [ebp - 0xc4]
and dword [edi + 0x24], eax
mov ax, word [edi + 0x1c]
and ax, 0xfbff
or ax, 0x800
mov word [edi + 0x1c], ax
cmp byte [esi + 1], 0xff
jne 0x48f247
push dword [esi + 0x10]
push dword [ebp - 0xbc]
call fcn.0046eba8
pop ecx
pop ecx
mov byte [esi + 1], 0xff
mov eax, dword [edi + 0x14]
mov dword [esi + 0x10], eax
mov eax, dword [edi + 0x18]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov ecx, dword [ebp - 0xbc]
cmp eax, dword [ecx + 0x48]
jg 0x48fb27
mov eax, dword [ebp - 0xc4]
mov word [eax + 0x1c], 0xa02
mov ecx, dword [esi + 0x10]
mov dword [eax + 0x14], ecx
mov ecx, dword [esi + 4]
mov dword [eax + 0x18], ecx
mov cl, byte [ebp - 0xd0]
mov byte [eax + 0x1f], cl
jmp case.0x48f070.10
mov ecx, dword [esi + 4]
push 0
push dword [esi + 0x10]
mov esi, dword [ebp - 0xc4]
xor eax, eax
mov edx, esi
call fcn.00484eef
mov al, byte [ebp - 0xd0]
mov byte [esi + 0x1f], al
jmp 0x493995
mov eax, dword [esi + 4]
dec eax
mov dword [ebp - 0xb0], eax
mov ecx, dword [esi + 8]
mov dword [ebp - 0xac], ecx
mov esi, dword [esi + 0xc]
test esi, esi
jle 0x48f34c
jmp 0x48f2d6
mov eax, dword [ebp - 0xb0]
mov edx, dword [ebp - 0xb8]
mov ecx, eax
imul ecx, ecx, 0x28
add ecx, dword [edx + 0x48]
dec esi
inc eax
mov dword [ebp - 0xa8], esi
mov dword [ebp - 0xa4], ecx
mov dword [ebp - 0xb0], eax
call fcn.004686d2
test eax, eax
jne 0x48fb27
mov ebx, dword [ebp - 0xac]
mov eax, dword [ebp - 0xb8]
imul ebx, ebx, 0x28
add ebx, dword [eax + 0x58]
inc dword [ebp - 0xac]
mov eax, ebx
mov dword [ebp - 0xc4], ebx
call fcn.0047064d
mov word [ebx + 0x1c], 1
push 0x800
push dword [ebp - 0xa4]
call fcn.00471d11
mov esi, dword [ebp - 0xa8]
test esi, esi
pop ecx
pop ecx
jg 0x48f2d0
dec esi
mov dword [ebp - 0xa8], esi
jmp case.0x48f070.10
mov edx, dword [esi + 0xc]
mov ecx, dword [ebp - 0xb8]
mov ecx, dword [ecx + 0x58]
mov dword [ebp - 0xac], edx
mov eax, dword [esi + 4]
mov dword [ebp - 0xa8], eax
imul eax, eax, 0x28
mov esi, dword [esi + 8]
mov dword [ebp - 0xa4], esi
imul esi, esi, 0x28
add eax, ecx
add esi, ecx
test edx, edx
mov ebx, eax
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xc4], esi
je 0x48f3d6
dec dword [ebp - 0xac]
mov eax, dword [esi + 0x24]
mov dword [ebp - 0xb0], eax
and dword [esi + 0x24], 0
mov eax, esi
call fcn.00472df0
mov eax, dword [ebp - 0xb0]
mov dword [ebx + 0x24], eax
add ebx, 0x28
add esi, 0x28
cmp dword [ebp - 0xac], 0
jne 0x48f398
mov dword [ebp - 0xc4], esi
mov dword [ebp - 0xc8], ebx
dec dword [ebp - 0xac]
jmp case.0x48f070.10
mov esi, dword [esi + 8]
mov eax, dword [ebp - 0xb8]
imul esi, esi, 0x28
add esi, dword [eax + 0x58]
mov edi, 0x1000
push edi
push dword [ebp - 0xc8]
mov ebx, esi
mov dword [ebp - 0xc4], esi
call fcn.00471d11
test word [esi + 0x1c], di
pop ecx
pop ecx
je case.0x48f070.10
mov eax, esi
call fcn.0047847b
test eax, eax
je case.0x48f070.10
mov eax, dword [ebp - 0xbc]
mov edi, dword [ebp - 0xb8]
push str.out_of_memory
push eax
add edi, 0x68
mov byte [eax + 0x1e], 1
call fcn.00474f32
mov dword [ebp - 0xb4], 7
jmp 0x48fb4a
mov esi, dword [esi + 8]
mov eax, dword [ebp - 0xb8]
imul esi, esi, 0x28
add esi, dword [eax + 0x58]
push 0x1000
push dword [ebp - 0xc8]
mov dword [ebp - 0xc4], esi
mov ebx, esi
call fcn.00471d11
jmp 0x493995
mov edi, dword [ebp - 0xb8]
push 0
mov eax, edi
call fcn.00475b47
test eax, eax
pop ecx
mov dword [ebp - 0xb4], eax
jne case.0x48f070.10
push 1
mov ebx, edi
call fcn.0047f53c
xor ebx, ebx
cmp eax, ebx
pop ecx
mov dword [ebp - 0xb4], eax
jne case.0x48f070.10
mov eax, dword [edi + 0x5c]
mov ecx, dword [edi + 0x58]
inc eax
inc eax
or eax, 1
mov dword [edi + 0x5c], eax
mov eax, dword [esi + 4]
imul eax, eax, 0x28
add eax, ecx
mov dword [edi + 0x2c], eax
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xac], ebx
cmp dword [esi + 8], ebx
jle 0x48f518
mov eax, dword [ebp - 0xac]
imul eax, eax, 0x28
add eax, dword [ebp - 0xb0]
call fcn.004783eb
mov ecx, dword [ebp - 0xac]
imul ecx, ecx, 0x28
add ecx, dword [ebp - 0xb0]
call fcn.0046834e
inc dword [ebp - 0xac]
mov eax, dword [ebp - 0xac]
cmp eax, dword [esi + 8]
jl 0x48f4df
mov eax, dword [ebp - 0xbc]
cmp byte [eax + 0x1e], bl
jne 0x48f424
mov eax, dword [ebp - 0xc0]
inc eax
mov ecx, edi
push 0x64
mov dword [ecx + 0x60], eax
pop esi
jmp 0x48fb77
mov eax, dword [ebp - 0xc8]
movzx ecx, word [eax + 0x1c]
mov edx, dword [ebp - 0xd4]
mov dl, byte [edx + 0x1c]
or dl, cl
test dl, 1
je 0x48f565
push dword [ebp - 0xc4]
call fcn.004842b2
jmp 0x493996
test cx, 0x4000
je 0x48f573
call fcn.00478431
jmp 0x48f575
xor eax, eax
test eax, eax
jne 0x48f424
mov eax, dword [ebp - 0xd4]
test word [eax + 0x1c], 0x4000
je 0x48f592
call fcn.00478431
jmp 0x48f594
xor eax, eax
test eax, eax
jne 0x48f424
mov eax, dword [ebp - 0xc8]
test byte [eax + 0x1c], 0x12
jne 0x48f5be
movzx ecx, byte [ebp - 0xd0]
push ecx
call fcn.0047c84b
test eax, eax
pop ecx
jne 0x48f424
mov ecx, dword [ebp - 0xd4]
test byte [ecx + 0x1c], 0x12
jne 0x48f5e8
movzx eax, byte [ebp - 0xd0]
push eax
mov eax, ecx
call fcn.0047c84b
test eax, eax
pop ecx
jne 0x48f424
mov ecx, dword [ebp - 0xd4]
mov eax, dword [ebp - 0xc8]
mov eax, dword [eax + 0x18]
add eax, dword [ecx + 0x18]
cdq
mov dword [ebp - 0xb0], eax
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0xac], edx
mov eax, dword [eax + 0x48]
cdq
cmp dword [ebp - 0xac], edx
jg 0x48fb27
jl 0x48f625
cmp dword [ebp - 0xb0], eax
ja 0x48fb27
mov edi, dword [ebp - 0xc4]
mov ax, word [edi + 0x1c]
and ax, 0xbf02
or ax, bx
mov word [edi + 0x1c], ax
xor eax, eax
cmp edi, dword [ebp - 0xd4]
sete al
push eax
mov eax, dword [ebp - 0xb0]
add eax, 2
call fcn.00476078
test eax, eax
pop ecx
jne 0x48f424
mov esi, edi
mov edi, dword [ebp - 0xd4]
cmp esi, edi
je 0x48f67a
push dword [edi + 0x18]
push dword [edi + 0x14]
push dword [esi + 0x14]
call fcn.0044dc60
add esp, 0xc
mov eax, dword [ebp - 0xc8]
push dword [eax + 0x18]
push dword [eax + 0x14]
mov eax, dword [esi + 0x14]
add eax, dword [edi + 0x18]
push eax
call fcn.0044dc60
mov ecx, dword [ebp - 0xb0]
mov eax, dword [esi + 0x14]
mov byte [ecx + eax], 0
mov ecx, dword [ebp - 0xb0]
mov eax, dword [esi + 0x14]
mov byte [ecx + eax + 1], 0
add esp, 0xc
or word [esi + 0x1c], 0x200
mov eax, dword [ebp - 0xb0]
mov dword [esi + 0x18], eax
mov al, byte [ebp - 0xd0]
mov byte [esi + 0x1f], al
jmp case.0x48f070.10
mov ebx, dword [ebp - 0xc8]
mov edi, ebx
call fcn.0047dbe3
mov edi, dword [ebp - 0xd4]
call fcn.0047dbe3
movzx eax, word [edi + 0x1c]
movzx ecx, word [ebx + 0x1c]
or eax, ecx
test al, 1
mov dword [ebp - 0xb0], eax
jne 0x48f555
mov edx, edi
mov cl, byte [edx + 0x1c]
mov eax, ebx
and cl, byte [eax + 0x1c]
test cl, 4
je 0x48f828
mov ecx, dword [eax]
mov dword [ebp - 0xa8], ecx
mov eax, dword [eax + 4]
mov dword [ebp - 0xa4], eax
mov edi, dword [edx]
mov dword [ebp - 0xa0], edi
mov edx, dword [edx + 4]
mov dword [ebp - 0x9c], edx
movzx edx, byte [esi]
sub edx, 0x56
je 0x48f803
dec edx
je 0x48f7f5
dec edx
je 0x48f7d4
dec edx
mov edx, ecx
je 0x48f788
or edx, eax
je 0x48f555
mov edx, ecx
and edx, eax
cmp edx, 0xffffffff
jne 0x48f773
xor ecx, ecx
inc ecx
xor eax, eax
mov dword [ebp - 0xa8], ecx
mov dword [ebp - 0xa4], eax
push eax
push ecx
push dword [ebp - 0x9c]
push dword [ebp - 0xa0]
call fcn.0044e510
jmp 0x48f7e7
or edx, eax
je 0x48f555
mov edx, ecx
and edx, eax
cmp edx, 0xffffffff
jne 0x48f7bf
cmp dword [ebp - 0xa0], 0
jne 0x48f7bf
cmp dword [ebp - 0x9c], 0x80000000
jne 0x48f7bf
xor ecx, ecx
inc ecx
xor eax, eax
mov dword [ebp - 0xa8], ecx
mov dword [ebp - 0xa4], eax
push eax
push ecx
push dword [ebp - 0x9c]
push dword [ebp - 0xa0]
call fcn.0044e5d0
jmp 0x48f7e7
push eax
push ecx
push dword [ebp - 0x9c]
push dword [ebp - 0xa0]
call fcn.0044e4d0
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x9c], edx
jmp 0x48f80f
sub dword [ebp - 0xa0], ecx
sbb dword [ebp - 0x9c], eax
jmp 0x48f80f
add dword [ebp - 0xa0], ecx
adc dword [ebp - 0x9c], eax
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ebp - 0xc4]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x9c]
jmp 0x48fc45
mov esi, eax
call fcn.0047c777
fstp qword [ebp - 0x98]
mov esi, dword [ebp - 0xd4]
call fcn.0047c777
fst qword [ebp - 0x90]
mov eax, dword [ebp - 0xcc]
movzx eax, byte [eax]
sub eax, 0x56
je 0x48f917
dec eax
je 0x48f90f
dec eax
je 0x48f907
dec eax
je 0x48f8f0
fld qword [ebp - 0x98]
call fcn.0050f376
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xa4], edx
call fcn.0050f376
mov ecx, dword [ebp - 0xa8]
or ecx, dword [ebp - 0xa4]
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x9c], edx
je 0x48f555
mov ecx, dword [ebp - 0xa8]
and ecx, dword [ebp - 0xa4]
cmp ecx, 0xffffffff
jne 0x48f8c9
and dword [ebp - 0xa4], 0
mov dword [ebp - 0xa8], 1
push dword [ebp - 0xa4]
push dword [ebp - 0xa8]
push edx
push eax
call fcn.0044e510
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0xf4], edx
fild qword [ebp - 0xf8]
jmp 0x48f91d
fldz
fcomp qword [ebp - 0x98]
fnstsw ax
test ah, 0x44
jnp 0x48f977
fdiv qword [ebp - 0x98]
jmp 0x48f91d
fmul qword [ebp - 0x98]
jmp 0x48f91d
fsub qword [ebp - 0x98]
jmp 0x48f91d
fadd qword [ebp - 0x98]
fstp qword [ebp - 0x90]
push ecx
fld qword [ebp - 0x90]
push ecx
fstp qword [esp]
call fcn.0046a1ac
add esp, 8
test eax, eax
jne 0x48f555
mov eax, dword [ebp - 0xc4]
fld qword [ebp - 0x90]
mov cx, word [eax + 0x1c]
fstp qword [eax + 8]
and cx, 0xbf08
or cx, 8
mov word [eax + 0x1c], cx
test byte [ebp - 0xb0], 8
jne case.0x48f070.10
mov esi, eax
call fcn.0046c12d
jmp case.0x48f070.10
fstp st(0)
jmp 0x48f555
movzx edx, byte [esi + 3]
mov ecx, dword [ebp - 0xb8]
mov eax, dword [ecx + 0x24]
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], edx
mov eax, dword [esi + 8]
and dword [ebp - 0xb0], 0
imul eax, eax, 0x28
add eax, dword [ecx + 0x58]
test edx, edx
mov dword [ebp - 0xac], eax
jle 0x48f9e2
mov ecx, dword [ebp - 0x68]
mov edx, dword [ebp - 0xb0]
mov dword [ecx + edx*4], eax
mov ecx, dword [ebp - 0xac]
call fcn.0046834e
inc dword [ebp - 0xb0]
mov eax, dword [ebp - 0xac]
mov ecx, dword [ebp - 0xb0]
add eax, 0x28
cmp ecx, dword [ebp - 0x64]
mov dword [ebp - 0xac], eax
jl 0x48f9ab
cmp byte [esi + 1], 0xfb
mov eax, dword [esi + 0x10]
jne 0x48f9f4
and dword [ebp - 0xa4], 0
jmp 0x48f9fc
mov dword [ebp - 0xa4], eax
mov eax, dword [eax]
mov dword [ebp - 0xa8], eax
mov edi, dword [esi + 0xc]
mov eax, dword [ebp - 0xb8]
imul edi, edi, 0x28
add edi, dword [eax + 0x58]
mov eax, dword [ebp - 0xbc]
and dword [ebp - 0x80], 0
and dword [ebp - 0x7c], 0
mov dword [ebp - 0x90], eax
mov ebx, edi
lea eax, [ebp - 0xa0]
mov dword [ebp - 0xc4], edi
mov word [ebp - 0x84], 1
call fcn.00472df0
mov eax, dword [ebp - 0x84]
and ax, 0xbf01
or ax, 1
mov word [ebp - 0x84], ax
mov eax, dword [ebp - 0xa8]
xor ebx, ebx
mov dword [ebp - 0x74], ebx
test byte [eax + 3], 8
je 0x48fa6d
mov ecx, dword [esi - 4]
mov dword [ebp - 0x70], ecx
push dword [ebp - 0x68]
lea ecx, [ebp - 0xa8]
push dword [ebp - 0x64]
push ecx
call dword [eax + 0xc]
mov eax, dword [ebp - 0xbc]
add esp, 0xc
cmp byte [eax + 0x1e], bl
jne 0x493a25
cmp dword [ebp - 0xa4], ebx
je 0x48fab9
push dword [esi + 4]
mov edi, dword [ebp - 0xa4]
call fcn.0046853c
mov eax, dword [ebp - 0xa4]
mov edi, dword [ebp - 0xc4]
pop ecx
mov dword [esi + 0x10], eax
mov byte [esi + 1], 0xf9
cmp dword [ebp - 0x74], ebx
je 0x48faf7
lea eax, [ebp - 0xa0]
push eax
call fcn.0047dc89
mov edi, dword [ebp - 0xb8]
pop ecx
push eax
push 0x5469e0
push dword [ebp - 0xbc]
add edi, 0x68
call fcn.00474f32
mov eax, dword [ebp - 0x74]
mov edi, dword [ebp - 0xc4]
add esp, 0xc
mov dword [ebp - 0xb4], eax
movzx eax, byte [ebp - 0xd0]
push eax
lea eax, [ebp - 0xa0]
call fcn.0047aaa7
pop ecx
lea ebx, [ebp - 0xa0]
mov eax, edi
call fcn.00472df0
mov ecx, edi
call fcn.004686d2
test eax, eax
je case.0x48f070.10
mov edi, dword [ebp - 0xb8]
push str.string_or_blob_too_big
push dword [ebp - 0xbc]
add edi, 0x68
call fcn.00474f32
mov dword [ebp - 0xb4], 0x12
pop ecx
pop ecx
mov eax, dword [ebp - 0xb8]
mov esi, dword [ebp - 0xb4]
push eax
mov dword [eax + 0x64], esi
call fcn.0048569f
cmp esi, 0xc0a
pop ecx
jne 0x48fb74
mov eax, dword [ebp - 0xbc]
mov byte [eax + 0x1e], 1
xor esi, esi
inc esi
mov edi, dword [ebp - 0xb8]
add edi, 0x88
call fcn.0046e394
mov ecx, dword [ebp - 4]
pop edi
mov eax, esi
pop esi
xor ecx, ebp
pop ebx
call fcn.00447dd1
leave
ret
mov esi, dword [ebp - 0xd4]
mov al, byte [esi + 0x1c]
mov ecx, dword [ebp - 0xc8]
or al, byte [ecx + 0x1c]
test al, 1
jne 0x48f555
call fcn.0047c7d6
mov esi, dword [ebp - 0xc8]
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xac], edx
call fcn.0047c7d6
mov ecx, eax
mov eax, dword [ebp - 0xcc]
mov dword [ebp - 0xa8], ecx
mov dword [ebp - 0xa4], edx
movzx eax, byte [eax]
sub eax, 0x52
je 0x48fc25
dec eax
je 0x48fc17
mov edx, dword [ebp - 0xac]
dec eax
mov eax, dword [ebp - 0xb0]
je 0x48fc04
call fcn.0050f470
jmp 0x48fc09
call fcn.0050f320
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xac], edx
jmp 0x48fc31
or dword [ebp - 0xb0], ecx
or dword [ebp - 0xac], edx
jmp 0x48fc31
and dword [ebp - 0xb0], ecx
and dword [ebp - 0xac], edx
mov ecx, dword [ebp - 0xb0]
mov eax, dword [ebp - 0xc4]
mov dword [eax], ecx
mov ecx, dword [ebp - 0xac]
mov dword [eax + 4], ecx
mov cx, word [eax + 0x1c]
and cx, 0xbf04
or cx, 4
mov word [eax + 0x1c], cx
jmp case.0x48f070.10
mov edi, dword [ebp - 0xc8]
mov eax, edi
call fcn.0047d222
mov eax, dword [esi + 8]
cdq
add dword [edi], eax
adc dword [edi + 4], edx
jmp case.0x48f070.10
push dword [ebp - 0xd0]
mov edi, dword [ebp - 0xc8]
push 0x63
mov eax, edi
call fcn.0047e736
movzx eax, word [edi + 0x1c]
test al, 4
pop ecx
pop ecx
jne 0x48fcb2
mov esi, dword [esi + 8]
test esi, esi
jne 0x48f08e
mov dword [ebp - 0xb4], 0x14
jmp 0x493af4
and ax, 0xbf04
or ax, 4
mov word [edi + 0x1c], ax
jmp case.0x48f070.10
mov eax, dword [ebp - 0xc8]
test byte [eax + 0x1c], 4
je case.0x48f070.10
mov eax, dword [ebp - 0xc8]
call fcn.0047d203
jmp case.0x48f070.10
mov eax, dword [ebp - 0xc8]
movzx eax, word [eax + 0x1c]
test al, 1
jne case.0x48f070.10
mov esi, dword [ebp - 0xc8]
push dword [ebp - 0xd0]
movzx ecx, al
shr cl, 3
push 0x61
and ecx, ebx
or ecx, eax
mov eax, esi
mov word [esi + 0x1c], cx
call fcn.0047e736
test word [esi + 0x1c], 0x4000
pop ecx
pop ecx
je 0x48fd31
mov eax, esi
call fcn.00478431
mov dword [ebp - 0xb4], eax
jmp 0x48fd38
and dword [ebp - 0xb4], 0
and word [esi + 0x1c], 0xbfe3
jmp case.0x48f070.10
mov eax, dword [ebp - 0xc8]
movzx eax, word [eax + 0x1c]
test al, 1
jne case.0x48f070.10
test al, 0x10
jne 0x48fd83
push dword [ebp - 0xd0]
mov esi, dword [ebp - 0xc8]
push 0x61
mov eax, esi
call fcn.0047e736
mov ax, word [esi + 0x1c]
and ax, 0xbf10
or ax, 0x10
mov word [esi + 0x1c], ax
jmp 0x493995
mov ecx, dword [ebp - 0xc8]
and ax, 0xff10
mov word [ecx + 0x1c], ax
jmp case.0x48f070.10
mov eax, dword [ebp - 0xc8]
test byte [eax + 0x1c], 0xd
jne case.0x48f070.10
call fcn.0047de9a
jmp case.0x48f070.10
mov eax, dword [ebp - 0xc8]
test byte [eax + 0x1c], 1
jne case.0x48f070.10
call fcn.0047d222
jmp case.0x48f070.10
mov eax, dword [ebp - 0xc8]
test byte [eax + 0x1c], 1
jne case.0x48f070.10
jmp 0x48fcd3
mov edi, dword [ebp - 0xc8]
mov ebx, dword [ebp - 0xd8]
movzx eax, word [edi + 0x1c]
movzx ecx, word [ebx + 0x1c]
mov dl, al
or dl, cl
test dl, 1
je 0x48fe4e
mov dl, byte [esi + 3]
test dl, dl
jns 0x48fe11
and al, cl
and al, 1
neg al
sbb eax, eax
inc eax
jmp 0x48fecb
test dl, 0x10
je 0x48fe40
mov esi, dword [esi + 8]
mov eax, dword [ebp - 0xb8]
imul esi, esi, 0x28
add esi, dword [eax + 0x58]
mov ax, word [esi + 0x1c]
and ax, 0xbf01
or ax, 1
mov dword [ebp - 0xc4], esi
mov word [esi + 0x1c], ax
jmp case.0x48f070.10
test dl, 8
je case.0x48f070.10
jmp 0x48f08b
mov al, byte [esi + 3]
and al, 0x67
mov byte [ebp - 0xac], al
je 0x48fea0
push dword [ebp - 0xd0]
mov eax, edi
push dword [ebp - 0xac]
call fcn.0047e736
push dword [ebp - 0xd0]
mov eax, ebx
push dword [ebp - 0xac]
call fcn.0047e736
mov eax, dword [ebp - 0xbc]
add esp, 0x10
cmp byte [eax + 0x1e], 0
jne 0x48f424
mov edi, dword [ebp - 0xc8]
mov ebx, dword [ebp - 0xd8]
test word [edi + 0x1c], 0x4000
je 0x48feaf
mov eax, edi
call fcn.00478431
test word [ebx + 0x1c], 0x4000
je 0x48febe
mov eax, ebx
call fcn.00478431
push dword [esi + 0x10]
mov eax, edi
mov edx, ebx
call fcn.0047d04e
pop ecx
mov dword [ebp - 0xb0], eax
movzx ecx, byte [esi]
sub ecx, 0x4b
je 0x48ff12
dec ecx
je 0x48ff09
dec ecx
je 0x48ff00
dec ecx
je 0x48fef7
dec ecx
je 0x48feee
xor ecx, ecx
test eax, eax
setge cl
jmp 0x48ff19
xor ecx, ecx
test eax, eax
setl cl
jmp 0x48ff19
xor ecx, ecx
test eax, eax
setle cl
jmp 0x48ff19
xor ecx, ecx
test eax, eax
setg cl
jmp 0x48ff19
xor ecx, ecx
test eax, eax
sete cl
jmp 0x48ff19
xor ecx, ecx
test eax, eax
setne cl
mov dword [ebp - 0xb0], ecx
test byte [esi + 3], 0x10
je 0x4901ab
mov esi, dword [esi + 8]
mov eax, dword [ebp - 0xb8]
imul esi, esi, 0x28
add esi, dword [eax + 0x58]
mov ax, word [esi + 0x1c]
and ax, 0xbf04
or ax, 4
mov word [esi + 0x1c], ax
mov eax, dword [ebp - 0xb0]
cdq
mov dword [ebp - 0xc4], esi
mov dword [esi], eax
mov dword [esi + 4], edx
jmp case.0x48f070.10
mov eax, dword [esi + 0x10]
mov dword [ebp - 0xe4], eax
jmp case.0x48f070.10
mov edx, dword [esi + 0xc]
mov dword [ebp - 0xb0], edx
mov ecx, dword [esi + 0x10]
mov dword [ebp - 0xa0], ecx
mov eax, dword [esi + 4]
mov dword [ebp - 0xa8], eax
mov eax, dword [esi + 8]
mov dword [ebp - 0xa4], eax
xor eax, eax
test edx, edx
mov dword [ebp - 0xac], eax
jle 0x490031
mov edi, dword [ebp - 0xe4]
jmp 0x48ffaf
mov ecx, dword [ebp - 0xa0]
test edi, edi
je 0x48ffb8
mov edx, dword [edi + eax*4]
jmp 0x48ffba
mov edx, eax
mov dword [ebp - 0x9c], edx
mov esi, dword [ecx + eax*4 + 0xc]
mov dword [ebp - 0x98], esi
mov ecx, dword [ecx + 8]
movzx eax, byte [ecx + eax]
mov dword [ebp - 0x94], eax
mov eax, dword [ebp - 0xb8]
mov ecx, dword [eax + 0x58]
mov eax, dword [ebp - 0xa4]
add eax, edx
push esi
imul eax, eax, 0x28
mov esi, dword [ebp - 0xa8]
add edx, esi
imul edx, edx, 0x28
add eax, ecx
add edx, ecx
call fcn.0047d04e
test eax, eax
pop ecx
mov dword [ebp - 0xdc], eax
jne 0x490022
mov eax, dword [ebp - 0xac]
inc eax
cmp eax, dword [ebp - 0xb0]
mov dword [ebp - 0xac], eax
jl 0x48ffa9
jmp 0x490031
cmp dword [ebp - 0x94], 0
je 0x490031
neg dword [ebp - 0xdc]
and dword [ebp - 0xe4], 0
jmp case.0x48f070.10
cmp dword [ebp - 0xdc], 0
jge 0x49004e
mov esi, dword [esi + 4]
jmp 0x48f08e
je 0x48f08b
mov esi, dword [esi + 0xc]
jmp 0x48f08e
mov eax, dword [ebp - 0xc8]
test byte [eax + 0x1c], 1
je 0x49006c
mov eax, ebx
jmp 0x490084
mov esi, eax
call fcn.0047c7d6
or eax, edx
mov esi, dword [ebp - 0xcc]
je 0x490082
xor eax, eax
inc eax
jmp 0x490084
xor eax, eax
mov edx, dword [ebp - 0xd4]
mov ecx, dword [ebp - 0xc4]
mov dword [ebp - 0xb0], eax
test byte [edx + 0x1c], 1
je 0x4900a4
mov dword [ebp - 0xac], ebx
jmp 0x4900d4
mov esi, edx
call fcn.0047c7d6
mov ecx, dword [ebp - 0xc4]
mov esi, dword [ebp - 0xcc]
or eax, edx
mov eax, dword [ebp - 0xb0]
je 0x4900cd
mov dword [ebp - 0xac], 1
jmp 0x4900d4
and dword [ebp - 0xac], 0
mov edx, dword [ebp - 0xac]
imul eax, eax, 3
cmp byte [esi], 0x45
jne 0x4900ec
movzx eax, byte [eax + edx + 0x5295c4]
jmp 0x4900f4
movzx eax, byte [eax + edx + 0x52968c]
cmp eax, ebx
mov dword [ebp - 0xb0], eax
jne 0x49010f
mov ax, word [ecx + 0x1c]
and ax, 0xbf01
or ax, 1
jmp 0x48fd8d
cdq
mov dword [ecx], eax
mov dword [ecx + 4], edx
mov ax, word [ecx + 0x1c]
and ax, 0xbf04
or ax, 4
jmp 0x48fd8d
mov edi, dword [esi + 8]
mov eax, dword [ebp - 0xb8]
imul edi, edi, 0x28
add edi, dword [eax + 0x58]
mov esi, dword [ebp - 0xc8]
test byte [esi + 0x1c], 1
mov dword [ebp - 0xc4], edi
je 0x49014d
push edi
jmp 0x48f55b
call fcn.0047c7d6
or eax, edx
jne 0x490159
inc eax
jmp 0x49015b
xor eax, eax
cdq
push edx
push eax
mov esi, edi
call fcn.00472e56
jmp 0x493995
mov edi, dword [esi + 8]
mov eax, dword [ebp - 0xb8]
imul edi, edi, 0x28
add edi, dword [eax + 0x58]
mov esi, dword [ebp - 0xc8]
test byte [esi + 0x1c], 1
mov dword [ebp - 0xc4], edi
jne 0x490147
call fcn.0047c7d6
not eax
not edx
jmp 0x49015c
mov eax, dword [ebp - 0xc8]
test byte [eax + 0x1c], 1
je 0x4901b7
mov eax, dword [esi + 0xc]
mov dword [ebp - 0xb0], eax
cmp dword [ebp - 0xb0], 0
jmp 0x48fe43
mov esi, eax
call fcn.0047c777
fcomp qword [0x54a0c0]
fnstsw ax
test ah, 0x44
jnp 0x4901d7
mov dword [ebp - 0xb0], 1
jmp 0x4901de
and dword [ebp - 0xb0], 0
mov eax, dword [ebp - 0xcc]
cmp byte [eax], 0x1b
mov esi, eax
jne 0x4901ab
xor eax, eax
cmp dword [ebp - 0xb0], eax
sete al
jmp 0x4901a5
mov eax, dword [ebp - 0xc8]
test byte [eax + 0x1c], 1
jmp 0x48fe43
mov eax, dword [ebp - 0xc8]
test byte [eax + 0x1c], 1
jne case.0x48f070.10
jmp 0x48f08b
mov eax, dword [esi + 4]
mov edx, dword [ebp - 0xb8]
mov dword [ebp - 0xa0], eax
mov eax, dword [esi + 8]
mov dword [ebp - 0x9c], eax
xor eax, eax
xor ebx, ebx
mov dword [ebp - 0x98], ebx
push 0xa
pop ecx
lea edi, [ebp - 0x70]
rep stosd dword es:[edi], eax
mov eax, dword [esi + 0xc]
imul eax, eax, 0x28
add eax, dword [edx + 0x58]
mov dword [ebp - 0x74], eax
mov cx, word [eax + 0x1c]
and cx, 0xbf01
or cx, 1
mov word [eax + 0x1c], cx
mov ecx, dword [ebp - 0xa0]
mov eax, dword [edx + 0x34]
mov dword [ebp - 0x94], ebx
mov eax, dword [eax + ecx*4]
mov dword [ebp - 0x98], eax
mov ecx, dword [eax]
cmp ecx, ebx
mov dword [ebp - 0x90], ecx
je 0x49032a
mov esi, eax
call fcn.004840f9
cmp eax, ebx
mov dword [ebp - 0xb4], eax
jne 0x493af4
mov eax, dword [ebp - 0x98]
cmp byte [eax + 0x14], bl
je 0x4902b6
mov dword [ebp - 0xb0], ebx
jmp case.0x48f070.10
mov ecx, dword [eax + 0x44]
mov edx, dword [ebp - 0xb8]
cmp ecx, dword [edx + 0x5c]
jne 0x4902d8
mov ecx, dword [eax + 0x48]
mov dword [ebp - 0xb0], ecx
mov ecx, dword [eax + 0x54]
mov dword [ebp - 0x94], ecx
jmp 0x490322
cmp byte [eax + 0x17], 0
je 0x490303
mov eax, dword [ebp - 0x90]
lea edi, [ebp - 0xa8]
call fcn.00471e02
mov dword [ebp - 0xb4], eax
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0xb0], eax
jmp 0x49031c
lea eax, [ebp - 0xb0]
push eax
mov eax, dword [ebp - 0x90]
call fcn.00471ded
pop ecx
mov dword [ebp - 0xb4], eax
mov eax, dword [ebp - 0x98]
mov esi, dword [ebp - 0xcc]
jmp 0x49036a
mov ecx, dword [eax + 0x24]
cmp ecx, ebx
jle 0x490364
imul ecx, ecx, 0x28
add ecx, dword [edx + 0x58]
mov dword [ebp - 0x28], ecx
mov edi, dword [ecx + 0x18]
mov dword [ebp - 0xb0], edi
mov ecx, dword [ecx + 0x14]
mov dword [ebp - 0x94], ecx
test byte [esi + 3], 0x20
je 0x490356
xor edx, edx
jmp 0x490359
mov edx, dword [edx + 0x5c]
mov dword [eax + 0x44], edx
mov eax, dword [ebp - 0x98]
jmp 0x49036a
mov dword [ebp - 0xb0], ebx
mov ecx, dword [ebp - 0xb0]
cmp ecx, ebx
je case.0x48f070.10
mov edx, dword [ebp - 0xbc]
cmp ecx, dword [edx + 0x48]
ja 0x48fb27
mov edx, dword [eax + 0x2c]
mov edi, dword [ebp - 0xb8]
mov dword [ebp - 0x84], edx
mov ecx, dword [eax + 0x4c]
mov dword [ebp - 0x8c], ecx
mov ebx, dword [eax + 0x44]
cmp ebx, dword [edi + 0x5c]
jne 0x4903b5
mov eax, dword [eax + 0x50]
mov dword [ebp - 0x88], eax
jmp 0x4905c8
lea ecx, [ecx + edx*4]
mov dword [ebp - 0x88], ecx
xor ebx, ebx
mov dword [ebp - 0x2c], ebx
mov dword [eax + 0x50], ecx
mov eax, dword [ebp - 0x98]
mov ecx, dword [ebp - 0xb0]
mov dword [eax + 0x48], ecx
mov eax, dword [edi + 0x5c]
mov ecx, dword [ebp - 0x98]
mov dword [ecx + 0x44], eax
mov eax, dword [ebp - 0x94]
cmp eax, ebx
je 0x4903f0
mov dword [ebp - 0x78], eax
jmp 0x49043b
mov eax, dword [ebp - 0x98]
cmp byte [eax + 0x17], 0
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x90]
je 0x49040d
call fcn.00471dd4
jmp 0x490412
call fcn.00471dba
pop ecx
mov ecx, dword [ebp - 0xb0]
cmp ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x78], eax
ja 0x490432
mov ecx, dword [ebp - 0x98]
mov dword [ebp - 0x94], eax
mov dword [ecx + 0x54], eax
jmp 0x49043b
mov eax, dword [ebp - 0x98]
mov dword [eax + 0x54], ebx
mov ecx, dword [ebp - 0x78]
mov al, byte [ecx]
cmp al, 0x80
jae 0x49044f
movzx eax, al
mov dword [ebp - 0x40], eax
xor eax, eax
inc eax
jmp 0x49045a
lea edi, [ebp - 0x40]
call fcn.0046cf4a
movzx eax, al
cmp dword [ebp - 0x40], 0x18003
movzx eax, al
mov dword [ebp - 0x30], eax
ja 0x4906e1
mov ecx, dword [ebp - 0x84]
imul ecx, ecx, 5
add ecx, 3
cmp ecx, dword [ebp - 0x40]
mov dword [ebp - 0x80], ecx
jle 0x490487
mov ecx, dword [ebp - 0x40]
mov dword [ebp - 0x80], ecx
cmp dword [ebp - 0x94], ebx
jne 0x4904d9
cmp dword [ebp - 0x2c], ecx
jge 0x4904d9
mov eax, dword [ebp - 0x98]
mov word [ebp - 0x54], bx
mov dword [ebp - 0x60], ebx
movzx eax, byte [eax + 0x17]
push eax
push ebx
push dword [ebp - 0x90]
lea eax, [ebp - 0x70]
mov esi, ecx
call fcn.004841f4
add esp, 0xc
cmp eax, ebx
mov dword [ebp - 0xb4], eax
jne case.0x48f070.10
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x80]
mov esi, dword [ebp - 0xcc]
mov dword [ebp - 0x78], eax
jmp 0x4904dc
mov eax, dword [ebp - 0x78]
add ecx, eax
mov dword [ebp - 0x44], ecx
mov ecx, dword [ebp - 0x30]
add eax, ecx
mov ecx, dword [ebp - 0x40]
mov dword [ebp - 0x38], ecx
xor ecx, ecx
cmp dword [ebp - 0x84], ebx
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x7c], ecx
jle 0x490573
jmp 0x490504
mov eax, dword [ebp - 0x48]
cmp eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x88]
jae 0x490560
mov edx, dword [ebp - 0x38]
mov dword [eax + ecx*4], edx
mov ecx, dword [ebp - 0x48]
mov al, byte [ecx]
cmp al, 0x80
mov edx, dword [ebp - 0x8c]
jae 0x490532
mov ecx, dword [ebp - 0x7c]
movzx eax, al
mov dword [edx + ecx*4], eax
xor eax, eax
inc eax
jmp 0x490540
mov eax, dword [ebp - 0x7c]
lea edi, [edx + eax*4]
call fcn.0046cf4a
movzx eax, al
mov ecx, dword [ebp - 0x7c]
movzx eax, al
add dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x8c]
mov eax, dword [eax + ecx*4]
call fcn.00468464
add dword [ebp - 0x38], eax
adc dword [ebp - 0x34], 0
jmp 0x490567
and dword [eax + ecx*4], 0
mov ecx, dword [ebp - 0x7c]
inc ecx
cmp ecx, dword [ebp - 0x84]
mov dword [ebp - 0x7c], ecx
jl 0x490501
lea eax, [ebp - 0x70]
push eax
call fcn.00471d51
mov edx, dword [ebp - 0x48]
cmp edx, dword [ebp - 0x44]
pop ecx
mov word [ebp - 0x54], 1
ja 0x4906e1
mov eax, dword [ebp - 0xb0]
xor ecx, ecx
cmp dword [ebp - 0x34], ecx
ja 0x4906e1
jb 0x4905ab
cmp dword [ebp - 0x38], eax
ja 0x4906e1
cmp edx, dword [ebp - 0x44]
jne 0x4905c2
cmp dword [ebp - 0x38], eax
jne 0x4906e1
cmp dword [ebp - 0x34], ecx
jne 0x4906e1
mov ecx, dword [ebp - 0x8c]
mov eax, dword [ebp - 0x9c]
mov edx, dword [ebp - 0x88]
shl eax, 2
cmp dword [eax + edx], 0
je 0x490692
cmp dword [ebp - 0x94], 0
je 0x490615
mov eax, dword [ebp - 0x74]
call fcn.0047064d
mov eax, dword [ebp - 0x9c]
mov ecx, dword [ebp - 0x88]
mov edx, dword [ebp - 0x8c]
shl eax, 2
mov ecx, dword [eax + ecx]
add ecx, dword [ebp - 0x94]
mov eax, dword [eax + edx]
jmp 0x49067c
mov eax, dword [eax + ecx]
call fcn.00468464
mov ebx, dword [ebp - 0x74]
mov dword [ebp - 0x80], eax
lea eax, [ebp - 0x70]
call fcn.00472df0
mov eax, dword [ebp - 0x98]
movzx eax, byte [eax + 0x17]
mov ecx, dword [ebp - 0x9c]
mov esi, dword [ebp - 0x80]
push eax
mov eax, dword [ebp - 0x88]
push dword [eax + ecx*4]
lea eax, [ebp - 0x70]
push dword [ebp - 0x90]
call fcn.004841f4
add esp, 0xc
test eax, eax
mov dword [ebp - 0xb4], eax
jne case.0x48f070.10
mov ecx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x8c]
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 0x78], ecx
mov eax, dword [eax + edx*4]
mov esi, dword [ebp - 0x74]
call fcn.0046becd
mov eax, dword [ebp - 0x74]
mov cl, byte [ebp - 0xd0]
mov byte [eax + 0x1f], cl
jmp 0x4906aa
cmp byte [esi + 1], 0xf8
jne 0x4906aa
mov ebx, dword [ebp - 0x74]
push 0x800
push dword [esi + 0x10]
call fcn.00471d11
pop ecx
pop ecx
cmp dword [ebp - 0x4c], 0
je 0x4906d4
mov eax, dword [ebp - 0x74]
and word [eax + 0x1c], 0xe7ff
mov eax, dword [ebp - 0x74]
or word [eax + 0x1c], 0x200
mov eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x5c]
mov dword [eax + 0x14], ecx
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x74]
mov dword [ecx + 0x24], eax
mov eax, dword [ebp - 0x74]
call fcn.0047847b
jmp 0x4929ea
mov dword [ebp - 0xb4], 0xb
jmp case.0x48f070.10
mov eax, dword [esi + 0x10]
mov dword [ebp - 0xb0], eax
mov ecx, dword [esi + 4]
mov eax, dword [ebp - 0xb8]
imul ecx, ecx, 0x28
add ecx, dword [eax + 0x58]
mov dword [ebp - 0xac], ecx
mov eax, dword [esi + 8]
imul eax, eax, 0x28
lea eax, [eax + ecx - 0x28]
cmp ecx, eax
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xa4], ecx
ja case.0x48f070.10
jmp 0x490734
mov ecx, dword [ebp - 0xac]
mov eax, dword [ebp - 0xa4]
test word [eax + 0x1c], 0x4000
je 0x49074d
call fcn.00478431
mov ecx, dword [ebp - 0xac]
push dword [ebp - 0xd0]
mov eax, dword [ebp - 0xa4]
sub eax, ecx
cdq
push 0x28
pop ecx
idiv ecx
mov ecx, dword [ebp - 0xb0]
movzx eax, byte [eax + ecx]
push eax
mov eax, dword [ebp - 0xa4]
call fcn.0047e736
add dword [ebp - 0xa4], 0x28
mov eax, dword [ebp - 0xa4]
cmp eax, dword [ebp - 0xa8]
pop ecx
pop ecx
jbe 0x49072e
jmp case.0x48f070.10
xor ebx, ebx
mov dword [ebp - 0xa8], ebx
mov dword [ebp - 0xa4], ebx
mov dword [ebp - 0xa0], ebx
mov dword [ebp - 0x98], ebx
mov dword [ebp - 0x94], ebx
mov dword [ebp - 0x90], ebx
mov eax, dword [esi + 4]
mov dword [ebp - 0x7c], eax
imul eax, eax, 0x28
mov ecx, dword [esi + 0x10]
mov dword [ebp - 0x78], ecx
mov ecx, dword [ebp - 0xb8]
add eax, dword [ecx + 0x58]
movzx ecx, byte [ecx + 0x6f]
mov edi, eax
mov dword [ebp - 0x84], edi
mov eax, dword [esi + 8]
mov dword [ebp - 0x7c], eax
imul eax, eax, 0x28
lea eax, [eax + edi - 0x28]
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x74], ecx
cmp edi, eax
jmp 0x49089e
cmp dword [ebp - 0x78], ebx
je 0x490827
push dword [ebp - 0xd0]
mov eax, edi
sub eax, dword [ebp - 0x84]
push 0x28
cdq
pop ecx
idiv ecx
mov ecx, dword [ebp - 0x78]
movzx eax, byte [eax + ecx]
push eax
mov eax, edi
call fcn.0047e736
mov edi, dword [ebp - 0xac]
pop ecx
pop ecx
test word [edi + 0x1c], 0x4000
je 0x490841
cmp dword [edi + 0x18], ebx
jle 0x490841
mov eax, edi
call fcn.00478431
mov edi, dword [ebp - 0xac]
push dword [ebp - 0x74]
mov edx, edi
call fcn.00468477
pop ecx
mov dword [ebp - 0x88], eax
call fcn.00468464
mov dword [ebp - 0x6c], eax
cdq
add dword [ebp - 0xa8], eax
push ebx
push dword [ebp - 0x88]
adc dword [ebp - 0xa4], edx
call fcn.00469a1a
add dword [ebp - 0xa0], eax
test word [edi + 0x1c], 0x4000
pop ecx
pop ecx
je 0x49088d
mov eax, dword [edi]
add dword [ebp - 0x90], eax
jmp 0x490898
cmp dword [ebp - 0x6c], ebx
je 0x490898
mov dword [ebp - 0x90], ebx
add edi, 0x28
cmp edi, dword [ebp - 0x80]
mov dword [ebp - 0xac], edi
jbe 0x4907f7
mov eax, dword [ebp - 0xa0]
cdq
push edx
push eax
call fcn.00469a1a
mov edi, eax
add dword [ebp - 0xa0], edi
mov eax, dword [ebp - 0xa0]
cdq
push edx
push eax
mov dword [ebp - 0x8c], edi
call fcn.00469a1a
add esp, 0x10
cmp edi, eax
jge 0x4908e1
inc dword [ebp - 0xa0]
mov eax, dword [ebp - 0xa0]
cdq
mov edi, eax
mov eax, dword [ebp - 0x90]
mov ecx, edx
cdq
sub edi, eax
mov eax, dword [ebp - 0xbc]
sbb ecx, edx
add edi, dword [ebp - 0xa8]
adc ecx, dword [ebp - 0xa4]
mov dword [ebp - 0x98], edi
mov dword [ebp - 0x94], ecx
mov eax, dword [eax + 0x48]
cdq
cmp ecx, edx
jg 0x48fb27
jl 0x49092b
cmp edi, eax
ja 0x48fb27
mov esi, dword [esi + 0xc]
mov eax, dword [ebp - 0xb8]
imul esi, esi, 0x28
add esi, dword [eax + 0x58]
mov eax, edi
push ebx
mov edi, esi
mov dword [ebp - 0xc4], esi
call fcn.00476078
test eax, eax
pop ecx
jne 0x48f424
mov eax, dword [ebp - 0xa0]
mov ecx, dword [esi + 0x14]
mov edi, 0x80
cmp eax, edi
mov dword [ebp - 0xb0], ecx
jae 0x490972
mov byte [ecx], al
xor eax, eax
inc eax
jmp 0x490977
call fcn.0046cfac
movzx eax, al
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0xac], eax
jmp 0x4909cf
push dword [ebp - 0x74]
mov edx, dword [ebp - 0xac]
call fcn.00468477
cmp eax, edi
mov edx, dword [ebp - 0x70]
pop ecx
mov ecx, dword [ebp - 0xb0]
mov dword [ebp - 0x88], eax
jae 0x4909b5
mov byte [edx + ecx], al
xor eax, eax
inc eax
jmp 0x4909bc
add ecx, edx
call fcn.0046cfac
movzx eax, al
add dword [ebp - 0x70], eax
add dword [ebp - 0xac], 0x28
mov eax, dword [ebp - 0xac]
cmp eax, dword [ebp - 0x80]
jbe 0x49098b
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0xac], eax
jmp 0x490a17
mov eax, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x98]
push dword [ebp - 0x74]
sub ecx, eax
push ecx
mov ecx, dword [ebp - 0xb0]
lea ebx, [eax + ecx]
mov eax, dword [ebp - 0xac]
call fcn.0046c06b
add dword [ebp - 0x70], eax
add dword [ebp - 0xac], 0x28
mov eax, dword [ebp - 0xac]
pop ecx
pop ecx
cmp eax, dword [ebp - 0x80]
jbe 0x4909e2
mov eax, dword [ebp - 0x98]
and dword [esi + 0x20], 0
mov dword [esi + 0x18], eax
mov word [esi + 0x1c], 0x410
mov eax, dword [ebp - 0x90]
test eax, eax
je 0x490a41
mov dword [esi], eax
mov word [esi + 0x1c], 0x4410
mov byte [esi + 0x1f], 1
jmp case.0x48f070.10
mov ecx, dword [ebp - 0xb8]
mov eax, dword [esi + 4]
mov ecx, dword [ecx + 0x34]
mov eax, dword [ecx + eax*4]
mov eax, dword [eax]
test eax, eax
mov dword [ebp - 0xa8], eax
je 0x490a7a
lea ecx, [ebp - 0xb0]
push ecx
call fcn.00481f36
pop ecx
mov dword [ebp - 0xb4], eax
jmp 0x490a88
and dword [ebp - 0xb0], 0
and dword [ebp - 0xac], 0
mov eax, dword [ebp - 0xc4]
mov word [eax + 0x1c], 4
mov ecx, dword [ebp - 0xb0]
mov dword [eax], ecx
mov ecx, dword [ebp - 0xac]
jmp 0x48f1a0
mov eax, dword [esi + 4]
test eax, eax
mov dword [ebp - 0xb0], eax
mov ebx, dword [esi + 0x10]
mov dword [ebp - 0xac], ebx
jne 0x490b91
mov esi, dword [ebp - 0xbc]
cmp dword [esi + 0x90], eax
jle 0x490af2
push str.cannot_open_savepoint___SQL_statements_in_progress
push esi
mov edi, dword [ebp - 0xb8]
add edi, 0x68
call fcn.00474f32
mov dword [ebp - 0xb4], 5
jmp 0x493995
mov ecx, ebx
call fcn.0046a192
mov dword [ebp - 0xa8], eax
add eax, 0x19
push eax
call fcn.00470df9
test eax, eax
pop ecx
mov dword [ebp - 0xa4], eax
je case.0x48f070.10
lea ecx, [eax + 0x18]
mov dword [eax], ecx
mov eax, dword [ebp - 0xa8]
inc eax
push eax
push dword [ebp - 0xac]
mov eax, dword [ebp - 0xa4]
push dword [eax]
call fcn.0044dc60
mov eax, esi
add esp, 0xc
cmp byte [eax + 0x1c], 0
je 0x490b4f
mov byte [eax + 0x1c], 0
mov byte [eax + 0x1d4], 1
jmp 0x490b55
inc dword [eax + 0x1cc]
mov esi, dword [ebp - 0xa4]
lea ecx, [eax + 0x1c8]
mov edx, dword [ecx]
mov dword [esi + 0x10], edx
mov edx, dword [ebp - 0xa4]
mov dword [ecx], edx
mov ecx, dword [eax + 0x1d8]
mov edx, dword [ebp - 0xa4]
mov dword [edx + 8], ecx
mov eax, dword [eax + 0x1dc]
mov ecx, dword [ebp - 0xa4]
mov dword [ecx + 0xc], eax
jmp case.0x48f070.10
and dword [ebp - 0x98], 0
mov edi, dword [ebp - 0xbc]
mov esi, dword [edi + 0x1c8]
test esi, esi
mov dword [ebp - 0xa0], esi
je 0x490bd4
mov ecx, dword [esi]
mov edx, ebx
call fcn.0046a0fc
test eax, eax
je 0x490bce
inc dword [ebp - 0x98]
mov esi, dword [esi + 0x10]
test esi, esi
mov dword [ebp - 0xa0], esi
jne 0x490bae
xor eax, eax
cmp esi, eax
jne 0x490bfb
push ebx
push str.no_such_savepoint:__s
push edi
mov edi, dword [ebp - 0xb8]
add edi, 0x68
call fcn.00474f32
add esp, 0xc
mov dword [ebp - 0xb4], 1
jmp case.0x48f070.10
cmp dword [edi + 0x90], eax
jg 0x490da5
cmp dword [ebp - 0xb0], 2
jne 0x490c1d
cmp dword [edi + 0x8c], 1
jg 0x490dae
cmp dword [esi + 0x10], eax
jne 0x490c8e
cmp byte [edi + 0x1d4], 0
je 0x490c8e
xor ecx, ecx
inc ecx
cmp dword [ebp - 0xb0], ecx
mov dword [ebp - 0xcc], ecx
jne 0x490c94
mov eax, dword [ebp - 0xb8]
push ecx
call fcn.00475b47
mov esi, eax
test esi, esi
pop ecx
jne 0x48fb77
mov ebx, dword [ebp - 0xb8]
mov esi, edi
push ebx
mov byte [esi + 0x1c], 1
call fcn.0048569f
pop ecx
push 5
pop ecx
cmp eax, ecx
je 0x493a37
mov byte [esi + 0x1d4], 0
mov eax, dword [ebx + 0x64]
mov esi, dword [ebp - 0xa0]
mov dword [ebp - 0xb4], eax
mov ebx, edi
jmp 0x490d4c
mov dword [ebp - 0xcc], eax
mov ecx, dword [edi + 0x1cc]
sub ecx, dword [ebp - 0x98]
mov dword [ebp - 0x94], eax
dec ecx
mov dword [ebp - 0x98], ecx
cmp dword [edi + 4], eax
jle 0x490cfc
jmp 0x490cba
mov ecx, dword [ebp - 0x98]
push ecx
push dword [ebp - 0xb0]
mov ecx, edi
mov ecx, dword [ecx + 8]
shl eax, 4
mov eax, dword [eax + ecx + 4]
call fcn.0047f436
test eax, eax
pop ecx
pop ecx
mov dword [ebp - 0xb4], eax
jne 0x493af4
mov eax, dword [ebp - 0x94]
inc eax
mov ecx, edi
mov dword [ebp - 0x94], eax
cmp eax, dword [ecx + 4]
jl 0x490cb4
mov esi, dword [ebp - 0xa0]
cmp dword [ebp - 0xb0], 2
jne 0x490c87
mov ebx, edi
test byte [ebx + 0xc], 0x10
je 0x490d4c
mov eax, ebx
call fcn.00468444
xor eax, eax
call fcn.0047a444
jmp 0x490d46
mov eax, dword [ebx + 0x1c8]
mov dword [ebp - 0x9c], eax
mov eax, dword [eax + 0x10]
mov dword [ebx + 0x1c8], eax
push dword [ebp - 0x9c]
push ebx
call fcn.0046eba8
dec dword [ebx + 0x1cc]
pop ecx
pop ecx
mov esi, dword [ebp - 0xa0]
cmp dword [ebx + 0x1c8], esi
jne 0x490d1d
cmp dword [ebp - 0xb0], 1
jne 0x490d8e
mov eax, dword [esi + 0x10]
mov dword [ebx + 0x1c8], eax
push dword [ebp - 0xa0]
push ebx
call fcn.0046eba8
cmp dword [ebp - 0xcc], 0
pop ecx
pop ecx
jne case.0x48f070.10
mov eax, edi
dec dword [eax + 0x1cc]
jmp case.0x48f070.10
mov eax, dword [esi + 8]
mov dword [ebx + 0x1d8], eax
mov eax, dword [esi + 0xc]
mov dword [ebx + 0x1dc], eax
jmp case.0x48f070.10
cmp dword [ebp - 0xb0], 2
jne 0x490db5
mov eax, str.rollback
jmp 0x490dba
mov eax, str.release
push eax
push str.cannot__s_savepoint___SQL_statements_in_progress
push edi
mov edi, dword [ebp - 0xb8]
add edi, 0x68
call fcn.00474f32
add esp, 0xc
mov dword [ebp - 0xb4], 5
jmp case.0x48f070.10
mov eax, dword [esi + 4]
test eax, eax
mov edi, dword [ebp - 0xbc]
mov dword [ebp - 0xb0], eax
mov esi, dword [esi + 8]
mov dword [ebp - 0xac], esi
je 0x490e23
cmp byte [edi + 0x1c], 0
jne 0x490e23
xor ebx, ebx
inc ebx
test esi, esi
mov dword [ebp - 0xa8], ebx
je 0x490e44
cmp dword [edi + 0x8c], ebx
jle 0x490e2d
push str.cannot_rollback_transaction___SQL_statements_in_progress
push edi
jmp 0x490ad5
and dword [ebp - 0xa8], 0
xor ebx, ebx
inc ebx
movzx ecx, byte [edi + 0x1c]
cmp eax, ecx
jne 0x493a4e
test eax, eax
jne 0x490e54
mov eax, str.cannot_start_a_transaction_within_a_transaction
jmp 0x490e62
cmp dword [edi + 0x90], 0
jle 0x490e2d
push str.cannot_commit_transaction___SQL_statements_in_progress
jmp 0x490e1d
test esi, esi
mov eax, str.cannot_rollback___no_transaction_is_active
jne 0x490e62
mov eax, str.cannot_commit___no_transaction_is_active
mov edi, dword [ebp - 0xb8]
push eax
push dword [ebp - 0xbc]
add edi, 0x68
call fcn.00474f32
mov dword [ebp - 0xb4], ebx
jmp 0x493995
mov eax, dword [esi + 4]
mov ecx, dword [ebp - 0xbc]
mov ecx, dword [ecx + 8]
shl eax, 4
mov eax, dword [eax + ecx + 4]
test eax, eax
mov dword [ebp - 0xb0], eax
je case.0x48f070.10
push dword [esi + 8]
call fcn.00481635
pop ecx
mov dword [ebp - 0xb4], eax
push 5
pop eax
cmp dword [ebp - 0xb4], eax
je 0x493ac5
xor eax, eax
cmp dword [ebp - 0xb4], eax
jne 0x493af4
cmp dword [esi + 8], eax
je case.0x48f070.10
mov edi, dword [ebp - 0xb8]
cmp byte [edi + 0x71], al
je case.0x48f070.10
mov esi, dword [ebp - 0xbc]
cmp byte [esi + 0x1c], al
je 0x490eff
cmp dword [esi + 0x8c], 1
jle case.0x48f070.10
lea ecx, [edi + 0xd8]
cmp dword [ecx], eax
jne 0x490f1d
mov edx, dword [esi + 0x1cc]
lea eax, [esi + 0x1d0]
inc dword [eax]
mov eax, dword [eax]
add edx, eax
mov dword [ecx], edx
push dword [ecx]
mov eax, dword [ebp - 0xb0]
call fcn.00474bbd
mov dword [ebp - 0xb4], eax
mov eax, dword [esi + 0x1d8]
mov dword [edi + 0xd0], eax
mov eax, dword [esi + 0x1dc]
mov dword [edi + 0xd4], eax
jmp 0x493996
mov eax, dword [esi + 4]
mov dword [ebp - 0xac], eax
mov esi, dword [esi + 0xc]
lea ecx, [ebp - 0xb0]
push ecx
mov ecx, dword [ebp - 0xbc]
mov dword [ebp - 0xa8], esi
mov ecx, dword [ecx + 8]
shl eax, 4
mov eax, dword [eax + ecx + 4]
push esi
call fcn.0046f65b
mov eax, dword [ebp - 0xb0]
pop ecx
pop ecx
mov ecx, dword [ebp - 0xc4]
jmp 0x49010f
mov eax, dword [esi + 4]
mov ecx, dword [ebp - 0xbc]
mov edi, dword [ebp - 0xd8]
shl eax, 4
add eax, dword [ecx + 8]
mov dword [ebp - 0xb0], eax
mov eax, edi
call fcn.0047d222
push dword [edi]
mov eax, dword [ebp - 0xb0]
push dword [esi + 8]
mov ebx, dword [eax + 4]
call fcn.0047ca5b
mov dword [ebp - 0xb4], eax
mov eax, dword [esi + 8]
cmp eax, 1
pop ecx
pop ecx
jne 0x490fed
mov eax, dword [ebp - 0xb0]
mov eax, dword [eax + 0xc]
mov ecx, dword [edi]
mov dword [eax], ecx
mov eax, dword [ebp - 0xbc]
or dword [eax + 0xc], 0x10
jmp 0x491000
cmp eax, 2
jne 0x491000
mov eax, dword [ebp - 0xb0]
mov eax, dword [eax + 0xc]
mov cl, byte [edi]
mov byte [eax + 0x48], cl
cmp dword [esi + 4], 1
jne case.0x48f070.10
mov eax, dword [ebp - 0xbc]
call fcn.00468444
mov eax, dword [ebp - 0xb8]
mov byte [eax + 0x6e], 0
jmp case.0x48f070.10
mov eax, dword [esi + 4]
mov ecx, dword [ebp - 0xbc]
mov ecx, dword [ecx + 8]
shl eax, 4
mov eax, dword [eax + ecx + 4]
test eax, eax
mov dword [ebp - 0xac], eax
je 0x491053
lea ecx, [ebp - 0xb0]
push ecx
push 1
call fcn.0046f65b
pop ecx
pop ecx
jmp 0x49105a
and dword [ebp - 0xb0], 0
mov eax, dword [ebp - 0xb0]
cmp eax, dword [esi + 8]
je case.0x48f070.10
mov edi, dword [ebp - 0xb8]
push dword [edi + 0x68]
mov ebx, dword [ebp - 0xbc]
push ebx
call fcn.0046eba8
push str.database_schema_has_changed
mov edx, ebx
call fcn.00472540
mov dword [edi + 0x68], eax
mov esi, dword [esi + 4]
mov ecx, dword [ebx + 8]
mov eax, esi
shl eax, 4
mov eax, dword [eax + ecx + 0xc]
mov eax, dword [eax]
add esp, 0xc
cmp eax, dword [ebp - 0xb0]
je 0x4910b0
mov eax, esi
call fcn.0047a444
mov eax, ebx
call fcn.00468444
mov dword [ebp - 0xb4], 0x11
jmp case.0x48f070.10
mov eax, dword [ebp - 0xb8]
cmp byte [eax + 0x6e], 0
je 0x4910e1
mov dword [ebp - 0xb4], 4
jmp case.0x48f070.10
mov edi, dword [ebp - 0xbc]
mov ebx, dword [ebp - 0xb8]
xor edx, edx
mov dword [ebp - 0xb0], edx
mov dword [ebp - 0xac], edx
mov ecx, dword [esi + 8]
mov dword [ebp - 0xa8], ecx
mov eax, dword [esi + 0xc]
mov dword [ebp - 0xa4], eax
shl eax, 4
add eax, dword [edi + 8]
mov dword [ebp - 0x94], eax
mov edi, dword [eax + 4]
mov dword [ebp - 0x9c], edi
cmp byte [esi], 0x27
jne 0x491141
mov dword [ebp - 0xa0], 1
mov eax, dword [eax + 0xc]
mov al, byte [eax + 0x48]
cmp al, byte [ebx + 0x6f]
jae 0x491147
mov byte [ebx + 0x6f], al
jmp 0x491147
mov dword [ebp - 0xa0], edx
cmp byte [esi + 3], 0
je 0x491179
imul ecx, ecx, 0x28
add ecx, dword [ebx + 0x58]
mov edi, ecx
mov eax, edi
mov dword [ebp - 0xd4], edi
call fcn.0047d222
mov edi, dword [edi]
cmp edi, 2
mov dword [ebp - 0xa8], edi
jl 0x493ade
mov edx, dword [ebp - 0xb0]
mov al, byte [esi + 1]
cmp al, 0xfa
jne 0x4911a4
mov eax, dword [esi + 0x10]
mov ecx, dword [ebx]
mov dword [ebp - 0xac], eax
mov ecx, dword [ecx + 8]
mov ecx, dword [ecx + 0xc]
mov cl, byte [ecx + 0x49]
mov byte [eax + 4], cl
mov eax, dword [ebp - 0xac]
movzx edx, word [eax + 6]
inc edx
jmp 0x4911ab
cmp al, 0xf2
jne 0x4911b1
mov edx, dword [esi + 0x10]
mov dword [ebp - 0xb0], edx
push 1
push dword [ebp - 0xa4]
push edx
mov edx, dword [esi + 4]
call fcn.004848bb
xor ebx, ebx
add esp, 0xc
cmp eax, ebx
mov dword [ebp - 0x98], eax
je 0x48f424
mov byte [eax + 0x14], 1
mov eax, dword [ebp - 0x98]
push dword [eax]
mov eax, dword [ebp - 0x9c]
push dword [ebp - 0xac]
push dword [ebp - 0xa0]
push dword [ebp - 0xa8]
call fcn.00470723
mov ecx, dword [ebp - 0x98]
mov edx, dword [ebp - 0xac]
add esp, 0x10
cmp eax, 0x10
mov dword [ebp - 0xb4], eax
mov dword [ecx + 0x28], edx
jne 0x491229
mov eax, dword [ebp - 0x98]
mov dword [eax], ebx
mov dword [ebp - 0xb4], ebx
cmp byte [esi + 1], 0xfa
mov ecx, dword [ebp - 0x98]
setne al
mov byte [ecx + 0x16], al
mov eax, dword [ebp - 0x98]
cmp byte [eax + 0x16], bl
sete cl
mov byte [eax + 0x17], cl
jmp case.0x48f070.10
mov edx, dword [esi + 4]
mov ebx, dword [ebp - 0xb8]
push 1
push 0xffffffffffffffff
push dword [esi + 8]
call fcn.004848bb
add esp, 0xc
test eax, eax
mov dword [ebp - 0xb0], eax
je 0x48f424
mov edx, dword [ebp - 0xbc]
xor ebx, ebx
inc ebx
mov byte [eax + 0x14], bl
mov edi, dword [ebp - 0xb0]
push 0x1f4
add edi, 0x20
push ebx
mov eax, 0x41e
xor ecx, ecx
call fcn.0047fa4d
test eax, eax
pop ecx
pop ecx
mov dword [ebp - 0xb4], eax
jne 0x49136e
mov eax, dword [ebp - 0xb0]
mov eax, dword [eax + 0x20]
push ebx
call fcn.00481635
test eax, eax
pop ecx
mov dword [ebp - 0xb4], eax
jne 0x49136e
cmp dword [esi + 0x10], eax
je 0x491348
lea eax, [ebp - 0xe8]
push 2
push eax
mov eax, dword [ebp - 0xb0]
mov eax, dword [eax + 0x20]
call fcn.00483988
test eax, eax
pop ecx
pop ecx
mov dword [ebp - 0xb4], eax
jne 0x49133c
mov eax, dword [ebp - 0xb0]
push dword [eax]
mov eax, dword [eax + 0x20]
push dword [esi + 0x10]
push ebx
push dword [ebp - 0xe8]
call fcn.00470723
mov ecx, dword [ebp - 0xb0]
mov dword [ebp - 0xb4], eax
mov eax, dword [esi + 0x10]
mov dword [ecx + 0x28], eax
mov eax, dword [ebp - 0xb8]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov eax, dword [eax + 0xc]
mov ecx, dword [ebp - 0xb0]
mov ecx, dword [ecx + 0x28]
mov al, byte [eax + 0x49]
add esp, 0x10
mov byte [ecx + 4], al
mov eax, dword [ebp - 0xb0]
mov byte [eax + 0x16], 0
jmp 0x49136e
mov eax, dword [ebp - 0xb0]
push dword [eax]
mov eax, dword [eax + 0x20]
push 0
push ebx
push ebx
call fcn.00470723
mov dword [ebp - 0xb4], eax
mov eax, dword [ebp - 0xb0]
add esp, 0x10
mov byte [eax + 0x16], bl
mov eax, dword [ebp - 0xb0]
cmp byte [eax + 0x16], 0
jmp 0x491242
mov edx, dword [esi + 4]
mov ebx, dword [ebp - 0xb8]
push 0
push 0xffffffffffffffff
push dword [esi + 0xc]
call fcn.004848bb
add esp, 0xc
test eax, eax
mov dword [ebp - 0xb0], eax
je 0x48f424
mov byte [eax + 0x14], 1
mov eax, dword [esi + 8]
mov ecx, dword [ebp - 0xb0]
mov dword [ecx + 0x24], eax
mov eax, dword [ebp - 0xb0]
mov byte [eax + 0x16], 1
mov eax, dword [ebp - 0xb0]
mov byte [eax + 0x17], 0
jmp case.0x48f070.10
mov edi, dword [ebp - 0xb8]
mov eax, dword [esi + 4]
mov ecx, dword [edi + 0x34]
mov eax, dword [ecx + eax*4]
call fcn.00484175
mov eax, dword [esi + 4]
mov ecx, dword [edi + 0x34]
and dword [ecx + eax*4], 0
jmp case.0x48f070.10
mov ecx, dword [ebp - 0xb8]
mov eax, dword [esi + 4]
mov edx, dword [ecx + 0x34]
mov eax, dword [edx + eax*4]
xor ebx, ebx
mov dword [ebp - 0xa8], eax
cmp dword [eax], ebx
je 0x48f08b
movzx edx, byte [esi]
mov dword [ebp - 0xac], edx
mov byte [eax + 0x14], bl
mov eax, dword [ebp - 0xa8]
cmp byte [eax + 0x16], bl
je 0x4915d5
mov esi, dword [ebp - 0xd8]
mov edi, esi
call fcn.0047dbe3
call fcn.0047c7d6
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0x7c], edx
mov ecx, esi
mov byte [eax + 0x11], bl
movzx eax, word [ecx + 0x1c]
test al, 4
jne 0x49156f
test al, 8
jne 0x49146a
mov eax, dword [ebp - 0xcc]
mov eax, dword [eax + 8]
jmp 0x48f0c4
cmp dword [ebp - 0x80], ebx
jne 0x491532
mov eax, SysReAllocString
cmp dword [ebp - 0x7c], eax
jne 0x491532
mov dword [ebp - 0xec], eax
mov dword [ebp - 0xf0], ebx
fild qword [ebp - 0xf0]
fcomp qword [ecx + 8]
fnstsw ax
test ah, 0x41
je 0x4914ad
fldz
fcomp qword [ecx + 8]
fnstsw ax
test ah, 5
jp 0x491532
fldz
mov dword [ebp - 0xb0], 1
fcomp qword [ecx + 8]
fnstsw ax
test ah, 0x41
jne 0x4914ea
cmp dword [ebp - 0xac], 0x2e
je 0x4914d5
cmp dword [ebp - 0xac], 0x2d
jne 0x49145c
mov eax, dword [ebp - 0xa8]
mov edi, dword [eax]
lea esi, [ebp - 0xb0]
call fcn.00482623
jmp 0x491513
cmp dword [ebp - 0xac], 0x2b
je 0x491500
cmp dword [ebp - 0xac], 0x2c
jne 0x49145c
mov eax, dword [ebp - 0xa8]
mov esi, dword [eax]
lea edi, [ebp - 0xb0]
call fcn.004825e6
cmp eax, ebx
mov dword [ebp - 0xb4], eax
jne 0x493af4
cmp dword [ebp - 0xb0], ebx
je case.0x48f070.10
jmp 0x49145c
cmp dword [ebp - 0xac], 0x2b
je 0x49155b
cmp dword [ebp - 0xac], 0x2d
je 0x49155b
fild qword [ebp - 0x80]
fcomp qword [ecx + 8]
fnstsw ax
test ah, 0x41
jne 0x49156f
add dword [ebp - 0x80], 0xffffffff
adc dword [ebp - 0x7c], 0xffffffff
jmp 0x49156f
fild qword [ebp - 0x80]
fcomp qword [ecx + 8]
fnstsw ax
test ah, 5
jp 0x49156f
add dword [ebp - 0x80], 1
adc dword [ebp - 0x7c], ebx
lea eax, [ebp - 0xb0]
push eax
mov eax, dword [ebp - 0xa8]
push ebx
push dword [ebp - 0x7c]
push dword [ebp - 0x80]
push ebx
push dword [eax]
call fcn.00482315
add esp, 0x18
cmp eax, ebx
mov dword [ebp - 0xb4], eax
jne 0x493af4
cmp dword [ebp - 0xb0], ebx
mov esi, dword [ebp - 0xcc]
jne 0x491659
mov eax, dword [ebp - 0xa8]
mov byte [eax + 0x11], 1
mov eax, dword [ebp - 0x80]
mov ecx, dword [ebp - 0xa8]
mov dword [ecx + 8], eax
mov eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0xa8]
mov dword [ecx + 0xc], eax
jmp 0x491659
cmp dword [ebp - 0xac], 0x2e
mov edx, dword [esi + 0x10]
mov dword [ebp - 0x88], edx
mov edx, dword [eax + 0x28]
mov dword [ebp - 0xa0], edx
mov dx, word [ebp - 0x88]
mov word [ebp - 0x9c], dx
je 0x49160e
cmp dword [ebp - 0xac], 0x2c
mov word [ebp - 0x9a], bx
jne 0x491617
mov word [ebp - 0x9a], 8
mov edx, dword [esi + 0xc]
imul edx, edx, 0x28
add edx, dword [ecx + 0x58]
lea ecx, [ebp - 0xb0]
push ecx
push ebx
push ebx
push ebx
lea ecx, [ebp - 0xa0]
push ecx
mov dword [ebp - 0x90], edx
push dword [eax]
call fcn.00482315
add esp, 0x18
cmp eax, ebx
mov dword [ebp - 0xb4], eax
jne 0x493af4
mov eax, dword [ebp - 0xa8]
mov byte [eax + 0x11], 0
mov eax, dword [ebp - 0xa8]
mov byte [eax + 0x15], 0
mov eax, dword [ebp - 0xa8]
mov dword [eax + 0x44], ebx
mov eax, dword [ebp - 0xac]
cmp eax, 0x2d
je 0x4916ba
cmp eax, 0x2e
je 0x4916ba
cmp dword [ebp - 0xb0], ebx
jg 0x4916a4
jne 0x49168b
cmp eax, 0x2b
je 0x4916a4
mov eax, dword [ebp - 0xa8]
mov eax, dword [eax]
xor ecx, ecx
cmp byte [eax + 0x43], 1
setne cl
mov dword [ebp - 0xb0], ecx
jmp 0x4916ff
lea eax, [ebp - 0xb0]
push eax
mov eax, dword [ebp - 0xa8]
push dword [eax]
call fcn.00483b0f
jmp 0x4916e5
cmp dword [ebp - 0xb0], ebx
jl 0x4916d1
jne 0x4902ab
cmp eax, 0x2e
jne 0x4902ab
lea eax, [ebp - 0xb0]
push eax
mov eax, dword [ebp - 0xa8]
push dword [eax]
call fcn.00483c0f
cmp eax, ebx
pop ecx
mov dword [ebp - 0xb4], eax
pop ecx
jne 0x493af4
mov eax, dword [ebp - 0xa8]
mov byte [eax + 0x11], 0
cmp dword [ebp - 0xb0], ebx
jmp 0x48fe43
mov ecx, dword [ebp - 0xb8]
mov eax, dword [esi + 4]
mov ecx, dword [ecx + 0x34]
mov eax, dword [ecx + eax*4]
mov dword [ebp - 0xb0], eax
cmp dword [eax], 0
je case.0x48f070.10
mov esi, dword [ebp - 0xd4]
mov byte [eax + 0x14], 0
call fcn.0047c7d6
mov ecx, dword [ebp - 0xb0]
mov dword [ecx + 0x18], eax
mov eax, dword [ebp - 0xb0]
mov dword [eax + 0x1c], edx
mov eax, dword [ebp - 0xb0]
mov byte [eax + 0x11], 0
mov eax, dword [ebp - 0xb0]
mov byte [eax + 0x15], 1
jmp case.0x48f070.10
and dword [ebp - 0xb0], 0
mov ecx, dword [ebp - 0xb8]
mov eax, dword [esi + 4]
mov ecx, dword [ecx + 0x34]
mov ecx, dword [ecx + eax*4]
mov dword [ebp - 0xac], ecx
cmp dword [ecx], 0
je 0x491840
mov edi, dword [ebp - 0xd8]
test word [edi + 0x1c], 0x4000
je 0x4917a2
mov eax, edi
call fcn.00478431
mov ecx, dword [ebp - 0xac]
push dword [edi + 0x14]
mov ebx, dword [ecx + 0x28]
push dword [edi + 0x18]
mov edx, 0x97
lea eax, [ebp - 0xa0]
call fcn.00471999
xor edi, edi
cmp eax, edi
pop ecx
pop ecx
mov dword [ebp - 0xa4], eax
je 0x48f424
cmp byte [esi], 0x31
jne 0x4917dd
or word [eax + 6], 0x10
mov eax, dword [ebp - 0xa4]
lea ecx, [ebp - 0xa8]
push ecx
push edi
push edi
push edi
push eax
mov eax, dword [ebp - 0xac]
push dword [eax]
call fcn.00482315
mov esi, dword [ebp - 0xa4]
add esp, 0x18
mov dword [ebp - 0xb4], eax
call fcn.00472d23
cmp dword [ebp - 0xb4], edi
jne case.0x48f070.10
mov esi, dword [ebp - 0xcc]
xor ecx, ecx
xor eax, eax
cmp dword [ebp - 0xa8], eax
sete cl
mov dword [ebp - 0xb0], ecx
mov ecx, dword [ebp - 0xac]
mov byte [ecx + 0x15], al
mov ecx, dword [ebp - 0xac]
mov dword [ecx + 0x44], eax
cmp byte [esi], 0x31
je 0x4901ab
cmp dword [ebp - 0xb0], 0
jmp 0x490211
mov ecx, dword [esi + 0x10]
mov eax, dword [ebp - 0xb8]
imul ecx, ecx, 0x28
add ecx, dword [eax + 0x58]
mov eax, dword [eax + 0x34]
mov dword [ebp - 0xa0], ecx
mov ecx, dword [esi + 4]
mov eax, dword [eax + ecx*4]
mov dword [ebp - 0xac], eax
xor edi, edi
mov dword [eax + 0x40], edi
mov eax, dword [ebp - 0xac]
mov dword [eax + 0x44], edi
mov eax, dword [ebp - 0xac]
mov ecx, dword [eax]
mov edx, dword [ebp - 0xa0]
mov dword [ebp - 0xa8], ecx
mov ecx, dword [eax + 0x28]
mov cx, word [ecx + 6]
cmp cx, di
mov word [ebp - 0xa4], cx
mov word [ebp - 0xb0], di
jbe 0x4918e8
movzx ebx, word [ebp - 0xb0]
imul ebx, ebx, 0x28
test byte [ebx + edx + 0x1c], 1
jne 0x4918d8
inc word [ebp - 0xb0]
cmp word [ebp - 0xb0], cx
jb 0x4918b5
jmp 0x4918e8
mov ecx, dword [esi + 8]
dec ecx
mov dword [ebp - 0xc0], ecx
mov dword [ebp - 0xa8], edi
cmp dword [ebp - 0xa8], edi
je case.0x48f070.10
mov eax, dword [eax + 0x28]
mov edi, dword [ebp - 0xd8]
mov dword [ebp - 0x98], eax
mov eax, dword [ebp - 0xa4]
inc eax
mov word [ebp - 0x94], ax
mov eax, edi
mov word [ebp - 0x92], 0x20
mov dword [ebp - 0x88], edx
call fcn.0047d222
mov eax, dword [edi]
mov dword [ebp - 0x80], eax
mov eax, dword [edi + 4]
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0xac]
add eax, 0x40
push eax
xor eax, eax
push eax
push eax
push eax
lea eax, [ebp - 0x98]
push eax
push dword [ebp - 0xa8]
call fcn.00482315
add esp, 0x18
test byte [ebp - 0x92], 0x20
mov dword [ebp - 0xb4], eax
jne 0x48f08b
mov eax, dword [ebp - 0x90]
cmp eax, dword [ebp - 0x80]
jne 0x491983
mov ecx, dword [ebp - 0x8c]
cmp ecx, dword [ebp - 0x7c]
je 0x48f08b
mov dword [edi], eax
mov eax, dword [ebp - 0x8c]
mov dword [edi + 4], eax
jmp case.0x48f070.10
mov eax, dword [esi + 4]
mov ecx, dword [ebp - 0xb8]
mov ecx, dword [ecx + 0x34]
mov eax, dword [ecx + eax*4]
mov dword [ebp - 0xb0], eax
mov ecx, dword [eax]
xor ebx, ebx
cmp ecx, ebx
mov dword [ebp - 0xac], ecx
je 0x491a5c
mov edi, dword [ebp - 0xd8]
mov dword [ebp - 0xa8], ebx
mov eax, dword [edi]
lea edx, [ebp - 0xa8]
push edx
push ebx
mov dword [ebp - 0xa0], eax
mov ecx, dword [edi + 4]
push ecx
push eax
push ebx
push dword [ebp - 0xac]
mov dword [ebp - 0x9c], ecx
call fcn.00482315
mov ecx, dword [ebp - 0xb0]
mov dword [ebp - 0xb4], eax
mov eax, dword [edi]
mov dword [ecx + 8], eax
mov eax, dword [edi + 4]
mov ecx, dword [ebp - 0xb0]
mov dword [ecx + 0xc], eax
mov ecx, dword [ebp - 0xb0]
add esp, 0x18
cmp dword [ebp - 0xa8], ebx
sete al
mov byte [ecx + 0x11], al
mov eax, dword [ebp - 0xb0]
mov byte [eax + 0x14], bl
mov eax, dword [ebp - 0xb0]
mov dword [eax + 0x44], ebx
mov eax, dword [ebp - 0xb0]
mov byte [eax + 0x15], bl
mov eax, dword [ebp - 0xa8]
cmp eax, ebx
je 0x491a4e
mov esi, dword [esi + 8]
dec esi
mov dword [ebp - 0xc0], esi
mov ecx, dword [ebp - 0xb0]
mov dword [ecx + 0x40], eax
jmp case.0x48f070.10
mov esi, dword [esi + 8]
dec esi
mov dword [ebp - 0xc0], esi
mov dword [eax + 0x40], ebx
jmp case.0x48f070.10
mov eax, dword [esi + 4]
mov edx, dword [ebp - 0xb8]
mov ecx, dword [edx + 0x34]
mov eax, dword [ecx + eax*4]
mov edi, dword [eax + 0x30]
mov ecx, dword [ebp - 0xc4]
mov dword [ecx], edi
mov eax, dword [eax + 0x34]
mov dword [ecx + 4], eax
mov eax, dword [esi + 4]
mov edx, dword [edx + 0x34]
mov eax, dword [edx + eax*4]
add dword [eax + 0x30], 1
adc dword [eax + 0x34], 0
jmp 0x490115
mov ecx, dword [ebp - 0xb8]
mov ecx, dword [ecx + 0x34]
xor ebx, ebx
mov dword [ebp - 0xb0], ebx
mov dword [ebp - 0xac], ebx
mov dword [ebp - 0xa4], ebx
mov eax, dword [esi + 4]
mov ecx, dword [ecx + eax*4]
mov dword [ebp - 0xa8], ecx
cmp dword [ecx], ebx
je 0x491d72
mov dword [ebp - 0xa0], ebx
cmp byte [ecx + 0x13], bl
jne 0x491c6c
mov eax, dword [ecx]
mov edx, dword [eax + 0x18]
mov dword [ebp - 0xb0], edx
mov eax, dword [eax + 0x1c]
or edx, eax
mov dword [ebp - 0xac], eax
jne 0x491b82
mov esi, dword [ecx]
lea edi, [ebp - 0xa4]
call fcn.004825e6
cmp eax, ebx
mov dword [ebp - 0xb4], eax
jne 0x493af4
cmp dword [ebp - 0xa4], ebx
je 0x491b35
mov dword [ebp - 0xb0], 1
mov dword [ebp - 0xac], ebx
jmp 0x491b7c
mov eax, dword [ebp - 0xa8]
mov eax, dword [eax]
lea edi, [ebp - 0xb0]
call fcn.00471e02
cmp dword [ebp - 0xb0], 0xffffffff
mov dword [ebp - 0xb4], eax
jne 0x491b6f
cmp dword [ebp - 0xac], 0x7fffffff
jne 0x491b6f
mov eax, dword [ebp - 0xa8]
mov byte [eax + 0x13], 1
jmp 0x491b7c
add dword [ebp - 0xb0], 1
adc dword [ebp - 0xac], ebx
mov esi, dword [ebp - 0xcc]
mov eax, dword [esi + 0xc]
cmp eax, ebx
je 0x491c34
mov edx, dword [ebp - 0xb8]
mov ecx, dword [edx + 0xdc]
cmp ecx, ebx
je 0x491bb7
mov eax, ecx
mov dword [ebp - 0x98], eax
mov ecx, dword [eax + 0x3c]
cmp ecx, ebx
jne 0x491b9d
mov esi, dword [esi + 0xc]
imul esi, esi, 0x28
add esi, dword [eax + 0x10]
jmp 0x491bbf
imul eax, eax, 0x28
add eax, dword [edx + 0x58]
mov esi, eax
mov eax, esi
mov dword [ebp - 0x9c], esi
call fcn.0047d222
mov edx, dword [ebp - 0x9c]
mov eax, dword [edx]
cmp eax, 0xffffffff
mov ecx, dword [edx + 4]
jne 0x491be8
cmp ecx, 0x7fffffff
je 0x493aea
mov esi, dword [ebp - 0xa8]
cmp byte [esi + 0x13], 0
jne 0x493aea
mov esi, dword [ebp - 0xac]
add eax, 1
adc ecx, ebx
cmp esi, ecx
jg 0x491c1d
jl 0x491c11
cmp dword [ebp - 0xb0], eax
jae 0x491c1d
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xac], ecx
mov eax, dword [ebp - 0xb0]
mov dword [edx], eax
mov eax, dword [ebp - 0xac]
mov ecx, dword [ebp - 0x9c]
mov dword [ecx + 4], eax
mov ecx, dword [ebp - 0xac]
cmp ecx, 0x7fffffff
jg 0x491c56
mov eax, dword [ebp - 0xb0]
jl 0x491c4f
cmp eax, 0xffffffff
jae 0x491c56
add eax, 1
adc ecx, ebx
jmp 0x491c5a
xor eax, eax
xor ecx, ecx
push ecx
push eax
mov eax, dword [ebp - 0xa8]
mov ecx, dword [eax]
call fcn.00468847
add esp, 8
mov eax, dword [ebp - 0xa8]
cmp byte [eax + 0x13], 0
je 0x491d54
mov eax, dword [ebp - 0xbc]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xb0], ecx
mov eax, dword [eax + 0x34]
and dword [ebp - 0xa0], 0
mov dword [ebp - 0xac], eax
xor esi, esi
cmp dword [ebp - 0xa0], esi
jne 0x491cd1
mov eax, dword [ebp - 0xb0]
and eax, 0xffffff
xor ecx, ecx
cmp eax, dword [ebp - 0xb0]
jne 0x491cd1
cmp ecx, dword [ebp - 0xac]
jne 0x491cd1
add dword [ebp - 0xb0], 1
adc dword [ebp - 0xac], esi
jmp 0x491cfa
lea eax, [ebp - 0xb0]
push eax
push 8
call fcn.0046eb72
cmp dword [ebp - 0xa0], 5
pop ecx
pop ecx
jge 0x491cfa
and dword [ebp - 0xb0], 0xffffff
mov dword [ebp - 0xac], esi
lea eax, [ebp - 0xa4]
push eax
mov eax, dword [ebp - 0xa8]
push esi
push dword [ebp - 0xac]
push dword [ebp - 0xb0]
push esi
push dword [eax]
call fcn.00482315
add esp, 0x18
inc dword [ebp - 0xa0]
cmp dword [ebp - 0xa0], 0x64
mov dword [ebp - 0xb4], eax
jge 0x491d44
cmp eax, esi
jne 0x491d54
cmp dword [ebp - 0xa4], esi
je 0x491c9d
cmp eax, esi
jne 0x491d54
cmp dword [ebp - 0xa4], esi
je 0x493aea
mov eax, dword [ebp - 0xa8]
mov byte [eax + 0x11], 0
mov eax, dword [ebp - 0xa8]
mov byte [eax + 0x15], 0
mov eax, dword [ebp - 0xa8]
and dword [eax + 0x44], 0
mov eax, dword [ebp - 0xc4]
mov cx, word [eax + 0x1c]
and cx, 0xbf04
or cx, 4
mov word [eax + 0x1c], cx
jmp 0x490a94
mov ecx, dword [esi + 8]
mov edi, dword [ebp - 0xb8]
imul ecx, ecx, 0x28
mov eax, dword [edi + 0x58]
mov ebx, dword [edi + 0x34]
add ecx, eax
mov dword [ebp - 0xb0], ecx
mov edx, dword [esi + 4]
mov edx, dword [ebx + edx*4]
mov dword [ebp - 0xa0], edx
cmp byte [esi], 0x36
jne 0x491dd4
mov edx, dword [esi + 0xc]
imul edx, edx, 0x28
add edx, eax
mov dword [ebp - 0xac], edx
mov eax, dword [edx]
mov dword [ebp - 0xa8], eax
mov edx, dword [edx + 4]
jmp 0x491dde
mov eax, dword [esi + 0xc]
cdq
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xa4], edx
test byte [esi + 3], 1
je 0x491ded
inc dword [edi + 0x74]
test byte [esi + 3], 2
mov edi, dword [ebp - 0xbc]
je 0x491e0b
mov dword [edi + 0x30], eax
mov eax, dword [ebp - 0xa4]
mov dword [edi + 0x34], eax
mov ecx, dword [ebp - 0xb0]
test byte [ecx + 0x1c], 1
je 0x491e25
and dword [ecx + 0x14], 0
mov eax, dword [ebp - 0xb0]
and dword [eax + 0x18], 0
mov ecx, dword [ebp - 0xb0]
test byte [esi + 3], 0x10
je 0x491e3c
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x40]
mov dword [ebp - 0x98], eax
jmp 0x491e43
and dword [ebp - 0x98], 0
test word [ecx + 0x1c], 0x4000
je 0x491e55
mov eax, dword [ecx]
mov dword [ebp - 0x9c], eax
jmp 0x491e5c
and dword [ebp - 0x9c], 0
mov eax, dword [ebp - 0xa0]
mov ecx, dword [eax]
xor ebx, ebx
push ebx
push ebx
call fcn.00468847
push dword [ebp - 0x98]
movzx eax, byte [esi + 3]
and eax, 8
push eax
push dword [ebp - 0x9c]
mov eax, dword [ebp - 0xb0]
push dword [eax + 0x18]
push dword [eax + 0x14]
mov eax, dword [ebp - 0xa0]
push dword [ebp - 0xa4]
push dword [ebp - 0xa8]
push ebx
mov ebx, dword [eax]
call fcn.00484687
mov ecx, dword [ebp - 0xa0]
mov dword [ebp - 0xb4], eax
xor eax, eax
mov byte [ecx + 0x11], al
mov ecx, dword [ebp - 0xa0]
mov byte [ecx + 0x15], al
mov ecx, dword [ebp - 0xa0]
add esp, 0x28
cmp dword [ebp - 0xb4], eax
mov dword [ecx + 0x44], eax
jne case.0x48f070.10
cmp dword [edi + 0xb8], eax
je case.0x48f070.10
cmp dword [esi + 0x10], eax
je case.0x48f070.10
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 4]
mov ecx, dword [edi + 8]
push dword [ebp - 0xa4]
shl eax, 4
mov eax, dword [eax + ecx]
push dword [ebp - 0xa8]
mov dword [ebp - 0x94], eax
mov ecx, dword [esi + 0x10]
mov dword [ebp - 0x90], ecx
mov dl, byte [esi + 3]
and dl, 4
neg dl
push ecx
push eax
sbb edx, edx
and edx, 5
add edx, 0x12
push edx
mov dword [ebp - 0x8c], edx
push dword [edi + 0xb4]
call dword [edi + 0xb8]
add esp, 0x18
jmp case.0x48f070.10
mov ecx, dword [ebp - 0xb8]
mov ecx, dword [ecx + 0x34]
xor edi, edi
mov dword [ebp - 0xb0], edi
mov dword [ebp - 0xac], edi
mov eax, dword [esi + 4]
mov eax, dword [ecx + eax*4]
mov ecx, dword [ebp - 0xbc]
mov dword [ebp - 0xa8], eax
cmp dword [ecx + 0xb8], edi
je 0x491f90
cmp dword [esi + 0x10], edi
je 0x491f90
mov ecx, dword [eax + 8]
mov dword [ebp - 0xb0], ecx
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xac], ecx
mov esi, eax
call fcn.004840f9
cmp eax, edi
mov dword [ebp - 0xb4], eax
jne 0x493af4
mov eax, dword [ebp - 0xa8]
mov ecx, dword [eax]
push 0
push 0
call fcn.00468847
mov eax, dword [ebp - 0xa8]
mov ebx, dword [eax]
add esp, 8
call fcn.0048448b
mov ecx, dword [ebp - 0xa8]
and dword [ecx + 0x44], 0
test eax, eax
mov dword [ebp - 0xb4], eax
jne 0x492023
mov eax, dword [ebp - 0xbc]
mov edx, dword [eax + 0xb8]
test edx, edx
je 0x492023
mov ecx, dword [ebp - 0xcc]
mov ecx, dword [ecx + 0x10]
test ecx, ecx
je 0x492023
push dword [ebp - 0xac]
mov esi, dword [eax + 8]
push dword [ebp - 0xb0]
push ecx
mov ecx, dword [ebp - 0xa8]
mov ecx, dword [ecx + 4]
shl ecx, 4
push dword [ecx + esi]
push 9
push dword [eax + 0xb4]
call edx
add esp, 0x18
mov eax, dword [ebp - 0xcc]
test byte [eax + 8], 1
je case.0x48f070.10
mov eax, dword [ebp - 0xb8]
inc dword [eax + 0x74]
jmp case.0x48f070.10
mov edx, dword [ebp - 0xb8]
mov eax, dword [edx + 0x74]
mov ecx, dword [ebp - 0xbc]
add dword [ecx + 0x40], eax
mov dword [ecx + 0x3c], eax
and dword [edx + 0x74], 0
jmp case.0x48f070.10
mov ebx, dword [esi + 8]
mov eax, dword [ebp - 0xb8]
imul ebx, ebx, 0x28
add ebx, dword [eax + 0x58]
mov ecx, dword [esi + 4]
mov eax, dword [eax + 0x34]
mov esi, dword [eax + ecx*4]
mov dword [ebp - 0xb0], esi
mov eax, dword [esi]
mov dword [ebp - 0xc4], ebx
mov dword [ebp - 0xac], eax
call fcn.004840f9
test eax, eax
mov dword [ebp - 0xb4], eax
jne 0x493af4
mov eax, dword [ebp - 0xb0]
cmp byte [eax + 0x17], 0
je 0x4920ed
mov eax, dword [ebp - 0xac]
lea edi, [ebp - 0xa0]
call fcn.00471e02
mov eax, dword [ebp - 0xbc]
mov eax, dword [eax + 0x48]
cdq
mov ecx, eax
mov eax, dword [ebp - 0x9c]
cmp eax, edx
jg 0x48fb27
mov eax, dword [ebp - 0xa0]
jl 0x4920e5
cmp eax, ecx
ja 0x48fb27
mov dword [ebp - 0xa8], eax
jmp 0x492115
lea eax, [ebp - 0xa8]
push eax
mov eax, dword [ebp - 0xac]
call fcn.00471ded
mov eax, dword [ebp - 0xa8]
pop ecx
mov ecx, dword [ebp - 0xbc]
cmp eax, dword [ecx + 0x48]
ja 0x48fb27
push 0
mov edi, ebx
call fcn.00476078
test eax, eax
pop ecx
jne 0x48f424
mov eax, dword [ebp - 0xa8]
push dword [ebx + 0x14]
mov dword [ebx + 0x18], eax
mov ax, word [ebx + 0x1c]
and ax, 0xbf10
or ax, 0x10
mov word [ebx + 0x1c], ax
mov eax, dword [ebp - 0xb0]
cmp byte [eax + 0x17], 0
push dword [ebp - 0xa8]
push 0
je 0x492167
mov eax, dword [ebp - 0xac]
call fcn.00482648
add esp, 0xc
jmp 0x492175
push dword [ebp - 0xac]
call fcn.00483d1c
add esp, 0x10
mov dword [ebp - 0xb4], eax
mov byte [ebx + 0x1f], 1
jmp case.0x48f070.10
mov ecx, dword [ebp - 0xb8]
mov eax, dword [esi + 4]
mov ecx, dword [ecx + 0x34]
mov esi, dword [ecx + eax*4]
mov dword [ebp - 0xb0], esi
cmp byte [esi + 0x14], 0
jne case.0x48f070.10
cmp byte [esi + 0x15], 0
je 0x4921b7
mov eax, dword [esi + 0x18]
mov dword [ebp - 0xa8], eax
mov eax, dword [esi + 0x1c]
jmp 0x492235
mov eax, dword [esi + 0x38]
test eax, eax
je 0x49220a
mov eax, dword [eax]
mov dword [ebp - 0xa0], eax
mov eax, dword [eax]
lea ecx, [ebp - 0xa8]
push ecx
mov dword [ebp - 0x9c], eax
push dword [esi + 0x38]
call dword [eax + 0x30]
mov esi, dword [ebp - 0xb8]
push dword [esi + 0x68]
mov dword [ebp - 0xb4], eax
push dword [ebp - 0xbc]
call fcn.0046eba8
mov eax, dword [ebp - 0xa0]
mov ecx, dword [eax + 8]
add esp, 0x10
mov dword [esi + 0x68], ecx
and dword [eax + 8], 0
jmp 0x492250
call fcn.004840f9
test eax, eax
mov dword [ebp - 0xb4], eax
jne 0x493af4
mov eax, dword [ebp - 0xb0]
cmp byte [eax + 0x11], 0
je 0x49223d
mov ecx, dword [eax + 8]
mov dword [ebp - 0xa8], ecx
mov eax, dword [eax + 0xc]
mov dword [ebp - 0xa4], eax
jmp 0x492250
mov eax, dword [eax]
lea edi, [ebp - 0xa8]
call fcn.00471e02
mov dword [ebp - 0xb4], eax
mov ecx, dword [ebp - 0xa8]
mov eax, dword [ebp - 0xc4]
mov dword [eax], ecx
mov ecx, dword [ebp - 0xa4]
jmp 0x48fc45
mov eax, dword [esi + 4]
mov ecx, dword [ebp - 0xb8]
mov ecx, dword [ecx + 0x34]
mov eax, dword [ecx + eax*4]
mov dword [ebp - 0xb0], eax
mov byte [eax + 0x14], 1
mov eax, dword [ebp - 0xb0]
mov byte [eax + 0x11], 0
mov eax, dword [ebp - 0xb0]
mov esi, dword [eax]
test esi, esi
je case.0x48f070.10
call fcn.0046e326
jmp case.0x48f070.10
mov eax, dword [esi + 4]
mov ecx, dword [ebp - 0xb8]
mov ecx, dword [ecx + 0x34]
mov eax, dword [ecx + eax*4]
mov dword [ebp - 0xb0], eax
mov ecx, dword [eax]
test ecx, ecx
mov dword [ebp - 0xac], ecx
jne 0x4922d3
mov dword [ebp - 0xa8], 1
jmp 0x4922f2
lea edi, [ebp - 0xa8]
mov esi, ecx
call fcn.004825e6
mov esi, dword [ebp - 0xcc]
mov dword [ebp - 0xb4], eax
mov eax, dword [ebp - 0xb0]
mov cl, byte [ebp - 0xa8]
mov byte [eax + 0x14], cl
mov eax, dword [ebp - 0xb0]
mov byte [eax + 0x15], 0
mov eax, dword [ebp - 0xb0]
mov byte [eax + 0x11], 0
mov eax, dword [ebp - 0xb0]
and dword [eax + 0x44], 0
mov esi, dword [esi + 8]
test esi, esi
jle case.0x48f070.10
cmp dword [ebp - 0xa8], 0
je case.0x48f070.10
jmp 0x48f08e
mov eax, dword [ebp - 0xb8]
inc dword [eax + 0xbc]
jmp 0x49234a
mov eax, dword [ebp - 0xb8]
mov ecx, dword [esi + 4]
mov eax, dword [eax + 0x34]
mov eax, dword [eax + ecx*4]
mov dword [ebp - 0xb0], eax
mov edi, dword [eax]
xor ebx, ebx
cmp edi, ebx
mov dword [ebp - 0xac], edi
je 0x4923b3
lea esi, [ebp - 0xa8]
call fcn.00482623
cmp dword [ebp - 0xa8], ebx
mov ecx, dword [ebp - 0xb0]
mov esi, dword [ebp - 0xcc]
mov dword [ebp - 0xb4], eax
sete al
mov byte [ecx + 0x12], al
mov eax, dword [ebp - 0xb0]
mov byte [eax + 0x15], bl
mov eax, dword [ebp - 0xb0]
mov dword [eax + 0x44], ebx
mov eax, dword [ebp - 0xb0]
mov byte [eax + 0x11], bl
mov eax, dword [ebp - 0xb0]
jmp 0x4923bd
mov dword [ebp - 0xa8], 1
mov cl, byte [ebp - 0xa8]
mov byte [eax + 0x14], cl
cmp dword [ebp - 0xa8], ebx
jmp 0x48fe43
mov eax, dword [ebp - 0xbc]
mov eax, dword [eax + 0xd8]
test eax, eax
jne 0x493b47
mov ecx, dword [ebp - 0xb8]
mov eax, dword [esi + 4]
mov ecx, dword [ecx + 0x34]
mov eax, dword [ecx + eax*4]
test eax, eax
mov dword [ebp - 0xb0], eax
je case.0x48f070.10
mov ecx, dword [eax]
test ecx, ecx
mov dword [ebp - 0xac], ecx
jne 0x492417
mov byte [eax + 0x14], 1
jmp case.0x48f070.10
lea eax, [ebp - 0xa8]
mov dword [ebp - 0xa8], 1
cmp byte [esi], 0x42
push eax
push ecx
jne 0x492435
call fcn.00483c0f
jmp 0x49243a
call fcn.00483b0f
pop ecx
mov dword [ebp - 0xb4], eax
mov eax, dword [ebp - 0xb0]
pop ecx
mov cl, byte [ebp - 0xa8]
mov byte [eax + 0x14], cl
mov eax, dword [ebp - 0xb0]
and dword [eax + 0x44], 0
cmp dword [ebp - 0xa8], 0
jne 0x492487
mov eax, dword [esi + 8]
dec eax
mov dword [ebp - 0xc0], eax
mov al, byte [esi + 3]
test al, al
je 0x492487
mov ecx, dword [ebp - 0xb8]
movzx eax, al
lea eax, [ecx + eax*4 + 0xb4]
inc dword [eax]
mov eax, dword [ebp - 0xb0]
mov byte [eax + 0x11], 0
jmp case.0x48f070.10
mov eax, dword [esi + 4]
mov ecx, dword [ebp - 0xb8]
mov ecx, dword [ecx + 0x34]
mov ecx, dword [ecx + eax*4]
mov dword [ebp - 0xb0], ecx
mov eax, dword [ecx]
test eax, eax
mov dword [ebp - 0xac], eax
je case.0x48f070.10
mov edi, dword [ebp - 0xd4]
test word [edi + 0x1c], 0x4000
je 0x4924de
mov eax, edi
call fcn.00478431
mov ecx, dword [ebp - 0xb0]
mov dword [ebp - 0xb4], eax
jmp 0x4924e5
and dword [ebp - 0xb4], 0
cmp dword [ebp - 0xb4], 0
jne case.0x48f070.10
mov eax, dword [edi + 0x18]
mov dword [ebp - 0xa8], eax
mov edi, dword [edi + 0x14]
mov dword [ebp - 0xa4], edi
test byte [esi + 3], 0x10
je 0x49250f
mov ecx, dword [ecx + 0x40]
jmp 0x492511
xor ecx, ecx
mov ebx, dword [ebp - 0xac]
push ecx
push dword [esi + 0xc]
cdq
push 0
push 0
push 0x535d9c
push edx
push eax
push edi
call fcn.00484687
mov dword [ebp - 0xb4], eax
mov eax, dword [ebp - 0xb0]
add esp, 0x20
and dword [eax + 0x44], 0
jmp case.0x48f070.10
mov eax, dword [esi + 4]
mov ecx, dword [ebp - 0xb8]
mov ecx, dword [ecx + 0x34]
mov eax, dword [ecx + eax*4]
mov dword [ebp - 0xb0], eax
mov ecx, dword [eax]
test ecx, ecx
mov dword [ebp - 0xac], ecx
je case.0x48f070.10
mov eax, dword [eax + 0x28]
mov edx, dword [ebp - 0xb8]
mov dword [ebp - 0xa0], eax
mov ax, word [esi + 0xc]
mov word [ebp - 0x9c], ax
xor edi, edi
mov word [ebp - 0x9a], di
mov eax, dword [esi + 8]
imul eax, eax, 0x28
add eax, dword [edx + 0x58]
mov dword [ebp - 0x90], eax
lea eax, [ebp - 0xa8]
push eax
push edi
push edi
push edi
lea eax, [ebp - 0xa0]
push eax
push ecx
call fcn.00482315
add esp, 0x18
cmp eax, edi
mov dword [ebp - 0xb4], eax
jne 0x4925d9
cmp dword [ebp - 0xa8], edi
jne 0x4925d9
mov ebx, dword [ebp - 0xac]
call fcn.0048448b
mov dword [ebp - 0xb4], eax
mov eax, dword [ebp - 0xb0]
mov dword [eax + 0x44], edi
jmp case.0x48f070.10
mov eax, dword [esi + 4]
mov ecx, dword [ebp - 0xb8]
mov ecx, dword [ecx + 0x34]
mov esi, dword [ecx + eax*4]
mov dword [ebp - 0xac], esi
mov eax, dword [esi]
test eax, eax
mov dword [ebp - 0xb0], eax
je case.0x48f070.10
call fcn.004840f9
test eax, eax
mov dword [ebp - 0xb4], eax
jne 0x493af4
mov eax, dword [ebp - 0xac]
cmp byte [eax + 0x14], 0
jne case.0x48f070.10
lea eax, [ebp - 0xa8]
push eax
push dword [ebp - 0xb0]
call fcn.00484a2a
test eax, eax
pop ecx
pop ecx
mov dword [ebp - 0xb4], eax
jne 0x493af4
mov eax, dword [ebp - 0xc4]
mov cx, word [eax + 0x1c]
and cx, 0xbf04
or cx, 4
mov word [eax + 0x1c], cx
mov ecx, dword [ebp - 0xa8]
mov dword [eax], ecx
mov ecx, dword [ebp - 0xa4]
jmp 0x48f1a0
mov ecx, dword [ebp - 0xb8]
mov eax, dword [esi + 4]
mov ecx, dword [ecx + 0x34]
mov eax, dword [ecx + eax*4]
mov dword [ebp - 0xb0], eax
cmp dword [eax], 0
je case.0x48f070.10
mov ecx, dword [eax + 0x28]
mov dword [ebp - 0xa8], ecx
mov cx, word [esi + 0x10]
mov word [ebp - 0xa4], cx
xor ecx, ecx
cmp byte [esi + 3], cl
mov edx, dword [ebp - 0xb8]
setne cl
lea ecx, [ecx*8 + 4]
mov word [ebp - 0xa2], cx
mov ecx, dword [esi + 0xc]
imul ecx, ecx, 0x28
add ecx, dword [edx + 0x58]
mov dword [ebp - 0x98], ecx
lea ecx, [ebp - 0xac]
push ecx
lea ecx, [ebp - 0xa8]
push ecx
call fcn.004849a2
cmp byte [esi], 0x48
pop ecx
pop ecx
mov dword [ebp - 0xb4], eax
jne 0x492700
neg dword [ebp - 0xac]
jmp 0x492706
inc dword [ebp - 0xac]
cmp dword [ebp - 0xac], 0
jle case.0x48f070.10
jmp 0x48f08b
mov ecx, dword [ebp - 0xbc]
xor edi, edi
mov dword [ebp - 0xac], edi
mov eax, dword [ecx + 0x88]
cmp eax, edi
mov dword [ebp - 0xa8], eax
je 0x49277f
cmp dword [eax + 0x50], 0xbdf20da3
jne 0x492750
cmp byte [eax + 0x70], 2
jae 0x492750
cmp dword [eax + 0x60], edi
jl 0x492750
inc dword [ebp - 0xac]
mov eax, dword [eax + 8]
cmp eax, edi
mov dword [ebp - 0xa8], eax
jne 0x492736
cmp dword [ebp - 0xac], 1
jle 0x49277f
mov eax, dword [ebp - 0xb8]
mov dword [ebp - 0xb4], 6
mov byte [eax + 0x38], 2
jmp case.0x48f070.10
mov eax, dword [esi + 0xc]
mov dword [ebp - 0xa4], eax
mov ecx, dword [ecx + 8]
lea edx, [ebp - 0xb0]
push edx
push dword [esi + 4]
shl eax, 4
mov eax, dword [eax + ecx + 4]
call fcn.004853fc
mov dword [ebp - 0xb4], eax
pop ecx
pop ecx
mov ecx, dword [ebp - 0xc4]
mov ax, word [ecx + 0x1c]
and ax, 0xbf04
or ax, 4
cmp dword [ebp - 0xb4], edi
mov word [ecx + 0x1c], ax
mov eax, dword [ebp - 0xb0]
cdq
mov dword [ecx], eax
mov dword [ecx + 4], edx
jne case.0x48f070.10
cmp dword [ebp - 0xb0], edi
je case.0x48f070.10
mov edx, dword [ebp - 0xa4]
mov eax, dword [ebp - 0xbc]
mov edi, dword [esi + 4]
mov esi, dword [ebp - 0xb0]
shl edx, 4
add edx, dword [eax + 8]
call fcn.00467c47
jmp case.0x48f070.10
and dword [ebp - 0xb0], 0
mov eax, dword [esi + 0xc]
neg eax
sbb eax, eax
lea ecx, [ebp - 0xb0]
and eax, ecx
mov ecx, dword [ebp - 0xbc]
mov ecx, dword [ecx + 8]
push eax
mov eax, dword [esi + 8]
push dword [esi + 4]
shl eax, 4
mov ebx, dword [eax + ecx + 4]
call fcn.00483937
cmp dword [esi + 0xc], 0
pop ecx
pop ecx
mov dword [ebp - 0xb4], eax
je case.0x48f070.10
mov eax, dword [ebp - 0xb0]
mov ecx, dword [ebp - 0xb8]
add dword [ecx + 0x74], eax
mov esi, dword [esi + 0xc]
test esi, esi
jle case.0x48f070.10
mov ecx, dword [ecx + 0x58]
imul esi, esi, 0x28
add ecx, esi
cdq
add dword [ecx], eax
adc dword [ecx + 4], edx
jmp case.0x48f070.10
and dword [ebp - 0xb0], 0
mov eax, dword [esi + 4]
mov ecx, dword [ebp - 0xbc]
shl eax, 4
add eax, dword [ecx + 8]
xor ecx, ecx
mov dword [ebp - 0xa8], eax
cmp byte [esi], 0x61
setne cl
dec ecx
and ecx, 3
add ecx, ebx
mov dword [ebp - 0xac], ecx
mov eax, dword [eax + 4]
push ecx
lea ecx, [ebp - 0xb0]
push ecx
call fcn.00483988
mov dword [ebp - 0xb4], eax
jmp 0x490f7c
mov eax, dword [esi + 4]
mov edi, dword [ebp - 0xbc]
push edi
mov dword [ebp - 0xb0], eax
call fcn.0046e414
mov eax, dword [ebp - 0xb0]
xor ebx, ebx
cmp dword [esi + 8], ebx
pop ecx
jne 0x4928fd
mov edx, dword [edi + 8]
mov ecx, eax
shl ecx, 4
mov ecx, dword [ecx + edx + 0xc]
test byte [ecx + 0x4a], 1
je 0x4929bf
cmp eax, 1
mov dword [ebp - 0xac], str.sqlite_temp_master
je 0x492916
mov dword [ebp - 0xac], str.sqlite_master
mov dword [ebp - 0xa4], edi
mov ecx, dword [esi + 4]
mov dword [ebp - 0xa0], ecx
mov ecx, dword [ebp - 0xb8]
add ecx, 0x68
mov dword [ebp - 0x9c], ecx
push dword [esi + 0x10]
mov ecx, dword [edi + 8]
push dword [ebp - 0xac]
shl eax, 4
push dword [eax + ecx]
mov esi, edi
push str.SELECT_name__rootpage__sql_FROM__q._s_WHERE__s
call fcn.00476625
add esp, 0x10
cmp eax, ebx
mov dword [ebp - 0xa8], eax
jne 0x49296b
mov dword [ebp - 0xb4], 7
jmp 0x4929bf
mov esi, dword [ebp - 0xbc]
push ebx
lea eax, [ebp - 0xa4]
push eax
mov byte [esi + 0x7c], 1
push fcn.004799ca
push dword [ebp - 0xa8]
mov dword [ebp - 0x98], ebx
push esi
call fcn.0049514a
add esp, 0x14
cmp eax, ebx
mov dword [ebp - 0xb4], eax
jne 0x4929ad
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0xb4], eax
push dword [ebp - 0xa8]
push esi
call fcn.0046eba8
pop ecx
pop ecx
mov byte [esi + 0x7c], 0
mov edi, dword [ebp - 0xbc]
call fcn.0046e3e0
cmp dword [ebp - 0xb4], 7
je 0x48f424
jmp case.0x48f070.10
mov ecx, dword [esi + 4]
mov eax, dword [ebp - 0xbc]
call fcn.00477f62
mov dword [ebp - 0xb4], eax
jmp case.0x48f070.10
mov ecx, dword [esi + 0x10]
mov eax, dword [esi + 4]
mov esi, dword [ebp - 0xbc]
call fcn.0047a417
jmp case.0x48f070.10
mov ecx, dword [esi + 0x10]
mov eax, dword [esi + 4]
mov ebx, dword [ebp - 0xbc]
call fcn.00472895
jmp case.0x48f070.10
mov ecx, dword [esi + 0x10]
mov eax, dword [esi + 4]
mov edx, dword [ebp - 0xbc]
call fcn.00479671
jmp case.0x48f070.10
mov esi, dword [esi + 8]
lea eax, [esi*4 + 4]
mov dword [ebp - 0xb0], esi
mov esi, dword [ebp - 0xbc]
push eax
call fcn.00470df9
test eax, eax
pop ecx
mov dword [ebp - 0xac], eax
je 0x48f424
mov ebx, dword [ebp - 0xcc]
mov ecx, dword [ebx + 0xc]
mov eax, dword [ebp - 0xb8]
imul ecx, ecx, 0x28
add ecx, dword [eax + 0x58]
xor esi, esi
mov dword [ebp - 0x9c], ecx
mov edi, dword [ebx + 4]
imul edi, edi, 0x28
add edi, dword [eax + 0x58]
cmp dword [ebp - 0xb0], esi
mov dword [ebp - 0xc8], edi
mov dword [ebp - 0xa8], esi
jle 0x492aca
imul esi, esi, 0x28
add esi, edi
call fcn.0047c7d6
mov ecx, dword [ebp - 0xa8]
mov edx, dword [ebp - 0xac]
mov dword [edx + ecx*4], eax
mov esi, dword [ebp - 0xa8]
inc esi
cmp esi, dword [ebp - 0xb0]
mov dword [ebp - 0xa8], esi
jl 0x492a9c
mov eax, dword [ebp - 0xac]
and dword [eax + esi*4], 0
mov eax, dword [ebp - 0x9c]
push dword [eax]
movzx eax, byte [ebx + 3]
push dword [ebp - 0xb0]
mov esi, dword [ebp - 0xbc]
mov ecx, dword [esi + 8]
push dword [ebp - 0xac]
shl eax, 4
mov ecx, dword [eax + ecx + 4]
lea edx, [ebp - 0xa4]
call fcn.00482895
add esp, 0xc
push dword [ebp - 0xac]
mov dword [ebp - 0xa0], eax
push esi
call fcn.0046eba8
mov eax, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0x9c]
cdq
sub dword [ecx], eax
mov eax, dword [ebp - 0x9c]
push edi
sbb dword [eax + 4], edx
call fcn.004842b2
add esp, 0xc
cmp dword [ebp - 0xa4], 0
je 0x492b6c
cmp dword [ebp - 0xa0], 0
je 0x48f424
push 1
push dword [ebp - 0xa0]
mov eax, fcn.0046d1d7
or ecx, 0xffffffff
mov edx, edi
call fcn.00484eef
pop ecx
pop ecx
movzx eax, byte [ebp - 0xd0]
push eax
mov eax, edi
call fcn.0047aaa7
jmp 0x493996
mov edi, dword [esi + 4]
mov eax, dword [ebp - 0xb8]
imul edi, edi, 0x28
mov eax, dword [eax + 0x58]
add edi, eax
mov dword [ebp - 0xb0], edi
mov esi, dword [esi + 8]
imul esi, esi, 0x28
add esi, eax
mov dword [ebp - 0xac], esi
test byte [edi + 0x1c], 0x20
jne 0x492bc6
call fcn.00472e13
mov edi, dword [ebp - 0xb0]
test byte [edi + 0x1c], 0x20
je 0x48f424
mov esi, dword [ebp - 0xac]
push dword [esi + 4]
mov edi, dword [edi]
push dword [esi]
call fcn.004720d0
jmp 0x493995
mov eax, dword [ebp - 0xbc]
mov eax, dword [eax + 0xd8]
test eax, eax
jne 0x493b47
mov eax, dword [ebp - 0xb8]
mov ecx, dword [eax + 0x58]
mov eax, dword [esi + 4]
imul eax, eax, 0x28
add eax, ecx
mov dword [ebp - 0xb0], eax
mov ebx, dword [esi + 0xc]
imul ebx, ebx, 0x28
add ebx, ecx
test byte [eax + 0x1c], 0x20
mov dword [ebp - 0xc4], ebx
je 0x492c40
mov eax, dword [eax]
lea edi, [ebp - 0xa8]
call fcn.004709aa
test eax, eax
je 0x492c3a
push dword [ebp - 0xa4]
mov esi, ebx
push dword [ebp - 0xa8]
jmp 0x490160
mov eax, dword [ebp - 0xb0]
push eax
call fcn.004842b2
mov esi, dword [esi + 8]
dec esi
mov dword [ebp - 0xc0], esi
jmp 0x493996
mov eax, dword [esi + 0x10]
mov ecx, dword [ebp - 0xc8]
mov dword [ebp - 0xb0], eax
test byte [ecx + 0x1c], 0x20
jne 0x492c81
mov edi, ecx
call fcn.00472e13
test byte [edi + 0x1c], 0x20
je 0x48f424
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x492cc9
jl 0x492c8c
and eax, 0xf
jmp 0x492c91
mov eax, 0xff
mov ecx, dword [ebp - 0xd8]
push dword [ecx + 4]
mov bl, al
mov eax, dword [ebp - 0xc8]
push dword [ecx]
mov eax, dword [eax]
call fcn.0046fc3d
test eax, eax
pop ecx
pop ecx
mov dword [ebp - 0xac], eax
jne 0x48f08b
mov eax, dword [ebp - 0xb0]
test eax, eax
jl case.0x48f070.10
mov eax, dword [ebp - 0xd8]
push dword [eax + 4]
push dword [eax]
mov eax, dword [ebp - 0xc8]
mov edi, dword [eax]
jmp 0x492bcd
mov edx, dword [esi + 0x10]
mov ecx, dword [ebp - 0xb8]
mov dword [ebp - 0x98], edx
mov edi, dword [esi + 0xc]
imul edi, edi, 0x28
add edi, dword [ecx + 0x58]
mov dword [ebp - 0xa8], edi
cmp byte [esi + 3], 0
je 0x492d38
mov eax, dword [ecx + 0xdc]
test eax, eax
mov esi, dword [edx + 0x14]
mov dword [ebp - 0x94], esi
mov dword [ebp - 0x9c], eax
je 0x492d38
cmp dword [eax + 0x20], esi
je 0x492d30
mov eax, dword [eax + 0x3c]
test eax, eax
mov dword [ebp - 0x9c], eax
jne 0x492d1e
test eax, eax
jne case.0x48f070.10
mov esi, dword [ecx + 0xe0]
mov eax, dword [ebp - 0xbc]
cmp esi, dword [eax + 0x70]
jl 0x492d6c
mov edi, dword [ebp - 0xb8]
push str.too_many_levels_of_trigger_recursion
push eax
add edi, 0x68
mov dword [ebp - 0xb4], 1
call fcn.00474f32
jmp 0x493995
test byte [edi + 0x1c], 0x40
jne 0x492ec1
mov ecx, dword [edx + 8]
add ecx, dword [edx + 0xc]
mov dword [ebp - 0xb0], ecx
imul ecx, ecx, 0xa
add ecx, dword [edx + 0xc]
lea ecx, [ecx*4 + 0x40]
push ecx
mov dword [ebp - 0xac], ecx
call fcn.00470e5a
test eax, eax
pop ecx
mov dword [ebp - 0x9c], eax
je 0x48f424
push dword [ebp - 0xa8]
call fcn.00471d51
mov eax, dword [ebp - 0xa8]
mov word [eax + 0x1c], 0x40
mov eax, dword [ebp - 0x9c]
pop ecx
mov ecx, dword [ebp - 0xa8]
mov dword [ecx], eax
mov eax, dword [ebp - 0x9c]
mov ecx, dword [ebp - 0xb8]
mov dword [eax], ecx
mov eax, dword [ebp - 0x9c]
mov edx, dword [ebp - 0xb0]
mov dword [eax + 0x24], edx
mov eax, dword [ebp - 0x98]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 0x9c]
mov dword [edx + 0x28], eax
mov eax, dword [ebp - 0x9c]
mov edx, dword [ebp - 0xc0]
mov dword [eax + 4], edx
mov eax, dword [ecx + 0x58]
mov edx, dword [ebp - 0x9c]
mov dword [edx + 0x10], eax
mov eax, dword [ecx + 0x54]
mov edx, dword [ebp - 0x9c]
mov dword [edx + 0x14], eax
mov eax, dword [ecx + 0x34]
mov edx, dword [ebp - 0x9c]
mov dword [edx + 0x18], eax
mov ax, word [ecx + 0x32]
mov edx, dword [ebp - 0x9c]
mov word [edx + 0x1c], ax
mov eax, dword [ecx + 0x14]
mov edx, dword [ebp - 0x9c]
mov dword [edx + 8], eax
mov eax, dword [ecx + 0xc]
mov edx, dword [ebp - 0x9c]
mov dword [edx + 0xc], eax
mov eax, dword [ebp - 0x98]
mov eax, dword [eax + 0x14]
mov edx, dword [ebp - 0x9c]
mov dword [edx + 0x20], eax
mov edx, dword [ebp - 0x9c]
mov eax, dword [edx + 0x24]
imul eax, eax, 0x28
lea eax, [eax + edx + 0x40]
lea esi, [edx + 0x40]
mov dword [ebp - 0xa0], eax
cmp esi, eax
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0xa4], esi
je 0x492ec9
mov word [esi + 0x1c], 1
mov edx, dword [ebp - 0xa4]
mov dword [edx + 0x10], eax
mov esi, dword [ebp - 0xa4]
add esi, 0x28
cmp esi, dword [ebp - 0xa0]
mov dword [ebp - 0xa4], esi
jne 0x492e93
mov edx, dword [ebp - 0x9c]
jmp 0x492ec9
mov edx, dword [edi]
mov dword [ebp - 0x9c], edx
inc dword [ecx + 0xe0]
mov esi, dword [ecx + 0xdc]
mov dword [edx + 0x3c], esi
mov edx, dword [eax + 0x30]
mov esi, dword [ebp - 0x9c]
mov dword [esi + 0x30], edx
mov eax, dword [eax + 0x34]
mov edx, dword [ebp - 0x9c]
mov dword [edx + 0x34], eax
mov eax, dword [ecx + 0x74]
mov edx, dword [ebp - 0x9c]
mov dword [edx + 0x38], eax
mov eax, dword [ebp - 0x9c]
and dword [ecx + 0x74], 0
lea edx, [eax + 0x18]
mov dword [ecx + 0xdc], eax
mov dword [ecx + 0x58], edx
mov esi, dword [eax + 0x24]
mov dword [ecx + 0x54], esi
mov ax, word [eax + 0x28]
mov word [ecx + 0x32], ax
mov eax, esi
inc eax
imul eax, eax, 0x28
add eax, edx
or dword [ebp - 0xc0], 0xffffffff
mov dword [ecx + 0x34], eax
mov eax, dword [ebp - 0x98]
mov edx, dword [eax]
mov dword [ecx + 0x14], edx
mov eax, dword [eax + 4]
mov dword [ecx + 0xc], eax
jmp case.0x48f070.10
mov eax, dword [ebp - 0xb8]
mov ecx, dword [eax + 0xdc]
mov dword [ebp - 0xb0], ecx
mov eax, dword [ecx + 4]
mov edx, dword [ecx + 8]
imul eax, eax, 0x14
mov eax, dword [eax + edx + 4]
add eax, dword [esi + 4]
mov ebx, dword [ebp - 0xc4]
imul eax, eax, 0x28
add eax, dword [ecx + 0x10]
push 0x1000
mov dword [ebp - 0xac], eax
push eax
jmp 0x48f473
cmp dword [esi + 4], 0
mov eax, dword [esi + 8]
cdq
je 0x492fa2
mov ecx, dword [ebp - 0xbc]
add ecx, 0x1d8
jmp 0x49286f
mov ecx, dword [ebp - 0xb8]
add ecx, 0xc8
jmp 0x49286f
cmp dword [esi + 4], 0
je 0x492fd0
mov eax, dword [ebp - 0xbc]
mov ecx, dword [eax + 0x1d8]
or ecx, dword [eax + 0x1dc]
jmp 0x490211
mov eax, dword [ebp - 0xb8]
mov ecx, dword [eax + 0xc8]
or ecx, dword [eax + 0xcc]
jmp 0x490211
mov ecx, dword [ebp - 0xb8]
mov eax, dword [ecx + 0xdc]
test eax, eax
jne 0x49304e
mov esi, dword [esi + 4]
imul esi, esi, 0x28
add esi, dword [ecx + 0x58]
mov eax, esi
mov dword [ebp - 0xb0], esi
call fcn.0047d222
mov esi, dword [ebp - 0xd4]
mov eax, esi
call fcn.0047d222
mov eax, dword [ebp - 0xb0]
mov ecx, dword [esi]
mov esi, dword [esi + 4]
mov edx, dword [eax + 4]
cmp edx, esi
jg case.0x48f070.10
jl 0x49303c
mov edx, dword [eax]
cmp edx, ecx
jae case.0x48f070.10
mov dword [eax], ecx
mov eax, dword [ebp - 0xb0]
mov dword [eax + 4], esi
jmp case.0x48f070.10
mov eax, ecx
mov dword [ebp - 0xac], eax
mov ecx, dword [eax + 0x3c]
test ecx, ecx
jne 0x49304c
mov esi, dword [esi + 4]
imul esi, esi, 0x28
add esi, dword [eax + 0x10]
jmp 0x493000
mov eax, dword [ebp - 0xc8]
cmp dword [eax + 4], 0
jl case.0x48f070.10
jg 0x48f08b
cmp dword [eax], 0
jbe case.0x48f070.10
jmp 0x48f08b
mov eax, dword [ebp - 0xc8]
cmp dword [eax + 4], 0
jg case.0x48f070.10
jl 0x48f08b
cmp dword [eax], 0
jae case.0x48f070.10
jmp 0x48f08b
mov eax, dword [ebp - 0xc8]
mov ecx, dword [eax]
or ecx, dword [eax + 4]
jmp 0x490211
movzx edx, byte [esi + 3]
mov ecx, dword [ebp - 0xb8]
mov dword [ebp - 0xb0], edx
mov eax, dword [esi + 8]
and dword [ebp - 0xac], 0
imul eax, eax, 0x28
add eax, dword [ecx + 0x58]
test edx, edx
mov ecx, dword [ecx + 0x24]
mov dword [ebp - 0xa4], eax
mov dword [ebp - 0x60], ecx
jle 0x493128
mov ecx, dword [ebp - 0x60]
mov edx, dword [ebp - 0xac]
mov dword [ecx + edx*4], eax
mov ecx, dword [ebp - 0xa4]
call fcn.0046834e
inc dword [ebp - 0xac]
mov eax, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0xac]
add eax, 0x28
cmp ecx, dword [ebp - 0xb0]
mov dword [ebp - 0xa4], eax
jl 0x4930ee
mov eax, dword [esi + 0x10]
mov ebx, dword [ebp - 0xb8]
mov dword [ebp - 0xa0], eax
mov eax, dword [esi + 0xc]
imul eax, eax, 0x28
add eax, dword [ebx + 0x58]
xor edi, edi
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0x70], eax
inc dword [eax + 0x18]
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0x88], eax
mov eax, dword [ebp - 0xa0]
mov word [ebp - 0x7c], 1
mov dword [ebp - 0x84], edi
mov dword [ebp - 0x74], edi
mov dword [ebp - 0x78], edi
mov dword [ebp - 0x6c], edi
mov dword [ebp - 0x68], edi
test byte [eax + 3], 8
je 0x493184
mov ecx, dword [esi - 4]
mov dword [ebp - 0x68], ecx
push dword [ebp - 0x60]
lea ecx, [ebp - 0xa0]
push dword [ebp - 0xb0]
push ecx
call dword [eax + 0x10]
add esp, 0xc
cmp dword [ebp - 0x6c], edi
je 0x4931cc
lea eax, [ebp - 0x98]
push eax
call fcn.0047dc89
pop ecx
push eax
push 0x5469e0
push dword [ebp - 0xbc]
lea edi, [ebx + 0x68]
call fcn.00474f32
mov eax, dword [ebp - 0x6c]
add esp, 0xc
mov dword [ebp - 0xb4], eax
lea eax, [ebp - 0x98]
push eax
call fcn.00471d51
jmp 0x493996
mov ecx, dword [esi + 4]
mov eax, dword [ebp - 0xb8]
imul ecx, ecx, 0x28
add ecx, dword [eax + 0x58]
mov dword [ebp - 0xb0], ecx
mov eax, dword [esi + 0x10]
call fcn.0046f5da
test eax, eax
mov dword [ebp - 0xb4], eax
je 0x49322d
push dword [ebp - 0xb0]
call fcn.0047dc89
mov edi, dword [ebp - 0xb8]
pop ecx
push eax
push 0x5469e0
push dword [ebp - 0xbc]
add edi, 0x68
call fcn.00474f32
add esp, 0xc
movzx eax, byte [ebp - 0xd0]
push eax
mov eax, dword [ebp - 0xb0]
call fcn.0047aaa7
pop ecx
mov ecx, dword [ebp - 0xb0]
jmp 0x48fb1a
mov esi, dword [ebp - 0xbc]
cmp byte [esi + 0x1c], 0
jne 0x49327b
mov edi, dword [ebp - 0xb8]
push str.cannot_VACUUM_from_within_a_transaction
push esi
add edi, 0x68
call fcn.00474f32
mov dword [ebp - 0xb4], 1
jmp 0x493995
call fcn.0048ebac
jmp 0x4929ea
mov eax, dword [esi + 4]
mov ecx, dword [ebp - 0xbc]
mov ecx, dword [ecx + 8]
shl eax, 4
mov eax, dword [eax + ecx + 4]
mov dword [ebp - 0xb0], eax
call fcn.00483ef8
cmp eax, 0x65
mov dword [ebp - 0xb4], eax
jne case.0x48f070.10
mov esi, dword [esi + 8]
dec esi
and dword [ebp - 0xb4], 0
mov dword [ebp - 0xc0], esi
jmp case.0x48f070.10
cmp dword [esi + 4], 0
jne 0x4932de
mov eax, dword [ebp - 0xbc]
call fcn.00468444
jmp case.0x48f070.10
mov eax, dword [ebp - 0xb8]
mov byte [eax + 0x6e], 1
jmp case.0x48f070.10
mov al, byte [esi + 0xc]
test al, al
jne 0x493306
mov ecx, dword [ebp - 0xbc]
test word [ecx + 0xc], 0x4000
jne case.0x48f070.10
mov edx, dword [esi + 4]
mov ecx, dword [ebp - 0xbc]
mov edi, dword [ecx + 8]
mov ecx, dword [esi + 8]
shl edx, 4
mov edx, dword [edx + edi + 4]
call fcn.00472e9b
cmp al, 6
mov dword [ebp - 0xb4], eax
jne case.0x48f070.10
push dword [esi + 0x10]
mov edi, dword [ebp - 0xb8]
push str.database_table_is_locked:__s
push dword [ebp - 0xbc]
add edi, 0x68
call fcn.00474f32
add esp, 0xc
jmp case.0x48f070.10
mov esi, dword [esi + 0x10]
push dword [ebp - 0xbc]
mov ebx, esi
mov dword [ebp - 0xb0], esi
call fcn.0047507d
cmp dword [ebp - 0xb0], 0
pop ecx
mov dword [ebp - 0xb4], eax
je case.0x48f070.10
mov esi, dword [ebp - 0xb8]
push dword [esi + 0x68]
push dword [ebp - 0xbc]
call fcn.0046eba8
mov eax, dword [ebp - 0xb0]
pop ecx
pop ecx
mov ecx, dword [eax + 8]
mov ecx, dword [ecx + 8]
mov dword [esi + 0x68], ecx
mov eax, dword [eax + 8]
and dword [eax + 8], 0
jmp case.0x48f070.10
mov eax, dword [ebp - 0xb8]
mov ebx, dword [ebp - 0xbc]
add eax, 0x68
push eax
push dword [esi + 0x10]
mov eax, dword [esi + 4]
call fcn.00479540
mov dword [ebp - 0xb4], eax
jmp 0x493995
mov edi, dword [ebp - 0xb8]
mov ecx, dword [ebp - 0xbc]
mov byte [edi + 0x70], 2
push dword [esi + 0x10]
mov eax, dword [esi + 4]
call fcn.004703b0
mov dword [ebp - 0xb4], eax
mov byte [edi + 0x70], 0
jmp 0x493996
xor ebx, ebx
mov dword [ebp - 0xb0], ebx
mov dword [ebp - 0xac], ebx
mov eax, dword [esi + 0x10]
mov eax, dword [eax + 8]
lea edx, [ebp - 0xac]
mov dword [ebp - 0xa8], eax
mov ecx, dword [eax]
push edx
push eax
mov dword [ebp - 0xa4], ecx
call dword [ecx + 0x18]
mov edi, dword [ebp - 0xb8]
push dword [edi + 0x68]
mov dword [ebp - 0xb4], eax
push dword [ebp - 0xbc]
call fcn.0046eba8
mov eax, dword [ebp - 0xa8]
mov ecx, dword [eax + 8]
add esp, 0x10
cmp dword [ebp - 0xb4], ebx
mov dword [edi + 0x68], ecx
mov dword [eax + 8], ebx
jne case.0x48f070.10
mov eax, dword [ebp - 0xa8]
mov ecx, dword [ebp - 0xac]
push ebx
push 0xffffffffffffffff
mov dword [ecx], eax
mov edx, dword [esi + 4]
push ebx
mov ebx, edi
call fcn.004848bb
add esp, 0xc
test eax, eax
mov dword [ebp - 0xb0], eax
je 0x4934ad
mov ecx, dword [ebp - 0xac]
mov dword [eax + 0x38], ecx
mov eax, dword [ebp - 0xac]
mov eax, dword [eax]
mov eax, dword [eax]
mov ecx, dword [ebp - 0xb0]
mov dword [ecx + 0x3c], eax
jmp case.0x48f070.10
mov eax, dword [ebp - 0xbc]
mov byte [eax + 0x1e], 1
push dword [ebp - 0xac]
mov eax, dword [ebp - 0xa4]
call dword [eax + 0x1c]
jmp 0x493996
mov eax, dword [esi + 0xc]
mov ecx, dword [ebp - 0xb8]
imul eax, eax, 0x28
add eax, dword [ecx + 0x58]
mov ebx, dword [ecx + 0x34]
mov dword [ebp - 0xa4], eax
lea edi, [eax + 0x28]
mov dword [ebp - 0xa0], edi
mov edx, dword [esi + 4]
mov edx, dword [ebx + edx*4]
mov dword [ebp - 0x94], edx
mov edx, dword [edx + 0x38]
mov dword [ebp - 0x9c], edx
mov ebx, dword [edx]
mov dword [ebp - 0x98], ebx
mov ebx, dword [ebx]
mov dword [ebp - 0xa8], ebx
mov ebx, dword [edi]
mov dword [ebp - 0xb0], ebx
mov eax, dword [eax]
and dword [ebp - 0x90], 0
and dword [ebp - 0x8c], 0
test ebx, ebx
mov dword [ebp - 0xac], eax
mov eax, dword [ecx + 0x24]
mov dword [ebp - 0x88], eax
jle 0x493589
jmp 0x493544
mov edi, dword [ebp - 0xa0]
mov eax, dword [ebp - 0x8c]
mov edx, dword [ebp - 0x88]
lea ecx, [eax + 1]
imul ecx, ecx, 0x28
add ecx, edi
mov dword [edx + eax*4], ecx
mov eax, dword [ebp - 0x8c]
mov ecx, dword [ebp - 0x88]
mov ecx, dword [ecx + eax*4]
call fcn.0046834e
inc dword [ebp - 0x8c]
mov eax, dword [ebp - 0x8c]
cmp eax, dword [ebp - 0xb0]
jl 0x49353e
mov edx, dword [ebp - 0x9c]
push dword [ebp - 0x88]
mov edi, dword [ebp - 0xb8]
push dword [ebp - 0xb0]
mov eax, dword [ebp - 0xa8]
mov byte [edi + 0x70], 1
push dword [esi + 0x10]
push dword [ebp - 0xac]
push edx
call dword [eax + 0x20]
add esp, 0x14
push dword [edi + 0x68]
mov dword [ebp - 0xb4], eax
push dword [ebp - 0xbc]
mov byte [edi + 0x70], 0
call fcn.0046eba8
mov eax, dword [ebp - 0x98]
pop ecx
pop ecx
mov ecx, dword [eax + 8]
mov dword [edi + 0x68], ecx
xor edi, edi
cmp dword [ebp - 0xb4], edi
mov dword [eax + 8], edi
jne 0x4935fe
push dword [ebp - 0x9c]
mov eax, dword [ebp - 0xa8]
call dword [eax + 0x28]
pop ecx
mov dword [ebp - 0x90], eax
cmp dword [ebp - 0x90], edi
je 0x493610
mov esi, dword [esi + 8]
dec esi
mov dword [ebp - 0xc0], esi
mov eax, dword [ebp - 0x94]
mov byte [eax + 0x14], 0
jmp case.0x48f070.10
mov ecx, dword [ebp - 0xb8]
mov eax, dword [esi + 4]
mov edx, dword [ecx + 0x34]
mov edi, dword [edx + eax*4]
mov eax, dword [esi + 0xc]
imul eax, eax, 0x28
add eax, dword [ecx + 0x58]
mov dword [ebp - 0xa8], eax
cmp byte [edi + 0x14], 0
je 0x493649
push eax
jmp 0x48f55b
mov eax, dword [edi + 0x38]
mov eax, dword [eax]
mov dword [ebp - 0xb0], eax
mov eax, dword [eax]
push 0x40
mov dword [ebp - 0xac], eax
lea eax, [ebp - 0xa0]
push 0
push eax
call fcn.00449940
mov ebx, dword [ebp - 0xa8]
add esp, 0xc
lea eax, [ebp - 0x98]
call fcn.00472df0
mov eax, dword [ebp - 0x7c]
and ax, 0xbf01
or ax, 1
mov word [ebp - 0x7c], ax
push dword [esi + 8]
lea eax, [ebp - 0xa0]
push eax
push dword [edi + 0x38]
mov eax, dword [ebp - 0xac]
call dword [eax + 0x2c]
mov esi, dword [ebp - 0xb8]
add esp, 0xc
push dword [esi + 0x68]
mov dword [ebp - 0xb4], eax
push dword [ebp - 0xbc]
call fcn.0046eba8
mov eax, dword [ebp - 0xb0]
pop ecx
pop ecx
mov ecx, dword [eax + 8]
mov dword [esi + 0x68], ecx
and dword [eax + 8], 0
mov eax, dword [ebp - 0x6c]
test eax, eax
je 0x4936e1
mov dword [ebp - 0xb4], eax
movzx eax, byte [ebp - 0xd0]
push eax
lea eax, [ebp - 0x98]
call fcn.0047aaa7
mov eax, dword [ebp - 0xa8]
pop ecx
lea ebx, [ebp - 0x98]
call fcn.00472df0
mov ecx, dword [ebp - 0xa8]
jmp 0x48fb1a
and dword [ebp - 0xa8], 0
mov ecx, dword [ebp - 0xb8]
mov eax, dword [esi + 4]
mov ecx, dword [ecx + 0x34]
mov eax, dword [ecx + eax*4]
mov dword [ebp - 0xa4], eax
cmp byte [eax + 0x14], 0
jne case.0x48f070.10
mov ecx, dword [eax + 0x38]
mov ecx, dword [ecx]
mov edi, dword [ebp - 0xb8]
mov dword [ebp - 0xb0], ecx
mov ecx, dword [ecx]
mov dword [ebp - 0xac], ecx
mov byte [edi + 0x70], 1
push dword [eax + 0x38]
call dword [ecx + 0x24]
pop ecx
push dword [edi + 0x68]
mov dword [ebp - 0xb4], eax
push dword [ebp - 0xbc]
mov byte [edi + 0x70], 0
call fcn.0046eba8
mov eax, dword [ebp - 0xb0]
pop ecx
pop ecx
mov ecx, dword [eax + 8]
mov dword [edi + 0x68], ecx
xor edi, edi
cmp dword [ebp - 0xb4], edi
mov dword [eax + 8], edi
jne 0x4937a7
mov eax, dword [ebp - 0xa4]
push dword [eax + 0x38]
mov eax, dword [ebp - 0xac]
call dword [eax + 0x28]
pop ecx
mov dword [ebp - 0xa8], eax
cmp dword [ebp - 0xa8], edi
jmp 0x490211
mov eax, dword [esi + 0x10]
mov eax, dword [eax + 8]
mov edi, dword [ebp - 0xb8]
mov dword [ebp - 0xb0], eax
mov esi, dword [esi + 4]
imul esi, esi, 0x28
add esi, dword [edi + 0x58]
mov dword [ebp - 0xac], esi
push dword [esi + 0x14]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x4c]
push dword [edi + 0x68]
mov dword [ebp - 0xb4], eax
push dword [ebp - 0xbc]
call fcn.0046eba8
mov eax, dword [ebp - 0xb0]
mov ecx, dword [eax + 8]
add esp, 0x10
mov dword [edi + 0x68], ecx
jmp 0x4933a5
mov eax, dword [esi + 0x10]
mov edx, dword [eax + 8]
mov dword [ebp - 0xb0], edx
mov eax, dword [edx]
mov dword [ebp - 0xac], eax
mov ecx, dword [esi + 8]
mov dword [ebp - 0xa8], ecx
cmp dword [eax + 0x34], 0
je case.0x48f070.10
mov edi, dword [ebp - 0xb8]
mov ecx, dword [edi + 0x24]
mov dword [ebp - 0x98], ecx
mov ecx, dword [esi + 0xc]
and dword [ebp - 0xa4], 0
imul ecx, ecx, 0x28
add ecx, dword [edi + 0x58]
cmp dword [ebp - 0xa8], 0
mov dword [ebp - 0x94], ecx
jle 0x4938a2
call fcn.0046834e
mov eax, dword [ebp - 0x94]
mov ecx, dword [ebp - 0xa4]
mov edx, dword [ebp - 0x98]
mov dword [edx + ecx*4], eax
mov ecx, dword [ebp - 0x94]
add ecx, 0x28
inc dword [ebp - 0xa4]
mov eax, dword [ebp - 0xa4]
cmp eax, dword [ebp - 0xa8]
mov dword [ebp - 0x94], ecx
jl 0x493859
mov eax, dword [ebp - 0xac]
mov edx, dword [ebp - 0xb0]
lea ecx, [ebp - 0xa0]
push ecx
push dword [ebp - 0x98]
push dword [ebp - 0xa8]
push edx
call dword [eax + 0x34]
push dword [edi + 0x68]
mov ebx, dword [ebp - 0xbc]
push ebx
mov dword [ebp - 0xb4], eax
call fcn.0046eba8
mov eax, dword [ebp - 0xb0]
mov ecx, dword [eax + 8]
mov dword [edi + 0x68], ecx
xor ecx, ecx
add esp, 0x18
cmp dword [ebp - 0xb4], ecx
mov dword [eax + 8], ecx
jne 0x493901
cmp dword [esi + 4], ecx
je 0x493901
mov eax, dword [ebp - 0xa0]
mov dword [ebx + 0x30], eax
mov eax, dword [ebp - 0x9c]
mov dword [ebx + 0x34], eax
inc dword [edi + 0x74]
jmp case.0x48f070.10
mov esi, dword [esi + 4]
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0xb0], esi
mov eax, dword [eax + 8]
shl esi, 4
mov eax, dword [esi + eax + 4]
mov eax, dword [eax + 4]
mov esi, dword [eax]
lea edi, [ebp - 0xac]
mov dword [ebp - 0xa8], esi
call fcn.0046c7ce
test eax, eax
mov dword [ebp - 0xb4], eax
jne case.0x48f070.10
mov ecx, dword [ebp - 0xc4]
mov word [ecx + 0x1c], 4
mov eax, dword [ebp - 0xac]
jmp 0x48f17f
mov esi, dword [esi + 0x10]
test esi, esi
jne 0x49396c
mov eax, dword [ebp - 0xb8]
mov esi, dword [eax + 0xc0]
test esi, esi
mov dword [ebp - 0xb0], esi
je case.0x48f070.10
mov eax, dword [ebp - 0xbc]
mov eax, dword [eax + 0x94]
test eax, eax
je case.0x48f070.10
mov ecx, dword [ebp - 0xbc]
push esi
push dword [ecx + 0x98]
call eax
pop ecx
pop ecx
inc dword [ebp - 0xc0]
cmp dword [ebp - 0xb4], 0
je 0x48ef5a
jmp 0x48fb4c
mov dword [ebp - 0xb4], 9
jmp 0x48fb4c
mov eax, dword [esi + 4]
mov dword [edi + 0x64], eax
mov al, byte [esi + 8]
mov byte [edi + 0x38], al
mov eax, dword [ebp - 0xc0]
mov dword [edi + 0x60], eax
mov esi, dword [esi + 0x10]
test esi, esi
je 0x4939fd
mov edi, dword [ebp - 0xb8]
push esi
push 0x5469e0
push dword [ebp - 0xbc]
add edi, 0x68
call fcn.00474f32
mov edi, dword [ebp - 0xb8]
add esp, 0xc
push edi
call fcn.0048569f
pop ecx
push 5
pop esi
cmp eax, esi
jne 0x493a13
mov dword [edi + 0x64], esi
jmp 0x48fb77
mov esi, dword [edi + 0x64]
neg esi
sbb esi, esi
and esi, 0xffffff9c
add esi, 0x65
jmp 0x48fb77
lea eax, [ebp - 0xa0]
push eax
call fcn.00471d51
pop ecx
jmp 0x48f424
mov eax, dword [ebp - 0xc0]
mov dword [ebx + 0x60], eax
mov byte [esi + 0x1c], 0
mov esi, ecx
mov dword [ebx + 0x64], ecx
jmp 0x48fb77
test esi, esi
je 0x493a6f
mov eax, edi
call fcn.0048400e
mov byte [edi + 0x1c], 1
mov esi, edi
call fcn.0046ef40
mov eax, dword [ebp - 0xb8]
mov esi, dword [eax + 0x64]
jmp 0x493a16
mov eax, dword [ebp - 0xb8]
push ebx
call fcn.00475b47
mov esi, eax
test esi, esi
pop ecx
jne 0x48fb77
mov al, byte [ebp - 0xb0]
mov ebx, dword [ebp - 0xb8]
mov edi, dword [ebp - 0xbc]
push ebx
mov byte [edi + 0x1c], al
call fcn.0048569f
pop ecx
push 5
pop esi
cmp eax, esi
jne 0x493a5d
mov eax, dword [ebp - 0xc0]
mov dword [ebx + 0x60], eax
mov al, 1
sub al, byte [ebp - 0xb0]
mov byte [edi + 0x1c], al
mov dword [ebx + 0x64], esi
jmp 0x48fb77
mov ecx, dword [ebp - 0xb8]
mov edx, dword [ebp - 0xc0]
mov dword [ecx + 0x60], edx
mov esi, eax
mov dword [ecx + 0x64], eax
jmp 0x48fb77
mov dword [ebp - 0xb4], 0xb
jmp 0x493af4
mov dword [ebp - 0xb4], 0xd
mov eax, dword [ebp - 0xbc]
cmp byte [eax + 0x1e], 0
je 0x493b0a
mov dword [ebp - 0xb4], 7
cmp dword [ebp - 0xb4], 0xc0a
je 0x48fb4c
mov eax, dword [ebp - 0xb4]
call fcn.00467580
mov edi, dword [ebp - 0xb8]
add edi, 0x68
push eax
push 0x5469e0
push dword [ebp - 0xbc]
call fcn.00474f32
add esp, 0xc
jmp 0x48fb4c
mov ecx, dword [ebp - 0xb8]
push 9
pop eax
mov dword [ebp - 0xb4], eax
mov dword [ecx + 0x64], eax
call fcn.00467580
lea edi, [ecx + 0x68]
jmp 0x493b2e