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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x74
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
mov ecx, dword [eax + 0x6c]
xor edx, edx
push ebx
push esi
push edi
mov byte [esp + 0x13], dl
mov dword [esp + 0x3c], edx
mov dword [esp + 0x44], edx
mov dword [esp + 0x48], edx
mov dword [esp + 0x2c], eax
cmp dword [eax + 0x70], ecx
jg 0x101b1a43
push edx
push edx
push edx
push 0x11
call fcn.1015b8e0
add esp, 0x10
mov dword [esp + 0x4c], eax
jmp 0x101b1a6b
lea esi, [ecx + 1]
mov dword [eax + 0x6c], esi
mov eax, dword [eax + 0x68]
lea esi, [ecx + ecx*2]
lea eax, [eax + esi*8]
mov dword [eax + 4], edx
mov dword [eax + 8], edx
mov dword [eax + 0xc], edx
mov dword [eax + 0x10], edx
mov dword [eax], 0x11
mov dword [eax + 0x14], edx
mov dword [esp + 0x4c], ecx
mov eax, dword [ebp + 0xc]
mov ebx, dword [eax + 0x14]
mov eax, dword [eax + 0xc]
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx + 0x10]
lea esi, [eax + eax*2]
mov eax, dword [ebp + 0x1c]
mov ecx, dword [eax + 0x48]
shl esi, 4
xor edi, edi
add esi, ebx
xor eax, eax
mov dword [esp + 0x14], edi
mov dword [esp + 0x1c], edx
mov dword [esp + 0x40], esi
mov dword [esp + 0x28], ecx
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], edi
cmp ebx, esi
jae 0x101b1c86
mov eax, ecx
jmp 0x101b1ab4
mov eax, dword [esp + 0x28]
mov edx, dword [eax]
or edx, dword [eax + 4]
mov esi, dword [ebx]
jne 0x101b1b2b
test byte [ebx + 0xa], 2
jne 0x101b1b2b
test byte [esi + 4], 1
jne 0x101b1b2b
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx + 0x2c]
mov eax, 3
mov word [esp + 0x78], ax
lea eax, [esp + 0x64]
push esi
push eax
mov dword [esp + 0x70], fcn.1013afe0
mov dword [esp + 0x74], 0x1011c670
mov dword [esp + 0x84], edx
call fcn.10133ea0
add esp, 8
cmp word [esp + 0x78], 0
je 0x101b1b2b
mov ecx, dword [ebp + 8]
mov eax, dword [ecx]
push 0
push 0
push esi
push eax
call fcn.101a2140
mov ecx, dword [ebp + 8]
mov esi, eax
mov eax, dword [esp + 0x4c]
add esp, 0x10
call fcn.10172ae0
mov dword [esp + 0x3c], eax
mov edx, dword [ebx + 0x14]
mov eax, dword [ebp + 0x10]
cmp edx, dword [eax + 0x2c]
jne 0x101b1c71
movzx eax, word [ebx + 0xc]
test al, 0x82
je 0x101b1c71
mov ecx, dword [ebp + 0x10]
test byte [ecx + 0x24], 8
je 0x101b1b5f
mov edx, dword [ebx]
test byte [edx + 4], 1
jne 0x101b1b5f
test al, al
js 0x101b1c71
mov eax, dword [ebx + 0x20]
mov ecx, dword [ebx + 0x24]
and eax, dword [ebp + 0x14]
and ecx, dword [ebp + 0x18]
or eax, ecx
jne 0x101b1c71
mov eax, dword [ebx + 0x1c]
test eax, eax
js 0x101b1c71
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx + 0x10]
mov ecx, dword [edx + 4]
mov esi, dword [ebx]
lea eax, [eax + eax*4]
mov dl, byte [ecx + eax*4 + 0xd]
mov byte [esp + 0x12], dl
call fcn.1013b260
cmp al, 0x42
jl 0x101b1bbd
jne 0x101b1bab
xor eax, eax
cmp byte [esp + 0x12], 0x42
sete al
jmp 0x101b1bb5
xor eax, eax
cmp byte [esp + 0x12], 0x43
setge al
test eax, eax
je 0x101b1c71
mov esi, dword [ebx + 0x1c]
cmp esi, 0x40
jl 0x101b1bd7
mov dword [esp + 0x30], 0
mov dword [esp + 0x34], closesocket
jmp 0x101b1bed
mov eax, 1
xor edx, edx
mov ecx, esi
call fcn.101020d0
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], edx
cmp byte [esp + 0x13], 0
jne 0x101b1c1c
mov eax, dword [esp + 0x1c]
mov edx, dword [eax + 4]
lea ecx, [esi + esi*4]
mov ecx, dword [edx + ecx*4]
mov edx, dword [eax]
push ecx
push edx
push str.automatic_index_on__s__s_
push 0x11c
call sym.SQLite.Interop.dll_sqlite3_log
add esp, 0x10
mov byte [esp + 0x13], 1
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
and eax, dword [esp + 0x50]
and ecx, edi
or eax, ecx
jne 0x101b1c71
mov eax, dword [ebp + 8]
mov esi, dword [esp + 0x14]
mov ecx, dword [eax]
mov edi, dword [esp + 0x28]
inc esi
push ecx
mov eax, esi
call fcn.10153270
add esp, 4
test eax, eax
jne 0x101b24b7
mov edx, dword [edi + 0x30]
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x30]
or dword [esp + 0x50], ecx
mov dword [edx + eax*4], ebx
mov edx, dword [esp + 0x34]
or dword [esp + 0x54], edx
mov edi, dword [esp + 0x54]
mov dword [esp + 0x14], esi
add ebx, 0x30
cmp ebx, dword [esp + 0x40]
jb 0x101b1ab0
mov esi, dword [esp + 0x40]
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x14]
mov word [ecx + 0x28], dx
mov word [ecx + 0x18], dx
mov edx, dword [ebp + 0x10]
not eax
mov dword [ecx + 0x24], 0x4241
mov ecx, dword [edx + 0x38]
mov edx, dword [edx + 0x3c]
mov ebx, eax
mov eax, dword [esp + 0x1c]
movzx eax, word [eax + 0x2a]
not edi
and ebx, ecx
or edi, 0x80000000
and edi, edx
mov ecx, 0x3f
mov dword [esp + 0x24], edx
mov dword [esp + 0x58], ebx
mov dword [esp + 0x5c], edi
cmp cx, ax
jge 0x101b1cda
mov dword [esp + 0x30], ecx
jmp 0x101b1ce7
mov edx, dword [esp + 0x1c]
movzx eax, word [edx + 0x2a]
cwde
mov dword [esp + 0x30], eax
xor edi, edi
cmp dword [esp + 0x30], edi
jle 0x101b1d13
nop
mov eax, 1
xor edx, edx
mov ecx, edi
call fcn.101020d0
and edx, dword [esp + 0x5c]
and eax, ebx
or eax, edx
je 0x101b1d0c
inc dword [esp + 0x14]
inc edi
cmp edi, dword [esp + 0x30]
jl 0x101b1cf0
mov ecx, dword [esp + 0x24]
and ecx, 0x80000000
xor eax, eax
or eax, ecx
je 0x101b1d3a
mov ecx, dword [esp + 0x1c]
movzx eax, word [ecx + 0x2a]
movsx edx, ax
mov eax, dword [esp + 0x14]
lea ecx, [eax + edx - 0x3f]
mov dword [esp + 0x14], ecx
mov eax, dword [esp + 0x14]
mov ecx, dword [ebp + 8]
mov ecx, dword [ecx]
lea edx, [esp + 0x20]
push edx
inc eax
push eax
xor edx, edx
call fcn.10154000
xor ecx, ecx
add esp, 8
mov dword [esp + 0x20], eax
cmp eax, ecx
je 0x101b24b7
mov edx, dword [esp + 0x28]
mov dword [edx + 0x20], eax
mov edx, dword [esp + 0x1c]
mov dword [eax], str.auto_index
mov dword [eax + 0xc], edx
mov eax, dword [ebp + 0xc]
mov edi, dword [eax + 0x14]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x50], ecx
mov dword [esp + 0x54], ecx
cmp edi, esi
jae 0x101b1f4f
mov ecx, dword [edi + 0x14]
mov edx, dword [ebp + 0x10]
cmp ecx, dword [edx + 0x2c]
jne 0x101b1f42
movzx eax, word [edi + 0xc]
test al, 0x82
je 0x101b1f42
mov ecx, edx
test byte [ecx + 0x24], 8
je 0x101b1dc3
mov edx, dword [edi]
test byte [edx + 4], 1
jne 0x101b1dc3
test al, al
js 0x101b1f42
mov eax, dword [edi + 0x20]
mov ecx, dword [edi + 0x24]
and eax, dword [ebp + 0x14]
and ecx, dword [ebp + 0x18]
or eax, ecx
jne 0x101b1f42
mov eax, dword [edi + 0x1c]
test eax, eax
js 0x101b1f42
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx + 0x10]
mov ecx, dword [edx + 4]
mov esi, dword [edi]
lea eax, [eax + eax*4]
mov dl, byte [ecx + eax*4 + 0xd]
mov ecx, dword [esi + 0xc]
mov byte [esp + 0x13], dl
call fcn.10129300
mov ecx, dword [esi + 0x10]
mov bl, al
test ecx, ecx
jne 0x101b1e1b
test dword [esi + 4], 0x800
je 0x101b1e34
mov eax, dword [esi + 0x14]
mov ecx, dword [eax + 0x1c]
mov ecx, dword [ecx + 4]
call fcn.10129300
cmp al, 0x40
jg 0x101b1e4b
movsx ebx, bl
or bl, 0x40
jmp 0x101b1e38
movsx ebx, al
or bl, 0x40
jmp 0x101b1e38
test bl, bl
je 0x101b1e6b
cmp bl, 0x42
jl 0x101b1e6b
jne 0x101b1e59
xor eax, eax
cmp byte [esp + 0x13], 0x42
sete al
jmp 0x101b1e63
cmp bl, 0x40
jle 0x101b1e2c
cmp al, 0x43
jge 0x101b1e59
cmp bl, 0x43
jl 0x101b1e6b
xor eax, eax
cmp byte [esp + 0x13], 0x43
setge al
test eax, eax
je 0x101b1f42
mov ecx, dword [edi + 0x1c]
cmp ecx, 0x40
jl 0x101b1e7c
xor eax, eax
mov edx, closesocket
jmp 0x101b1e88
mov eax, 1
xor edx, edx
call fcn.101020d0
mov ecx, eax
and ecx, dword [esp + 0x50]
mov esi, edx
and esi, dword [esp + 0x54]
or ecx, esi
jne 0x101b1f42
or dword [esp + 0x54], edx
or dword [esp + 0x50], eax
mov edx, dword [esp + 0x20]
mov eax, dword [edx + 4]
mov ecx, dword [edi]
mov dx, word [edi + 0x1c]
mov esi, dword [esp + 0x18]
mov word [eax + esi*2], dx
test dword [ecx + 4], 0x200
mov eax, 0x100
je 0x101b1ee7
mov esi, dword [ecx + 0xc]
mov ecx, dword [ecx + 0x10]
test dword [ecx + 4], eax
je 0x101b1ed8
mov eax, dword [ebp + 8]
push eax
jmp 0x101b1f1a
test esi, esi
je 0x101b1f07
test dword [esi + 4], eax
je 0x101b1f07
mov ecx, dword [ebp + 8]
push ecx
jmp 0x101b1f18
mov esi, dword [ecx + 0x10]
mov ecx, dword [ecx + 0xc]
test dword [ecx + 4], eax
je 0x101b1ef8
mov edx, dword [ebp + 8]
push edx
jmp 0x101b1f1a
test esi, esi
je 0x101b1f07
test dword [esi + 4], eax
je 0x101b1f07
mov eax, dword [ebp + 8]
push eax
jmp 0x101b1f18
mov ebx, dword [ebp + 8]
push ebx
call fcn.10184330
add esp, 4
test eax, eax
jne 0x101b1f26
push ebx
mov ecx, esi
call fcn.10184330
add esp, 4
test eax, eax
je 0x101b1f2a
mov eax, dword [eax]
jmp 0x101b1f2f
mov eax, 0x1026d6d8
mov ecx, dword [esp + 0x20]
mov edx, dword [ecx + 0x20]
mov ecx, dword [esp + 0x18]
mov dword [edx + ecx*4], eax
inc ecx
mov dword [esp + 0x18], ecx
add edi, 0x30
cmp edi, dword [esp + 0x40]
jb 0x101b1d90
mov ebx, dword [esp + 0x20]
mov edi, dword [esp + 0x18]
xor esi, esi
cmp dword [esp + 0x30], esi
jle 0x101b1f97
nop
mov eax, 1
xor edx, edx
mov ecx, esi
call fcn.101020d0
and eax, dword [esp + 0x58]
and edx, dword [esp + 0x5c]
or eax, edx
je 0x101b1f8c
mov eax, dword [ebx + 4]
mov word [eax + edi*2], si
mov ecx, dword [ebx + 0x20]
mov dword [ecx + edi*4], 0x1026d6d8
inc edi
inc esi
cmp esi, dword [esp + 0x30]
jl 0x101b1f60
mov dword [esp + 0x18], edi
mov edx, dword [ebp + 0x10]
mov ecx, dword [edx + 0x3c]
and ecx, 0x80000000
xor eax, eax
or eax, ecx
je 0x101b1fdf
mov ecx, dword [esp + 0x1c]
mov eax, 0x3f
cmp ax, word [ecx + 0x2a]
jge 0x101b1fdf
jmp 0x101b1fc0
mov edx, dword [ebx + 4]
mov word [edx + edi*2], ax
mov edx, dword [ebx + 0x20]
mov dword [edx + edi*4], 0x1026d6d8
movsx edx, word [ecx + 0x2a]
inc eax
inc edi
cmp eax, edx
jl 0x101b1fc0
mov dword [esp + 0x18], edi
mov eax, dword [esp + 0x20]
mov edx, dword [eax + 4]
mov ecx, dword [esp + 0x18]
mov ebx, dword [ebp + 8]
mov edi, dword [ebp + 0x1c]
or esi, 0xffffffff
mov word [edx + ecx*2], si
mov eax, dword [eax + 0x20]
mov esi, dword [esp + 0x2c]
mov dword [eax + ecx*4], 0x1026d6d8
mov ecx, dword [ebx + 0x28]
mov dword [edi + 8], ecx
inc dword [ebx + 0x28]
mov ecx, dword [esp + 0x14]
mov eax, dword [esi + 0x6c]
mov edx, dword [edi + 8]
inc ecx
cmp dword [esi + 0x70], eax
jg 0x101b2030
push 0
push ecx
push edx
push 0x63
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101b2059
lea edi, [eax + 1]
mov dword [esi + 0x6c], edi
mov edi, dword [esi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edi + eax*8]
mov edi, dword [ebp + 0x1c]
mov dword [eax + 8], ecx
xor ecx, ecx
mov dword [eax + 4], edx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ecx
mov dword [eax], 0x63
mov dword [eax + 0x14], ecx
mov edx, dword [esp + 0x20]
mov ecx, dword [ebx + 8]
push edx
push ebx
mov dword [esp + 0x48], ecx
call fcn.1018bc70
add esp, 8
test eax, eax
je 0x101b209e
mov edx, dword [esp + 0x40]
mov ecx, dword [edx]
cmp byte [ecx + 0x51], 0
je 0x101b208a
mov edx, 0xfffffff7
call fcn.10145340
jmp 0x101b209e
mov ecx, dword [edx + 0x6c]
mov edx, dword [edx + 0x68]
lea ecx, [ecx + ecx*2]
lea ecx, [edx + ecx*8 - 0x18]
mov byte [ecx + 1], 0xf7
mov dword [ecx + 0x10], eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax]
push ecx
push str.for__s
push esi
call fcn.10166d20
movzx eax, byte [edi + 0x34]
lea edx, [eax + eax*8]
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax]
mov eax, dword [ecx + 4]
lea eax, [eax + edx*8 + 8]
add esp, 0xc
test byte [eax + 0x28], 0x10
mov dword [esp + 0x1c], eax
je 0x101b21dd
mov ecx, eax
mov edx, dword [ecx + 0x1c]
mov ecx, dword [esi + 0x6c]
xor edi, edi
mov dword [esp + 0x30], edx
cmp dword [esi + 0x70], ecx
jg 0x101b20f8
push edi
push edi
push edi
push 0x45
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101b211e
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
mov eax, dword [esi + 0x68]
lea edx, [ecx + ecx*2]
lea eax, [eax + edx*8]
mov dword [eax + 4], edi
mov dword [eax + 8], edi
mov dword [eax + 0xc], edi
mov dword [eax + 0x10], edi
mov dword [eax], 0x45
mov dword [eax + 0x14], edi
mov eax, ecx
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + 0x18]
mov eax, dword [esi + 0x6c]
cmp dword [esi + 0x70], eax
jg 0x101b2146
push ecx
mov ecx, dword [esp + 0x34]
push edi
push ecx
push 0xd
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101b2173
lea edx, [eax + 1]
mov dword [esi + 0x6c], edx
mov edx, dword [esi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
xor edx, edx
mov word [eax + 2], dx
mov edx, dword [esp + 0x30]
mov dword [eax + 4], edx
mov dword [eax + 8], edi
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], edi
mov word [eax], 0xd
mov dword [eax + 0x14], edi
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x101b2190
mov eax, dword [esp + 0x30]
push edi
push edi
push eax
push 0xe
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101b21bf
lea edx, [ecx + 1]
mov dword [esi + 0x6c], edx
mov edx, dword [esi + 0x68]
lea eax, [ecx + ecx*2]
lea eax, [edx + eax*8]
xor edx, edx
mov word [eax + 2], dx
mov edx, dword [esp + 0x30]
mov dword [eax + 4], edx
mov dword [eax + 8], edi
mov dword [eax + 0xc], edi
mov dword [eax + 0x10], edi
mov word [eax], 0xe
mov dword [eax + 0x14], edi
mov eax, ecx
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + 0x10]
mov edx, dword [ecx]
push edx
push str.next_row_of__s
push esi
call fcn.10166d20
add esp, 0xc
jmp 0x101b222c
mov ecx, dword [esi + 0x6c]
mov edi, dword [edi + 4]
cmp dword [esi + 0x70], ecx
jg 0x101b21fb
push 0
push 0
push edi
push 0x25
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101b2226
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
mov eax, dword [esi + 0x68]
lea edx, [ecx + ecx*2]
lea eax, [eax + edx*8]
xor edx, edx
mov word [eax + 2], dx
mov dword [eax + 4], edi
mov dword [eax + 8], edx
mov dword [eax + 0xc], edx
mov dword [eax + 0x10], edx
mov word [eax], 0x25
mov dword [eax + 0x14], edx
mov eax, ecx
mov dword [esp + 0x40], eax
xor edi, edi
mov ecx, dword [esp + 0x3c]
cmp ecx, edi
je 0x101b2256
dec dword [ebx + 0x38]
mov eax, dword [ebx + 0x38]
push 0x10
push eax
push ecx
push ebx
mov dword [esp + 0x54], eax
call fcn.101e0a00
mov eax, dword [esp + 0x38]
add esp, 0x10
or dword [eax + 0x24], 0x20000
mov al, byte [ebx + 0x13]
test al, al
jne 0x101b2265
inc dword [ebx + 0x2c]
mov edi, dword [ebx + 0x2c]
jmp 0x101b2274
dec al
mov byte [ebx + 0x13], al
movzx eax, al
mov edi, dword [ebx + eax*4 + 0x94]
mov ecx, dword [ebp + 0x1c]
mov edx, dword [ecx + 4]
mov eax, dword [esp + 0x20]
push 0
push 0
push 0
push edi
push edx
push eax
xor eax, eax
mov ecx, ebx
mov dword [esp + 0x48], edi
call fcn.101acfb0
mov ecx, dword [ebp + 0x1c]
mov ecx, dword [ecx + 8]
mov ebx, eax
mov eax, dword [esi + 0x6c]
add esp, 0x18
cmp dword [esi + 0x70], eax
jg 0x101b22bc
push 0
push edi
push ecx
push 0x83
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101b22e2
lea edx, [eax + 1]
mov dword [esi + 0x6c], edx
mov edx, dword [esi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
mov dword [eax + 4], ecx
xor ecx, ecx
mov dword [eax + 8], edi
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ecx
mov dword [eax], 0x83
mov dword [eax + 0x14], ecx
mov eax, dword [esi + 0x6c]
test eax, eax
jle 0x101b22f9
mov ecx, dword [esi + 0x68]
lea eax, [eax + eax*2]
mov edx, 0x10
mov word [ecx + eax*8 - 0x16], dx
cmp dword [esp + 0x3c], 0
je 0x101b232a
mov eax, dword [esp + 0x44]
mov ecx, esi
mov edi, dword [ecx + 0xc]
mov edx, dword [edi + 0x3c]
add edx, dword [edi + 0x38]
not eax
jns 0x101b2321
push eax
mov eax, ecx
push eax
call fcn.1015b870
add esp, 8
jmp 0x101b232a
mov edx, dword [edi + 0x40]
mov ecx, dword [ecx + 0x6c]
mov dword [edx + eax*4], ecx
mov edx, dword [esp + 0x1c]
test byte [edx + 0x28], 0x10
je 0x101b23e2
mov eax, dword [esp + 0x48]
test eax, eax
jns 0x101b2344
mov eax, dword [esi + 0x6c]
dec eax
mov ecx, dword [esi]
cmp byte [ecx + 0x51], 0
je 0x101b2353
mov eax, 0x10299328
jmp 0x101b235c
lea edx, [eax + eax*2]
mov eax, dword [esi + 0x68]
lea eax, [eax + edx*8]
add ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edi, dword [esp + 0x40]
mov dword [eax + 8], ebx
mov eax, dword [ebp + 0x1c]
mov edx, dword [eax + 8]
mov eax, dword [eax + 4]
mov ebx, dword [ebp + 8]
push edx
mov edx, dword [ecx + 0x20]
push edx
push eax
mov edx, edi
mov eax, ebx
call fcn.101274c0
mov eax, dword [esi + 0x6c]
add esp, 0xc
cmp dword [esi + 0x70], eax
jg 0x101b23af
push 0
push edi
push 0
push 0xb
mov eax, esi
call fcn.1015b8e0
mov eax, dword [esp + 0x2c]
add esp, 0x10
and dword [eax + 0x28], 0xffffffef
jmp 0x101b244d
lea ecx, [eax + 1]
mov dword [esi + 0x6c], ecx
lea edx, [eax + eax*2]
mov eax, dword [esi + 0x68]
lea eax, [eax + edx*8]
xor ecx, ecx
mov word [eax + 2], cx
mov dword [eax + 4], ecx
mov dword [eax + 8], edi
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ecx
mov word [eax], 0xb
mov dword [eax + 0x14], ecx
mov eax, dword [esp + 0x1c]
and dword [eax + 0x28], 0xffffffef
jmp 0x101b244d
mov eax, dword [esi + 0x6c]
mov edi, dword [esp + 0x40]
mov edx, dword [ebp + 0x1c]
mov edx, dword [edx + 4]
lea ecx, [edi + 1]
cmp dword [esi + 0x70], eax
jg 0x101b240a
xor ebx, ebx
push ebx
push ecx
push edx
push 5
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101b2433
lea ebx, [eax + 1]
mov dword [esi + 0x6c], ebx
mov ebx, dword [esi + 0x68]
lea eax, [eax + eax*2]
lea eax, [ebx + eax*8]
xor ebx, ebx
mov word [eax + 2], bx
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov word [eax], 5
mov dword [eax + 0x14], ebx
mov eax, dword [esi + 0x6c]
cmp eax, ebx
mov ebx, dword [ebp + 8]
jle 0x101b244d
mov edx, dword [esi + 0x68]
lea ecx, [eax + eax*2]
mov eax, 3
mov word [edx + ecx*8 - 0x16], ax
mov ecx, dword [esi + 0x6c]
test edi, edi
jns 0x101b2457
lea edi, [ecx - 1]
mov edx, dword [esi]
cmp byte [edx + 0x51], 0
je 0x101b2466
mov eax, 0x10299328
jmp 0x101b246f
mov edx, dword [esi + 0x68]
lea eax, [edi + edi*2]
lea eax, [edx + eax*8]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x30]
test ecx, ecx
je 0x101b248e
mov al, byte [ebx + 0x13]
cmp al, 8
jae 0x101b248e
movzx eax, al
mov dword [ebx + eax*4 + 0x94], ecx
inc byte [ebx + 0x13]
mov eax, dword [esp + 0x4c]
mov ecx, dword [esi + 0x6c]
test eax, eax
jns 0x101b249c
lea eax, [ecx - 1]
mov edx, dword [esi]
cmp byte [edx + 0x51], 0
je 0x101b24ab
mov eax, 0x10299328
jmp 0x101b24b4
mov edx, dword [esi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
mov dword [eax + 8], ecx
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x101b24ce
push eax
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
push ecx
call fcn.10143ba0
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret