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

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xb8
mov r14, qword [rcx + 0x10]
xor r11d, r11d
xor r13b, r13b
mov qword [rsp + 0x80], r11
mov rbp, rdx
mov byte [rsp + 0x100], r13b
mov rsi, rcx
mov dword [rsp + 0x78], r11d
movsxd r10, dword [r14 + 0x90]
mov r12d, r11d
mov dword [rsp + 0x68], r11d
mov qword [rsp + 0xa0], r14
mov dword [rsp + 0x7c], r10d
cmp dword [r14 + 0x94], r10d
jg 0x140165844
xor r9d, r9d
mov dword [rsp + 0x20], r11d
xor r8d, r8d
lea edx, [r11 + 0xf]
mov rcx, r14
call fcn.1400e9000
mov r9, qword [rsp + 0x118]
xor r11d, r11d
mov dword [rsp + 0x7c], eax
jmp 0x14016586c
lea rcx, [r10 + r10*2]
lea eax, [r10 + 1]
mov dword [r14 + 0x90], eax
mov rax, qword [r14 + 0x88]
mov qword [rax + rcx*8], 0xf
mov qword [rax + rcx*8 + 8], r11
mov qword [rax + rcx*8 + 0x10], r11
mov rax, qword [rbp]
mov r15d, r11d
mov rdi, qword [rbp + 0x20]
movabs r10, 0x8000000000000000
mov r8, qword [r9 + 0x60]
mov dword [rsp + 0x48], r11d
mov rdx, qword [rax + 8]
movzx eax, byte [r9 + 0x40]
imul rbx, rax, 0x68
movsxd rax, dword [rbp + 0x14]
mov rbp, r11
add rbx, rdx
mov qword [rsp + 0x90], rdx
imul rax, rax, 0x38
mov rcx, qword [rbx + 0x28]
add rax, rdi
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x50], r8
mov qword [rsp + 0x58], r11
cmp rdi, rax
jae 0x140165c2a
nop dword [rax]
test byte [rdi + 0x12], 2
mov rbx, qword [rdi]
jne 0x140165ac4
movzx r8d, byte [r9 + 0x40]
mov rcx, rbx
call fcn.1401074c0
test eax, eax
je 0x140165aba
test rbx, rbx
je 0x14016591f
mov rcx, qword [rsi]
xor r9d, r9d
xor r8d, r8d
mov rdx, rbx
call fcn.140105960
mov rbp, rax
xor ebx, ebx
jmp 0x140165922
mov rbp, rbx
mov r15, qword [rsi]
test r12, r12
jne 0x14016593a
mov r12, rbp
mov qword [rsp + 0x80], rbp
jmp 0x140165ab0
test rbp, rbp
je 0x140165ab0
mov eax, dword [r12 + 4]
or eax, dword [rbp + 4]
and eax, 0x20000003
cmp eax, 0x20000000
jne 0x140165a2c
cmp byte [rsi + 0x11c], 2
jae 0x140165a2c
mov rdx, r12
mov rcx, rsi
call fcn.1401056f0
mov rdx, rbp
mov rcx, rsi
call fcn.1401056f0
lea rdx, [rsp + 0x70]
mov dword [rsp + 0x70], ebx
lea rcx, [0x140640748]
call fcn.1400bf780
test eax, eax
mov rcx, r15
mov eax, 2
cmove ebx, eax
mov edx, ebx
add rdx, 0x48
call fcn.1400ba0d0
mov qword [rsp + 0x80], rax
mov r12, rax
test rax, rax
je 0x140165ab0
xorps xmm0, xmm0
xor eax, eax
movups xmmword [r12], xmm0
movups xmmword [r12 + 0x10], xmm0
movups xmmword [r12 + 0x20], xmm0
movups xmmword [r12 + 0x30], xmm0
mov qword [r12 + 0x40], rax
mov rax, 0xffffffffffffffff
mov word [r12 + 0x2e], ax
mov byte [r12], 0x9b
test ebx, ebx
jne 0x140165a18
mov eax, dword [rsp + 0x70]
mov ecx, 0x20800800
test eax, eax
mov dword [r12 + 8], eax
mov edx, 0x10800800
cmovne ecx, edx
or dword [r12 + 4], ecx
jmp 0x140165ab0
lea rax, [r12 + 0x48]
mov qword [r12 + 8], rax
mov word [rax], 0x30
jmp 0x140165ab0
mov edx, 0x48
mov rcx, r15
call fcn.1400ba0d0
mov rbx, rax
test rax, rax
je 0x140165a8f
xor eax, eax
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
movups xmmword [rbx + 0x10], xmm0
movups xmmword [rbx + 0x20], xmm0
movups xmmword [rbx + 0x30], xmm0
mov qword [rbx + 0x40], rax
mov rax, 0xffffffffffffffff
mov word [rbx + 0x2e], ax
mov byte [rbx], 0x2c
mov qword [rbx + 0x18], rbp
mov ecx, dword [rbp + 4]
and ecx, 0x400208
mov qword [rbx + 0x10], r12
or ecx, dword [rbx + 4]
mov dword [rbx + 4], ecx
mov eax, dword [r12 + 4]
and eax, 0x400208
or eax, ecx
mov dword [rbx + 4], eax
jmp 0x140165aa5
mov rcx, qword [rsi]
mov rdx, r12
call fcn.140105600
mov rcx, qword [rsi]
mov rdx, rbp
call fcn.140105600
mov r12, rbx
mov qword [rsp + 0x80], rbx
mov rbp, qword [rsp + 0x58]
mov r15d, dword [rsp + 0x48]
mov rax, qword [rsp + 0x40]
mov r8, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x60]
mov edx, dword [rbx + 0x4c]
cmp dword [rdi + 0x1c], edx
jne 0x140165bf8
test byte [rdi + 0x14], 0x82
je 0x140165bf8
movzx ecx, byte [rbx + 0x44]
test cl, 0x58
je 0x140165b11
mov rax, qword [rdi]
mov r8d, dword [rax + 4]
test r8b, 3
je 0x140165bee
cmp dword [rax + 0x30], edx
jne 0x140165bee
test cl, 0x18
je 0x140165b11
test r8b, 2
jne 0x140165bee
mov rax, qword [rsp + 0x110]
test qword [rdi + 0x28], rax
jne 0x140165bee
movsxd rax, dword [rdi + 0x20]
test eax, eax
js 0x140165bee
lea rdx, [rax + rax*2]
mov rax, qword [rbx + 0x28]
mov rcx, qword [rax + 8]
movzx edx, byte [rcx + rdx*8 + 0xc]
mov rcx, qword [rdi]
call fcn.140103d40
test eax, eax
je 0x140165bee
movsxd rcx, dword [rdi + 0x20]
cmp ecx, 0x40
jl 0x140165b65
movabs rbx, 0x8000000000000000
jmp 0x140165b6d
mov ebx, 1
shl rbx, cl
test r13b, r13b
jne 0x140165b9d
mov rax, qword [rsp + 0x88]
lea rcx, [rcx + rcx*2]
lea rdx, str.automatic_index_on__s__s_
mov r9, qword [rax + 8]
mov r8, qword [rax]
mov r9, qword [r9 + rcx*8]
mov ecx, 0x11c
call fcn.1400bd010
mov r13b, 1
test rbp, rbx
jne 0x140165be9
mov rdx, qword [rsp + 0x50]
lea ebp, [r15 + 1]
mov rcx, qword [rsi]
mov r8d, ebp
call fcn.140167720
test eax, eax
jne 0x14016665e
mov r8, qword [rsp + 0x50]
movsxd rcx, r15d
mov r15d, ebp
mov dword [rsp + 0x48], ebp
mov rbp, qword [rsp + 0x58]
mov rax, qword [r8 + 0x48]
or rbp, rbx
mov rbx, qword [rsp + 0x60]
mov qword [rsp + 0x58], rbp
mov qword [rax + rcx*8], rdi
jmp 0x140165bf3
mov rbx, qword [rsp + 0x60]
mov r8, qword [rsp + 0x50]
mov rax, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x90]
add rdi, 0x38
mov r9, qword [rsp + 0x118]
cmp rdi, rax
jb 0x1401658e0
mov rcx, qword [rsp + 0x88]
xor r11d, r11d
movabs r10, 0x8000000000000000
mov word [r8 + 0x3c], r15w
mov word [r8 + 0x18], r15w
mov dword [r8 + 0x38], 0x4241
cmp byte [rcx + 0x3f], 2
jne 0x140165c4b
mov rbp, 0xffffffffffffffff
jmp 0x140165c55
not rbp
or rbp, r10
and rbp, qword [rbx + 0x58]
movsx eax, word [rcx + 0x36]
mov ebx, 0x3f
mov qword [rsp + 0x58], rbp
mov r8d, eax
mov edx, r11d
cmp bx, ax
jl 0x140165c80
mov ebx, eax
test eax, eax
jle 0x140165c9b
nop dword [rax]
nop dword [rax + rax]
mov ecx, r15d
mov eax, edx
inc r15d
bt rbp, rax
cmovae r15d, ecx
inc edx
cmp edx, ebx
jl 0x140165c80
mov dword [rsp + 0x48], r15d
mov rax, qword [rsp + 0x60]
cmp qword [rax + 0x58], 0
jge 0x140165cb3
add r15d, 0xffffffc1
add r15d, r8d
mov dword [rsp + 0x48], r15d
mov rcx, qword [rsi]
lea edi, [r15 + 1]
movsx rbp, di
mov eax, ebp
movsx r13d, di
add eax, r13d
lea edx, [rax*2 + 9]
add edx, ebp
lea eax, [rbp + 0xe]
and edx, 0xfffffff8
lea eax, [rdx + rax*8]
movsxd r15, eax
test rcx, rcx
je 0x140165ceb
mov rdx, r15
call fcn.1400ba0d0
jmp 0x140165cf3
mov rcx, r15
call fcn.1400b9850
mov r12, rax
test rax, rax
je 0x14016665e
mov r8, r15
xor edx, edx
mov rcx, rax
call fcn.1405ed770
mov r9d, dword [rsp + 0x48]
lea rax, [r12 + 0x70]
mov r11, qword [rsp + 0x88]
lea rdx, [rax + rbp*8]
mov qword [r12 + 0x40], rax
xor r10d, r10d
lea eax, [r13 + 1]
mov word [r12 + 0x60], di
mov rdi, qword [rsp + 0x108]
mov r13d, r10d
movsxd rcx, eax
mov qword [r12 + 0x10], rdx
mov word [r12 + 0x5e], r9w
mov qword [rsp + 0x98], r10
lea rax, [rdx + rcx*2]
mov qword [r12 + 8], rax
lea rax, [rax + rbp*2]
mov qword [r12 + 0x38], rax
lea rbp, [0x14063ad94]
mov rax, qword [rsp + 0x50]
mov qword [rax + 0x20], r12
lea rax, str.auto_index
mov qword [r12], rax
mov rax, qword [rsp + 0x40]
mov qword [r12 + 0x18], r11
mov rdi, qword [rdi + 0x20]
cmp rdi, rax
jae 0x140165f60
mov r14, qword [rsp + 0x60]
mov qword [rsp + 0x90], r10
mov qword [rsp + 0x70], r10
nop dword [rax + rax]
mov edx, dword [r14 + 0x4c]
cmp dword [rdi + 0x1c], edx
jne 0x140165f34
test byte [rdi + 0x14], 0x82
je 0x140165f34
movzx ecx, byte [r14 + 0x44]
test cl, 0x58
je 0x140165dff
mov rax, qword [rdi]
mov r8d, dword [rax + 4]
test r8b, 3
je 0x140165f2f
cmp dword [rax + 0x30], edx
mov rax, qword [rsp + 0x40]
jne 0x140165f34
test cl, 0x18
je 0x140165dff
test r8b, 2
jne 0x140165f34
mov rcx, qword [rsp + 0x110]
mov r15d, ebx
test qword [rdi + 0x28], rcx
jne 0x140165f34
movsxd rax, dword [rdi + 0x20]
test eax, eax
js 0x140165f2f
lea rdx, [rax + rax*2]
mov rax, qword [r14 + 0x28]
mov rcx, qword [rax + 8]
movzx edx, byte [rcx + rdx*8 + 0xc]
mov rcx, qword [rdi]
call fcn.140103d40
test eax, eax
je 0x140165f2f
mov ecx, dword [rdi + 0x20]
cmp ecx, 0x40
jl 0x140165e55
movabs rax, 0x8000000000000000
jmp 0x140165e5d
mov eax, 1
shl rax, cl
mov r8, qword [rsp + 0x98]
test r8, rax
jne 0x140165f2f
mov rbp, qword [rdi]
or r8, rax
mov rax, qword [r12 + 8]
mov rdx, qword [rsp + 0x70]
mov qword [rsp + 0x98], r8
mov word [rdx + rax], cx
test dword [rbp + 4], 0x400
je 0x140165e9d
mov rbx, qword [rbp + 0x10]
mov rdx, qword [rbp + 0x18]
jmp 0x140165ea5
mov rbx, qword [rbp + 0x18]
mov rdx, qword [rbp + 0x10]
test dword [rdx + 4], 0x200
jne 0x140165ecc
test rbx, rbx
je 0x140165ebc
test dword [rbx + 4], 0x200
jne 0x140165ec9
mov rcx, rsi
call fcn.140103990
test rax, rax
jne 0x140165ed9
mov rdx, rbx
mov rcx, rsi
call fcn.140103990
test rax, rax
je 0x140165ede
mov rcx, qword [rax]
jmp 0x140165ee5
lea rcx, [0x14063ad94]
mov r8, qword [rsp + 0x90]
inc r13d
mov rax, qword [r12 + 0x40]
mov ebx, r15d
add qword [rsp + 0x70], 2
mov qword [r8 + rax], rcx
add r8, 8
mov rcx, qword [rbp + 0x10]
mov qword [rsp + 0x90], r8
test rcx, rcx
je 0x140165f2f
call fcn.140103540
cmp al, 0x42
mov rax, qword [rsp + 0x40]
je 0x140165f34
mov byte [rsp + 0x100], 1
jmp 0x140165f34
mov rax, qword [rsp + 0x40]
add rdi, 0x38
cmp rdi, rax
jb 0x140165db0
mov r14, qword [rsp + 0xa0]
lea rbp, [0x14063ad94]
mov r9d, dword [rsp + 0x48]
xor r10d, r10d
mov r11, qword [rsp + 0x88]
mov ecx, r10d
test ebx, ebx
jle 0x140165faf
mov r10, qword [rsp + 0x58]
movsxd rax, r13d
lea rdx, [rax*8]
lea r8, [rax + rax]
nop dword [rax + rax]
mov eax, ecx
bt r10, rax
jae 0x140165fa6
mov rax, qword [r12 + 8]
inc r13d
mov word [r8 + rax], cx
add r8, 2
mov rax, qword [r12 + 0x40]
mov qword [rdx + rax], rbp
add rdx, 8
inc ecx
cmp ecx, ebx
jl 0x140165f80
xor r10d, r10d
mov r15, qword [rsp + 0x60]
cmp qword [r15 + 0x58], 0
jge 0x14016600d
mov r8d, 0x3f
cmp r8w, word [r11 + 0x36]
jge 0x14016600d
movsxd rax, r13d
lea rcx, [rax*8]
lea rdx, [rax + rax]
nop word [rax + rax]
mov rax, qword [r12 + 8]
lea rdx, [rdx + 2]
inc r13d
lea rcx, [rcx + 8]
mov word [rdx + rax - 2], r8w
inc r8d
mov rax, qword [r12 + 0x40]
mov qword [rcx + rax - 8], rbp
movsx eax, word [r11 + 0x36]
cmp r8d, eax
jl 0x140165fe0
mov rax, qword [r12 + 8]
mov rdx, 0xffffffffffffffff
movsxd rcx, r13d
mov word [rax + rcx*2], dx
lea edx, [r9 + 1]
mov rax, qword [r12 + 0x40]
mov qword [rax + rcx*8], rbp
mov rbp, qword [rsp + 0x118]
mov eax, dword [rsi + 0x34]
mov dword [rbp + 8], eax
inc dword [rsi + 0x34]
movsxd rcx, dword [r14 + 0x90]
mov r8d, dword [rbp + 8]
cmp dword [r14 + 0x94], ecx
jg 0x140166070
mov r9d, edx
mov dword [rsp + 0x20], r10d
mov edx, 0x74
mov rcx, r14
call fcn.1400e9000
lea rbx, [r14 + 0x88]
jmp 0x1401660a2
lea eax, [rcx + 1]
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
lea rbx, [r14 + 0x88]
mov rax, qword [rbx]
mov dword [rax + rcx*8], 0x74
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], r10
mov rdi, qword [rsi + 0x10]
mov rdx, r12
mov rcx, rsi
call fcn.140123860
mov r8, rax
test rax, rax
je 0x140166103
mov rax, qword [rdi]
cmp byte [rax + 0x67], 0
je 0x1401660e7
cmp qword [rax + 0x2e8], 0
jne 0x1401660de
add dword [r8], 0xffffffff
jne 0x1401660de
mov rcx, qword [r8 + 0x10]
mov rdx, r8
call fcn.1400b9c90
lea rbx, [r14 + 0x88]
jmp 0x140166103
movsxd rax, dword [rdi + 0x90]
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
mov byte [rax + rcx*8 - 0x17], 0xf8
mov qword [rax + rcx*8 - 8], r8
mov rax, qword [rsi]
test dword [rax + 0x60], 0x80000
jne 0x140166166
cmp byte [rsp + 0x100], 0
je 0x140166166
mov rax, qword [rsp + 0x108]
mov r8, rbp
mov rcx, rsi
mov rdx, qword [rax]
call fcn.14015b750
inc dword [rsi + 0x38]
xor r9d, r9d
mov edx, dword [rsi + 0x38]
mov dword [rbp + 0x34], edx
movsxd rcx, dword [r14 + 0x90]
cmp dword [r14 + 0x94], ecx
jg 0x1401661ad
mov dword [rsp + 0x20], r9d
mov r8d, 0x2710
mov r9d, edx
mov rcx, r14
mov edx, 0x4d
call fcn.1400e9000
xor r9d, r9d
test byte [r15 + 0x48], 0x20
je 0x1401662a7
movsxd r8, dword [r14 + 0x90]
mov ebp, dword [r15 + 0x3c]
mov dword [rsp + 0x68], r8d
cmp dword [r14 + 0x94], r8d
jg 0x1401661dd
mov dword [rsp + 0x20], r9d
xor r8d, r8d
xor r9d, r9d
mov rcx, r14
lea edx, [r9 + 0x47]
call fcn.1400e9000
mov dword [rsp + 0x68], eax
xor r9d, r9d
jmp 0x140166205
lea eax, [rcx + 1]
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx]
mov dword [rax + rcx*8], 0x4d
mov dword [rax + rcx*8 + 4], 0x2710
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
jmp 0x140166169
lea rcx, [r8 + r8*2]
lea eax, [r8 + 1]
mov dword [r14 + 0x90], eax
mov rax, qword [rbx]
mov qword [rax + rcx*8], 0x47
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], r9
movsxd rcx, dword [r14 + 0x90]
mov edx, dword [r15 + 0x38]
cmp dword [r14 + 0x94], ecx
jg 0x140166234
xor r9d, r9d
mov dword [rsp + 0x20], edx
mov r8d, ebp
mov rcx, r14
lea edx, [r9 + 0xb]
call fcn.1400e9000
xor r9d, r9d
jmp 0x14016625e
lea eax, [rcx + 1]
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx]
mov dword [rax + rcx*8], 0xb
mov dword [rax + rcx*8 + 4], ebp
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r9
movsxd rdi, dword [r14 + 0x90]
cmp dword [r14 + 0x94], edi
jg 0x140166289
mov dword [rsp + 0x20], r9d
mov r8d, ebp
xor r9d, r9d
mov rcx, r14
lea edx, [r9 + 0xc]
call fcn.1400e9000
mov edi, eax
jmp 0x1401662ff
lea eax, [rdi + 1]
mov dword [r14 + 0x90], eax
lea rcx, [rdi + rdi*2]
mov rax, qword [rbx]
mov dword [rax + rcx*8], 0xc
mov dword [rax + rcx*8 + 4], ebp
jmp 0x1401662f1
movsxd rdi, dword [r14 + 0x90]
mov edx, dword [rbp + 4]
cmp dword [r14 + 0x94], edi
jg 0x1401662d5
mov dword [rsp + 0x20], r9d
mov r8d, edx
xor r9d, r9d
mov rcx, r14
lea edx, [r9 + 0x24]
call fcn.1400e9000
mov edi, eax
jmp 0x1401662ff
lea eax, [rdi + 1]
mov dword [r14 + 0x90], eax
lea rcx, [rdi + rdi*2]
mov rax, qword [rbx]
mov dword [rax + rcx*8], 0x24
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 0x10], r9
mov qword [rax + rcx*8 + 8], 0
mov r15, qword [rsp + 0x80]
mov eax, 0x10
test r15, r15
je 0x140166337
dec dword [rsi + 0x44]
mov r9d, eax
mov r8d, dword [rsi + 0x44]
mov rdx, r15
mov rcx, rsi
mov dword [rsp + 0x78], r8d
call fcn.14010df20
mov rax, qword [rsp + 0x50]
or dword [rax + 0x38], 0x20000
movzx eax, byte [rsi + 0x1f]
test al, al
jne 0x140166347
inc dword [rsi + 0x38]
mov ebp, dword [rsi + 0x38]
jmp 0x140166356
dec al
movzx eax, al
mov byte [rsi + 0x1f], al
mov ebp, dword [rsi + rax*4 + 0xd0]
mov rax, qword [rsp + 0x118]
xor r9d, r9d
mov dword [rsp + 0x38], r9d
mov rdx, r12
mov qword [rsp + 0x30], r9
mov rcx, rsi
mov qword [rsp + 0x28], r9
mov r8d, dword [rax + 4]
mov dword [rsp + 0x20], r9d
mov r9d, ebp
call fcn.140126c40
mov r12d, eax
mov rax, qword [rsp + 0x118]
mov edx, dword [rax + 0x34]
test edx, edx
je 0x1401663d0
mov rax, qword [rsp + 0x50]
movsxd rcx, dword [r14 + 0x90]
movzx r8d, word [rax + 0x18]
cmp dword [r14 + 0x94], ecx
jg 0x140166408
mov dword [rsp + 0x28], r8d
xor r9d, r9d
mov r8d, edx
mov dword [rsp + 0x20], r12d
mov edx, 0xb4
mov rcx, r14
call fcn.1400e9060
xor r9d, r9d
mov rdx, qword [rsp + 0x118]
movsxd rcx, dword [r14 + 0x90]
mov edx, dword [rdx + 8]
cmp dword [r14 + 0x94], ecx
jg 0x140166438
mov dword [rsp + 0x20], r9d
mov r8d, edx
mov r9d, ebp
mov edx, 0x8a
mov rcx, r14
call fcn.1400e9000
jmp 0x140166462
lea eax, [rcx + 1]
xor r9d, r9d
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx]
mov dword [rax + rcx*8], 0xfdb4
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], r12d
mov dword [rax + rcx*8 + 0x10], r8d
jmp 0x1401663d3
lea eax, [rcx + 1]
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx]
mov dword [rax + rcx*8], 0x8a
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], ebp
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
movsxd rdx, dword [r14 + 0x90]
test edx, edx
jle 0x140166485
mov rax, qword [rbx]
lea rcx, [rdx + rdx*2]
mov edx, 0x10
mov word [rax + rcx*8 - 0x16], dx
mov edx, dword [r14 + 0x90]
test r15, r15
je 0x1401664b8
mov r9, qword [r14 + 0x18]
mov ecx, dword [rsp + 0x78]
not ecx
mov eax, dword [r9 + 0x48]
add eax, dword [r9 + 0x44]
jns 0x1401664ae
mov r8d, ecx
mov rdx, r14
mov rcx, r9
call fcn.1400e9d00
jmp 0x1401664b8
mov rax, qword [r9 + 0x50]
movsxd rcx, ecx
mov dword [rax + rcx*4], edx
mov rax, qword [rsp + 0x60]
lea r15, [0x140a82498]
test byte [rax + 0x48], 0x20
je 0x14016657e
mov rax, qword [r14]
cmp byte [rax + 0x67], 0
je 0x1401664dc
mov rcx, r15
jmp 0x1401664ec
movsxd rax, dword [rsp + 0x68]
lea rcx, [rax + rax*2]
mov rax, qword [rbx]
lea rcx, [rax + rcx*8]
lea eax, [r12 + r13]
mov edx, edi
mov r13, qword [rsp + 0x60]
mov dword [rcx + 8], eax
mov rcx, qword [rsp + 0x118]
mov r9d, dword [r13 + 0x40]
mov eax, dword [rcx + 8]
mov r8d, dword [rcx + 4]
mov rcx, rsi
mov dword [rsp + 0x20], eax
call fcn.140165640
movsxd rcx, dword [r14 + 0x90]
xor r9d, r9d
cmp dword [r14 + 0x94], ecx
jg 0x14016654d
xor r8d, r8d
mov dword [rsp + 0x20], r9d
mov r9d, edi
mov rcx, r14
lea edx, [r8 + 9]
call fcn.1400e9000
and dword [r13 + 0x48], 0xffffffdf
jmp 0x1401665fe
lea eax, [rcx + 1]
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx]
mov qword [rax + rcx*8], 9
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
and dword [r13 + 0x48], 0xffffffdf
jmp 0x1401665fe
mov rax, qword [rsp + 0x118]
lea edx, [rdi + 1]
movsxd rcx, dword [r14 + 0x90]
xor r9d, r9d
mov r8d, dword [rax + 4]
cmp dword [r14 + 0x94], ecx
jg 0x1401665b7
mov dword [rsp + 0x20], r9d
mov rcx, r14
mov r9d, edx
mov edx, 0x27
call fcn.1400e9000
jmp 0x1401665e2
lea eax, [rcx + 1]
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx]
mov dword [rax + rcx*8], 0x27
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
movsxd rax, dword [r14 + 0x90]
test eax, eax
jle 0x1401665fe
lea rcx, [rax + rax*2]
mov edx, 3
mov rax, qword [rbx]
mov word [rax + rcx*8 - 0x16], dx
mov rax, qword [r14]
mov edx, dword [r14 + 0x90]
cmp byte [rax + 0x67], 0
je 0x140166613
mov rax, r15
jmp 0x140166621
movsxd rax, edi
lea rcx, [rax + rax*2]
mov rax, qword [rbx]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
test ebp, ebp
je 0x14016663a
movzx eax, byte [rsi + 0x1f]
cmp al, 8
jae 0x14016663a
mov dword [rsi + rax*4 + 0xd0], ebp
inc byte [rsi + 0x1f]
mov rax, qword [r14]
mov edx, dword [r14 + 0x90]
cmp byte [rax + 0x67], 0
jne 0x14016665a
movsxd rax, dword [rsp + 0x7c]
lea rcx, [rax + rax*2]
mov rax, qword [rbx]
lea r15, [rax + rcx*8]
mov dword [r15 + 8], edx
mov rdx, qword [rsp + 0x80]
test rdx, rdx
je 0x140166673
mov rcx, qword [rsi]
call fcn.140105600
add rsp, 0xb8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret