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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x38
mov edi, ecx
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x24], eax
mov esi, dword [ebp + 8]
mov eax, dword [0x101ef014]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov ecx, dword [ecx]
cmp byte [ecx + 0xb1], 0
mov dword [ebp - 0x34], ecx
je 0x1001917b
cmp dword [ecx + 0xac], 1
je 0x10019347
lea eax, [ebp - 0x14]
mov ecx, edi
push eax
push esi
call fcn.10027340
add esp, 8
test eax, eax
js 0x10019335
mov ebx, eax
cmp dword [ebp - 0x24], 0
jne 0x100198a0
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x34]
mov esi, edx
call fcn.10017820
cmp byte [edi + 0xd8], 2
mov dword [ebp - 0x18], ebx
jae 0x10019b77
mov ebx, eax
mov ecx, esi
mov dword [ebp - 0x30], ecx
movsd xmm0, qword [ecx]
movsd qword [edi + 0xc4], xmm0
test ebx, ebx
je 0x10019335
cmp dword [ebp - 0x40], 0
mov eax, 0x101ce2b4
mov esi, 0x101c8840
cmove esi, eax
mov ecx, edi
mov edx, ebx
mov dword [ebp - 0x1c], ebx
push ebx
push esi
call fcn.1014cc80
add esp, 8
test eax, eax
mov ebx, edi
jne 0x10019a55
xor esi, esi
inc esi
mov eax, dword [ebp - 0x34]
cmp byte [eax + 0xb0], 1
mov ecx, dword [ebp - 0x24]
cmove ecx, esi
mov eax, dword [eax + 0x10]
mov edx, dword [ebp - 0x18]
shl edx, 4
mov dword [ebp - 0x24], ecx
cmp ecx, 1
mov ecx, str.sqlite_temp_master
mov edi, str.sqlite_master
cmove edi, ecx
mov eax, dword [eax + edx]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebx]
mov ecx, dword [eax + 0x164]
test ecx, ecx
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x28], ebx
jne 0x10019a82
cmp dword [ebp - 0x44], 0
jne 0x10019263
mov eax, dword [ebx]
mov ecx, dword [eax + 0x164]
test ecx, ecx
jne 0x10019ad8
cmp byte [ebx + 0xd8], 0
mov edi, ebx
mov esi, dword [ebp - 0x34]
jne 0x100192c3
mov eax, dword [esi + 0x10]
mov eax, dword [eax + edx]
mov ebx, dword [edi]
cmp byte [ebx + 0xb1], 0
je 0x100193e9
mov ecx, esi
mov ebx, dword [ebp - 0x1c]
mov edx, ebx
push eax
mov edi, eax
call fcn.1014f930
add esp, 4
test eax, eax
jne 0x10019a1b
mov ecx, esi
mov edx, ebx
push edi
call fcn.10019c80
add esp, 4
test eax, eax
jne 0x10019b4a
test esi, esi
mov edx, dword [ebp - 0x20]
mov edi, dword [ebp - 0x28]
je 0x10019b63
cmp word [esi + 0x12c], 0x3f
jbe 0x100193a6
mov eax, dword [esi + 0x150]
test eax, eax
mov ebx, dword [ebp - 0x1c]
je 0x10019374
mov ecx, dword [eax]
mov dword [esi + 0x150], ecx
inc dword [esi + 0x138]
xorps xmm0, xmm0
movups xmmword [eax + 0x14], xmm0
movups xmmword [eax + 0x30], xmm0
movups xmmword [eax + 0x24], xmm0
movups xmmword [eax + 4], xmm0
mov dword [eax], ebx
mov word [eax + 0x20], 0xffff
mov ecx, dword [esi + 0x10]
mov ecx, dword [ecx + edx + 0xc]
mov dword [eax + 0x3c], ecx
mov dword [eax + 0x18], 1
mov word [eax + 0x26], 0xc8
mov dword [edi + 0xf4], eax
cmp byte [esi + 0xb1], 0
je 0x10019479
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10156ff0
add esp, 0x38
pop esi
pop edi
pop ebx
pop ebp
ret
movzx eax, byte [ecx + 0xb0]
mov dword [ebp - 0x18], eax
cmp eax, 1
mov eax, str.sqlite_temp_master
mov esi, edx
mov edx, str.sqlite_master
cmove edx, eax
call fcn.10038240
mov ecx, esi
mov ebx, eax
mov dword [ebp - 0x14], esi
jmp 0x100191bf
mov eax, dword [esi + 0x14c]
test eax, eax
jne 0x10019839
mov eax, dword [esi + 0x148]
test eax, eax
jne 0x10019871
mov eax, dword [esi + 0x144]
test eax, eax
jne 0x10019a75
inc dword [esi + 0x140]
jmp 0x100193bc
cmp dword [esi + 0x128], 0
mov ebx, dword [ebp - 0x1c]
je 0x10019902
cmp byte [esi + 0x57], 0
jne 0x100193d8
mov ecx, esi
mov edx, 0x40
push 0
call fcn.10137840
add esp, 4
test eax, eax
mov edx, dword [ebp - 0x20]
jne 0x100192f0
mov dword [edi + 0xc], 7
inc dword [edi + 0x24]
mov ebx, edi
jmp 0x10019a55
mov dword [ebp - 0x24], eax
mov eax, dword [ebx + 0x10]
mov ecx, dword [eax + 0xc]
mov cl, byte [ecx + 0x4d]
mov edx, dword [ebx + 0x18]
mov byte [ebx + 0x54], cl
mov eax, dword [eax + 0xc]
test byte [eax + 0x4e], 1
lea eax, [edi + 4]
mov dword [ebp - 0x2c], eax
je 0x10019846
mov edi, dword [ebx + 0x14]
cmp edi, 2
jl 0x10019457
lea esi, [edi + 1]
shl edi, 4
add edi, 0xfffffffc
mov eax, dword [ebx + 0x10]
mov eax, dword [eax + edi]
test byte [eax + 0x4e], 1
je 0x10019436
dec esi
add edi, 0xfffffff0
cmp esi, 2
ja 0x1001941f
jmp 0x10019457
mov dword [ebp - 0x3c], edx
lea edx, [esi - 2]
mov ecx, ebx
push 0
push dword [ebp - 0x2c]
call fcn.10039200
mov edx, dword [ebp - 0x3c]
add esp, 8
test eax, eax
je 0x1001942b
jmp 0x10019863
test dl, 1
jne 0x10019460
and byte [ebx + 0x18], 0xfe
cmp byte [ebx + 0x5f], 0
mov esi, dword [ebp - 0x34]
mov eax, dword [ebp - 0x24]
je 0x10019286
or byte [ebx + 0x18], 0x10
jmp 0x10019286
mov eax, dword [edi + 8]
test eax, eax
jne 0x100194a4
cmp dword [edi + 0x78], 0
jne 0x10019492
mov eax, dword [edi]
test byte [eax + 0x50], 8
jne 0x10019492
mov byte [edi + 0x17], 1
mov ecx, edi
call fcn.1002f500
test eax, eax
mov edx, dword [ebp - 0x20]
je 0x10019335
mov dword [ebp - 0x38], eax
mov esi, dword [edi + 0x78]
test esi, esi
cmove esi, edi
mov eax, dword [esi + 0x58]
xor ebx, ebx
inc ebx
mov ecx, dword [ebp - 0x18]
shl ebx, cl
bt eax, ecx
mov dword [ebp - 0x30], ebx
jb 0x100194d1
or eax, ebx
mov dword [esi + 0x58], eax
cmp dword [ebp - 0x18], 1
je 0x100198c9
or dword [esi + 0x54], ebx
or byte [esi + 0x14], 1
cmp dword [ebp - 0x44], 0
jne 0x10019bc4
mov esi, dword [edi + 0x2c]
lea eax, [esi + 1]
mov dword [ebp - 0x1c], eax
mov dword [edi + 0x5c], eax
lea eax, [esi + 2]
mov dword [ebp - 0x2c], eax
mov dword [edi + 0x60], eax
add esi, 3
mov dword [edi + 0x2c], esi
mov ebx, dword [ebp - 0x38]
mov eax, dword [ebx + 0x6c]
cmp dword [ebx + 0x70], eax
mov dword [ebp - 0x24], esi
jle 0x1001990d
lea ecx, [eax + 1]
mov dword [ebx + 0x6c], ecx
mov ecx, dword [ebx + 0x68]
lea eax, [eax + eax*4]
mov dword [ecx + eax*4], 0x63
mov ebx, dword [ebp - 0x18]
mov dword [ecx + eax*4 + 4], ebx
mov ebx, dword [ebp - 0x38]
mov dword [ecx + eax*4 + 8], esi
mov esi, dword [ebp - 0x18]
mov dword [ecx + eax*4 + 0xc], 2
mov dword [ecx + eax*4 + 0x10], 0
mov ecx, dword [ebp - 0x30]
or dword [ebx + 0x9c], ecx
cmp esi, 1
je 0x10019564
mov eax, dword [ebx]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + edx + 4]
cmp byte [eax + 9], 0
jne 0x100198db
mov ecx, dword [ebx + 0x6c]
cmp dword [ebx + 0x70], ecx
jle 0x1001992b
lea eax, [ecx + 1]
mov dword [ebx + 0x6c], eax
mov eax, dword [ebx + 0x68]
mov edx, ecx
mov dword [ebp - 0x30], ecx
lea ecx, [ecx + ecx*4]
mov dword [eax + ecx*4], 0x10
mov edx, dword [ebp - 0x24]
mov dword [eax + ecx*4 + 4], edx
xor edx, edx
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], edx
xor eax, eax
mov ecx, dword [ebp - 0x34]
test byte [ecx + 0x20], 2
sete al
lea eax, [eax + eax*2]
inc eax
mov ecx, dword [ebx + 0x6c]
cmp dword [ebx + 0x70], ecx
jle 0x10019949
lea edx, [ecx + 1]
mov dword [ebx + 0x6c], edx
mov edx, dword [ebx + 0x68]
lea ecx, [ecx + ecx*4]
mov dword [edx + ecx*4], 0x64
mov esi, dword [ebp - 0x18]
mov dword [edx + ecx*4 + 4], esi
mov dword [edx + ecx*4 + 8], 2
mov dword [edx + ecx*4 + 0xc], eax
mov dword [edx + ecx*4 + 0x10], 0
mov eax, dword [ebp - 0x34]
movzx eax, byte [eax + 0x54]
mov ecx, dword [ebx + 0x6c]
cmp dword [ebx + 0x70], ecx
jle 0x10019963
lea edx, [ecx + 1]
mov dword [ebx + 0x6c], edx
mov edx, dword [ebx + 0x68]
lea ecx, [ecx + ecx*4]
mov dword [edx + ecx*4], 0x64
mov esi, dword [ebp - 0x18]
mov dword [edx + ecx*4 + 4], esi
mov dword [edx + ecx*4 + 8], 5
mov dword [edx + ecx*4 + 0xc], eax
mov dword [edx + ecx*4 + 0x10], 0
mov ecx, dword [ebx]
mov eax, dword [ebx + 0x6c]
cmp byte [ecx + 0x57], 0
jne 0x10019be1
mov ecx, dword [ebp - 0x30]
lea ecx, [ecx + ecx*4]
shl ecx, 2
add ecx, dword [ebx + 0x68]
mov dword [ecx + 8], eax
mov eax, dword [ebp - 0x40]
or dword [ebp - 0x44], eax
jne 0x10019beb
mov eax, dword [ebx + 0x6c]
cmp dword [ebx + 0x70], eax
jle 0x100199ff
lea ecx, [eax + 1]
mov dword [ebx + 0x6c], ecx
mov ecx, dword [ebx + 0x68]
lea edx, [eax + eax*4]
mov dword [ecx + edx*4], 0x93
mov esi, dword [ebp - 0x18]
mov dword [ecx + edx*4 + 4], esi
mov esi, dword [ebp - 0x2c]
mov dword [ecx + edx*4 + 8], esi
mov dword [ecx + edx*4 + 0xc], 1
mov dword [ecx + edx*4 + 0x10], 0
mov dword [edi + 0x88], eax
mov ecx, dword [ebp - 0x20]
mov esi, dword [edi + 8]
test esi, esi
je 0x10019c06
cmp dword [ebp - 0x18], 1
je 0x100196bc
mov eax, dword [edi]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + ecx + 4]
cmp byte [eax + 9], 0
jne 0x100198e6
mov eax, dword [esi + 0x6c]
cmp dword [esi + 0x70], eax
jle 0x1001997d
lea ecx, [eax + 1]
mov dword [esi + 0x6c], ecx
mov ecx, dword [esi + 0x68]
lea edx, [eax + eax*4]
mov dword [ecx + edx*4], 0x71
xor edi, edi
mov dword [ecx + edx*4 + 4], edi
mov dword [ecx + edx*4 + 8], 1
mov edi, esi
mov esi, dword [ebp - 0x18]
mov dword [ecx + edx*4 + 0xc], esi
mov esi, edi
xor edi, edi
mov dword [ecx + edx*4 + 0x10], edi
mov edi, dword [ebp - 0x28]
mov ecx, dword [esi]
cmp byte [ecx + 0x57], 0
jne 0x10019718
mov ecx, dword [esi + 0x68]
lea eax, [eax + eax*4]
mov byte [ecx + eax*4 + 1], 0xfd
mov dword [ecx + eax*4 + 0x10], 5
cmp dword [edi + 0x28], 0
jne 0x10019725
mov dword [edi + 0x28], 1
mov eax, dword [ebx + 0x6c]
cmp dword [ebx + 0x70], eax
jle 0x10019998
lea ecx, [eax + 1]
mov dword [ebx + 0x6c], ecx
mov ecx, dword [ebx + 0x68]
lea eax, [eax + eax*4]
mov dword [ecx + eax*4], 0x7f
xor edx, edx
mov dword [ecx + eax*4 + 4], edx
mov esi, dword [ebp - 0x1c]
mov dword [ecx + eax*4 + 8], esi
mov dword [ecx + eax*4 + 0xc], edx
mov dword [ecx + eax*4 + 0x10], edx
mov edi, dword [ebp - 0x24]
mov eax, dword [ebx + 0x6c]
cmp dword [ebx + 0x70], eax
jle 0x100199b3
lea ecx, [eax + 1]
mov dword [ebx + 0x6c], ecx
mov ecx, dword [ebx + 0x68]
lea edx, [eax + eax*4]
mov dword [ecx + edx*4], 0x4d
mov dword [ecx + edx*4 + 4], 6
mov dword [ecx + edx*4 + 8], edi
xor esi, esi
mov dword [ecx + edx*4 + 0xc], esi
mov dword [ecx + edx*4 + 0x10], esi
mov ecx, dword [ebx]
cmp byte [ecx + 0x57], 0
jne 0x100197c0
test eax, eax
js 0x10019897
mov ecx, dword [ebx + 0x68]
lea eax, [eax + eax*4]
cmp byte [ecx + eax*4 + 1], 0
jne 0x1001987e
lea eax, [ecx + eax*4]
inc eax
mov dword [eax + 0xf], 0x101b4574
mov byte [eax], 0xff
mov eax, dword [ebx + 0x6c]
cmp dword [ebx + 0x70], eax
jle 0x100199cc
lea ecx, [eax + 1]
mov dword [ebx + 0x6c], ecx
mov ecx, dword [ebx + 0x68]
lea eax, [eax + eax*4]
mov dword [ecx + eax*4], 0x80
xor edx, edx
mov dword [ecx + eax*4 + 4], edx
mov dword [ecx + eax*4 + 8], edi
mov esi, dword [ebp - 0x1c]
mov dword [ecx + eax*4 + 0xc], esi
mov dword [ecx + eax*4 + 0x10], edx
mov eax, dword [ebx + 0x6c]
test eax, eax
jle 0x1001980b
mov ecx, dword [ebx + 0x68]
lea eax, [eax + eax*4]
mov word [ecx + eax*4 - 0x12], 8
mov eax, dword [ebx + 0x6c]
cmp dword [ebx + 0x70], eax
jle 0x100199e6
lea ecx, [eax + 1]
mov dword [ebx + 0x6c], ecx
mov ecx, dword [ebx + 0x68]
lea eax, [eax + eax*4]
mov byte [ecx + eax*4], 0x7a
xorps xmm0, xmm0
movups xmmword [ecx + eax*4 + 1], xmm0
mov dword [ecx + eax*4 + 0x10], 0
jmp 0x10019335
mov ecx, dword [eax]
mov dword [esi + 0x14c], ecx
jmp 0x100192ea
mov ecx, ebx
mov esi, edx
xor edx, edx
push 0
push dword [ebp - 0x2c]
call fcn.10039200
mov edx, esi
add esp, 8
test eax, eax
je 0x1001940e
mov ebx, dword [ebp - 0x28]
mov dword [ebx + 0xc], eax
inc dword [ebx + 0x24]
jmp 0x10019a55
mov ecx, dword [eax]
mov dword [esi + 0x148], ecx
jmp 0x100192ea
lea edx, [ecx + eax*4]
mov ecx, ebx
push 0xffffffffffffffff
push 0x101b4574
call fcn.10035ca0
add esp, 8
jmp 0x100197c0
mov eax, dword [ebx + 0x6c]
dec eax
jmp 0x100197a1
xor ebx, ebx
inc ebx
cmp dword [esi + 4], 0
je 0x1001919e
cmp eax, 1
je 0x1001919e
push str.temporary_table_name_must_be_unqualified
push edi
call fcn.100463a0
add esp, 8
jmp 0x10019335
mov ecx, esi
call fcn.10042310
mov ebx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x20]
jmp 0x100194d1
or dword [ebx + 0xa0], ecx
jmp 0x10019564
mov ecx, edi
mov edx, dword [ebp - 0x18]
push str.sqlite_master
xor eax, eax
inc eax
push eax
push eax
call fcn.10046570
add esp, 0xc
jmp 0x100196bc
inc dword [esi + 0x13c]
jmp 0x100193bc
mov ecx, ebx
mov edx, 0x63
push 2
push esi
mov esi, dword [ebp - 0x18]
push esi
call fcn.10016c40
mov edx, dword [ebp - 0x20]
add esp, 0xc
jmp 0x10019543
xor eax, eax
mov ecx, ebx
mov edx, 0x10
push eax
push eax
push dword [ebp - 0x24]
call fcn.10016c40
add esp, 0xc
mov dword [ebp - 0x30], eax
jmp 0x1001959d
mov ecx, ebx
mov edx, 0x64
push eax
push 2
push dword [ebp - 0x18]
call fcn.10016c40
add esp, 0xc
jmp 0x100195e7
mov ecx, ebx
mov edx, 0x64
push eax
push 5
push dword [ebp - 0x18]
call fcn.10016c40
add esp, 0xc
jmp 0x10019628
mov ecx, esi
mov edx, 0x71
push dword [ebp - 0x18]
push 1
push 0
call fcn.10016c40
add esp, 0xc
jmp 0x100196fd
xor eax, eax
mov ecx, ebx
mov edx, 0x7f
push eax
push dword [ebp - 0x1c]
push eax
call fcn.10016c40
add esp, 0xc
jmp 0x10019759
mov ecx, ebx
mov edx, 0x4d
push 0
push edi
push 6
call fcn.10016c40
add esp, 0xc
jmp 0x10019791
mov ecx, ebx
mov edx, 0x80
push dword [ebp - 0x1c]
push edi
push 0
call fcn.10016c40
add esp, 0xc
jmp 0x100197f4
xor eax, eax
mov ecx, ebx
mov edx, 0x7a
push eax
push eax
push eax
call fcn.10016c40
add esp, 0xc
jmp 0x10019335
mov ecx, ebx
mov edx, 0x93
push 1
push dword [ebp - 0x2c]
push dword [ebp - 0x18]
call fcn.10016c40
add esp, 0xc
jmp 0x1001968f
cmp dword [ebp - 0x38], 0
mov ecx, dword [ebp - 0x18]
je 0x10019c43
mov ebx, dword [ebp - 0x28]
mov eax, dword [ebx + 0x78]
test eax, eax
cmove eax, ebx
mov edx, dword [eax + 0x58]
xor esi, esi
inc esi
shl esi, cl
bt edx, ecx
jb 0x10019a4e
or edx, esi
mov dword [eax + 0x58], edx
cmp ecx, 1
je 0x10019c6e
mov ecx, ebx
call fcn.10021e60
mov byte [ebx + 0x11], 1
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10156ff0
mov ecx, dword [ebp - 0x34]
mov edx, dword [ebp - 0x1c]
add esp, 0x38
pop esi
pop edi
pop ebx
pop ebp
jmp fcn.1014d210
mov ecx, dword [eax]
mov dword [esi + 0x144], ecx
jmp 0x100192ea
cmp byte [eax + 0xb1], 0
jne 0x1001924d
cmp byte [ebx + 0xd8], 0
jne 0x1001924d
mov edx, dword [ebx + 0x100]
mov dword [ebp - 0x3c], edx
mov ebx, dword [eax + 0x168]
call dword [section..00cfg]
push dword [ebp - 0x3c]
push dword [ebp - 0x2c]
push 0
push edi
push 0x12
push ebx
call ecx
add esp, 0x18
cmp eax, 1
jne 0x10019b8d
mov esi, 0x17
mov ecx, str.not_authorized
push ecx
jmp 0x10019b36
cmp byte [eax + 0xb1], 0
jne 0x10019263
cmp byte [ebx + 0xd8], 0
jne 0x10019263
mov edx, dword [ebp - 0x40]
mov esi, dword [ebp - 0x24]
movzx esi, byte [esi + edx*2 + 0x101b4570]
mov edi, dword [ebx + 0x100]
mov ebx, dword [eax + 0x168]
call dword [section..00cfg]
push edi
push dword [ebp - 0x2c]
push 0
push dword [ebp - 0x1c]
push esi
push ebx
call ecx
add esp, 0x18
cmp eax, 1
jne 0x10019bb0
mov esi, 0x17
mov eax, str.not_authorized
push eax
mov ebx, dword [ebp - 0x28]
push ebx
call fcn.100463a0
add esp, 8
mov dword [ebx + 0xc], esi
jmp 0x10019a55
push dword [ebp - 0x1c]
push str.there_is_already_an_index_named__s
mov ebx, dword [ebp - 0x28]
push ebx
call fcn.100463a0
add esp, 0xc
jmp 0x10019a55
mov ecx, 0x40
xor edx, edx
call fcn.10143580
mov ebx, dword [ebp - 0x1c]
jmp 0x100193cd
mov ecx, edi
mov ebx, eax
mov edx, eax
push esi
call fcn.1016d160
mov ecx, esi
add esp, 4
jmp 0x100191bf
mov ecx, str.authorizer_malfunction
test eax, 0xfffffffd
jne 0x10019ad5
test eax, eax
mov ebx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x20]
je 0x1001924d
jmp 0x10019a55
test eax, 0xfffffffd
je 0x10019c22
xor esi, esi
inc esi
mov eax, str.authorizer_malfunction
jmp 0x10019b35
xor eax, eax
mov ecx, dword [ebp - 0x38]
mov edx, 0xaa
push eax
push eax
push eax
call fcn.1002fb80
mov edx, dword [ebp - 0x20]
add esp, 0xc
jmp 0x100194e2
mov ecx, 0x101f2320
jmp 0x10019643
xor eax, eax
mov ecx, ebx
mov edx, 0x47
push eax
push dword [ebp - 0x2c]
push eax
call fcn.1002fb80
add esp, 0xc
jmp 0x10019695
mov ecx, edi
cmp dword [edi + 0x78], 0
je 0x10019c35
mov edi, ecx
call fcn.1002f500
mov esi, eax
mov ecx, dword [ebp - 0x20]
mov ebx, dword [ebp - 0x38]
jmp 0x100196a3
test eax, eax
mov ebx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x20]
je 0x10019263
jmp 0x10019a55
mov eax, dword [ecx]
test byte [eax + 0x50], 8
jne 0x10019c0e
mov byte [ecx + 0x17], 1
jmp 0x10019c0e
cmp byte [eax + 0x2b], 2
mov eax, 0x101c8840
mov ecx, 0x101ce2b4
cmove ecx, eax
push dword [ebp - 0x30]
push ecx
push str._s__T_already_exists
mov ebx, dword [ebp - 0x28]
push ebx
call fcn.100463a0
add esp, 0x10
jmp 0x10019a55
mov ecx, eax
call fcn.10042310
jmp 0x10019a4e