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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xa8
mov esi, edx
mov eax, dword [0x101f1014]
xor eax, ebp
mov dword [esp + 0xa0], eax
mov edi, dword [ecx]
mov dword [esp + 8], ecx
mov ebx, dword [ecx + 8]
test ebx, ebx
jne 0x1004b8b7
mov eax, dword [esp + 8]
cmp dword [eax + 0x78], 0
jne 0x1004b8a4
test byte [edi + 0x50], 8
jne 0x1004b8a4
mov eax, dword [esp + 8]
mov byte [eax + 0x17], 1
mov ecx, dword [esp + 8]
call fcn.1002fa90
mov ebx, eax
test eax, eax
je 0x1004bf5d
mov eax, dword [ebx + 0x6c]
cmp dword [ebx + 0x70], eax
jle 0x1004c39b
lea ecx, [eax + 1]
mov dword [ebx + 0x6c], ecx
mov ecx, dword [ebx + 0x68]
lea eax, [eax + eax*4]
mov dword [ecx + eax*4], 0xa6
movaps xmm0, xmmword [0x101b1370]
movups xmmword [ecx + eax*4 + 4], xmm0
mov ecx, dword [esp + 8]
mov dword [ecx + 0x2c], 2
lea eax, [esp + 0x8c]
mov edx, esi
push eax
push dword [ebp + 8]
call fcn.10050cd0
add esp, 8
mov dword [esp + 0x18], eax
test eax, eax
js 0x1004bf5d
mov eax, dword [edi + 0x10]
mov dword [esp + 0x34], eax
cmp dword [esp + 0x18], 1
je 0x1004f150
mov edx, dword [esp + 0x8c]
mov ecx, edi
call fcn.10021d70
mov dword [esp + 0x3c], eax
test eax, eax
je 0x1004bf5d
mov edx, dword [ebp + 0xc]
cmp dword [ebp + 0x10], 0
jne 0x1004be91
mov ecx, edi
call fcn.10021d70
mov dword [esp + 0x10], eax
mov dword [esp], ebx
mov dword [esp + 4], edi
mov eax, dword [esp + 0x18]
shl eax, 4
mov dword [esp + 0x30], eax
mov dword [esp + 0x28], 0
mov eax, dword [ebp + 8]
cmp dword [eax + 4], 0
jne 0x1004c7e7
mov eax, dword [esp + 8]
mov eax, dword [eax]
mov ecx, dword [eax + 0x164]
test ecx, ecx
jne 0x1004f166
xor ebx, ebx
lea eax, [esp + 0x90]
mov dword [eax], ebx
mov ecx, dword [esp + 0x3c]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x10]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov ecx, dword [esp + 4]
mov dword [ecx + 0x1c0], ebx
push eax
push 0xe
push dword [esp + 0x30]
push ecx
call sym.nss3.dll_sqlite3_file_control
add esp, 0x10
cmp eax, 0xc
jne 0x1004f1d8
mov edi, 0x40
mov dword [esp + 0x20], ebx
lea eax, [ebx + edi]
mov edx, eax
shr edx, 0x1f
mov dword [esp + 0x1c], eax
add edx, eax
sar edx, 1
mov eax, edx
shl eax, 4
mov dword [esp + 0x14], eax
mov eax, dword [eax + 0x101b2ac0]
xor esi, esi
inc esi
mov dword [esp + 0xc], eax
test eax, eax
je 0x1004ba3c
mov eax, dword [esp + 0x14]
lea eax, [eax + 0x101b2ac0]
mov dword [esp + 0x2c], eax
xor ecx, ecx
mov eax, dword [esp + 0x3c]
movzx ebx, byte [eax + ecx]
mov eax, dword [esp + 0xc]
movzx eax, byte [eax + ecx]
cmp bl, al
jne 0x1004ba2a
test ebx, ebx
je 0x1004ba55
inc ecx
jmp 0x1004ba0f
movzx esi, byte [ebx + 0x101b1828]
movzx eax, byte [eax + 0x101b1828]
sub esi, eax
je 0x1004ba27
lea eax, [edx - 1]
inc edx
test esi, esi
mov ebx, dword [esp + 0x20]
cmovns ebx, edx
cmovs edi, eax
cmp ebx, edi
jle 0x1004b9d1
jmp 0x1004bf3f
mov eax, dword [esp + 0x14]
movzx ebx, byte [eax + 0x101b2ac5]
test bl, 1
je 0x1004ba78
mov eax, dword [esp + 8]
mov esi, dword [eax]
cmp byte [esi + 0xb1], 0
je 0x1004c22b
test bl, 2
jne 0x1004ba91
test bl, 4
je 0x1004bbd9
cmp dword [esp + 0x10], 0
je 0x1004bbd9
mov eax, dword [esp + 0x14]
movzx eax, byte [eax + 0x101b2ac4]
dec eax
cmp eax, 0x2a
ja case.0x1004baa6.5
jmp dword [eax*4 + 0x101b8fa4]
cmp dword [esp + 0x10], 0
je 0x1004fddb
mov eax, dword [esp + 4]
cmp byte [eax + 0x55], 0
mov eax, dword [esp + 0x18]
je 0x1004fdee
cmp eax, 1
je 0x1004be79
mov ecx, dword [esp + 0x10]
movzx eax, byte [ecx]
add eax, 0xffffffc6
cmp eax, 0xfffffff6
jae 0x1004fe04
push ecx
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov edi, eax
and edi, 0x3fffffff
lea eax, [edi + 1]
mov dword [esp + 0x14], eax
xor ecx, ecx
movzx eax, byte [ecx + 0x101b6835]
cmp edi, eax
je 0x1004bb16
inc ecx
cmp ecx, 8
jne 0x1004bb00
jmp 0x1004c2c6
test edi, edi
je 0x1004bb62
movzx eax, byte [ecx + 0x101b682d]
mov dword [esp + 0xc], eax
xor esi, esi
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0xc]
movzx eax, byte [eax + esi + str.onoffalseyestruextrafull]
test eax, eax
je 0x1004fbc1
mov al, byte [eax + 0x101b1828]
mov edx, dword [esp + 0x10]
movzx edx, byte [edx + esi]
mov dl, byte [edx + 0x101b1828]
cmp al, dl
jne 0x1004fbd1
dec ebx
inc esi
cmp ebx, 1
jg 0x1004bb2b
mov al, byte [ecx + 0x101b683d]
inc al
and al, 7
xor ecx, ecx
inc ecx
test al, al
movzx eax, al
cmove eax, ecx
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x34]
mov byte [edx + ecx + 8], al
mov byte [edx + ecx + 9], 1
mov eax, dword [esp + 4]
cmp byte [eax + 0x55], 0
je 0x1004bf3f
mov eax, dword [esp + 4]
mov esi, dword [eax + 0x14]
test esi, esi
jle 0x1004bf3f
mov eax, dword [esp + 4]
mov edi, dword [eax + 0x10]
inc esi
add edi, 8
mov ecx, dword [edi - 4]
test ecx, ecx
je 0x1004bbcb
movzx eax, byte [edi]
mov edx, dword [esp + 4]
mov edx, dword [edx + 0x20]
and edx, 0x38
or edx, eax
call fcn.10050e20
dec esi
add edi, 0x10
cmp esi, 1
ja 0x1004bbb0
jmp 0x1004bf3f
mov eax, dword [esp + 0x14]
movzx ebx, byte [eax + 0x101b2ac7]
xor edx, edx
inc edx
test ebx, ebx
cmovne edx, ebx
mov esi, dword [esp]
mov ecx, esi
call fcn.100309f0
test ebx, ebx
jne 0x1004c3c4
mov eax, dword [esi]
cmp byte [eax + 0x57], 0
jne 0x1004ba91
mov eax, dword [esp]
mov ebx, dword [eax + 0x74]
mov edi, dword [ebx + 0x14]
test edi, edi
je 0x1004fbfa
mov esi, dword [edi + 0x78]
push dword [esp + 0xc]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, eax
mov eax, esi
sar eax, 0x1f
cmp esi, ecx
sbb eax, 0
movzx eax, word [ebx + 0x10]
jl 0x1004fc04
test eax, 0x9000
jne 0x1004d0e6
cmp dword [ebx + 0x18], 0
jne 0x1004d0e6
mov eax, dword [esp + 0xc]
mov dword [ebx + 8], eax
mov dword [ebx + 0x24], 0
and ecx, 0x7fffffff
mov dword [ebx + 0xc], ecx
mov word [ebx + 0x10], 0x2202
mov byte [ebx + 0x12], 1
jmp 0x1004ba91
mov ecx, dword [esp + 0x10]
test ecx, ecx
je 0x1004ff93
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 0x101b2ac8]
mov esi, eax
and esi, 0xffffbfff
mov ebx, dword [esp + 4]
cmp byte [ebx + 0x55], 0
cmovne esi, eax
mov dword [esp + 0x20], esi
mov eax, dword [edx + 0x101b2acc]
mov dword [esp + 0x14], eax
movzx eax, byte [ecx]
add eax, 0xffffffc6
cmp eax, 0xfffffff6
jae 0x1004ffc9
push ecx
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
and eax, 0x3fffffff
lea ecx, [eax + 1]
mov dword [esp + 8], ecx
xor ecx, ecx
movzx edx, byte [ecx + 0x101b6835]
cmp eax, edx
je 0x1004bcee
inc ecx
cmp ecx, 8
jne 0x1004bcd8
jmp 0x1004c181
test eax, eax
je 0x1004bd3e
movzx edx, byte [ecx + 0x101b682d]
mov dword [esp + 0xc], edx
xor esi, esi
mov edi, dword [esp + 8]
mov edx, dword [esp + 0xc]
movzx edx, byte [edx + esi + str.onoffalseyestruextrafull]
test edx, edx
je 0x1004fc3e
mov dl, byte [edx + 0x101b1828]
mov ebx, dword [esp + 0x10]
movzx ebx, byte [ebx + esi]
mov bl, byte [ebx + 0x101b1828]
cmp dl, bl
jne 0x1004fc4e
dec edi
inc esi
cmp edi, 1
mov ebx, dword [esp + 4]
jg 0x1004bd03
cmp ecx, 5
ja 0x1004bce3
mov al, byte [ecx + 0x101b683d]
test al, al
je 0x1004c181
mov eax, dword [esp + 0x20]
or dword [ebx + 0x20], eax
mov eax, dword [esp + 0x14]
or dword [ebx + 0x24], eax
jmp 0x1004c1af
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
mov esi, dword [ecx + eax + 4]
mov ecx, dword [esp + 0x10]
test ecx, ecx
je 0x1004cbe1
xor ebx, ebx
lea edi, [esp + 0x80]
mov dword [edi], ebx
mov edx, edi
call fcn.10038f50
mov edx, dword [edi]
mov eax, dword [esp + 4]
mov dword [eax + 0x64], edx
mov ecx, esi
push ebx
push ebx
call fcn.10051370
add esp, 8
cmp eax, 7
jne 0x1004be79
mov ecx, dword [esp + 4]
call fcn.10157fd0
jmp 0x1004be79
mov ecx, dword [esp + 0x10]
test ecx, ecx
je 0x1004cbfe
lea esi, [esp + 0x80]
mov dword [esi], 0
mov edx, esi
call fcn.10038f50
mov eax, dword [esi]
mov edx, dword [esp + 0x30]
mov esi, dword [esp + 0x34]
mov ecx, dword [esi + edx + 0xc]
mov dword [ecx + 0x50], eax
mov ebx, dword [esi + edx + 4]
mov eax, dword [esi + edx + 0xc]
mov edi, dword [eax + 0x50]
mov esi, dword [ebx + 4]
cmp byte [ebx + 9], 0
jne 0x1004cf6f
mov dword [esp + 0xc], ebx
mov eax, dword [esi]
mov esi, dword [eax + 0xe4]
mov dword [esi + 0x18], edi
mov ebx, dword [0x101f1098]
test edi, edi
jns 0x1004be59
mov ecx, edi
sar ecx, 0x1f
shld ecx, edi, 0xa
shl edi, 0xa
xor eax, eax
neg edi
sbb eax, ecx
mov ecx, dword [esi + 0x24]
add ecx, dword [esi + 0x20]
mov edx, ecx
sar edx, 0x1f
push edx
push ecx
push eax
push edi
call fcn.10157c20
mov edi, 0x3b9aca00
cmp eax, edi
mov ecx, 0x3b9aca00
cmovb ecx, eax
test edx, edx
cmovs edi, eax
cmove edi, ecx
mov esi, dword [esi + 0x34]
mov ecx, ebx
call dword [section..00cfg]
push edi
push esi
call ebx
add esp, 8
mov ecx, dword [esp + 0xc]
cmp byte [ecx + 9], 0
jne 0x1004cf88
mov esi, dword [esp + 4]
mov ecx, esi
mov edx, dword [esp + 0x3c]
call fcn.10129dd0
mov edx, dword [esp + 0x10]
jmp 0x1004bf56
push edx
push 0x101d350f
push edi
call fcn.10027ad0
add esp, 0xc
jmp 0x1004b94e
cmp dword [esp + 0x10], 0
mov ebx, dword [esp + 4]
je 0x1004bf18
lea esi, [esp + 0x80]
mov dword [esi], 0
mov ecx, dword [esp + 0x10]
mov edx, esi
call fcn.10038f50
mov esi, dword [esi]
test esi, esi
jle 0x100504a9
mov edi, dword [ebx + 0xc]
test edi, edi
je 0x100504f5
mov ecx, dword [0x101f1070]
call dword [section..00cfg]
push edi
call ecx
add esp, 4
mov edi, dword [ebx + 0xc]
mov dword [ebx + 0x108], 0x100037c0
mov dword [ebx + 0x10c], esi
test edi, edi
je 0x1004bf18
mov ecx, dword [0x101f1078]
call dword [section..00cfg]
push edi
call ecx
add esp, 4
cmp dword [ebx + 0x108], 0x100037c0
jne 0x1005050a
mov edx, dword [ebx + 0x10c]
mov eax, edx
sar eax, 0x1f
mov ecx, dword [esp]
push eax
call fcn.100514a0
add esp, 4
mov esi, dword [esp + 4]
mov ecx, esi
mov edx, dword [esp + 0x3c]
call fcn.10129dd0
mov edx, dword [esp + 0x10]
test edx, edx
je 0x1004bf5d
mov ecx, esi
call fcn.10129dd0
mov ecx, dword [esp + 0xa0]
xor ecx, ebp
call fcn.10157a00
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
cmp dword [esp + 0x10], 0
mov edi, dword [esp + 4]
je 0x10050252
push dword [esp + 0x10]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
and eax, 0x3fffffff
je 0x1004bfcb
xor ecx, ecx
mov edi, dword [esp + 0x10]
movzx edx, byte [edi + ecx]
test edx, edx
je 0x1005007c
mov dl, byte [edx + 0x101b1828]
movzx esi, byte [ecx + 0x101cf845]
mov bl, byte [esi + 0x101b1828]
cmp dl, bl
jne 0x1005008b
inc ecx
cmp eax, ecx
mov edi, dword [esp + 4]
jne 0x1004bf97
xor esi, esi
jmp 0x1005026d
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
mov ecx, dword [ecx + eax + 4]
mov esi, dword [esp + 0x10]
test esi, esi
mov dword [esp + 0x20], ecx
je 0x10050649
xor eax, eax
movzx ecx, byte [esi + eax]
movzx edx, byte [eax + str.fast]
cmp cl, dl
je 0x10050655
mov cl, byte [ecx + 0x101b1828]
cmp cl, byte [edx + 0x101b1828]
je 0x10050659
movzx eax, byte [esi]
add eax, 0xffffffc6
cmp eax, 0xfffffff6
jae 0x1005065f
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov edi, eax
and edi, 0x3fffffff
lea eax, [edi + 1]
mov dword [esp + 0x14], eax
xor ecx, ecx
movzx eax, byte [ecx + 0x101b6835]
cmp edi, eax
je 0x1004c054
inc ecx
cmp ecx, 8
jne 0x1004c03e
jmp 0x1004c3b6
test edi, edi
je 0x1004c0a0
movzx eax, byte [ecx + 0x101b682d]
mov dword [esp + 0xc], eax
xor esi, esi
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0xc]
movzx eax, byte [eax + esi + str.onoffalseyestruextrafull]
test eax, eax
je 0x100500da
mov al, byte [eax + 0x101b1828]
mov edx, dword [esp + 0x10]
movzx edx, byte [edx + esi]
mov dl, byte [edx + 0x101b1828]
cmp al, dl
jne 0x100500ea
dec ebx
inc esi
cmp ebx, 1
jg 0x1004c069
cmp ecx, 5
ja 0x1004c049
mov al, byte [ecx + 0x101b683d]
xor ecx, ecx
test al, al
setne cl
mov dword [esp + 0xc], ecx
mov eax, dword [esp + 4]
mov esi, dword [esp + 0x10]
mov edi, dword [esp]
mov ecx, dword [ebp + 8]
cmp dword [ecx + 4], 0
jne 0x1005067c
cmp dword [eax + 0x14], 0
mov ecx, dword [esp + 0x20]
jle 0x1004c133
mov edx, dword [esp + 0xc]
lea esi, [edx*4]
mov dword [esp + 0x14], esi
xor esi, esi
mov edi, 4
mov eax, dword [eax + 0x10]
mov ebx, dword [eax + edi]
test ebx, ebx
je 0x1004c11f
cmp byte [ebx + 9], 0
jne 0x10050377
mov eax, dword [ebx + 4]
and word [eax + 0x18], 0xfff3
mov eax, dword [ebx + 4]
mov edx, dword [esp + 0x14]
or word [eax + 0x18], dx
cmp byte [ebx + 9], 0
jne 0x10050394
inc esi
add edi, 0x10
mov eax, dword [esp + 4]
cmp esi, dword [eax + 0x14]
jl 0x1004c0ee
mov esi, dword [esp + 0x10]
mov edi, dword [esp]
test ecx, ecx
je 0x1004c3bd
cmp byte [ecx + 9], 0
jne 0x100507aa
test esi, esi
je 0x1004c15f
mov eax, dword [ecx + 4]
and word [eax + 0x18], 0xfff3
mov eax, dword [ecx + 4]
mov edx, dword [esp + 0xc]
shl edx, 2
or word [eax + 0x18], dx
mov eax, dword [ecx + 4]
mov esi, dword [eax + 0x18]
shr esi, 2
and esi, 3
cmp byte [ecx + 9], 0
jne 0x100507c9
movzx edx, si
mov ecx, edi
push 0
jmp 0x1004bf37
mov esi, dword [esp + 0x14]
mov eax, esi
mov edx, dword [esp + 0x20]
mov ecx, edx
not ecx
and dword [ebx + 0x20], ecx
not eax
and dword [ebx + 0x24], eax
mov eax, edx
xor eax, 0x80000
or eax, esi
je 0x10050685
test dl, 1
jne 0x10050698
mov ecx, dword [esp]
mov eax, dword [ecx + 0x6c]
cmp dword [ecx + 0x70], eax
jle 0x1004c5bd
lea edx, [eax + 1]
mov dword [ecx + 0x6c], edx
mov ecx, dword [ecx + 0x68]
lea eax, [eax + eax*4]
mov byte [ecx + eax*4], 0xa6
xorps xmm0, xmm0
movups xmmword [ecx + eax*4 + 1], xmm0
mov dword [ecx + eax*4 + 0x10], 0
cmp byte [ebx + 0x55], 0
je 0x1004bf3f
mov eax, dword [esp + 4]
mov esi, dword [eax + 0x14]
test esi, esi
jle 0x1004bf3f
mov eax, dword [esp + 4]
mov edi, dword [eax + 0x10]
inc esi
add edi, 8
mov ecx, dword [edi - 4]
test ecx, ecx
je 0x1004c21d
movzx eax, byte [edi]
mov edx, dword [esp + 4]
mov edx, dword [edx + 0x20]
and edx, 0x38
or edx, eax
call fcn.10050e20
dec esi
add edi, 0x10
cmp esi, 1
ja 0x1004c202
jmp 0x1004bf3f
mov eax, dword [esi + 0x10]
mov ecx, dword [eax + 0xc]
mov cl, byte [ecx + 0x4d]
mov edx, dword [esi + 0x18]
mov byte [esi + 0x54], cl
mov eax, dword [eax + 0xc]
test byte [eax + 0x4e], 1
mov eax, dword [esp + 8]
lea eax, [eax + 4]
mov dword [esp + 0x20], eax
je 0x1004c490
mov ecx, dword [esi + 0x14]
cmp ecx, 2
jl 0x1004c2aa
lea edi, [ecx + 1]
shl ecx, 4
add ecx, 0xfffffffc
mov eax, dword [esi + 0x10]
mov eax, dword [eax + ecx]
test byte [eax + 0x4e], 1
je 0x1004c27a
dec edi
add ecx, 0xfffffff0
cmp edi, 2
ja 0x1004c263
jmp 0x1004c2aa
mov dword [esp + 0x24], edx
lea edx, [edi - 2]
mov dword [esp + 0x44], edi
mov edi, ecx
mov ecx, esi
push 0
push dword [esp + 0x24]
call fcn.10039c30
mov ecx, edi
mov edi, dword [esp + 0x4c]
mov edx, dword [esp + 0x2c]
add esp, 8
test eax, eax
je 0x1004c26f
jmp 0x1004c4ae
test dl, 1
jne 0x1004c2b3
and byte [esi + 0x18], 0xfe
cmp byte [esi + 0x5f], 0
je 0x1004ba78
or byte [esi + 0x18], 0x10
jmp 0x1004ba78
mov al, 1
jmp 0x1004bb68
xor eax, eax
inc eax
mov ebx, dword [esp + 0x18]
mov ecx, ebx
shl eax, cl
mov esi, dword [esp]
or dword [esi + 0x9c], eax
mov ecx, dword [esp + 0x14]
mov edi, dword [ecx + 0x101b2ac8]
cmp ebx, 1
je 0x1004c307
mov ecx, dword [esi]
mov ecx, dword [ecx + 0x10]
mov edx, dword [esp + 0x30]
mov ecx, dword [ecx + edx + 4]
cmp byte [ecx + 9], 0
jne 0x1004c61e
cmp dword [esp + 0x10], 0
jne 0x1004c4bd
mov ecx, dword [esi + 0x6c]
lea eax, [ecx + 3]
cmp eax, dword [esi + 0x70]
jg 0x1005072d
mov eax, dword [esi + 0x68]
lea ecx, [ecx + ecx*4]
mov byte [eax + ecx*4], 2
xorps xmm0, xmm0
movups xmmword [eax + ecx*4 + 1], xmm0
mov dword [eax + ecx*4 + 0x10], 0
mov dword [eax + ecx*4 + 0x14], 0x63
movaps xmm0, xmmword [0x101b11e0]
movups xmmword [eax + ecx*4 + 0x18], xmm0
mov dword [eax + ecx*4 + 0x28], 0x54
movaps xmm0, xmmword [0x101b1370]
movups xmmword [eax + ecx*4 + 0x2c], xmm0
add dword [esi + 0x6c], 3
mov dword [eax + ecx*4 + 4], ebx
mov dword [eax + ecx*4 + 0x18], ebx
mov dword [eax + ecx*4 + 0x20], edi
mov eax, dword [esi + 0x6c]
cmp eax, 2
jl 0x1004bf3f
mov ecx, dword [esp]
mov ecx, dword [ecx + 0x68]
lea edx, [ecx + 0x14]
dec eax
cmp byte [edx], 0xa6
jne 0x1005073c
mov byte [ecx + 0x14], 0xb8
jmp 0x1004bf3f
xor eax, eax
inc eax
mov ecx, ebx
mov edx, 0xa6
push 0
push eax
push eax
call fcn.10021190
add esp, 0xc
jmp 0x1004b8e2
xor eax, eax
jmp 0x1004c0ab
xor esi, esi
jmp 0x1004c175
mov eax, dword [esp + 0x14]
movzx eax, byte [eax + 0x101b2ac6]
lea esi, [eax*4 + 0x101b2ed0]
shl ebx, 3
lea eax, [ebx + ebx*4]
mov dword [esp + 0x24], eax
xor edi, edi
mov eax, dword [esp]
mov eax, dword [eax]
cmp byte [eax + 0x57], 0
jne 0x1004c47b
mov eax, dword [esp]
mov ebx, dword [eax + 0x74]
mov eax, dword [ebx + edi + 0x14]
test eax, eax
mov dword [esp + 0x40], eax
je 0x1005052e
mov eax, dword [eax + 0x78]
mov dword [esp + 0x20], eax
mov ecx, dword [esi]
lea eax, [ebx + edi]
mov dword [esp + 0x44], eax
mov dword [esp + 0xc], ecx
push ecx
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, eax
mov edx, dword [esp + 0x20]
mov eax, edx
sar eax, 0x1f
cmp edx, ecx
sbb eax, 0
movzx eax, word [ebx + edi + 0x10]
jl 0x1005053b
test eax, 0x9000
jne 0x1004d0f6
cmp dword [ebx + edi + 0x18], 0
jne 0x1004d0f6
mov eax, dword [esp + 0xc]
mov dword [ebx + edi + 8], eax
mov dword [ebx + edi + 0x24], 0
and ecx, 0x7fffffff
mov dword [ebx + edi + 0xc], ecx
mov word [ebx + edi + 0x10], 0x2202
mov byte [ebx + edi + 0x12], 1
add esi, 4
add edi, 0x28
cmp dword [esp + 0x24], edi
jne 0x1004c3e2
jmp 0x1004ba91
mov ecx, esi
mov edi, edx
xor edx, edx
push 0
push dword [esp + 0x24]
call fcn.10039c30
mov edx, edi
add esp, 8
test eax, eax
je 0x1004c252
mov ecx, dword [esp + 8]
mov dword [ecx + 0xc], eax
inc dword [ecx + 0x24]
jmp 0x1004bf3f
mov eax, dword [esp + 0x1c]
add eax, 0xffffffe6
cmp eax, 0x11
ja 0x1004c4d9
mov ecx, eax
mov eax, 0x30003
bt eax, ecx
jb 0x1004c312
mov eax, dword [esi + 0x6c]
lea ecx, [eax + 2]
cmp ecx, dword [esi + 0x70]
jg 0x10050c07
mov ecx, dword [esi + 0x68]
lea eax, [eax + eax*4]
lea ebx, [ecx + eax*4]
movaps xmm0, xmmword [0x101b1390]
movups xmmword [ebx], xmm0
xor eax, eax
mov dword [ebx + 0x10], eax
mov byte [ebx + 0x14], 0x64
xorps xmm0, xmm0
movups xmmword [ebx + 0x15], xmm0
mov dword [ebx + 0x24], eax
add dword [esi + 0x6c], 2
mov eax, dword [esp + 0x18]
mov dword [ebx + 4], eax
mov dword [ebx + 0x18], eax
mov dword [ebx + 0x1c], edi
lea esi, [esp + 0x80]
mov dword [esi], 0
mov ecx, dword [esp + 0x10]
mov edx, esi
call fcn.10038f50
mov eax, dword [esi]
mov dword [ebx + 0x20], eax
mov word [ebx + 0x16], 1
cmp edi, 1
jne 0x1004be79
mov eax, dword [esp + 4]
test byte [eax + 0x23], 0x10
je 0x1004be79
mov byte [ebx + 0x14], 0xb8
jmp 0x1004be79
mov eax, dword [ebp + 8]
cmp dword [eax], 0
mov eax, 0xc
mov ecx, dword [esp + 0x18]
cmove ecx, eax
mov dword [esp + 0x18], ecx
mov esi, dword [esp + 0x10]
test esi, esi
je 0x100509d6
xor ecx, ecx
xor eax, eax
inc eax
movzx edx, byte [esi + ecx]
movzx ebx, byte [ecx + 0x101ced45]
cmp dl, bl
je 0x1004c5ad
mov dl, byte [edx + 0x101b1828]
cmp dl, byte [ebx + 0x101b1828]
jne 0x1004c7fc
inc ecx
jmp 0x1004c589
test edx, edx
jne 0x1004c5aa
mov edi, dword [esp]
mov ebx, dword [esp + 0x18]
jmp 0x1004c858
xor eax, eax
mov edx, 0xa6
push eax
push eax
push eax
call fcn.10021190
add esp, 0xc
jmp 0x1004c1de
mov esi, dword [esp + 0x10]
test esi, esi
je 0x1004cc2b
mov al, byte [esi]
mov ecx, eax
add cl, 0xd0
cmp cl, 3
jae 0x1004cc49
movzx ebx, al
add ebx, 0xffffffd0
mov eax, dword [esp + 8]
mov esi, dword [eax]
movzx eax, byte [esi + 0x56]
cmp ebx, eax
je 0x1004bf3f
mov eax, dword [esi + 0x10]
mov ecx, dword [eax + 0x14]
test ecx, ecx
jne 0x10050b02
mov byte [esi + 0x56], bl
jmp 0x1004bf3f
or dword [esi + 0xa0], eax
jmp 0x1004c307
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
mov esi, dword [ecx + eax + 4]
mov edi, dword [esp + 0x10]
test edi, edi
je 0x10050a9c
xor eax, eax
mov ebx, dword [esp + 4]
movzx ecx, byte [edi + eax]
movzx edx, byte [eax + 0x101cfffd]
cmp cl, dl
je 0x10050aaf
mov cl, byte [ecx + 0x101b1828]
cmp cl, byte [edx + 0x101b1828]
je 0x10050ab3
xor eax, eax
movzx ecx, byte [edi + eax]
movzx edx, byte [eax + 0x101ced45]
cmp cl, dl
je 0x10050ab9
mov cl, byte [ecx + 0x101b1828]
cmp cl, byte [edx + 0x101b1828]
je 0x10050abd
xor eax, eax
movzx ecx, byte [edi + eax]
movzx edx, byte [eax + str.incremental]
cmp cl, dl
je 0x1004c6b9
mov cl, byte [ecx + 0x101b1828]
cmp cl, byte [edx + 0x101b1828]
jne 0x1004cede
inc eax
jmp 0x1004c695
mov edx, 2
test ecx, ecx
jne 0x1004c6b6
mov byte [ebx + 0x5a], dl
mov edi, dword [esi + 4]
cmp byte [esi + 9], 0
jne 0x1004cf03
test byte [edi + 0x18], 2
jne 0x1004d08a
test edx, edx
setne byte [edi + 0x11]
cmp edx, 2
sete byte [edi + 0x12]
mov bl, 1
cmp byte [esi + 9], 0
jne 0x1004cf20
dec edx
mov dword [esp + 0xc], edx
cmp edx, 2
setb al
and bl, al
cmp bl, 1
jne 0x1004bf3f
mov edi, dword [esp]
mov esi, dword [edi + 0x6c]
lea eax, [esi + 5]
mov ecx, esi
cmp eax, dword [edi + 0x70]
jg 0x10050ac3
mov eax, dword [edi + 0x68]
lea edx, [ecx + ecx*4]
movaps xmm0, xmmword [0x101b1390]
movups xmmword [eax + edx*4], xmm0
mov dword [eax + edx*4 + 0x10], 0
mov dword [eax + edx*4 + 0x14], 0x63
movaps xmm0, xmmword [0x101b13b0]
movups xmmword [eax + edx*4 + 0x18], xmm0
mov dword [eax + edx*4 + 0x28], 0x10
movaps xmm0, xmmword [0x101b1220]
movups xmmword [eax + edx*4 + 0x2c], xmm0
mov dword [eax + edx*4 + 0x3c], 0x46
movaps xmm0, xmmword [0x101b13c0]
movups xmmword [eax + edx*4 + 0x40], xmm0
mov dword [eax + edx*4 + 0x50], 0x64
movaps xmm0, xmmword [0x101b13d0]
movups xmmword [eax + edx*4 + 0x54], xmm0
add dword [edi + 0x6c], 5
mov ecx, dword [esp + 0x18]
mov dword [eax + edx*4 + 4], ecx
mov dword [eax + edx*4 + 0x18], ecx
add esi, 4
mov dword [eax + edx*4 + 0x30], esi
mov dword [eax + edx*4 + 0x54], ecx
mov esi, dword [esp + 0xc]
mov dword [eax + edx*4 + 0x5c], esi
xor eax, eax
inc eax
shl eax, cl
or dword [edi + 0x9c], eax
cmp ecx, 1
je 0x1004bf3f
mov ecx, dword [esp]
mov ecx, dword [ecx]
mov ecx, dword [ecx + 0x10]
mov edx, dword [esp + 0x30]
mov ecx, dword [ecx + edx + 4]
cmp byte [ecx + 9], 0
je 0x1004bf3f
mov ecx, dword [esp]
or dword [ecx + 0xa0], eax
jmp 0x1004bf3f
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
add eax, ecx
mov eax, dword [eax]
mov dword [esp + 0x28], eax
jmp 0x1004b979
xor ecx, ecx
mov edi, dword [esp]
mov ebx, dword [esp + 0x18]
movzx edx, byte [esi + ecx]
movzx eax, byte [ecx + str.restart]
cmp dl, al
je 0x1004d078
mov dl, byte [edx + 0x101b1828]
cmp dl, byte [eax + 0x101b1828]
jne 0x1004c829
inc ecx
jmp 0x1004c805
xor ecx, ecx
movzx edx, byte [esi + ecx]
movzx eax, byte [ecx + str.truncate]
cmp dl, al
je 0x1004c84f
mov dl, byte [edx + 0x101b1828]
cmp dl, byte [eax + 0x101b1828]
jne 0x10050846
inc ecx
jmp 0x1004c82b
mov eax, 3
test edx, edx
jne 0x1004c84c
mov ecx, dword [esp + 8]
mov dword [ecx + 0x2c], 3
mov ecx, dword [edi + 0x6c]
cmp dword [edi + 0x70], ecx
jle 0x1004d09f
lea edx, [ecx + 1]
mov dword [edi + 0x6c], edx
mov edx, dword [edi + 0x68]
lea ecx, [ecx + ecx*4]
mov dword [edx + ecx*4], 3
mov dword [edx + ecx*4 + 4], ebx
mov dword [edx + ecx*4 + 8], eax
mov dword [edx + ecx*4 + 0xc], 1
mov dword [edx + ecx*4 + 0x10], 0
mov eax, dword [edi + 0x6c]
cmp dword [edi + 0x70], eax
jle 0x1004d0b7
lea ecx, [eax + 1]
mov dword [edi + 0x6c], ecx
mov ecx, dword [edi + 0x68]
lea eax, [eax + eax*4]
mov dword [ecx + eax*4], 0x54
movaps xmm0, xmmword [0x101b1380]
jmp 0x10050338
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
mov eax, dword [ecx + eax + 4]
mov eax, dword [eax + 4]
mov edi, dword [eax]
mov dword [esp + 0x84], 0xffffffff
mov dword [esp + 0x80], 0xfffffffe
cmp dword [esp + 0x10], 0
mov ebx, dword [esp]
je 0x1004c93d
lea esi, [esp + 0x80]
mov ecx, dword [esp + 0x10]
mov edx, esi
call fcn.10057e00
mov eax, dword [esi]
mov ecx, dword [esi + 4]
xor edx, edx
dec edx
mov esi, 0xfffffffe
cmp esi, eax
mov esi, edx
sbb esi, ecx
jge 0x10050b71
mov dword [edi + 0xb0], eax
mov dword [edi + 0xb4], ecx
mov edx, dword [edi + 0xe8]
test edx, edx
je 0x1004c93d
mov dword [edx + 0x10], eax
mov dword [edx + 0x14], ecx
mov edx, dword [edi + 0xb0]
mov ecx, ebx
push dword [edi + 0xb4]
jmp 0x1004bf37
cmp dword [esp + 0x10], 0
je 0x1004cc1e
mov eax, dword [esp + 8]
mov edi, dword [eax]
cmp dword [edi + 0x14], 0
jle 0x1004c9b2
xor ebx, ebx
mov eax, dword [edi + 0x10]
mov ecx, ebx
shl ecx, 4
cmp dword [eax + ecx + 4], 0
je 0x1004c9ac
cmp dword [esp + 0x28], 0
jne 0x10050bb6
mov ecx, dword [esp + 8]
mov eax, dword [ecx + 0x78]
test eax, eax
cmove eax, ecx
mov edx, dword [eax + 0x58]
xor esi, esi
inc esi
mov ecx, ebx
shl esi, cl
bt edx, ebx
jb 0x1004c9ac
or edx, esi
mov dword [eax + 0x58], edx
cmp ebx, 1
je 0x10050bea
inc ebx
cmp ebx, dword [edi + 0x14]
jl 0x1004c969
mov ecx, dword [esp + 8]
mov edx, 2
push dword [esp + 0x28]
push dword [esp + 0x14]
call fcn.10038b60
add esp, 8
mov dword [esp + 0x2c], eax
test eax, eax
je 0x1004bf3f
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 8]
mov dword [esp + 0x34], 0
test eax, eax
je 0x10050bf6
mov ecx, dword [eax + 0x38]
and ecx, 3
cmp ecx, 2
setne byte [esp + 0x18]
je 0x1004ca07
mov eax, dword [eax + 0x14]
test eax, eax
jne 0x1004c9ee
jmp 0x1004ca0b
mov dword [esp + 0x34], eax
mov eax, dword [esp + 8]
mov dword [eax + 0x2c], 7
mov eax, dword [esp + 0x2c]
cmp byte [eax + 0x2b], 1
je 0x10050ae1
mov eax, dword [esp + 0x2c]
movzx edx, word [eax + 0x22]
test dx, dx
jle 0x10050ae1
movzx ecx, dx
mov eax, dword [esp + 0x2c]
mov ebx, dword [eax + 4]
mov eax, dword [esp + 0x14]
lea eax, [eax + 0x101b2ac8]
mov dword [esp + 0x28], eax
xor esi, esi
mov dword [esp + 0x30], 0
movzx eax, word [ebx + 0xe]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], 0
test al, 0x62
mov dword [esp + 0x14], ebx
jne 0x1004fa6d
mov edx, eax
and edx, 1
mov dword [esp + 0xc], edx
sete dl
or dl, byte [esp + 0x18]
je 0x1004cb2f
movzx ecx, word [ebx + 0xc]
mov dword [esp + 8], 0
test ecx, ecx
jne 0x1004faa1
mov ecx, dword [ebx + 4]
xor ebx, ebx
test cl, 0xf
setne dl
test al, 4
mov byte [esp + 0x1c], dl
jne 0x1004faea
shr ecx, 4
mov eax, 0x101e246d
and ecx, 0xf
jne 0x1004fb01
mov ecx, esi
sub ecx, dword [esp + 0x30]
mov edi, esi
mov esi, dword [esp + 0x28]
mov edx, dword [esi]
or edx, dword [esi + 4]
mov dl, byte [esp + 0x1c]
mov bl, dl
mov edx, str.issisii
mov esi, str.issisi
cmove edx, esi
push dword [esp + 0x20]
push dword [esp + 0x10]
push dword [esp + 0x10]
push ebx
push eax
mov ebx, dword [esp + 0x28]
push dword [ebx]
push ecx
push edx
push 1
push dword [esp + 0x24]
call fcn.100511d0
add esp, 0x28
mov eax, dword [esp + 0x2c]
movzx edx, word [eax + 0x22]
inc edi
add ebx, 0x10
movsx ecx, dx
cmp edi, ecx
mov esi, edi
jl 0x1004ca57
jmp 0x1004bf3f
xor edx, edx
inc edx
mov dword [esp + 0xc], edx
test ecx, ecx
jle 0x1004ca8d
mov edi, ebx
mov edx, dword [esp + 0x34]
mov ebx, dword [edx + 4]
lea edx, [ecx + 1]
mov dword [esp + 8], edx
neg ecx
xor edx, edx
inc edx
mov dword [esp + 0xc], edx
movsx edx, word [ebx + edx*2 - 2]
cmp esi, edx
jne 0x10050b8e
mov ebx, edi
jmp 0x1004ca8d
mov eax, dword [esp + 8]
mov dword [eax + 0x2c], 3
mov eax, dword [esp + 4]
mov eax, dword [eax + 0x14]
test eax, eax
jle 0x1004bf3f
xor esi, esi
mov edi, 4
mov ebx, dword [esp + 4]
mov ecx, dword [ebx + 0x10]
mov edx, dword [ecx + edi]
test edx, edx
je 0x1004cbd4
mov eax, dword [edx + 4]
mov edx, dword [eax]
mov eax, 0x101b2184
cmp byte [edx + 0xf], 0
jne 0x1004cbb8
cmp dword [edx], 0x101f17e4
je 0x1004cbb8
mov eax, dword [edx + 0xb8]
push eax
push dword [ecx + edi - 4]
push esi
push 0x101cbbc8
push 1
push dword [esp + 0x14]
call fcn.100511d0
add esp, 0x18
mov eax, dword [ebx + 0x14]
inc esi
add edi, 0x10
cmp esi, eax
jl 0x1004cb90
jmp 0x1004bf3f
test esi, esi
je 0x10050c00
mov eax, dword [esi + 4]
mov edx, dword [eax + 0x24]
mov esi, dword [esp + 4]
mov ecx, dword [esp]
mov eax, edx
sar eax, 0x1f
push eax
jmp 0x1004cc38
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
mov eax, dword [ecx + eax + 0xc]
mov edx, dword [eax + 0x50]
mov eax, edx
sar eax, 0x1f
mov ecx, dword [esp]
push eax
call fcn.100514a0
add esp, 4
mov edx, dword [esp + 0x3c]
mov esi, dword [esp + 4]
jmp 0x1004bf56
mov esi, dword [esp + 4]
movzx edx, byte [esi + 0x56]
mov ecx, dword [esp]
push 0
call fcn.100514a0
add esp, 4
mov edx, dword [esp + 0x3c]
jmp 0x1004bf56
xor ecx, ecx
inc ecx
mov edx, eax
movzx ebx, byte [ecx + 0x101d0424]
cmp dl, bl
je 0x10050c23
movzx edx, dl
mov dl, byte [edx + 0x101b1828]
cmp dl, byte [ebx + 0x101b1828]
je 0x10050c27
xor ecx, ecx
inc ecx
mov ebx, 2
movzx edx, byte [ecx + 0x101ca189]
cmp al, dl
je 0x1004cca0
movzx eax, al
mov al, byte [eax + 0x101b1828]
cmp al, byte [edx + 0x101b1828]
jne 0x100509cf
mov al, byte [esi + ecx]
inc ecx
jmp 0x1004cc7a
test al, al
je 0x1004c5f6
jmp 0x1004cc9a
mov ecx, dword [esp + 0x10]
test ecx, ecx
je 0x10050c78
lea esi, [esp + 0x80]
mov dword [esi], 0
mov edx, esi
call fcn.10038f50
mov eax, dword [esi]
mov esi, eax
test al, 2
mov edx, dword [esp + 0x18]
je 0x1004be79
mov ecx, dword [esp + 8]
mov edi, dword [ecx + 0x28]
lea eax, [edi + 1]
mov dword [ecx + 0x28], eax
mov ecx, edx
cmp dword [esp + 0x28], 0
jne 0x1004cd00
mov eax, dword [esp + 4]
mov ecx, dword [eax + 0x14]
cmp edx, ecx
jge 0x1004cec7
dec ecx
and esi, 1
mov dword [esp + 0x14], esi
lea eax, [esi + 2]
mov dword [esp + 0x28], eax
mov dword [esp + 0x20], edi
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x18], edx
cmp edx, 1
je 0x1004ceb2
mov ecx, dword [esp + 8]
mov eax, dword [ecx + 0x78]
test eax, eax
cmove eax, ecx
mov edx, dword [eax + 0x58]
xor esi, esi
inc esi
mov ecx, dword [esp + 0x18]
shl esi, cl
bt edx, ecx
jb 0x1004cd45
or edx, esi
mov dword [eax + 0x58], edx
mov eax, dword [esp + 4]
mov eax, dword [eax + 0x10]
shl ecx, 4
mov dword [esp + 0xc], ecx
mov eax, dword [eax + ecx + 0xc]
mov ebx, dword [eax + 0x10]
test ebx, ebx
je 0x1004ceb2
mov esi, dword [ebx + 8]
test byte [esi + 0x1d], 1
jne 0x1004cd6f
mov ebx, dword [ebx]
jmp 0x1004cd5a
movzx edi, word [esi + 0x26]
mov eax, dword [esi + 8]
test eax, eax
je 0x1004cd85
test byte [eax + 0x38], 0x80
je 0x1004cdf0
mov eax, dword [eax + 0x14]
jmp 0x1004cd76
add edi, 0x2e
test di, di
je 0x1004cdf0
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0x20]
push 0x70
push esi
push dword [esp + 0x20]
call fcn.100412d0
add esp, 0xc
movsx eax, di
mov dword [esp + 0x1c], eax
mov eax, dword [esp]
mov ecx, dword [eax + 0x6c]
mov edx, dword [esp + 0x28]
lea edi, [ecx + edx]
cmp dword [eax + 0x70], ecx
jle 0x1004d0c9
lea edx, [ecx + 1]
mov dword [eax + 0x6c], edx
mov edx, dword [eax + 0x68]
lea ecx, [ecx + ecx*4]
mov dword [edx + ecx*4], 0x21
mov eax, dword [esp + 0x20]
mov dword [edx + ecx*4 + 4], eax
mov dword [edx + ecx*4 + 8], edi
mov eax, dword [esp + 0x1c]
mov dword [edx + ecx*4 + 0xc], eax
mov dword [edx + ecx*4 + 0x10], 0
mov ecx, dword [esp + 4]
mov eax, dword [ecx + 0x10]
push dword [esi]
mov edx, dword [esp + 0x10]
push dword [eax + edx]
push str.ANALYZE___w_.__w_
push ecx
call fcn.10027ad0
add esp, 0x10
mov esi, eax
cmp dword [esp + 0x14], 0
jne 0x10050a1a
mov edi, dword [esp]
mov eax, dword [edi + 0x6c]
cmp dword [edi + 0x70], eax
jle 0x1004ce9c
lea ecx, [eax + 1]
mov dword [edi + 0x6c], ecx
mov ecx, dword [edi + 0x68]
lea edx, [eax + eax*4]
mov byte [ecx + edx*4], 0x94
xorps xmm0, xmm0
movups xmmword [ecx + edx*4 + 1], xmm0
mov dword [ecx + edx*4 + 0x10], 0
mov ecx, dword [edi]
cmp byte [ecx + 0x57], 0
jne 0x10050a88
test eax, eax
js 0x1004ce93
mov ecx, dword [esp]
mov ecx, dword [ecx + 0x68]
lea eax, [eax + eax*4]
cmp byte [ecx + eax*4 + 1], 0
jne 0x1004ce7d
test esi, esi
je 0x1004cd6b
lea eax, [ecx + eax*4]
inc eax
mov dword [eax + 0xf], esi
mov byte [eax], 0xfa
jmp 0x1004cd6b
lea edx, [ecx + eax*4]
mov ecx, dword [esp]
push 0xfffffffffffffffa
push esi
call fcn.10035fc0
add esp, 8
jmp 0x1004cd6b
mov eax, dword [esp]
mov eax, dword [eax + 0x6c]
dec eax
jmp 0x1004ce56
mov ecx, edi
mov edx, 0x94
xor eax, eax
push eax
push eax
push eax
call fcn.10021190
add esp, 0xc
jmp 0x1004ce46
mov ecx, dword [esp + 0x18]
lea eax, [ecx + 1]
mov edx, dword [esp + 0x2c]
cmp ecx, edx
mov edx, eax
jne 0x1004cd16
xor eax, eax
mov ecx, dword [esp]
mov edx, 0xa6
push eax
push eax
push eax
call fcn.10030110
jmp 0x10050353
xor eax, eax
lea edi, [esp + 0x80]
mov dword [edi], eax
mov ecx, dword [esp + 0x10]
mov edx, edi
call fcn.10038f50
xor edx, edx
mov eax, dword [edi]
cmp eax, 3
cmovb edx, eax
jmp 0x1004c6c2
inc dword [esi + 0xc]
cmp byte [esi + 0xa], 0
jne 0x1004c6d2
mov ecx, esi
mov ebx, edx
call fcn.10020150
mov edx, ebx
jmp 0x1004c6d2
dec dword [esi + 0xc]
jne 0x1004c6f5
mov ecx, esi
mov esi, edx
call fcn.10020120
mov edx, esi
jmp 0x1004c6f5
mov ecx, dword [esp + 0x10]
test ecx, ecx
mov edi, dword [esp + 4]
je 0x1004cf64
lea esi, [esp + 0x80]
mov dword [esi], 0
mov edx, esi
call fcn.10038f50
push dword [esi]
push edi
call sym.nss3.dll_sqlite3_busy_timeout
add esp, 8
mov edx, dword [edi + 0x1ec]
jmp 0x1004bf2e
inc dword [ebx + 0xc]
cmp byte [ebx + 0xa], 0
jne 0x1004be03
mov ecx, ebx
call fcn.10020150
jmp 0x1004be03
dec dword [ecx + 0xc]
jne 0x1004be79
call fcn.10020120
jmp 0x1004be79
mov dword [esp + 0x80], 0
mov ecx, dword [esp + 0x10]
test ecx, ecx
je 0x10050c30
lea edx, [esp + 0x80]
call fcn.10038f50
test eax, eax
je 0x10050c30
mov esi, dword [esp + 0x80]
test esi, esi
jle 0x10050c30
mov ecx, dword [esp + 8]
xor edx, edx
mov edi, dword [esp + 0x18]
push edi
call fcn.101591b0
add esp, 4
mov ebx, dword [esp]
mov ecx, ebx
mov edx, 0x47
xor eax, eax
push eax
xor eax, eax
inc eax
push eax
push esi
call fcn.10030110
add esp, 0xc
mov ecx, ebx
mov edx, 0x3e
xor eax, eax
push eax
push eax
push edi
call fcn.10030110
add esp, 0xc
mov esi, eax
mov ecx, ebx
mov edx, 0x54
xor eax, eax
push eax
push eax
xor edi, edi
inc edi
push edi
call fcn.10030110
add esp, 0xc
mov ecx, ebx
mov edx, 0x56
xor eax, eax
push eax
push 0xffffffffffffffff
push edi
call fcn.10030110
add esp, 0xc
mov ecx, ebx
mov edx, 0x3b
xor eax, eax
push eax
push esi
push edi
call fcn.10030110
add esp, 0xc
mov ecx, dword [ebx]
mov eax, dword [ebx + 0x6c]
cmp byte [ecx + 0x57], 0
jne 0x10050ca7
lea ecx, [esi + esi*4]
shl ecx, 2
add ecx, dword [ebx + 0x68]
mov dword [ecx + 8], eax
jmp 0x1004bf3f
mov eax, 2
test edx, edx
je 0x1004c858
jmp 0x1004c826
test edx, edx
setne al
cmp byte [edi + 0x11], al
je 0x1004c6dc
xor ebx, ebx
jmp 0x1004c6eb
mov ecx, edi
mov edx, 3
push 1
push eax
push ebx
call fcn.10021190
add esp, 0xc
jmp 0x1004c89a
mov ecx, edi
mov edx, 0x54
push 0
push 3
push 1
jmp 0x1005034e
mov ecx, eax
mov edx, 0x21
push dword [esp + 0x1c]
push edi
push dword [esp + 0x28]
call fcn.10021190
add esp, 0xc
jmp 0x1004cdf0
mov esi, ecx
mov ecx, ebx
call fcn.10129d40
mov ecx, esi
jmp 0x1004bc55
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x44]
call fcn.10129d40
mov ecx, dword [esp + 0x20]
jmp 0x1004c455
mov esi, 0xfffffbf0
push dword [esi + 0x101b2ed0]
push 0x101cd1eb
push 1
push dword [esp + 0xc]
call fcn.100511d0
add esp, 0x10
add esi, 0x10
jne 0x1004d111
jmp 0x1004bf3f
cmp dword [esp + 0x10], 0
je 0x1004cc1e
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0x10]
push dword [esp + 0x28]
call fcn.10024280
add esp, 4
mov edi, eax
test eax, eax
je 0x1004fc7a
mov eax, dword [edi + 0x18]
test eax, eax
je 0x1004fe7e
mov ecx, dword [esp + 4]
mov edx, dword [ecx + 0x10]
add edx, 0xc
xor ecx, ecx
dec ecx
inc ecx
lea esi, [edx + 0x10]
cmp dword [edx], eax
mov edx, esi
jne 0x1004d175
jmp 0x1004fe83
cmp dword [esp + 0x10], 0
je 0x1004cc1e
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0x10]
push dword [esp + 0x28]
call fcn.10152030
add esp, 4
test eax, eax
je 0x1004be79
mov esi, eax
mov eax, dword [eax + 0x3c]
test eax, eax
je 0x1004fff3
mov ecx, dword [esp + 4]
mov edx, dword [ecx + 0x10]
add edx, 0xc
xor ecx, ecx
dec ecx
inc ecx
lea edi, [edx + 0x10]
cmp dword [edx], eax
mov edx, edi
jne 0x1004d1c5
jmp 0x1004fff8
mov dword [esp + 0x20], 0
mov eax, dword [ebp + 8]
cmp dword [eax], 1
mov eax, 0
sbb eax, eax
or eax, dword [esp + 0x18]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x3c]
mov al, byte [eax]
mov byte [esp + 0x44], al
mov eax, dword [esp + 8]
mov dword [eax + 0x2c], 6
mov dword [esp + 0x80], 0x64
cmp dword [esp + 0x10], 0
je 0x1004fb0d
lea edx, [esp + 0x80]
mov ecx, dword [esp + 0x10]
call fcn.10038f50
test eax, eax
je 0x1004fccb
mov ecx, dword [esp + 0x80]
test ecx, ecx
mov eax, 0x64
cmovg eax, ecx
mov dword [esp + 0x80], eax
dec eax
mov ecx, dword [esp]
mov edx, 0x47
push 0
push 1
push eax
call fcn.10030110
add esp, 0xc
cmp dword [esp + 0x20], 0
setne al
mov ecx, dword [esp + 4]
cmp dword [ecx + 0x14], 0
jle 0x1004e87e
and byte [esp + 0x44], 0xdf
xor ecx, ecx
mov cl, al
mov dword [esp + 0x70], ecx
mov eax, dword [esp]
add eax, 0x68
mov dword [esp + 0x24], eax
mov dword [esp + 0x40], 0
cmp dword [esp + 0x54], 0
js 0x1004d2bf
mov eax, dword [esp + 0x40]
cmp eax, dword [esp + 0x54]
je 0x1004d2bf
mov ecx, dword [esp + 0x40]
inc ecx
mov eax, dword [esp + 4]
mov dword [esp + 0x40], ecx
cmp ecx, dword [eax + 0x14]
jl 0x1004d297
jmp 0x1004e87e
mov ecx, dword [esp + 8]
mov eax, dword [ecx + 0x78]
test eax, eax
cmove eax, ecx
mov edx, dword [eax + 0x58]
xor esi, esi
inc esi
mov ecx, dword [esp + 0x40]
shl esi, cl
bt edx, ecx
jae 0x1004d3c2
mov eax, dword [esp + 8]
mov byte [eax + 0x17], 0
mov eax, dword [esp + 4]
mov eax, dword [eax + 0x10]
mov ecx, dword [esp + 0x40]
shl ecx, 4
mov dword [esp + 0x14], ecx
mov eax, dword [eax + ecx + 0xc]
mov dword [esp + 0xc], eax
mov eax, dword [eax + 0x10]
test eax, eax
je 0x1004d2a8
xor edi, edi
xor ecx, ecx
mov edx, dword [eax + 8]
cmp dword [esp + 0x20], 0
je 0x1004d31d
cmp dword [esp + 0x20], edx
jne 0x1004d33d
bt dword [edx + 0x1c], 7
sbb ecx, 0xffffffff
mov esi, dword [edx + 8]
xor edx, edx
test esi, esi
je 0x1004d338
inc edx
mov esi, dword [esi + 0x14]
test esi, esi
jne 0x1004d32e
add ecx, edx
cmp edx, edi
cmovg edi, edx
mov eax, dword [eax]
test eax, eax
jne 0x1004d30d
test ecx, ecx
je 0x1004d2a8
add ecx, dword [esp + 0x70]
lea edx, [ecx*4 + 4]
mov ecx, dword [esp + 4]
push 0
call fcn.10158fd0
add esp, 4
test eax, eax
je 0x1004e87e
mov esi, eax
xor eax, eax
cmp dword [esp + 0x20], 0
je 0x1004d381
mov dword [esi + 4], 0
xor eax, eax
inc eax
mov ecx, dword [esp + 0xc]
mov ecx, dword [ecx + 0x10]
test ecx, ecx
je 0x1004d3de
mov edx, dword [ecx + 8]
cmp dword [esp + 0x20], 0
je 0x1004d3a0
cmp dword [esp + 0x20], edx
je 0x1004d3a0
mov ecx, dword [ecx]
jmp 0x1004d388
test byte [edx + 0x1c], 0x80
jne 0x1004d3ae
mov ebx, dword [edx + 0x14]
mov dword [esi + eax*4 + 4], ebx
inc eax
mov edx, dword [edx + 8]
test edx, edx
je 0x1004d39c
mov ebx, dword [edx + 0x2c]
mov dword [esi + eax*4 + 4], ebx
inc eax
mov edx, dword [edx + 0x14]
jmp 0x1004d3b1
or edx, esi
mov dword [eax + 0x58], edx
cmp dword [esp + 0x40], 1
jne 0x1004d2e0
mov ecx, eax
call fcn.10042980
jmp 0x1004d2e0
mov dword [esi], eax
add edi, 8
mov ecx, dword [esp + 8]
cmp dword [ecx + 0x2c], edi
jge 0x1004d3f3
mov ecx, dword [esp + 8]
mov dword [ecx + 0x2c], edi
mov ecx, dword [esp + 8]
mov byte [ecx + 0x13], 0
mov dword [ecx + 0x1c], 0
mov edi, dword [esp]
mov ecx, edi
mov edx, 0x9b
push 1
push eax
push 2
call fcn.10030110
add esp, 0xc
mov ecx, edi
mov edx, eax
push 0xfffffffffffffff2
push esi
call fcn.1003a6c0
add esp, 8
mov eax, dword [edi + 0x6c]
test eax, eax
jle 0x1004d442
movzx ecx, byte [esp + 0x40]
mov edx, dword [esp + 0x24]
mov edx, dword [edx]
lea eax, [eax + eax*4]
mov word [edx + eax*4 - 0x12], cx
mov ebx, dword [esp]
mov ecx, ebx
mov edx, 0x32
xor esi, esi
push esi
push esi
mov eax, 2
push eax
call fcn.10030110
add esp, 0xc
mov dword [esp + 0x1c], eax
mov ecx, dword [esp + 4]
mov eax, dword [ecx + 0x10]
mov edx, dword [esp + 0x14]
push dword [eax + edx]
push str._in_database__s__n
push ecx
call fcn.10027ad0
add esp, 0xc
mov edi, eax
mov ecx, ebx
mov edx, 0x75
push esi
mov eax, 3
push eax
push esi
call fcn.10030110
add esp, 0xc
mov ecx, ebx
mov edx, eax
push 0xfffffffffffffffa
push edi
call fcn.1003a6c0
add esp, 8
mov ecx, ebx
mov edx, 0x6f
mov eax, 3
push eax
push eax
mov eax, 2
push eax
call fcn.10030110
add esp, 0xc
mov ecx, ebx
call fcn.1017b780
mov edx, dword [ebx]
mov eax, dword [ebx + 0x6c]
mov ecx, 0x101f4350
cmp byte [edx + 0x57], 0
jne 0x1004d4e9
mov ecx, dword [esp + 0x1c]
lea ecx, [ecx + ecx*4]
shl ecx, 2
mov edx, dword [esp + 0x24]
add ecx, dword [edx]
mov dword [ecx + 8], eax
mov eax, dword [esp + 0xc]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x30], eax
test eax, eax
je 0x1004d2a8
mov ecx, dword [esp + 0x20]
test ecx, ecx
sete al
mov edx, dword [esp + 0x30]
mov edx, dword [edx + 8]
cmp ecx, edx
sete cl
mov dword [esp + 0x14], edx
cmp byte [edx + 0x2b], 0
jne 0x1004e26f
or al, cl
je 0x1004e26f
mov dword [esp + 0x1c], 0
mov dword [esp + 0x34], 0
cmp byte [esp + 0x44], 0x51
je 0x1004d5d6
mov dword [esp + 0x1c], 0
mov eax, dword [esp + 0x14]
test byte [eax + 0x1c], 0x80
mov dword [esp + 0x34], 0
je 0x1004d5d6
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 8]
mov dword [esp + 0x1c], 0
test eax, eax
je 0x1004d5a5
mov ecx, dword [eax + 0x38]
and ecx, 3
cmp ecx, 2
je 0x1004d5a1
mov eax, dword [eax + 0x14]
jmp 0x1004d56e
push 0
push ebx
push dword [esi]
push dword [esp + 0x14]
call fcn.10041490
add esp, 0x10
dec edi
add esi, 0xffffffec
cmp edi, 2
ja 0x1004d582
jmp 0x1004e83c
mov dword [esp + 0x1c], eax
mov esi, dword [esp + 0x1c]
movzx edx, word [esi + 0x32]
mov ecx, dword [esp + 8]
call fcn.10057c40
movzx ecx, word [esi + 0x32]
lea esi, [eax + ecx]
dec esi
mov ecx, dword [esp]
mov edx, 0x4b
push esi
mov dword [esp + 0x38], eax
push eax
push 1
call fcn.10030110
add esp, 0xc
sub esp, 0x18
lea eax, [esp + 0x90]
mov dword [esp + 0x14], eax
lea eax, [esp + 0x94]
mov dword [esp + 0x10], eax
movaps xmm0, xmmword [0x101b13a0]
movups xmmword [esp], xmm0
mov ecx, dword [esp + 0x20]
mov esi, dword [esp + 0x2c]
mov edx, esi
call fcn.10053e10
add esp, 0x18
mov ecx, dword [esp]
mov edx, 0x47
xor eax, eax
push eax
push 7
push eax
call fcn.10030110
add esp, 0xc
mov esi, dword [esi + 8]
test esi, esi
je 0x1004d64b
mov edi, 8
mov ecx, dword [esp]
mov edx, 0x47
xor eax, eax
push eax
push edi
push eax
call fcn.10030110
add esp, 0xc
mov esi, dword [esi + 0x14]
inc edi
test esi, esi
jne 0x1004d62e
mov ebx, dword [esp + 0x14]
lea edi, [ebx + 8]
mov esi, dword [esp]
mov ecx, esi
mov edx, 0x24
xor eax, eax
push eax
push eax
push dword [esp + 0x84]
call fcn.10030110
add esp, 0xc
mov ecx, esi
mov edx, 0x56
xor eax, eax
push eax
push 1
push 7
call fcn.10030110
add esp, 0xc
mov dword [esp + 0x58], eax
test byte [ebx + 0x1c], 0x80
mov dword [esp + 0x5c], edi
jne 0x1004d6d3
mov eax, dword [esp + 0x14]
movsx ecx, word [eax + 0x22]
xor eax, eax
dec eax
test ecx, ecx
jle 0x1004d6c0
mov eax, dword [esp + 0x14]
mov edx, dword [eax + 4]
add edx, 0xe
xor eax, eax
dec eax
mov bl, byte [edx]
and bl, 0x20
cmp bl, 1
adc eax, 0
add edx, 0x10
dec ecx
jne 0x1004d6af
mov ecx, dword [esp + 0x14]
movsx ecx, word [ecx + 0x20]
xor edx, edx
cmp eax, ecx
sete dl
sub eax, edx
jmp 0x1004d6e8
mov eax, dword [edi]
mov edx, dword [eax + 0x38]
and edx, 3
lea edi, [eax + 0x14]
cmp edx, 2
jne 0x1004d6d3
movzx eax, word [eax + 0x34]
dec eax
test eax, eax
js 0x1004d736
mov esi, dword [esp]
mov ecx, esi
mov edx, 0x5e
push 3
push eax
push dword [esp + 0x84]
call fcn.10030110
add esp, 0xc
mov ecx, dword [esi]
mov eax, 0x101f4350
cmp byte [ecx + 0x57], 0
jne 0x1004d727
mov ecx, dword [esp]
mov eax, dword [ecx + 0x68]
mov ecx, dword [ecx + 0x6c]
lea ecx, [ecx + ecx*4]
lea eax, [eax + ecx*4]
add eax, 0xffffffec
cmp dword [eax + 0xc], 3
jne 0x1004d736
cmp byte [eax], 0x5e
jne 0x1004d736
or byte [eax + 2], 0x80
cmp byte [esp + 0x44], 0x51
je 0x1004d748
cmp dword [esp + 0x1c], 0
jne 0x1004e66e
mov eax, dword [esp + 0x14]
cmp word [eax + 0x22], 0
jle 0x1004db8a
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x2c], eax
xor edi, edi
mov eax, dword [esp + 0x14]
movsx eax, word [eax + 0x20]
cmp edi, eax
jne 0x1004d796
inc edi
mov eax, dword [esp + 0x14]
movsx eax, word [eax + 0x22]
cmp edi, eax
jl 0x1004d764
jmp 0x1004db8a
cmp word [edx + eax*2], di
je 0x1004d88a
inc eax
cmp ecx, eax
jne 0x1004d782
jmp 0x1004e79f
mov eax, dword [esp + 0x14]
mov ebx, dword [eax + 4]
mov esi, edi
shl esi, 4
bt dword [esp + 0x2c], 0x10
jb 0x1004d7c2
cmp byte [ebx + esi + 8], 0x42
setge byte [esp + 0xc]
mov eax, dword [ebx + esi + 4]
mov dword [esp + 0x18], 0
jmp 0x1004d7d3
mov eax, dword [ebx + esi + 4]
test al, 0xe0
setne cl
mov dword [esp + 0x18], ecx
mov byte [esp + 0xc], cl
test al, 0xf
jne 0x1004d7de
cmp byte [esp + 0xc], 0
je 0x1004d770
test byte [ebx + esi + 0xe], 0x20
jne 0x1004d835
movzx eax, word [ebx + esi + 0xc]
mov dword [esp + 0x4c], 5
test eax, eax
je 0x1004d814
mov dword [esp + 0x74], 0
mov dword [esp + 0x4c], 5
mov ecx, dword [esp + 0x14]
cmp byte [ecx + 0x2b], 0
je 0x1004e45d
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x14]
test byte [eax + 0x1c], 0x80
jne 0x1004d867
movsx edx, di
mov ecx, dword [esp + 0x14]
call fcn.10159380
cwde
jmp 0x1004d88b
mov ecx, dword [esp]
mov edx, dword [esp + 0x14]
push 3
push edi
push dword [esp + 0x84]
call fcn.10035ca0
add esp, 0xc
mov dword [esp + 0x4c], 5
mov dword [esp + 0x48], 3
xor eax, eax
dec eax
mov dword [esp + 0x38], eax
jmp 0x1004d88f
mov eax, dword [esp + 0x5c]
mov edx, dword [eax]
mov ecx, dword [edx + 0x38]
and ecx, 3
lea eax, [edx + 0x14]
cmp ecx, 2
jne 0x1004d86b
movzx ecx, word [edx + 0x34]
xor eax, eax
dec eax
test ecx, ecx
jne 0x1004e488
cwde
mov dword [esp + 0x48], eax
lea edx, [ebx + esi]
add edx, 4
mov eax, dword [esp + 8]
mov ecx, dword [eax + 0x38]
mov dword [esp + 0x28], ecx
add ecx, 0xfffffffe
mov dword [esp + 0x50], ecx
mov dword [eax + 0x38], ecx
mov dword [esp + 0x6c], edx
test byte [edx], 0xf
jne 0x1004d9aa
cmp byte [esp + 0x18], 0
je 0x1004da14
mov ebx, dword [esp]
mov ecx, ebx
mov edx, 0x12
push dword [esp + 0x48]
push dword [esp + 0x54]
push dword [esp + 0x40]
call fcn.10030110
add esp, 0xc
mov ecx, dword [ebx]
cmp byte [ecx + 0x57], 0
jne 0x1004d8fe
mov ecx, dword [esp + 0x24]
mov ecx, dword [ecx]
lea eax, [eax + eax*4]
mov byte [ecx + eax*4 + 1], 0xfd
mov edx, dword [esp + 0x4c]
mov dword [ecx + eax*4 + 0x10], edx
mov eax, dword [esp]
mov eax, dword [eax + 0x6c]
test eax, eax
jle 0x1004d929
mov ecx, dword [esp + 0x6c]
mov ecx, dword [ecx]
shr ecx, 4
and ecx, 0xf
movzx ecx, byte [ecx + 0x101b67a7]
mov edx, dword [esp + 0x24]
mov edx, dword [edx]
lea eax, [eax + eax*4]
mov word [edx + eax*4 - 0x12], cx
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 4]
mov ecx, dword [esp + 0x6c]
mov ecx, dword [ecx]
shr ecx, 2
and ecx, 0x3c
push dword [eax + esi]
push dword [edx]
push dword [ecx + 0x101f1838]
push str.non__s_value_in__s._s
push dword [esp + 0x14]
call fcn.10027ad0
add esp, 0x14
mov esi, eax
mov ebx, dword [esp]
mov ecx, ebx
mov edx, 0x75
xor eax, eax
push eax
push 3
push eax
call fcn.10030110
add esp, 0xc
mov ecx, ebx
mov edx, eax
push 0xfffffffffffffffa
push esi
call fcn.1003a6c0
add esp, 8
mov eax, dword [esp]
mov ecx, dword [eax + 0xc]
mov eax, dword [esp + 0x28]
neg eax
mov edx, dword [ecx + 0x38]
add edx, dword [ecx + 0x3c]
jns 0x1004da31
mov edx, dword [esp]
push eax
call fcn.100329e0
add esp, 4
jmp 0x1004da3d
mov ecx, dword [esp]
mov edx, 0x12
push dword [esp + 0x48]
push dword [esp + 0x54]
push dword [esp + 0x40]
call fcn.10030110
add esp, 0xc
mov dword [esp + 0x60], eax
mov eax, dword [esp]
mov eax, dword [eax]
cmp byte [eax + 0x57], 0
jne 0x1004d9ef
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov ecx, dword [esp + 0x60]
lea ecx, [ecx + ecx*4]
mov byte [eax + ecx*4 + 1], 0xfd
mov edx, dword [esp + 0x4c]
mov dword [eax + ecx*4 + 0x10], edx
lea eax, [ebx + esi]
mov dword [esp + 0x68], eax
mov eax, dword [esp]
mov eax, dword [eax + 0x6c]
cmp dword [esp + 0x38], 0
jns 0x1004da7b
test eax, eax
jg 0x1004e492
mov eax, dword [esp + 0x60]
jmp 0x1004dabd
bt dword [esp + 0x2c], 0x10
jb 0x1004d981
mov al, byte [ebx + esi + 8]
cmp al, 0x42
jne 0x1004e513
jmp 0x1004e4a7
mov edx, dword [esp]
mov edx, dword [edx + 0x6c]
mov ecx, dword [ecx + 0x40]
mov dword [ecx + eax*4], edx
mov esi, dword [esp]
mov ecx, esi
call fcn.1017b780
mov ecx, dword [esi + 0xc]
xor eax, eax
inc eax
sub eax, dword [esp + 0x28]
mov edx, dword [ecx + 0x38]
add edx, dword [ecx + 0x3c]
js 0x1004da6a
mov edx, dword [esp]
mov edx, dword [edx + 0x6c]
mov ecx, dword [ecx + 0x40]
mov dword [ecx + eax*4], edx
jmp 0x1004d770
mov edx, dword [esp]
push eax
call fcn.100329e0
add esp, 4
jmp 0x1004d770
test eax, eax
jg 0x1004e62b
mov ecx, dword [esp]
mov edx, 0x5e
mov eax, 3
push eax
push dword [esp + 0x4c]
push dword [esp + 0x40]
call fcn.10030110
add esp, 0xc
mov ecx, dword [esp]
mov edx, 0x33
push 0
push dword [esp + 0x54]
mov eax, 3
push eax
call fcn.10030110
add esp, 0xc
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x68]
push dword [eax]
mov eax, dword [esp + 0x18]
push dword [eax]
push str.NULL_value_in__s._s
push dword [esp + 0x10]
call fcn.10027ad0
add esp, 0x10
mov dword [esp + 0x68], eax
mov ecx, dword [esp]
mov edx, 0x75
xor eax, eax
push eax
push 3
push eax
call fcn.10030110
add esp, 0xc
mov ecx, dword [esp]
mov edx, eax
push 0xfffffffffffffffa
push dword [esp + 0x6c]
call fcn.1003a6c0
add esp, 8
cmp byte [esp + 0xc], 0
je 0x1004d8b7
mov eax, dword [esp + 0x28]
dec eax
mov dword [esp + 0xc], eax
mov ecx, dword [esp]
mov edx, 9
xor eax, eax
push eax
xor eax, eax
push dword [esp + 0x10]
push eax
call fcn.10030110
add esp, 0xc
mov eax, dword [esp]
mov ecx, dword [eax]
mov dword [esp + 0xc], 0x101f4350
cmp byte [ecx + 0x57], 0
mov ecx, 0x101f4350
je 0x1004e640
mov eax, dword [esp]
mov edx, dword [eax + 0x6c]
mov dword [ecx + 8], edx
mov edx, dword [eax]
mov ecx, dword [eax + 0x6c]
cmp byte [edx + 0x57], 0
je 0x1004e655
mov eax, dword [esp + 0xc]
mov dword [eax + 8], ecx
jmp 0x1004d8b7
push dword [esp + 0x10]
call fcn.10027ad0
add esp, 0x10
jmp 0x1004d958
mov eax, dword [esp + 0x14]
mov edx, dword [eax + 0x10]
test edx, edx
je 0x1004dbd1
mov eax, dword [esp + 4]
test byte [eax + 0x21], 2
jne 0x1004dbd1
mov esi, dword [esp + 4]
mov ecx, esi
push 0
call fcn.100015a0
add esp, 4
mov dword [esp + 0xc], eax
cmp byte [esi + 0x57], 0
je 0x1004e810
cmp dword [esp + 0xc], 0
je 0x1004dbd1
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0xc]
call fcn.10021700
cmp byte [esp + 0x44], 0x51
je 0x1004e227
mov eax, dword [esp + 0x5c]
mov eax, dword [eax]
mov dword [esp + 0xc], eax
test eax, eax
je 0x1004e27a
xor eax, eax
xor ecx, ecx
dec ecx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], 0
mov ecx, dword [esp + 8]
mov esi, dword [ecx + 0x38]
dec esi
mov dword [ecx + 0x38], esi
mov ecx, dword [esp + 0xc]
cmp dword [esp + 0x1c], ecx
jne 0x1004dc2c
inc dword [esp + 0x2c]
mov ecx, dword [esp + 0xc]
mov ecx, dword [ecx + 0x14]
mov dword [esp + 0xc], ecx
test ecx, ecx
jne 0x1004dbff
jmp 0x1004e27a
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xc]
push dword [esp + 0x28]
push eax
lea eax, [esp + 0x7c]
push eax
xor eax, eax
push eax
push eax
push dword [esp + 0x90]
call fcn.1005cc70
add esp, 0x18
mov dword [esp + 0x28], eax
mov ebx, dword [esp + 0x2c]
lea eax, [ebx + 8]
mov dword [esp + 0x18], eax
mov edi, dword [esp]
mov ecx, edi
mov edx, 0x56
xor eax, eax
push eax
push 1
push dword [esp + 0x20]
call fcn.10030110
add esp, 0xc
mov eax, dword [esp + 0xc]
movzx eax, word [eax + 0x34]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x78]
add eax, ebx
mov ecx, edi
mov edx, 0x1d
push dword [esp + 0x28]
push esi
push eax
call fcn.10030110
add esp, 0xc
mov dword [esp + 0x18], eax
mov eax, dword [edi]
cmp byte [eax + 0x57], 0
jne 0x1004dcc8
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov ecx, dword [esp + 0x18]
lea ecx, [ecx + ecx*4]
mov byte [eax + ecx*4 + 1], 0xfd
mov edx, dword [esp + 0x38]
mov dword [eax + ecx*4 + 0x10], edx
mov esi, dword [esp]
mov ecx, esi
mov edx, 0x75
xor ebx, ebx
push ebx
mov edi, 3
push edi
push ebx
call fcn.10030110
add esp, 0xc
mov ecx, esi
mov edx, eax
push ebx
push 0x101e1c6d
call fcn.1003a6c0
add esp, 8
mov ecx, esi
mov edx, 0x6f
push edi
push edi
push 7
call fcn.10030110
add esp, 0xc
mov ecx, esi
mov edx, 0x75
push ebx
mov eax, 4
push eax
mov edi, 4
push ebx
call fcn.10030110
add esp, 0xc
mov ecx, esi
mov edx, eax
push ebx
push str._missing_from_index
call fcn.1003a6c0
add esp, 8
mov ecx, esi
mov edx, 0x6f
mov eax, 3
push eax
push eax
push edi
call fcn.10030110
add esp, 0xc
mov eax, dword [esp + 0xc]
mov edi, dword [eax]
mov ecx, esi
mov edx, 0x75
push ebx
mov eax, 4
push eax
push ebx
call fcn.10030110
add esp, 0xc
mov ecx, esi
mov dword [esp + 0x38], eax
mov edx, eax
push ebx
push edi
call fcn.1003a6c0
add esp, 8
mov ecx, esi
mov edx, 0x6f
mov eax, 3
push eax
push eax
mov eax, 4
push eax
call fcn.10030110
add esp, 0xc
mov ecx, esi
call fcn.1017b780
mov dword [esp + 0x50], eax
mov edx, dword [esi]
mov eax, dword [esi + 0x6c]
mov ecx, 0x101f4350
cmp byte [edx + 0x57], 0
jne 0x1004ddc4
mov ecx, dword [esp + 0x18]
lea ecx, [ecx + ecx*4]
shl ecx, 2
mov edx, dword [esp + 0x24]
add ecx, dword [edx]
mov dword [ecx + 8], eax
mov eax, dword [esp + 0x14]
test byte [eax + 0x1c], 0x80
jne 0x1004deb7
mov eax, dword [esp + 0x78]
add eax, dword [esp + 0x2c]
mov edi, dword [esp]
mov ecx, edi
mov edx, 0x8e
xor ebx, ebx
push ebx
mov esi, 3
push esi
push eax
call fcn.10030110
add esp, 0xc
mov eax, dword [esp + 0xc]
movzx eax, word [eax + 0x34]
mov ecx, dword [esp + 0x28]
add eax, ecx
dec eax
mov ecx, edi
mov edx, 0x35
push eax
push ebx
push esi
call fcn.10030110
add esp, 0xc
mov dword [esp + 0x18], eax
mov ecx, edi
mov edx, 0x75
push ebx
push esi
push ebx
call fcn.10030110
add esp, 0xc
mov ecx, edi
mov edx, eax
push ebx
push str.rowid_not_at_end_of_record_for_row
call fcn.1003a6c0
add esp, 8
mov ecx, edi
mov edx, 0x6f
push esi
push esi
push 7
call fcn.10030110
add esp, 0xc
mov ecx, edi
mov edx, 0x75
push ebx
push 4
push ebx
call fcn.10030110
add esp, 0xc
mov ecx, edi
mov edx, eax
push ebx
push str._of_index
call fcn.1003a6c0
add esp, 8
mov eax, dword [esp + 0x38]
dec eax
mov ecx, edi
mov edx, 9
push ebx
push eax
push ebx
call fcn.10030110
add esp, 0xc
mov ecx, dword [edi]
mov eax, 0x101f4350
cmp byte [ecx + 0x57], 0
jne 0x1004deae
mov eax, dword [esp + 0x18]
lea eax, [eax + eax*4]
shl eax, 2
mov ecx, dword [esp + 0x24]
add eax, dword [ecx]
mov ecx, dword [esp]
mov ecx, dword [ecx + 0x6c]
mov dword [eax + 8], ecx
mov eax, dword [esp + 0xc]
movzx eax, word [eax + 0x32]
test ax, ax
je 0x1004e030
xor edi, edi
mov dword [esp + 0x18], 0
mov ecx, dword [esp + 0xc]
mov ecx, dword [ecx + 0x20]
cmp dword [ecx + edi*4], 0x101b1a9f
je 0x1004df3f
cmp dword [esp + 0x18], 0
jne 0x1004defa
mov eax, dword [esp + 8]
mov edx, dword [eax + 0x38]
dec edx
mov ecx, edx
mov dword [esp + 0x18], edx
mov dword [eax + 0x38], edx
mov eax, dword [esp + 0x78]
add eax, dword [esp + 0x2c]
mov ebx, dword [esp]
mov ecx, ebx
mov edx, 0x5e
mov esi, 3
push esi
push edi
push eax
call fcn.10030110
add esp, 0xc
mov eax, dword [esp + 0x28]
add eax, edi
mov ecx, ebx
mov edx, 0x34
push eax
push dword [esp + 0x1c]
push esi
call fcn.10030110
add esp, 0xc
mov eax, dword [esp + 0xc]
movzx eax, word [eax + 0x32]
inc edi
movzx ecx, ax
cmp edi, ecx
jb 0x1004ded2
cmp dword [esp + 0x18], 0
je 0x1004e030
mov edi, dword [esp]
mov ecx, edi
mov edx, 9
xor eax, eax
push eax
push eax
push eax
call fcn.10030110
add esp, 0xc
mov dword [esp + 0x48], eax
mov ecx, dword [edi + 0xc]
not dword [esp + 0x18]
mov eax, dword [ecx + 0x38]
add eax, dword [ecx + 0x3c]
js 0x1004e213
mov eax, dword [esp]
mov eax, dword [eax + 0x6c]
mov ecx, dword [ecx + 0x40]
mov edx, dword [esp + 0x18]
mov dword [ecx + edx*4], eax
mov esi, dword [esp]
mov ecx, esi
mov edx, 0x75
xor edi, edi
push edi
mov ebx, 3
push ebx
push edi
call fcn.10030110
add esp, 0xc
mov ecx, esi
mov edx, eax
push edi
push 0x101e1c6d
call fcn.1003a6c0
add esp, 8
mov ecx, esi
mov edx, 0x6f
push ebx
push ebx
push 7
call fcn.10030110
add esp, 0xc
mov ecx, esi
mov edx, 0x75
push edi
push 4
push edi
call fcn.10030110
add esp, 0xc
mov ecx, esi
mov edx, eax
push edi
push str._values_differ_from_index
call fcn.1003a6c0
add esp, 8
mov eax, dword [esp + 0x38]
dec eax
mov ecx, esi
mov edx, 9
push edi
push eax
push edi
call fcn.10030110
add esp, 0xc
mov edx, dword [esi]
mov eax, dword [esi + 0x6c]
mov ecx, 0x101f4350
cmp byte [edx + 0x57], 0
jne 0x1004e02d
mov ecx, dword [esp + 0x48]
lea ecx, [ecx + ecx*4]
shl ecx, 2
mov edx, dword [esp + 0x24]
add ecx, dword [edx]
mov dword [ecx + 8], eax
mov eax, dword [esp + 0xc]
cmp byte [eax + 0x36], 0
je 0x1004e1a3
mov eax, dword [esp + 8]
mov edx, dword [eax + 0x38]
mov ecx, edx
mov dword [esp + 0x18], edx
lea esi, [edx - 1]
mov dword [eax + 0x38], esi
mov eax, dword [esp + 0xc]
movzx eax, word [eax + 0x32]
test ax, ax
je 0x1004e0ab
xor edi, edi
mov ecx, dword [esp + 0xc]
mov ecx, dword [ecx + 4]
movzx ecx, word [ecx + edi*2]
test cx, cx
js 0x1004e081
mov edx, dword [esp + 0x14]
mov edx, dword [edx + 4]
shl ecx, 4
test byte [edx + ecx + 4], 0xf
jne 0x1004e0a3
mov eax, dword [esp + 0x28]
add eax, edi
mov ecx, dword [esp]
mov edx, 0x32
push 0
push esi
push eax
call fcn.10030110
add esp, 0xc
mov eax, dword [esp + 0xc]
movzx eax, word [eax + 0x32]
inc edi
movzx ecx, ax
cmp edi, ecx
jb 0x1004e060
mov eax, dword [esp + 0x78]
add eax, dword [esp + 0x2c]
mov edi, dword [esp]
mov ecx, edi
mov edx, 0x27
xor ebx, ebx
push ebx
push ebx
push eax
call fcn.10030110
add esp, 0xc
mov dword [esp + 0x48], eax
mov ecx, edi
mov edx, 9
push ebx
push esi
push ebx
call fcn.10030110
add esp, 0xc
mov edx, dword [edi]
mov eax, dword [edi + 0x6c]
mov ecx, 0x101f4350
cmp byte [edx + 0x57], 0
jne 0x1004e100
mov ecx, dword [esp + 0x48]
lea ecx, [ecx + ecx*4]
shl ecx, 2
mov edx, dword [esp + 0x24]
add ecx, dword [edx]
mov dword [ecx + 8], eax
mov eax, dword [esp + 0xc]
movzx edi, word [eax + 0x32]
mov eax, dword [esp + 0x78]
add eax, dword [esp + 0x2c]
mov ebx, dword [esp]
mov ecx, ebx
mov edx, 0x29
push dword [esp + 0x28]
push esi
push eax
call fcn.10030110
add esp, 0xc
mov ecx, dword [ebx]
cmp byte [ecx + 0x57], 0
jne 0x1004e145
mov ecx, dword [esp + 0x24]
mov ecx, dword [ecx]
lea eax, [eax + eax*4]
mov byte [ecx + eax*4 + 1], 0xfd
mov dword [ecx + eax*4 + 0x10], edi
mov esi, dword [esp]
mov ecx, esi
mov edx, 0x75
xor edi, edi
push edi
push 3
push edi
call fcn.10030110
add esp, 0xc
mov ecx, esi
mov edx, eax
push edi
push str.non_unique_entry_in_index
call fcn.1003a6c0
add esp, 8
mov ecx, esi
mov edx, 9
push edi
push dword [esp + 0x3c]
push edi
call fcn.10030110
add esp, 0xc
mov ecx, dword [esi + 0xc]
neg dword [esp + 0x18]
mov eax, dword [ecx + 0x38]
add eax, dword [ecx + 0x3c]
js 0x1004e1f7
mov eax, dword [esp]
mov eax, dword [eax + 0x6c]
mov ecx, dword [ecx + 0x40]
mov edx, dword [esp + 0x18]
mov dword [ecx + edx*4], eax
mov eax, dword [esp]
mov edx, dword [eax]
mov eax, dword [eax + 0x6c]
mov ecx, 0x101f4350
cmp byte [edx + 0x57], 0
jne 0x1004e1c6
mov ecx, dword [esp + 0x50]
lea ecx, [ecx + ecx*4]
shl ecx, 2
mov edx, dword [esp + 0x24]
add ecx, dword [edx]
mov dword [ecx + 8], eax
mov eax, dword [esp + 0x74]
test eax, eax
je 0x1004e1ee
mov ecx, dword [esp + 8]
mov edx, dword [ecx + 8]
mov ecx, dword [edx + 0xc]
not eax
mov esi, dword [ecx + 0x38]
add esi, dword [ecx + 0x3c]
js 0x1004e208
mov edx, dword [edx + 0x6c]
mov ecx, dword [ecx + 0x40]
mov dword [ecx + eax*4], edx
mov eax, dword [esp + 0xc]
jmp 0x1004dc14
mov edx, dword [esp]
push dword [esp + 0x18]
call fcn.100329e0
add esp, 4
jmp 0x1004e1a3
push eax
call fcn.100329e0
add esp, 4
jmp 0x1004e1ee
mov edx, dword [esp]
push dword [esp + 0x18]
call fcn.100329e0
add esp, 4
jmp 0x1004df90
mov esi, dword [esp]
mov ecx, esi
mov edx, 0x27
push 0
push dword [esp + 0x5c]
push dword [esp + 0x84]
call fcn.10030110
add esp, 0xc
mov ecx, dword [esi]
mov eax, 0x101f4350
cmp byte [ecx + 0x57], 0
jne 0x1004e266
mov eax, dword [esp + 0x58]
lea eax, [eax + eax*4]
mov ecx, dword [esp + 0x24]
mov ecx, dword [ecx]
lea eax, [ecx + eax*4]
add eax, 0xffffffec
mov ecx, dword [esp]
mov ecx, dword [ecx + 0x6c]
mov dword [eax + 8], ecx
mov eax, dword [esp + 0x30]
mov eax, dword [eax]
jmp 0x1004d4f3
mov esi, dword [esp]
mov ecx, esi
mov edx, 0x27
push 0
push dword [esp + 0x5c]
push dword [esp + 0x84]
call fcn.10030110
add esp, 0xc
mov edx, dword [esi]
mov eax, dword [esi + 0x6c]
mov ecx, 0x101f4350
cmp byte [edx + 0x57], 0
jne 0x1004e2bc
mov ecx, dword [esp + 0x58]
lea ecx, [ecx + ecx*4]
mov edx, dword [esp + 0x24]
mov edx, dword [edx]
lea ecx, [edx + ecx*4]
add ecx, 0xffffffec
mov dword [ecx + 8], eax
mov esi, dword [esp]
mov ecx, esi
mov edx, 0x75
xor edi, edi
push edi
push 2
push edi
call fcn.10030110
add esp, 0xc
mov ecx, esi
mov edx, eax
push edi
push str.wrong__of_entries_in_index
call fcn.1003a6c0
add esp, 8
mov eax, dword [esp + 0x5c]
mov edi, dword [eax]
test edi, edi
je 0x1004e3ee
mov ebx, 8
cmp dword [esp + 0x1c], edi
jne 0x1004e30f
mov edi, dword [edi + 0x14]
inc ebx
test edi, edi
jne 0x1004e2fc
jmp 0x1004e3ee
mov eax, dword [esp + 0x78]
add eax, ebx
add eax, 0xfffffff8
mov dword [esp + 0xc], eax
mov esi, dword [esp]
mov ecx, esi
mov edx, 0x62
xor eax, eax
push eax
mov eax, 3
push eax
push dword [esp + 0x14]
call fcn.10030110
add esp, 0xc
mov ecx, esi
mov edx, 0x35
mov eax, 3
push eax
xor eax, eax
push eax
push ebx
call fcn.10030110
add esp, 0xc
mov dword [esp + 0x14], eax
mov eax, dword [esi + 0x6c]
test eax, eax
jle 0x1004e36f
mov ecx, dword [esp + 0x24]
mov ecx, dword [ecx]
lea eax, [eax + eax*4]
mov word [ecx + eax*4 - 0x12], 0x90
mov eax, dword [edi]
mov dword [esp + 0xc], eax
mov esi, dword [esp]
mov ecx, esi
mov edx, 0x75
xor eax, eax
push eax
mov eax, 4
push eax
xor eax, eax
push eax
call fcn.10030110
add esp, 0xc
mov ecx, esi
mov edx, eax
xor eax, eax
push eax
push dword [esp + 0x10]
call fcn.1003a6c0
add esp, 8
mov ecx, esi
mov edx, 0x6f
push 3
push 2
mov eax, 4
push eax
call fcn.10030110
add esp, 0xc
mov ecx, esi
call fcn.1017b780
mov edx, dword [esi]
mov eax, dword [esi + 0x6c]
mov ecx, 0x101f4350
cmp byte [edx + 0x57], 0
jne 0x1004e3e6
mov ecx, dword [esp + 0x14]
lea ecx, [ecx + ecx*4]
shl ecx, 2
mov edx, dword [esp + 0x24]
add ecx, dword [edx]
mov dword [ecx + 8], eax
jmp 0x1004e302
cmp dword [esp + 0x1c], 0
je 0x1004e26f
mov eax, dword [esp + 0x1c]
movzx eax, word [eax + 0x32]
cmp eax, 1
jne 0x1004e43d
cmp dword [esp + 0x34], 0
je 0x1004e26f
mov eax, dword [esp + 8]
movzx eax, byte [eax + 0x13]
cmp eax, 7
ja 0x1004e26f
mov ecx, eax
inc cl
mov edx, dword [esp + 8]
mov byte [edx + 0x13], cl
mov ecx, dword [esp + 0x34]
mov dword [edx + eax*4 + 0xa0], ecx
jmp 0x1004e26f
mov ecx, dword [esp + 8]
cmp dword [ecx + 0x1c], eax
jge 0x1004e26f
mov ecx, dword [esp + 8]
mov dword [ecx + 0x1c], eax
mov eax, dword [esp + 0x34]
mov dword [ecx + 0x20], eax
jmp 0x1004e26f
mov ecx, dword [esp + 0x14]
mov ecx, dword [ecx + 0x34]
test ecx, ecx
je 0x1004d814
cmp dword [ecx], eax
jl 0x1004d814
lea eax, [eax + eax*4]
mov edx, dword [ecx + eax*4 - 0xc]
test edx, edx
je 0x1004d814
jmp 0x100505c0
mov edx, dword [edx + 4]
xor eax, eax
jmp 0x1004d782
mov ecx, dword [esp + 0x24]
mov ecx, dword [ecx]
lea eax, [eax + eax*4]
mov word [ecx + eax*4 - 0x12], 0xf
jmp 0x1004da0b
mov ebx, dword [esp]
mov ecx, ebx
mov edx, 0x12
push dword [esp + 0x48]
push dword [esp + 0x54]
push dword [esp + 0x40]
call fcn.10030110
add esp, 0xc
mov ecx, dword [ebx]
cmp byte [ecx + 0x57], 0
jne 0x1004e4e3
mov ecx, dword [esp + 0x24]
mov ecx, dword [ecx]
lea eax, [eax + eax*4]
mov byte [ecx + eax*4 + 1], 0xfd
mov edx, dword [esp + 0x4c]
mov dword [ecx + eax*4 + 0x10], edx
mov eax, dword [esp]
mov eax, dword [eax + 0x6c]
test eax, eax
jle 0x1004e4fd
mov ecx, dword [esp + 0x24]
mov ecx, dword [ecx]
lea eax, [eax + eax*4]
mov word [ecx + eax*4 - 0x12], 0x1c
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 4]
push dword [eax + esi]
push dword [ecx]
push str.NUMERIC_value_in__s._s
jmp 0x1004db79
jle 0x1004d981
mov ebx, dword [esp]
mov ecx, ebx
mov edx, 0x12
push dword [esp + 0x48]
push dword [esp + 0x54]
push dword [esp + 0x40]
call fcn.10030110
add esp, 0xc
mov ecx, dword [ebx]
cmp byte [ecx + 0x57], 0
jne 0x1004e555
mov ecx, dword [esp + 0x24]
mov ecx, dword [ecx]
lea eax, [eax + eax*4]
mov byte [ecx + eax*4 + 1], 0xfd
mov edx, dword [esp + 0x4c]
mov dword [ecx + eax*4 + 0x10], edx
mov eax, dword [esp]
mov eax, dword [eax + 0x6c]
test eax, eax
jle 0x1004e56f
mov ecx, dword [esp + 0x24]
mov ecx, dword [ecx]
lea eax, [eax + eax*4]
mov word [ecx + eax*4 - 0x12], 0x1b
cmp dword [esp + 0x38], 0
js 0x1004e58f
mov ecx, dword [esp]
mov edx, dword [esp + 0x14]
push 3
push edi
push dword [esp + 0x84]
call fcn.10035ca0
add esp, 0xc
mov ebx, dword [esp]
mov ecx, ebx
mov edx, 0x60
push 0
push 1
mov eax, 3
push eax
call fcn.10030110
add esp, 0xc
mov ecx, ebx
mov edx, eax
xor eax, eax
dec eax
push eax
push 0x101d889e
call fcn.1003a6c0
add esp, 8
mov ecx, ebx
mov edx, 0x12
mov eax, 3
push eax
push dword [esp + 0x54]
xor eax, eax
dec eax
push eax
call fcn.10030110
add esp, 0xc
mov ecx, dword [ebx]
cmp byte [ecx + 0x57], 0
jne 0x1004e5fb
mov ecx, dword [esp + 0x24]
mov ecx, dword [ecx]
lea eax, [eax + eax*4]
mov byte [ecx + eax*4 + 1], 0xfd
mov edx, dword [esp + 0x4c]
mov dword [ecx + eax*4 + 0x10], edx
mov eax, dword [esp]
mov eax, dword [eax + 0x6c]
test eax, eax
jle 0x1004e615
mov ecx, dword [esp + 0x24]
mov ecx, dword [ecx]
lea eax, [eax + eax*4]
mov word [ecx + eax*4 - 0x12], 0x1c
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 4]
push dword [eax + esi]
push dword [ecx]
push str.TEXT_value_in__s._s
jmp 0x1004db79
mov ecx, dword [esp + 0x24]
mov ecx, dword [ecx]
lea eax, [eax + eax*4]
mov word [ecx + eax*4 - 0x12], 0xd
jmp 0x1004da83
mov eax, dword [esp + 0x60]
lea ecx, [eax + eax*4]
shl ecx, 2
mov eax, dword [esp + 0x24]
add ecx, dword [eax]
jmp 0x1004db55
mov eax, dword [esp + 0x64]
lea edx, [eax + eax*4]
shl edx, 2
mov eax, dword [esp + 0x24]
add edx, dword [eax]
mov dword [esp + 0xc], edx
jmp 0x1004db6d
mov eax, dword [esp + 0x1c]
movzx edi, word [eax + 0x32]
mov ebx, dword [esp]
mov ecx, ebx
mov edx, 0x29
push dword [esp + 0x34]
push 0
push dword [esp + 0x84]
call fcn.10030110
add esp, 0xc
mov dword [esp + 0xc], eax
mov eax, dword [ebx]
cmp byte [eax + 0x57], 0
jne 0x1004e6b7
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov ecx, dword [esp + 0xc]
lea ecx, [ecx + ecx*4]
mov byte [eax + ecx*4 + 1], 0xfd
mov dword [eax + ecx*4 + 0x10], edi
mov ebx, dword [esp]
mov ecx, ebx
mov edx, 0x32
xor esi, esi
push esi
push esi
push dword [esp + 0x3c]
call fcn.10030110
add esp, 0xc
mov eax, dword [esp + 0x14]
push dword [eax]
push str.row_not_in_PRIMARY_KEY_order_for__s
push dword [esp + 0xc]
call fcn.10027ad0
add esp, 0xc
mov edi, eax
mov ecx, ebx
mov edx, 0x75
push esi
push 3
push esi
call fcn.10030110
add esp, 0xc
mov ecx, ebx
mov edx, eax
push 0xfffffffffffffffa
push edi
call fcn.1003a6c0
add esp, 8
mov ecx, ebx
call fcn.1017b780
mov edx, dword [ebx]
mov ecx, dword [ebx + 0x6c]
mov eax, 0x101f4350
cmp byte [edx + 0x57], 0
mov edx, 0x101f4350
jne 0x1004e738
mov edx, dword [esp + 0xc]
lea edx, [edx + edx*4]
shl edx, 2
mov edi, dword [esp + 0x24]
add edx, dword [edi]
mov dword [edx + 8], ecx
mov ecx, dword [esp]
mov edx, dword [ecx]
mov ecx, dword [ecx + 0x6c]
cmp byte [edx + 0x57], 0
jne 0x1004e75c
mov eax, dword [esp + 0xc]
lea eax, [eax + eax*4]
mov edx, dword [esp + 0x24]
mov edx, dword [edx]
lea eax, [edx + eax*4]
add eax, 0x14
mov dword [eax + 8], ecx
mov eax, dword [esp + 0x1c]
cmp word [eax + 0x32], 0
je 0x1004d748
xor esi, esi
mov eax, dword [esp + 0x34]
add eax, esi
mov ecx, dword [esp + 8]
mov edi, dword [esp + 0x1c]
mov edx, edi
push eax
push esi
push dword [esp + 0x84]
call fcn.101727c0
add esp, 0xc
inc esi
movzx eax, word [edi + 0x32]
cmp esi, eax
jb 0x1004e770
jmp 0x1004d748
xor eax, eax
dec eax
jmp 0x1004d88a
mov eax, dword [esp + 8]
xor ebx, ebx
mov dword [eax + 0x34], ebx
mov eax, dword [esp + 0x14]
push dword [eax]
push str.CHECK_constraint_failed_in__s
push dword [esp + 0xc]
call fcn.10027ad0
add esp, 0xc
mov edi, eax
mov esi, dword [esp]
mov ecx, esi
mov edx, 0x75
push ebx
push 3
push ebx
call fcn.10030110
add esp, 0xc
mov ecx, esi
mov edx, eax
push 0xfffffffffffffffa
push edi
call fcn.1003a6c0
add esp, 8
mov ecx, esi
call fcn.1017b780
mov ecx, dword [esi + 0xc]
xor eax, eax
inc eax
sub eax, dword [esp + 0x2c]
mov edx, dword [ecx + 0x38]
add edx, dword [ecx + 0x3c]
jns 0x100503d7
jmp 0x1005075e
mov ecx, dword [esp + 8]
mov eax, dword [ecx + 0x38]
mov dword [esp + 0x2c], eax
add eax, 0xfffffffe
mov dword [esp + 0x18], eax
mov dword [ecx + 0x38], eax
mov eax, dword [esp + 0x7c]
inc eax
mov dword [ecx + 0x34], eax
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
cmp eax, 2
jge 0x1005061c
push 0x10
push dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
push dword [eax + 8]
push dword [esp + 0x14]
call fcn.10057840
add esp, 0x10
mov eax, dword [esp]
mov ecx, dword [eax + 0xc]
mov eax, dword [esp + 0x2c]
neg eax
mov edx, dword [ecx + 0x38]
add edx, dword [ecx + 0x3c]
jns 0x10050638
mov edx, dword [esp]
push eax
call fcn.100329e0
add esp, 4
jmp 0x1004e7a7
mov ecx, dword [esp]
mov edx, 7
push 0x101b67ae
call fcn.1015e620
add esp, 4
test eax, eax
je 0x1004e8ba
xor ecx, ecx
inc ecx
sub ecx, dword [esp + 0x80]
mov dword [eax + 8], ecx
mov cl, 0xff
mov byte [eax + 0x29], cl
mov dword [eax + 0x38], 0x101ceff3
mov byte [eax + 0x65], cl
mov dword [eax + 0x74], str.database_disk_image_is_malformed
mov eax, dword [esp]
mov edx, dword [eax]
mov eax, dword [eax + 0x6c]
add eax, 0xfffffffe
mov ecx, 0x101f4350
cmp byte [edx + 0x57], 0
jne 0x1004e8d6
mov ecx, dword [esp]
mov ecx, dword [ecx + 0x68]
mov dword [ecx + 0xc], eax
jmp 0x1004bf3f
cmp dword [esp + 0x10], 0
je 0x1004fb17
mov eax, dword [esp + 4]
test byte [eax + 0x18], 0x40
jne 0x1004be79
xor eax, eax
mov ecx, dword [esp + 0x10]
movzx ecx, byte [ecx + eax]
movzx edx, byte [eax + str.UTF8]
cmp cl, dl
jne 0x1004e915
test ecx, ecx
jne 0x1004e927
jmp 0x1004fe1f
mov cl, byte [ecx + 0x101b1828]
cmp cl, byte [edx + 0x101b1828]
jne 0x1004fe4b
inc eax
jmp 0x1004e8f9
mov eax, dword [esp + 8]
mov ecx, dword [eax + 0x2c]
mov dword [esp + 0x38], ecx
lea edx, [ecx + 5]
mov ecx, edx
mov dword [esp + 0x2c], edx
mov dword [eax + 0x2c], edx
mov eax, dword [esp + 4]
mov eax, dword [eax + 0x10]
mov ecx, dword [esp + 0x30]
mov eax, dword [eax + ecx + 0xc]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x18], eax
test eax, eax
je 0x1004bf3f
mov eax, dword [esp + 0x38]
inc eax
mov dword [esp + 0x40], eax
cmp dword [esp + 0x10], 0
je 0x1004e9bc
mov dword [esp + 0x18], 0
mov ecx, dword [esp + 8]
xor edx, edx
push dword [esp + 0x28]
push dword [esp + 0x14]
call fcn.10038b60
add esp, 8
mov dword [esp + 0xc], eax
cmp dword [esp + 0xc], 0
je 0x1004e9b0
mov eax, dword [esp + 0xc]
cmp byte [eax + 0x2b], 0
jne 0x1004e9b0
mov eax, dword [esp + 0xc]
cmp dword [eax + 0x30], 0
jne 0x1004ee56
cmp dword [esp + 0x18], 0
jne 0x1004e968
jmp 0x1004bf3f
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 8]
mov dword [esp + 0xc], ecx
mov eax, dword [eax]
mov dword [esp + 0x18], eax
jmp 0x1004e991
inc dword [esp + 0x14]
lea esi, [edx + 0x10]
cmp dword [edx], eax
mov edx, esi
jne 0x1004e9cf
mov ebx, dword [esp + 0x14]
mov esi, ebx
shl esi, 4
mov edx, dword [esp + 8]
mov eax, dword [edx + 0x78]
test eax, eax
cmove eax, edx
mov dword [esp + 0x30], esi
mov ecx, dword [ecx + esi]
mov dword [esp + 0x28], ecx
mov edx, dword [eax + 0x58]
xor esi, esi
inc esi
mov ecx, ebx
shl esi, cl
bt edx, ebx
jb 0x10050440
jmp 0x1005077b
mov eax, dword [esp + 0x1c]
mov edx, dword [eax + 8]
mov ecx, dword [esp + 4]
push dword [esp + 0x28]
call fcn.10152030
add esp, 4
xor ecx, ecx
mov dword [esp + 0x80], ecx
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x44], eax
test eax, eax
je 0x1004ea61
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0x44]
lea eax, [esp + 0x7c]
push eax
lea eax, [esp + 0x84]
push eax
push dword [esp + 0x24]
call fcn.10057590
add esp, 0xc
mov eax, dword [esp + 8]
mov ecx, dword [eax + 0x2c]
mov esi, dword [eax + 0x38]
mov edx, esi
mov dword [esp + 0x34], esi
lea edx, [esi - 1]
mov dword [esp + 0x30], edx
mov dword [eax + 0x38], edx
mov eax, dword [esp + 0x1c]
mov esi, dword [eax + 0x14]
mov eax, dword [esp + 0x2c]
add eax, esi
cmp ecx, eax
jge 0x1004ea9a
mov ecx, dword [esp + 8]
mov dword [ecx + 0x2c], eax
mov eax, dword [esp + 0x1c]
mov esi, dword [eax + 0x14]
test esi, esi
jle 0x1004eb07
mov eax, dword [esp + 0x1c]
lea edi, [eax + 0x24]
xor ecx, ecx
xor ebx, ebx
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x14], ecx
lea esi, [eax + ecx]
test eax, eax
cmove esi, edi
mov eax, dword [esp + 0x2c]
add eax, ebx
mov dword [esp + 0x20], eax
mov ecx, dword [esp]
mov edx, dword [esp + 0xc]
push eax
push dword [esi]
xor esi, esi
push esi
call fcn.10035ca0
add esp, 0xc
mov ecx, dword [esp]
mov edx, 0x32
push esi
push dword [esp + 0x34]
push dword [esp + 0x28]
call fcn.10030110
add esp, 0xc
inc ebx
mov eax, dword [esp + 0x1c]
mov esi, dword [eax + 0x14]
add edi, 8
mov ecx, dword [esp + 0x14]
add ecx, 4
cmp ebx, esi
jl 0x1004eaa9
mov edx, dword [esp + 0x80]
test edx, edx
je 0x1004eb9d
mov ecx, dword [edx + 0x10]
mov eax, esi
mov dword [esp + 0x14], ecx
test ecx, ecx
jne 0x1004eb37
mov ecx, dword [esp + 4]
call fcn.100428d0
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x1c]
mov eax, dword [eax + 0x14]
mov edi, dword [esp]
mov ecx, edi
mov edx, 0x60
push 0
push eax
mov ebx, dword [esp + 0x34]
push ebx
call fcn.10030110
add esp, 0xc
mov ecx, edi
mov edx, eax
push esi
push dword [esp + 0x18]
call fcn.1003a6c0
add esp, 8
mov eax, dword [esp + 0x1c]
mov esi, dword [eax + 0x14]
mov ecx, edi
mov edx, 0x1d
push ebx
push dword [esp + 0x34]
push dword [esp + 0x2c]
call fcn.10030110
add esp, 0xc
mov ecx, dword [edi]
cmp byte [ecx + 0x57], 0
jne 0x1004ebdc
mov ecx, dword [esp]
mov ecx, dword [ecx + 0x68]
lea eax, [eax + eax*4]
mov byte [ecx + eax*4 + 1], 0xfd
mov dword [ecx + eax*4 + 0x10], esi
jmp 0x1004ebdc
cmp dword [esp + 0x44], 0
je 0x1004ebdc
mov esi, dword [esp]
mov eax, dword [esi + 0x6c]
add eax, 2
mov ecx, esi
mov edx, 0x1e
push dword [esp + 0x2c]
push eax
push dword [esp + 0x2c]
call fcn.10030110
add esp, 0xc
mov ecx, esi
mov edx, 9
xor eax, eax
push eax
push dword [esp + 0x34]
push eax
call fcn.10030110
add esp, 0xc
mov eax, dword [esp + 0xc]
cmp byte [eax + 0x1c], 0
mov edx, 0x4b
mov eax, 0x87
cmovns edx, eax
mov esi, dword [esp]
mov ecx, esi
xor edi, edi
push edi
push dword [esp + 0x5c]
push edi
call fcn.10030110
add esp, 0xc
mov eax, dword [esp + 0x24]
dec eax
push eax
mov eax, dword [esp + 0x20]
push dword [eax + 8]
push 0x101d2783
push dword [esp + 0x68]
push esi
call fcn.100511d0
add esp, 0x14
mov ecx, esi
mov edx, 0x54
push edi
push 4
push dword [esp + 0x48]
call fcn.10030110
add esp, 0xc
mov ecx, dword [esi + 0xc]
neg dword [esp + 0x34]
mov eax, dword [ecx + 0x38]
add eax, dword [ecx + 0x3c]
js 0x1004ec87
mov eax, dword [esp]
mov eax, dword [eax + 0x6c]
mov ecx, dword [ecx + 0x40]
mov edx, dword [esp + 0x34]
mov dword [ecx + edx*4], eax
mov edx, dword [esp + 0x7c]
test edx, edx
je 0x1004ec6b
mov ecx, dword [esp + 4]
call fcn.10129dd0
inc dword [esp + 0x24]
mov eax, dword [esp + 0x1c]
mov eax, dword [eax + 4]
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x1004ea14
jmp 0x1004ee1e
mov edx, dword [esp]
push dword [esp + 0x34]
call fcn.100329e0
add esp, 4
jmp 0x1004ec5a
mov edx, dword [edi + 8]
mov ecx, dword [esp + 4]
push dword [esp + 0x28]
call fcn.10152030
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
je 0x1004ed4e
mov dword [esp + 0x80], 0
cmp byte [esp + 0x1c], 0
jne 0x1004ecfb
mov eax, dword [esp + 8]
mov eax, dword [eax]
mov eax, dword [eax + 0x10]
mov ecx, dword [esp + 0x30]
mov eax, dword [eax + ecx + 4]
cmp byte [eax + 9], 0
je 0x1004ecfb
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x20]
push dword [eax]
push 0
push dword [eax + 0x14]
call fcn.10046c10
add esp, 0xc
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0x20]
push 0
lea eax, [esp + 0x84]
push eax
push edi
call fcn.10057590
add esp, 0xc
test eax, eax
jne 0x1004bf3f
mov eax, dword [esp + 0x80]
test eax, eax
je 0x1004ed5f
mov ebx, eax
mov ecx, dword [esp]
mov edx, 0x70
push dword [esp + 0x14]
push dword [eax + 0x2c]
push esi
call fcn.10030110
add esp, 0xc
mov ecx, dword [esp + 8]
mov edx, ebx
call fcn.10170170
inc esi
mov edi, dword [edi + 4]
test edi, edi
jne 0x1004ec98
jmp 0x1004ede5
mov ecx, dword [esp + 8]
mov edx, esi
push 0x70
push dword [esp + 0x24]
push dword [esp + 0x1c]
call fcn.100412d0
add esp, 0xc
jmp 0x1004ed4e
mov eax, dword [esp + 0xc]
movsx eax, word [eax + 0x22]
add eax, dword [esp + 0x2c]
mov ecx, dword [esp + 8]
cmp dword [ecx + 0x2c], eax
jl 0x100506e4
mov ecx, dword [esp + 8]
xor edx, edx
push 0x70
mov esi, dword [esp + 0x10]
push esi
push dword [esp + 0x1c]
call fcn.100412d0
add esp, 0xc
mov ebx, dword [esi]
mov edi, dword [esp]
mov ecx, edi
mov edx, 0x75
xor eax, eax
push eax
push dword [esp + 0x44]
push eax
call fcn.10030110
add esp, 0xc
mov ecx, edi
mov edx, eax
xor eax, eax
push eax
push ebx
call fcn.1003a6c0
add esp, 8
mov edi, dword [esi + 0x30]
xor esi, esi
inc esi
test edi, edi
jne 0x10050490
mov eax, dword [esp + 8]
cmp dword [eax + 0x28], esi
jl 0x1005076f
mov ecx, dword [esp]
mov edx, 0x24
xor eax, eax
push eax
push eax
push eax
call fcn.10030110
add esp, 0xc
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0xc]
mov eax, dword [eax + 0x30]
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x100506f7
mov eax, dword [esp + 0x54]
inc eax
mov esi, dword [esp]
mov ecx, esi
mov edx, 0x27
xor edi, edi
push edi
push eax
push edi
call fcn.10030110
add esp, 0xc
mov edx, dword [esi]
mov eax, dword [esi + 0x6c]
mov ecx, 0x101f4350
cmp byte [edx + 0x57], 0
je 0x100507f4
mov dword [ecx + 8], eax
jmp 0x1004e9b0
mov eax, dword [esp + 0xc]
mov eax, dword [eax + 0x3c]
mov ecx, dword [esp + 4]
mov ecx, dword [ecx + 0x10]
test eax, eax
je 0x1005079d
lea edx, [ecx + 0xc]
xor esi, esi
dec esi
mov dword [esp + 0x14], esi
jmp 0x1004e9cf
cmp dword [esp + 0x10], 0
je 0x1004cc1e
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0x10]
push dword [esp + 0x28]
call fcn.10152030
add esp, 4
mov dword [esp + 0x14], eax
test eax, eax
je 0x1004be79
mov eax, dword [esp + 0x14]
cmp byte [eax + 0x2b], 0
jne 0x1004be79
mov eax, dword [esp + 0x14]
mov edi, dword [eax + 0x30]
test edi, edi
je 0x1004be79
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x3c]
test eax, eax
je 0x10050865
mov ecx, dword [esp + 4]
mov edx, dword [ecx + 0x10]
add edx, 0xc
xor ecx, ecx
dec ecx
inc ecx
lea esi, [edx + 0x10]
cmp dword [edx], eax
mov edx, esi
jne 0x1004eedf
jmp 0x1005086a
mov eax, dword [esp + 4]
mov edi, dword [eax + 0x18]
shr edi, 5
and edi, 1
mov eax, dword [esp + 8]
mov dword [eax + 0x2c], 6
xor ebx, ebx
mov esi, dword [ebx*4 + 0x101f424c]
test esi, esi
je 0x1004ef28
mov ecx, dword [esp]
mov edx, esi
push edi
push 1
call fcn.1017b600
add esp, 8
mov esi, dword [esi + 0x24]
jmp 0x1004ef0f
inc ebx
cmp ebx, 0x17
jne 0x1004ef08
mov eax, dword [esp + 4]
mov esi, dword [eax + 0x1a0]
test esi, esi
je 0x1004bf3f
mov edx, dword [esi + 8]
mov ecx, dword [esp]
push edi
push 0
call fcn.1017b600
add esp, 8
mov esi, dword [esi]
jmp 0x1004ef38
cmp dword [esp + 0x10], 0
je 0x1004ef74
lea edx, [esp + 0x80]
mov ecx, dword [esp + 0x10]
call fcn.10057e00
test eax, eax
je 0x1004fd0a
call sym.nss3.dll_sqlite3_initialize
xor esi, esi
dec esi
mov edi, esi
test eax, eax
je 0x1004fb46
mov ecx, dword [esp]
mov edx, esi
push edi
jmp 0x1004bf37
cmp dword [esp + 0x10], 0
je 0x1004fb97
lea esi, [esp + 0x80]
mov dword [esi], 1
mov ecx, dword [esp + 0x10]
mov edx, esi
call fcn.10038f50
mov esi, dword [esi]
test eax, eax
jne 0x1005084d
xor edx, edx
test esi, esi
setne dl
mov ecx, dword [esp + 0x10]
call fcn.1017b510
xor edx, edx
test al, al
setne dl
mov ecx, dword [esp + 4]
mov eax, dword [ecx + 0x20]
and eax, 0xffffffdf
shl edx, 5
or edx, eax
mov dword [ecx + 0x20], edx
call fcn.1017b410
jmp 0x1004be79
cmp dword [esp + 0x10], 0
je 0x1004cc1e
mov ecx, dword [esp + 0x10]
xor edx, edx
call fcn.1017b510
xor edx, edx
test al, al
setne dl
mov ecx, dword [esp + 4]
call fcn.1017b6a0
jmp 0x1004be79
mov eax, dword [esp + 8]
mov dword [eax + 0x2c], 2
mov eax, dword [esp + 4]
mov esi, dword [eax + 0x1b0]
test esi, esi
je 0x1004bf3f
xor edi, edi
mov eax, dword [esi + 8]
push dword [eax]
push edi
inc edi
push 0x101cc1ba
push 1
push dword [esp + 0x10]
call fcn.100511d0
add esp, 0x14
mov esi, dword [esi]
test esi, esi
jne 0x1004f03b
jmp 0x1004bf3f
cmp byte [0x101f1024], 0
je 0x1004f094
mov ecx, dword [0x101f1068]
call dword [section..00cfg]
push 0xb
call ecx
add esp, 4
test eax, eax
je 0x1004f094
mov esi, eax
mov ecx, dword [0x101f1070]
call dword [section..00cfg]
push esi
call ecx
add esp, 4
cmp dword [esp + 0x10], 0
je 0x1005074b
mov eax, dword [esp + 0x10]
cmp byte [eax], 0
je 0x1004f0e1
mov eax, dword [esp + 4]
mov esi, dword [eax]
mov ecx, dword [esi + 0x20]
call dword [section..00cfg]
lea eax, [esp + 0x80]
push eax
push 1
push dword [esp + 0x18]
push esi
call ecx
add esp, 0x10
test eax, eax
jne 0x1004f933
cmp dword [esp + 0x80], 0
je 0x1004f933
push dword [0x101f4214]
call sym.nss3.dll_sqlite3_free
add esp, 4
mov eax, dword [esp + 0x10]
cmp byte [eax], 0
je 0x1004fc6b
push dword [esp + 0x10]
push 0x101cd1ea
call sym.nss3.dll_sqlite3_mprintf
add esp, 8
mov dword [0x101f4214], eax
cmp byte [0x101f1024], 0
je 0x1004bf3f
mov ecx, dword [0x101f1068]
call dword [section..00cfg]
push 0xb
call ecx
add esp, 4
test eax, eax
je 0x1004bf3f
mov esi, eax
mov ecx, dword [0x101f1078]
call dword [section..00cfg]
push esi
call ecx
jmp 0x1004bf3c
mov ecx, dword [esp + 8]
call fcn.10042980
test eax, eax
jne 0x1004bf5d
jmp 0x1004b920
cmp byte [eax + 0xb1], 0
jne 0x1004b98d
mov edx, dword [esp + 8]
cmp byte [edx + 0xd8], 0
jne 0x1004b98d
mov edx, dword [esp + 8]
mov esi, dword [edx + 0x100]
mov edi, dword [eax + 0x168]
call dword [section..00cfg]
push esi
push dword [esp + 0x2c]
push dword [esp + 0x18]
push dword [esp + 0x48]
push 0x13
push edi
call ecx
add esp, 0x18
cmp eax, 1
jne 0x10050715
mov esi, 0x17
mov eax, str.not_authorized
push eax
mov edi, dword [esp + 0xc]
push edi
call fcn.10046a40
add esp, 8
mov dword [edi + 0xc], esi
jmp 0x1004bf3f
mov esi, eax
test eax, eax
jne 0x1004f985
xor edx, edx
inc edx
mov esi, dword [esp]
mov ecx, esi
call fcn.100309f0
mov eax, dword [esi]
cmp byte [eax + 0x57], 0
jne 0x1004f21a
mov edx, dword [esp + 0x90]
mov eax, dword [esp]
mov ecx, dword [eax + 0x74]
sub esp, 0x10
movaps xmm0, xmmword [0x101b1240]
movups xmmword [esp], xmm0
call fcn.10030650
add esp, 0x10
mov edx, dword [esp + 0x90]
mov ecx, dword [esp]
call fcn.1017b350
push dword [esp + 0x90]
call sym.nss3.dll_sqlite3_free
jmp 0x1004bf3c
cmp dword [esp + 0x10], 0
je 0x1004f275
lea edx, [esp + 0x80]
mov ecx, dword [esp + 0x10]
call fcn.10057e00
test eax, eax
jne 0x1004f275
cmp dword [esp + 0x84], 0
js 0x1004f275
mov eax, dword [esp + 0x80]
and eax, 0x7fffffff
mov ecx, dword [esp + 4]
mov dword [ecx + 0x1e8], eax
mov eax, dword [esp + 4]
mov edx, dword [eax + 0x1e8]
jmp 0x1004bf2e
mov ecx, dword [esp + 0x10]
call fcn.1017b3a0
mov ecx, dword [ebp + 8]
mov ecx, dword [ecx + 4]
test ecx, ecx
jne 0x1004f9c0
cmp eax, 0xffffffff
jne 0x1004f9c0
mov eax, dword [esp + 4]
lea ecx, [eax + 0x59]
jmp 0x1004fd91
xor eax, eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x80], eax
mov ecx, dword [esp + 8]
mov eax, dword [ecx + 0x78]
test eax, eax
cmove eax, ecx
mov edx, dword [eax + 0x58]
xor esi, esi
inc esi
mov ecx, dword [esp + 0x18]
shl esi, cl
bt edx, ecx
jae 0x1004fbde
mov eax, dword [esp + 8]
mov esi, dword [eax + 0x2c]
inc esi
mov dword [eax + 0x2c], esi
mov eax, dword [esp + 0x3c]
mov al, byte [eax]
and al, 0xdf
cmp al, 0x50
jne 0x1004fa24
mov ecx, dword [esp]
mov edx, 0xb1
push 0
jmp 0x1004fa4e
cmp dword [esp + 0x10], 0
je 0x1004f3e9
lea esi, [esp + 0x80]
mov ecx, dword [esp + 0x10]
mov edx, esi
call fcn.10057e00
mov eax, dword [esi + 4]
test eax, eax
js 0x1004fdae
mov ecx, dword [esp + 0x80]
mov edx, dword [ebp + 8]
cmp dword [edx + 4], 0
jne 0x1004f34d
mov edx, dword [esp + 4]
mov dword [edx + 0x30], ecx
mov dword [edx + 0x34], eax
mov eax, dword [esp + 4]
mov esi, dword [eax + 0x14]
test esi, esi
jle 0x1004f3e9
lea edi, [esi + 1]
mov ebx, dword [esp + 0x18]
neg ebx
shl esi, 4
add esi, 0xfffffff4
mov eax, dword [esp + 4]
mov eax, dword [eax + 0x10]
mov ecx, dword [eax + esi]
test ecx, ecx
je 0x1004f38c
mov eax, ebx
lea eax, [ebx + edi]
cmp eax, 2
je 0x1004f397
mov eax, dword [ebp + 8]
cmp dword [eax + 4], 0
je 0x1004f397
dec edi
add esi, 0xfffffff0
cmp edi, 1
ja 0x1004f36b
jmp 0x1004f3e9
mov edx, dword [esp + 0x80]
push dword [esp + 0x84]
call fcn.1017b460
add esp, 4
jmp 0x1004f38c
mov eax, dword [esp + 8]
mov dword [eax + 0x2c], 1
mov eax, dword [esp + 4]
mov esi, dword [eax + 0x184]
test esi, esi
je 0x1004bf3f
mov eax, dword [esi + 8]
push dword [eax + 4]
push 0x101cd1eb
push 1
push dword [esp + 0xc]
call fcn.100511d0
add esp, 0x10
mov esi, dword [esi]
jmp 0x1004f3c4
xor eax, eax
dec eax
lea ecx, [esp + 0x80]
mov dword [ecx + 4], eax
mov dword [ecx], eax
push ecx
push 0x12
push dword [esp + 0x30]
push dword [esp + 0x10]
call sym.nss3.dll_sqlite3_file_control
add esp, 0x10
cmp eax, 0xc
je 0x1004bf3f
test eax, eax
jne 0x1004fc5f
mov edx, dword [esp + 0x80]
mov ecx, dword [esp]
push dword [esp + 0x84]
jmp 0x1004bf37
cmp byte [0x101f1024], 0
je 0x1004f466
mov ecx, dword [0x101f1068]
call dword [section..00cfg]
push 0xb
call ecx
add esp, 4
test eax, eax
je 0x1004f466
mov esi, eax
mov ecx, dword [0x101f1070]
call dword [section..00cfg]
push esi
call ecx
add esp, 4
cmp dword [esp + 0x10], 0
je 0x100507e9
mov eax, dword [esp + 0x10]
cmp byte [eax], 0
je 0x1004f4b3
mov eax, dword [esp + 4]
mov esi, dword [eax]
mov ecx, dword [esi + 0x20]
call dword [section..00cfg]
lea eax, [esp + 0x80]
push eax
push 1
push dword [esp + 0x18]
push esi
call ecx
add esp, 0x10
test eax, eax
jne 0x1004f933
cmp dword [esp + 0x80], 0
je 0x1004f933
mov eax, dword [esp + 4]
cmp byte [eax + 0x56], 1
ja 0x1004f4c6
mov ecx, dword [esp + 8]
call fcn.1017b4c0
push dword [0x101f4218]
call sym.nss3.dll_sqlite3_free
add esp, 4
mov eax, dword [esp + 0x10]
cmp byte [eax], 0
je 0x1004fdcc
push dword [esp + 0x10]
push 0x101cd1ea
call sym.nss3.dll_sqlite3_mprintf
add esp, 8
mov dword [0x101f4218], eax
jmp 0x1004f112
cmp dword [esp + 0x10], 0
je 0x1004f542
lea edx, [esp + 0x80]
mov ecx, dword [esp + 0x10]
call fcn.10057e00
test eax, eax
jne 0x1004f542
cmp dword [esp + 0x84], 0
js 0x1004f542
mov eax, dword [esp + 0x80]
and eax, 0x7fffffff
cmp eax, 8
mov ecx, 8
cmovb ecx, eax
mov eax, dword [esp + 4]
mov dword [eax + 0xa4], ecx
mov eax, dword [esp + 4]
mov edx, dword [eax + 0xa4]
jmp 0x1004bf2e
mov ecx, dword [esp + 8]
mov dword [ecx + 0x2c], 6
mov edx, dword [esp + 0x28]
call fcn.10172820
mov eax, dword [esp + 4]
cmp dword [eax + 0x14], 0
jle 0x1004bf3f
mov dword [esp + 0x1c], 0
mov eax, dword [esp + 4]
mov esi, dword [eax + 0x10]
cmp dword [esp + 0x28], 0
je 0x1004f5c8
mov eax, dword [esp + 0x1c]
shl eax, 4
mov ecx, dword [esi + eax]
test ecx, ecx
je 0x1004f843
xor edx, edx
mov eax, dword [esp + 0x28]
movzx ebx, byte [eax + edx]
movzx eax, byte [ecx + edx]
cmp bl, al
jne 0x1004f5b3
test ebx, ebx
jne 0x1004f5c5
jmp 0x1004f5c8
mov bl, byte [ebx + 0x101b1828]
cmp bl, byte [eax + 0x101b1828]
jne 0x1004f843
inc edx
jmp 0x1004f59d
mov eax, dword [esp + 0x1c]
shl eax, 4
mov dword [esp + 8], eax
mov eax, dword [esi + eax + 0xc]
mov edi, dword [eax + 0xc]
add eax, 8
test edi, edi
je 0x1004f696
lea ecx, [eax + 8]
dec edi
mov ecx, dword [ecx]
test ecx, ecx
je 0x1004f696
mov edx, dword [ecx + 8]
cmp word [edx + 0x22], 0
jne 0x1004f5e9
push dword [edx]
push str.SELECTFROM__w_
push dword [esp + 0xc]
call fcn.10027ad0
add esp, 0xc
test eax, eax
je 0x1004f654
mov esi, eax
xor eax, eax
mov dword [esp + 0x80], eax
mov ecx, dword [esp + 4]
mov edx, esi
push eax
lea ebx, [esp + 0x84]
push ebx
push eax
push eax
push 0xffffffffffffffff
call fcn.1001fe80
add esp, 0x14
push dword [esp + 0x80]
call sym.nss3.dll_sqlite3_finalize
add esp, 4
mov ecx, dword [esp + 4]
mov edx, esi
call fcn.10129dd0
mov eax, dword [esp + 4]
cmp byte [eax + 0x57], 0
je 0x1004f682
push str.out_of_memory
mov esi, dword [esp + 8]
push dword [esi + 0x104]
call fcn.10046a40
add esp, 8
mov eax, dword [esi + 0x104]
mov dword [eax + 0xc], 7
mov eax, dword [esp + 4]
mov eax, dword [eax + 0x10]
mov ecx, dword [esp + 8]
mov eax, dword [eax + ecx + 0xc]
jmp 0x1004f5da
mov esi, dword [eax + 8]
test esi, esi
je 0x1004f843
mov edi, dword [esi + 8]
cmp dword [esp + 0x10], 0
je 0x1004f6e2
mov ecx, dword [edi]
test ecx, ecx
je 0x1004f803
xor edx, edx
mov eax, dword [esp + 0x10]
movzx ebx, byte [eax + edx]
movzx eax, byte [ecx + edx]
cmp bl, al
jne 0x1004f6cd
test ebx, ebx
jne 0x1004f6df
jmp 0x1004f6e2
mov bl, byte [ebx + 0x101b1828]
cmp bl, byte [eax + 0x101b1828]
jne 0x1004f803
inc edx
jmp 0x1004f6b7
movzx eax, byte [edi + 0x2b]
cmp eax, 2
je 0x1004f6fa
cmp eax, 1
jne 0x1004f704
mov dword [esp + 0x20], str.virtual
jmp 0x1004f719
mov dword [esp + 0x20], 0x101caa29
jmp 0x1004f719
test byte [edi + 0x1d], 0x10
mov ecx, str.shadow
mov eax, 0x101d0584
cmove ecx, eax
mov dword [esp + 0x20], ecx
mov ecx, dword [edi]
mov eax, dword [edi + 0x1c]
mov edx, eax
shr edx, 0x10
and edx, 1
mov dword [esp + 0x14], edx
shr eax, 7
and eax, 1
mov dword [esp + 0xc], eax
movsx edi, word [edi + 0x22]
test ecx, ecx
je 0x1004f7d2
mov al, byte [ecx]
mov ebx, str.sqlite_
test al, al
je 0x1004f791
mov edx, eax
and dl, 0xdf
cmp dl, 0x53
jne 0x1004f793
mov al, byte [ecx + 1]
mov ebx, 0x101d21aa
test al, al
je 0x1004f791
mov edx, eax
and dl, 0xdf
cmp dl, 0x51
jne 0x1004f793
mov al, byte [ecx + 2]
mov ebx, 0x101d21ab
test al, al
je 0x1004f791
mov edx, eax
and dl, 0xdf
cmp dl, 0x4c
jne 0x1004f793
mov al, byte [ecx + 3]
mov ebx, 0x101d21ac
test al, al
jne 0x1004f85e
xor eax, eax
movzx eax, al
mov al, byte [eax + 0x101b1828]
movzx edx, byte [ebx]
cmp al, byte [edx + 0x101b1828]
jne 0x1004f7d4
mov eax, 7
movzx ebx, byte [ecx + eax]
movzx edx, byte [eax + str.sqlite_master]
cmp bl, dl
jne 0x1004f7c1
test ebx, ebx
jne 0x1004f7cf
jmp 0x1004f80a
mov bl, byte [ebx + 0x101b1828]
cmp bl, byte [edx + 0x101b1828]
jne 0x1004f811
inc eax
jmp 0x1004f7ac
xor ecx, ecx
mov eax, dword [esp + 4]
mov eax, dword [eax + 0x10]
push dword [esp + 0x14]
push dword [esp + 0x10]
push edi
push dword [esp + 0x2c]
push ecx
mov ecx, dword [esp + 0x1c]
push dword [eax + ecx]
push str.sssiii
push 1
push dword [esp + 0x20]
call fcn.100511d0
add esp, 0x24
mov esi, dword [esi]
jmp 0x1004f699
mov ecx, str.sqlite_schema
jmp 0x1004f7d4
mov eax, 7
movzx ebx, byte [ecx + eax]
movzx edx, byte [eax + str.sqlite_temp_master]
cmp bl, dl
jne 0x1004f82b
test ebx, ebx
jne 0x1004f839
jmp 0x1004f83c
mov bl, byte [ebx + 0x101b1828]
cmp bl, byte [edx + 0x101b1828]
jne 0x1004f7d4
inc eax
jmp 0x1004f816
mov ecx, str.sqlite_temp_schema
jmp 0x1004f7d4
mov ecx, dword [esp + 0x1c]
inc ecx
mov eax, dword [esp + 4]
mov dword [esp + 0x1c], ecx
cmp ecx, dword [eax + 0x14]
jl 0x1004f57b
jmp 0x1004bf3f
mov edx, eax
and dl, 0xdf
cmp dl, 0x49
jne 0x1004f793
mov al, byte [ecx + 4]
mov ebx, 0x101d21ad
test al, al
je 0x1004f791
mov edx, eax
and dl, 0xdf
cmp dl, 0x54
jne 0x1004f793
mov al, byte [ecx + 5]
mov ebx, 0x101d21ae
test al, al
je 0x1004f791
mov edx, eax
and dl, 0xdf
cmp dl, 0x45
jne 0x1004f793
mov al, byte [ecx + 6]
mov ebx, 0x101d21af
cmp al, 0x5f
jne 0x1004f793
jmp 0x1004f7a7
push dword [esp + 4]
call fcn.10160ab0
jmp 0x1004bf3c
cmp dword [esp + 0x10], 0
je 0x1004f8ea
lea edx, [esp + 0x80]
mov ecx, dword [esp + 0x10]
call fcn.10057e00
test eax, eax
je 0x1005097e
call sym.nss3.dll_sqlite3_initialize
xor esi, esi
dec esi
mov edi, esi
test eax, eax
jne 0x1004ef86
mov esi, dword [0x101f4170]
test esi, esi
je 0x10050498
mov ecx, dword [0x101f1070]
call dword [section..00cfg]
push esi
call ecx
add esp, 4
mov ebx, dword [0x101f4170]
mov edi, dword [0x101f417c]
mov esi, dword [0x101f4178]
jmp 0x1004fb78
push str.not_a_writable_directory
push dword [esp + 0xc]
call fcn.10046a40
add esp, 8
cmp byte [0x101f1024], 0
je 0x1004be79
mov ecx, dword [0x101f1068]
call dword [section..00cfg]
push 0xb
call ecx
add esp, 4
test eax, eax
je 0x1004be79
mov esi, eax
mov ecx, dword [0x101f1078]
call dword [section..00cfg]
push esi
call ecx
add esp, 4
jmp 0x1004be79
mov eax, dword [esp + 0x90]
test eax, eax
je 0x1004f9b1
push eax
push 0x101cd1ea
push dword [esp + 0x10]
call fcn.10046a40
add esp, 0xc
push dword [esp + 0x90]
call sym.nss3.dll_sqlite3_free
add esp, 4
mov eax, dword [esp + 8]
inc dword [eax + 0x24]
mov dword [eax + 0xc], esi
jmp 0x1004bf3f
test ecx, ecx
jne 0x1004fd60
mov ecx, dword [esp + 4]
mov ecx, dword [ecx + 0x14]
cmp ecx, 2
jle 0x1004fd59
mov edx, 2
mov esi, 0x24
test eax, eax
js 0x1004f9fb
mov edi, dword [esp + 4]
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 0x1004fa08
inc edx
add esi, 0x10
cmp edx, ecx
jl 0x1004f9e2
jmp 0x1004fd59
mov ebx, dword [edi + 0xe8]
test ebx, ebx
je 0x1004fa18
cmp byte [ebx + 0x2b], 2
je 0x1004f9fb
mov byte [edi + 4], al
mov ecx, dword [esp + 4]
mov ecx, dword [ecx + 0x14]
jmp 0x1004f9fb
xor edi, edi
cmp dword [esp + 0x10], 0
je 0x1004fa45
lea edx, [esp + 0x80]
mov ecx, dword [esp + 0x10]
call fcn.10057e00
test eax, eax
je 0x100503ad
mov ecx, dword [esp]
mov edx, 0xb2
push edi
push esi
push dword [esp + 0x20]
call fcn.10030110
add esp, 0xc
mov ecx, dword [esp]
mov edx, 0x54
push 0
push 1
push esi
jmp 0x1004ced4
mov edi, dword [esp + 0x28]
mov ebx, dword [edi]
or ebx, dword [edi + 4]
je 0x1004ffe4
test al, 0x20
jne 0x1005018f
mov edx, eax
and edx, 0x40
mov edi, edx
shr edi, 6
mov dword [esp + 0x1c], edi
shr edx, 5
or edx, 1
mov dword [esp + 0x20], edx
jmp 0x1005019d
mov edx, dword [esp + 0x2c]
cmp byte [edx + 0x2b], 0
jne 0x1004caa1
mov edx, dword [esp + 0x2c]
mov edx, dword [edx + 0x34]
test edx, edx
je 0x1004caa1
cmp dword [edx], ecx
jl 0x1004caa1
lea ecx, [ecx + ecx*4]
mov edi, dword [edx + ecx*4 - 0xc]
test edi, edi
sete dl
mov ecx, dword [esp + 0x1c]
or cl, dl
jne 0x1004caa1
mov ecx, dword [edi + 8]
mov dword [esp + 8], ecx
jmp 0x1004caa1
mov eax, dword [esp + 0x14]
mov edi, dword [eax]
push edi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
add eax, edi
inc eax
jmp 0x1004cac9
mov eax, dword [ecx*4 + 0x101f1838]
jmp 0x1004cac9
mov eax, 0x64
jmp 0x1004d24c
mov ecx, dword [esp + 8]
call fcn.1016c460
test eax, eax
jne 0x1004cc1e
mov eax, dword [esp + 8]
mov eax, dword [eax]
movzx eax, byte [eax + 0x54]
mov edx, dword [eax*8 + 0x101b67cc]
mov ecx, dword [esp]
call fcn.1017b350
jmp 0x1004cc1e
mov esi, dword [0x101f4170]
test esi, esi
je 0x100500c9
mov ecx, dword [0x101f1070]
call dword [section..00cfg]
push esi
call ecx
add esp, 4
mov ebx, dword [0x101f4170]
mov edi, dword [0x101f4184]
mov esi, dword [0x101f4180]
test ebx, ebx
je 0x1004ef86
mov ecx, dword [0x101f1078]
call dword [section..00cfg]
push ebx
call ecx
add esp, 4
jmp 0x1004ef86
xor edx, edx
mov eax, dword [esp + 4]
test byte [eax + 0x20], 0x20
je 0x1004cc0d
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
mov ecx, dword [ecx + eax + 4]
xor edx, edx
call fcn.1016b2d0
mov edx, eax
jmp 0x1004cc0d
mov eax, dword [esp + 0x10]
movzx eax, byte [eax + esi]
mov dl, byte [eax + 0x101b1828]
xor eax, eax
cmp al, dl
jne 0x1004bb0b
jmp 0x1004bb62
or edx, esi
mov dword [eax + 0x58], edx
cmp dword [esp + 0x18], 1
jne 0x1004f2e1
mov ecx, eax
call fcn.10042980
jmp 0x1004f2e1
mov esi, 0x3b9aca00
jmp 0x1004bc1e
test eax, 0x9000
je 0x100501e9
mov ecx, ebx
call fcn.10129d80
mov edi, dword [ebx + 0x14]
test edi, edi
je 0x1004ba91
mov eax, dword [edi + 0x104]
test eax, eax
je 0x1004ba91
mov dword [eax + 0xc], 0x12
inc dword [eax + 0x24]
jmp 0x1004ba91
mov edx, dword [esp + 0x10]
movzx edx, byte [edx + esi]
mov bl, byte [edx + 0x101b1828]
xor edx, edx
cmp dl, bl
mov ebx, dword [esp + 4]
jne 0x1004bce3
jmp 0x1004bd3e
mov ecx, dword [esp + 8]
inc dword [ecx + 0x24]
jmp 0x1004e8d6
mov dword [0x101f4214], 0
jmp 0x1004f112
mov ecx, dword [esp + 8]
mov edx, 2
push dword [esp + 0x28]
push dword [esp + 0x14]
call fcn.10038b60
add esp, 8
test eax, eax
je 0x1004be79
test byte [eax + 0x1c], 0x80
je 0x1004be79
mov edi, dword [eax + 8]
test edi, edi
je 0x1004be79
mov eax, dword [edi + 0x38]
and eax, 3
cmp eax, 2
je 0x1004d15d
mov edi, dword [edi + 0x14]
test edi, edi
jne 0x1004fcb0
jmp 0x1004bf3f
cmp dword [esp + 0x54], 0
js 0x100503e8
mov eax, dword [esp + 4]
mov eax, dword [eax + 0x10]
mov ecx, dword [esp + 0x54]
shl ecx, 4
mov eax, dword [eax + ecx]
mov ecx, dword [esp + 8]
xor edx, edx
push eax
push dword [esp + 0x14]
call fcn.10038b60
add esp, 8
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x80]
jmp 0x1004d24c
call sym.nss3.dll_sqlite3_initialize
xor esi, esi
dec esi
mov edi, esi
test eax, eax
je 0x100503ef
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x84]
cmp eax, 1
mov edx, ecx
sbb edx, 0
jl 0x1004ef74
mov edx, esi
or edx, edi
je 0x1004fd4a
cmp eax, esi
mov edx, ecx
sbb edx, edi
jge 0x1004ef74
push ecx
push eax
call fcn.1015a840
add esp, 8
jmp 0x1004ef74
mov ecx, dword [esp + 4]
mov byte [ecx + 0x59], al
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x34]
mov ecx, dword [edx + ecx + 4]
mov ecx, dword [ecx + 4]
mov ecx, dword [ecx]
test eax, eax
js 0x1004fd8e
cmp byte [ecx + 0xc], 0
jne 0x1004fd8e
mov edx, dword [ecx + 0xe8]
test edx, edx
je 0x1004fd8b
cmp byte [edx + 0x2b], 2
je 0x1004fd8e
mov byte [ecx + 4], al
add ecx, 4
cmp byte [ecx], 1
mov eax, str.exclusive
mov edx, str.normal
cmove edx, eax
mov ecx, dword [esp]
call fcn.1017b350
jmp 0x1004bf3f
mov eax, dword [0x101f10cc]
mov ecx, dword [0x101f10c8]
mov dword [esp + 0x84], eax
mov dword [esp + 0x80], ecx
jmp 0x1004f33a
mov dword [0x101f4218], 0
jmp 0x1004f112
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
movzx edx, byte [ecx + eax + 8]
dec edx
jmp 0x1004cc0d
push str.Safety_level_may_not_be_changed_inside_a_transaction
push dword [esp + 0xc]
call fcn.10046a40
add esp, 8
jmp 0x1004be79
lea esi, [esp + 0x80]
mov dword [esi], 0
mov edx, esi
call fcn.10038f50
mov al, byte [esi]
jmp 0x1004bb68
mov eax, 0x101b67cc
mov ecx, dword [eax + 4]
test cl, cl
mov eax, 2
cmovne eax, ecx
mov ecx, dword [esp + 4]
mov edx, dword [ecx + 0x10]
mov edx, dword [edx + 0xc]
mov byte [edx + 0x4d], al
movzx edx, al
call fcn.1016a170
jmp 0x1004bf3f
xor eax, eax
mov ecx, dword [esp + 0x10]
movzx ecx, byte [ecx + eax]
movzx edx, byte [eax + str.UTF_8]
cmp cl, dl
jne 0x1004fe69
test ecx, ecx
jne 0x1004fe7b
jmp 0x10050583
mov cl, byte [ecx + 0x101b1828]
cmp cl, byte [edx + 0x101b1828]
jne 0x1005058d
inc eax
jmp 0x1004fe4d
mov ecx, 0xffff8000
mov eax, dword [esp + 0x14]
mov esi, dword [eax + 0x101b2acc]
mov edx, dword [eax + 0x101b2ac8]
xor eax, eax
mov dword [esp + 0x14], edx
mov dword [esp + 0xc], esi
or edx, esi
setne al
lea edx, [eax + eax*2 + 3]
movzx ebx, word [edi + eax*2 + 0x32]
mov esi, dword [esp + 8]
mov dword [esi + 0x2c], edx
mov eax, dword [esi + 0x78]
test eax, eax
cmove eax, esi
xor edx, edx
inc edx
shl edx, cl
mov esi, dword [eax + 0x58]
mov dword [esp + 0x1c], esi
bt esi, ecx
mov esi, dword [edi + 0xc]
mov dword [esp + 0x20], esi
jae 0x1004ff75
test ebx, ebx
je 0x1004bf3f
xor esi, esi
mov eax, dword [edi + 4]
movsx eax, word [eax + esi*2]
mov ecx, 0
test eax, eax
js 0x1004feff
mov ecx, dword [esp + 0x20]
mov ecx, dword [ecx + 4]
mov edx, eax
shl edx, 4
mov ecx, dword [ecx + edx]
push ecx
push eax
push esi
push str.iisX
push 1
push dword [esp + 0x14]
call fcn.100511d0
add esp, 0x18
mov eax, dword [esp + 0x14]
or eax, dword [esp + 0xc]
je 0x1004ff4c
movzx ecx, word [edi + 0x32]
xor eax, eax
cmp esi, ecx
setb al
mov ecx, dword [edi + 0x1c]
mov edx, dword [edi + 0x20]
movzx ecx, byte [ecx + esi]
push eax
push dword [edx + esi*4]
push ecx
push str.isiX
push 4
push dword [esp + 0x14]
call fcn.100511d0
add esp, 0x18
mov ecx, dword [esp]
mov edx, 0x54
push 0
mov eax, dword [esp + 0xc]
push dword [eax + 0x2c]
push 1
call fcn.10030110
add esp, 0xc
inc esi
cmp ebx, esi
jne 0x1004fee0
jmp 0x1004bf3f
mov esi, dword [esp + 0x1c]
or esi, edx
mov dword [eax + 0x58], esi
cmp ecx, 1
jne 0x1004fed6
mov ecx, eax
call fcn.10042980
jmp 0x1004fed6
mov edi, dword [esp]
mov ecx, edi
mov edx, dword [esp + 0x2c]
call fcn.10159e30
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 0x101b2ac8]
mov ecx, dword [ecx + 0x101b2acc]
mov esi, dword [esp + 4]
and ecx, dword [esi + 0x24]
and eax, dword [esi + 0x20]
xor edx, edx
or eax, ecx
setne dl
mov ecx, edi
jmp 0x1004cc36
lea esi, [esp + 0x80]
mov dword [esi], 0
mov edx, esi
call fcn.10038f50
mov al, byte [esi]
jmp 0x1004bd49
inc dword [esp + 0x30]
mov edi, esi
mov ebx, dword [esp + 0x14]
jmp 0x1004cb19
mov ecx, 0xffff8000
mov edx, dword [esp + 8]
mov dword [edx + 0x2c], 5
mov eax, dword [edx + 0x78]
test eax, eax
cmove eax, edx
mov edx, dword [eax + 0x58]
xor edi, edi
inc edi
shl edi, cl
bt edx, ecx
jae 0x10050069
mov esi, dword [esi + 8]
test esi, esi
je 0x1004bf3f
xor edi, edi
xor eax, eax
cmp dword [esi + 0x24], 0
setne al
mov ecx, dword [esi + 0x38]
and ecx, 3
xor edx, edx
cmp byte [esi + 0x36], 0
setne dl
push eax
push dword [ecx*4 + 0x101b679c]
push edx
push dword [esi]
push edi
push str.isisi
push 1
push dword [esp + 0x1c]
call fcn.100511d0
add esp, 0x20
inc edi
mov esi, dword [esi + 0x14]
test esi, esi
jne 0x10050025
jmp 0x1004bf3f
or edx, edi
mov dword [eax + 0x58], edx
cmp ecx, 1
jne 0x10050018
mov ecx, eax
call fcn.10042980
jmp 0x10050018
movzx ecx, byte [ecx + 0x101cf845]
mov bl, byte [ecx + 0x101b1828]
xor edx, edx
cmp dl, bl
je 0x100506f0
xor ecx, ecx
xor esi, esi
inc esi
movzx edx, byte [edi + ecx]
test edx, edx
je 0x100500f7
mov dl, byte [edx + 0x101b1828]
movzx edi, byte [ecx + str.persist]
mov bl, byte [edi + 0x101b1828]
cmp dl, bl
jne 0x10050106
inc ecx
cmp eax, ecx
mov edi, dword [esp + 0x10]
jne 0x10050098
mov edi, dword [esp + 4]
jmp 0x1005026d
mov edi, dword [0x101f4184]
mov esi, dword [0x101f4180]
jmp 0x1004ef86
mov eax, dword [esp + 0x10]
movzx eax, byte [eax + esi]
mov dl, byte [eax + 0x101b1828]
xor eax, eax
cmp al, dl
jne 0x1004c049
jmp 0x1004c0a0
movzx ecx, byte [ecx + str.persist]
mov bl, byte [ecx + 0x101b1828]
xor edx, edx
cmp dl, bl
mov edi, dword [esp + 0x10]
je 0x100500c0
xor ecx, ecx
movzx edx, byte [edi + ecx]
test edx, edx
je 0x1005014c
mov dl, byte [edx + 0x101b1828]
movzx esi, byte [ecx + 0x101cf5fb]
mov bl, byte [esi + 0x101b1828]
cmp dl, bl
jne 0x1005015b
inc ecx
cmp eax, ecx
jne 0x10050110
mov esi, 2
mov edi, dword [esp + 4]
test byte [edi + 0x23], 0x10
jne 0x10050252
jmp 0x1005026d
movzx ecx, byte [ecx + 0x101cf5fb]
mov bl, byte [ecx + 0x101b1828]
xor edx, edx
cmp dl, bl
je 0x10050134
xor ecx, ecx
movzx edx, byte [edi + ecx]
test edx, edx
je 0x100501a6
mov dl, byte [edx + 0x101b1828]
movzx esi, byte [ecx + str.truncate]
mov bl, byte [esi + 0x101b1828]
cmp dl, bl
jne 0x100501b5
inc ecx
cmp eax, ecx
jne 0x10050161
mov esi, 3
jmp 0x100500c0
mov dword [esp + 0x20], 2
mov dl, 1
mov dword [esp + 0x1c], edx
mov ebx, dword [esp + 0x14]
jmp 0x1004ca77
movzx ecx, byte [ecx + str.truncate]
mov bl, byte [ecx + 0x101b1828]
xor edx, edx
cmp dl, bl
je 0x10050185
xor ecx, ecx
movzx edx, byte [edi + ecx]
test edx, edx
je 0x100501f4
mov dl, byte [edx + 0x101b1828]
movzx esi, byte [ecx + 0x101ca18a]
mov bl, byte [esi + 0x101b1828]
cmp dl, bl
jne 0x10050203
inc ecx
cmp eax, ecx
jne 0x100501bb
mov esi, 4
jmp 0x100500c0
mov word [ebx + 0x10], 1
jmp 0x1004fc19
movzx ecx, byte [ecx + 0x101ca18a]
mov bl, byte [ecx + 0x101b1828]
xor edx, edx
cmp dl, bl
je 0x100501df
xor ecx, ecx
movzx edx, byte [edi + ecx]
test edx, edx
je 0x10050237
mov dl, byte [edx + 0x101b1828]
movzx esi, byte [ecx + 0x101cee3c]
mov bl, byte [esi + 0x101b1828]
cmp dl, bl
jne 0x10050246
inc ecx
mov esi, 5
cmp eax, ecx
jne 0x10050209
jmp 0x100500c0
movzx eax, byte [ecx + 0x101cee3c]
mov bl, byte [eax + 0x101b1828]
xor edx, edx
cmp dl, bl
mov edi, dword [esp + 4]
je 0x100507df
xor esi, esi
dec esi
mov eax, dword [ebp + 8]
cmp dword [eax + 4], 0
jne 0x1005026d
mov dword [eax + 4], 1
mov dword [esp + 0x18], 0
mov edi, dword [edi + 0x14]
test edi, edi
jle 0x10050313
lea ebx, [edi + 1]
shl edi, 4
add edi, 0xfffffff4
neg dword [esp + 0x18]
mov dword [esp + 0xc], esi
mov eax, dword [esp + 4]
mov eax, dword [eax + 0x10]
cmp dword [eax + edi], 0
jne 0x100502a1
dec ebx
add edi, 0xfffffff0
cmp ebx, 1
ja 0x10050289
jmp 0x10050313
mov eax, dword [esp + 0x18]
add eax, ebx
cmp eax, 2
jne 0x10050511
lea eax, [ebx - 2]
xor edx, edx
inc edx
mov ecx, eax
shl edx, cl
mov esi, dword [esp]
or dword [esi + 0x9c], edx
cmp ebx, 3
je 0x100502da
mov ecx, dword [esi]
mov ecx, dword [ecx + 0x10]
mov ecx, dword [ecx + edi]
cmp byte [ecx + 9], 0
jne 0x10050523
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jle 0x1005035b
lea edx, [ecx + 1]
mov dword [esi + 0x6c], edx
mov edx, dword [esi + 0x68]
lea ecx, [ecx + ecx*4]
mov dword [edx + ecx*4], 4
mov dword [edx + ecx*4 + 4], eax
mov dword [edx + ecx*4 + 8], 1
mov esi, dword [esp + 0xc]
mov dword [edx + ecx*4 + 0xc], esi
mov dword [edx + ecx*4 + 0x10], 0
jmp 0x10050296
mov ecx, dword [esp]
mov eax, dword [ecx + 0x6c]
cmp dword [ecx + 0x70], eax
jle 0x10050342
lea edx, [eax + 1]
mov dword [ecx + 0x6c], edx
mov ecx, dword [ecx + 0x68]
lea eax, [eax + eax*4]
mov dword [ecx + eax*4], 0x54
movaps xmm0, xmmword [0x101b1370]
movups xmmword [ecx + eax*4 + 4], xmm0
jmp 0x1004bf3f
xor eax, eax
inc eax
mov edx, 0x54
push 0
push eax
push eax
call fcn.10021190
add esp, 0xc
jmp 0x1004bf3f
mov ecx, esi
mov edx, 4
mov esi, dword [esp + 0xc]
push esi
push 1
push eax
call fcn.10021190
add esp, 0xc
jmp 0x10050296
inc dword [ebx + 0xc]
cmp byte [ebx + 0xa], 0
jne 0x1004c102
mov ecx, ebx
call fcn.10020150
mov ecx, dword [esp + 0x20]
jmp 0x1004c102
dec dword [ebx + 0xc]
jne 0x1004c11f
mov ecx, ebx
call fcn.10020120
mov ecx, dword [esp + 0x20]
jmp 0x1004c11f
mov eax, dword [esp + 0x84]
test eax, eax
js 0x1004fa45
mov edi, dword [esp + 0x80]
mov ecx, 0xfffffffe
cmp edi, ecx
cmovae edi, ecx
test eax, eax
cmovne edi, ecx
jmp 0x1004fa45
mov edx, dword [esp]
mov edx, dword [edx + 0x6c]
mov ecx, dword [ecx + 0x40]
mov dword [ecx + eax*4], edx
jmp 0x1004dbc4
xor eax, eax
jmp 0x1004fce7
mov esi, dword [0x101f4170]
test esi, esi
je 0x1005093d
mov ecx, dword [0x101f1070]
call dword [section..00cfg]
push esi
call ecx
add esp, 4
mov ebx, dword [0x101f4170]
mov edi, dword [0x101f4184]
mov esi, dword [0x101f4180]
test ebx, ebx
je 0x1004fd1c
mov ecx, dword [0x101f1078]
call dword [section..00cfg]
push ebx
call ecx
add esp, 4
jmp 0x1004fd1c
mov al, 1
mov dword [esp + 0x1c], eax
cmp dword [esp + 0x14], 1
je 0x1004ed79
mov eax, dword [esp + 8]
mov eax, dword [eax]
mov eax, dword [eax + 0x10]
mov ecx, dword [esp + 0x30]
mov eax, dword [eax + ecx + 4]
cmp byte [eax + 9], 0
je 0x10050483
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0xc]
push dword [eax]
push 0
push dword [eax + 0x14]
call fcn.10046c10
add esp, 0xc
mov dword [esp + 0x1c], 0
jmp 0x1004ed79
xor esi, esi
inc esi
jmp 0x1004ec98
mov edi, dword [0x101f417c]
mov esi, dword [0x101f4178]
jmp 0x1004ef86
mov esi, dword [ebx + 0xc]
test esi, esi
je 0x1005094e
mov ecx, dword [0x101f1070]
call dword [section..00cfg]
push esi
call ecx
add esp, 4
mov ebx, dword [esp + 4]
mov esi, dword [ebx + 0xc]
xor eax, eax
mov dword [ebx + 0x108], eax
mov dword [ebx + 0x10c], eax
test esi, esi
je 0x1004bf18
mov ecx, dword [0x101f1078]
call dword [section..00cfg]
push esi
jmp 0x1004bf13
mov dword [ebx + 0x108], 0x100037c0
mov dword [ebx + 0x10c], esi
jmp 0x1004bf18
xor edx, edx
jmp 0x1004bf2e
mov eax, dword [ebp + 8]
cmp dword [eax + 4], 0
jne 0x10050296
jmp 0x100502b0
or dword [esi + 0xa0], edx
jmp 0x100502da
mov dword [esp + 0x20], 0x3b9aca00
jmp 0x1004c40e
test eax, 0x9000
je 0x10050965
mov ecx, dword [esp + 0x44]
call fcn.10129d80
mov eax, dword [ebx + edi + 0x14]
mov dword [esp + 0x40], eax
cmp dword [esp + 0x40], 0
je 0x1004c47b
mov eax, dword [esp + 0x40]
mov eax, dword [eax + 0x104]
test eax, eax
je 0x1004c47b
mov dword [eax + 0xc], 0x12
inc dword [eax + 0x24]
jmp 0x1004c47b
mov eax, 0x101b67d4
jmp 0x1004fe24
xor eax, eax
mov ecx, dword [esp + 0x10]
movzx ecx, byte [ecx + eax]
movzx edx, byte [eax + str.UTF_16le]
cmp cl, dl
jne 0x100505ab
test ecx, ecx
jne 0x100505bd
jmp 0x10050809
mov cl, byte [ecx + 0x101b1828]
cmp cl, byte [edx + 0x101b1828]
jne 0x10050813
inc eax
jmp 0x1005058f
mov al, byte [ebx + esi + 8]
mov ecx, dword [esp + 4]
mov ah, byte [ecx + 0x54]
mov byte [esp + 0x38], ah
movzx eax, al
mov dword [esp + 0x28], eax
movzx eax, byte [esp + 0x38]
mov dword [esp + 0x38], eax
lea eax, [esp + 0x74]
push eax
push dword [esp + 0x2c]
push dword [esp + 0x40]
call fcn.10036580
add esp, 0xc
mov ecx, dword [esp + 0x74]
test ecx, ecx
je 0x1004d814
movzx eax, word [ecx + 0x10]
and eax, 0x3f
movzx eax, byte [eax + 0x101b193a]
mov dword [esp + 0x4c], eax
call fcn.1015caf0
jmp 0x1004d814
mov ecx, dword [esp + 0x2c]
lea ebx, [ecx - 1]
lea edi, [eax + 1]
lea eax, [eax + eax*4]
mov ecx, dword [esp + 0xc]
lea esi, [ecx + eax*4]
add esi, 0xfffffff4
jmp 0x1004d582
mov edx, dword [esp]
mov edx, dword [edx + 0x6c]
mov ecx, dword [ecx + 0x40]
mov dword [ecx + eax*4], edx
jmp 0x1004e7a7
xor eax, eax
dec eax
mov dword [esp + 0xc], eax
jmp 0x1004c130
test ecx, ecx
je 0x100506d3
inc eax
jmp 0x1004bff0
mov ecx, esi
lea edi, [esp + 0x80]
mov dword [edi], 0
mov edx, edi
call fcn.10038f50
mov al, byte [edi]
jmp 0x1004c0ab
mov ecx, dword [esp + 0x20]
jmp 0x1004c133
xor eax, eax
mov dword [ebx + 0x204], eax
mov dword [ebx + 0x200], eax
jmp 0x1004c1af
xor eax, eax
mov ecx, dword [esp + 0x10]
movzx ecx, byte [ecx + eax]
movzx edx, byte [eax + str.reset]
cmp cl, dl
jne 0x100506ba
test ecx, ecx
mov ebx, dword [esp + 4]
jne 0x100506d0
jmp 0x10050b65
mov cl, byte [ecx + 0x101b1828]
cmp cl, byte [edx + 0x101b1828]
mov ebx, dword [esp + 4]
jne 0x1004c1af
inc eax
jmp 0x1005069a
mov dword [esp + 0xc], 2
mov eax, dword [esp + 4]
jmp 0x1004c0be
mov ecx, dword [esp + 8]
mov dword [ecx + 0x2c], eax
jmp 0x1004ed92
xor esi, esi
jmp 0x100500c0
mov eax, dword [esp + 0x38]
lea ecx, [eax + 2]
mov dword [esp + 0x58], ecx
add eax, 3
mov dword [esp + 0x5c], eax
xor eax, eax
inc eax
mov dword [esp + 0x24], eax
jmp 0x1004ea14
test eax, 0xfffffffd
je 0x10050971
xor esi, esi
inc esi
mov eax, str.authorizer_malfunction
jmp 0x1004f1c2
mov ecx, esi
call fcn.1016c350
mov ecx, dword [esi + 0x6c]
jmp 0x1004c321
add edx, 0x14
dec eax
jne 0x1004c389
jmp 0x1004bf3f
mov edx, dword [0x101f4214]
mov ecx, dword [esp]
call fcn.1017b350
jmp 0x1004f112
mov edx, dword [esp]
push eax
call fcn.100329e0
add esp, 4
jmp 0x1004dbc4
mov eax, dword [esp + 8]
mov dword [eax + 0x28], esi
jmp 0x1004edf2
or edx, esi
mov dword [eax + 0x58], edx
cmp dword [esp + 0x14], 1
jne 0x10050451
mov ecx, eax
call fcn.10042980
mov al, 1
mov dword [esp + 0x1c], eax
jmp 0x1004ed79
mov dword [esp + 0x14], 0xffff8000
jmp 0x1004e9dc
inc dword [ecx + 0xc]
cmp byte [ecx + 0xa], 0
jne 0x1004c145
mov ecx, dword [esp + 0x20]
call fcn.10020150
mov ecx, dword [esp + 0x20]
jmp 0x1004c145
dec dword [ecx + 0xc]
jne 0x100507d7
mov ecx, dword [esp + 0x20]
call fcn.10020120
mov edi, dword [esp]
jmp 0x1004c175
mov esi, 5
jmp 0x1005026d
mov edx, dword [0x101f4218]
jmp 0x10050751
mov ecx, dword [esp + 0x54]
lea ecx, [ecx + ecx*4]
shl ecx, 2
mov edx, dword [esp]
add ecx, dword [edx + 0x68]
jmp 0x1004ee4e
mov eax, 0x101b67dc
jmp 0x1004fe24
xor eax, eax
mov ecx, dword [esp + 0x10]
movzx ecx, byte [ecx + eax]
movzx edx, byte [eax + str.UTF_16be]
cmp cl, dl
jne 0x10050831
test ecx, ecx
jne 0x10050843
jmp 0x10050999
mov cl, byte [ecx + 0x101b1828]
cmp cl, byte [edx + 0x101b1828]
jne 0x100509a3
inc eax
jmp 0x10050815
xor eax, eax
jmp 0x1004c858
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
mov ecx, dword [ecx + eax + 4]
mov edx, esi
call fcn.1016b2d0
jmp 0x1004efbe
mov ecx, 0xffff8000
mov edx, dword [esp + 8]
mov dword [edx + 0x2c], 8
mov eax, dword [edx + 0x78]
test eax, eax
cmove eax, edx
mov edx, dword [eax + 0x58]
xor esi, esi
inc esi
shl esi, cl
bt edx, ecx
jae 0x10050923
mov dword [esp + 0xc], 0
cmp dword [edi + 0x14], 0
jle 0x1005090f
xor esi, esi
mov dl, byte [edi + 0x19]
add dl, 0xf9
mov eax, str.NO_ACTION
mov ecx, str.NO_ACTION
cmp dl, 3
ja 0x100508bd
movsx ecx, dl
mov ecx, dword [ecx*4 + 0x101b7f64]
mov dl, byte [edi + 0x1a]
add dl, 0xf9
cmp dl, 3
ja 0x100508d2
movsx eax, dl
mov eax, dword [eax*4 + 0x101b7f64]
mov edx, dword [edi + esi*8 + 0x24]
mov ebx, dword [esp + 0x14]
mov ebx, dword [ebx + 4]
shl edx, 4
push str.NONE
push ecx
push eax
push dword [edi + esi*8 + 0x28]
push dword [ebx + edx]
push dword [edi + 8]
push esi
push dword [esp + 0x28]
push str.iissssss
push 1
push dword [esp + 0x28]
call fcn.100511d0
add esp, 0x2c
inc esi
cmp esi, dword [edi + 0x14]
jl 0x1005089e
inc dword [esp + 0xc]
mov edi, dword [edi + 4]
test edi, edi
jne 0x10050896
jmp 0x1004bf3f
or edx, esi
mov dword [eax + 0x58], edx
cmp ecx, 1
jne 0x1005088e
mov ecx, eax
call fcn.10042980
jmp 0x1005088e
mov edi, dword [0x101f4184]
mov esi, dword [0x101f4180]
jmp 0x1004fd1c
xor eax, eax
mov ebx, dword [esp + 4]
mov dword [ebx + 0x108], eax
mov dword [ebx + 0x10c], eax
jmp 0x1004bf18
mov word [ebx + edi + 0x10], 1
jmp 0x10050557
test eax, eax
je 0x1004b98d
jmp 0x1004bf3f
push dword [esp + 0x84]
push dword [esp + 0x84]
call fcn.1015a6f0
add esp, 8
jmp 0x1004f8ea
mov eax, 0x101b67e4
jmp 0x1004fe24
xor eax, eax
mov ecx, dword [esp + 0x10]
movzx ecx, byte [ecx + eax]
movzx edx, byte [eax + str.UTF16le]
cmp cl, dl
jne 0x100509be
test ecx, ecx
jne 0x100509cc
jmp 0x100509dd
mov cl, byte [ecx + 0x101b1828]
cmp cl, byte [edx + 0x101b1828]
jne 0x100509e7
inc eax
jmp 0x100509a5
xor ebx, ebx
jmp 0x1004c5f6
xor eax, eax
jmp 0x1004c5b1
mov eax, 0x101b67ec
jmp 0x1004fe24
xor eax, eax
mov ecx, dword [esp + 0x10]
movzx ecx, byte [ecx + eax]
movzx edx, byte [eax + str.UTF16be]
cmp cl, dl
jne 0x10050a05
test ecx, ecx
jne 0x10050a17
jmp 0x10050b28
mov cl, byte [ecx + 0x101b1828]
cmp cl, byte [edx + 0x101b1828]
jne 0x10050b32
inc eax
jmp 0x100509e9
mov eax, dword [esp + 8]
mov al, byte [eax + 0x13]
test al, al
je 0x10050b7a
dec al
mov ecx, dword [esp + 8]
mov byte [ecx + 0x13], al
movzx eax, al
mov eax, dword [ecx + eax*4 + 0xa0]
mov dword [esp + 0x1c], eax
mov edi, dword [esp]
mov ecx, edi
mov edx, 0x75
xor eax, eax
push eax
push dword [esp + 0x20]
xor eax, eax
push eax
call fcn.10030110
add esp, 0xc
mov ecx, edi
mov edx, eax
push 0xfffffffffffffffa
push esi
call fcn.1003a6c0
add esp, 8
mov ecx, edi
mov edx, 0x54
xor eax, eax
push eax
push 1
push dword [esp + 0x24]
call fcn.10030110
add esp, 0xc
jmp 0x1004cd6b
test esi, esi
je 0x1004cd6b
mov edx, esi
call fcn.1014f290
jmp 0x1004cd6b
mov ecx, esi
call fcn.1016b530
mov ecx, dword [esp]
mov edx, eax
push 0
jmp 0x1004cc16
test ecx, ecx
je 0x10050ad2
inc eax
jmp 0x1004c647
test ecx, ecx
je 0x10050ad9
inc eax
jmp 0x1004c66e
mov ecx, edi
call fcn.1016c350
mov ecx, dword [edi + 0x6c]
jmp 0x1004c71f
xor edx, edx
jmp 0x1004c6c2
xor edx, edx
inc edx
jmp 0x1004c6c2
mov ecx, dword [esp + 8]
mov esi, dword [esp + 0x2c]
mov edx, esi
call fcn.10171cd0
movzx edx, word [esi + 0x22]
test dx, dx
jle 0x1004bf3f
jmp 0x1004ca35
cmp byte [esi + 0x55], 0
je 0x10050b12
cmp byte [ecx + 8], 0
je 0x10050cb1
push str.temporary_storage_cannot_be_changed_from_within_a_transaction
push dword [esp + 0xc]
call fcn.10046a40
add esp, 8
jmp 0x1004bf3f
mov eax, 0x101b67f4
jmp 0x1004fe24
xor eax, eax
mov ecx, dword [esp + 0x10]
movzx ecx, byte [ecx + eax]
movzx edx, byte [eax + str.UTF_16]
cmp cl, dl
jne 0x10050b50
test ecx, ecx
jne 0x10050b62
jmp 0x10050c3a
mov cl, byte [ecx + 0x101b1828]
cmp cl, byte [edx + 0x101b1828]
jne 0x10050c44
inc eax
jmp 0x10050b34
mov ecx, ebx
call fcn.1015c3c0
jmp 0x1004c1af
mov eax, edx
mov ecx, edx
jmp 0x1004c921
mov ecx, dword [esp + 8]
mov edx, dword [ecx + 0x2c]
inc edx
mov dword [esp + 0x1c], edx
mov dword [ecx + 0x2c], edx
jmp 0x10050a40
mov edx, dword [esp + 0xc]
add edx, ecx
inc edx
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0xc]
inc edx
cmp dword [esp + 0x24], 1
jne 0x1004cb53
mov ecx, dword [esp + 8]
mov dword [esp + 0xc], ecx
jmp 0x1004cb64
add eax, ecx
mov esi, dword [eax]
xor ecx, ecx
mov eax, dword [esp + 0x28]
movzx edx, byte [eax + ecx]
movzx eax, byte [esi + ecx]
cmp dl, al
jne 0x10050bd5
test edx, edx
jne 0x10050be7
jmp 0x1004c983
mov dl, byte [edx + 0x101b1828]
cmp dl, byte [eax + 0x101b1828]
jne 0x1004c9ac
inc ecx
jmp 0x10050bbc
mov ecx, eax
call fcn.10042980
jmp 0x1004c9ac
mov byte [esp + 0x18], 1
jmp 0x1004ca0b
xor edx, edx
jmp 0x1004cbef
mov ecx, esi
call fcn.1016c350
xor ebx, ebx
test eax, eax
jne 0x1004c512
mov esi, dword [esp]
mov eax, dword [esi + 0x6c]
jmp 0x1004c4e8
test dl, dl
je 0x10050c70
mov dl, byte [esi + ecx]
inc ecx
jmp 0x1004cc4e
mov esi, closesocket
jmp 0x1004cfd5
mov eax, 0x101b67fc
jmp 0x1004fe24
xor eax, eax
mov ecx, dword [esp + 0x10]
movzx ecx, byte [ecx + eax]
movzx edx, byte [eax + str.UTF16]
cmp cl, dl
jne 0x10050c5f
test ecx, ecx
jne 0x10050c6d
jmp 0x10050c86
mov cl, byte [ecx + 0x101b1828]
cmp cl, byte [edx + 0x101b1828]
jne 0x10050c90
inc eax
jmp 0x10050c46
xor ebx, ebx
inc ebx
jmp 0x1004c5f6
mov esi, 0xfffe
mov edx, dword [esp + 0x18]
jmp 0x1004ccda
mov eax, 0x101b6804
jmp 0x1004fe24
push dword [esp + 0x10]
push str.unsupported_encoding:__s
push dword [esp + 0x10]
call fcn.10046a40
jmp 0x10050353
mov ecx, 0x101f4350
jmp 0x1004d070
call fcn.1000a990
mov eax, dword [esi + 0x10]
mov dword [eax + 0x14], 0
mov ecx, esi
call fcn.1015c3c0
jmp 0x1004c616