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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xc4
mov eax, dword [0x100ff008]
xor eax, esp
mov dword [esp + 0xc0], eax
mov eax, dword [ebp + 0x14]
push ebx
mov ebx, dword [ebp + 0x10]
push esi
push edi
mov edi, dword [ebp + 8]
mov dword [esp + 0x5c], ecx
mov ecx, 0x10103106
mov dword [esp + 0x84], eax
mov eax, dword [ebp + 0x18]
mov dword [esp + 0x68], edx
mov dword [esp + 0x6c], edi
mov dword [esp + 0x74], ebx
mov dword [esp + 0x34], eax
call fcn.100d96c4
mov ecx, dword [ebx + 4]
xor eax, eax
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x28], eax
lea edx, [ecx + 1]
mov dword [esp + 0x38], eax
mov eax, dword [ebx]
mov dword [esp + 0x14], 0
mov dword [esp + 0x60], 0
mov al, byte [eax + 3]
mov byte [esp + 0x1f], al
xor eax, eax
mov dword [esp + 0x58], 0
mov dword [esp + 0x24], eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100bba61
sub ecx, edx
lea eax, [ecx + 1]
mov ecx, dword [ebx + 8]
mov dword [esp + 0x48], eax
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100bba77
mov ebx, dword [ebp + 0xc]
sub ecx, edx
lea eax, [ecx + 1]
mov dword [esp + 0x78], eax
lea esi, [ebx*4 - 8]
call fcn.100b6e10
test eax, eax
je 0x100bbb23
mov dword [esp + 0x18], 0
mov ebx, 7
mov eax, dword [0x10101960]
xor edi, edi
cmp dword [esp + 0x30], edi
jle 0x100bce58
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x30]
mov esi, dword [ecx + edi*4]
test esi, esi
je 0x100bce4f
cmp dword [0x100ff048], 0
je 0x100bce38
test eax, eax
je 0x100bbaea
push eax
call dword [0x100ff0a4]
add esp, 4
push esi
call dword [0x100ff080]
sub dword [0x10101788], eax
add esp, 4
dec dword [0x101017ac]
push esi
call dword [0x100ff078]
mov eax, dword [0x10101960]
add esp, 4
test eax, eax
je 0x100bce47
push eax
call dword [0x100ff0ac]
jmp 0x100bce3f
push 0
push esi
call fcn.1003e840
mov ecx, eax
add esp, 8
mov dword [esp + 0x18], ecx
test ecx, ecx
je 0x100bbaa6
push esi
push 0
push ecx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
call fcn.100b6e10
test eax, eax
je 0x100bbb59
xor eax, eax
mov dword [esp + 0x2c], eax
jmp 0x100bbb80
push 0
push esi
call fcn.1003e840
add esp, 8
mov dword [esp + 0x2c], eax
test eax, eax
je 0x100bbaa6
push esi
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov eax, dword [esp + 0x38]
add esp, 0xc
test eax, eax
je 0x100bbaa6
mov eax, 3
mov dword [esp + 0x64], eax
cmp eax, ebx
jge 0x100bc0ed
cmp dword [esp + 0x58], 0
mov ecx, dword [esp + 0x74]
mov ebx, dword [ecx + eax*4]
jne 0x100bbc4c
mov ecx, ebx
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100bbbb0
sub ecx, edx
cmp ecx, 8
jbe 0x100bbc4c
mov edx, 8
test ebx, ebx
je 0x100bbc4c
mov esi, ebx
mov edi, str.tokenize
mov al, byte [esi]
dec edx
test al, al
je 0x100bbbf8
movzx ecx, byte [edi]
movzx eax, al
mov al, byte [eax + 0x100e4a00]
cmp al, byte [ecx + 0x100e4a00]
jne 0x100bbbf8
inc esi
inc edi
test edx, edx
jg 0x100bbbd6
dec edx
test edx, edx
js 0x100bbc14
movzx eax, byte [edi]
movzx ecx, byte [eax + 0x100e4a00]
movzx eax, byte [esi]
movzx eax, byte [eax + 0x100e4a00]
sub eax, ecx
jne 0x100bbc4c
mov al, byte [ebx + 8]
test al, al
js 0x100bbc4c
movsx eax, al
cmp byte [eax + 0x100e23a8], 0
jne 0x100bbc4c
push dword [esp + 0x34]
mov edi, dword [esp + 0x70]
lea eax, [esp + 0x5c]
push eax
lea edx, [ebx + 9]
mov ecx, edi
call fcn.100c6840
mov ebx, eax
add esp, 8
mov dword [esp + 0xc], ebx
jmp 0x100bc0d4
cmp byte [esp + 0x1f], 0x34
jne 0x100bc098
mov al, byte [ebx]
mov ecx, ebx
cmp al, 0x3d
je 0x100bbc70
nop
test al, al
je 0x100bbdad
mov al, byte [ecx + 1]
inc ecx
cmp al, 0x3d
jne 0x100bbc60
mov eax, ecx
sub eax, ebx
mov dword [esp + 0x80], eax
lea eax, [ecx + 1]
push eax
push 0x100f1c04
call fcn.10041480
mov edi, eax
add esp, 8
mov dword [esp + 0x20], edi
test edi, edi
je 0x100bbc9d
mov ecx, edi
call fcn.100bb490
mov eax, 1
test eax, eax
je 0x100bc098
mov dword [esp + 0x88], str.matchinfo
mov dword [esp + 0x8c], 9
mov dword [esp + 0x90], str.prefix
mov dword [esp + 0x94], 6
mov dword [esp + 0x98], str.compress
mov dword [esp + 0x9c], 8
mov dword [esp + 0xa0], str.uncompress
mov dword [esp + 0xa4], 0xa
mov dword [esp + 0xa8], str.order
mov dword [esp + 0xac], 5
mov dword [esp + 0xb0], str.content
mov dword [esp + 0xb4], 7
mov dword [esp + 0xb8], str.languageid
mov dword [esp + 0xbc], 0xa
mov dword [esp + 0xc0], str.notindexed
mov dword [esp + 0xc4], 0xa
test edi, edi
je 0x100bc3a4
mov ecx, dword [esp + 0x80]
xor esi, esi
nop dword [eax + eax]
mov eax, dword [esp + esi*8 + 0x8c]
cmp ecx, eax
jne 0x100bbd97
push eax
push dword [esp + esi*8 + 0x8c]
push ebx
call fcn.10042250
add esp, 0xc
test eax, eax
je 0x100bbd9d
mov ecx, dword [esp + 0x80]
inc esi
cmp esi, 8
jl 0x100bbd70
cmp esi, 7
ja case.default.0x100bbda6
jmp dword [esi*4 + 0x100bcf90]
mov edi, dword [esp + 0x20]
xor eax, eax
jmp 0x100bbca2
mov ecx, edi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100bbdc0
sub ecx, edx
cmp ecx, 4
jne 0x100bbe19
mov esi, edi
mov edx, ecx
mov edi, str.fts3
mov al, byte [esi]
dec edx
test al, al
je 0x100bbdf9
movzx ecx, byte [edi]
movzx eax, al
mov al, byte [eax + 0x100e4a00]
cmp al, byte [ecx + 0x100e4a00]
jne 0x100bbdf9
inc esi
inc edi
test edx, edx
jg 0x100bbdd7
dec edx
test edx, edx
js 0x100bbe34
movzx eax, byte [edi]
movzx ecx, byte [eax + 0x100e4a00]
movzx eax, byte [esi]
movzx eax, byte [eax + 0x100e4a00]
sub eax, ecx
je 0x100bbe34
mov edi, dword [esp + 0x20]
push edi
push str.unrecognized_matchinfo:__s
push dword [esp + 0x3c]
call fcn.100bb5a0
mov eax, 1
add esp, 0xc
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x20]
mov ebx, dword [esp + 0xc]
push eax
mov dword [esp + 0x28], 1
call fcn.1003ea80
add esp, 4
jmp 0x100bc0d0
mov esi, dword [esp + 0x50]
push esi
call fcn.1003ea80
mov ebx, dword [esp + 0x10]
add esp, 4
xor eax, eax
mov dword [esp + 0x50], edi
mov dword [esp + 0x20], eax
push eax
call fcn.1003ea80
add esp, 4
jmp 0x100bc0d0
mov edx, dword [esp + 0x3c]
push edx
call fcn.1003ea80
mov ebx, dword [esp + 0x10]
add esp, 4
xor eax, eax
mov dword [esp + 0x3c], edi
mov dword [esp + 0x20], eax
push eax
call fcn.1003ea80
add esp, 4
jmp 0x100bc0d0
push dword [esp + 0x40]
call fcn.1003ea80
mov ebx, dword [esp + 0x10]
add esp, 4
xor eax, eax
mov dword [esp + 0x40], edi
mov dword [esp + 0x20], eax
push eax
call fcn.1003ea80
add esp, 4
jmp 0x100bc0d0
mov ecx, edi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100bbed1
sub ecx, edx
cmp ecx, 3
jne 0x100bbf32
mov esi, edi
mov edx, ecx
mov edi, 0x100ef324
mov al, byte [esi]
dec edx
test al, al
je 0x100bbf0a
movzx ecx, byte [edi]
movzx eax, al
mov al, byte [eax + 0x100e4a00]
cmp al, byte [ecx + 0x100e4a00]
jne 0x100bbf0a
inc esi
inc edi
test edx, edx
jg 0x100bbee8
dec edx
test edx, edx
js 0x100bbfaf
movzx eax, byte [edi]
mov edi, dword [esp + 0x20]
movzx ecx, byte [eax + 0x100e4a00]
movzx eax, byte [esi]
movzx eax, byte [eax + 0x100e4a00]
sub eax, ecx
je 0x100bbfb3
mov ecx, edi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100bbf37
sub ecx, edx
cmp ecx, 4
jne 0x100bbf92
mov esi, edi
mov edx, ecx
mov edi, str.desc
nop
mov al, byte [esi]
dec edx
test al, al
je 0x100bbf72
movzx ecx, byte [edi]
movzx eax, al
mov al, byte [eax + 0x100e4a00]
cmp al, byte [ecx + 0x100e4a00]
jne 0x100bbf72
inc esi
inc edi
test edx, edx
jg 0x100bbf50
dec edx
test edx, edx
js 0x100bbfaf
movzx eax, byte [edi]
mov edi, dword [esp + 0x20]
movzx ecx, byte [eax + 0x100e4a00]
movzx eax, byte [esi]
movzx eax, byte [eax + 0x100e4a00]
sub eax, ecx
je 0x100bbfb3
push edi
push str.unrecognized_order:__s
push dword [esp + 0x3c]
call fcn.100bb5a0
mov eax, 1
add esp, 0xc
mov dword [esp + 0xc], eax
jmp 0x100bbfb3
mov edi, dword [esp + 0x20]
mov al, byte [edi]
cmp al, 0x64
je 0x100bbfd9
cmp al, 0x44
je 0x100bbfd9
mov ebx, dword [esp + 0xc]
xor eax, eax
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x20]
push eax
call fcn.1003ea80
add esp, 4
jmp 0x100bc0d0
mov eax, dword [esp + 0x20]
mov ebx, dword [esp + 0xc]
push eax
mov dword [esp + 0x74], 1
call fcn.1003ea80
add esp, 4
jmp 0x100bc0d0
mov eax, dword [esp + 0x54]
push eax
call fcn.1003ea80
mov ebx, dword [esp + 0x10]
add esp, 4
xor eax, eax
mov dword [esp + 0x54], edi
mov dword [esp + 0x20], eax
push eax
call fcn.1003ea80
add esp, 4
jmp 0x100bc0d0
mov eax, dword [esp + 0x44]
push eax
call fcn.1003ea80
mov ebx, dword [esp + 0x10]
add esp, 4
xor eax, eax
mov dword [esp + 0x44], edi
mov dword [esp + 0x20], eax
push eax
call fcn.1003ea80
add esp, 4
jmp 0x100bc0d0
mov ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x2c]
mov ebx, dword [esp + 0xc]
mov dword [eax + ecx*4], edi
xor eax, eax
inc ecx
mov dword [esp + 0x20], eax
push eax
mov dword [esp + 0x34], ecx
call fcn.1003ea80
add esp, 4
jmp 0x100bc0d0
push ebx
push str.unrecognized_parameter:__s
push dword [esp + 0x3c]
call fcn.100bb5a0
mov eax, dword [esp + 0x2c]
add esp, 0xc
mov ebx, 1
mov dword [esp + 0xc], ebx
push eax
call fcn.1003ea80
add esp, 4
jmp 0x100bc0d0
mov ecx, ebx
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100bc0a0
mov eax, dword [esp + 0x10]
sub ecx, edx
inc eax
add eax, ecx
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x10], eax
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x28]
mov dword [ecx + eax*4], ebx
inc eax
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x28], eax
mov dword [esp + 0x38], eax
mov edi, dword [esp + 0x6c]
mov eax, dword [esp + 0x64]
inc eax
mov dword [esp + 0x64], eax
test ebx, ebx
jne 0x100bcbcd
mov ebx, dword [ebp + 0xc]
jmp 0x100bbb91
mov ebx, dword [esp + 0x54]
test ebx, ebx
je 0x100bc1fc
mov edx, dword [esp + 0x3c]
push edx
call fcn.1003ea80
add esp, 4
push dword [esp + 0x40]
call fcn.1003ea80
add esp, 4
mov dword [esp + 0x3c], 0
cmp dword [esp + 0x28], 0
mov dword [esp + 0x40], 0
jne 0x100bc21e
push dword [esp + 0x18]
call fcn.1003ea80
mov ecx, dword [esp + 0x6c]
lea eax, [esp + 0x50]
add esp, 4
mov dword [esp + 0x18], 0
push dword [esp + 0x34]
push eax
lea eax, [esp + 0x40]
push eax
lea eax, [esp + 0x24]
push eax
mov eax, dword [esp + 0x84]
push ebx
mov edx, dword [eax + 4]
call fcn.100bb7e0
mov ebx, eax
add esp, 0x14
test ebx, ebx
jne 0x100bc1ef
mov ecx, dword [esp + 0x44]
mov ebx, dword [esp + 0x38]
mov dword [esp + 0x28], ebx
test ecx, ecx
je 0x100bc1dd
xor esi, esi
test ebx, ebx
jle 0x100bc1dd
mov eax, dword [esp + 0x18]
mov dword [esp + 0x18], eax
mov edx, dword [eax + esi*4]
test edx, edx
je 0x100bc1ab
call fcn.10042210
test eax, eax
je 0x100bc1ba
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x44]
inc esi
cmp esi, ebx
jl 0x100bc193
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x10], eax
jmp 0x100bc200
cmp esi, ebx
jge 0x100bc1ce
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx + esi*4 + 4]
mov dword [ecx + esi*4], eax
inc esi
cmp esi, ebx
jl 0x100bc1c2
mov eax, dword [esp + 0x4c]
dec ebx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x10], eax
jmp 0x100bc200
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0x18], eax
jmp 0x100bc204
mov eax, dword [esp + 0x18]
mov dword [esp + 0x18], eax
jmp 0x100bcbcd
mov ebx, dword [esp + 0x28]
mov eax, dword [esp + 0x18]
test ebx, ebx
jne 0x100bc21e
mov dword [eax], str.content
mov dword [esp + 0x10], 8
mov dword [esp + 0x28], 1
cmp dword [esp + 0x58], 0
jne 0x100bc247
push dword [esp + 0x34]
lea eax, [esp + 0x5c]
mov edx, str.simple
push eax
mov ecx, edi
call fcn.100c6840
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x100bcbcd
mov ebx, dword [esp + 0x50]
mov esi, 1
test ebx, ebx
je 0x100bc275
mov al, byte [ebx]
test al, al
je 0x100bc275
mov edx, 2
mov ecx, ebx
cmp al, 0x2c
lea esi, [edx + 1]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
cmovne esi, edx
mov edx, esi
test al, al
jne 0x100bc261
call fcn.100b6e10
test eax, eax
je 0x100bc290
mov dword [esp + 0x60], 0
mov ebx, 7
jmp 0x100bcbcd
lea edi, [esi + esi*2]
shl edi, 3
push 0
push edi
call fcn.1003e840
add esp, 8
mov dword [esp + 0x60], eax
test eax, eax
jne 0x100bc2b1
lea ebx, [eax + 7]
jmp 0x100bcbcd
push edi
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
test ebx, ebx
je 0x100bc32b
mov eax, ebx
mov ebx, 1
mov dword [esp + 0x64], eax
cmp esi, ebx
jle 0x100bc32b
mov edi, dword [esp + 0x60]
add edi, 0x18
mov edx, eax
xor ecx, ecx
mov al, byte [eax]
cmp al, 0x30
jl 0x100bc371
cmp al, 0x39
jg 0x100bc309
lea ecx, [ecx + ecx*4]
movsx eax, al
lea ecx, [ecx - 0x18]
lea ecx, [eax + ecx*2]
cmp ecx, 0x989680
jg 0x100bc307
mov al, byte [edx + 1]
inc edx
cmp al, 0x30
jge 0x100bc2e5
jmp 0x100bc309
xor ecx, ecx
cmp edx, dword [esp + 0x64]
je 0x100bc371
test ecx, ecx
jne 0x100bc31a
dec esi
dec ebx
sub edi, 0x18
jmp 0x100bc31c
mov dword [edi], ecx
inc ebx
lea eax, [edx + 1]
add edi, 0x18
mov dword [esp + 0x64], eax
cmp ebx, esi
jl 0x100bc2d7
mov ecx, dword [esp + 0x28]
lea ebx, [esi + esi*2]
mov edi, dword [esp + 0x10]
shl ebx, 3
add edi, 0x120
mov dword [esp + 0xc], 0
lea eax, [ebx + ecx*4]
add eax, ecx
add eax, dword [esp + 0x78]
add eax, dword [esp + 0x48]
add edi, eax
call fcn.100b6e10
test eax, eax
je 0x100bc391
mov dword [esp + 0x14], 0
mov ebx, 7
jmp 0x100bcbcd
mov esi, dword [esp + 0x50]
mov ebx, 1
push esi
push str.error_parsing_prefix_parameter:__s
push dword [esp + 0x3c]
call fcn.100bb5a0
add esp, 0xc
jmp 0x100bcbcd
push 0
push edi
call fcn.1003e840
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne 0x100bc3ae
mov ebx, 7
jmp 0x100bcbcd
push edi
mov edi, dword [esp + 0x18]
push 0
push edi
call sub.VCRUNTIME140.dll_memset
mov eax, dword [esp + 0x74]
lea ecx, [edi + 0x120]
mov edx, dword [esp + 0x34]
add esp, 0xc
cmp byte [esp + 0x1f], 0x34
mov dword [edi + 0xc], eax
mov dword [edi + 0x18], edx
mov dword [edi + 0x108], 0
mov dword [edi + 0x1c], ecx
mov eax, dword [esp + 0x58]
mov dword [edi + 0x24], eax
mov dword [edi + 0x104], 0x100000
jne 0x100bc403
mov eax, dword [esp + 0x24]
test eax, eax
jne 0x100bc403
mov al, 1
jmp 0x100bc405
xor al, al
cmp byte [esp + 0x1f], 0x34
mov byte [edi + 0xea], al
sete al
mov dword [edi + 0x30], 0xff
mov byte [edi + 0xe9], al
mov byte [edi + 0xe8], al
mov eax, dword [esp + 0x70]
mov byte [edi + 0xeb], al
mov eax, dword [esp + 0x54]
mov dword [edi + 0x28], eax
mov eax, dword [esp + 0x44]
push ebx
push dword [esp + 0x64]
mov dword [edi + 0x2c], eax
lea eax, [ecx + edx*4]
push eax
mov dword [esp + 0x60], 0
mov dword [esp + 0x50], 0
mov dword [edi + 0x100], eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov dword [edi + 0xfc], esi
test esi, esi
jle 0x100bc4b5
xor ecx, ecx
nop dword [eax]
nop word [eax + eax]
mov eax, dword [edi + 0x100]
lea ecx, [ecx + 0x18]
mov word [eax + ecx - 0x14], 0x101
mov dword [eax + ecx - 0xc], 0
mov dword [eax + ecx - 0x10], 0
mov dword [eax + ecx - 8], 0
mov dword [eax + ecx - 4], 0
sub esi, 1
jne 0x100bc480
mov eax, dword [edi + 0x100]
mov esi, dword [esp + 0x14]
add eax, ebx
mov ebx, dword [esp + 0x74]
push dword [esp + 0x78]
mov dword [edi + 0x20], eax
mov edi, dword [esp + 0x2c]
add edi, eax
mov dword [esi + 0x14], edi
push dword [ebx + 8]
push edi
call sub.VCRUNTIME140.dll_memcpy
add edi, dword [esp + 0x84]
add esp, 0xc
mov dword [esi + 0x10], edi
push dword [esp + 0x48]
push dword [ebx + 4]
push edi
call sub.VCRUNTIME140.dll_memcpy
add edi, dword [esp + 0x54]
add esp, 0xc
mov eax, dword [esp + 0x28]
xor ebx, ebx
test eax, eax
jle 0x100bc55e
nop dword [eax]
mov eax, dword [esp + 0x18]
lea edx, [esp + 0x24]
mov dword [esp + 0x24], 0
mov ecx, dword [eax + ebx*4]
call fcn.100c6720
mov esi, dword [esp + 0x24]
test esi, esi
jle 0x100bc53b
push esi
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov ecx, edi
mov byte [esi + edi], 0
call fcn.100bb490
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 0x1c]
mov dword [eax + ebx*4], edi
inc edi
mov eax, dword [esp + 0x28]
inc ebx
add edi, esi
cmp ebx, eax
jl 0x100bc510
mov esi, ecx
xor edx, edx
mov dword [esp + 0x48], edx
test eax, eax
jle 0x100bc68c
nop dword [eax]
mov eax, dword [esi + 0x1c]
lea ecx, [edx*4]
mov dword [esp + 0x24], ecx
mov edi, dword [eax + ecx]
lea ecx, [edi + 1]
mov al, byte [edi]
inc edi
test al, al
jne 0x100bc584
xor ebx, ebx
sub edi, ecx
cmp dword [esp + 0x30], ebx
jle 0x100bc67d
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
mov esi, dword [eax + ebx*4]
test esi, esi
je 0x100bc66c
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100bc5b1
sub ecx, edx
cmp edi, ecx
jne 0x100bc664
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x24]
push edi
push esi
mov eax, dword [eax + 0x1c]
push dword [eax + ecx]
call fcn.10042250
add esp, 0xc
test eax, eax
jne 0x100bc664
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x48]
mov eax, dword [eax + 0x20]
mov byte [ecx + eax], 1
cmp dword [0x100ff048], 0
je 0x100bc64d
mov eax, dword [0x10101960]
test eax, eax
je 0x100bc60d
push eax
call dword [0x100ff0a4]
add esp, 4
push esi
call dword [0x100ff080]
sub dword [0x10101788], eax
add esp, 4
dec dword [0x101017ac]
push esi
call dword [0x100ff078]
mov eax, dword [0x10101960]
add esp, 4
test eax, eax
je 0x100bc657
push eax
call dword [0x100ff0ac]
mov eax, dword [esp + 0x30]
add esp, 4
mov dword [eax + ebx*4], 0
jmp 0x100bc668
push esi
call dword [0x100ff078]
add esp, 4
mov eax, dword [esp + 0x2c]
mov dword [eax + ebx*4], 0
jmp 0x100bc668
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
inc ebx
cmp ebx, ecx
jl 0x100bc5a1
mov edx, dword [esp + 0x48]
mov esi, dword [esp + 0x14]
inc edx
mov dword [esp + 0x48], edx
cmp edx, dword [esp + 0x28]
jl 0x100bc570
mov ebx, dword [esp + 0x30]
xor esi, esi
test ebx, ebx
jle 0x100bc6cb
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + esi*4]
test eax, eax
je 0x100bc6be
push eax
push str.no_such_column:__s
push dword [esp + 0x3c]
call fcn.100bb5a0
mov eax, 1
add esp, 0xc
mov dword [esp + 0xc], eax
jmp 0x100bc6c2
mov eax, dword [esp + 0xc]
inc esi
cmp esi, ebx
jl 0x100bc696
test eax, eax
jne 0x100bc710
mov esi, dword [esp + 0x40]
xor ecx, ecx
mov edx, dword [esp + 0x3c]
test esi, esi
sete cl
xor eax, eax
test edx, edx
sete al
cmp eax, ecx
je 0x100bc714
test edx, edx
mov dword [esp + 0xc], 1
mov ecx, str.uncompress
mov eax, str.compress
cmovne eax, ecx
push eax
push str.missing__s_parameter_in_fts4_constructor
push dword [esp + 0x3c]
call fcn.100bb5a0
add esp, 0xc
jmp 0x100bc714
mov esi, dword [esp + 0x40]
mov edi, dword [esp + 0x14]
xor ebx, ebx
mov dword [esp + 0x10], 0
mov dword [esp + 0x24], ebx
cmp dword [edi + 0x28], ebx
jne 0x100bc7cd
test esi, esi
jne 0x100bc73a
mov edi, 0x100eac98
jmp 0x100bc749
mov ecx, esi
call fcn.100bb760
mov edi, eax
mov ebx, edi
mov dword [esp + 0x24], edi
push str.docid
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x14]
push eax
call fcn.100bb6e0
mov eax, dword [esp + 0x20]
xor esi, esi
add esp, 0xc
cmp dword [eax + 0x18], esi
jle 0x100bc799
mov ebx, eax
nop dword [eax]
mov eax, dword [ebx + 0x1c]
push dword [eax + esi*4]
lea eax, [esp + 0x14]
push esi
push edi
push str.__s_x.c_d_q_
push eax
lea eax, [esp + 0x20]
push eax
call fcn.100bb6e0
inc esi
add esp, 0x18
cmp esi, dword [ebx + 0x18]
jl 0x100bc770
mov ebx, dword [esp + 0x24]
mov edi, dword [esp + 0x14]
cmp dword [edi + 0x2c], 0
je 0x100bc7bf
push str.langid
push str.__x._Q
lea eax, [esp + 0x18]
push eax
lea eax, [esp + 0x18]
push eax
call fcn.100bb6e0
add esp, 0x10
push ebx
call fcn.1003ea80
add esp, 4
jmp 0x100bc832
push str.rowid
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x14]
push eax
call fcn.100bb6e0
add esp, 0xc
xor esi, esi
cmp dword [edi + 0x18], ebx
jle 0x100bc813
nop dword [eax + eax]
mov eax, dword [edi + 0x1c]
push dword [eax + esi*4]
lea eax, [esp + 0x14]
push str.__x._q
push eax
lea eax, [esp + 0x18]
push eax
call fcn.100bb6e0
inc esi
add esp, 0x10
cmp esi, dword [edi + 0x18]
jl 0x100bc7f0
mov eax, dword [edi + 0x2c]
test eax, eax
je 0x100bc832
push eax
push str.__x._Q
lea eax, [esp + 0x18]
push eax
lea eax, [esp + 0x18]
push eax
call fcn.100bb6e0
add esp, 0x10
mov ecx, dword [edi + 0x28]
mov edx, ecx
test ecx, ecx
jne 0x100bc83e
mov edx, dword [edi + 0x14]
test ecx, ecx
mov eax, 0x100eac98
mov esi, str._content
cmove eax, esi
push eax
push edx
push dword [edi + 0x10]
lea eax, [esp + 0x1c]
push str._FROM__q._q_s_AS_x
push eax
lea eax, [esp + 0x20]
push eax
call fcn.100bb6e0
mov eax, dword [esp + 0x28]
xor ebx, ebx
mov dword [edi + 0xdc], eax
add esp, 0x18
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x38], 0
mov dword [esp + 0x24], ebx
test eax, eax
jne 0x100bc890
mov edi, 0x100eac98
jmp 0x100bc89f
mov ecx, eax
call fcn.100bb760
mov edi, eax
mov ebx, edi
mov dword [esp + 0x24], edi
push 0x100ed6dc
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0x14]
push eax
call fcn.100bb6e0
mov eax, dword [esp + 0x20]
xor esi, esi
add esp, 0xc
cmp dword [eax + 0x18], esi
jle 0x100bc8e5
mov ebx, eax
push edi
push str.__s___
lea eax, [esp + 0x40]
push eax
lea eax, [esp + 0x18]
push eax
call fcn.100bb6e0
inc esi
add esp, 0x10
cmp esi, dword [ebx + 0x18]
jl 0x100bc8c3
mov ebx, dword [esp + 0x24]
mov esi, dword [esp + 0x14]
cmp dword [esi + 0x2c], 0
je 0x100bc906
push 0x100ef26c
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0x14]
push eax
call fcn.100bb6e0
add esp, 0xc
push ebx
call fcn.1003ea80
mov ebx, dword [esp + 0x10]
add esp, 4
mov eax, dword [esp + 0x38]
mov dword [esi + 0xe0], eax
test ebx, ebx
jne 0x100bcbcd
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x100bca69
cmp dword [esi + 0x28], 0
mov dword [esp + 0x10], ebx
mov ebx, dword [esi + 0xc]
mov dword [esp + 0x24], ebx
jne 0x100bc9d8
mov eax, dword [esi + 0x2c]
push str.docid_INTEGER_PRIMARY_KEY
mov dword [esp + 0x6c], eax
call fcn.10041480
mov edi, eax
add esp, 4
xor esi, esi
test edi, edi
je 0x100bc98b
mov ebx, dword [esp + 0x14]
cmp esi, dword [ebx + 0x18]
jge 0x100bc987
mov eax, dword [ebx + 0x1c]
push dword [eax + esi*4]
push esi
push edi
push str._z__c_d_q
call fcn.10041480
mov edi, eax
add esp, 0x10
inc esi
test edi, edi
jne 0x100bc966
mov ebx, dword [esp + 0x24]
mov eax, dword [esp + 0x68]
test eax, eax
je 0x100bc9a8
test edi, edi
je 0x100bc9ac
push eax
push edi
push str._z__langid
call fcn.10041480
add esp, 0xc
mov edi, eax
test edi, edi
jne 0x100bc9b4
mov dword [esp + 0x10], 7
mov esi, dword [esp + 0x14]
lea eax, [esp + 0x10]
push edi
push dword [esi + 0x14]
push dword [esi + 0x10]
push str.CREATE_TABLE__Q._q_content__s_
push ebx
push eax
call fcn.100bb5d0
push edi
call fcn.1003ea80
add esp, 0x1c
push dword [esi + 0x14]
lea eax, [esp + 0x14]
push dword [esi + 0x10]
push str.CREATE_TABLE__Q._q_segments_blockid_INTEGER_PRIMARY_KEY__block_BLOB__
push ebx
push eax
call fcn.100bb5d0
add esp, 0x14
lea eax, [esp + 0x10]
push dword [esi + 0x14]
push dword [esi + 0x10]
push str.CREATE_TABLE__Q._q_segdir_level_INTEGER_idx_INTEGER_start_block_INTEGER_leaves_end_block_INTEGER_end_block_INTEGER_root_BLOB_PRIMARY_KEY_level__idx___
push ebx
push eax
call fcn.100bb5d0
add esp, 0x14
cmp byte [esi + 0xea], 0
je 0x100bca2c
push dword [esi + 0x14]
lea eax, [esp + 0x14]
push dword [esi + 0x10]
push str.CREATE_TABLE__Q._q_docsize_docid_INTEGER_PRIMARY_KEY__size_BLOB__
push ebx
push eax
call fcn.100bb5d0
add esp, 0x14
cmp byte [esi + 0xe9], 0
je 0x100bca61
push dword [esi + 0x14]
lea eax, [esp + 0x14]
push dword [esi + 0x10]
push str.CREATE_TABLE_IF_NOT_EXISTS__Q._q_stat_id_INTEGER_PRIMARY_KEY__value_BLOB__
push dword [esi + 0xc]
push eax
call fcn.100bb5d0
mov ebx, dword [esp + 0x24]
add esp, 0x14
test ebx, ebx
jne 0x100bca65
mov byte [esi + 0xe9], 1
jmp 0x100bca65
mov ebx, dword [esp + 0x10]
mov eax, dword [esp + 0x5c]
cmp byte [esp + 0x1f], 0x34
je 0x100bca7b
test eax, eax
jne 0x100bca7b
mov byte [esi + 0xe9], 2
test ebx, ebx
jne 0x100bcb0a
push dword [esi + 0x10]
push str.PRAGMA__Q.page_size
call fcn.10041480
mov edi, eax
add esp, 8
test edi, edi
jne 0x100bcaa1
lea ebx, [eax + 7]
jmp 0x100bcb01
mov ecx, dword [esi + 0xc]
lea eax, [esp + 0x5c]
push 0
push eax
push 0
push 0
push 0xffffffffffffffff
mov edx, edi
call fcn.100942b0
mov ebx, eax
add esp, 0x14
test ebx, ebx
jne 0x100bcaf0
mov esi, dword [esp + 0x5c]
push esi
call fcn.10064030
add esp, 4
push ebx
push esi
call fcn.10064880
mov ecx, dword [esp + 0x1c]
push esi
mov dword [ecx + 0xf0], eax
call fcn.10063130
mov esi, dword [esp + 0x20]
add esp, 0xc
mov ebx, eax
jmp 0x100bcb01
cmp ebx, 0x17
jne 0x100bcb01
mov dword [esi + 0xf0], 0x400
xor ebx, ebx
push edi
call fcn.1003ea80
add esp, 4
mov eax, dword [esi + 0xf0]
sub eax, 0x23
mov dword [esi + 0xe4], eax
test ebx, ebx
jne 0x100bcbcd
mov eax, dword [esi + 0x2c]
mov ebx, str.__langid
push 1
test eax, eax
push 1
push dword [esi + 0xc]
cmovne ebx, eax
mov dword [esp + 0x68], ebx
call fcn.100a3220
mov eax, dword [esi + 0x1c]
add esp, 0xc
push dword [eax]
push str._Q_
call fcn.10041480
mov edi, eax
add esp, 8
mov esi, 1
test edi, edi
je 0x100bcb86
mov ebx, dword [esp + 0x14]
cmp esi, dword [ebx + 0x18]
jge 0x100bcb82
mov eax, dword [ebx + 0x1c]
push dword [eax + esi*4]
push edi
push str._z_Q_
call fcn.10041480
mov edi, eax
add esp, 0xc
inc esi
test edi, edi
jne 0x100bcb62
mov ebx, dword [esp + 0x5c]
push ebx
mov ebx, dword [esp + 0x18]
push dword [ebx + 0x14]
push edi
push str.CREATE_TABLE_x__s__Q_HIDDEN__docid_HIDDEN___Q_HIDDEN_
call fcn.10041480
add esp, 0x10
mov esi, eax
test edi, edi
je 0x100bcbb6
test esi, esi
je 0x100bcbb6
push esi
push dword [ebx + 0xc]
call fcn.100a2a70
add esp, 8
mov ebx, eax
jmp 0x100bcbbb
mov ebx, 7
push esi
call fcn.1003ea80
add esp, 4
push edi
call fcn.1003ea80
add esp, 4
mov eax, dword [esp + 0x50]
test eax, eax
je 0x100bcc35
cmp dword [0x100ff048], 0
je 0x100bcc2b
mov eax, dword [0x10101960]
test eax, eax
je 0x100bcbf5
push eax
call dword [0x100ff0a4]
add esp, 4
mov esi, dword [esp + 0x50]
push esi
call dword [0x100ff080]
sub dword [0x10101788], eax
add esp, 4
dec dword [0x101017ac]
push esi
call dword [0x100ff078]
mov eax, dword [0x10101960]
add esp, 4
test eax, eax
je 0x100bcc3a
push eax
call dword [0x100ff0ac]
jmp 0x100bcc32
push eax
call dword [0x100ff078]
add esp, 4
mov eax, dword [0x10101960]
mov esi, dword [esp + 0x60]
test esi, esi
je 0x100bcc9e
cmp dword [0x100ff048], 0
je 0x100bcc8f
test eax, eax
je 0x100bcc5d
push eax
call dword [0x100ff0a4]
add esp, 4
push esi
call dword [0x100ff080]
sub dword [0x10101788], eax
add esp, 4
dec dword [0x101017ac]
push esi
call dword [0x100ff078]
mov eax, dword [0x10101960]
add esp, 4
test eax, eax
je 0x100bcc9e
push eax
call dword [0x100ff0ac]
jmp 0x100bcc96
push esi
call dword [0x100ff078]
mov eax, dword [0x10101960]
add esp, 4
mov esi, dword [esp + 0x3c]
test esi, esi
je 0x100bcd02
cmp dword [0x100ff048], 0
je 0x100bccf3
test eax, eax
je 0x100bccc1
push eax
call dword [0x100ff0a4]
add esp, 4
push esi
call dword [0x100ff080]
sub dword [0x10101788], eax
add esp, 4
dec dword [0x101017ac]
push esi
call dword [0x100ff078]
mov eax, dword [0x10101960]
add esp, 4
test eax, eax
je 0x100bcd02
push eax
call dword [0x100ff0ac]
jmp 0x100bccfa
push esi
call dword [0x100ff078]
mov eax, dword [0x10101960]
add esp, 4
mov esi, dword [esp + 0x40]
test esi, esi
je 0x100bcd66
cmp dword [0x100ff048], 0
je 0x100bcd57
test eax, eax
je 0x100bcd25
push eax
call dword [0x100ff0a4]
add esp, 4
push esi
call dword [0x100ff080]
sub dword [0x10101788], eax
add esp, 4
dec dword [0x101017ac]
push esi
call dword [0x100ff078]
mov eax, dword [0x10101960]
add esp, 4
test eax, eax
je 0x100bcd66
push eax
call dword [0x100ff0ac]
jmp 0x100bcd5e
push esi
call dword [0x100ff078]
mov eax, dword [0x10101960]
add esp, 4
mov esi, dword [esp + 0x54]
test esi, esi
je 0x100bcdca
cmp dword [0x100ff048], 0
je 0x100bcdbb
test eax, eax
je 0x100bcd89
push eax
call dword [0x100ff0a4]
add esp, 4
push esi
call dword [0x100ff080]
sub dword [0x10101788], eax
add esp, 4
dec dword [0x101017ac]
push esi
call dword [0x100ff078]
mov eax, dword [0x10101960]
add esp, 4
test eax, eax
je 0x100bcdca
push eax
call dword [0x100ff0ac]
jmp 0x100bcdc2
push esi
call dword [0x100ff078]
mov eax, dword [0x10101960]
add esp, 4
mov esi, dword [esp + 0x44]
test esi, esi
je 0x100bbab0
cmp dword [0x100ff048], 0
je 0x100bce29
test eax, eax
je 0x100bcded
push eax
call dword [0x100ff0a4]
add esp, 4
push esi
call dword [0x100ff080]
sub dword [0x10101788], eax
add esp, 4
dec dword [0x101017ac]
push esi
call dword [0x100ff078]
mov eax, dword [0x10101960]
add esp, 4
test eax, eax
je 0x100bbab0
push eax
call dword [0x100ff0ac]
add esp, 4
jmp 0x100bbaab
push esi
call dword [0x100ff078]
add esp, 4
jmp 0x100bbaab
push esi
call dword [0x100ff078]
mov eax, dword [0x10101960]
add esp, 4
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x30]
inc edi
cmp edi, edx
jl 0x100bbac4
mov esi, dword [esp + 0x18]
test esi, esi
je 0x100bcebc
cmp dword [0x100ff048], 0
je 0x100bcead
test eax, eax
je 0x100bce7b
push eax
call dword [0x100ff0a4]
add esp, 4
push esi
call dword [0x100ff080]
sub dword [0x10101788], eax
add esp, 4
dec dword [0x101017ac]
push esi
call dword [0x100ff078]
mov eax, dword [0x10101960]
add esp, 4
test eax, eax
je 0x100bcebc
push eax
call dword [0x100ff0ac]
jmp 0x100bceb4
push esi
call dword [0x100ff078]
mov eax, dword [0x10101960]
add esp, 4
mov esi, dword [esp + 0x2c]
test esi, esi
je 0x100bcf17
cmp dword [0x100ff048], 0
je 0x100bcf0d
test eax, eax
je 0x100bcedb
push eax
call dword [0x100ff0a4]
add esp, 4
push esi
call dword [0x100ff080]
sub dword [0x10101788], eax
add esp, 4
dec dword [0x101017ac]
push esi
call dword [0x100ff078]
mov eax, dword [0x10101960]
add esp, 4
test eax, eax
je 0x100bcf17
push eax
call dword [0x100ff0ac]
jmp 0x100bcf14
push esi
call dword [0x100ff078]
add esp, 4
mov eax, dword [esp + 0x14]
test ebx, ebx
je 0x100bcf6d
test eax, eax
je 0x100bcf43
push eax
call fcn.100bb500
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xc0]
xor ecx, esp
call fcn.100d8362
mov esp, ebp
pop ebp
ret
mov ecx, dword [esp + 0x58]
test ecx, ecx
je 0x100bcf76
mov eax, dword [ecx]
push ecx
mov eax, dword [eax + 8]
call eax
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xc0]
xor ecx, esp
call fcn.100d8362
mov esp, ebp
pop ebp
ret
mov ecx, dword [esp + 0x84]
mov dword [ecx], eax
mov ecx, dword [esp + 0xcc]
mov eax, ebx
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.100d8362
mov esp, ebp
pop ebp
ret