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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x64
mov eax, dword [0x1060f098]
xor eax, esp
mov dword [esp + 0x60], eax
mov eax, ecx
mov dword [esp + 0x28], 0
mov ecx, dword [ebp + 0xc]
mov dword [esp + 0x24], ecx
mov ecx, dword [ebp + 0x10]
mov dword [esp + 4], ecx
mov ecx, dword [ebp + 0x14]
push ebx
mov dword [esp + 0x44], ecx
xor ebx, ebx
mov ecx, dword [ebp + 0x1c]
push esi
mov esi, dword [ebp + 8]
mov dword [esp + 0x34], ecx
mov ecx, dword [eax]
push edi
mov edi, edx
mov dword [esp + 0x1c], eax
xor edx, edx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x2c], edx
cmp byte [ecx + 0x49], dl
jne 0x10084580
cmp dword [eax + 0x24], edx
jg 0x10084580
cmp byte [eax + 0x190], dl
je 0x10083a7c
cmp byte [ebp + 0x28], 2
jne 0x10084580
cmp byte [ecx + 0x9d], dl
jne 0x10083aa9
lea edx, [eax + 4]
call fcn.10095f60
test eax, eax
je 0x10083aa5
mov ecx, dword [esp + 0x1c]
inc dword [ecx + 0x24]
mov dword [ecx + 0xc], eax
mov esi, dword [esp + 0xc]
xor ebx, ebx
jmp 0x10083d19
mov ecx, dword [esp + 0xc]
cmp dword [esp + 0x30], ebx
je 0x10083c01
lea eax, [esp + 0x34]
mov edx, edi
mov edi, dword [esp + 0x1c]
mov ecx, edi
push eax
push esi
call fcn.10080aa0
mov edx, eax
add esp, 8
mov dword [esp + 0x20], edx
test edx, edx
js 0x10083a9a
mov eax, dword [esp + 0xc]
cmp byte [eax + 0x9d], bl
jne 0x10083b10
mov edx, dword [esp + 0x30]
mov ecx, edi
call fcn.10086a30
mov edx, dword [esp + 0x20]
cmp dword [esi + 4], ebx
jne 0x10083b10
test eax, eax
je 0x10083b10
mov ecx, dword [esp + 0xc]
mov eax, dword [eax + 0x48]
mov ecx, dword [ecx + 0x10]
cmp eax, dword [ecx + 0x1c]
mov eax, 1
cmove edx, eax
mov dword [esp + 0x20], edx
mov ecx, dword [esp + 0x34]
push ecx
push str.index
push edx
mov edx, edi
lea ecx, [esp + 0x60]
call fcn.1007f160
mov esi, dword [esp + 0x3c]
add esp, 0xc
mov edx, esi
call fcn.1007f1a0
lea eax, [esi + 8]
xor edx, edx
push eax
mov ecx, edi
call fcn.10080100
mov esi, eax
add esp, 4
mov dword [esp + 0x14], esi
test esi, esi
je 0x10083a9a
cmp dword [esp + 0x20], 1
mov ecx, dword [esp + 0xc]
jne 0x10083b83
mov eax, dword [ecx + 0x10]
mov eax, dword [eax + 0x1c]
cmp eax, dword [esi + 0x48]
je 0x10083b83
push dword [esi]
push str.cannot_create_a_TEMP_index_on_non_TEMP_table___s_
push edi
call fcn.10044360
mov esi, dword [esp + 0x18]
add esp, 0xc
xor ebx, ebx
jmp 0x10083d19
test byte [esi + 0x24], 0x20
je 0x10083b98
mov ecx, esi
call fcn.10080b60
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x20]
mov esi, dword [esi]
mov edx, eax
mov eax, dword [ecx + 0x10]
shl edx, 4
push 7
add eax, edx
mov dword [esp + 0x54], edx
push str.sqlite_
push esi
mov dword [esp + 0x34], eax
call fcn.10044560
add esp, 0xc
test eax, eax
jne 0x10083c28
mov eax, dword [esp + 0xc]
cmp byte [eax + 0x9d], bl
jne 0x10083c28
push 9
lea eax, [esi + 7]
push str.altertab_
push eax
call fcn.10044560
add esp, 0xc
test eax, eax
je 0x10083c28
push esi
push str.table__s_may_not_be_indexed
push edi
call fcn.10044360
mov esi, dword [esp + 0x18]
add esp, 0xc
xor ebx, ebx
jmp 0x10083d19
mov edi, dword [esp + 0x1c]
mov esi, dword [edi + 0x1b0]
mov dword [esp + 0x14], esi
test esi, esi
je 0x10083a9a
mov edx, dword [esi + 0x48]
call fcn.10096180
mov dword [esp + 0x20], eax
jmp 0x10083b9c
mov eax, dword [esp + 0x14]
cmp dword [eax + 0xc], ebx
je 0x10083c4a
push str.views_may_not_be_indexed
push edi
call fcn.10044360
mov esi, dword [esp + 0x14]
add esp, 8
xor ebx, ebx
jmp 0x10083d19
cmp dword [eax + 0x38], ebx
je 0x10083c68
push str.virtual_tables_may_not_be_indexed
push edi
call fcn.10044360
mov esi, dword [esp + 0x14]
add esp, 8
xor ebx, ebx
jmp 0x10083d19
mov ecx, dword [esp + 0x34]
test ecx, ecx
je 0x10083d76
mov esi, dword [esp + 0xc]
mov edx, ecx
mov ecx, esi
call fcn.100808a0
mov dword [esp + 0x18], eax
test eax, eax
je 0x10084589
mov edx, eax
mov ecx, edi
call fcn.10080b10
test eax, eax
jne 0x10083d15
cmp byte [esi + 0x9d], bl
jne 0x10083cca
mov edx, dword [esp + 0x18]
mov ecx, esi
push eax
call fcn.1007fe70
add esp, 4
test eax, eax
je 0x10083cca
mov ebx, dword [esp + 0x18]
push ebx
push str.there_is_already_a_table_named__s
push edi
call fcn.10044360
add esp, 0xc
jmp 0x10083d19
mov esi, dword [esp + 0x28]
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0xc]
push dword [esi]
call fcn.10080160
add esp, 4
test eax, eax
je 0x10083db9
cmp dword [ebp + 0x24], ebx
jne 0x10083d06
mov ebx, dword [esp + 0x18]
push ebx
push str.index__s_already_exists
push edi
call fcn.10044360
mov esi, dword [esp + 0x18]
add esp, 0xc
jmp 0x10083d19
mov edx, dword [esp + 0x20]
mov ecx, edi
call fcn.10085480
mov esi, dword [esp + 0xc]
mov ebx, dword [esp + 0x18]
mov edi, dword [esp + 0x10]
mov eax, dword [esp + 0x38]
test eax, eax
je 0x10083d2e
mov edx, eax
mov ecx, esi
call fcn.100755f0
test edi, edi
je 0x10083d3b
mov edx, edi
mov ecx, esi
call fcn.10076590
mov edx, dword [esp + 0x30]
mov ecx, esi
call fcn.10084d80
test ebx, ebx
je 0x100845cf
cmp dword [esi + 0x1d8], 0
je 0x10084596
mov edx, ebx
mov ecx, esi
call fcn.10041070
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x60]
xor ecx, esp
call fcn.100d22d5
mov esp, ebp
pop ebp
ret
mov eax, dword [eax + 8]
mov ecx, 1
test eax, eax
je 0x10083d8a
mov eax, dword [eax + 0x14]
inc ecx
test eax, eax
jne 0x10083d82
push ecx
push esi
mov esi, dword [esp + 0x14]
push str.sqlite_autoindex__s__d
push esi
call fcn.10043410
add esp, 0x10
mov dword [esp + 0x18], eax
test eax, eax
je 0x10083d15
mov esi, dword [esp + 0x28]
cmp byte [edi + 0x190], bl
je 0x10083db9
inc byte [eax + 7]
mov esi, dword [esi]
mov ecx, str.sqlite_temp_master
cmp dword [esp + 0x20], 1
mov eax, str.sqlite_master
push esi
cmove eax, ecx
mov edx, 0x12
push 0
push eax
mov ecx, edi
call fcn.1007f7a0
add esp, 0xc
test eax, eax
jne 0x10083d11
push esi
mov esi, dword [esp + 0x18]
xor edx, edx
cmp dword [esp + 0x24], 1
mov ecx, edi
sete dl
push dword [esi]
push dword [esp + 0x20]
lea edx, [edx*2 + 1]
call fcn.1007f7a0
add esp, 0xc
test eax, eax
jne 0x10083d11
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x10083e7b
movsx ecx, word [esi + 0x2a]
mov eax, dword [esi + 4]
add ecx, ecx
or byte [eax + ecx*8 - 1], 8
mov edx, dword [eax + ecx*8 - 0x10]
lea ecx, [esp + 0x3c]
call fcn.100444b0
mov esi, dword [esp + 0xc]
mov eax, ecx
push 0
push eax
mov edx, 0x3b
mov ecx, esi
call fcn.10074f20
push eax
xor edx, edx
mov ecx, edi
call fcn.10076290
mov edi, eax
add esp, 0xc
mov dword [esp + 0x10], edi
test edi, edi
je 0x1008458d
mov edx, dword [ebp + 0x20]
test edx, edx
js 0x10083e90
mov ecx, dword [edi]
lea ecx, [ecx + ecx*2]
mov byte [edi + ecx*8 - 8], dl
jmp 0x10083e90
push str.index
mov edx, eax
mov ecx, edi
call fcn.10076560
mov edi, dword [esp + 0x14]
add esp, 4
mov edi, dword [edi]
test edi, edi
jle 0x10083eba
mov esi, dword [esp + 0x10]
add esi, 4
nop dword [eax]
mov ecx, dword [esi]
cmp byte [ecx], 0x5e
jne 0x10083eb2
mov ecx, dword [ecx + 8]
call fcn.10044190
inc ebx
add ebx, eax
add esi, 0x18
sub edi, 1
jne 0x10083ea0
mov ecx, dword [esp + 0x18]
call fcn.10044190
mov esi, eax
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x10083ed3
movzx ecx, word [eax + 0x32]
jmp 0x10083ed8
mov ecx, 1
mov edi, dword [esp + 0xc]
lea eax, [esp + 0x24]
push eax
lea eax, [ebx + 1]
add eax, esi
push eax
mov eax, dword [esp + 0x18]
movzx edx, word [eax]
add dx, cx
mov ecx, edi
call fcn.10083960
add esp, 8
mov ebx, eax
cmp byte [edi + 0x49], 0
jne 0x10084568
mov ecx, dword [esp + 0x24]
mov dword [ebx], ecx
lea eax, [ecx + 1]
lea ecx, [esi + 1]
add eax, esi
push ecx
push dword [esp + 0x1c]
mov dword [esp + 0x4c], eax
push dword [ebx]
call fcn.100eae80
mov eax, dword [esp + 0x58]
xor ecx, ecx
mov edx, dword [esp + 0x20]
add esp, 0xc
test eax, eax
mov byte [ebx + 0x36], al
mov eax, dword [ebx + 0x38]
setne cl
mov dword [ebx + 0xc], edx
and eax, 0xfffffff7
shl ecx, 3
or ecx, eax
movzx eax, byte [ebp + 0x28]
and eax, 3
and ecx, 0xfffffffc
or ecx, eax
mov dword [ebx + 0x38], ecx
mov eax, dword [edi + 0x10]
mov ecx, dword [esp + 0x50]
mov edi, dword [esp + 0x1c]
mov eax, dword [ecx + eax + 0xc]
mov ecx, dword [esp + 0x38]
mov dword [ebx + 0x18], eax
mov eax, dword [esp + 0x10]
mov ax, word [eax]
mov word [ebx + 0x32], ax
test ecx, ecx
je 0x10083f98
push 0
push ecx
push 2
mov ecx, edi
call fcn.10074310
mov ecx, dword [esp + 0x44]
add esp, 0xc
mov dword [ebx + 0x24], ecx
xor ecx, ecx
mov dword [esp + 0x38], ecx
mov eax, dword [esp + 0x28]
mov eax, dword [eax + 0xc]
cmp byte [eax + 0x4c], 4
sbb eax, eax
xor edx, edx
neg eax
mov dword [esp + 0x28], edx
dec eax
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x10]
lea esi, [eax + 4]
mov dword [esp + 0x24], esi
cmp dword [eax], edx
jle 0x10084144
mov dword [esp + 0x48], edx
nop dword [eax]
mov eax, dword [esi]
mov cl, byte [eax]
cmp cl, 0x61
je 0x10083fe6
cmp cl, 0x5e
jne 0x10083fe9
mov eax, dword [eax + 0xc]
cmp byte [eax], 0x61
jne 0x10083fe9
mov byte [eax], 0x3b
mov edx, dword [esp + 0x14]
mov ecx, edi
push 0
push dword [esi]
push 0x20
call fcn.10074310
add esp, 0xc
cmp dword [edi + 0x24], 0
jne 0x100841c8
mov ecx, dword [esi]
call fcn.10074520
cmp byte [eax], 0x92
je 0x10084071
mov eax, dword [esp + 0x14]
cmp eax, dword [edi + 0x1b0]
je 0x100841ba
cmp dword [ebx + 0x28], 0
jne 0x10084055
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
push 0
call fcn.10075bc0
mov ecx, dword [esp + 0x10]
add esp, 4
mov dword [ebx + 0x28], eax
cmp byte [ecx + 0x49], 0
jne 0x10084055
mov esi, dword [esp + 0x48]
add esi, 4
add esi, eax
mov dword [esp + 0x24], esi
mov eax, dword [ebx + 4]
mov edx, 0xfffffffe
mov ecx, dword [esp + 0x28]
mov edi, edx
mov word [eax + ecx*2], di
and dword [ebx + 0x38], 0xfffffff7
mov edi, dword [esp + 0x1c]
jmp 0x100840a0
movsx edx, word [eax + 0x20]
mov eax, dword [esp + 0x14]
test edx, edx
jns 0x10084083
movsx edx, word [eax + 0x28]
jmp 0x10084095
mov eax, dword [eax + 4]
mov ecx, edx
add ecx, ecx
cmp byte [eax + ecx*8 + 0xc], 0
jne 0x10084095
and dword [ebx + 0x38], 0xfffffff7
mov eax, dword [ebx + 4]
mov ecx, dword [esp + 0x28]
mov word [eax + ecx*2], dx
mov esi, dword [esi]
cmp byte [esi], 0x5e
jne 0x100840d4
mov esi, dword [esi + 8]
mov ecx, esi
call fcn.10044190
lea edi, [eax + 1]
push edi
push esi
push dword [esp + 0x4c]
call fcn.100eae80
mov eax, dword [esp + 0x50]
add esp, 0xc
mov esi, eax
add eax, edi
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x44], eax
jmp 0x100840e5
test edx, edx
js 0x100840e9
mov eax, dword [esp + 0x14]
add edx, edx
mov eax, dword [eax + 4]
mov esi, dword [eax + edx*8 + 8]
test esi, esi
jne 0x100840ee
mov esi, 0x105f7218
mov eax, dword [esp + 0xc]
cmp byte [eax + 0x9d], 0
jne 0x1008410c
mov edx, esi
mov ecx, edi
call fcn.10081880
test eax, eax
je 0x100841c8
mov edx, dword [esp + 0x28]
mov eax, dword [ebx + 0x20]
add dword [esp + 0x48], 0x18
mov dword [eax + edx*4], esi
mov esi, dword [esp + 0x24]
mov eax, dword [ebx + 0x1c]
mov cl, byte [esi + 0xc]
add esi, 0x18
and cl, byte [esp + 0x3c]
mov byte [edx + eax], cl
inc edx
mov eax, dword [esp + 0x10]
mov dword [esp + 0x28], edx
mov dword [esp + 0x24], esi
cmp edx, dword [eax]
jl 0x10083fd0
mov esi, dword [esp + 0x2c]
test esi, esi
je 0x100841e0
xor eax, eax
xor edi, edi
cmp ax, word [esi + 0x32]
jae 0x100841f4
nop
mov eax, dword [esi + 4]
movzx ecx, word [ebx + 0x32]
movsx esi, word [eax + edi*2]
mov eax, dword [ebx + 4]
mov edx, eax
test ecx, ecx
je 0x10084186
movsx eax, word [edx]
lea edx, [edx + 2]
dec ecx
cmp esi, eax
je 0x100841d1
test ecx, ecx
jg 0x10084174
mov eax, dword [ebx + 4]
mov edx, dword [esp + 0x28]
mov word [eax + edx*2], si
mov esi, dword [esp + 0x2c]
mov ecx, dword [ebx + 0x20]
mov eax, dword [esi + 0x20]
mov eax, dword [eax + edi*4]
mov dword [ecx + edx*4], eax
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebx + 0x1c]
mov al, byte [edi + eax]
mov byte [edx + ecx], al
inc edx
mov dword [esp + 0x28], edx
movzx eax, word [esi + 0x32]
inc edi
cmp edi, eax
jl 0x10084160
jmp 0x100841f4
push str.expressions_prohibited_in_PRIMARY_KEY_and_UNIQUE_constraints
push edi
call fcn.10044360
add esp, 8
mov esi, dword [esp + 0xc]
jmp 0x1008456a
mov esi, dword [esp + 0x2c]
mov eax, 0xffff
add word [ebx + 0x34], ax
jmp 0x100841af
mov eax, dword [ebx + 4]
or ecx, 0xffffffff
mov word [eax + edx*2], cx
mov eax, dword [ebx + 0x20]
mov dword [eax + edx*4], 0x105f7218
mov ecx, ebx
call fcn.100845f0
mov eax, dword [esp + 0x1c]
cmp dword [eax + 0x1b0], 0
jne 0x1008420f
mov ecx, ebx
call fcn.10081da0
cmp dword [esp + 0x30], 0
mov eax, dword [esp + 0x14]
je 0x1008425f
movsx eax, word [eax + 0x2a]
movzx ecx, word [ebx + 0x34]
cmp ecx, eax
mov eax, dword [esp + 0x14]
jl 0x1008425f
or dword [ebx + 0x38], 0x20
xor edx, edx
movsx esi, word [eax + 0x2a]
test esi, esi
jle 0x1008425f
movsx edi, word [eax + 0x28]
nop dword [eax]
cmp edx, edi
je 0x10084250
mov ecx, ebx
call fcn.10080b80
test ax, ax
js 0x10084257
inc edx
cmp edx, esi
jl 0x10084240
jmp 0x1008425b
and dword [ebx + 0x38], 0xffffffdf
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
cmp eax, dword [ecx + 0x1b0]
jne 0x100842f2
mov ecx, dword [eax + 8]
mov dword [esp + 0x2c], ecx
test ecx, ecx
je 0x100842ee
movzx edx, word [ebx + 0x32]
nop
movzx eax, word [ecx + 0x32]
cmp ax, dx
jne 0x100842df
mov edx, eax
xor edi, edi
mov dword [esp + 0x24], edx
test edx, edx
je 0x100842d7
mov eax, dword [ebx + 4]
mov esi, dword [ecx + 4]
sub eax, esi
mov dword [esp + 0x3c], eax
mov ecx, dword [esp + 0x3c]
mov ax, word [esi]
cmp ax, word [ecx + esi]
mov ecx, dword [esp + 0x2c]
jne 0x100842d7
mov ecx, dword [ecx + 0x20]
mov edx, dword [ebx + 0x20]
mov ecx, dword [ecx + edi*4]
mov edx, dword [edx + edi*4]
call fcn.10044510
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x2c]
test eax, eax
jne 0x100842d7
inc edi
add esi, 2
cmp edi, edx
jl 0x100842a1
cmp edi, edx
je 0x10084324
movzx edx, word [ebx + 0x32]
mov ecx, dword [ecx + 0x14]
mov dword [esp + 0x2c], ecx
test ecx, ecx
jne 0x10084280
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov esi, dword [esp + 0xc]
cmp byte [esi + 0x9d], 0
je 0x10084398
mov ecx, dword [ebx + 0x18]
mov edx, dword [ebx]
add ecx, 0x18
push ebx
call fcn.10045c50
add esp, 4
test eax, eax
je 0x1008437a
mov ecx, esi
call fcn.100417f0
jmp 0x1008456a
mov al, byte [ecx + 0x36]
mov dl, byte [ebx + 0x36]
cmp al, dl
je 0x1008435b
cmp al, 0xa
je 0x1008434f
cmp dl, 0xa
je 0x1008434f
mov eax, dword [esp + 0x1c]
push 0
push str.conflicting_ON_CONFLICT_clauses_specified
push eax
call fcn.10044360
mov ecx, dword [esp + 0x38]
add esp, 0xc
cmp byte [ecx + 0x36], 0xa
jne 0x1008435b
mov al, byte [ebx + 0x36]
mov byte [ecx + 0x36], al
cmp byte [ebp + 0x28], 2
mov esi, dword [esp + 0xc]
jne 0x1008456a
mov eax, dword [ecx + 0x38]
and eax, 0xfffffffe
or eax, 2
mov dword [ecx + 0x38], eax
jmp 0x1008456a
or dword [esi + 0x18], 1
mov ecx, dword [esp + 0x30]
test ecx, ecx
je 0x1008438f
mov eax, dword [esi + 0x98]
mov dword [ebx + 0x2c], eax
mov eax, dword [esp + 0x14]
jmp 0x10084510
test byte [eax + 0x24], 0x20
je 0x100843a9
cmp dword [esp + 0x30], 0
je 0x1008450c
inc dword [ecx + 0x2c]
mov esi, dword [ecx + 8]
mov edi, dword [ecx + 0x2c]
mov dword [esp + 0x24], edi
test esi, esi
jne 0x100843de
cmp dword [ecx + 0x78], esi
jne 0x100843cb
mov eax, dword [ecx]
test byte [eax + 0x44], 8
jne 0x100843cb
mov byte [ecx + 0x17], 1
call fcn.1005f830
mov ecx, dword [esp + 0x1c]
mov esi, eax
test esi, esi
je 0x100841c8
push dword [esp + 0x20]
mov edx, 1
call fcn.10085540
add esp, 4
mov edx, 0xa9
mov ecx, esi
call fcn.1005fbb0
push 2
push edi
push dword [esp + 0x28]
mov edx, 0x89
mov dword [ebx + 0x2c], eax
mov ecx, esi
call fcn.1005fb40
add esp, 0xc
cmp dword [ebp + 0x18], 0
je 0x10084467
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x34]
mov edx, dword [eax + 0x188]
add edx, dword [eax + 0x184]
mov ecx, dword [ecx]
sub edx, ecx
push ecx
cmp byte [ecx + edx - 1], 0x3b
lea eax, [edx - 1]
mov ecx, str._UNIQUE
cmovne eax, edx
cmp dword [esp + 0x50], 0
push eax
mov eax, 0x105f9b3c
cmovne eax, ecx
push eax
push str.CREATE_s_INDEX__.s
push dword [esp + 0x1c]
call fcn.10043410
add esp, 0x14
mov edi, eax
jmp 0x10084469
xor edi, edi
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x50]
push edi
push dword [esp + 0x28]
push dword [eax]
mov eax, dword [esp + 0x18]
push dword [ebx]
push str.sqlite_master
mov eax, dword [eax + 0x10]
push dword [ecx + eax]
mov eax, dword [esp + 0x34]
push str.INSERT_INTO__Q._s_VALUES_index__Q__Q__d__Q__
push eax
call fcn.1007fce0
mov ecx, dword [esp + 0x2c]
add esp, 0x20
mov edx, edi
call fcn.100410f0
cmp dword [esp + 0x30], 0
je 0x100844fa
push dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
mov edx, ebx
call fcn.100835c0
mov edx, dword [esp + 0x24]
add esp, 4
mov ecx, dword [esp + 0x1c]
call fcn.100818e0
push dword [ebx]
push str.name_q_AND_typeindex
push dword [esp + 0x14]
call fcn.10043410
mov edx, dword [esp + 0x2c]
add esp, 0xc
mov ecx, esi
push eax
call fcn.1005ffd0
add esp, 4
mov edx, 0x99
mov ecx, esi
call fcn.1005fbb0
mov edx, dword [ebx + 0x2c]
mov ecx, esi
call fcn.100604f0
mov esi, dword [esp + 0xc]
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x30]
cmp byte [esi + 0x9d], 0
jne 0x1008451d
test ecx, ecx
jne 0x1008456a
cmp dword [esp + 0x4c], 5
jne 0x10084556
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x10084556
cmp byte [ecx + 0x36], 5
je 0x10084556
cmp dword [ecx + 0x14], 0
je 0x10084548
mov eax, dword [ecx + 0x14]
cmp byte [eax + 0x36], 5
je 0x10084548
mov ecx, eax
cmp dword [ecx + 0x14], 0
jne 0x10084537
mov eax, dword [ecx + 0x14]
mov dword [ebx + 0x14], eax
mov dword [ecx + 0x14], ebx
jmp 0x10083d15
mov eax, dword [eax + 8]
mov dword [ebx + 0x14], eax
mov eax, dword [esp + 0x14]
mov dword [eax + 8], ebx
jmp 0x10083d15
mov esi, edi
test ebx, ebx
je 0x10083d15
mov edx, ebx
mov ecx, esi
call fcn.10080230
jmp 0x10083d15
mov esi, ecx
xor ebx, ebx
jmp 0x10083d19
mov edi, dword [esp + 0x10]
mov ebx, dword [esp + 0x18]
jmp 0x10083d1d
cmp ebx, dword [esi + 0x128]
jb 0x100845c6
cmp ebx, dword [esi + 0x12c]
jae 0x100845c6
mov eax, dword [esi + 0x124]
mov dword [ebx], eax
mov dword [esi + 0x124], ebx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x60]
xor ecx, esp
call fcn.100d22d5
mov esp, ebp
pop ebp
ret
push ebx
call fcn.10041000
add esp, 4
mov ecx, dword [esp + 0x6c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.100d22d5
mov esp, ebp
pop ebp
ret