Function at 0x1006a590
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x88
mov eax, dword [0x101d2014]
mov ebx, edx
xor eax, ebp
mov dword [esp + 0x80], eax
mov dword [esp + 0x10], ecx
mov eax, dword [ecx + 8]
mov esi, dword [ecx]
test eax, eax
mov dword [esp + 4], eax
jne 0x1006a5ed
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x74], 0
jne 0x1006a5d8
test byte [esi + 0x4c], 8
jne 0x1006a5d8
mov eax, dword [esp + 0x10]
mov byte [eax + 0x17], 1
mov ecx, dword [esp + 0x10]
call fcn.1000f530
test eax, eax
mov dword [esp + 4], eax
je 0x1006af77
mov eax, dword [esp + 4]
mov edi, dword [ebp + 8]
or byte [eax + 0x98], 0x20
mov eax, dword [esp + 0x10]
mov dword [eax + 0x2c], 2
mov ecx, dword [eax]
cmp dword [edi + 4], 0
jne 0x1006b7ea
movzx eax, byte [ecx + 0xa4]
mov edi, ebx
mov ecx, dword [esi + 0x10]
cmp eax, 1
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], ecx
je 0x1006d3e5
test edi, edi
je 0x1006af77
mov eax, dword [edi]
test eax, eax
mov dword [esp + 0x14], eax
je 0x1006af77
mov edi, dword [edi + 4]
movzx ecx, word [esi + 0x114]
xor ebx, ebx
mov edx, edi
inc edx
sete bl
cmp edi, ecx
jae 0x1006a682
cmp edi, 0x7f
ja 0x1006aa5e
mov eax, dword [esi + 0x138]
test eax, eax
je 0x1006aa50
mov ecx, dword [eax]
mov dword [esi + 0x138], ecx
inc dword [esi + 0x120]
jmp 0x1006a6a4
cmp dword [esi + 0x110], 0
je 0x1006bab2
cmp byte [esi + 0x51], 0
jne 0x1006af77
mov ecx, esi
push ebx
call fcn.1001a100
add esp, 4
test eax, eax
je 0x1006af77
mov ebx, dword [ebp + 0x10]
mov dword [esp + 8], esi
push edi
push dword [esp + 0x18]
push eax
mov dword [esp + 0x4c], eax
call sub.VCRUNTIME140.dll_memcpy
mov ecx, dword [esp + 0x4c]
add esp, 0xc
mov byte [ecx + edi], 0
movzx eax, byte [ecx]
cmp byte [eax + 0x101944e0], 0
js 0x1006d403
mov eax, dword [ebp + 0xc]
test ebx, ebx
jne 0x1006acc7
test eax, eax
je 0x1006ad8d
mov ebx, dword [eax]
mov dword [esp + 0xc], 0
test ebx, ebx
je 0x1006a790
mov ecx, dword [esp + 8]
mov edi, dword [eax + 4]
xor eax, eax
movzx ecx, word [ecx + 0x114]
mov edx, edi
inc edx
sete al
cmp edi, ecx
jae 0x1006a747
cmp edi, 0x7f
ja 0x1006aa93
mov ecx, dword [esp + 8]
mov esi, dword [ecx + 0x138]
test esi, esi
je 0x1006aa85
mov eax, dword [esi]
mov dword [ecx + 0x138], eax
inc dword [ecx + 0x120]
jmp 0x1006a769
mov ecx, dword [esp + 8]
cmp dword [ecx + 0x110], 0
je 0x1006bb20
cmp byte [ecx + 0x51], 0
jne 0x1006a790
push eax
call fcn.1001a100
add esp, 4
mov esi, eax
test esi, esi
je 0x1006a790
push edi
push ebx
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [esi + edi], 0
movzx eax, byte [esi]
cmp byte [eax + 0x101944e0], 0
js 0x1006d792
mov dword [esp + 0xc], esi
mov eax, dword [ebp + 8]
mov dword [esp + 0x28], 0
cmp dword [eax + 4], 0
jne 0x1006b7c6
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
cmp byte [eax + 0xa5], 0
jne 0x1006a7cf
mov ecx, dword [esp + 0x10]
cmp byte [ecx + 0xcc], 0
jne 0x1006a7cf
mov ecx, dword [eax + 0x148]
test ecx, ecx
jne 0x1006d88b
mov ecx, dword [esp + 0x40]
xor edi, edi
lea eax, [esp + 0x70]
mov dword [eax], edi
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0xc]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 8]
mov dword [eax + 0xc], edi
mov dword [ecx + 0x1a4], edi
push eax
push 0xe
push dword [esp + 0x30]
push ecx
call sym.nss3.dll_sqlite3_file_control
add esp, 0x10
cmp eax, 0xc
jne 0x1006d43f
mov esi, 0x40
lea eax, [edi + esi]
xor edx, edx
mov ecx, eax
mov dword [esp + 0x24], eax
shr ecx, 0x1f
add ecx, eax
sar ecx, 1
mov eax, ecx
shl eax, 4
mov dword [esp + 0x18], eax
mov eax, dword [eax + 0x10195538]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x40]
movzx ebx, byte [eax + edx]
mov eax, dword [esp + 0x14]
movzx eax, byte [eax + edx]
cmp bl, al
jne 0x1006a850
test bl, bl
je 0x1006a877
inc edx
jmp 0x1006a835
movzx ebx, byte [ebx + 0x10194380]
movzx eax, byte [eax + 0x10194380]
sub ebx, eax
je 0x1006a84d
lea eax, [ecx - 1]
inc ecx
test ebx, ebx
cmovns edi, ecx
cmovs esi, eax
cmp edi, esi
jle 0x1006a810
jmp 0x1006af59
mov eax, dword [esp + 0x18]
movzx edx, byte [eax + 0x1019553d]
test dl, 1
je 0x1006a89a
mov eax, dword [esp + 0x10]
mov ebx, dword [eax]
cmp byte [ebx + 0xa5], 0
je 0x1006ace2
mov ebx, dword [esp + 4]
test dl, 2
jne 0x1006a8b7
cmp dword [esp + 0xc], 0
je 0x1006aa08
and edx, 4
je 0x1006aa08
mov eax, dword [esp + 0x18]
mov al, byte [eax + 0x1019553c]
dec al
cmp al, 0x29
ja case.0x1006a8ce.5
movzx eax, al
jmp dword [eax*4 + 0x1019b5f8]
cmp dword [esp + 0xc], 0
je 0x1006dc83
mov eax, dword [esp + 8]
cmp byte [eax + 0x4f], 0
mov eax, dword [esp + 0x1c]
je 0x1006dc99
mov esi, dword [esp + 8]
cmp eax, 1
je 0x1006acb3
mov ecx, dword [esp + 0xc]
movzx eax, byte [ecx]
add eax, 0xffffffd0
cmp eax, 9
jbe 0x1006dca3
push ecx
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov edi, eax
xor ecx, ecx
and edi, 0x3fffffff
lea eax, [edi + 1]
mov dword [esp + 0x18], eax
movzx eax, byte [ecx + 0x10198f75]
cmp edi, eax
je 0x1006a942
inc ecx
cmp ecx, 8
jne 0x1006a92c
jmp 0x1006af8d
test edi, edi
je 0x1006a98e
movzx eax, byte [ecx + 0x10198f6d]
mov ebx, dword [esp + 0x18]
xor esi, esi
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x14]
movzx eax, byte [eax + esi + str.onoffalseyestruextrafull]
test eax, eax
je 0x1006daff
mov edx, dword [esp + 0xc]
mov al, byte [eax + 0x10194380]
movzx edx, byte [edx + esi]
mov dl, byte [edx + 0x10194380]
cmp al, dl
jne 0x1006db0f
dec ebx
inc esi
cmp ebx, 1
jg 0x1006a957
mov al, byte [ecx + 0x10198f7d]
inc al
mov edx, dword [esp + 0x20]
and al, 7
xor ecx, ecx
inc ecx
test al, al
movzx eax, al
cmove eax, ecx
mov ecx, dword [esp + 0x1c]
shl ecx, 4
mov byte [edx + ecx + 8], al
mov byte [edx + ecx + 9], 1
mov ecx, dword [esp + 8]
cmp byte [ecx + 0x4f], 0
je 0x1006af59
mov eax, dword [esp + 8]
mov esi, dword [eax + 0x14]
test esi, esi
jle 0x1006af59
mov eax, dword [esp + 8]
inc esi
mov edi, dword [eax + 0x10]
add edi, 8
mov ecx, dword [edi - 4]
test ecx, ecx
je 0x1006a9fa
mov edx, dword [esp + 8]
movzx eax, byte [edi]
mov edx, dword [edx + 0x20]
and edx, 0x38
or edx, eax
call fcn.1004d510
dec esi
add edi, 0x10
cmp esi, 1
jg 0x1006a9df
jmp 0x1006af59
mov eax, dword [esp + 0x18]
xor edx, edx
mov ecx, ebx
inc edx
movzx edi, byte [eax + 0x1019553f]
test edi, edi
cmovne edx, edi
call fcn.1004ea10
test edi, edi
jne 0x1006b221
mov eax, dword [ebx]
cmp byte [eax + 0x51], 0
jne 0x1006a8b7
mov ecx, dword [ebx + 0x74]
mov edx, dword [esp + 0x14]
push 0
push 1
push 0xffffffffffffffff
call fcn.1000ad80
add esp, 0xc
jmp 0x1006a8b7
mov eax, dword [esi + 0x134]
test eax, eax
jne 0x1006b214
mov eax, dword [esi + 0x130]
test eax, eax
jne 0x1006af94
mov eax, dword [esi + 0x12c]
test eax, eax
jne 0x1006b7dd
inc dword [esi + 0x128]
jmp 0x1006a699
mov esi, dword [ecx + 0x134]
test esi, esi
jne 0x1006b26d
mov ecx, dword [esp + 8]
mov esi, dword [ecx + 0x130]
test esi, esi
jne 0x1006b207
mov esi, dword [ecx + 0x12c]
test esi, esi
jne 0x1006b81d
inc dword [ecx + 0x128]
jmp 0x1006a75e
mov ecx, dword [esp + 0xc]
test ecx, ecx
je 0x1006df81
mov eax, dword [esp + 0x18]
mov edx, dword [eax + 0x10195544]
mov eax, dword [eax + 0x10195540]
mov dword [esp + 0x10], edx
mov edx, dword [esp + 8]
mov esi, eax
and esi, 0xffffbfff
cmp byte [edx + 0x4f], 0
movzx edx, byte [ecx]
cmovne esi, eax
add edx, 0xffffffd0
cmp edx, 9
mov dword [esp + 0x18], esi
jbe 0x1006dfb0
push ecx
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov edi, eax
xor ecx, ecx
and edi, 0x3fffffff
lea eax, [edi + 1]
mov dword [esp + 0x24], eax
movzx eax, byte [ecx + 0x10198f75]
cmp edi, eax
je 0x1006ab34
inc ecx
cmp ecx, 8
jne 0x1006ab1e
jmp 0x1006b15c
test edi, edi
je 0x1006ab80
movzx eax, byte [ecx + 0x10198f6d]
mov ebx, dword [esp + 0x24]
xor esi, esi
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x14]
movzx eax, byte [eax + esi + str.onoffalseyestruextrafull]
test eax, eax
je 0x1006dc02
mov edx, dword [esp + 0xc]
mov al, byte [eax + 0x10194380]
movzx edx, byte [edx + esi]
mov dl, byte [edx + 0x10194380]
cmp al, dl
jne 0x1006dc12
dec ebx
inc esi
cmp ebx, 1
jg 0x1006ab49
mov eax, ecx
and eax, 0x7ffffffe
cmp eax, 6
je 0x1006ab29
mov al, byte [ecx + 0x10198f7d]
test al, al
je 0x1006b15c
mov esi, dword [esp + 8]
mov eax, dword [esp + 0x18]
or dword [esi + 0x20], eax
mov eax, dword [esp + 0x10]
or dword [esi + 0x24], eax
jmp 0x1006b184
mov ecx, dword [esp + 0xc]
test ecx, ecx
je 0x1006b715
lea esi, [esp + 0x68]
mov edx, esi
mov dword [esi], 0
call fcn.1004b9f0
mov edx, dword [esp + 0x1c]
mov eax, dword [esi]
mov esi, dword [esp + 0x20]
shl edx, 4
mov ecx, dword [esi + edx + 0xc]
mov dword [ecx + 0x50], eax
mov edi, dword [esi + edx + 4]
mov eax, dword [esi + edx + 0xc]
mov ebx, dword [eax + 0x50]
mov esi, dword [edi + 4]
cmp byte [edi + 9], 0
jne 0x1006bdbd
mov eax, dword [esi]
mov dword [esp + 0x14], edi
test ebx, ebx
mov esi, dword [eax + 0xd4]
mov dword [esi + 0x10], ebx
mov edi, dword [0x101d2098]
jns 0x1006ac3b
mov eax, ebx
xor ecx, ecx
sar eax, 0x1f
shld eax, ebx, 0xa
shl ebx, 0xa
neg ebx
sbb ecx, eax
mov eax, dword [esi + 0x1c]
add eax, dword [esi + 0x18]
mov edx, eax
sar edx, 0x1f
push edx
push eax
push ecx
push ebx
call fcn.10193120
mov ebx, eax
mov esi, dword [esi + 0x2c]
mov ecx, edi
call dword [section..00cfg]
push ebx
push esi
call edi
add esp, 8
mov ecx, dword [esp + 0x14]
mov esi, dword [esp + 8]
cmp byte [ecx + 9], 0
je 0x1006acb3
dec dword [ecx + 0xc]
jne 0x1006acb3
call fcn.10028200
jmp 0x1006acb3
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
shl eax, 4
mov esi, dword [ecx + eax + 4]
mov ecx, dword [esp + 0xc]
test ecx, ecx
je 0x1006ba9f
lea edi, [esp + 0x68]
xor ebx, ebx
mov edx, edi
mov dword [edi], ebx
call fcn.1004b9f0
mov edx, dword [edi]
mov eax, dword [esp + 8]
mov ecx, esi
mov dword [eax + 0x5c], edx
push ebx
push ebx
mov esi, dword [esp + 0x10]
call fcn.10018970
add esp, 8
cmp eax, 7
je 0x1006e0e7
mov edx, dword [esp + 0x40]
mov ecx, esi
call fcn.10019c40
mov edx, dword [esp + 0xc]
jmp 0x1006af70
push eax
push 0x101b51f8
push dword [esp + 0x10]
call fcn.1000f4f0
add esp, 0xc
mov dword [esp + 0xc], eax
jmp 0x1006a790
mov eax, dword [ebx + 0x10]
mov dword [esp + 0x30], ebx
mov edi, dword [esp + 0x30]
mov esi, dword [esp + 0x30]
mov ecx, dword [eax + 0xc]
mov edi, dword [edi + 0x18]
mov cl, byte [ecx + 0x4d]
mov dword [esp + 0x2c], edi
mov byte [esi + 0x4e], cl
mov ecx, dword [esp + 0x30]
mov eax, dword [eax + 0xc]
test byte [eax + 0x4e], 1
mov eax, dword [esp + 0x10]
lea eax, [eax + 4]
mov dword [esp + 0x38], eax
je 0x1006b44a
mov edi, dword [ecx + 0x14]
cmp edi, 2
jl 0x1006ad6f
lea ebx, [edi + 1]
shl edi, 4
add edi, 0xfffffffc
mov eax, dword [ecx + 0x10]
mov eax, dword [eax + edi]
test byte [eax + 0x4e], 1
je 0x1006ad45
dec ebx
add edi, 0xfffffff0
cmp ebx, 2
jg 0x1006ad2e
jmp 0x1006ad6f
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x34], edx
lea edx, [ebx - 2]
push 0
push dword [esp + 0x3c]
call fcn.1003f9f0
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
add esp, 8
test eax, eax
je 0x1006ad3a
jmp 0x1006b46e
test byte [esp + 0x2c], 1
jne 0x1006ad7a
and byte [ecx + 0x18], 0xfe
cmp byte [ecx + 0x59], 0
je 0x1006a89a
or byte [ecx + 0x18], 0x10
jmp 0x1006a89a
mov dword [esp + 0xc], 0
jmp 0x1006a790
mov edx, dword [esp + 0x1c]
xor edi, edi
inc edi
mov eax, edi
mov ecx, edx
shl eax, cl
or dword [ebx + 0x9c], eax
cmp edx, 1
je 0x1006adc8
mov ecx, dword [ebx]
shl edx, 4
mov ecx, dword [ecx + 0x10]
mov ecx, dword [ecx + edx + 4]
cmp byte [ecx + 9], 0
jne 0x1006b37a
mov eax, dword [esp + 0x18]
cmp dword [esp + 0xc], 0
mov esi, dword [eax + 0x10195540]
jne 0x1006b27e
mov eax, dword [ebx + 0x6c]
lea ecx, [eax + 3]
cmp ecx, dword [ebx + 0x70]
jg 0x1006e58b
mov ecx, dword [ebx + 0x68]
lea eax, [eax + eax*4]
xor edx, edx
mov byte [ecx + eax*4], 2
mov dword [ecx + eax*4 + 0xd], edx
mov dword [ecx + eax*4 + 5], edx
mov dword [ecx + eax*4 + 1], edx
mov dword [ecx + eax*4 + 9], edx
mov dword [ecx + eax*4 + 0x10], edx
mov dword [ecx + eax*4 + 0x14], 0x5d
mov dword [ecx + eax*4 + 0x18], edx
mov dword [ecx + eax*4 + 0x1c], edi
mov dword [ecx + eax*4 + 0x20], edx
mov dword [ecx + eax*4 + 0x24], edx
mov dword [ecx + eax*4 + 0x28], 0x50
mov dword [ecx + eax*4 + 0x2c], edi
mov dword [ecx + eax*4 + 0x30], edi
mov dword [ecx + eax*4 + 0x34], edx
mov dword [ecx + eax*4 + 0x38], edx
add dword [ebx + 0x6c], 3
mov edx, dword [esp + 0x1c]
mov dword [ecx + eax*4 + 4], edx
mov dword [ecx + eax*4 + 0x18], edx
mov dword [ecx + eax*4 + 0x20], esi
and byte [ebx + 0x98], 0xdf
jmp 0x1006af59
mov edi, dword [esp + 0xc]
mov esi, dword [esp + 8]
test edi, edi
je 0x1006e3f4
push edi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
and eax, 0x3fffffff
je 0x1006aeae
xor ecx, ecx
movzx edx, byte [edi + ecx]
test edx, edx
je 0x1006dfd7
movzx esi, byte [ecx + 0x101b14bc]
mov dl, byte [edx + 0x10194380]
mov bl, byte [esi + 0x10194380]
cmp dl, bl
jne 0x1006dfe6
mov esi, dword [esp + 8]
inc ecx
cmp eax, ecx
jne 0x1006ae7e
mov dword [esp + 0x14], 0
jmp 0x1006e408
cmp dword [esp + 0xc], 0
je 0x1006af2f
mov ecx, dword [esp + 0xc]
lea esi, [esp + 0x68]
mov edx, esi
mov dword [esi], 0
call fcn.1004b9f0
mov esi, dword [esi]
test esi, esi
jle 0x1006e59a
mov ebx, dword [esp + 8]
mov edi, dword [ebx + 0xc]
test edi, edi
je 0x1006e5ee
mov ecx, dword [0x101d2070]
call dword [section..00cfg]
push edi
call ecx
add esp, 4
mov edi, dword [ebx + 0xc]
mov dword [ebx + 0xf0], 0x10016220
mov dword [ebx + 0xf4], esi
mov ebx, dword [esp + 4]
test edi, edi
je 0x1006af2f
mov ecx, dword [0x101d2078]
call dword [section..00cfg]
push edi
call ecx
add esp, 4
mov eax, dword [esp + 8]
cmp dword [eax + 0xf0], 0x10016220
jne 0x1006e607
mov edx, dword [eax + 0xf4]
mov eax, edx
mov ecx, ebx
sar eax, 0x1f
push eax
call fcn.100a2ae0
add esp, 4
mov esi, dword [esp + 8]
mov edx, dword [esp + 0x40]
mov ecx, esi
call fcn.10019c40
mov edx, dword [esp + 0xc]
test edx, edx
je 0x1006af77
mov ecx, esi
call fcn.10019c40
mov ecx, dword [esp + 0x80]
xor ecx, ebp
call fcn.10192ef0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov al, 1
jmp 0x1006a994
mov ecx, dword [eax]
mov dword [esi + 0x130], ecx
jmp 0x1006a67a
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
xor edx, edx
shl eax, 4
mov eax, dword [ecx + eax + 4]
mov ecx, dword [esp + 0xc]
test ecx, ecx
mov dword [esp + 0x18], eax
je 0x1006e62b
movzx eax, byte [ecx + edx]
mov esi, edx
movzx edx, byte [edx + str.fast]
cmp al, dl
je 0x1006e643
mov al, byte [eax + 0x10194380]
cmp al, byte [edx + 0x10194380]
je 0x1006e647
movzx eax, byte [ecx]
add eax, 0xffffffd0
cmp eax, 9
jbe 0x1006e64f
push ecx
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov edi, eax
xor ecx, ecx
and edi, 0x3fffffff
lea eax, [edi + 1]
mov dword [esp + 0x10], eax
movzx eax, byte [ecx + 0x10198f75]
cmp edi, eax
je 0x1006b028
inc ecx
cmp ecx, 8
jne 0x1006b012
jmp 0x1006b322
test edi, edi
je 0x1006b074
movzx eax, byte [ecx + 0x10198f6d]
mov ebx, dword [esp + 0x10]
xor esi, esi
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x14]
movzx eax, byte [eax + esi + str.onoffalseyestruextrafull]
test eax, eax
je 0x1006e080
mov edx, dword [esp + 0xc]
mov al, byte [eax + 0x10194380]
movzx edx, byte [edx + esi]
mov dl, byte [edx + 0x10194380]
cmp al, dl
jne 0x1006e090
dec ebx
inc esi
cmp ebx, 1
jg 0x1006b03d
mov eax, ecx
and eax, 0x7ffffffe
cmp eax, 6
je 0x1006b01d
mov al, byte [ecx + 0x10198f7d]
xor ebx, ebx
test al, al
mov ecx, dword [esp + 8]
mov eax, dword [ebp + 8]
setne bl
cmp dword [eax + 4], 0
mov dl, 1
mov dword [esp + 0x10], ebx
mov dword [esp + 0x24], edx
jne 0x1006e63a
cmp dword [ecx + 0x14], 0
jle 0x1006e63a
lea eax, [ebx*4]
xor edi, edi
mov ebx, 4
mov dword [esp + 0x14], eax
mov eax, ecx
mov ecx, dword [esp + 0x18]
mov eax, dword [eax + 0x10]
mov esi, dword [eax + ebx]
test esi, esi
je 0x1006b0fb
cmp byte [esi + 9], 0
jne 0x1006e3a3
mov eax, dword [esi + 4]
and word [eax + 0x18], 0xfff3
mov eax, dword [esi + 4]
mov edx, dword [esp + 0x14]
or word [eax + 0x18], dx
cmp byte [esi + 9], 0
jne 0x1006e3c0
mov eax, dword [esp + 8]
inc edi
add ebx, 0x10
cmp edi, dword [eax + 0x14]
jl 0x1006b0ca
mov edi, dword [esp + 4]
test ecx, ecx
je 0x1006b373
cmp byte [ecx + 9], 0
mov ebx, dword [esp + 0x10]
jne 0x1006e69f
cmp byte [esp + 0x24], 0
je 0x1006b13b
mov eax, dword [ecx + 4]
shl ebx, 2
and word [eax + 0x18], 0xfff3
mov eax, dword [ecx + 4]
or word [eax + 0x18], bx
mov eax, dword [ecx + 4]
mov esi, dword [eax + 0x18]
shr esi, 2
and esi, 3
cmp byte [ecx + 9], 0
jne 0x1006e6be
mov ecx, edi
mov edx, esi
push 0
jmp 0x1006af51
mov edx, dword [esp + 0x10]
mov edi, dword [esp + 0x18]
mov esi, dword [esp + 8]
mov ecx, edi
mov eax, edx
xor edi, 0x80000
not ecx
not eax
and dword [esi + 0x20], ecx
and dword [esi + 0x24], eax
or edi, edx
je 0x1006e667
mov ecx, dword [esp + 4]
mov eax, dword [ecx + 0x6c]
cmp dword [ecx + 0x70], eax
jle 0x1006b47d
lea edx, [eax + 1]
lea eax, [eax + eax*4]
mov dword [ecx + 0x6c], edx
xor edx, edx
mov ecx, dword [ecx + 0x68]
mov byte [ecx + eax*4], 0x9f
mov dword [ecx + eax*4 + 0xd], edx
mov dword [ecx + eax*4 + 5], edx
mov dword [ecx + eax*4 + 1], edx
mov dword [ecx + eax*4 + 9], edx
mov dword [ecx + eax*4 + 0x10], edx
cmp byte [esi + 0x4f], 0
je 0x1006af59
mov eax, dword [esp + 8]
mov esi, dword [eax + 0x14]
test esi, esi
jle 0x1006af59
mov eax, dword [esp + 8]
inc esi
mov edi, dword [eax + 0x10]
add edi, 8
mov ecx, dword [edi - 4]
test ecx, ecx
je 0x1006b1f9
mov edx, dword [esp + 8]
movzx eax, byte [edi]
mov edx, dword [edx + 0x20]
and edx, 0x38
or edx, eax
call fcn.1004d510
dec esi
add edi, 0x10
cmp esi, 1
jg 0x1006b1de
jmp 0x1006af59
mov eax, dword [esi]
mov dword [ecx + 0x130], eax
jmp 0x1006a73f
mov ecx, dword [eax]
mov dword [esi + 0x134], ecx
jmp 0x1006a67a
mov eax, dword [esp + 0x18]
shl edi, 3
lea ecx, [edi + edi*4]
xor edi, edi
mov dword [esp + 0x14], ecx
movzx eax, byte [eax + 0x1019553e]
lea esi, [eax*4 + 0x10195948]
mov eax, dword [ebx]
cmp byte [eax + 0x51], 0
jne 0x1006b25c
mov ecx, dword [ebx + 0x74]
mov edx, dword [esi]
add ecx, edi
push 0
push 1
push 0xffffffffffffffff
call fcn.1000ad80
add esp, 0xc
add edi, 0x28
add esi, 4
cmp dword [esp + 0x14], edi
jne 0x1006b23f
jmp 0x1006a8b7
mov eax, dword [esi]
mov ecx, dword [esp + 8]
mov dword [ecx + 0x134], eax
jmp 0x1006a73f
mov eax, dword [esp + 0x24]
add eax, 0xffffffe4
cmp eax, 0x11
ja 0x1006b29a
mov ecx, eax
mov edx, 0x30003
bt edx, ecx
jb 0x1006addd
mov eax, dword [ebx + 0x6c]
lea ecx, [eax + 2]
cmp ecx, dword [ebx + 0x70]
jg 0x1006eb2e
mov edi, dword [ebx + 0x68]
mov ecx, ebx
lea ebx, [eax + eax*4]
xor eax, eax
mov dword [edi + ebx*4], 2
mov dword [edi + ebx*4 + 4], eax
mov dword [edi + ebx*4 + 8], 1
mov dword [edi + ebx*4 + 0xc], eax
mov dword [edi + ebx*4 + 0x10], eax
mov byte [edi + ebx*4 + 0x14], 0x5e
mov dword [edi + ebx*4 + 0x21], eax
mov dword [edi + ebx*4 + 0x19], eax
mov dword [edi + ebx*4 + 0x15], eax
mov dword [edi + ebx*4 + 0x1d], eax
mov dword [edi + ebx*4 + 0x24], eax
add dword [ecx + 0x6c], 2
mov ecx, dword [esp + 0x1c]
mov dword [edi + ebx*4 + 4], ecx
mov dword [edi + ebx*4 + 0x18], ecx
mov ecx, dword [esp + 0xc]
mov dword [edi + ebx*4 + 0x1c], esi
lea esi, [esp + 0x68]
mov edx, esi
mov dword [esi], eax
call fcn.1004b9f0
mov eax, dword [esi]
mov dword [edi + ebx*4 + 0x20], eax
mov word [edi + ebx*4 + 0x16], 1
mov esi, dword [esp + 8]
jmp 0x1006acb3
xor eax, eax
jmp 0x1006b086
mov edi, dword [esp + 0xc]
test edi, edi
je 0x1006b707
mov al, byte [edi]
mov ecx, eax
add cl, 0xd0
cmp cl, 3
jae 0x1006babd
movzx ebx, al
add ebx, 0xffffffd0
mov eax, dword [esp + 0x10]
mov esi, dword [eax]
movzx eax, byte [esi + 0x50]
cmp ebx, eax
je 0x1006af59
mov eax, dword [esi + 0x10]
mov ecx, dword [eax + 0x14]
test ecx, ecx
jne 0x1006eae1
mov byte [esi + 0x50], bl
jmp 0x1006af59
xor esi, esi
jmp 0x1006b151
or dword [ebx + 0xa0], eax
jmp 0x1006adc8
mov eax, dword [ebp + 8]
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0xc]
cmp dword [eax], 0
mov eax, 0xa
cmove edi, eax
test esi, esi
je 0x1006e698
xor ecx, ecx
xor eax, eax
inc eax
movzx edx, byte [esi + ecx]
movzx ebx, byte [ecx + 0x101b0a31]
cmp dl, bl
je 0x1006b3cc
mov dl, byte [edx + 0x10194380]
cmp dl, byte [ebx + 0x10194380]
jne 0x1006b82a
inc ecx
jmp 0x1006b3a8
test dl, dl
jne 0x1006b3c9
mov ebx, dword [esp + 4]
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x2c], 3
mov ecx, dword [ebx + 0x6c]
cmp dword [ebx + 0x70], ecx
jle 0x1006bdd6
lea edx, [ecx + 1]
lea ecx, [ecx + ecx*4]
mov dword [ebx + 0x6c], edx
mov edx, dword [ebx + 0x68]
mov dword [edx + ecx*4], 6
mov dword [edx + ecx*4 + 4], edi
mov dword [edx + ecx*4 + 8], eax
mov dword [edx + ecx*4 + 0xc], 1
mov dword [edx + ecx*4 + 0x10], 0
mov eax, dword [ebx + 0x6c]
cmp dword [ebx + 0x70], eax
jle 0x1006bdee
lea ecx, [eax + 1]
lea eax, [eax + eax*4]
mov dword [ebx + 0x6c], ecx
mov ecx, dword [ebx + 0x68]
mov dword [ecx + eax*4], 0x50
mov dword [ecx + eax*4 + 4], 1
mov dword [ecx + eax*4 + 8], 3
jmp 0x1006e4df
mov ecx, dword [esp + 0x30]
mov edi, edx
xor edx, edx
push 0
push dword [esp + 0x3c]
call fcn.1003f9f0
mov ecx, dword [esp + 0x38]
mov edx, edi
add esp, 8
test eax, eax
je 0x1006ad1d
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0xc], eax
inc dword [ecx + 0x24]
jmp 0x1006af59
xor eax, eax
mov edx, 0x9f
push eax
push eax
push eax
call fcn.1004e590
add esp, 0xc
jmp 0x1006b1ba
mov eax, dword [esp + 0x10]
mov dword [eax + 0x2c], 3
mov eax, dword [esp + 8]
mov eax, dword [eax + 0x14]
test eax, eax
jle 0x1006af59
mov ebx, dword [esp + 8]
xor esi, esi
mov edi, 4
mov ecx, dword [ebx + 0x10]
mov edx, dword [ecx + edi]
test edx, edx
je 0x1006b4f0
mov eax, dword [edx + 4]
mov eax, dword [eax]
cmp byte [eax + 0xf], 0
jne 0x1006b4fd
mov eax, dword [eax + 0xa8]
push eax
push dword [ecx + edi - 4]
push esi
push 0x101ada3d
push 1
push dword [esp + 0x18]
call fcn.100a2f30
add esp, 0x18
mov eax, dword [ebx + 0x14]
inc esi
add edi, 0x10
cmp esi, eax
jl 0x1006b4b9
jmp 0x1006af59
mov eax, 0x10194c54
jmp 0x1006b4d4
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0xc]
shl edx, 4
test ecx, ecx
mov esi, dword [eax + edx + 4]
je 0x1006ea19
xor eax, eax
mov dword [esp + 0x14], edx
movzx ebx, byte [ecx + eax]
movzx edx, byte [eax + 0x101b1c50]
cmp bl, dl
je 0x1006ea65
mov bl, byte [ebx + 0x10194380]
cmp bl, byte [edx + 0x10194380]
je 0x1006ea69
xor eax, eax
xor edi, edi
inc edi
movzx ebx, byte [ecx + eax]
movzx edx, byte [eax + 0x101b0a31]
cmp bl, dl
je 0x1006ea6f
mov bl, byte [ebx + 0x10194380]
cmp bl, byte [edx + 0x10194380]
je 0x1006ea73
xor eax, eax
movzx ebx, byte [ecx + eax]
movzx edx, byte [eax + str.incremental]
cmp bl, dl
je 0x1006b59a
mov bl, byte [ebx + 0x10194380]
cmp bl, byte [edx + 0x10194380]
jne 0x1006e202
inc eax
jmp 0x1006b576
mov edx, 2
test bl, bl
jne 0x1006b597
mov eax, dword [esp + 8]
mov byte [eax + 0x54], dl
mov ebx, dword [esi + 4]
cmp byte [esi + 9], 0
jne 0x1006ea79
test byte [ebx + 0x18], 2
jne 0x1006ea96
test edx, edx
setne byte [ebx + 0x11]
cmp edx, 2
sete byte [ebx + 0x12]
mov bl, 1
cmp byte [esi + 9], 0
jne 0x1006eaab
dec edx
cmp edx, 1
seta al
xor bl, 1
or bl, al
jne 0x1006af59
mov edi, dword [esp + 4]
mov dword [esp + 0x18], edx
mov esi, dword [edi + 0x6c]
lea eax, [esi + 5]
cmp eax, dword [edi + 0x70]
mov eax, esi
jg 0x1006eac4
mov ecx, dword [edi + 0x68]
lea edx, [eax + eax*4]
mov dword [esp + 4], edi
mov edi, 2
mov eax, 2
mov dword [ecx + edx*4], edi
xor edi, edi
xor ebx, ebx
add esi, 4
inc ebx
mov dword [ecx + edx*4 + 4], edi
mov dword [ecx + edx*4 + 8], ebx
mov dword [ecx + edx*4 + 0xc], edi
mov dword [ecx + edx*4 + 0x10], edi
mov dword [ecx + edx*4 + 0x14], 0x5d
mov dword [ecx + edx*4 + 0x18], edi
mov dword [ecx + edx*4 + 0x1c], ebx
mov dword [ecx + edx*4 + 0x20], 4
mov dword [ecx + edx*4 + 0x24], edi
mov dword [ecx + edx*4 + 0x28], 0x12
mov dword [ecx + edx*4 + 0x2c], ebx
mov dword [ecx + edx*4 + 0x30], edi
mov dword [ecx + edx*4 + 0x34], edi
mov dword [ecx + edx*4 + 0x38], edi
mov byte [ecx + edx*4 + 0x3c], 0x44
mov dword [ecx + edx*4 + 0x40], edi
mov dword [ecx + edx*4 + 0x44], eax
mov dword [ecx + edx*4 + 0x48], edi
mov byte [ecx + edx*4 + 0x3d], 0
mov dword [ecx + edx*4 + 0x4c], edi
mov word [ecx + edx*4 + 0x3e], 0
mov dword [ecx + edx*4 + 0x50], 0x5e
mov dword [ecx + edx*4 + 0x54], edi
mov dword [ecx + edx*4 + 0x58], 7
mov dword [ecx + edx*4 + 0x5c], edi
mov dword [ecx + edx*4 + 0x60], edi
mov edi, dword [esp + 4]
add dword [edi + 0x6c], 5
mov eax, dword [esp + 0x1c]
mov dword [ecx + edx*4 + 4], eax
mov dword [ecx + edx*4 + 0x18], eax
mov dword [ecx + edx*4 + 0x30], esi
mov esi, dword [esp + 0x18]
mov dword [ecx + edx*4 + 0x54], eax
mov dword [ecx + edx*4 + 0x5c], esi
mov edx, ebx
mov ecx, eax
shl edx, cl
or dword [edi + 0x9c], edx
cmp eax, ebx
je 0x1006af59
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x14]
mov eax, dword [eax]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + ecx + 4]
cmp byte [eax + 9], 0
je 0x1006af59
mov eax, dword [esp + 4]
or dword [eax + 0xa0], edx
jmp 0x1006af59
mov eax, dword [esp + 8]
movzx edx, byte [eax + 0x50]
mov ecx, ebx
push 0
jmp 0x1006b72f
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
shl eax, 4
mov eax, dword [ecx + eax + 0xc]
mov edx, dword [eax + 0x50]
mov eax, edx
mov ecx, ebx
sar eax, 0x1f
push eax
call fcn.100a2ae0
add esp, 4
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0x40]
jmp 0x1006af72
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
shl eax, 4
cmp dword [esp + 0xc], 0
mov eax, dword [ecx + eax + 4]
mov eax, dword [eax + 4]
mov edi, dword [eax]
mov dword [esp + 0x6c], 0xffffffff
mov dword [esp + 0x68], 0xfffffffe
je 0x1006b7b3
mov ecx, dword [esp + 0xc]
lea esi, [esp + 0x68]
mov edx, esi
call fcn.10019360
mov eax, dword [esi]
mov ecx, dword [esi + 4]
xor edx, edx
mov esi, 0xfffffffe
dec edx
cmp esi, eax
mov esi, edx
sbb esi, ecx
jge 0x1006eb07
mov dword [edi + 0xa0], eax
mov dword [edi + 0xa4], ecx
mov edx, dword [edi + 0xd8]
test edx, edx
je 0x1006b7b3
mov dword [edx + 0x10], eax
mov dword [edx + 0x14], ecx
mov edx, dword [edi + 0xa0]
mov ecx, ebx
push dword [edi + 0xa4]
jmp 0x1006af51
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
shl eax, 4
mov eax, dword [ecx + eax]
mov dword [esp + 0x28], eax
jmp 0x1006a7a5
mov ecx, dword [eax]
mov dword [esi + 0x12c], ecx
jmp 0x1006a67a
cmp byte [ecx + 0xa5], 0
jne 0x1006eb18
mov edx, ebx
call fcn.1007ac80
test eax, eax
jns 0x1006a61b
push ebx
push str.unknown_database__T
push dword [esp + 0x18]
call fcn.1000f470
add esp, 0xc
jmp 0x1006af77
mov eax, dword [esi]
mov dword [ecx + 0x12c], eax
jmp 0x1006a73f
xor eax, eax
movzx ecx, byte [esi + eax]
movzx edx, byte [eax + str.restart]
cmp cl, dl
je 0x1006eb7a
mov cl, byte [ecx + 0x10194380]
mov ebx, dword [esp + 4]
cmp cl, byte [edx + 0x10194380]
je 0x1006eb82
xor ecx, ecx
movzx edx, byte [esi + ecx]
movzx eax, byte [ecx + str.truncate]
cmp dl, al
je 0x1006b87b
mov dl, byte [edx + 0x10194380]
cmp dl, byte [eax + 0x10194380]
jne 0x1006e698
inc ecx
jmp 0x1006b857
mov eax, 3
test dl, dl
je 0x1006b3d4
jmp 0x1006b878
cmp dword [esp + 0xc], 0
je 0x1006b737
mov eax, dword [esp + 0x10]
mov esi, dword [eax]
cmp dword [esi + 0x14], 0
jle 0x1006b8ec
xor ebx, ebx
mov eax, dword [esi + 0x10]
mov ecx, ebx
shl ecx, 4
cmp dword [eax + ecx + 4], 0
je 0x1006b8e6
cmp dword [esp + 0x28], 0
jne 0x1006eb88
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0x74]
test eax, eax
cmove eax, ecx
xor edi, edi
mov ecx, ebx
mov edx, dword [eax + 0x54]
inc edi
shl edi, cl
bt edx, ebx
jb 0x1006b8e6
or edx, edi
cmp ebx, 1
mov dword [eax + 0x54], edx
je 0x1006ebbb
inc ebx
cmp ebx, dword [esi + 0x14]
jl 0x1006b8a3
mov ecx, dword [esp + 0x10]
mov edx, 2
push dword [esp + 0x28]
push dword [esp + 0x10]
call fcn.1000eee0
add esp, 8
test eax, eax
mov dword [esp + 0x20], eax
je 0x1006af59
mov eax, dword [esp + 0x20]
mov ecx, dword [eax + 8]
mov al, 1
mov dword [esp + 0x30], eax
test ecx, ecx
je 0x1006e8dd
mov eax, dword [ecx + 0x38]
and eax, 3
cmp eax, 2
je 0x1006b936
mov ecx, dword [ecx + 0x14]
jmp 0x1006b91e
mov dword [esp + 0x34], ecx
mov dword [esp + 0x30], 0
mov esi, dword [esp + 0x20]
mov ecx, dword [esp + 0x10]
mov edx, esi
mov dword [ecx + 0x2c], 7
call fcn.10080620
movzx ebx, word [esi + 0x2a]
test bx, bx
jle 0x1006af59
mov eax, dword [esp + 0x20]
movzx ecx, bx
xor edi, edi
mov dword [esp + 0x38], 0
mov esi, dword [eax + 4]
mov eax, dword [esp + 0x18]
lea eax, [eax + 0x10195540]
mov dword [esp + 0x2c], eax
movzx eax, word [esi + 0x10]
mov dl, 1
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], 0
test al, 0x62
jne 0x1006d837
mov edi, eax
and edi, 1
test di, di
sete bl
or bl, byte [esp + 0x30]
je 0x1006ba55
mov ecx, dword [esi + 4]
mov dword [esp + 0x24], 0
test ecx, ecx
sete bl
xor dl, 1
or dl, bl
je 0x1006d865
xor ebx, ebx
cmp byte [esi + 0xc], 0
mov ecx, dword [esi]
mov dword [esp + 0x10], edi
mov dword [esp + 0x28], 0x101c3b42
setne bl
test al, 4
mov dword [esp + 0x1c], ecx
jne 0x1006d871
mov eax, dword [esp + 0x2c]
mov edi, dword [esp + 0x14]
mov edx, dword [eax]
mov ecx, edi
sub ecx, dword [esp + 0x38]
or edx, dword [eax + 4]
mov edx, str.issisii
mov eax, str.issisi
cmove edx, eax
push dword [esp + 0x18]
push dword [esp + 0x14]
push dword [esp + 0x2c]
push ebx
push dword [esp + 0x38]
push dword [esp + 0x30]
push ecx
push edx
push 1
push dword [esp + 0x28]
call fcn.100a2f30
add esp, 0x28
mov eax, dword [esp + 0x20]
movzx ebx, word [eax + 0x2a]
inc edi
movsx ecx, bx
add esi, 0x14
cmp edi, ecx
jl 0x1006b987
jmp 0x1006af59
test ecx, ecx
mov edi, 1
jle 0x1006b9b6
mov edi, dword [esp + 0x34]
mov ebx, dword [edi + 4]
lea edi, [ecx + 1]
neg ecx
mov dword [esp + 0x10], edi
xor edi, edi
inc edi
mov dword [esp + 0x24], ebx
movsx ebx, word [ebx + edi*2 - 2]
cmp dword [esp + 0x14], ebx
je 0x1006b9b6
lea ebx, [ecx + edi + 1]
inc edi
cmp ebx, 1
mov ebx, dword [esp + 0x24]
jne 0x1006ba79
mov edi, dword [esp + 0x10]
jmp 0x1006b9b6
test esi, esi
je 0x1006ebc7
mov eax, dword [esi + 4]
mov edx, dword [eax + 0x24]
jmp 0x1006b727
inc dword [esi + 0x124]
jmp 0x1006a699
xor ebx, ebx
mov edx, eax
inc ebx
mov esi, ebx
movzx ecx, byte [esi + 0x101b2078]
cmp dl, cl
je 0x1006ebfc
movzx edx, dl
mov dl, byte [edx + 0x10194380]
cmp dl, byte [ecx + 0x10194380]
je 0x1006ec04
xor ecx, ecx
mov ebx, 2
inc ecx
movzx edx, byte [ecx + 0x101ac1f6]
cmp al, dl
je 0x1006bb16
movzx eax, al
mov al, byte [eax + 0x10194380]
cmp al, byte [edx + 0x10194380]
jne 0x1006e959
mov al, byte [edi + ecx]
inc ecx
jmp 0x1006baf0
test al, al
je 0x1006b34b
jmp 0x1006bb10
inc dword [ecx + 0x124]
jmp 0x1006a75e
mov ecx, dword [esp + 0xc]
test ecx, ecx
je 0x1006ec8a
lea esi, [esp + 0x68]
mov edx, esi
mov dword [esi], 0
call fcn.1004b9f0
mov eax, dword [esi]
mov esi, dword [esp + 8]
mov edx, eax
test al, 2
je 0x1006acb3
mov ecx, dword [esp + 0x10]
cmp dword [esp + 0x28], 0
mov eax, dword [ecx + 0x28]
mov dword [esp + 0x20], eax
lea eax, [eax + 1]
mov dword [ecx + 0x28], eax
mov eax, dword [esp + 0x1c]
mov ecx, eax
jne 0x1006bb7e
mov ecx, dword [esp + 8]
mov ecx, dword [ecx + 0x14]
dec ecx
cmp eax, ecx
jg 0x1006bd74
and edx, 1
mov dword [esp + 0x28], ecx
mov dword [esp + 0x24], edx
add edx, 2
mov dword [esp + 0x30], edx
cmp eax, 1
mov dword [esp + 0x1c], eax
je 0x1006bd42
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0x74]
test eax, eax
cmove eax, ecx
mov ecx, dword [esp + 0x1c]
xor esi, esi
mov edx, dword [eax + 0x54]
inc esi
shl esi, cl
bt edx, ecx
jb 0x1006bbc7
or edx, esi
mov dword [eax + 0x54], edx
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x1c]
mov eax, dword [eax + 0x10]
shl ecx, 4
mov dword [esp + 0x18], ecx
mov eax, dword [eax + ecx + 0xc]
mov edi, dword [eax + 0x10]
test edi, edi
je 0x1006bd42
mov esi, dword [edi + 8]
test byte [esi + 0x25], 1
jne 0x1006bbf5
mov edi, dword [edi]
jmp 0x1006bbe0
movzx ebx, word [esi + 0x2e]
mov eax, dword [esi + 8]
test eax, eax
je 0x1006bc0b
cmp byte [eax + 0x38], 0
jns 0x1006bc77
mov eax, dword [eax + 0x14]
jmp 0x1006bbfc
add ebx, 0x2e
test bx, bx
je 0x1006bc77
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x20]
push 0x60
push esi
push dword [esp + 0x24]
call fcn.10070c20
add esp, 0xc
movsx eax, bx
mov edx, dword [esp + 0x30]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 4]
mov ecx, dword [eax + 0x6c]
cmp dword [eax + 0x70], ecx
lea ebx, [ecx + edx]
jle 0x1006bd57
lea edx, [ecx + 1]
lea ecx, [ecx + ecx*4]
mov dword [eax + 0x6c], edx
mov edx, dword [eax + 0x68]
mov eax, dword [esp + 0x20]
mov dword [edx + ecx*4], 0x22
mov dword [edx + ecx*4 + 4], eax
mov dword [edx + ecx*4 + 8], ebx
mov ebx, dword [esp + 0x14]
mov dword [edx + ecx*4 + 0xc], ebx
mov dword [edx + ecx*4 + 0x10], 0
mov ecx, dword [esp + 8]
mov eax, dword [ecx + 0x10]
push dword [esi]
mov edx, dword [esp + 0x1c]
push dword [eax + edx]
push str.ANALYZE___w_.__w_
push ecx
call fcn.1000f4f0
add esp, 0x10
cmp dword [esp + 0x24], 0
mov dword [esp + 0x14], eax
jne 0x1006e960
mov ebx, dword [esp + 4]
mov eax, dword [ebx + 0x6c]
cmp dword [ebx + 0x70], eax
jle 0x1006bd2c
lea ecx, [eax + 1]
lea edx, [eax + eax*4]
mov esi, 0
mov dword [ebx + 0x6c], ecx
mov ecx, dword [ebx + 0x68]
mov byte [ecx + edx*4], 0x8d
mov dword [ecx + edx*4 + 0xd], esi
mov dword [ecx + edx*4 + 5], esi
mov dword [ecx + edx*4 + 1], esi
mov dword [ecx + edx*4 + 9], esi
mov dword [ecx + edx*4 + 0x10], esi
mov ecx, dword [ebx]
cmp byte [ecx + 0x51], 0
jne 0x1006e9c6
mov esi, dword [esp + 0x14]
test eax, eax
js 0x1006bd26
mov ecx, dword [ebx + 0x68]
lea eax, [eax + eax*4]
cmp byte [ecx + eax*4 + 1], 0
jne 0x1006bd11
test esi, esi
je 0x1006bbf1
lea eax, [ecx + eax*4 + 1]
mov dword [eax + 0xf], esi
mov byte [eax], 0xf9
jmp 0x1006bbf1
lea edx, [ecx + eax*4]
mov ecx, ebx
push 0xfffffffffffffff9
push esi
call fcn.1004e710
add esp, 8
jmp 0x1006bbf1
mov eax, dword [ebx + 0x6c]
dec eax
jmp 0x1006bced
xor eax, eax
mov ecx, ebx
mov edx, 0x8d
push eax
push eax
push eax
call fcn.1004e590
add esp, 0xc
jmp 0x1006bcd9
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x28]
cmp eax, ecx
lea eax, [eax + 1]
jne 0x1006bb98
jmp 0x1006bd74
mov ecx, eax
mov edx, 0x22
push dword [esp + 0x14]
push ebx
push dword [esp + 0x28]
call fcn.1004e590
add esp, 0xc
jmp 0x1006bc77
xor eax, eax
mov ecx, ebx
mov edx, 0x9f
push eax
push eax
push eax
call fcn.1004e520
jmp 0x1006e50d
mov ecx, dword [esp + 0xc]
mov edi, dword [esp + 8]
test ecx, ecx
je 0x1006bdb2
lea esi, [esp + 0x68]
mov edx, esi
mov dword [esi], 0
call fcn.1004b9f0
push dword [esi]
push edi
call sym.nss3.dll_sqlite3_busy_timeout
add esp, 8
mov edx, dword [edi + 0x1d0]
jmp 0x1006af49
inc dword [edi + 0xc]
cmp byte [edi + 0xa], 0
jne 0x1006abfa
mov ecx, edi
call fcn.10028170
jmp 0x1006abfa
mov ecx, ebx
mov edx, 6
push 1
push eax
push edi
call fcn.1004e590
add esp, 0xc
jmp 0x1006b416
mov ecx, ebx
mov edx, 0x50
push 0
push 3
push 1
jmp 0x1006e508
mov esi, 0xfffffbf0
push dword [esi + 0x10195948]
push 0x101aef3a
push 1
push dword [esp + 0x10]
call fcn.100a2f30
add esp, 0x10
add esi, 0x10
jne 0x1006be05
jmp 0x1006af59
cmp dword [esp + 0xc], 0
je 0x1006d9d8
mov esi, dword [esp + 8]
test byte [esi + 0x18], 0x40
jne 0x1006acb3
xor eax, eax
mov ecx, dword [esp + 0xc]
movzx edx, byte [eax + str.UTF8]
movzx ecx, byte [ecx + eax]
cmp cl, dl
jne 0x1006be5f
test cl, cl
jne 0x1006be71
jmp 0x1006dcca
mov cl, byte [ecx + 0x10194380]
cmp cl, byte [edx + 0x10194380]
jne 0x1006dd31
inc eax
jmp 0x1006be43
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x2c]
mov dword [esp + 0x54], ecx
add ecx, 6
mov dword [eax + 0x2c], ecx
mov eax, dword [esp + 8]
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x1c]
mov eax, dword [eax + 0x10]
shl ecx, 4
mov eax, dword [eax + ecx + 0xc]
mov eax, dword [eax + 0x10]
test eax, eax
mov dword [esp + 0x2c], eax
je 0x1006af59
mov eax, dword [esp + 0x54]
lea ecx, [eax + 1]
add eax, 5
mov dword [esp + 0x48], ecx
mov dword [esp + 0x44], eax
cmp dword [esp + 0xc], 0
je 0x1006bf02
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x2c], 0
xor edx, edx
push dword [esp + 0x28]
push dword [esp + 0x10]
call fcn.1000eee0
add esp, 8
mov dword [esp + 0x24], eax
cmp dword [esp + 0x24], 0
je 0x1006bef6
mov eax, dword [esp + 0x24]
cmp dword [eax + 0x10], 0
jne 0x1006bf15
cmp dword [esp + 0x2c], 0
jne 0x1006bebc
jmp 0x1006af59
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + 8]
mov eax, dword [eax]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x2c], eax
jmp 0x1006bee5
mov eax, dword [esp + 0x24]
mov ecx, dword [eax + 0x48]
mov eax, dword [esp + 8]
mov eax, dword [eax + 0x10]
test ecx, ecx
je 0x1006bf3e
xor esi, esi
lea edx, [eax + 0xc]
dec esi
mov dword [esp + 0x14], esi
inc dword [esp + 0x14]
cmp dword [edx], ecx
lea edx, [edx + 0x10]
jne 0x1006bf31
jmp 0x1006bf46
mov dword [esp + 0x14], 0xffff8000
mov ecx, dword [esp + 0x14]
mov edx, ecx
shl edx, 4
mov eax, dword [eax + edx]
mov edx, dword [esp + 0x10]
mov dword [esp + 0x28], eax
mov eax, dword [edx + 0x74]
test eax, eax
cmove eax, edx
xor esi, esi
mov edx, dword [eax + 0x54]
inc esi
shl esi, cl
bt edx, ecx
jae 0x1006c3e6
mov esi, dword [esp + 0x10]
mov edi, dword [esp + 0x24]
mov edx, dword [esp + 0x14]
mov ecx, esi
push dword [edi]
push 0
push dword [edi + 0x1c]
call fcn.10070dc0
add esp, 0xc
movsx eax, word [edi + 0x2a]
add eax, dword [esp + 0x30]
cmp eax, dword [esi + 0x2c]
jle 0x1006bfa4
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x2c], eax
mov ecx, dword [esp + 0x10]
xor edx, edx
push 0x60
mov esi, dword [esp + 0x28]
push esi
push dword [esp + 0x1c]
call fcn.10070c20
add esp, 0xc
mov eax, dword [esi]
mov edi, dword [esp + 4]
xor ebx, ebx
mov edx, 0x73
mov dword [esp + 0x18], eax
mov ecx, edi
push ebx
push dword [esp + 0x4c]
push ebx
call fcn.1004e520
add esp, 0xc
mov ecx, edi
mov edx, eax
push ebx
push dword [esp + 0x1c]
call fcn.1000f710
add esp, 8
mov ebx, dword [esi + 0x10]
mov eax, 1
mov dword [esp + 0x18], eax
test ebx, ebx
je 0x1006c0f5
xor eax, eax
inc eax
mov dword [esp + 0x18], eax
mov edx, dword [ebx + 8]
mov ecx, dword [esp + 8]
push dword [esp + 0x28]
call fcn.10017e00
add esp, 4
test eax, eax
je 0x1006c0d0
mov edi, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov esi, eax
xor eax, eax
mov dword [esp + 0x68], eax
mov ecx, edi
push dword [esi]
push eax
push dword [esi + 0x1c]
call fcn.10070dc0
add esp, 0xc
xor eax, eax
mov ecx, edi
mov edx, esi
push eax
lea eax, [esp + 0x6c]
push eax
push ebx
call fcn.1009e140
add esp, 0xc
test eax, eax
jne 0x1006af59
mov edi, dword [esp + 0x68]
test edi, edi
je 0x1006c0b9
mov ecx, dword [esp + 4]
mov edx, 0x60
push dword [esp + 0x14]
push dword [edi + 0x2c]
push dword [esp + 0x20]
call fcn.1004e520
add esp, 0xc
mov ecx, dword [esp + 0x10]
mov edx, edi
mov esi, dword [ecx + 8]
call fcn.10070f10
test eax, eax
je 0x1006c0d0
mov ecx, dword [esi]
cmp byte [ecx + 0x51], 0
je 0x1006c0e1
cmp dword [ecx + 0x1f0], 0
jne 0x1006c0d0
dec dword [eax]
jne 0x1006c0d0
mov ecx, dword [eax + 0xc]
mov edx, eax
call fcn.10019c40
jmp 0x1006c0d0
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
push 0x60
push esi
push dword [esp + 0x1c]
call fcn.10070c20
add esp, 0xc
mov ebx, dword [ebx + 4]
inc dword [esp + 0x18]
test ebx, ebx
jne 0x1006c00a
jmp 0x1006c0f5
mov edx, dword [esi + 0x6c]
mov ecx, dword [esi + 0x68]
lea edx, [edx + edx*4]
mov byte [ecx + edx*4 - 0x13], 0xf7
mov dword [ecx + edx*4 - 4], eax
jmp 0x1006c0d0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
cmp dword [eax + 0x28], ecx
jge 0x1006c10d
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
mov dword [eax + 0x28], ecx
mov ecx, dword [esp + 4]
xor eax, eax
mov edx, 0x25
push eax
push eax
push eax
call fcn.1004e520
add esp, 0xc
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 0x10]
test eax, eax
mov dword [esp + 0x1c], eax
je 0x1006c3ad
mov eax, dword [esp + 0x54]
lea ecx, [eax + 2]
add eax, 3
mov dword [esp + 0x3c], eax
xor eax, eax
mov dword [esp + 0x4c], ecx
inc eax
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 8]
mov edx, dword [eax + 8]
push dword [esp + 0x28]
call fcn.10017e00
add esp, 4
xor ecx, ecx
test eax, eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x68], ecx
mov dword [esp + 0x64], ecx
je 0x1006c19a
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x58]
lea eax, [esp + 0x64]
push eax
lea eax, [esp + 0x6c]
push eax
push dword [esp + 0x24]
call fcn.1009e140
add esp, 0xc
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x38]
mov ecx, edx
lea ecx, [edx - 1]
mov dword [esp + 0x38], edx
mov dword [eax + 0x38], ecx
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x20], ecx
mov eax, dword [eax + 0x14]
mov ebx, eax
test eax, eax
jle 0x1006c22f
mov eax, dword [esp + 0x1c]
xor edx, edx
xor esi, esi
lea ecx, [eax + 0x24]
mov eax, dword [esp + 0x64]
mov dword [esp + 0x14], edx
mov ebx, ecx
lea edi, [eax + edx]
test eax, eax
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 0x24]
cmove edi, ecx
mov ecx, dword [esp + 4]
add eax, esi
mov dword [esp + 0x18], eax
push eax
push dword [edi]
xor edi, edi
push edi
call fcn.10075b90
add esp, 0xc
mov ecx, dword [esp + 4]
mov edx, 0x32
push edi
push dword [esp + 0x24]
push dword [esp + 0x20]
call fcn.1004e520
add esp, 0xc
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x14]
add ebx, 8
inc esi
mov ecx, ebx
mov eax, dword [eax + 0x14]
add edx, 4
mov ebx, eax
cmp esi, eax
jl 0x1006c1c9
mov edx, dword [esp + 0x68]
test edx, edx
je 0x1006c2b1
mov ecx, dword [esp + 8]
call fcn.100984b0
mov esi, dword [esp + 4]
mov edi, dword [esp + 0x44]
mov dword [esp + 0x14], eax
mov edx, 0x5b
mov ecx, esi
push edi
mov eax, dword [esp + 0x20]
push dword [eax + 0x14]
push dword [esp + 0x38]
call fcn.1004e520
add esp, 0xc
mov ecx, esi
mov edx, eax
push ebx
push dword [esp + 0x18]
call fcn.1000f710
add esp, 8
mov ecx, esi
mov edx, 0x1e
push edi
push dword [esp + 0x24]
push dword [esp + 0x3c]
call fcn.1004e520
add esp, 0xc
mov ecx, dword [esi]
cmp byte [ecx + 0x51], 0
jne 0x1006c2f1
mov ecx, dword [esp + 4]
lea eax, [eax + eax*4]
mov ecx, dword [ecx + 0x68]
mov byte [ecx + eax*4 + 1], 0xfd
mov dword [ecx + eax*4 + 0x10], 0
jmp 0x1006c2f1
cmp dword [esp + 0x58], 0
je 0x1006c2f1
mov esi, dword [esp + 4]
mov edx, 0x1f
mov eax, dword [esi + 0x6c]
mov ecx, esi
add eax, 2
push dword [esp + 0x30]
push eax
push dword [esp + 0x3c]
call fcn.1004e520
add esp, 0xc
xor eax, eax
mov ecx, esi
mov edx, 0xb
push eax
push dword [esp + 0x24]
push eax
call fcn.1004e520
add esp, 0xc
mov eax, dword [esp + 0x24]
mov esi, dword [esp + 4]
mov edx, 0x48
cmp byte [eax + 0x24], 0
mov eax, 0x80
mov ecx, esi
cmovns edx, eax
xor edi, edi
push edi
push dword [esp + 0x50]
push edi
call fcn.1004e520
add esp, 0xc
mov eax, dword [esp + 0x34]
dec eax
push eax
mov eax, dword [esp + 0x20]
push dword [eax + 8]
push 0x101b447a
push dword [esp + 0x48]
push esi
call fcn.100a2f30
add esp, 0x14
mov ecx, esi
mov edx, 0x50
push edi
push 4
push dword [esp + 0x50]
call fcn.1004e520
add esp, 0xc
mov ecx, dword [esi + 0xc]
neg dword [esp + 0x38]
mov eax, dword [ecx + 0x38]
add eax, dword [ecx + 0x3c]
js 0x1006c39b
mov eax, dword [esp + 4]
mov ecx, dword [ecx + 0x40]
mov edx, dword [esp + 0x38]
mov eax, dword [eax + 0x6c]
mov dword [ecx + edx*4], eax
mov edx, dword [esp + 0x64]
test edx, edx
je 0x1006c382
mov ecx, dword [esp + 8]
call fcn.10019c40
mov eax, dword [esp + 0x1c]
inc dword [esp + 0x34]
mov eax, dword [eax + 4]
test eax, eax
mov dword [esp + 0x1c], eax
jne 0x1006c153
jmp 0x1006c3ad
mov edx, dword [esp + 4]
push dword [esp + 0x38]
call fcn.10078ce0
add esp, 4
jmp 0x1006c371
mov eax, dword [esp + 0x50]
mov esi, dword [esp + 4]
xor edi, edi
mov edx, 5
inc eax
mov ecx, esi
push edi
push eax
push edi
call fcn.1004e520
add esp, 0xc
mov edx, dword [esi]
mov eax, dword [esi + 0x6c]
mov ecx, 0x101d4a28
cmp byte [edx + 0x51], 0
je 0x1006e191
mov dword [ecx + 8], eax
jmp 0x1006bef6
or edx, esi
cmp dword [esp + 0x14], 1
mov dword [eax + 0x54], edx
jne 0x1006bf73
mov ecx, eax
call fcn.1001d1e0
jmp 0x1006bf73
cmp dword [esp + 0xc], 0
je 0x1006b737
mov esi, dword [esp + 8]
mov edx, dword [esp + 0xc]
mov ecx, esi
push dword [esp + 0x28]
call fcn.10017e00
add esp, 4
test eax, eax
mov dword [esp + 0x18], eax
je 0x1006acb3
mov eax, dword [esp + 0x18]
mov edi, dword [eax + 0x10]
test edi, edi
je 0x1006acb3
mov eax, dword [esp + 0x18]
mov eax, dword [eax + 0x48]
test eax, eax
je 0x1006e273
mov ecx, dword [esp + 8]
mov edx, dword [ecx + 0x10]
add edx, 0xc
xor ecx, ecx
dec ecx
inc ecx
cmp dword [edx], eax
lea edx, [edx + 0x10]
jne 0x1006c45a
jmp 0x1006e278
mov eax, dword [esp + 8]
xor ebx, ebx
mov edi, dword [eax + 0x18]
mov eax, dword [esp + 0x10]
shr edi, 5
mov dword [eax + 0x2c], 6
and edi, 1
mov esi, dword [ebx*4 + 0x101d493c]
test esi, esi
jne 0x1006c497
inc ebx
cmp ebx, 0x17
jne 0x1006c481
jmp 0x1006d1a0
mov ecx, dword [esp + 4]
mov edx, esi
push edi
push 1
call fcn.100a30d0
add esp, 8
mov esi, dword [esi + 0x24]
jmp 0x1006c488
cmp dword [esp + 0xc], 0
je 0x1006c4c9
mov ecx, dword [esp + 0xc]
lea edx, [esp + 0x68]
call fcn.10019360
test eax, eax
je 0x1006db28
call sym.nss3.dll_sqlite3_initialize
xor esi, esi
dec esi
test eax, eax
mov edi, esi
je 0x1006da05
mov ecx, dword [esp + 4]
mov edx, esi
push edi
jmp 0x1006af51
cmp dword [esp + 0xc], 0
je 0x1006c507
mov ecx, dword [esp + 0xc]
lea edx, [esp + 0x68]
call fcn.1004b9f0
test eax, eax
je 0x1006c507
mov esi, dword [esp + 0x68]
test esi, esi
jg 0x1006c514
mov esi, bind
mov dword [esp + 0x68], getsockname
mov ecx, dword [esp + 0x10]
mov edi, dword [esp + 0x1c]
xor edx, edx
push edi
call fcn.1007ac40
add esp, 4
mov ebx, dword [esp + 4]
xor eax, eax
mov edx, 0x45
mov ecx, ebx
push eax
xor eax, eax
inc eax
push eax
push esi
call fcn.1004e520
add esp, 0xc
mov ecx, ebx
xor eax, eax
mov edx, 0x3c
push eax
push eax
push edi
call fcn.1004e520
add esp, 0xc
mov esi, eax
mov ecx, ebx
xor eax, eax
mov edx, 0x50
push eax
push eax
xor edi, edi
inc edi
push edi
call fcn.1004e520
add esp, 0xc
mov ecx, ebx
xor eax, eax
mov edx, 0x52
push eax
push 0xffffffffffffffff
push edi
call fcn.1004e520
add esp, 0xc
mov ecx, ebx
xor eax, eax
mov edx, 0x30
push eax
push esi
push edi
call fcn.1004e520
add esp, 0xc
mov edx, dword [ebx]
mov eax, dword [ebx + 0x6c]
mov ecx, 0x101d4a28
cmp byte [edx + 0x51], 0
jne 0x1006c5bd
lea ecx, [eax - 1]
test esi, esi
mov edx, dword [esp + 4]
cmovns ecx, esi
lea ecx, [ecx + ecx*4]
shl ecx, 2
add ecx, dword [edx + 0x68]
mov dword [ecx + 8], eax
jmp 0x1006af59
cmp dword [esp + 0xc], 0
je 0x1006b737
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xc]
push dword [esp + 0x28]
call fcn.1004b400
add esp, 4
mov ebx, eax
test eax, eax
je 0x1006db71
mov eax, dword [ebx + 0x18]
test eax, eax
je 0x1006ddc5
mov ecx, dword [esp + 8]
mov edx, dword [ecx + 0x10]
add edx, 0xc
xor ecx, ecx
dec ecx
inc ecx
cmp dword [edx], eax
lea edx, [edx + 0x10]
jne 0x1006c606
jmp 0x1006ddca
cmp dword [esp + 0xc], 0
je 0x1006b737
mov esi, dword [esp + 8]
mov edx, dword [esp + 0xc]
mov ecx, esi
push dword [esp + 0x28]
call fcn.10017e00
add esp, 4
test eax, eax
je 0x1006acb3
mov ebx, eax
mov eax, dword [eax + 0x48]
test eax, eax
je 0x1006deda
mov ecx, dword [esp + 8]
mov edx, dword [ecx + 0x10]
add edx, 0xc
xor ecx, ecx
dec ecx
inc ecx
cmp dword [edx], eax
lea edx, [edx + 0x10]
jne 0x1006c656
jmp 0x1006dedf
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x14], 0
mov dword [esp + 0x30], 0x64
mov al, byte [eax]
mov byte [esp + 0x38], al
mov eax, dword [ebp + 8]
cmp dword [eax], 1
mov eax, 0
mov dword [ecx + 0x2c], 6
mov dword [esp + 0x68], 0x64
sbb eax, eax
or eax, dword [esp + 0x1c]
cmp dword [esp + 0xc], 0
mov dword [esp + 0x28], eax
je 0x1006c6d1
mov ecx, dword [esp + 0xc]
lea edx, [esp + 0x68]
call fcn.1004b9f0
test eax, eax
je 0x1006dbc6
mov eax, dword [esp + 0x68]
test eax, eax
jle 0x1006df50
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 4]
mov edx, 0x45
dec eax
push 0
push 1
push eax
call fcn.1004e520
add esp, 0xc
cmp dword [esp + 0x14], 0
mov ecx, dword [esp + 8]
setne al
cmp dword [ecx + 0x14], 0
jle 0x1006d1c8
and byte [esp + 0x38], 0xdf
xor ecx, ecx
mov cl, al
mov dword [esp + 0x24], 0
mov dword [esp + 0x58], ecx
cmp dword [esp + 0x28], 0
js 0x1006c73f
mov eax, dword [esp + 0x24]
cmp eax, dword [esp + 0x28]
je 0x1006c73f
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 8]
inc ecx
cmp ecx, dword [eax + 0x14]
mov dword [esp + 0x24], ecx
jl 0x1006c717
jmp 0x1006d1c8
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0x74]
test eax, eax
cmove eax, ecx
mov ecx, dword [esp + 0x24]
xor esi, esi
mov edx, dword [eax + 0x54]
inc esi
shl esi, cl
bt edx, ecx
jae 0x1006d184
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x24]
mov eax, dword [eax + 0x10]
shl ecx, 4
mov dword [esp + 0x1c], ecx
mov eax, dword [eax + ecx + 0xc]
mov dword [esp + 0x18], eax
mov eax, dword [eax + 0x10]
test eax, eax
je 0x1006c728
xor edi, edi
xor ecx, ecx
cmp dword [esp + 0x14], 0
mov esi, dword [eax + 8]
je 0x1006c795
cmp dword [esp + 0x14], esi
jne 0x1006c7ba
xor edx, edx
test byte [esi + 0x24], 0x80
mov ebx, dword [esi + 8]
sete dl
test ebx, ebx
je 0x1006c7c2
xor esi, esi
mov ebx, dword [ebx + 0x14]
inc esi
test ebx, ebx
jne 0x1006c7a7
add edx, ecx
add edx, esi
mov ecx, edx
cmp esi, edi
cmovge edi, esi
mov eax, dword [eax]
test eax, eax
jne 0x1006c785
jmp 0x1006c7c8
add ecx, edx
xor esi, esi
jmp 0x1006c7b5
test ecx, ecx
je 0x1006c728
add ecx, dword [esp + 0x58]
lea edx, [ecx*4 + 4]
mov ecx, dword [esp + 8]
push 0
call fcn.10019ed0
add esp, 4
test eax, eax
je 0x1006d1c8
jmp 0x1006e73a
test eax, eax
mov dword [esp + 0x34], eax
je 0x1006c728
mov edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x14]
mov edx, dword [edx + 8]
test ecx, ecx
setne al
cmp ecx, edx
mov dword [esp + 0x18], edx
setne cl
test al, cl
jne 0x1006caf6
mov eax, dword [esp + 0x18]
cmp dword [eax + 0x1c], 0
je 0x1006caf6
mov eax, dword [esp + 0x18]
mov dword [esp + 0x1c], 0
cmp byte [eax + 0x24], 0
js 0x1006d070
mov edi, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
lea eax, [esp + 0x60]
mov edx, edi
push eax
lea eax, [esp + 0x68]
push eax
mov esi, 0
push esi
push 1
push esi
push 0x60
call fcn.1009b500
add esp, 0x18
mov ecx, dword [esp + 4]
mov edx, 0x45
push esi
push 7
push esi
call fcn.1004e520
add esp, 0xc
mov esi, dword [edi + 8]
test esi, esi
je 0x1006c8ad
mov edi, 8
mov ecx, dword [esp + 4]
xor eax, eax
mov edx, 0x45
push eax
push edi
push eax
call fcn.1004e520
add esp, 0xc
mov esi, dword [esi + 0x14]
inc edi
test esi, esi
jne 0x1006c88f
mov esi, dword [esp + 4]
xor edi, edi
mov edx, 0x25
mov ecx, esi
push edi
push edi
push dword [esp + 0x6c]
call fcn.1004e520
add esp, 0xc
mov ecx, esi
mov edx, 0x52
push edi
push 1
push 7
call fcn.1004e520
add esp, 0xc
cmp byte [esp + 0x38], 0x51
mov dword [esp + 0x48], eax
je 0x1006c922
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 4]
mov edx, 0x59
movsx eax, word [eax + 0x2c]
mov ecx, esi
dec eax
push 3
push eax
push dword [esp + 0x6c]
call fcn.1004e520
add esp, 0xc
mov eax, dword [esi + 0x6c]
test eax, eax
jle 0x1006c922
mov ecx, dword [esp + 4]
lea eax, [eax + eax*4]
mov ecx, dword [ecx + 0x68]
mov word [ecx + eax*4 - 0x12], 0x80
mov eax, dword [esp + 0x18]
movzx eax, word [eax + 0x2a]
test ax, ax
jle 0x1006ca68
xor ebx, ebx
xor esi, esi
mov ecx, dword [esp + 0x18]
movsx ecx, word [ecx + 0x28]
cmp esi, ecx
je 0x1006c951
mov ecx, dword [esp + 0x18]
mov ecx, dword [ecx + 4]
cmp byte [ecx + ebx + 0xc], 0
jne 0x1006c961
inc esi
movsx ecx, ax
add ebx, 0x14
cmp esi, ecx
jl 0x1006c937
jmp 0x1006ca68
mov edi, dword [esp + 4]
mov edx, dword [esp + 0x18]
mov ecx, edi
push 3
push esi
push dword [esp + 0x6c]
call fcn.10075b90
add esp, 0xc
mov ecx, dword [edi]
mov eax, 0x101d4a28
cmp byte [ecx + 0x51], 0
jne 0x1006c998
mov ecx, dword [esp + 4]
mov eax, dword [ecx + 0x68]
mov ecx, dword [ecx + 0x6c]
lea ecx, [ecx + ecx*4]
lea eax, [eax + ecx*4 - 0x14]
cmp byte [eax], 0x59
jne 0x1006c9b9
mov eax, dword [esp + 4]
mov eax, dword [eax + 0x6c]
test eax, eax
jle 0x1006c9b9
mov ecx, dword [esp + 4]
lea eax, [eax + eax*4]
mov ecx, dword [ecx + 0x68]
mov word [ecx + eax*4 - 0x12], 0x80
mov edi, dword [esp + 4]
xor eax, eax
mov edx, 0x33
mov ecx, edi
push eax
push eax
mov eax, 3
push eax
call fcn.1004e520
add esp, 0xc
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x2c], eax
mov eax, dword [ecx + 4]
push dword [eax + ebx]
push dword [ecx]
push str.NULL_value_in__s._s
push dword [esp + 0x14]
call fcn.1000f4f0
add esp, 0x10
mov dword [esp + 0x20], eax
mov ecx, edi
xor eax, eax
mov edx, 0x73
push eax
mov eax, 3
push eax
xor eax, eax
push eax
call fcn.1004e520
add esp, 0xc
mov ecx, edi
mov edx, eax
push 0xfffffffffffffff9
push dword [esp + 0x24]
call fcn.1000f710
add esp, 8
mov ecx, edi
call fcn.100a3220
mov edx, dword [edi]
mov eax, dword [edi + 0x6c]
mov ecx, 0x101d4a28
cmp byte [edx + 0x51], 0
jne 0x1006ca58
mov edx, dword [esp + 0x2c]
lea ecx, [eax - 1]
mov edi, dword [esp + 4]
test edx, edx
cmovns ecx, edx
lea ecx, [ecx + ecx*4]
shl ecx, 2
add ecx, dword [edi + 0x68]
mov dword [ecx + 8], eax
mov eax, dword [esp + 0x18]
movzx eax, word [eax + 0x2a]
jmp 0x1006c951
mov eax, dword [esp + 0x18]
mov edx, dword [eax + 0x18]
test edx, edx
je 0x1006caa8
mov eax, dword [esp + 8]
test byte [eax + 0x21], 2
jne 0x1006caa8
mov esi, dword [esp + 8]
mov ecx, esi
push 0
call fcn.100795e0
add esp, 4
cmp byte [esi + 0x51], 0
mov edi, eax
je 0x1006d129
test edi, edi
je 0x1006caa8
mov ecx, dword [esp + 8]
mov edx, edi
call fcn.1004c320
cmp byte [esp + 0x38], 0x51
jne 0x1006cb01
mov esi, dword [esp + 4]
mov edx, 5
mov ecx, esi
push 0
push dword [esp + 0x4c]
push dword [esp + 0x6c]
call fcn.1004e520
add esp, 0xc
mov edx, dword [esi]
mov eax, dword [esi + 0x6c]
mov ecx, 0x101d4a28
cmp byte [edx + 0x51], 0
jne 0x1006caf3
mov edx, dword [esp + 4]
mov ecx, dword [esp + 0x48]
mov edx, dword [edx + 0x68]
test ecx, ecx
cmovle ecx, eax
lea ecx, [ecx + ecx*4]
lea ecx, [edx + ecx*4 - 0x14]
mov dword [ecx + 8], eax
mov eax, dword [esp + 0x34]
mov eax, dword [eax]
jmp 0x1006c7f6
mov eax, dword [esp + 0x18]
mov eax, dword [eax + 8]
test eax, eax
je 0x1006ceed
mov edi, eax
xor eax, eax
xor ecx, ecx
mov dword [esp + 0x20], 0
dec ecx
mov dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x10]
mov esi, dword [ecx + 0x38]
dec esi
cmp dword [esp + 0x1c], edi
mov dword [ecx + 0x38], esi
jne 0x1006cb48
mov ecx, edi
mov ecx, dword [edi + 0x14]
inc dword [esp + 0x20]
mov edi, ecx
test ecx, ecx
jne 0x1006cb23
jmp 0x1006ceed
mov ecx, dword [esp + 0x10]
mov edx, edi
mov dword [esp + 0x4c], edi
push dword [esp + 0x2c]
push eax
lea eax, [esp + 0x64]
push eax
xor eax, eax
push eax
push eax
push dword [esp + 0x78]
call fcn.10082bd0
add esp, 0x18
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x20]
mov ebx, dword [esp + 4]
mov edx, 0x52
add eax, 8
mov ecx, ebx
mov dword [esp + 0x3c], eax
xor eax, eax
push eax
push 1
push dword [esp + 0x44]
call fcn.1004e520
add esp, 0xc
mov eax, dword [esp + 0x4c]
mov ecx, ebx
mov edx, 0x1e
movzx eax, word [eax + 0x34]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x60]
add eax, dword [esp + 0x20]
push dword [esp + 0x2c]
push esi
push eax
call fcn.1004e520
add esp, 0xc
mov ecx, dword [ebx]
mov dword [esp + 0x44], eax
cmp byte [ecx + 0x51], 0
jne 0x1006cbe7
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x3c]
mov eax, dword [eax + 0x68]
lea ecx, [ecx + ecx*4]
mov byte [eax + ecx*4 + 1], 0xfd
mov dword [eax + ecx*4 + 0x10], edx
mov ebx, dword [esp + 4]
xor esi, esi
mov edx, 0x73
mov ecx, ebx
push esi
mov eax, 3
push eax
push esi
call fcn.1004e520
add esp, 0xc
mov ecx, ebx
mov edx, eax
push esi
push str.row
call fcn.1000f710
add esp, 8
mov ecx, ebx
mov eax, 3
mov edx, 0x6e
push eax
push eax
push 7
call fcn.1004e520
add esp, 0xc
mov ecx, ebx
mov edx, 0x73
push esi
mov eax, 4
push eax
push esi
call fcn.1004e520
add esp, 0xc
mov ecx, ebx
mov edx, eax
push esi
push str._missing_from_index
call fcn.1000f710
add esp, 8
mov ecx, ebx
mov eax, 3
mov edx, 0x6e
push eax
push eax
mov eax, 4
push eax
call fcn.1004e520
add esp, 0xc
mov eax, dword [edi]
mov ecx, ebx
mov edx, 0x73
mov dword [esp + 0x3c], eax
push esi
mov eax, 4
push eax
push esi
call fcn.1004e520
add esp, 0xc
mov ecx, ebx
mov dword [esp + 0x54], eax
mov edx, eax
push esi
push dword [esp + 0x40]
call fcn.1000f710
add esp, 8
mov ecx, ebx
mov eax, 3
mov edx, 0x6e
push eax
push eax
mov eax, 4
push eax
call fcn.1004e520
add esp, 0xc
mov ecx, ebx
call fcn.100a3220
mov edx, dword [ebx]
mov dword [esp + 0x50], eax
mov eax, dword [ebx + 0x6c]
mov ecx, 0x101d4a28
cmp byte [edx + 0x51], 0
jne 0x1006ccf5
mov edx, dword [esp + 0x44]
lea ecx, [eax - 1]
mov esi, dword [esp + 4]
test edx, edx
cmovns ecx, edx
lea ecx, [ecx + ecx*4]
shl ecx, 2
add ecx, dword [esi + 0x68]
mov dword [ecx + 8], eax
cmp byte [edi + 0x36], 0
je 0x1006ce74
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x38]
lea esi, [edx - 1]
mov ecx, edx
mov dword [esp + 0x3c], edx
mov dword [eax + 0x38], esi
movzx eax, word [edi + 0x32]
test ax, ax
je 0x1006cd64
xor ebx, ebx
mov ecx, dword [edi + 4]
movzx ecx, word [ecx + ebx*2]
test cx, cx
js 0x1006cd3d
mov edx, dword [esp + 0x18]
lea ecx, [ecx + ecx*4]
mov edx, dword [edx + 4]
cmp byte [edx + ecx*4 + 0xc], 0
jne 0x1006cd5c
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 4]
mov edx, 0x32
add eax, ebx
push 0
push esi
push eax
call fcn.1004e520
add esp, 0xc
movzx eax, word [edi + 0x32]
inc ebx
movzx ecx, ax
cmp ebx, ecx
jb 0x1006cd20
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 4]
xor ebx, ebx
mov edx, 5
add eax, dword [esp + 0x20]
push ebx
xor ebx, ebx
push ebx
push eax
call fcn.1004e520
add esp, 0xc
mov ebx, dword [esp + 4]
mov dword [esp + 0x44], eax
xor eax, eax
mov edx, 0xb
mov ecx, ebx
push eax
push esi
push eax
call fcn.1004e520
add esp, 0xc
mov edx, dword [ebx]
mov eax, dword [ebx + 0x6c]
mov ecx, 0x101d4a28
cmp byte [edx + 0x51], 0
jne 0x1006cdc9
mov edx, dword [esp + 0x44]
lea ecx, [eax - 1]
mov ebx, dword [esp + 4]
test edx, edx
cmovns ecx, edx
lea ecx, [ecx + ecx*4]
shl ecx, 2
add ecx, dword [ebx + 0x68]
mov dword [ecx + 8], eax
mov ebx, dword [esp + 4]
mov edx, 0x27
movzx eax, word [edi + 0x32]
mov ecx, ebx
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x60]
add eax, dword [esp + 0x20]
push dword [esp + 0x2c]
push esi
push eax
call fcn.1004e520
add esp, 0xc
mov ecx, dword [ebx]
cmp byte [ecx + 0x51], 0
jne 0x1006ce14
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0x44]
lea eax, [eax + eax*4]
mov ecx, dword [ecx + 0x68]
mov byte [ecx + eax*4 + 1], 0xfd
mov dword [ecx + eax*4 + 0x10], edx
mov esi, dword [esp + 4]
xor ebx, ebx
mov edx, 0x73
mov ecx, esi
push ebx
push 3
push ebx
call fcn.1004e520
add esp, 0xc
mov ecx, esi
mov edx, eax
push ebx
push str.non_unique_entry_in_index
call fcn.1000f710
add esp, 8
mov ecx, esi
mov edx, 0xb
push ebx
push dword [esp + 0x58]
push ebx
call fcn.1004e520
add esp, 0xc
mov ecx, dword [esi + 0xc]
neg dword [esp + 0x3c]
mov eax, dword [ecx + 0x38]
add eax, dword [ecx + 0x3c]
js 0x1006ced0
mov eax, dword [esp + 4]
mov ecx, dword [ecx + 0x40]
mov edx, dword [esp + 0x3c]
mov eax, dword [eax + 0x6c]
mov dword [ecx + edx*4], eax
mov eax, dword [esp + 4]
mov ecx, 0x101d4a28
mov edx, dword [eax]
mov eax, dword [eax + 0x6c]
cmp byte [edx + 0x51], 0
jne 0x1006cea1
mov edx, dword [esp + 0x50]
lea ecx, [eax - 1]
mov esi, dword [esp + 4]
test edx, edx
cmovns ecx, edx
lea ecx, [ecx + ecx*4]
shl ecx, 2
add ecx, dword [esi + 0x68]
mov dword [ecx + 8], eax
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x1006cec9
mov ecx, dword [esp + 0x10]
not eax
mov edx, dword [ecx + 8]
mov ecx, dword [edx + 0xc]
mov esi, dword [ecx + 0x38]
add esi, dword [ecx + 0x3c]
js 0x1006cee2
mov edx, dword [edx + 0x6c]
mov ecx, dword [ecx + 0x40]
mov dword [ecx + eax*4], edx
mov eax, edi
jmp 0x1006cb34
mov edx, dword [esp + 4]
push dword [esp + 0x3c]
call fcn.10078ce0
add esp, 4
jmp 0x1006ce74
push eax
call fcn.10078ce0
add esp, 4
jmp 0x1006cec9
mov esi, dword [esp + 4]
mov edx, 5
mov ecx, esi
push 0
push dword [esp + 0x4c]
push dword [esp + 0x6c]
call fcn.1004e520
add esp, 0xc
mov edx, dword [esi]
mov eax, dword [esi + 0x6c]
mov ecx, 0x101d4a28
cmp byte [edx + 0x51], 0
jne 0x1006cf31
mov edx, dword [esp + 4]
mov ecx, dword [esp + 0x48]
mov edx, dword [edx + 0x68]
test ecx, ecx
cmovle ecx, eax
lea ecx, [ecx + ecx*4]
lea ecx, [edx + ecx*4 - 0x14]
mov esi, dword [esp + 4]
xor edi, edi
mov dword [ecx + 8], eax
mov edx, 0x73
mov ecx, esi
push edi
push 2
push edi
call fcn.1004e520
add esp, 0xc
mov ecx, esi
mov edx, eax
push edi
push str.wrong__of_entries_in_index
call fcn.1000f710
add esp, 8
mov eax, dword [esp + 0x18]
mov esi, dword [eax + 8]
test esi, esi
je 0x1006caf6
xor ebx, ebx
cmp dword [esp + 0x1c], esi
jne 0x1006cf83
mov esi, dword [esi + 0x14]
inc ebx
test esi, esi
jne 0x1006cf70
jmp 0x1006caf6
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 4]
xor edi, edi
mov edx, 0x5c
add eax, ebx
push edi
mov edi, 3
push edi
push eax
call fcn.1004e520
add esp, 0xc
mov edi, dword [esp + 4]
lea eax, [ebx + 8]
mov edx, 0x35
mov dword [esp + 0x18], eax
mov eax, 3
mov ecx, edi
push eax
xor eax, eax
push eax
push dword [esp + 0x20]
call fcn.1004e520
add esp, 0xc
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x6c]
test eax, eax
jle 0x1006cfe7
mov ecx, dword [esp + 4]
lea eax, [eax + eax*4]
mov ecx, dword [ecx + 0x68]
mov word [ecx + eax*4 - 0x12], 0x90
mov eax, dword [esi]
mov edi, dword [esp + 4]
mov edx, 0x73
mov dword [esp + 0x18], eax
mov ecx, edi
xor eax, eax
push eax
mov eax, 4
push eax
xor eax, eax
push eax
call fcn.1004e520
add esp, 0xc
mov edx, eax
mov ecx, edi
xor eax, eax
push eax
push dword [esp + 0x1c]
call fcn.1000f710
add esp, 8
mov ecx, edi
mov edx, 0x6e
push 3
push 2
mov eax, 4
push eax
call fcn.1004e520
add esp, 0xc
mov ecx, edi
call fcn.100a3220
mov edx, dword [edi]
mov eax, dword [edi + 0x6c]
mov ecx, 0x101d4a28
cmp byte [edx + 0x51], 0
jne 0x1006d068
mov edx, dword [esp + 0x20]
lea ecx, [eax - 1]
mov edi, dword [esp + 4]
test edx, edx
cmovns ecx, edx
lea ecx, [ecx + ecx*4]
shl ecx, 2
add ecx, dword [edi + 0x68]
mov dword [ecx + 8], eax
jmp 0x1006cf76
mov eax, dword [esp + 0x18]
mov eax, dword [eax + 8]
test eax, eax
je 0x1006c847
mov ecx, dword [eax + 0x38]
and ecx, 3
cmp ecx, 2
je 0x1006d08f
mov eax, dword [eax + 0x14]
jmp 0x1006d077
mov dword [esp + 0x1c], eax
jmp 0x1006c847
push 0
push dword [esp + 0x50]
push dword [ebx]
push dword [esp + 0x1c]
call fcn.100755f0
add esp, 0x10
dec esi
add ebx, 0xffffffec
cmp esi, 2
jg 0x1006d098
jmp 0x1006d151
mov eax, dword [esp + 0x10]
xor ebx, ebx
mov dword [eax + 0x34], ebx
mov eax, dword [esp + 0x18]
push dword [eax]
push str.CHECK_constraint_failed_in__s
push dword [esp + 0x10]
call fcn.1000f4f0
add esp, 0xc
mov esi, dword [esp + 4]
mov dword [esp + 0x2c], eax
mov edx, 0x73
mov ecx, esi
push ebx
push 3
push ebx
call fcn.1004e520
add esp, 0xc
mov ecx, esi
mov edx, eax
push 0xfffffffffffffff9
push dword [esp + 0x30]
call fcn.1000f710
add esp, 8
mov ecx, esi
call fcn.100a3220
mov ecx, dword [esi + 0xc]
xor eax, eax
inc eax
sub eax, dword [esp + 0x20]
mov edx, dword [ecx + 0x38]
add edx, dword [ecx + 0x3c]
jns 0x1006ebea
jmp 0x1006ec94
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0x38]
mov dword [esp + 0x20], eax
add eax, 0xfffffffe
mov dword [ecx + 0x38], eax
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x64]
inc eax
mov dword [ecx + 0x34], eax
mov eax, dword [edi]
cmp eax, 2
jge 0x1006ec14
push 0x10
push dword [esp + 0x30]
push dword [edi + 4]
push dword [esp + 0x1c]
call fcn.1007a4f0
add esp, 0x10
mov eax, dword [esp + 4]
mov ecx, dword [eax + 0xc]
mov eax, dword [esp + 0x20]
mov edx, dword [ecx + 0x38]
neg eax
add edx, dword [ecx + 0x3c]
jns 0x1006ec3e
jmp 0x1006ec2c
or edx, esi
cmp dword [esp + 0x24], 1
mov dword [eax + 0x54], edx
jne 0x1006c760
mov ecx, eax
call fcn.1001d1e0
jmp 0x1006c760
mov eax, dword [esp + 8]
mov esi, dword [eax + 0x184]
test esi, esi
je 0x1006af59
mov edx, dword [esi + 8]
mov ecx, dword [esp + 4]
push edi
push 0
call fcn.100a30d0
add esp, 8
mov esi, dword [esi]
jmp 0x1006d1aa
mov ecx, dword [esp + 4]
mov edx, 7
push 0x10198ef0
call fcn.1000f660
add esp, 4
test eax, eax
je 0x1006d202
xor ecx, ecx
mov dl, 0xff
inc ecx
sub ecx, dword [esp + 0x30]
mov dword [eax + 8], ecx
mov byte [eax + 0x29], dl
mov dword [eax + 0x38], 0x101b0cc7
mov byte [eax + 0x65], dl
mov dword [eax + 0x74], str.database_disk_image_is_malformed
mov eax, dword [esp + 4]
mov ecx, 0x101d4a28
mov edx, dword [eax]
mov eax, dword [eax + 0x6c]
add eax, 0xfffffffe
cmp byte [edx + 0x51], 0
jne 0x1006d220
mov ecx, dword [esp + 4]
mov ecx, dword [ecx + 0x68]
mov dword [ecx + 0xc], eax
jmp 0x1006af59
cmp dword [esp + 0xc], 0
je 0x1006da56
mov ecx, dword [esp + 0xc]
lea esi, [esp + 0x68]
mov edx, esi
mov dword [esi], 1
call fcn.1004b9f0
mov esi, dword [esi]
test eax, eax
jne 0x1006e71f
mov ecx, dword [esp + 0xc]
xor edx, edx
test esi, esi
setne dl
call fcn.100a2e40
mov esi, dword [esp + 8]
xor ecx, ecx
test al, al
setne cl
shl ecx, 5
mov eax, dword [esi + 0x20]
and eax, 0xffffffdf
or ecx, eax
mov dword [esi + 0x20], ecx
mov ecx, esi
call fcn.100a2d40
jmp 0x1006acb3
cmp dword [esp + 0xc], 0
je 0x1006b737
mov ecx, dword [esp + 0xc]
xor edx, edx
call fcn.100a2e40
mov esi, dword [esp + 8]
xor edx, edx
test al, al
setne dl
mov ecx, esi
call fcn.100a3160
jmp 0x1006acb3
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 8]
mov dword [eax + 0x2c], 2
mov esi, dword [ecx + 0x194]
test esi, esi
je 0x1006af59
xor edi, edi
mov eax, dword [esi + 8]
push dword [eax]
push edi
inc edi
push 0x101ae032
push 1
push dword [esp + 0x14]
call fcn.100a2f30
add esp, 0x14
mov esi, dword [esi]
test esi, esi
jne 0x1006d2d3
jmp 0x1006af59
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 4]
mov esi, 0xffffffd8
xor ebx, ebx
mov dword [eax + 0x2c], 1
mov eax, dword [esi + 0x1019a528]
mov ecx, edi
mov edx, 0x73
mov dword [esp + 0x14], eax
push ebx
xor eax, eax
inc eax
push eax
push ebx
call fcn.1004e520
add esp, 0xc
mov ecx, edi
mov edx, eax
push ebx
push dword [esp + 0x18]
call fcn.1000f710
add esp, 8
mov ecx, edi
mov edx, 0x50
push ebx
xor eax, eax
inc eax
push eax
push eax
call fcn.1004e520
add esp, 0xc
add esi, 4
jne 0x1006d30e
mov eax, dword [esp + 4]
and byte [eax + 0x98], 0xdf
jmp 0x1006af59
cmp dword [esp + 0xc], 0
je 0x1006da71
mov eax, dword [esp + 0xc]
cmp byte [eax], 0
je 0x1006d3af
mov eax, dword [esp + 8]
mov esi, dword [eax]
mov ecx, dword [esi + 0x20]
call dword [section..00cfg]
lea eax, [esp + 0x68]
push eax
push 1
push dword [esp + 0x14]
push esi
call ecx
add esp, 0x10
test eax, eax
jne 0x1006dac2
cmp dword [esp + 0x68], 0
je 0x1006dac2
push dword [0x101d490c]
call sym.nss3.dll_sqlite3_free
add esp, 4
mov eax, dword [esp + 0xc]
cmp byte [eax], 0
je 0x1006dcbb
push dword [esp + 0xc]
push 0x101aef39
call sym.nss3.dll_sqlite3_mprintf
add esp, 8
mov dword [0x101d490c], eax
jmp 0x1006b319
mov ecx, dword [esp + 0x10]
call fcn.1001d1e0
test edi, edi
je 0x1006af77
test eax, eax
je 0x1006a637
jmp 0x1006af77
cmp al, 0x5b
movzx eax, al
mov esi, 0x5d
mov edi, ecx
cmovne esi, eax
xor edx, edx
inc edx
mov eax, dword [esp + 0x40]
mov ecx, esi
mov al, byte [eax + edx]
cmp al, cl
jne 0x1006d439
mov eax, dword [esp + 0x40]
mov ecx, esi
cmp byte [eax + edx + 1], cl
jne 0x1006d4d2
mov eax, esi
inc edx
mov byte [edi], al
jmp 0x1006d43b
mov byte [edi], al
inc edx
inc edi
jmp 0x1006d415
mov esi, eax
test eax, eax
jne 0x1006d8dd
mov edi, dword [esp + 4]
xor edx, edx
inc edx
mov ecx, edi
call fcn.1004ea10
mov eax, dword [edi]
cmp byte [eax + 0x51], 0
jne 0x1006d479
mov eax, dword [esp + 4]
mov edx, dword [esp + 0x70]
mov ecx, dword [eax + 0x74]
xor eax, eax
dec eax
push eax
push 1
push eax
call fcn.1000ad80
add esp, 0xc
mov edi, dword [esp + 0x70]
test edi, edi
je 0x1006dc7c
mov esi, dword [esp + 4]
xor ebx, ebx
mov edx, 0x73
mov ecx, esi
push ebx
xor eax, eax
inc eax
push eax
push ebx
call fcn.1004e520
add esp, 0xc
mov ecx, esi
mov edx, eax
push ebx
push edi
call fcn.1000f710
add esp, 8
mov ecx, esi
mov edx, 0x50
push ebx
xor eax, eax
inc eax
push eax
push eax
call fcn.1004e520
add esp, 0xc
mov eax, dword [esp + 0x70]
push eax
call sym.nss3.dll_sqlite3_free
jmp 0x1006af56
mov byte [edi], 0
jmp 0x1006a6dd
cmp dword [esp + 0xc], 0
je 0x1006d50c
mov ecx, dword [esp + 0xc]
lea edx, [esp + 0x68]
call fcn.10019360
test eax, eax
jne 0x1006d50c
cmp dword [esp + 0x6c], 0
js 0x1006d50c
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 8]
and eax, 0x7fffffff
mov dword [ecx + 0x1cc], eax
mov eax, dword [esp + 8]
mov edx, dword [eax + 0x1cc]
mov ecx, dword [esp + 4]
mov eax, edx
jmp 0x1006af4d
mov ecx, dword [esp + 0xc]
call fcn.100a2cd0
mov ecx, dword [ebp + 8]
cmp eax, 0xffffffff
mov ecx, dword [ecx + 4]
jne 0x1006d912
test ecx, ecx
jne 0x1006d912
mov eax, dword [esp + 8]
lea ecx, [eax + 0x53]
jmp 0x1006d93f
mov ecx, dword [esp + 0x10]
xor eax, eax
mov dword [esp + 0x6c], eax
mov dword [esp + 0x68], eax
mov eax, dword [ecx + 0x74]
test eax, eax
cmove eax, ecx
mov ecx, dword [esp + 0x1c]
xor esi, esi
mov edx, dword [eax + 0x54]
inc esi
shl esi, cl
bt edx, ecx
jae 0x1006dad8
mov eax, dword [esp + 0x10]
mov esi, dword [eax + 0x2c]
inc esi
mov dword [eax + 0x2c], esi
mov eax, dword [esp + 0x40]
mov al, byte [eax]
and al, 0xdf
cmp al, 0x50
jne 0x1006d988
mov ecx, dword [esp + 4]
mov edx, 0xa9
push 0
jmp 0x1006d9b8
cmp dword [esp + 0xc], 0
je 0x1006d675
mov ecx, dword [esp + 0xc]
lea esi, [esp + 0x68]
mov edx, esi
call fcn.10019360
mov eax, dword [esi + 4]
test eax, eax
js 0x1006dc55
mov ecx, dword [esp + 0x68]
mov edx, dword [ebp + 8]
cmp dword [edx + 4], 0
jne 0x1006d5df
mov edx, dword [esp + 8]
mov dword [edx + 0x30], ecx
mov dword [edx + 0x34], eax
mov eax, dword [esp + 8]
mov esi, dword [eax + 0x14]
test esi, esi
jle 0x1006d675
mov ebx, dword [esp + 0x1c]
lea edi, [esi + 1]
shl esi, 4
add esi, 0xfffffff4
neg ebx
mov eax, dword [esp + 8]
mov eax, dword [eax + 0x10]
mov ecx, dword [eax + esi]
test ecx, ecx
je 0x1006d61e
mov eax, ebx
lea eax, [ebx + edi]
cmp eax, 2
je 0x1006d629
mov eax, dword [ebp + 8]
cmp dword [eax + 4], 0
je 0x1006d629
dec edi
add esi, 0xfffffff0
cmp edi, 1
jg 0x1006d5fd
jmp 0x1006d675
mov edx, dword [esp + 0x68]
push dword [esp + 0x6c]
call fcn.100a2d90
add esp, 4
jmp 0x1006d61e
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 8]
mov dword [eax + 0x2c], 1
mov esi, dword [ecx + 0x168]
test esi, esi
je 0x1006af59
mov eax, dword [esi + 8]
push dword [eax + 4]
push 0x101aef3a
push 1
push dword [esp + 0x10]
call fcn.100a2f30
add esp, 0x10
mov esi, dword [esi]
jmp 0x1006d650
xor eax, eax
lea ecx, [esp + 0x68]
dec eax
mov dword [ecx + 4], eax
mov dword [ecx], eax
push ecx
push 0x12
push dword [esp + 0x30]
push dword [esp + 0x14]
call sym.nss3.dll_sqlite3_file_control
add esp, 0x10
cmp eax, 0xc
je 0x1006af59
test eax, eax
jne 0x1006db1c
mov edx, dword [esp + 0x68]
mov ecx, dword [esp + 4]
push dword [esp + 0x6c]
jmp 0x1006af51
cmp dword [esp + 0xc], 0
je 0x1006daf4
mov eax, dword [esp + 0xc]
cmp byte [eax], 0
je 0x1006d6fd
mov eax, dword [esp + 8]
mov esi, dword [eax]
mov ecx, dword [esi + 0x20]
call dword [section..00cfg]
lea eax, [esp + 0x68]
push eax
push 1
push dword [esp + 0x14]
push esi
call ecx
add esp, 0x10
test eax, eax
jne 0x1006dac2
cmp dword [esp + 0x68], 0
je 0x1006dac2
mov eax, dword [esp + 8]
cmp byte [eax + 0x50], 1
ja 0x1006d710
mov ecx, dword [esp + 0x10]
call fcn.100a2df0
push dword [0x101d4910]
call sym.nss3.dll_sqlite3_free
add esp, 4
mov eax, dword [esp + 0xc]
cmp byte [eax], 0
je 0x1006dfc8
push dword [esp + 0xc]
push 0x101aef39
call sym.nss3.dll_sqlite3_mprintf
add esp, 8
mov dword [0x101d4910], eax
jmp 0x1006b319
cmp dword [esp + 0xc], 0
je 0x1006d783
mov ecx, dword [esp + 0xc]
lea edx, [esp + 0x68]
call fcn.10019360
test eax, eax
jne 0x1006d783
cmp dword [esp + 0x6c], 0
js 0x1006d783
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 8]
mov ecx, 8
and eax, 0x7fffffff
cmp eax, 8
cmovb ecx, eax
mov dword [edx + 0x98], ecx
mov eax, dword [esp + 8]
mov edx, dword [eax + 0x98]
jmp 0x1006d516
cmp al, 0x5b
movzx ecx, al
mov eax, 0x5d
cmovne eax, ecx
xor edx, edx
mov ecx, esi
inc edx
mov bl, byte [esi + edx]
cmp bl, al
jne 0x1006d7b6
cmp byte [esi + edx + 1], al
jne 0x1006d7bc
inc edx
mov byte [ecx], al
jmp 0x1006d7b8
mov byte [ecx], bl
inc edx
inc ecx
jmp 0x1006d7a4
mov byte [ecx], 0
jmp 0x1006a78c
push dword [esp + 8]
call fcn.10014570
jmp 0x1006af56
cmp dword [esp + 0xc], 0
je 0x1006d7ee
mov ecx, dword [esp + 0xc]
lea edx, [esp + 0x68]
call fcn.10019360
test eax, eax
je 0x1006e907
call sym.nss3.dll_sqlite3_initialize
xor esi, esi
dec esi
test eax, eax
mov edi, esi
jne 0x1006c4db
mov esi, dword [0x101d47e8]
test esi, esi
je 0x1006e53d
mov ecx, dword [0x101d2070]
call dword [section..00cfg]
push esi
call ecx
add esp, 4
mov ebx, dword [0x101d47e8]
mov edi, dword [0x101d47f4]
mov esi, dword [0x101d47f0]
jmp 0x1006da37
mov edi, dword [esp + 0x2c]
mov edx, dword [edi]
or edx, dword [edi + 4]
je 0x1006dc48
test al, 0x20
jne 0x1006dc6d
mov edi, eax
and edi, 0x40
sete dl
shr edi, 5
or edi, 1
mov dword [esp + 0x18], edi
jmp 0x1006b9a1
mov ecx, dword [ecx + 8]
mov dword [esp + 0x24], ecx
jmp 0x1006b9d1
mov edi, dword [esp + 0x1c]
push edi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
lea eax, [edi + eax + 1]
mov dword [esp + 0x28], eax
jmp 0x1006b9f4
mov edx, dword [esp + 0x10]
mov edi, dword [eax + 0x14c]
mov esi, dword [edx + 0xf4]
call dword [section..00cfg]
push esi
push dword [esp + 0x2c]
push dword [esp + 0x14]
push dword [esp + 0x4c]
push 0x13
push edi
call ecx
add esp, 0x18
cmp eax, 1
jne 0x1006dc1f
push str.not_authorized
mov esi, dword [esp + 0x14]
push esi
call fcn.1000f470
add esp, 8
mov dword [esi + 0xc], 0x17
jmp 0x1006af59
mov eax, dword [esp + 0x70]
test eax, eax
je 0x1006d903
push eax
push 0x101aef39
push dword [esp + 0x18]
call fcn.1000f470
add esp, 0xc
push dword [esp + 0x70]
call sym.nss3.dll_sqlite3_free
add esp, 4
mov eax, dword [esp + 0x10]
inc dword [eax + 0x24]
mov dword [eax + 0xc], esi
jmp 0x1006af59
test ecx, ecx
je 0x1006dd64
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
shl ecx, 4
test eax, eax
mov ecx, dword [edx + ecx + 4]
mov ecx, dword [ecx + 4]
mov ecx, dword [ecx]
js 0x1006d93c
cmp byte [ecx + 0xc], 0
je 0x1006e1af
add ecx, 4
cmp byte [ecx], 1
mov ebx, dword [esp + 4]
mov eax, str.exclusive
mov esi, str.normal
mov edx, 0x73
cmove esi, eax
xor edi, edi
xor eax, eax
mov ecx, ebx
inc eax
push edi
push eax
push edi
call fcn.1004e520
add esp, 0xc
mov ecx, ebx
mov edx, eax
push edi
push esi
call fcn.1000f710
add esp, 8
mov ecx, ebx
mov edx, 0x50
push edi
xor eax, eax
inc eax
jmp 0x1006bd7e
cmp dword [esp + 0xc], 0
je 0x1006d9a4
mov ecx, dword [esp + 0xc]
lea edx, [esp + 0x68]
call fcn.10019360
test eax, eax
je 0x1006e1cb
xor eax, eax
mov dword [esp + 0x6c], eax
mov dword [esp + 0x68], eax
mov ecx, dword [esp + 4]
mov edx, 0xaa
push eax
push esi
push dword [esp + 0x24]
call fcn.1004e520
add esp, 0xc
mov ecx, dword [esp + 4]
mov edx, 0x50
push 0
push 1
push esi
jmp 0x1006bd80
mov ecx, dword [esp + 0x10]
call fcn.1004eb80
test eax, eax
jne 0x1006b737
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
movzx eax, byte [eax + 0x4e]
cmp eax, 8
je 0x1006b737
mov esi, dword [eax*8 + 0x10198f0c]
jmp 0x1006da7f
mov esi, dword [0x101d47e8]
test esi, esi
je 0x1006df70
mov ecx, dword [0x101d2070]
call dword [section..00cfg]
push esi
call ecx
add esp, 4
mov ebx, dword [0x101d47e8]
mov edi, dword [0x101d47fc]
mov esi, dword [0x101d47f8]
test ebx, ebx
je 0x1006c4db
mov ecx, dword [0x101d2078]
call dword [section..00cfg]
push ebx
call ecx
add esp, 4
jmp 0x1006c4db
mov eax, dword [esp + 8]
xor edx, edx
test byte [eax + 0x20], 0x20
jne 0x1006e8ea
mov ecx, dword [esp + 4]
mov eax, edx
jmp 0x1006b72b
mov esi, dword [0x101d490c]
test esi, esi
je 0x1006b737
mov ebx, dword [esp + 4]
xor edi, edi
xor eax, eax
mov edx, 0x73
inc eax
mov ecx, ebx
push edi
push eax
push edi
call fcn.1004e520
add esp, 0xc
mov ecx, ebx
mov edx, eax
push edi
push esi
call fcn.1000f710
add esp, 8
mov ecx, ebx
mov edx, 0x50
push edi
xor eax, eax
inc eax
push eax
push eax
call fcn.1004e520
add esp, 0xc
jmp 0x1006b737
push str.not_a_writable_directory
push dword [esp + 0x14]
call fcn.1000f470
add esp, 8
jmp 0x1006b319
or edx, esi
cmp dword [esp + 0x1c], 1
mov dword [eax + 0x54], edx
jne 0x1006d578
mov ecx, eax
call fcn.1001d1e0
jmp 0x1006d578
mov esi, dword [0x101d4910]
jmp 0x1006da77
mov eax, dword [esp + 0xc]
movzx eax, byte [eax + esi]
mov dl, byte [eax + 0x10194380]
xor eax, eax
cmp al, dl
jne 0x1006a937
jmp 0x1006a98e
mov ecx, dword [esp + 0x10]
inc dword [ecx + 0x24]
jmp 0x1006d220
call sym.nss3.dll_sqlite3_initialize
xor esi, esi
dec esi
test eax, eax
mov edi, esi
je 0x1006e34b
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
cmp eax, 1
mov edx, ecx
sbb edx, 0
jl 0x1006c4c9
mov edx, esi
or edx, edi
je 0x1006db62
cmp eax, esi
mov edx, ecx
sbb edx, edi
jge 0x1006c4c9
push ecx
push eax
call fcn.10002b30
add esp, 8
jmp 0x1006c4c9
mov ecx, dword [esp + 0x10]
mov edx, 2
push dword [esp + 0x28]
push dword [esp + 0x10]
call fcn.1000eee0
add esp, 8
mov esi, dword [esp + 8]
test eax, eax
je 0x1006acb3
cmp byte [eax + 0x24], 0
jns 0x1006acb3
mov ebx, dword [eax + 8]
test ebx, ebx
je 0x1006acb3
mov eax, dword [ebx + 0x38]
and eax, 3
cmp eax, 2
je 0x1006c5ee
mov ebx, dword [ebx + 0x14]
test ebx, ebx
jne 0x1006dbab
jmp 0x1006af59
cmp dword [esp + 0x28], 0
js 0x1006e39c
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x28]
mov eax, dword [eax + 0x10]
shl ecx, 4
mov eax, dword [eax + ecx]
mov ecx, dword [esp + 0x10]
xor edx, edx
push eax
push dword [esp + 0x10]
call fcn.1000eee0
add esp, 8
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x68]
jmp 0x1006c6cd
mov eax, dword [esp + 0xc]
movzx eax, byte [eax + esi]
mov dl, byte [eax + 0x10194380]
xor eax, eax
cmp al, dl
jne 0x1006ab29
jmp 0x1006ab80
test eax, 0xfffffffd
je 0x1006e530
push str.authorizer_malfunction
mov esi, dword [esp + 0x14]
push esi
call fcn.1000f470
add esp, 8
mov dword [esi + 0xc], 1
jmp 0x1006af59
inc dword [esp + 0x38]
mov edi, dword [esp + 0x14]
jmp 0x1006ba41
mov eax, dword [0x101d20cc]
mov ecx, dword [0x101d20c8]
mov dword [esp + 0x6c], eax
mov dword [esp + 0x68], ecx
jmp 0x1006d5cc
mov dword [esp + 0x18], 2
xor edx, edx
jmp 0x1006b9a1
xor eax, eax
jmp 0x1006d4c7
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
shl eax, 4
movzx edx, byte [ecx + eax + 8]
dec edx
jmp 0x1006b727
push str.Safety_level_may_not_be_changed_inside_a_transaction
jmp 0x1006dac7
lea esi, [esp + 0x68]
mov edx, esi
mov dword [esi], 0
call fcn.1004b9f0
mov al, byte [esi]
jmp 0x1006a994
mov dword [0x101d490c], 0
jmp 0x1006b319
mov esi, 0x10198f0c
mov eax, dword [esi + 4]
mov edi, dword [esp + 8]
mov ebx, 2
mov edx, 0x101945e5
test al, al
lea ecx, [edi + 0x18c]
cmovne ebx, eax
mov eax, dword [edi + 0x10]
mov eax, dword [eax + 0xc]
mov byte [eax + 0x4d], bl
mov byte [edi + 0x4e], bl
call fcn.1004aa50
mov eax, dword [eax + 8]
movzx ecx, bl
lea ecx, [ecx + ecx*4]
test eax, eax
lea ecx, [eax + ecx*4 - 0x14]
cmove ecx, eax
mov dword [edi + 8], ecx
cmp dword [esi], 0
jne 0x1006af59
push dword [esp + 0xc]
push str.unsupported_encoding:__s
push dword [esp + 0x18]
call fcn.1000f470
jmp 0x1006e50d
xor eax, eax
mov ecx, dword [esp + 0xc]
movzx edx, byte [eax + str.UTF_8]
movzx ecx, byte [ecx + eax]
cmp cl, dl
jne 0x1006dd4f
test cl, cl
jne 0x1006dd61
jmp 0x1006e54e
mov cl, byte [ecx + 0x10194380]
cmp cl, byte [edx + 0x10194380]
jne 0x1006e558
inc eax
jmp 0x1006dd33
mov ecx, dword [esp + 8]
mov ecx, dword [ecx + 0x14]
cmp ecx, 2
jle 0x1006ddb9
mov edx, 2
mov esi, 0x24
test eax, eax
js 0x1006dd93
mov edi, dword [esp + 8]
mov edi, dword [edi + 0x10]
mov edi, dword [edi + esi]
mov edi, dword [edi + 4]
mov edi, dword [edi]
cmp byte [edi + 0xc], 0
je 0x1006dd9d
inc edx
add esi, 0x10
cmp edx, ecx
jl 0x1006dd7a
jmp 0x1006ddb9
mov ebx, dword [edi + 0xd8]
test ebx, ebx
je 0x1006ddad
cmp byte [ebx + 0x2b], 2
je 0x1006dd93
mov ecx, dword [esp + 8]
mov byte [edi + 4], al
mov ecx, dword [ecx + 0x14]
jmp 0x1006dd93
mov ecx, dword [esp + 8]
mov byte [ecx + 0x53], al
jmp 0x1006d91a
mov ecx, 0xffff8000
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 0x10]
mov esi, dword [eax + 0x10195544]
mov edx, dword [eax + 0x10195540]
xor eax, eax
mov dword [esp + 0x18], edx
or edx, esi
mov dword [esp + 0x14], esi
setne al
lea edx, [eax + eax*2 + 3]
movzx esi, word [ebx + eax*2 + 0x32]
mov dword [edi + 0x2c], edx
mov eax, dword [edi + 0x74]
test eax, eax
cmove eax, edi
xor edx, edx
mov edi, dword [eax + 0x54]
inc edx
shl edx, cl
bt edi, ecx
mov dword [esp + 0x1c], edi
mov edi, dword [ebx + 0xc]
mov dword [esp + 0x24], edi
jae 0x1006debc
test si, si
je 0x1006af59
xor edi, edi
mov eax, dword [ebx + 4]
mov ecx, 0
movsx eax, word [eax + edi*2]
test eax, eax
js 0x1006de45
mov ecx, dword [esp + 0x24]
lea edx, [eax + eax*4]
mov ecx, dword [ecx + 4]
mov ecx, dword [ecx + edx*4]
push ecx
push eax
push edi
push str.iisX
push 1
push dword [esp + 0x18]
call fcn.100a2f30
add esp, 0x18
mov eax, dword [esp + 0x18]
or eax, dword [esp + 0x14]
je 0x1006de92
movzx ecx, word [ebx + 0x32]
xor eax, eax
mov edx, dword [ebx + 0x20]
cmp edi, ecx
mov ecx, dword [ebx + 0x1c]
setb al
movzx ecx, byte [ecx + edi]
push eax
push dword [edx + edi*4]
push ecx
push str.isiX
push 4
push dword [esp + 0x18]
call fcn.100a2f30
add esp, 0x18
mov ecx, dword [esp + 4]
mov edx, 0x50
push 0
mov eax, dword [esp + 0x14]
push dword [eax + 0x2c]
push 1
call fcn.1004e520
add esp, 0xc
inc edi
cmp esi, edi
jne 0x1006de28
jmp 0x1006af59
mov edi, dword [esp + 0x1c]
or edi, edx
cmp ecx, 1
mov dword [eax + 0x54], edi
jne 0x1006de1d
mov ecx, eax
call fcn.1001d1e0
jmp 0x1006de1d
mov ecx, 0xffff8000
mov edx, dword [esp + 0x10]
mov dword [edx + 0x2c], 5
mov eax, dword [edx + 0x74]
test eax, eax
cmove eax, edx
xor edi, edi
mov edx, dword [eax + 0x54]
inc edi
shl edi, cl
bt edx, ecx
jae 0x1006df5d
mov esi, dword [ebx + 8]
test esi, esi
je 0x1006af59
xor edi, edi
xor eax, eax
cmp dword [esi + 0x24], 0
mov ecx, dword [esi + 0x38]
setne al
and ecx, 3
xor edx, edx
cmp byte [esi + 0x36], 0
setne dl
push eax
push dword [ecx*4 + 0x10198ee4]
push edx
push dword [esi]
push edi
push str.isisi
push 1
push dword [esp + 0x20]
call fcn.100a2f30
add esp, 0x20
mov esi, dword [esi + 0x14]
inc edi
test esi, esi
jne 0x1006df0c
jmp 0x1006af59
mov dword [esp + 0x68], 0x64
jmp 0x1006c6d1
or edx, edi
cmp ecx, 1
mov dword [eax + 0x54], edx
jne 0x1006deff
mov ecx, eax
call fcn.1001d1e0
jmp 0x1006deff
mov edi, dword [0x101d47fc]
mov esi, dword [0x101d47f8]
jmp 0x1006c4db
mov eax, dword [esp + 0x18]
mov ecx, ebx
lea esi, [eax + 0x10195538]
mov edx, esi
call fcn.100a2a50
mov eax, dword [esi + 8]
mov edx, dword [esp + 8]
mov ecx, dword [esi + 0xc]
and ecx, dword [edx + 0x24]
and eax, dword [edx + 0x20]
xor edx, edx
or eax, ecx
setne dl
jmp 0x1006b70f
lea esi, [esp + 0x68]
mov edx, esi
mov dword [esi], 0
call fcn.1004b9f0
mov al, byte [esi]
jmp 0x1006ab92
mov dword [0x101d4910], 0
jmp 0x1006b319
movzx ecx, byte [ecx + 0x101b14bc]
xor edx, edx
mov bl, byte [ecx + 0x10194380]
cmp dl, bl
je 0x1006e68b
xor ecx, ecx
xor esi, esi
inc esi
movzx edx, byte [edi + ecx]
test edx, edx
je 0x1006e028
movzx edi, byte [ecx + str.persist]
mov dl, byte [edx + 0x10194380]
mov bl, byte [edi + 0x10194380]
cmp dl, bl
jne 0x1006e037
mov edi, dword [esp + 0xc]
inc ecx
cmp eax, ecx
jne 0x1006dff3
mov dword [esp + 0x14], esi
mov esi, dword [esp + 8]
jmp 0x1006e408
movzx ecx, byte [ecx + str.persist]
xor edx, edx
mov bl, byte [ecx + 0x10194380]
cmp dl, bl
je 0x1006e01b
mov edi, dword [esp + 0xc]
xor ecx, ecx
movzx edx, byte [edi + ecx]
test edx, edx
je 0x1006e09d
movzx esi, byte [ecx + 0x101b1257]
mov dl, byte [edx + 0x10194380]
mov bl, byte [esi + 0x10194380]
cmp dl, bl
jne 0x1006e0ac
inc ecx
cmp eax, ecx
jne 0x1006e041
mov esi, dword [esp + 8]
mov dword [esp + 0x14], 2
test byte [esi + 0x23], 0x10
jne 0x1006e3f4
jmp 0x1006e408
mov eax, dword [esp + 0xc]
movzx eax, byte [eax + esi]
mov dl, byte [eax + 0x10194380]
xor eax, eax
cmp al, dl
jne 0x1006b01d
jmp 0x1006b074
movzx ecx, byte [ecx + 0x101b1257]
xor edx, edx
mov bl, byte [ecx + 0x10194380]
cmp dl, bl
je 0x1006e065
xor ecx, ecx
movzx edx, byte [edi + ecx]
test edx, edx
je 0x1006e143
movzx esi, byte [ecx + str.truncate]
mov dl, byte [edx + 0x10194380]
mov bl, byte [esi + 0x10194380]
cmp dl, bl
jne 0x1006e152
inc ecx
cmp eax, ecx
jne 0x1006e0b2
mov dword [esp + 0x14], 3
jmp 0x1006e01f
cmp byte [esi + 0x51], 0
jne 0x1006acb3
cmp byte [esi + 0x52], 0
jne 0x1006acb3
mov byte [esi + 0x51], 1
cmp dword [esi + 0xbc], 0
jle 0x1006e116
mov eax, dword [esp + 8]
mov dword [eax + 0x108], 1
mov esi, dword [esp + 8]
inc dword [esi + 0x110]
mov word [esi + 0x114], 0
mov eax, dword [esi + 0xec]
test eax, eax
je 0x1006acb3
mov dword [eax + 0xc], 7
jmp 0x1006acb3
movzx ecx, byte [ecx + str.truncate]
xor edx, edx
mov bl, byte [ecx + 0x10194380]
cmp dl, bl
je 0x1006e0da
xor ecx, ecx
movzx edx, byte [edi + ecx]
test edx, edx
je 0x1006e221
movzx esi, byte [ecx + 0x101ac1f7]
mov dl, byte [edx + 0x10194380]
mov bl, byte [esi + 0x10194380]
cmp dl, bl
jne 0x1006e230
inc ecx
cmp eax, ecx
jne 0x1006e158
mov dword [esp + 0x14], 4
jmp 0x1006e01f
mov edx, dword [esp + 0x50]
lea ecx, [eax - 1]
mov esi, dword [esp + 4]
test edx, edx
cmovns ecx, edx
lea ecx, [ecx + ecx*4]
shl ecx, 2
add ecx, dword [esi + 0x68]
jmp 0x1006c3de
mov edx, dword [ecx + 0xd8]
test edx, edx
je 0x1006e1c3
cmp byte [edx + 0x2b], 2
je 0x1006d93c
mov byte [ecx + 4], al
jmp 0x1006d93c
mov ecx, dword [esp + 0x6c]
test ecx, ecx
js 0x1006d9a4
mov eax, dword [esp + 0x68]
mov edx, 0xfffffffe
xor edi, edi
cmp edx, eax
sbb edi, ecx
jge 0x1006d9ae
mov dword [esp + 0x68], edx
mov dword [esp + 0x6c], 0
mov eax, 0xfffffffe
jmp 0x1006d9ae
lea ebx, [esp + 0x68]
xor edi, edi
mov edx, ebx
mov dword [ebx], edi
call fcn.1004b9f0
mov eax, dword [ebx]
cmp eax, 3
movzx edx, al
cmovae edx, edi
jmp 0x1006b5a3
movzx ecx, byte [ecx + 0x101ac1f7]
xor edx, edx
mov bl, byte [ecx + 0x10194380]
cmp dl, bl
je 0x1006e184
xor ecx, ecx
movzx edx, byte [edi + ecx]
test edx, edx
je 0x1006e3d9
movzx esi, byte [ecx + 0x101b0b10]
mov dl, byte [edx + 0x10194380]
mov bl, byte [esi + 0x10194380]
cmp dl, bl
jne 0x1006e3e8
inc ecx
cmp eax, ecx
jne 0x1006e23a
mov dword [esp + 0x14], 5
jmp 0x1006e01f
mov ecx, 0xffff8000
mov edx, dword [esp + 0x10]
mov dword [edx + 0x2c], 8
mov eax, dword [edx + 0x74]
test eax, eax
cmove eax, edx
xor esi, esi
mov edx, dword [eax + 0x54]
inc esi
shl esi, cl
bt edx, ecx
jae 0x1006e331
mov dword [esp + 0x14], 0
cmp dword [edi + 0x14], 0
jle 0x1006e31d
xor esi, esi
mov dl, byte [edi + 0x19]
mov eax, str.NO_ACTION
mov ecx, str.NO_ACTION
add dl, 0xf9
cmp dl, 3
ja 0x1006e2cb
movsx ecx, dl
mov ecx, dword [ecx*4 + 0x1019a534]
mov dl, byte [edi + 0x1a]
add dl, 0xf9
cmp dl, 3
ja 0x1006e2e0
movsx eax, dl
mov eax, dword [eax*4 + 0x1019a534]
mov ebx, dword [esp + 0x18]
mov edx, dword [edi + esi*8 + 0x24]
mov ebx, dword [ebx + 4]
lea edx, [edx + edx*4]
push str.NONE
push ecx
push eax
push dword [edi + esi*8 + 0x28]
push dword [ebx + edx*4]
push dword [edi + 8]
push esi
push dword [esp + 0x30]
push str.iissssss
push 1
push dword [esp + 0x2c]
call fcn.100a2f30
add esp, 0x2c
inc esi
cmp esi, dword [edi + 0x14]
jl 0x1006e2ac
mov edi, dword [edi + 4]
inc dword [esp + 0x14]
test edi, edi
jne 0x1006e2a4
jmp 0x1006af59
or edx, esi
cmp ecx, 1
mov dword [eax + 0x54], edx
jne 0x1006e29c
mov ecx, eax
call fcn.1001d1e0
jmp 0x1006e29c
mov esi, dword [0x101d47e8]
test esi, esi
je 0x1006e8b1
mov ecx, dword [0x101d2070]
call dword [section..00cfg]
push esi
call ecx
add esp, 4
mov ebx, dword [0x101d47e8]
mov edi, dword [0x101d47fc]
mov esi, dword [0x101d47f8]
test ebx, ebx
je 0x1006db3a
mov ecx, dword [0x101d2078]
call dword [section..00cfg]
push ebx
call ecx
add esp, 4
jmp 0x1006db3a
xor eax, eax
jmp 0x1006dbe2
inc dword [esi + 0xc]
cmp byte [esi + 0xa], 0
jne 0x1006b0de
mov ecx, esi
call fcn.10028170
mov ecx, dword [esp + 0x18]
jmp 0x1006b0de
dec dword [esi + 0xc]
jne 0x1006b0fb
mov ecx, esi
call fcn.10028200
mov ecx, dword [esp + 0x18]
jmp 0x1006b0fb
movzx eax, byte [ecx + 0x101b0b10]
xor edx, edx
mov bl, byte [eax + 0x10194380]
mov esi, dword [esp + 8]
cmp dl, bl
je 0x1006e6d5
xor eax, eax
dec eax
mov dword [esp + 0x14], eax
mov eax, dword [ebp + 8]
cmp dword [eax + 4], 0
je 0x1006e4ee
mov eax, dword [esp + 0x1c]
mov edi, dword [esi + 0x14]
test edi, edi
jle 0x1006e4b5
mov esi, dword [esp + 4]
lea ebx, [edi + 1]
shl edi, 4
neg eax
add edi, 0xfffffff4
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 8]
mov eax, dword [eax + 0x10]
cmp dword [eax + edi], 0
jne 0x1006e442
dec ebx
add edi, 0xfffffff0
cmp ebx, 1
jg 0x1006e42a
jmp 0x1006e4b5
mov eax, dword [esp + 0x1c]
add eax, ebx
cmp eax, 2
jne 0x1006e60e
xor edx, edx
lea eax, [ebx - 2]
inc edx
mov ecx, eax
shl edx, cl
or dword [esi + 0x9c], edx
cmp ebx, 3
je 0x1006e478
mov ecx, dword [esi]
mov ecx, dword [ecx + 0x10]
mov ecx, dword [ecx + edi]
cmp byte [ecx + 9], 0
jne 0x1006e620
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jle 0x1006e515
lea edx, [ecx + 1]
lea ecx, [ecx + ecx*4]
mov dword [esi + 0x6c], edx
mov edx, dword [esi + 0x68]
mov dword [edx + ecx*4], 7
mov dword [edx + ecx*4 + 4], eax
mov eax, dword [esp + 0x14]
mov dword [edx + ecx*4 + 8], 1
mov dword [edx + ecx*4 + 0xc], eax
mov dword [edx + ecx*4 + 0x10], 0
jmp 0x1006e437
mov ecx, dword [esp + 4]
mov eax, dword [ecx + 0x6c]
cmp dword [ecx + 0x70], eax
jle 0x1006e4fc
lea edx, [eax + 1]
lea eax, [eax + eax*4]
mov dword [ecx + 0x6c], edx
xor edx, edx
mov ecx, dword [ecx + 0x68]
inc edx
mov dword [ecx + eax*4], 0x50
mov dword [ecx + eax*4 + 4], edx
mov dword [ecx + eax*4 + 8], edx
xor edx, edx
mov dword [ecx + eax*4 + 0xc], edx
mov dword [ecx + eax*4 + 0x10], edx
jmp 0x1006af59
mov dword [eax + 4], 1
xor eax, eax
jmp 0x1006e40c
xor eax, eax
mov edx, 0x50
inc eax
push 0
push eax
push eax
call fcn.1004e590
add esp, 0xc
jmp 0x1006af59
mov ecx, esi
mov edx, 7
push dword [esp + 0x14]
push 1
push eax
call fcn.1004e590
add esp, 0xc
jmp 0x1006e437
test eax, eax
je 0x1006a7cf
jmp 0x1006af59
mov edi, dword [0x101d47f4]
mov esi, dword [0x101d47f0]
jmp 0x1006c4db
mov esi, 0x10198f14
jmp 0x1006dccf
xor eax, eax
mov ecx, dword [esp + 0xc]
movzx edx, byte [eax + str.UTF_16le]
movzx ecx, byte [ecx + eax]
cmp cl, dl
jne 0x1006e576
test cl, cl
jne 0x1006e588
jmp 0x1006e6e2
mov cl, byte [ecx + 0x10194380]
cmp cl, byte [edx + 0x10194380]
jne 0x1006e6ec
inc eax
jmp 0x1006e55a
mov ecx, ebx
call fcn.1004e5f0
mov eax, dword [ebx + 0x6c]
jmp 0x1006adec
mov eax, dword [esp + 8]
mov esi, dword [eax + 0xc]
test esi, esi
je 0x1006e8c2
mov ecx, dword [0x101d2070]
call dword [section..00cfg]
push esi
call ecx
add esp, 4
mov ecx, dword [esp + 8]
mov ebx, dword [esp + 4]
xor eax, eax
mov esi, dword [ecx + 0xc]
mov dword [ecx + 0xf0], eax
mov dword [ecx + 0xf4], eax
test esi, esi
je 0x1006af2f
mov ecx, dword [0x101d2078]
call dword [section..00cfg]
push esi
jmp 0x1006af2a
mov dword [ebx + 0xf0], 0x10016220
mov dword [ebx + 0xf4], esi
mov ebx, dword [esp + 4]
jmp 0x1006af2f
xor edx, edx
jmp 0x1006af49
mov eax, dword [ebp + 8]
cmp dword [eax + 4], 0
jne 0x1006e437
jmp 0x1006e451
or dword [esi + 0xa0], edx
jmp 0x1006e478
xor eax, eax
mov dword [esp + 0x24], 0
dec eax
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x18]
jmp 0x1006b108
test al, al
je 0x1006e67a
mov edx, esi
inc edx
jmp 0x1006afc2
lea esi, [esp + 0x68]
mov edx, esi
mov dword [esi], 0
call fcn.1004b9f0
mov al, byte [esi]
jmp 0x1006b086
xor eax, eax
mov dword [esi + 0x1ec], eax
mov dword [esi + 0x1e8], eax
jmp 0x1006b184
mov eax, dword [ebp + 8]
mov ecx, dword [esp + 8]
mov ebx, 2
jmp 0x1006b094
mov dword [esp + 0x14], 0
jmp 0x1006e01f
xor eax, eax
jmp 0x1006b3d4
inc dword [ecx + 0xc]
cmp byte [ecx + 0xa], 0
jne 0x1006b122
mov ecx, dword [esp + 0x18]
call fcn.10028170
mov ecx, dword [esp + 0x18]
jmp 0x1006b122
dec dword [ecx + 0xc]
jne 0x1006e6cc
mov ecx, dword [esp + 0x18]
call fcn.10028200
mov edi, dword [esp + 4]
jmp 0x1006b151
mov dword [esp + 0x14], 5
jmp 0x1006e408
mov esi, 0x10198f1c
jmp 0x1006dccf
xor eax, eax
mov ecx, dword [esp + 0xc]
movzx edx, byte [eax + str.UTF_16be]
movzx ecx, byte [ecx + eax]
cmp cl, dl
jne 0x1006e70a
test cl, cl
jne 0x1006e71c
jmp 0x1006e91c
mov cl, byte [ecx + 0x10194380]
cmp cl, byte [edx + 0x10194380]
jne 0x1006e926
inc eax
jmp 0x1006e6ee
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov edx, esi
shl eax, 4
mov ecx, dword [ecx + eax + 4]
call fcn.1004d460
jmp 0x1006d252
mov esi, eax
xor eax, eax
cmp dword [esp + 0x14], 0
je 0x1006e74f
xor eax, eax
mov dword [esi + 4], 0
inc eax
mov ecx, dword [esp + 0x18]
mov ecx, dword [ecx + 0x10]
test ecx, ecx
je 0x1006e790
cmp dword [esp + 0x14], 0
mov edx, dword [ecx + 8]
je 0x1006e76e
cmp dword [esp + 0x14], edx
je 0x1006e76e
mov ecx, dword [ecx]
jmp 0x1006e756
cmp byte [edx + 0x24], 0
js 0x1006e77c
mov ebx, dword [edx + 0x1c]
mov dword [esi + eax*4 + 4], ebx
inc eax
mov edx, dword [edx + 8]
test edx, edx
je 0x1006e76a
mov ebx, dword [edx + 0x2c]
mov dword [esi + eax*4 + 4], ebx
inc eax
mov edx, dword [edx + 0x14]
jmp 0x1006e77f
mov edx, dword [esp + 0x10]
mov dword [esi], eax
add edi, 8
mov ecx, dword [edx + 0x2c]
cmp ecx, edi
cmovge edi, ecx
mov dword [edx + 0x2c], edi
mov edi, dword [esp + 4]
mov byte [edx + 0x13], 0
mov dword [edx + 0x1c], 0
mov edx, 0x93
mov ecx, edi
push 1
push eax
push 2
call fcn.1004e520
add esp, 0xc
mov ecx, edi
mov edx, eax
push 0xfffffffffffffff1
push esi
call fcn.1000f710
add esp, 8
mov eax, dword [edi + 0x6c]
test eax, eax
jle 0x1006e7f1
mov edx, dword [esp + 4]
movzx ecx, byte [esp + 0x24]
lea eax, [eax + eax*4]
mov edx, dword [edx + 0x68]
mov word [edx + eax*4 - 0x12], cx
mov edi, dword [esp + 4]
xor ebx, ebx
mov edx, 0x32
mov ecx, edi
push ebx
push ebx
mov eax, 2
push eax
call fcn.1004e520
add esp, 0xc
mov ecx, dword [esp + 8]
mov dword [esp + 0x20], eax
mov edx, dword [esp + 0x1c]
mov eax, dword [ecx + 0x10]
push dword [eax + edx]
push str._in_database__s__n
push ecx
call fcn.1000f4f0
add esp, 0xc
mov ecx, edi
mov esi, eax
mov edx, 0x73
push ebx
mov eax, 3
push eax
push ebx
call fcn.1004e520
add esp, 0xc
mov ecx, edi
mov edx, eax
push 0xfffffffffffffff9
push esi
call fcn.1000f710
add esp, 8
mov ecx, edi
mov eax, 3
mov edx, 0x6e
push eax
push eax
mov eax, 2
push eax
call fcn.1004e520
add esp, 0xc
mov ecx, edi
call fcn.100a3220
mov edx, dword [edi]
mov eax, dword [edi + 0x6c]
mov ecx, 0x101d4a28
cmp byte [edx + 0x51], 0
jne 0x1006e8a2
mov edx, dword [esp + 0x20]
lea ecx, [eax - 1]
mov esi, dword [esp + 4]
test edx, edx
cmovns ecx, edx
lea ecx, [ecx + ecx*4]
shl ecx, 2
add ecx, dword [esi + 0x68]
mov dword [ecx + 8], eax
mov eax, dword [esp + 0x18]
mov eax, dword [eax + 0x10]
jmp 0x1006c7f6
mov edi, dword [0x101d47fc]
mov esi, dword [0x101d47f8]
jmp 0x1006db3a
mov ecx, dword [esp + 8]
mov ebx, dword [esp + 4]
xor eax, eax
mov dword [ecx + 0xf0], eax
mov dword [ecx + 0xf4], eax
jmp 0x1006af2f
mov dword [esp + 0x34], 0
jmp 0x1006b942
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
xor edx, edx
shl eax, 4
mov ecx, dword [ecx + eax + 4]
call fcn.1004d460
mov edx, eax
jmp 0x1006da66
push dword [esp + 0x6c]
push dword [esp + 0x6c]
call fcn.10002970
add esp, 8
jmp 0x1006d7ee
mov esi, 0x10198f24
jmp 0x1006dccf
xor eax, eax
mov ecx, dword [esp + 0xc]
movzx edx, byte [eax + str.UTF16le]
movzx ecx, byte [ecx + eax]
cmp cl, dl
jne 0x1006e944
test cl, cl
jne 0x1006e956
jmp 0x1006e9dc
mov cl, byte [ecx + 0x10194380]
cmp cl, byte [edx + 0x10194380]
jne 0x1006e9e6
inc eax
jmp 0x1006e928
xor ebx, ebx
jmp 0x1006b34b
mov eax, dword [esp + 0x10]
mov al, byte [eax + 0x13]
test al, al
je 0x1006ebd8
mov ecx, dword [esp + 0x10]
dec al
mov byte [ecx + 0x13], al
movzx eax, al
mov esi, dword [ecx + eax*4 + 0x98]
mov ebx, dword [esp + 4]
xor eax, eax
mov edx, 0x73
mov ecx, ebx
push eax
push esi
push eax
call fcn.1004e520
add esp, 0xc
mov ecx, ebx
mov edx, eax
push 0xfffffffffffffff9
push dword [esp + 0x18]
call fcn.1000f710
add esp, 8
xor eax, eax
mov ecx, ebx
mov edx, 0x50
push eax
push 1
push esi
call fcn.1004e520
add esp, 0xc
jmp 0x1006bbf1
mov edx, dword [esp + 0x14]
test edx, edx
je 0x1006bbf1
call fcn.10019c40
jmp 0x1006bbf1
mov esi, 0x10198f2c
jmp 0x1006dccf
xor eax, eax
mov ecx, dword [esp + 0xc]
movzx edx, byte [eax + str.UTF16be]
movzx ecx, byte [ecx + eax]
cmp cl, dl
jne 0x1006ea04
test cl, cl
jne 0x1006ea16
jmp 0x1006eb3d
mov cl, byte [ecx + 0x10194380]
cmp cl, byte [edx + 0x10194380]
jne 0x1006eb47
inc eax
jmp 0x1006e9e8
cmp byte [esi + 9], 0
je 0x1006ea2f
inc dword [esi + 0xc]
cmp byte [esi + 0xa], 0
jne 0x1006ea2f
mov ecx, esi
call fcn.10028170
mov eax, dword [esi + 4]
cmp byte [eax + 0x11], 0
je 0x1006ec0d
cmp byte [eax + 0x12], 1
mov edi, 2
sbb edi, 0
cmp byte [esi + 9], 0
je 0x1006ea5a
dec dword [esi + 0xc]
jne 0x1006ea5a
mov ecx, esi
call fcn.10028200
mov ecx, dword [esp + 4]
mov edx, edi
jmp 0x1006b711
test bl, bl
je 0x1006ead3
inc eax
jmp 0x1006b525
test bl, bl
je 0x1006eada
inc eax
jmp 0x1006b54f
inc dword [esi + 0xc]
cmp byte [esi + 0xa], 0
jne 0x1006b5b7
mov ecx, esi
mov edi, edx
call fcn.10028170
mov edx, edi
jmp 0x1006b5b7
test edx, edx
setne al
cmp byte [ebx + 0x11], al
je 0x1006b5c1
xor ebx, ebx
jmp 0x1006b5d0
dec dword [esi + 0xc]
jne 0x1006b5da
mov ecx, esi
mov esi, edx
call fcn.10028200
mov edx, esi
jmp 0x1006b5da
mov ecx, edi
call fcn.1004e5f0
mov eax, dword [edi + 0x6c]
jmp 0x1006b605
xor edx, edx
jmp 0x1006b5a3
mov edx, edi
jmp 0x1006b5a3
cmp byte [esi + 0x4f], 0
je 0x1006eaf1
cmp byte [ecx + 8], 0
je 0x1006ecb0
push str.temporary_storage_cannot_be_changed_from_within_a_transaction
push dword [esp + 0x14]
call fcn.1000f470
add esp, 8
jmp 0x1006af59
mov eax, edx
mov ecx, edx
mov dword [esp + 0x6c], edx
mov dword [esp + 0x68], edx
jmp 0x1006b797
push str.corrupt_database
push dword [esp + 0x14]
call fcn.1000f470
add esp, 8
jmp 0x1006af77
mov ecx, ebx
call fcn.1004e5f0
mov eax, dword [ebx + 0x6c]
jmp 0x1006b2a9
mov esi, 0x10198f34
jmp 0x1006dccf
xor eax, eax
mov ecx, dword [esp + 0xc]
movzx edx, byte [eax + str.UTF_16]
movzx ecx, byte [ecx + eax]
cmp cl, dl
jne 0x1006eb65
test cl, cl
jne 0x1006eb77
jmp 0x1006ec50
mov cl, byte [ecx + 0x10194380]
cmp cl, byte [edx + 0x10194380]
jne 0x1006ec5a
inc eax
jmp 0x1006eb49
mov ebx, dword [esp + 4]
test cl, cl
je 0x1006ebce
inc eax
jmp 0x1006b82c
mov edi, dword [eax + ecx]
xor ecx, ecx
mov eax, dword [esp + 0x28]
movzx edx, byte [eax + ecx]
movzx eax, byte [edi + ecx]
cmp dl, al
jne 0x1006eba6
test dl, dl
jne 0x1006ebb8
jmp 0x1006b8bd
mov dl, byte [edx + 0x10194380]
cmp dl, byte [eax + 0x10194380]
jne 0x1006b8e6
inc ecx
jmp 0x1006eb8d
mov ecx, eax
call fcn.1001d1e0
jmp 0x1006b8e6
xor edx, edx
jmp 0x1006b727
mov eax, 2
jmp 0x1006b3d4
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x2c]
inc ecx
mov esi, ecx
mov dword [eax + 0x2c], ecx
jmp 0x1006e982
mov edx, dword [esp + 4]
mov ecx, dword [ecx + 0x40]
mov edx, dword [edx + 0x6c]
mov dword [ecx + eax*4], edx
jmp 0x1006ca9d
test dl, dl
je 0x1006b34b
mov dl, byte [edi + esi]
inc esi
jmp 0x1006bac4
xor edi, edi
jmp 0x1006ea48
mov ecx, dword [esp + 0x20]
lea esi, [eax + 1]
lea eax, [eax + eax*4]
lea ebx, [edi + eax*4 - 0x10]
dec ecx
mov dword [esp + 0x4c], ecx
jmp 0x1006d098
mov edx, dword [esp + 4]
push eax
call fcn.10078ce0
add esp, 4
jmp 0x1006d0ba
mov edx, dword [esp + 4]
mov ecx, dword [ecx + 0x40]
mov edx, dword [edx + 0x6c]
mov dword [ecx + eax*4], edx
jmp 0x1006d0ba
mov esi, 0x10198f3c
jmp 0x1006dccf
xor eax, eax
mov ecx, dword [esp + 0xc]
movzx edx, byte [eax + str.UTF16]
movzx ecx, byte [ecx + eax]
cmp cl, dl
jne 0x1006ec75
test cl, cl
jne 0x1006ec87
jmp 0x1006eca6
mov cl, byte [ecx + 0x10194380]
cmp cl, byte [edx + 0x10194380]
jne 0x1006dd1a
inc eax
jmp 0x1006ec5c
mov edx, 0xfffe
jmp 0x1006bb58
mov edx, dword [esp + 4]
push eax
call fcn.10078ce0
add esp, 4
jmp 0x1006ca9d
mov esi, 0x10198f44
jmp 0x1006dccf
call fcn.1002e860
mov eax, dword [esi + 0x10]
mov ecx, esi
mov dword [eax + 0x14], 0
call fcn.10008620
jmp 0x1006b36b