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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x138
mov eax, dword [0x101d2014]
mov ecx, dword [ebp + 8]
xor eax, ebp
test ecx, ecx
mov dword [esp + 0x130], eax
je 0x1000bb79
mov eax, dword [ecx]
test eax, eax
je 0x1000bb80
mov esi, dword [eax + 0xc]
mov dword [esp + 0x20], eax
test esi, esi
je 0x1000b68f
mov ecx, dword [0x101d2070]
call dword [section..00cfg]
push esi
call ecx
add esp, 4
mov esi, dword [ebp + 8]
mov dword [esp + 0x24], 0
lea eax, [esi + 0x68]
lea ecx, [esi + 0x88]
mov byte [esi + 0x95], 0
mov dword [esp + 0x48], eax
mov dword [esp + 0x44], ecx
cmp dword [esi + 0x14], 0x2df20da3
jne 0x1000bb6b
mov eax, dword [esi]
cmp byte [eax + 0x51], 0
mov dword [esp + 0x10], eax
jne 0x1000bbb6
cmp dword [esi + 0x24], 0
jns 0x1000b749
test byte [esi + 0x98], 3
jne 0x1000b903
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0xb0]
test eax, eax
jne 0x1000b6fa
mov dword [ecx + 0x108], 0
test byte [ecx + 0x58], 2
jne 0x1000bd6c
mov ecx, dword [esp + 0x10]
inc eax
mov dword [ecx + 0xb0], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x98]
test al, al
js 0x1000b72f
mov eax, dword [esp + 0x10]
inc dword [eax + 0xb8]
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x98]
bt eax, 8
jae 0x1000b73f
mov eax, dword [esp + 0x10]
inc dword [eax + 0xb4]
mov esi, dword [ebp + 8]
mov dword [esi + 0x24], 0
mov eax, dword [esi + 0x98]
and eax, 0xc
jne 0x1000bcab
mov edi, dword [esp + 0x10]
mov ecx, esi
inc dword [edi + 0xbc]
call fcn.10031190
dec dword [edi + 0xbc]
mov ebx, eax
mov edi, 0x64
cmp eax, 0x64
je 0x1000b7b0
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + 0x8c]
cmp dword [ecx + 0x88], 1
sbb eax, 0
jge 0x1000bda7
cmp ebx, 0x65
jne 0x1000bdb8
mov eax, dword [esp + 0x10]
mov edi, 0x65
cmp byte [eax + 0x4f], 0
jne 0x1000b835
mov eax, dword [esp + 0x10]
mov edx, dword [ebp + 8]
mov dword [eax + 0x40], edi
mov ecx, dword [edx]
mov edx, dword [edx + 0x28]
test edx, edx
jne 0x1000bb43
cmp byte [ecx + 0x51], 0
jne 0x1000bb43
mov eax, dword [esp + 0x10]
and edi, dword [eax + 0x44]
cmp edi, 0x11
jne 0x1000bc76
jmp 0x1000b92e
mov eax, dword [eax + 0x10]
mov ebx, dword [eax + edi + 4]
test ebx, ebx
je 0x1000b822
cmp byte [ebx + 9], 0
jne 0x1000b8c1
mov eax, dword [ebx + 4]
mov eax, dword [eax]
mov eax, dword [eax + 0xd8]
test eax, eax
je 0x1000b831
mov ecx, dword [eax + 0xc]
mov dword [eax + 0xc], 0
cmp byte [ebx + 9], 0
jne 0x1000b8e2
test ecx, ecx
jg 0x1000b874
mov eax, dword [esp + 0x10]
inc esi
add edi, 0x10
cmp esi, dword [eax + 0x14]
jl 0x1000b7e6
jmp 0x1000b84b
xor ecx, ecx
jmp 0x1000b814
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x14], 0
jle 0x1000b860
mov eax, dword [esp + 0x10]
xor edi, edi
xor edx, edx
xor esi, esi
jmp 0x1000b7e6
mov eax, dword [ebp + 8]
test edx, edx
mov edi, 1
mov dword [eax + 0x28], edx
jne 0x1000b7b0
jmp 0x1000b86a
mov eax, dword [ebp + 8]
mov dword [eax + 0x28], 0
mov edi, 0x65
jmp 0x1000b7b0
test edx, edx
mov dword [esp + 0xc], ecx
jne 0x1000b822
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0xf0]
test ecx, ecx
je 0x1000b822
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x10]
mov edx, dword [ebx + 0xf4]
mov eax, dword [eax + edi]
mov dword [esp + 0x14], edx
mov dword [esp + 4], eax
call dword [section..00cfg]
push dword [esp + 0xc]
push dword [esp + 8]
push ebx
push dword [esp + 0x20]
call ecx
add esp, 0x10
mov edx, eax
jmp 0x1000b822
inc dword [ebx + 0xc]
cmp byte [ebx + 0xa], 0
jne 0x1000b7fb
mov ecx, ebx
mov dword [esp + 0xc], edx
call fcn.10028170
mov edx, dword [esp + 0xc]
jmp 0x1000b7fb
dec dword [ebx + 0xc]
jne 0x1000b81e
mov dword [esp + 0xc], ecx
mov ecx, ebx
mov ebx, edx
call fcn.10028200
mov ecx, dword [esp + 0xc]
mov edx, ebx
jmp 0x1000b81e
mov eax, dword [ebp + 8]
mov edi, 1
mov dword [eax + 0x28], 0x11
cmp byte [eax + 0x94], 0
jns 0x1000b7d1
mov ecx, dword [ebp + 8]
call fcn.1002dfb0
mov edi, eax
jmp 0x1000b7d1
cmp dword [esp + 0x24], 0x32
je 0x1000bc71
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0x24]
mov edi, dword [ebx]
mov edx, dword [ebx + 0xc0]
mov dword [esp + 0xc], eax
movzx eax, byte [ebx + 0x94]
mov ecx, edi
push 0
lea esi, [esp + 0x50]
push esi
push ebx
push eax
push 0xffffffffffffffff
call fcn.10011a00
add esp, 0x14
test eax, eax
jne 0x1000bbc7
mov edi, dword [esp + 0x4c]
mov esi, 0xe0
push esi
push edi
lea eax, [esp + 0x58]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push esi
push ebx
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push esi
lea eax, [esp + 0x54]
push eax
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [edi + 8]
mov ecx, dword [ebx + 8]
mov dword [edi + 8], ecx
mov dword [ebx + 8], eax
mov eax, dword [edi + 4]
mov ecx, dword [ebx + 4]
mov dword [edi + 4], ecx
mov dword [ebx + 4], eax
mov eax, dword [edi + 0xc0]
mov ecx, dword [ebx + 0xc0]
mov dword [edi + 0xc0], ecx
mov dword [ebx + 0xc0], eax
mov eax, dword [edi + 0xd4]
mov dword [ebx + 0xd4], eax
mov al, byte [edi + 0x94]
mov byte [ebx + 0x94], al
movsd xmm0, qword [edi + 0xb4]
movsd qword [ebx + 0xb4], xmm0
mov eax, dword [edi + 0xbc]
mov dword [ebx + 0xbc], eax
movsd xmm0, qword [edi + 0xa4]
movsd xmm1, qword [edi + 0xac]
movsd qword [ebx + 0xac], xmm1
movsd qword [ebx + 0xa4], xmm0
inc dword [ebx + 0xb8]
mov eax, dword [ebx]
mov esi, dword [eax + 0xc]
test esi, esi
je 0x1000ba46
mov ecx, dword [0x101d2070]
call dword [section..00cfg]
push esi
call ecx
add esp, 4
cmp word [edi + 0x10], 0
jle 0x1000baa2
xor ebx, ebx
xor edx, edx
mov dword [esp + 0x10], edi
mov eax, dword [ebp + 8]
mov ecx, dword [edi + 0x64]
mov eax, dword [eax + 0x64]
test byte [eax + ebx + 9], 0x24
lea edi, [eax + ebx]
jne 0x1000c535
cmp dword [eax + ebx + 0x18], 0
jne 0x1000c535
lea esi, [ecx + ebx]
mov eax, ecx
mov ecx, 0xa
inc edx
rep movsd dword es:[edi], dword [esi]
mov word [eax + ebx + 8], 1
mov dword [eax + ebx + 0x18], 0
add ebx, 0x28
mov edi, dword [esp + 0x10]
movsx eax, word [edi + 0x10]
cmp edx, eax
jl 0x1000ba55
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
test esi, esi
je 0x1000bac0
mov ecx, dword [0x101d2078]
call dword [section..00cfg]
push esi
call ecx
add esp, 4
mov dword [edi + 0x28], 0
mov eax, dword [edi + 0x14]
cmp eax, 0x2df20da3
jne 0x1000c6af
mov ecx, edi
call fcn.1000a510
mov esi, dword [edi]
mov edx, edi
mov ecx, esi
call fcn.100017a0
mov ecx, dword [edi + 4]
mov eax, dword [edi + 8]
test ecx, ecx
jne 0x1000bb3e
mov dword [esi + 4], eax
mov eax, dword [edi + 8]
test eax, eax
je 0x1000bb01
mov ecx, dword [edi + 4]
mov dword [eax + 4], ecx
inc dword [esp + 0x24]
mov ecx, esi
mov edx, edi
mov dword [edi + 0x14], 0x5606c3c8
mov dword [edi], 0
call fcn.10019c40
mov esi, dword [ebp + 8]
push esi
call sym.nss3.dll_sqlite3_reset
add esp, 4
cmp dword [esp + 0xc], 0
js 0x1000b6b2
mov byte [esi + 0x95], 1
jmp 0x1000b6b2
mov dword [ecx + 8], eax
jmp 0x1000baf4
call fcn.1002ce70
cmp eax, 7
jne 0x1000b7d1
mov eax, dword [ebp + 8]
mov ecx, 7
mov dword [eax + 0x28], ecx
cmp byte [eax + 0x94], 0
cmovs edi, ecx
jmp 0x1000b7d1
push esi
call sym.nss3.dll_sqlite3_reset
add esp, 4
jmp 0x1000b6bf
mov eax, str.API_called_with_NULL_prepared_statement
jmp 0x1000bb85
mov eax, str.API_called_with_finalized_prepared_statement
mov edi, 0x15
push eax
push edi
call sym.nss3.dll_sqlite3_log
add esp, 8
push 0x101b128f
push 0x14819
push 0x101b17c9
push str._s_at_line__d_of___.10s_
push edi
call sym.nss3.dll_sqlite3_log
add esp, 0x14
jmp 0x1000bc93
mov dword [esi + 0x28], 7
mov edi, 7
jmp 0x1000bc76
mov esi, eax
cmp eax, 7
jne 0x1000bbd8
cmp byte [edi + 0x51], 0
je 0x1000c025
mov eax, dword [esp + 0x20]
push dword [eax + 0x104]
call sym.nss3.dll_sqlite3_value_text
add esp, 4
mov ecx, dword [ebp + 8]
mov dword [esp + 0x10], eax
mov edx, dword [ecx + 0x7c]
test edx, edx
je 0x1000bc01
mov ecx, dword [esp + 0x20]
call fcn.10019c40
mov eax, dword [esp + 0x20]
cmp byte [eax + 0x51], 0
jne 0x1000c754
cmp dword [esp + 0x10], 0
mov dword [esp + 0x24], 0
je 0x1000bc55
push dword [esp + 0x10]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, dword [esp + 0x20]
mov ebx, eax
inc ebx
mov edx, ebx
push 0
call fcn.10019ed0
add esp, 4
test eax, eax
je 0x1000bc55
mov edi, eax
push ebx
push dword [esp + 0x14]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov dword [esp + 0x24], edi
mov ebx, dword [ebp + 8]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
mov edx, esi
mov dword [ebx + 0x7c], eax
call fcn.1002ce70
mov edi, eax
mov dword [ebx + 0x28], eax
jmp 0x1000bc76
mov edi, 0x11
mov eax, dword [esp + 0x20]
mov esi, dword [eax + 0xc]
test esi, esi
je 0x1000bc93
mov ecx, dword [0x101d2078]
call dword [section..00cfg]
push esi
call ecx
add esp, 4
mov ecx, dword [esp + 0x130]
xor ecx, ebp
call fcn.10192ef0
mov eax, edi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov edx, dword [esi + 0x58]
mov ecx, dword [esi]
cmp eax, 4
mov bl, 1
lea eax, [edx + 0x28]
mov dword [esp + 0x18], ecx
mov dword [esp + 8], edx
mov dword [esp + 0x28], eax
je 0x1000bcd0
mov eax, dword [esp + 0x18]
mov bl, byte [eax + 0x23]
and bl, 1
mov ecx, dword [esp + 0x28]
mov edx, 8
call fcn.1002ca40
mov eax, dword [ebp + 8]
mov dword [eax + 0x78], 0
cmp dword [eax + 0x28], 7
jne 0x1000bdd9
mov eax, dword [esp + 0x18]
mov ebx, 1
cmp byte [eax + 0x51], 0
jne 0x1000b77b
mov eax, dword [esp + 0x18]
mov ebx, 1
cmp byte [eax + 0x52], 0
jne 0x1000b77b
mov eax, dword [esp + 0x18]
mov byte [eax + 0x51], 1
cmp dword [eax + 0xbc], 0
jle 0x1000bd37
mov eax, dword [esp + 0x18]
mov dword [eax + 0x108], 1
mov eax, dword [esp + 0x18]
mov ebx, 1
inc dword [eax + 0x110]
mov word [eax + 0x114], 0
mov eax, dword [eax + 0xec]
test eax, eax
je 0x1000b77b
xor ebx, ebx
mov dword [eax + 0xc], 7
inc ebx
jmp 0x1000b77b
mov ecx, dword [esp + 0x10]
cmp byte [ecx + 0xa5], 0
jne 0x1000b704
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0xc0], 0
je 0x1000b704
mov esi, dword [esp + 0x10]
mov edx, dword [esp + 0x44]
mov ecx, dword [esi]
call fcn.1002cd80
mov eax, dword [esi + 0xb0]
jmp 0x1000b704
mov ecx, dword [esp + 0x10]
mov edx, dword [ebp + 8]
call fcn.1000a3b0
jmp 0x1000b794
mov eax, dword [ebp + 8]
mov edi, ebx
cmp byte [eax + 0x94], 0
jns 0x1000b7b0
mov ecx, dword [ebp + 8]
call fcn.1002dfb0
mov edi, eax
jmp 0x1000b7b0
test bl, bl
je 0x1000be11
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + 0x58]
mov ebx, dword [ecx + 0x6c]
mov ecx, dword [ecx + 0x98]
test byte [eax + 0x170], 0x10
lea edx, [eax + 0x168]
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x34], edx
jne 0x1000c08d
mov dword [esp + 0x2c], 0
jmp 0x1000be2f
mov eax, dword [ebp + 8]
mov dword [esp + 0x34], 0
mov ebx, dword [eax + 0x6c]
mov eax, dword [eax + 0x98]
mov dword [esp + 0x3c], eax
mov al, 1
mov dword [esp + 0x2c], eax
mov dword [esp + 0x14], 0
mov dword [esp + 0xc], 0
mov eax, dword [ebp + 8]
and dword [esp + 0x3c], 0xc
mov edi, dword [eax + 0x24]
lea eax, [edi + 1]
cmp edi, ebx
mov dword [esp + 0x30], eax
jge 0x1000c06f
mov eax, dword [ebp + 8]
mov ecx, edi
mov edx, dword [esp + 0x48]
mov dword [esp + 0x1c], edi
sub ecx, dword [eax + 0x6c]
jl 0x1000be91
mov eax, dword [esp + 0xc]
mov edx, dword [eax]
mov esi, dword [edx + 4]
cmp ecx, esi
jl 0x1000be8d
mov eax, dword [esp + 0xc]
add eax, 4
mov edx, dword [eax]
sub ecx, esi
add eax, 4
mov esi, dword [edx + 4]
cmp ecx, esi
jge 0x1000be7f
mov dword [esp + 0x1c], ecx
mov eax, dword [edx]
cmp byte [esp + 0x2c], 0
mov dword [esp + 4], eax
jne 0x1000bf65
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 4]
lea ecx, [eax + eax*4]
cmp byte [edx + ecx*4 + 1], 0xfc
mov dword [esp + 0x38], ecx
jne 0x1000bf65
cmp dword [esp + 0x14], 0
jle 0x1000bee3
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x38]
mov ecx, dword [eax + ecx*4 + 0x10]
xor eax, eax
mov edx, dword [esp + 0xc]
cmp dword [edx + eax*4], ecx
je 0x1000bee5
inc eax
cmp dword [esp + 0x14], eax
jne 0x1000bed1
jmp 0x1000beeb
xor eax, eax
cmp eax, dword [esp + 0x14]
jne 0x1000bf65
mov ecx, dword [esp + 0x14]
xor eax, eax
lea edx, [ecx*4 + 4]
test ecx, ecx
mov ecx, dword [esp + 0x34]
setne al
mov dword [esp + 0x40], edx
push eax
call fcn.1002fa30
add esp, 4
mov ecx, dword [ebp + 8]
test eax, eax
mov dword [ecx + 0x28], eax
jne 0x1000c44e
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 4]
mov esi, dword [edx + 0x10]
mov eax, dword [ecx + eax*4 + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [esi + ecx*4], eax
mov dword [esp + 0xc], esi
mov esi, dword [esp + 4]
inc ecx
movzx eax, word [edx + 8]
mov dword [esp + 0x14], ecx
and eax, 0x3e40
or eax, 0x10
mov word [edx + 8], ax
mov eax, dword [esp + 0x40]
mov dword [edx + 0xc], eax
mov eax, dword [esp + 0x38]
mov eax, dword [esi + eax*4 + 0x10]
add ebx, dword [eax + 4]
cmp dword [esp + 0x3c], 8
jne 0x1000bf96
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 4]
lea eax, [eax + eax*4]
mov al, byte [ecx + eax*4]
cmp al, 0xaf
je 0x1000bf96
test edi, edi
mov edi, dword [esp + 0x30]
jle 0x1000be4a
mov edi, dword [esp + 0x30]
cmp al, 0x3e
jne 0x1000be4a
mov eax, dword [ebp + 8]
mov ecx, dword [esp + 0x30]
mov dword [eax + 0x24], ecx
mov eax, dword [esp + 0x18]
mov eax, dword [eax + 0x108]
test eax, eax
jne 0x1000c42f
xor eax, eax
mov ecx, dword [esp + 4]
mov dword [esp + 0x54], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], 0x3b9aca00
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x1c]
mov word [esp + 0x64], 0
lea ebx, [eax + eax*4]
movsx ecx, byte [ecx + ebx*4 + 1]
add ecx, 0x11
cmp ecx, 0xf
ja case.0x1000bff4.10
mov eax, 0x101b0958
jmp dword [ecx*4 + 0x1019a6d8]
mov eax, dword [esp + 4]
mov esi, dword [eax + ebx*4 + 0x10]
mov edi, dword [esi]
test edi, edi
jne 0x1000c54d
lea ecx, [esp + 0x50]
mov edx, 0x101b4073
push 1
call fcn.10004f20
add esp, 4
jmp case.0x1000bff4.17
cmp byte [edi + 0x52], 0
jne 0x1000bbd8
mov byte [edi + 0x51], 1
cmp dword [edi + 0xbc], 0
jle 0x1000c046
mov dword [edi + 0x108], 1
inc dword [edi + 0x110]
mov word [edi + 0x114], 0
mov eax, dword [edi + 0xec]
test eax, eax
je 0x1000bbd8
mov dword [eax + 0xc], 7
jmp 0x1000bbd8
mov eax, dword [ebp + 8]
mov ebx, 0x65
mov dword [eax + 0x28], 0
mov eax, dword [ebp + 8]
mov ecx, dword [esp + 0x30]
mov dword [eax + 0x24], ecx
jmp 0x1000b77b
mov ecx, dword [eax + 0x174]
mov eax, dword [eax + 0x178]
shr ecx, 2
mov dword [esp + 0xc], eax
mov dword [esp + 0x14], ecx
je 0x1000c0c6
xor eax, eax
mov ecx, dword [esp + 0xc]
mov ecx, dword [ecx + eax*4]
inc eax
add ebx, dword [ecx + 4]
cmp dword [esp + 0x14], eax
jne 0x1000c0a8
mov dword [esp + 0x2c], 0
jmp 0x1000be3f
mov dword [esp + 0x2c], 0
mov dword [esp + 0x14], 0
jmp 0x1000be3f
mov eax, dword [esp + 4]
lea eax, [eax + ebx*4 + 0x10]
jmp 0x1000c126
mov eax, dword [esp + 4]
mov eax, dword [eax + ebx*4 + 0x10]
movzx ecx, word [eax + 8]
test cl, 2
jne 0x1000c427
test cl, 0x24
jne 0x1000c65b
test cl, 8
jne 0x1000c66f
test cl, 1
mov eax, 0x101b75f3
mov edx, str._blob_
cmove eax, edx
jmp case.0x1000bff4.4
mov eax, dword [esp + 4]
mov eax, dword [eax + ebx*4 + 0x10]
mov eax, dword [eax]
test eax, eax
je case.0x1000bff4.17
push eax
lea eax, [esp + 0x54]
push eax
call fcn.10004d10
add esp, 8
test byte [esp + 0x64], 7
je 0x1000c14f
mov eax, dword [esp + 0x18]
cmp byte [eax + 0x51], 0
je 0x1000c3b5
mov eax, dword [esp + 0x54]
test eax, eax
je 0x1000c178
mov ecx, dword [esp + 0x60]
mov byte [eax + ecx], 0
cmp dword [esp + 0x5c], 0
je 0x1000c178
test byte [esp + 0x65], 4
jne 0x1000c178
lea ecx, [esp + 0x50]
call fcn.1001a360
jmp 0x1000c17c
mov eax, dword [esp + 0x54]
mov dword [esp + 0xc], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x98]
and eax, 0xc
cmp eax, 8
jne 0x1000c225
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov edx, dword [eax + ebx*4 + 4]
test byte [ecx + 0x31], 0x24
jne 0x1000c456
mov eax, dword [esp + 8]
mov dword [eax + 0x28], edx
sar edx, 0x1f
mov dword [eax + 0x2c], edx
mov word [eax + 0x30], 4
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov edx, dword [eax + ebx*4 + 8]
test byte [ecx + 0x59], 0x24
jne 0x1000c46d
mov eax, dword [esp + 8]
mov dword [eax + 0x50], edx
sar edx, 0x1f
mov dword [eax + 0x54], edx
mov word [eax + 0x58], 4
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov edx, dword [eax + ebx*4 + 0xc]
test byte [ecx + 0x81], 0x24
jne 0x1000c487
mov ecx, dword [esp + 8]
mov si, 4
mov dword [ecx + 0x78], edx
sar edx, 0x1f
mov dword [ecx + 0x7c], edx
mov word [ecx + 0x80], 4
add ecx, 0xa0
jmp 0x1000c362
mov eax, dword [esp + 8]
test byte [eax + 0x31], 0x24
jne 0x1000c4ad
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x1c]
mov dword [eax + 0x28], ecx
sar ecx, 0x1f
mov dword [eax + 0x2c], ecx
mov word [eax + 0x30], 4
mov edi, dword [esp + 4]
mov esi, dword [esp + 8]
movzx eax, byte [edi + ebx*4]
lea ecx, [esi + 0x50]
mov edx, dword [eax*4 + 0x10194d68]
push 0
push 1
push 0xffffffffffffffff
call fcn.1000ad80
add esp, 0xc
mov edx, dword [edi + ebx*4 + 4]
test byte [esi + 0x81], 0x24
jne 0x1000c4c8
mov eax, dword [esp + 8]
mov dword [eax + 0x78], edx
sar edx, 0x1f
mov dword [eax + 0x7c], edx
mov word [eax + 0x80], 4
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov edx, dword [eax + ebx*4 + 8]
test byte [ecx + 0xa9], 0x24
jne 0x1000c4e2
mov eax, dword [esp + 8]
mov dword [eax + 0xa0], edx
sar edx, 0x1f
mov dword [eax + 0xa4], edx
mov word [eax + 0xa8], 4
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov edx, dword [eax + ebx*4 + 0xc]
test byte [ecx + 0xd1], 0x24
jne 0x1000c4ff
mov eax, dword [esp + 8]
mov dword [eax + 0xc8], edx
sar edx, 0x1f
mov dword [eax + 0xcc], edx
mov word [eax + 0xd0], 4
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
test byte [eax + 0x121], 0x24
movzx edx, word [ecx + ebx*4 + 2]
jne 0x1000c51c
mov eax, dword [esp + 8]
mov dword [eax + 0x118], edx
mov dword [eax + 0x11c], 0
mov word [eax + 0x120], 4
mov eax, dword [esp + 8]
test byte [eax + 0x149], 0x24
je 0x1000c40f
mov esi, dword [esp + 8]
lea ecx, [esi + 0x140]
call fcn.1002f940
add esi, 0xf0
mov ecx, esi
mov si, 8
mov edx, dword [esp + 0xc]
push sym.nss3.dll_sqlite3_free
push 1
push 0xffffffffffffffff
call fcn.1000ad80
add esp, 0xc
mov ecx, dword [ebp + 8]
mov eax, dword [esp + 0x28]
mov edx, 0
mov ebx, 1
mov word [ecx + 0x90], si
mov dword [ecx + 0x78], eax
mov eax, dword [esp + 0x18]
cmp byte [eax + 0x51], 0
mov eax, 7
cmove eax, edx
mov dword [ecx + 0x28], eax
jne 0x1000b77b
mov edi, 0x64
jmp 0x1000b7b0
mov eax, dword [esp + 0x18]
cmp byte [eax + 0x52], 0
jne 0x1000c14f
mov eax, dword [esp + 0x18]
mov byte [eax + 0x51], 1
cmp dword [eax + 0xbc], 0
jle 0x1000c3e2
mov eax, dword [esp + 0x18]
mov dword [eax + 0x108], 1
mov eax, dword [esp + 0x18]
inc dword [eax + 0x110]
mov word [eax + 0x114], 0
mov eax, dword [eax + 0xec]
test eax, eax
je 0x1000c14f
mov dword [eax + 0xc], 7
jmp 0x1000c14f
mov ecx, dword [esp + 8]
mov word [ecx + 0x148], 1
add ecx, 0xf0
jmp 0x1000c35e
add eax, 0x10
jmp 0x1000c126
mov eax, dword [ebp + 8]
mov dword [eax + 0x28], 9
push str.interrupted
push eax
call fcn.1002f420
add esp, 8
xor ebx, ebx
jmp 0x1000bd66
xor ebx, ebx
inc ebx
jmp 0x1000c07e
mov ecx, dword [esp + 0x28]
mov eax, edx
sar eax, 0x1f
push eax
call fcn.10031150
add esp, 4
jmp 0x1000c1be
mov eax, dword [esp + 8]
mov esi, edx
sar esi, 0x1f
lea ecx, [eax + 0x50]
push esi
call fcn.10031150
add esp, 4
jmp 0x1000c1e7
mov esi, dword [esp + 8]
mov eax, edx
sar eax, 0x1f
lea ecx, [esi + 0x78]
push eax
call fcn.10031150
add esp, 4
add esi, 0xa0
mov ecx, esi
mov si, 4
jmp 0x1000c362
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x28]
mov eax, edx
sar eax, 0x1f
push eax
call fcn.10031150
add esp, 4
jmp 0x1000c24a
mov eax, dword [esp + 8]
mov esi, edx
sar esi, 0x1f
lea ecx, [eax + 0x78]
push esi
call fcn.10031150
add esp, 4
jmp 0x1000c295
mov eax, dword [esp + 8]
mov esi, edx
sar esi, 0x1f
lea ecx, [eax + 0xa0]
push esi
call fcn.10031150
add esp, 4
jmp 0x1000c2ca
mov eax, dword [esp + 8]
mov esi, edx
sar esi, 0x1f
lea ecx, [eax + 0xc8]
push esi
call fcn.10031150
add esp, 4
jmp 0x1000c2ff
mov eax, dword [esp + 8]
lea ecx, [eax + 0x118]
push 0
call fcn.10031150
add esp, 4
jmp 0x1000c336
mov dword [esp + 0x14], ecx
mov ecx, edi
mov esi, edx
call fcn.1002f900
mov ecx, dword [esp + 0x14]
mov edx, esi
jmp 0x1000ba77
xor eax, eax
inc eax
mov edx, eax
mov dword [esp + 0xc], eax
cmp eax, 1
mov eax, 0x2c
mov ecx, 0x5b
cmove eax, ecx
push dword [esi + edx*4]
push eax
push str._c_u
lea eax, [esp + 0x5c]
push eax
call fcn.10005390
add esp, 0x10
mov ecx, dword [esp + 0xc]
inc ecx
mov eax, ecx
cmp ecx, edi
jbe 0x1000c550
mov eax, dword [esp + 0x60]
lea ecx, [eax + 1]
cmp ecx, dword [esp + 0x58]
jae 0x1000c00d
mov dword [esp + 0x60], ecx
mov ecx, dword [esp + 0x54]
mov byte [ecx + eax], 0x5d
jmp case.0x1000bff4.17
mov eax, dword [esp + 4]
mov eax, dword [eax + ebx*4 + 0x10]
mov eax, dword [eax + 4]
jmp 0x1000c60a
mov eax, dword [esp + 4]
mov esi, dword [eax + ebx*4 + 0x10]
movzx eax, word [esi + 6]
push eax
push str.k__d
lea eax, [esp + 0x58]
push eax
call fcn.10005390
add esp, 0xc
cmp word [esi + 6], 0
jne 0x1000c6cd
mov eax, dword [esp + 0x60]
lea ecx, [eax + 1]
cmp ecx, dword [esp + 0x58]
jae 0x1000c6bf
mov dword [esp + 0x60], ecx
mov ecx, dword [esp + 0x54]
mov byte [ecx + eax], 0x29
jmp case.0x1000bff4.17
mov eax, dword [esp + 4]
mov eax, dword [eax + ebx*4 + 0x10]
movsx ecx, byte [eax]
push ecx
push dword [eax + 0x20]
push str._s__d_
lea eax, [esp + 0x5c]
push eax
call fcn.10005390
add esp, 0x10
jmp case.0x1000bff4.17
mov eax, dword [esp + 4]
push dword [eax + ebx*4 + 0x10]
push 0x101b3c2e
jmp 0x1000c69d
mov eax, dword [esp + 4]
mov eax, dword [eax + ebx*4 + 0x10]
movzx ecx, byte [eax + 4]
push dword [ecx*4 + 0x10194d58]
push dword [eax]
push str._.18s__s
jmp 0x1000c616
mov eax, dword [esp + 4]
mov eax, dword [eax + ebx*4 + 0x10]
push dword [eax + 4]
push dword [eax]
push 0x101b2a75
jmp 0x1000c616
mov eax, dword [esp + 4]
mov eax, dword [eax + ebx*4 + 0x10]
movsd xmm0, qword [eax]
sub esp, 0x10
lea eax, [esp + 0x60]
movsd qword [esp + 8], xmm0
mov dword [esp + 4], str._.16g
mov dword [esp], eax
jmp 0x1000c61b
mov eax, dword [esp + 4]
mov eax, dword [eax + ebx*4 + 0x10]
push dword [eax + 8]
push str.vtab:_p
lea eax, [esp + 0x58]
push eax
call fcn.10005390
add esp, 0xc
jmp case.0x1000bff4.17
cmp eax, 0x319c2973
je 0x1000bad5
jmp 0x1000badc
lea ecx, [esp + 0x50]
mov edx, 0x101c2a36
jmp 0x1000c016
xor edi, edi
mov eax, dword [esi + edi*4 + 0x14]
mov ecx, 0x101c3b42
test eax, eax
je 0x1000c6de
mov ecx, dword [eax]
push str.BINARY
mov dword [esp + 0x10], ecx
push ecx
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
add esp, 8
mov ecx, dword [esp + 0xc]
test eax, eax
mov eax, 0x101ba58b
cmove ecx, eax
mov eax, dword [esi + 0x10]
mov dword [esp + 0xc], ecx
mov ecx, 0x101c1a31
movzx eax, byte [eax + edi]
test al, 2
mov edx, eax
mov eax, 0x101c3b42
cmove ecx, eax
test dl, 1
mov eax, 0x101c1c47
mov edx, 0x101c3b42
cmove eax, edx
push dword [esp + 0xc]
push ecx
push eax
push str.__s_s_s
lea eax, [esp + 0x60]
push eax
call fcn.10005390
add esp, 0x14
movzx eax, word [esi + 6]
inc edi
cmp edi, eax
jae 0x1000c5e0
jmp 0x1000c6cf
mov eax, dword [ebp + 8]
mov dword [eax + 0x7c], 0
mov dword [eax + 0x28], 7
jmp 0x1000bbbd