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

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x1f0
mov rax, qword [0x1400f7080]
xor rax, rsp
mov qword [rsp + 0x1e0], rax
mov rsi, qword [rcx]
lea rax, [rcx + 0x60]
movsxd r13, edx
lea r11, [rcx + 0x390]
mov rbx, rcx
mov qword [rsp + 0x110], r8
mov rdi, r8
mov qword [rsp + 0x108], rax
mov rax, qword [rsi]
xor ebp, ebp
mov r14, qword [rsi + 0x10]
mov edx, ebp
mov r15, qword [rbx + 8]
imul r8, r13, 0x58
add r15, 8
mov qword [rsp + 0xc0], rax
add r11, r8
mov qword [rsp + 0xa8], rcx
movsxd r8, dword [rbx + 0x288]
lea r12d, [rbp + 1]
mov dword [rsp + 0xf8], r13d
mov qword [rsp + 0xd8], rsi
movzx eax, byte [r11 + 0x2c]
mov r9, qword [r11 + 0x48]
imul rcx, rax, 0x78
mov qword [rsp + 0xe8], r14
add r15, rcx
mov qword [rsp + 0x48], r11
mov qword [rsp + 0xa0], r9
mov r10d, dword [r15 + 0x48]
mov dword [rsp + 0x40], r10d
test r8, r8
jle 0x14008a888
mov ecx, ebp
lea rax, [rbx + 0x28c]
cmp dword [rax], r10d
je 0x14008a9d1
inc edx
inc rcx
add rax, 4
cmp rcx, r8
jl 0x14008a871
mov rax, rbp
not rax
mov ecx, r13d
and rax, rdi
mov qword [r11 + 0x50], rax
mov r12, qword [rbx + 0x50]
shr r12, cl
and r12d, 1
test byte [r9 + 0x28], 0x40
mov qword [rsp + 0x90], r12
je 0x14008a8c3
test byte [rbx + 0x38], 0x20
mov dword [rsp + 0x88], 1
je 0x14008a8ca
mov dword [rsp + 0x88], ebp
mov rbx, qword [r14 + 0x18]
movsxd rdi, dword [rbx + 0x54]
lea eax, [rdi + 1]
mov dword [rbx + 0x54], eax
lea eax, [rdi - 1]
test edi, eax
jne 0x14008a902
mov rdx, qword [rbx + 0x58]
lea eax, [rdi*2 + 1]
mov rcx, qword [rbx]
movsxd r8, eax
shl r8, 2
call fcn.1400159c0
mov r11, qword [rsp + 0x48]
mov qword [rbx + 0x58], rax
mov rcx, qword [rbx + 0x58]
mov edx, 0xffffffff
test rcx, rcx
je 0x14008a913
mov dword [rcx + rdi*4], edx
not edi
mov dword [r11 + 0x10], edi
mov dword [r11 + 0xc], edi
mov rbx, qword [r14 + 0x18]
mov r8d, dword [rbx + 0x54]
mov dword [rsp + 0x98], r8d
lea eax, [r8 + 1]
mov dword [rbx + 0x54], eax
lea eax, [r8 - 1]
test r8d, eax
jne 0x14008a96e
mov rdx, qword [rbx + 0x58]
lea eax, [r8*2 + 1]
mov rcx, qword [rbx]
movsxd r8, eax
shl r8, 2
call fcn.1400159c0
mov r11, qword [rsp + 0x48]
mov edx, 0xffffffff
mov r8d, dword [rsp + 0x98]
mov qword [rbx + 0x58], rax
mov rcx, qword [rbx + 0x58]
test rcx, rcx
je 0x14008a97d
movsxd rax, r8d
mov dword [rcx + rax*4], edx
not r8d
mov dword [rsp + 0x98], r8d
mov dword [r11 + 0x18], r8d
cmp byte [r11 + 0x2c], bpl
jbe 0x14008aa05
test byte [r15 + 0x3c], 8
je 0x14008aa05
mov edx, dword [rsi + 0x38]
inc edx
mov dword [rsi + 0x38], edx
mov dword [r11], edx
mov rax, qword [r14 + 0x18]
movsxd rcx, dword [r14 + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14008a9de
xor r8d, r8d
mov dword [rsp + 0x20], ebp
mov r9d, edx
mov rcx, r14
lea edx, [r8 + 0x4d]
call fcn.140036ff0
mov r11, qword [rsp + 0x48]
jmp 0x14008aa05
mov ecx, edx
mov rax, r12
shl rax, cl
jmp 0x14008a88b
lea eax, [rcx + 1]
mov dword [r14 + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x68]
mov qword [rax + rcx*8], 0x4d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rbx, qword [rsp + 0xa8]
mov edx, r13d
test r13d, r13d
jle 0x14008aa36
nop word [rax + rax]
movsxd rax, edx
imul rcx, rax, 0x58
cmp dword [rcx + rbx + 0x390], ebp
jne 0x14008aa36
dec edx
test edx, edx
jg 0x14008aa20
mov r8d, dword [r15 + 0x40]
mov r10d, 0x10
movsxd rax, edx
imul rcx, rax, 0x58
mov r9d, dword [rcx + rbx + 0x39c]
test r10b, r8b
je 0x14008ab2f
mov rax, qword [r14 + 0x18]
movsxd rcx, dword [r14 + 0xb8]
mov ebx, dword [r15 + 0x34]
mov edx, dword [r15 + 0x30]
cmp dword [rax + 0x3c], ecx
jg 0x14008aa8e
mov dword [rsp + 0x20], edx
xor r9d, r9d
lea edx, [r10 - 1]
mov r8d, ebx
mov rcx, r14
call fcn.140036ff0
mov r10d, 0x10
jmp 0x14008aab8
lea eax, [rcx + 1]
mov dword [r14 + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x68]
mov dword [rax + rcx*8], 0xf
mov dword [rax + rcx*8 + 4], ebx
mov dword [rax + rcx*8 + 8], ebp
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [r14 + 0x18]
movsxd rdx, dword [r14 + 0xb8]
cmp dword [rax + 0x3c], edx
jg 0x14008aaf2
mov r9d, edi
mov dword [rsp + 0x20], ebp
mov r8d, ebx
mov edx, r10d
mov rcx, r14
call fcn.140036ff0
mov r11, qword [rsp + 0x48]
mov edx, eax
mov dword [r11 + 0x34], eax
mov byte [r11 + 0x2d], 0xd
jmp 0x14008c8da
mov r11, qword [rsp + 0x48]
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [r14 + 0xb8], eax
mov rax, qword [r14 + 0x68]
mov dword [rax + rcx*8], 0x10
mov dword [rax + rcx*8 + 4], ebx
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov dword [r11 + 0x34], edx
mov byte [r11 + 0x2d], 0xd
jmp 0x14008c8da
mov r10, qword [rsp + 0xa0]
mov eax, 0x400
mov edx, dword [r10 + 0x28]
test eax, edx
je 0x14008b039
movzx r15d, word [r10 + 0x2c]
inc dword [rsi + 0x4c]
lea ecx, [r15 + 2]
cmp ecx, 1
jne 0x14008ab82
movzx eax, byte [rsi + 0x1f]
test al, al
jne 0x14008ab6d
inc dword [rsi + 0x38]
mov eax, dword [rsi + 0x38]
mov dword [rsp + 0x58], eax
jmp 0x14008abaf
dec al
movzx eax, al
mov byte [rsi + 0x1f], al
mov eax, dword [rsi + rax*4 + 0x18c]
mov dword [rsp + 0x58], eax
jmp 0x14008abaf
mov edx, dword [rsi + 0x28]
mov r8d, dword [rsi + 0x2c]
mov dword [rsp + 0x58], r8d
cmp ecx, edx
jg 0x14008aba0
lea eax, [rcx + r8]
sub edx, ecx
mov dword [rsi + 0x2c], eax
mov dword [rsi + 0x28], edx
jmp 0x14008abaf
mov eax, dword [rsi + 0x38]
lea edx, [rax + 1]
add eax, ecx
mov dword [rsi + 0x38], eax
mov dword [rsp + 0x58], edx
mov r13d, dword [r11 + 0xc]
mov ebx, ebp
test r15d, r15d
je 0x14008ac4b
mov r12d, dword [rsp + 0x58]
mov rdi, rbp
mov r14, qword [rsp + 0x90]
add r12d, 2
mov ebp, 1
nop word [rax + rax]
mov rax, qword [r10 + 0x38]
mov rdx, qword [rdi + rax]
test rdx, rdx
je 0x14008ac36
lea r8d, [rbx + r12]
mov rcx, rsi
test byte [rdx + 0x14], bpl
je 0x14008ac1a
mov dword [rsp + 0x28], r8d
mov r9d, ebx
mov r8, r11
mov dword [rsp + 0x20], r14d
call fcn.1400897a0
mov r11, qword [rsp + 0x48]
mov r13d, dword [r11 + 0x10]
jmp 0x14008ac2e
mov rdx, qword [rdx]
mov r9d, ebp
mov rdx, qword [rdx + 0x18]
call fcn.14008a6d0
mov r11, qword [rsp + 0x48]
mov r10, qword [rsp + 0xa0]
inc ebx
add rdi, 8
cmp ebx, r15d
jl 0x14008abe0
mov r14, qword [rsp + 0xe8]
xor ebp, ebp
mov rax, qword [r14 + 0x18]
movsxd rcx, dword [r14 + 0xb8]
mov edx, dword [r10 + 0x18]
mov ebx, dword [rsp + 0x58]
cmp dword [rax + 0x3c], ecx
jg 0x14008ac7c
mov r8d, edx
mov dword [rsp + 0x20], ebp
mov edx, 0x4d
mov r9d, ebx
mov rcx, r14
call fcn.140036ff0
jmp 0x14008aca6
lea eax, [rcx + 1]
mov dword [r14 + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x68]
mov dword [rax + rcx*8], 0x4d
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [r14 + 0x18]
lea edx, [rbx + 1]
movsxd rcx, dword [r14 + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14008acd2
mov r9d, edx
mov dword [rsp + 0x20], ebp
mov edx, 0x4d
mov r8d, r15d
mov rcx, r14
call fcn.140036ff0
jmp 0x14008acfd
lea eax, [rcx + 1]
mov dword [r14 + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x68]
mov dword [rax + rcx*8], 0x4d
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rdi, qword [rsp + 0xa0]
mov eax, ebp
mov r9d, r13d
mov edx, 0xb
mov rcx, r14
cmp byte [rdi + 0x1c], 0
setne al
add eax, 0xfffffffe
mov dword [rsp + 0x30], eax
mov rax, qword [rdi + 0x20]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ebx
mov ebx, dword [rsp + 0x40]
mov r8d, ebx
call fcn.1400374e0
mov r11, qword [rsp + 0x48]
lea r12d, [r15 - 1]
mov r10, qword [rsp + 0xa8]
mov eax, 0x47
mov byte [rdi + 0x1c], 0
mov ecx, 0xa2
mov dword [r11 + 0x30], ebx
cmp byte [r10 + 0x3d], 0
cmovne eax, ecx
mov byte [r11 + 0x2d], al
mov eax, dword [r14 + 0xb8]
mov dword [r11 + 0x34], eax
test r12d, r12d
js 0x14008b02c
movsxd rax, dword [r11 + 0x38]
lea r15, [r15*8 - 8]
lea r13, [rax + rax*2]
shl r13, 2
mov rbx, qword [rdi + 0x38]
mov rbx, qword [r15 + rbx]
cmp r12d, 0x10
jge 0x14008ae36
movzx eax, word [rdi + 0x1e]
movzx ecx, r12w
shr ax, cl
test al, 1
je 0x14008ae36
mov edx, ebp
test rbx, rbx
je 0x14008b01e
movzx ecx, word [rbx + 0x12]
test cl, 4
jne 0x14008b01e
cmp dword [r11], 0
je 0x14008ade0
mov rax, qword [rbx]
test byte [rax + 4], 1
je 0x14008b01e
mov rax, qword [rbx + 0x38]
test qword [r11 + 0x50], rax
jne 0x14008b01e
test edx, edx
je 0x14008ae01
mov eax, 0x400
test ax, cx
mov eax, 0x200
jne 0x14008ae06
mov eax, 4
or cx, ax
mov word [rbx + 0x12], cx
movsxd rcx, dword [rbx + 0x18]
test ecx, ecx
js 0x14008b01e
mov rax, qword [rbx + 8]
mov rbx, rcx
shl rbx, 6
add rbx, qword [rax + 0x20]
add byte [rbx + 0x16], 0xff
jne 0x14008b01e
inc edx
jmp 0x14008adc0
test byte [rbx + 0x14], 1
je 0x14008b01e
mov rax, qword [rsp + 0xc0]
cmp byte [rax + 0x55], 0
jne 0x14008aef1
mov rax, qword [r11 + 0x40]
sub r13, 0xc
mov ecx, dword [rax + r13 + 4]
test ecx, ecx
jns 0x14008ae6c
mov ecx, dword [r14 + 0xb8]
dec ecx
mov rax, qword [r14]
cmp byte [rax + 0x55], 0
je 0x14008ae7e
lea rax, [0x1400fbd48]
jmp 0x14008ae8d
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x68]
lea rax, [rax + rcx*8]
mov r10d, dword [rax + 0xc]
mov r9d, dword [rax + 8]
mov r8d, dword [rax + 4]
movzx edx, byte [rax]
mov rax, qword [r14 + 0x18]
movsxd rcx, dword [r14 + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14008aebe
movzx edx, dl
mov rcx, r14
mov dword [rsp + 0x20], r10d
call fcn.140036ff0
jmp 0x14008aef1
lea eax, [rcx + 1]
mov dword [r14 + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x68]
mov byte [rax + rcx*8], dl
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], 0
mov rcx, qword [rsi]
mov edx, 0x48
call fcn.1400157c0
mov rdi, rax
test rax, rax
je 0x14008af37
xor eax, eax
mov qword [rdi], rax
mov qword [rdi + 8], rax
mov qword [rdi + 0x10], rax
mov qword [rdi + 0x18], rax
mov qword [rdi + 0x20], rax
mov qword [rdi + 0x28], rax
mov qword [rdi + 0x30], rax
mov qword [rdi + 0x38], rax
mov qword [rdi + 0x40], rax
mov eax, 0xffffffff
mov word [rdi + 0x32], ax
mov byte [rdi], 0x25
mov rcx, qword [rsi]
xor r9d, r9d
xor r8d, r8d
mov rdx, rdi
call fcn.14004d610
test rdi, rdi
je 0x14008b011
mov rax, qword [rsi]
mov r8d, dword [rax + 0x7c]
cmp dword [rdi + 0x28], r8d
jle 0x14008af6d
lea rdx, str.Expression_tree_is_too_large__maximum_depth__d_
mov rcx, rsi
call fcn.1400184b0
mov rax, qword [rbx]
mov edx, 0x49
mov rbx, qword [rsp + 0xc0]
mov rcx, qword [rax + 0x10]
mov qword [rdi + 0x10], rcx
mov rcx, rbx
call fcn.1400157c0
mov rcx, rax
test rax, rax
je 0x14008afd5
xor eax, eax
mov qword [rcx], rax
mov qword [rcx + 0x10], rax
mov qword [rcx + 0x18], rax
mov qword [rcx + 0x20], rax
mov qword [rcx + 0x28], rax
mov qword [rcx + 0x30], rax
mov qword [rcx + 0x38], rax
mov qword [rcx + 0x40], rax
mov eax, 0xffffffff
mov word [rcx + 0x32], ax
lea rax, [rcx + 0x48]
mov qword [rcx + 8], rax
mov byte [rcx], 0x9d
mov byte [rax], 0
mov eax, 1
mov dword [rcx + 0x28], eax
mov qword [rdi + 0x18], rcx
test rcx, rcx
je 0x14008b002
mov eax, dword [rsp + 0x58]
xor r9d, r9d
add eax, 2
mov rdx, rdi
add eax, r12d
mov dword [rcx + 0x2c], eax
mov rcx, qword [rsp + 0x48]
mov r8d, dword [rcx + 0x18]
mov rcx, rsi
call fcn.140054620
mov rdx, rdi
mov qword [rdi + 0x10], rbp
mov rcx, rbx
call fcn.14004dd40
mov rdi, qword [rsp + 0xa0]
mov r11, qword [rsp + 0x48]
sub r15, 8
sub r12d, 1
jns 0x14008ad90
mov rcx, rsi
call fcn.140052380
jmp 0x14008c8da
test dl, 5
setne cl
bt edx, 8
setb al
test al, cl
je 0x14008b14e
mov rax, qword [r10 + 0x38]
xor r9d, r9d
mov r8, r11
mov rcx, rsi
mov rdx, qword [rax]
inc dword [rsi + 0x38]
mov ebx, dword [rsi + 0x38]
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], r12d
call fcn.1400897a0
mov edi, eax
cmp eax, ebx
je 0x14008b0b4
test ebx, ebx
je 0x14008b0b4
movzx eax, byte [rsi + 0x1f]
cmp al, 8
jae 0x14008b0b4
movzx r8d, byte [rsi + 0x25]
lea rcx, [rsi + 0xc4]
mov edx, ebp
test r8d, r8d
je 0x14008b0a7
cmp dword [rcx + 0xc], ebx
je 0x14008b0ea
inc edx
add rcx, 0x14
cmp edx, r8d
jl 0x14008b097
movzx eax, al
mov dword [rsi + rax*4 + 0x18c], ebx
inc byte [rsi + 0x1f]
mov rcx, qword [rsp + 0x48]
mov rax, qword [r14 + 0x18]
mov r13d, dword [rsp + 0x40]
mov edx, dword [rcx + 0x10]
movsxd rcx, dword [r14 + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14008b0f0
mov r9d, edx
mov dword [rsp + 0x20], edi
mov edx, 0x20
mov r8d, r13d
mov rcx, r14
call fcn.140036ff0
jmp 0x14008b11b
mov byte [rcx + 6], 1
jmp 0x14008b0b4
lea eax, [rcx + 1]
mov dword [r14 + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x68]
mov dword [rax + rcx*8], 0x20
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rbp
mov r8d, 1
mov edx, edi
mov rcx, rsi
call fcn.1400522d0
mov r9d, edi
mov edx, r13d
mov rcx, rsi
mov r8d, 0xffffffff
call fcn.140052080
mov r11, qword [rsp + 0x48]
mov byte [r11 + 0x2d], 0xa2
jmp 0x14008c8df
mov eax, edx
and eax, 0x102
cmp eax, 0x102
jne 0x14008b451
mov dword [rsp + 0x70], ebp
mov r12d, 0xa2
mov dword [rsp + 0x64], r12d
mov rbx, rbp
mov rcx, rbp
test dl, 0x20
je 0x14008b189
mov rax, qword [r10 + 0x38]
mov r8d, 8
mov rcx, qword [rax]
jmp 0x14008b18c
mov r8, rbp
test dl, 0x10
je 0x14008b199
mov rax, qword [r10 + 0x38]
mov rbx, qword [r8 + rax]
mov r15, qword [rsp + 0x90]
mov r13, rcx
test r15d, r15d
cmove r13, rbx
cmove rbx, rcx
test rbx, rbx
je 0x14008b32a
mov r15, qword [rbx]
mov dword [rsp + 0x54], 0x1917181a
mov rdx, qword [r15 + 0x18]
movzx eax, byte [rdx]
cmp al, 0x9d
jne 0x14008b1d2
movzx eax, byte [rdx + 0x36]
cmp al, 0x9e
jne 0x14008b1dc
lea rax, [rdx + 0x20]
jmp 0x14008b1e4
cmp al, 0x77
jne 0x14008b236
mov rax, qword [rdx + 0x20]
mov rax, qword [rax]
cmp dword [rax], 1
jle 0x14008b236
movzx eax, byte [rsi + 0x1f]
test al, al
jne 0x14008b1fc
inc dword [rsi + 0x38]
mov ebx, dword [rsi + 0x38]
jmp 0x14008b20b
dec al
movzx eax, al
mov byte [rsi + 0x1f], al
mov ebx, dword [rsi + rax*4 + 0x18c]
mov rdx, qword [r15 + 0x18]
mov r9d, 1
mov r8d, ebx
mov rcx, rsi
call fcn.14008a6d0
movzx eax, byte [r15]
mov r12d, ebx
sub rax, 0x26
or rax, 1
movzx ecx, byte [rsp + rax + 0x54]
jmp 0x14008b266
lea r8, [rsp + 0x88]
mov rcx, rsi
call fcn.140053ab0
mov rcx, qword [rsp + 0x48]
mov rdx, rbx
mov r12d, eax
call fcn.140089510
movzx ecx, byte [r15]
mov ebx, dword [rsp + 0x88]
movzx ecx, byte [rsp + rcx + 0x2e]
mov r8d, dword [rsp + 0x40]
mov r9d, edi
movzx edx, cl
mov rcx, r14
mov dword [rsp + 0x20], r12d
call fcn.140037050
mov r8d, 1
mov edx, r12d
mov rcx, rsi
call fcn.1400522d0
test ebx, ebx
je 0x14008b2cd
movzx r8d, byte [rsi + 0x1f]
cmp r8b, 8
jae 0x14008b2cd
movzx edx, byte [rsi + 0x25]
lea rax, [rsi + 0xc4]
mov ecx, ebp
test edx, edx
je 0x14008b2bf
nop
cmp dword [rax + 0xc], ebx
je 0x14008b324
inc ecx
add rax, 0x14
cmp ecx, edx
jl 0x14008b2b0
movzx eax, r8b
mov dword [rsi + rax*4 + 0x18c], ebx
inc byte [rsi + 0x1f]
mov r15, qword [rsp + 0x90]
mov r12d, 0xa2
test r13, r13
je 0x14008b3af
mov rbx, qword [r13]
mov r9d, 1
inc dword [rsi + 0x38]
mov rcx, rsi
mov eax, dword [rsi + 0x38]
mov r8d, eax
mov dword [rsp + 0x70], eax
mov rdx, qword [rbx + 0x18]
call fcn.14008a6d0
mov rcx, qword [rbx + 0x18]
movzx edx, byte [rcx]
movzx eax, dl
cmp dl, 0x9d
jne 0x14008b31a
movzx eax, byte [rcx + 0x36]
cmp al, 0x9e
jne 0x14008b349
lea rax, [rcx + 0x20]
jmp 0x14008b351
mov byte [rax + 6], 1
jmp 0x14008b2cd
mov r8d, dword [rsp + 0x40]
test r15d, r15d
mov edx, 0x3a
mov eax, 0x35
cmovne edx, eax
mov rcx, r14
call fcn.1400371a0
jmp 0x14008b2db
cmp al, 0x77
jne 0x14008b359
mov rax, qword [rcx + 0x20]
mov rax, qword [rax]
cmp dword [rax], 1
jg 0x14008b371
movzx eax, byte [rbx]
sub al, 0x26
test al, 0xfd
jne 0x14008b371
mov eax, r15d
xor eax, 1
lea eax, [rax*2 + 0x27]
jmp 0x14008b379
lea eax, [r15*2 + 0x26]
mov dword [rsp + 0x64], eax
cmp dl, 0x9d
jne 0x14008b386
movzx edx, byte [rcx + 0x36]
cmp dl, 0x9e
jne 0x14008b391
lea rax, [rcx + 0x20]
jmp 0x14008b39a
cmp dl, 0x77
jne 0x14008b3a2
mov rax, qword [rcx + 0x20]
mov rax, qword [rax]
cmp dword [rax], 1
jg 0x14008b3af
mov rcx, qword [rsp + 0x48]
mov rdx, r13
call fcn.140089510
mov r11, qword [rsp + 0x48]
test r15d, r15d
mov ecx, dword [r14 + 0xb8]
mov r15d, dword [rsp + 0x64]
sete al
mov r13d, dword [rsp + 0x40]
add al, 6
mov byte [r11 + 0x2d], al
mov dword [r11 + 0x30], r13d
mov dword [r11 + 0x34], ecx
cmp r15d, r12d
je 0x14008c8df
inc dword [rsi + 0x38]
mov r8d, r13d
mov ebx, dword [rsi + 0x38]
mov edx, 0x7b
mov r9d, ebx
mov rcx, r14
call fcn.1400371a0
mov r9d, ebx
mov r8d, 0xffffffff
mov edx, r13d
mov rcx, rsi
call fcn.140052080
mov r8d, dword [rsp + 0x70]
mov r9d, edi
mov edx, r15d
mov dword [rsp + 0x20], ebx
mov rcx, r14
call fcn.140037050
movsxd rax, dword [r14 + 0xb8]
mov r11, qword [rsp + 0x48]
test eax, eax
jle 0x14008c8df
lea rcx, [rax + rax*2]
mov edx, 0x53
mov rax, qword [r14 + 0x68]
mov word [rax + rcx*8 - 0x16], dx
jmp 0x14008c8df
mov eax, 0x200
test eax, edx
je 0x14008bd84
mov rcx, qword [rsp + 0x48]
xor r12b, r12b
mov rbx, qword [rsp + 0xa0]
mov r13, rbp
movzx edi, word [r10 + 0x18]
mov r11, rbp
movzx r10d, word [r10 + 0x1a]
mov r9d, ebp
mov ecx, dword [rcx + 8]
movzx r15d, word [rbx + 0x1c]
mov rax, qword [rbx + 0x20]
mov dword [rsp + 0x84], ecx
mov rcx, qword [rsp + 0xa8]
mov word [rsp + 0x58], r10w
mov word [rsp + 0x60], r15w
mov qword [rsp + 0x78], rbp
test byte [rcx + 0x38], 1
mov qword [rsp + 0xc8], rbp
mov byte [rsp + 0x50], r12b
mov byte [rsp + 0x68], bpl
mov qword [rsp + 0xb0], rax
je 0x14008b4e7
cmp byte [rcx + 0x3b], bpl
jle 0x14008b4e7
cmp word [rax + 0x5e], di
jbe 0x14008b4e7
mov r12b, 1
mov r9d, 1
mov byte [rsp + 0x50], r12b
movzx eax, di
mov dword [rsp + 0xb8], eax
mov r8d, eax
test dl, 0x20
je 0x14008b50f
mov rax, qword [rbx + 0x38]
mov r13, qword [rax + r8*8]
inc r8d
movzx eax, r10w
cmp r9d, eax
cmovbe r9d, eax
test dl, 0x10
je 0x14008b5ee
mov rax, qword [rbx + 0x38]
movzx ebx, r15w
cmp r9d, ebx
mov ecx, r8d
cmova ebx, r9d
mov r11, qword [rax + rcx*8]
mov eax, 0x100
mov qword [rsp + 0x78], r11
test word [r11 + 0x12], ax
je 0x14008b5a8
mov r9d, dword [rsi + 0x38]
mov edx, 0x4d
mov rax, qword [rsp + 0x48]
inc r9d
mov dword [rsi + 0x38], r9d
mov rcx, r14
lea r8d, [rdx - 0x4c]
mov dword [rax + 0x24], r9d
call fcn.1400371a0
mov eax, dword [r14 + 0xb8]
mov ecx, ebp
mov r9, qword [rsp + 0x48]
mov r8, qword [rsp + 0xb0]
movzx r10d, word [rsp + 0x58]
mov r11, qword [rsp + 0x78]
shl dword [r9 + 0x24], 1
mov dword [r9 + 0x28], eax
mov rax, qword [r8 + 0x38]
movzx edx, di
cmp byte [rdx + rax], 1
sete cl
xor ecx, dword [rsp + 0x90]
or dword [r9 + 0x24], ecx
jmp 0x14008b5b3
mov r8, qword [rsp + 0xb0]
movzx edx, di
mov r9d, ebx
test r13, r13
jne 0x14008b5ee
mov rax, qword [r8 + 8]
movsx rdx, word [rax + rdx*2]
test edx, edx
js 0x14008b5de
mov rax, qword [r8 + 0x18]
mov rcx, rdx
shl rcx, 5
mov rax, qword [rax + 8]
cmp byte [rax + rcx + 0x18], bpl
je 0x14008b5e3
cmp edx, 0xfffffffe
jne 0x14008b5ee
mov r12b, 1
mov r9d, ebx
mov byte [rsp + 0x50], r12b
mov rax, qword [rsp + 0xb0]
movzx r8d, word [rax + 0x5e]
cmp di, r8w
jae 0x14008b61f
mov rax, qword [rax + 0x38]
mov edx, ebp
movzx ecx, di
cmp byte [rcx + rax], bpl
mov rcx, qword [rsp + 0x90]
sete dl
cmp ecx, edx
je 0x14008b631
jmp 0x14008b627
mov rcx, qword [rsp + 0x90]
test ecx, ecx
je 0x14008b655
cmp r8w, di
jne 0x14008b655
movzx eax, r10b
xor bl, bl
mov qword [rsp + 0x78], r13
mov r13, r11
mov byte [rsp + 0x68], r12b
movzx r12d, ax
mov word [rsp + 0x60], ax
mov word [rsp + 0x58], r15w
jmp 0x14008b660
movzx r12d, word [rsp + 0x60]
movzx ebx, byte [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
lea rax, [rsp + 0xf0]
mov r8d, ecx
mov qword [rsp + 0x20], rax
mov rcx, rsi
call fcn.140089fc0
mov r15, qword [rsp + 0xf0]
mov edx, eax
mov dword [rsp + 0x5c], eax
test r15, r15
je 0x14008b6b5
test r12w, r12w
je 0x14008b6b5
mov rcx, qword [rsp + 0xc0]
movzx edx, di
add rdx, r15
call fcn.140015aa0
mov edx, dword [rsp + 0x5c]
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x54], eax
test r13, r13
je 0x14008b6d8
test byte [r13 + 0x14], 0x28
jne 0x14008b6d8
mov dword [rsp + 0x6c], ebp
mov ecx, 1
jmp 0x14008b6e1
mov ecx, 1
mov dword [rsp + 0x6c], ecx
mov rax, qword [rsp + 0x78]
test rax, rax
je 0x14008b6f8
test byte [rax + 0x14], 0x28
mov dword [rsp + 0x80], ebp
je 0x14008b6ff
mov dword [rsp + 0x80], ecx
test r13, r13
jne 0x14008b745
test di, di
jne 0x14008b745
mov dword [rsp + 0x64], ebp
mov r13d, dword [rsp + 0xb8]
mov r12d, r13d
test bl, bl
je 0x14008b863
xor r8d, r8d
lea r9d, [rdx + r13]
mov rcx, r14
lea edx, [r8 + 0x50]
call fcn.1400371a0
lea r12d, [r13 + 1]
mov dword [rsp + 0x6c], ebp
mov edi, 1
jmp 0x14008b867
mov dword [rsp + 0x64], ecx
movzx ecx, di
mov r12d, ecx
test r13, r13
je 0x14008b70d
mov rax, qword [r13]
lea r8d, [rdx + rcx]
mov rcx, rsi
mov rbx, qword [rax + 0x18]
movzx eax, word [rsp + 0x58]
mov rdx, rbx
mov r9d, eax
mov dword [rsp + 0x70], eax
call fcn.14008a6d0
mov eax, 0x100
test word [r13 + 0x12], ax
je 0x14008b7c7
mov rax, qword [r14]
mov ecx, dword [r14 + 0xb8]
dec ecx
cmp byte [rax + 0x55], bpl
je 0x14008b79e
lea rcx, [0x1400fbd48]
jmp 0x14008b7ad
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x68]
lea rcx, [rax + rcx*8]
mov rdx, qword [rsp + 0x48]
mov eax, dword [rdx + 0x24]
shr eax, 1
mov dword [rcx + 0xc], eax
movzx eax, byte [rdx + 0x24]
and al, 1
movzx eax, al
mov word [rcx + 2], ax
mov rcx, rbx
call fcn.14004f300
test eax, eax
je 0x14008b7f0
mov r8d, dword [rsp + 0x5c]
mov edx, 0x22
mov r9d, dword [rsp + 0x54]
mov rcx, r14
movzx eax, di
add r8d, eax
call fcn.1400371a0
test r15, r15
je 0x14008b80c
movzx r8d, di
mov rcx, rbx
mov edi, dword [rsp + 0x70]
add r8, r15
mov edx, edi
call fcn.140089650
jmp 0x14008b810
mov edi, dword [rsp + 0x70]
movzx eax, byte [rbx]
add r12d, edi
cmp al, 0x9d
jne 0x14008b81e
movzx eax, byte [rbx + 0x36]
cmp al, 0x9e
jne 0x14008b828
lea rax, [rbx + 0x20]
jmp 0x14008b830
cmp al, 0x77
jne 0x14008b84c
mov rax, qword [rbx + 0x20]
mov rax, qword [rax]
cmp dword [rax], 1
jle 0x14008b84c
mov r13d, dword [rsp + 0xb8]
xor bl, bl
mov dword [rsp + 0x6c], 1
jmp 0x14008b863
mov rcx, qword [rsp + 0x48]
mov rdx, r13
call fcn.140089510
mov r13d, dword [rsp + 0xb8]
xor bl, bl
mov edi, dword [rsp + 0x64]
mov edx, dword [rsp + 0x5c]
mov r8d, r12d
movzx eax, bl
mov r9, r15
sub r8d, eax
mov rcx, rsi
call fcn.1400895b0
mov r9, qword [rsp + 0xa0]
lea rbx, [0x140000000]
movzx eax, word [r9 + 0x2e]
test ax, ax
je 0x14008b8a0
movzx eax, ax
cmp r12d, eax
je 0x14008b8de
mov rcx, qword [rsp + 0x90]
mov eax, dword [rsp + 0x6c]
mov r9d, dword [rsp + 0x54]
mov r8d, dword [rsp + 0x84]
mov dword [rsp + 0x28], r12d
lea eax, [rax + rdi*2]
mov edi, dword [rsp + 0x5c]
lea ecx, [rcx + rax*2]
mov dword [rsp + 0x20], edi
movzx edx, byte [rcx + rbx + 0xe3ce0]
mov rcx, r14
call fcn.140037810
jmp 0x14008b8e2
mov edi, dword [rsp + 0x5c]
mov rax, qword [rsp + 0x78]
test rax, rax
je 0x14008ba22
mov rax, qword [rax]
lea r12d, [rdi + r13]
mov r8d, 1
mov edx, r12d
mov rcx, rsi
mov rbx, qword [rax + 0x18]
call fcn.1400522d0
movzx edi, word [rsp + 0x60]
mov r8d, r12d
mov r9d, edi
mov rdx, rbx
mov rcx, rsi
call fcn.14008a6d0
mov rax, qword [rsp + 0x78]
mov ecx, 0x100
test word [rax + 0x12], cx
je 0x14008b976
mov rax, qword [r14]
mov ecx, dword [r14 + 0xb8]
dec ecx
cmp byte [rax + 0x55], bpl
je 0x14008b94d
lea rcx, [0x1400fbd48]
jmp 0x14008b95c
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x68]
lea rcx, [rax + rcx*8]
mov rdx, qword [rsp + 0x48]
mov eax, dword [rdx + 0x24]
shr eax, 1
mov dword [rcx + 0xc], eax
movzx eax, byte [rdx + 0x24]
and al, 1
movzx eax, al
mov word [rcx + 2], ax
mov rcx, rbx
call fcn.14004f300
test eax, eax
je 0x14008b997
mov r9d, dword [rsp + 0x54]
mov r8d, r12d
mov edx, 0x22
mov rcx, r14
call fcn.1400371a0
mov rax, qword [rsp + 0xc8]
test rax, rax
je 0x14008b9ca
mov r8, rax
mov edx, edi
mov rcx, rbx
call fcn.140089650
mov rax, qword [rsp + 0xc8]
mov r8d, edi
mov r9, rax
mov edx, r12d
mov rcx, rsi
call fcn.1400895b0
movzx eax, byte [rbx]
add r13d, edi
cmp al, 0x9d
jne 0x14008b9d8
movzx eax, byte [rbx + 0x36]
cmp al, 0x9e
jne 0x14008b9e2
lea rax, [rbx + 0x20]
jmp 0x14008b9ea
cmp al, 0x77
jne 0x14008ba00
mov rax, qword [rbx + 0x20]
mov rax, qword [rax]
cmp dword [rax], 1
jle 0x14008ba00
mov edi, 1
lea rbx, [0x140000000]
jmp 0x14008ba4a
mov r12, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x78]
mov rcx, r12
call fcn.140089510
mov edi, dword [rsp + 0x80]
lea rbx, [0x140000000]
jmp 0x14008ba4f
cmp byte [rsp + 0x68], bpl
je 0x14008ba43
xor r8d, r8d
lea r9d, [rdi + r13]
mov rcx, r14
lea edx, [r8 + 0x50]
call fcn.1400371a0
inc r13d
mov edi, ebp
jmp 0x14008ba4a
mov edi, dword [rsp + 0x80]
mov r12, qword [rsp + 0x48]
mov r8, qword [rsp + 0xc0]
test r15, r15
je 0x14008bab3
test r8, r8
je 0x14008baa3
cmp qword [r8 + 0x298], rbp
je 0x14008ba77
mov rdx, r15
mov rcx, r8
call fcn.140015440
jmp 0x14008baab
cmp r15, qword [r8 + 0x180]
jb 0x14008baa3
cmp r15, qword [r8 + 0x188]
jae 0x14008baa3
mov rax, qword [r8 + 0x178]
mov qword [r15], rax
dec dword [r8 + 0x160]
mov qword [r8 + 0x178], r15
jmp 0x14008bab3
mov rcx, r15
call fcn.1400153d0
mov r8, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0xc8]
test rcx, rcx
je 0x14008bb0c
test r8, r8
je 0x14008bb07
cmp qword [r8 + 0x298], rbp
je 0x14008badb
mov rdx, rcx
mov rcx, r8
call fcn.140015440
jmp 0x14008bb0c
cmp rcx, qword [r8 + 0x180]
jb 0x14008bb07
cmp rcx, qword [r8 + 0x188]
jae 0x14008bb07
mov rax, qword [r8 + 0x178]
mov qword [rcx], rax
dec dword [r8 + 0x160]
mov qword [r8 + 0x178], rcx
jmp 0x14008bb0c
call fcn.1400153d0
mov eax, dword [r14 + 0xb8]
mov dword [r12 + 0x34], eax
mov r12d, dword [rsp + 0x84]
test r13d, r13d
je 0x14008bb55
mov rax, qword [rsp + 0x90]
mov r8d, r12d
mov r9d, dword [rsp + 0x54]
mov rcx, r14
mov dword [rsp + 0x28], r13d
lea eax, [rdi + rax*2]
movzx edx, byte [rax + rbx + 0xe030c]
mov eax, dword [rsp + 0x5c]
mov dword [rsp + 0x20], eax
call fcn.140037810
mov edi, 0x1000
cmp dword [rsp + 0x88], ebp
jne 0x14008bd34
mov rdx, qword [rsp + 0xb0]
mov rbx, qword [rdx + 0x18]
test byte [rbx + 0x40], 0x20
jne 0x14008bc02
mov rcx, qword [rsp + 0xa8]
mov r8d, 0x400
movzx eax, word [rcx + 0x38]
test r8w, ax
jne 0x14008bbb5
test di, ax
je 0x14008bba0
cmp byte [rcx + 0x3d], 1
je 0x14008bbb5
mov r13d, dword [rsp + 0x40]
mov r9d, r12d
mov r8d, r13d
call fcn.14008a530
jmp 0x14008bd39
inc dword [rsi + 0x38]
mov r8d, r12d
mov ebx, dword [rsi + 0x38]
mov edx, 0x81
mov r9d, ebx
mov rcx, r14
call fcn.1400371a0
mov r13d, dword [rsp + 0x40]
mov r9d, ebx
mov r8d, 0xffffffff
mov edx, r13d
mov rcx, rsi
call fcn.140052080
xor r9d, r9d
mov dword [rsp + 0x20], ebx
mov r8d, r13d
mov rcx, r14
lea edx, [r9 + 0x21]
call fcn.140037050
jmp 0x14008bd39
mov r13d, dword [rsp + 0x40]
cmp r13d, r12d
je 0x14008bd39
mov rbx, qword [rbx + 0x10]
test rbx, rbx
je 0x14008bc32
nop dword [rax]
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x14008bc32
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x14008bc20
movzx edx, word [rbx + 0x5e]
mov rcx, rsi
call fcn.1400551f0
mov r15d, eax
mov edi, ebp
movzx eax, word [rbx + 0x5e]
cmp bp, ax
jae 0x14008bd09
mov rsi, qword [rsp + 0xb0]
nop dword [rax + rax]
movzx r8d, word [rsi + 0x60]
mov edx, ebp
test r8d, r8d
je 0x14008bc91
mov rax, qword [rbx + 8]
mov r9, qword [rsi + 8]
movsxd rcx, edi
movzx r10d, word [rax + rcx*2]
nop dword [rax]
movsxd rax, edx
cmp r10w, word [r9 + rax*2]
je 0x14008bc96
inc edx
cmp edx, r8d
jl 0x14008bc80
mov edx, 0xffffffff
mov rax, qword [r14 + 0x18]
movsxd rcx, dword [r14 + 0xb8]
movsx r8d, dx
lea edx, [r15 + rdi]
cmp dword [rax + 0x3c], ecx
jg 0x14008bcc7
mov dword [rsp + 0x20], edx
mov r9d, r8d
mov r8d, r12d
mov edx, 0x62
mov rcx, r14
call fcn.140036ff0
jmp 0x14008bcf3
lea eax, [rcx + 1]
mov dword [r14 + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x68]
mov dword [rax + rcx*8], 0x62
mov dword [rax + rcx*8 + 4], r12d
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rbp
movzx eax, word [rbx + 0x5e]
inc edi
cmp edi, eax
jl 0x14008bc60
mov rsi, qword [rsp + 0xd8]
mov r9d, dword [rsp + 0x98]
mov r8d, r13d
movzx eax, ax
mov edx, 0x1e
mov dword [rsp + 0x28], eax
mov rcx, r14
mov dword [rsp + 0x20], r15d
call fcn.140037810
mov edi, 0x1000
jmp 0x14008bd39
mov r13d, dword [rsp + 0x40]
mov rcx, qword [rsp + 0xa0]
mov r11, qword [rsp + 0x48]
test dword [rcx + 0x28], edi
je 0x14008bd52
mov byte [r11 + 0x2d], 0xa2
jmp 0x14008bd62
cmp dword [rsp + 0x90], ebp
sete al
add al, 6
mov byte [r11 + 0x2d], al
mov dword [r11 + 0x30], r12d
movzx eax, byte [rcx + 0x2a]
and al, 1
mov byte [r11 + 0x2e], al
test byte [rcx + 0x28], 0xf
jne 0x14008c8df
mov byte [r11 + 0x2f], 1
jmp 0x14008c8df
bt edx, 0xd
jae 0x14008c933
mov eax, dword [rsi + 0x34]
mov rcx, r14
inc dword [rsi + 0x38]
mov r12d, dword [rsi + 0x38]
mov dword [rsp + 0x88], eax
inc eax
mov dword [rsi + 0x34], eax
mov qword [rsp + 0xe0], rbp
mov dword [rsp + 0x84], r12d
mov dword [rsp + 0x54], ebp
mov dword [rsp + 0x6c], ebp
call fcn.140037930
mov rdi, qword [rsp + 0x48]
mov r9, qword [rsp + 0xa0]
mov dword [rsp + 0x80], eax
mov rax, qword [r15 + 0x20]
mov dword [rsp + 0x70], ebp
mov rcx, qword [r9 + 0x38]
mov qword [rsp + 0xb0], rbp
mov qword [rsp + 0xc8], rax
mov rcx, qword [rcx]
mov qword [rsp + 0xf0], rcx
mov rcx, qword [rcx + 0x28]
mov qword [rsp + 0xd8], rcx
mov byte [rdi + 0x2d], 0x49
mov dword [rdi + 0x30], r12d
movzx ecx, byte [rbx + 0x3a]
cmp cl, 1
jbe 0x14008bf98
movzx ebx, cl
sub ebx, r13d
dec ebx
movsxd rax, ebx
imul rcx, rax, 0x78
mov rax, qword [rsp + 0xc0]
sub rcx, 0xffffffffffffff80
test rax, rax
je 0x14008be4d
mov rdx, rcx
mov rcx, rax
call fcn.1400157c0
jmp 0x14008be52
call fcn.140014fd0
mov qword [rsp + 0x78], rax
mov r13, rax
test rax, rax
jne 0x14008be6c
mov rax, qword [rsp + 0x110]
jmp 0x14008ccdf
mov r10, qword [rsp + 0xa8]
lea eax, [rbx + 1]
movzx ecx, al
mov dword [r13 + 4], ecx
mov dword [r13], ecx
movups xmm0, xmmword [r15]
movups xmmword [r13 + 8], xmm0
movups xmm1, xmmword [r15 + 0x10]
movups xmmword [r13 + 0x18], xmm1
movups xmm0, xmmword [r15 + 0x20]
movups xmmword [r13 + 0x28], xmm0
movups xmm1, xmmword [r15 + 0x30]
movups xmmword [r13 + 0x38], xmm1
movups xmm0, xmmword [r15 + 0x40]
movups xmmword [r13 + 0x48], xmm0
movups xmm1, xmmword [r15 + 0x50]
movups xmmword [r13 + 0x58], xmm1
movups xmm0, xmmword [r15 + 0x60]
movups xmmword [r13 + 0x68], xmm0
movsd xmm1, qword [r15 + 0x70]
movsd qword [r13 + 0x78], xmm1
mov r10, qword [r10 + 8]
cmp ebx, 1
jl 0x14008bf58
lea rdx, [r13 + 0x80]
mov r9d, ebx
lea r8, [rdi + 0x84]
nop dword [rax]
movzx eax, byte [r8]
lea rdx, [rdx + 0x78]
imul rcx, rax, 0x78
lea r8, [r8 + 0x58]
movups xmm0, xmmword [rcx + r10 + 8]
movups xmmword [rdx - 0x78], xmm0
movups xmm1, xmmword [rcx + r10 + 0x18]
movups xmmword [rdx - 0x68], xmm1
movups xmm0, xmmword [rcx + r10 + 0x28]
movups xmmword [rdx - 0x58], xmm0
movups xmm1, xmmword [rcx + r10 + 0x38]
movups xmmword [rdx - 0x48], xmm1
movups xmm0, xmmword [rcx + r10 + 0x48]
movups xmmword [rdx - 0x38], xmm0
movups xmm1, xmmword [rcx + r10 + 0x58]
movups xmmword [rdx - 0x28], xmm1
movups xmm0, xmmword [rcx + r10 + 0x68]
movups xmmword [rdx - 0x18], xmm0
movsd xmm1, qword [rcx + r10 + 0x78]
movsd qword [rdx - 8], xmm1
sub r9, 1
jne 0x14008bef0
mov rbx, qword [rsp + 0xa8]
mov rax, qword [rsp + 0xc8]
test byte [rbx + 0x38], 0x10
jne 0x14008c005
test byte [rax + 0x40], 0x20
jne 0x14008bfa3
inc dword [rsi + 0x38]
xor r8d, r8d
mov r12d, dword [rsi + 0x38]
mov rcx, r14
mov r9d, r12d
mov dword [rsp + 0x54], r12d
lea edx, [r8 + 0x50]
call fcn.1400371a0
jmp 0x14008bff3
mov r13, qword [rbx + 8]
mov qword [rsp + 0x78], r13
jmp 0x14008bf68
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x14008bfc2
nop dword [rax]
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x14008bfc2
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x14008bfb0
mov r12d, dword [rsi + 0x34]
mov edx, 0x6c
mov r8d, r12d
mov dword [rsp + 0x54], r12d
mov rcx, r14
lea eax, [r12 + 1]
mov dword [rsi + 0x34], eax
movzx r9d, word [rbx + 0x5e]
call fcn.1400371a0
mov rdx, rbx
mov rcx, rsi
call fcn.1400382b0
inc dword [rsi + 0x38]
mov eax, dword [rsi + 0x38]
mov r12d, dword [rsp + 0x84]
mov dword [rsp + 0x6c], eax
movsxd rdx, dword [r14 + 0xb8]
mov rax, qword [r14 + 0x18]
mov dword [rsp + 0xb8], edx
cmp dword [rax + 0x3c], edx
jg 0x14008c03b
xor r8d, r8d
mov dword [rsp + 0x20], ebp
mov r9d, r12d
mov rcx, r14
lea edx, [r8 + 0x4d]
call fcn.140036ff0
mov dword [rsp + 0xb8], eax
jmp 0x14008c063
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [r14 + 0xb8], eax
mov rax, qword [r14 + 0x68]
mov qword [rax + rcx*8], 0x4d
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov r12, qword [rsp + 0x108]
mov eax, dword [r12 + 0x14]
cmp eax, 1
jle 0x14008c1bb
mov ebx, ebp
test eax, eax
jle 0x14008c1bb
mov r15, qword [rsp + 0xf0]
mov rdi, rbp
mov r14, qword [rsp + 0xc0]
mov r8d, 0x1fff
mov r13, rbp
nop
mov rcx, qword [r12 + 0x20]
movsxd rax, ebx
shl rax, 6
add rax, rcx
cmp rax, r15
je 0x14008c0f2
mov rdx, qword [rdi + rcx]
test byte [rdx + 4], 1
jne 0x14008c0f2
test byte [rdi + rcx + 0x12], 6
jne 0x14008c0f2
test word [rdi + rcx + 0x14], r8w
je 0x14008c0f2
xor r9d, r9d
xor r8d, r8d
mov rcx, r14
call fcn.14004dfd0
mov r8, rax
mov rdx, r13
mov rcx, r14
call fcn.14004d910
mov r13, rax
mov r8d, 0x1fff
inc ebx
add rdi, 0x40
cmp ebx, dword [r12 + 0x14]
jl 0x14008c0a0
mov r14, qword [rsp + 0xe8]
test r13, r13
mov qword [rsp + 0xb0], r13
mov r13, qword [rsp + 0x78]
je 0x14008c1ac
mov rcx, qword [rsi]
mov edx, 0x48
call fcn.1400157c0
mov rbx, rax
test rax, rax
je 0x14008c163
xor eax, eax
mov qword [rbx], rax
mov qword [rbx + 8], rax
mov qword [rbx + 0x10], rax
mov qword [rbx + 0x18], rax
mov qword [rbx + 0x20], rax
mov qword [rbx + 0x28], rax
mov qword [rbx + 0x30], rax
mov qword [rbx + 0x38], rax
mov qword [rbx + 0x40], rax
mov eax, 0xffffffff
mov word [rbx + 0x32], ax
mov byte [rbx], 0x1c
mov r9, qword [rsp + 0xb0]
xor r8d, r8d
mov rcx, qword [rsi]
mov rdx, rbx
call fcn.14004d610
test rbx, rbx
je 0x14008c19a
mov rax, qword [rsi]
mov r8d, dword [rax + 0x7c]
cmp dword [rbx + 0x28], r8d
jle 0x14008c19a
lea rdx, str.Expression_tree_is_too_large__maximum_depth__d_
mov rcx, rsi
call fcn.1400184b0
mov rdi, qword [rsp + 0x48]
mov rdx, rbx
mov qword [rsp + 0xb0], rbx
jmp 0x14008c1be
mov rdi, qword [rsp + 0x48]
mov rdx, qword [rsp + 0xb0]
jmp 0x14008c1be
mov rdx, rbp
mov r15, qword [rsp + 0xa8]
mov r10d, 0x400
mov rax, qword [rsp + 0xd8]
mov r12d, ebp
mov dword [rsp + 0x5c], ebp
movzx r9d, word [r15 + 0x38]
and r9w, r10w
or r9w, 0x20
mov word [rsp + 0x58], r9w
cmp dword [rax + 0x14], ebp
jle 0x14008c777
mov r8d, dword [rsp + 0x40]
mov rcx, rbp
mov qword [rsp + 0x100], rcx
nop dword [rax + rax]
mov rax, qword [rax + 0x20]
cmp dword [rcx + rax + 0x1c], r8d
je 0x14008c227
test word [rcx + rax + 0x14], r10w
je 0x14008c741
mov r8, qword [rcx + rax]
mov ebx, ebp
mov dword [rsp + 0x60], ebx
test rdx, rdx
je 0x14008c244
test byte [r8 + 4], 1
jne 0x14008c244
mov qword [rdx + 0x10], r8
mov r8, rdx
mov eax, dword [rsp + 0x88]
mov rdx, r13
mov dword [rsp + 0x30], eax
mov rcx, rsi
mov word [rsp + 0x28], r9w
xor r9d, r9d
mov qword [rsp + 0x20], rbp
call fcn.140094910
mov qword [rsp + 0xd0], rax
mov r15, rax
test rax, rax
je 0x14008c728
movzx ecx, byte [rdi + 0x2c]
lea r8, [rax + 0x390]
mov r9d, dword [rsp + 0xf8]
mov rdx, r13
mov word [rsp + 0x28], bp
mov dword [rsp + 0x20], ecx
mov rcx, rsi
call fcn.140089110
mov rax, qword [rsp + 0xa8]
test byte [rax + 0x38], 0x10
jne 0x14008c614
mov rcx, qword [rsp + 0xd8]
mov ebx, r12d
mov edx, 0xffffffff
mov eax, dword [rcx + 0x14]
dec eax
cmp r12d, eax
mov rax, qword [rsp + 0xc8]
cmove ebx, edx
mov dword [rsp + 0x90], ebx
test byte [rax + 0x40], 0x20
jne 0x14008c328
mov ecx, dword [rsp + 0x6c]
mov r8d, edx
mov r9d, dword [rsp + 0x40]
mov rdx, rax
mov byte [rsp + 0x28], bpl
mov dword [rsp + 0x20], ecx
mov rcx, rsi
call fcn.140052560
mov r8d, dword [rsp + 0x54]
xor r9d, r9d
mov dword [rsp + 0x28], ebx
mov rcx, r14
mov dword [rsp + 0x20], eax
lea edx, [r9 + 0x40]
call fcn.140037810
mov ebx, eax
jmp 0x14008c614
mov rcx, rax
call fcn.14005b760
mov qword [rsp + 0x118], rax
movzx r13d, word [rax + 0x5e]
cmp r13d, 1
jne 0x14008c366
movzx ecx, byte [rsi + 0x1f]
test cl, cl
jne 0x14008c354
inc dword [rsi + 0x38]
mov r15d, dword [rsi + 0x38]
jmp 0x14008c393
dec cl
movzx eax, cl
mov byte [rsi + 0x1f], al
mov r15d, dword [rsi + rax*4 + 0x18c]
jmp 0x14008c393
mov ecx, dword [rsi + 0x28]
mov r15d, dword [rsi + 0x2c]
mov dword [rsp + 0x64], r15d
cmp r13d, ecx
jg 0x14008c386
lea eax, [r15 + r13]
sub ecx, r13d
mov dword [rsi + 0x2c], eax
mov dword [rsi + 0x28], ecx
jmp 0x14008c398
mov eax, dword [rsi + 0x38]
lea r15d, [rax + 1]
add eax, r13d
mov dword [rsi + 0x38], eax
mov dword [rsp + 0x64], r15d
mov rdi, rbp
mov r12, r13
test r13d, r13d
je 0x14008c461
mov r14, qword [rsp + 0x118]
mov ebx, r15d
mov r15d, dword [rsp + 0x40]
mov r13, qword [rsp + 0xc8]
nop
mov rax, qword [r14 + 8]
mov r9d, r15d
mov byte [rsp + 0x28], bpl
mov rdx, r13
mov rcx, rsi
mov dword [rsp + 0x20], ebx
movsx r8d, word [rax + rdi*2]
call fcn.140052560
mov r8d, eax
cmp eax, ebx
je 0x14008c43c
mov r10, qword [rsi + 0x10]
mov rdx, qword [r10 + 0x18]
movsxd rcx, dword [r10 + 0xb8]
cmp dword [rdx + 0x3c], ecx
jg 0x14008c411
mov r9d, ebx
mov dword [rsp + 0x20], ebp
mov edx, 0x56
mov rcx, r10
call fcn.140036ff0
jmp 0x14008c43c
lea eax, [rcx + 1]
mov dword [r10 + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r10 + 0x68]
mov dword [rax + rcx*8], 0x56
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
inc ebx
inc rdi
cmp rdi, r12
jl 0x14008c3c0
mov r14, qword [rsp + 0xe8]
mov r13d, r12d
mov r15d, dword [rsp + 0x64]
mov ebx, dword [rsp + 0x90]
test ebx, ebx
je 0x14008c4ea
movsxd rdx, dword [r14 + 0xb8]
mov rax, qword [r14 + 0x18]
mov r8d, dword [rsp + 0x54]
mov dword [rsp + 0x60], edx
cmp dword [rax + 0x3c], edx
jg 0x14008c49e
xor r9d, r9d
mov dword [rsp + 0x20], r15d
mov rcx, r14
lea edx, [r9 + 0x1f]
call fcn.140036ff0
mov edx, eax
mov dword [rsp + 0x60], eax
jmp 0x14008c4ca
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [r14 + 0xb8], eax
mov rax, qword [r14 + 0x68]
mov dword [rax + rcx*8], 0x1f
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], ebp
mov dword [rax + rcx*8 + 0xc], r15d
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [r14]
cmp byte [rax + 0x55], bpl
jne 0x14008c4e8
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x68]
mov byte [rax + rcx*8 + 1], 0xf5
mov dword [rax + rcx*8 + 0x10], r13d
test ebx, ebx
js 0x14008c58f
mov rax, qword [r14 + 0x18]
movsxd rcx, dword [r14 + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14008c51d
mov eax, dword [rsp + 0x6c]
mov r9d, r13d
mov r8d, r15d
mov dword [rsp + 0x20], eax
mov edx, 0x64
mov rcx, r14
call fcn.140036ff0
jmp 0x14008c54d
mov edx, dword [rsp + 0x6c]
lea eax, [rcx + 1]
mov dword [r14 + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x68]
mov dword [rax + rcx*8], 0x64
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rbp
mov r9d, dword [rsp + 0x6c]
mov edx, 0x7e
mov r8d, dword [rsp + 0x54]
mov rcx, r14
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x20], r15d
call fcn.140037810
test ebx, ebx
je 0x14008c58f
movsxd rax, dword [r14 + 0xb8]
test eax, eax
jle 0x14008c58f
lea rcx, [rax + rax*2]
mov edx, 0x10
mov rax, qword [r14 + 0x68]
mov word [rax + rcx*8 - 0x16], dx
cmp r13d, 1
jne 0x14008c5dd
test r15d, r15d
je 0x14008c5f9
movzx r8d, byte [rsi + 0x1f]
cmp r8b, 8
jae 0x14008c5f9
movzx edx, byte [rsi + 0x25]
lea rax, [rsi + 0xc4]
mov ecx, ebp
test edx, edx
je 0x14008c5c6
cmp dword [rax + 0xc], r15d
je 0x14008c5d7
inc ecx
add rax, 0x14
cmp ecx, edx
jl 0x14008c5b6
movzx eax, r8b
mov dword [rsi + rax*4 + 0x18c], r15d
inc byte [rsi + 0x1f]
jmp 0x14008c5f9
mov byte [rax + 6], 1
jmp 0x14008c5f9
mov r8d, r13d
mov edx, r15d
mov rcx, rsi
call fcn.1400522d0
cmp r13d, dword [rsi + 0x28]
jle 0x14008c5f9
mov dword [rsi + 0x28], r13d
mov dword [rsi + 0x2c], r15d
mov r13, qword [rsp + 0x78]
mov r12d, dword [rsp + 0x5c]
mov r15, qword [rsp + 0xd0]
mov ebx, dword [rsp + 0x60]
mov rdi, qword [rsp + 0x48]
mov rax, qword [r14 + 0x18]
movsxd rcx, dword [r14 + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14008c647
mov r9d, dword [rsp + 0x80]
mov edx, 0xe
mov r8d, dword [rsp + 0x84]
mov rcx, r14
mov dword [rsp + 0x20], ebp
call fcn.140036ff0
jmp 0x14008c67f
mov edx, dword [rsp + 0x84]
lea eax, [rcx + 1]
mov dword [r14 + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x68]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rsp + 0x80]
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8], 0xe
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
test ebx, ebx
je 0x14008c6b5
mov rax, qword [r14]
mov edx, dword [r14 + 0xb8]
cmp byte [rax + 0x55], bpl
je 0x14008c69c
lea rax, [0x1400fbd48]
jmp 0x14008c6b2
lea eax, [rdx - 1]
test ebx, ebx
cmovns eax, ebx
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x68]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
cmp byte [r15 + 0x3e], bpl
mov ecx, 1
mov eax, dword [rsp + 0x70]
mov rdx, qword [r15 + 0x3d8]
cmovne eax, ecx
mov dword [rsp + 0x70], eax
mov eax, 0x200
test dword [rdx + 0x28], eax
je 0x14008c718
test r12d, r12d
je 0x14008c6ed
mov rax, qword [rsp + 0xe0]
cmp qword [rdx + 0x20], rax
jne 0x14008c718
mov rax, qword [rsp + 0xc8]
test byte [rax + 0x40], 0x20
je 0x14008c70a
mov rax, qword [rdx + 0x20]
mov ecx, dword [rax + 0x64]
and cl, 3
cmp cl, 2
je 0x14008c718
mov rbx, qword [rdx + 0x20]
mov qword [rsp + 0xe0], rbx
jmp 0x14008c720
mov qword [rsp + 0xe0], rbp
mov rcx, r15
call fcn.140095700
mov r8d, dword [rsp + 0x40]
mov r10d, 0x400
movzx r9d, word [rsp + 0x58]
mov rcx, qword [rsp + 0x100]
mov rax, qword [rsp + 0xd8]
inc r12d
mov rdx, qword [rsp + 0xb0]
add rcx, 0x40
mov dword [rsp + 0x5c], r12d
mov qword [rsp + 0x100], rcx
cmp r12d, dword [rax + 0x14]
jl 0x14008c210
mov r15, qword [rsp + 0xa8]
mov rax, qword [rsp + 0xe0]
mov qword [rdi + 0x38], rax
test rax, rax
je 0x14008c792
mov eax, dword [rsp + 0x88]
mov dword [rdi + 8], eax
mov rdx, qword [rsp + 0xb0]
mov rbx, qword [rsp + 0xc0]
test rdx, rdx
je 0x14008c7b3
mov rcx, rbx
mov qword [rdx + 0x10], rbp
call fcn.14004dd40
mov rax, qword [r14]
mov edx, dword [r14 + 0xb8]
cmp byte [rax + 0x55], bpl
je 0x14008c7cc
lea rax, [0x1400fbd48]
jmp 0x14008c7e9
mov ecx, dword [rsp + 0xb8]
lea eax, [rdx - 1]
test ecx, ecx
cmovns eax, ecx
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x68]
lea rax, [rax + rcx*8]
mov dword [rax + 4], edx
mov rax, qword [r14 + 0x18]
movsxd rcx, dword [r14 + 0xb8]
mov edx, dword [rdi + 0xc]
cmp dword [rax + 0x3c], ecx
jg 0x14008c817
xor r8d, r8d
mov dword [rsp + 0x20], ebp
mov r9d, edx
mov rcx, r14
lea edx, [r8 + 0xd]
call fcn.140036ff0
jmp 0x14008c83e
lea eax, [rcx + 1]
mov dword [r14 + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x68]
mov qword [rax + rcx*8], 0xd
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [r14 + 0x18]
mov rdx, qword [rax + 0x58]
test rdx, rdx
je 0x14008c864
mov eax, 0xffffffff
sub eax, dword [rsp + 0x80]
movsxd rcx, eax
mov eax, dword [r14 + 0xb8]
mov dword [rdx + rcx*4], eax
cmp byte [r15 + 0x3a], 1
jbe 0x14008c8bf
test r13, r13
je 0x14008c8bf
test rbx, rbx
je 0x14008c8b7
cmp qword [rbx + 0x298], rbp
je 0x14008c88b
mov rdx, r13
mov rcx, rbx
call fcn.140015440
jmp 0x14008c8bf
cmp r13, qword [rbx + 0x180]
jb 0x14008c8b7
cmp r13, qword [rbx + 0x188]
jae 0x14008c8b7
mov rax, qword [rbx + 0x178]
mov qword [r13], rax
dec dword [rbx + 0x160]
mov qword [rbx + 0x178], r13
jmp 0x14008c8bf
mov rcx, r13
call fcn.1400153d0
cmp dword [rsp + 0x70], ebp
jne 0x14008c8d5
mov rdx, qword [rsp + 0xf0]
mov rcx, rdi
call fcn.140089510
mov r11, qword [rsp + 0x48]
mov r13d, dword [rsp + 0x40]
mov r12, qword [rsp + 0x108]
mov r15d, dword [r12 + 0x14]
mov rdi, qword [r12 + 0x20]
test r15d, r15d
jle 0x14008cbd7
mov r13, qword [rsp + 0xa8]
nop dword [rax]
nop word [rax + rax]
movzx ecx, word [rdi + 0x12]
mov ebx, ebp
test cl, 6
jne 0x14008ca5e
mov rax, qword [rdi + 0x38]
test qword [r11 + 0x50], rax
je 0x14008c986
mov byte [r13 + 0x3e], 1
jmp 0x14008ca5e
mov r13d, dword [rsp + 0x40]
test r8b, 0x20
je 0x14008c945
mov byte [r11 + 0x2d], 0xa2
jmp 0x14008c8df
lea rdx, [0x140000000]
mov dword [r11 + 0x30], r13d
movzx eax, byte [r12 + rdx + 0xe26d4]
mov r8d, r13d
movzx edx, byte [r12 + rdx + 0xe0164]
mov rcx, r14
mov byte [r11 + 0x2d], al
call fcn.1400371a0
mov r11, qword [rsp + 0x48]
inc eax
mov dword [r11 + 0x34], eax
mov byte [r11 + 0x2f], 1
jmp 0x14008c8df
cmp dword [r11], 0
mov r12, qword [rdi]
je 0x14008c99b
test byte [r12 + 4], 1
je 0x14008ca5e
mov eax, 0x200
test ax, cx
je 0x14008ca0a
mov edx, dword [r11 + 0x24]
mov r8d, edx
mov rax, qword [r14 + 0x18]
and edx, 1
movsxd rbx, dword [r14 + 0xb8]
add edx, 0x15
shr r8d, 1
cmp dword [rax + 0x3c], ebx
jg 0x14008c9d8
xor r9d, r9d
mov dword [rsp + 0x20], ebp
mov rcx, r14
call fcn.140036ff0
mov ebx, eax
jmp 0x14008ca0a
lea rcx, [rbx + rbx*2]
lea eax, [rbx + 1]
mov dword [r14 + 0xb8], eax
mov rax, qword [r14 + 0x68]
mov byte [rax + rcx*8], dl
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], r8d
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], 0
mov r8d, dword [rsp + 0x98]
mov r9d, 0x10
mov rdx, r12
mov rcx, rsi
call fcn.140054620
test ebx, ebx
je 0x14008ca59
mov rax, qword [r14]
mov edx, dword [r14 + 0xb8]
cmp byte [rax + 0x55], 0
je 0x14008ca40
lea rax, [0x1400fbd48]
jmp 0x14008ca56
lea eax, [rdx - 1]
test ebx, ebx
cmovns eax, ebx
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x68]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
or word [rdi + 0x12], 4
mov r11, qword [rsp + 0x48]
dec r15d
add rdi, 0x40
test r15d, r15d
jg 0x14008c910
mov r12, qword [rsp + 0x108]
mov r13d, dword [rsp + 0x40]
mov r15d, dword [r12 + 0x14]
mov rdi, qword [r12 + 0x20]
test r15d, r15d
jle 0x14008cbd7
add rdi, 0x14
mov r14, r11
nop word [rax + rax]
test byte [rdi - 2], 6
jne 0x14008cbba
movzx eax, word [rdi]
mov edx, 0xb
test al, 0x82
setne cl
bt ax, dx
setb al
test al, cl
je 0x14008cbba
cmp dword [rdi + 8], r13d
jne 0x14008cbba
cmp dword [r14], 0
jne 0x14008cbba
mov r9d, dword [rdi + 0x14]
lea rcx, [rsp + 0x170]
mov r8d, dword [rsp + 0x40]
mov rdx, r12
mov r13, qword [rdi - 0x14]
mov rbx, rbp
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x83
call fcn.14008f500
test rax, rax
je 0x14008cb42
nop dword [rax]
mov rcx, qword [rax + 0x30]
test qword [rsp + 0x110], rcx
jne 0x14008cb30
test rcx, rcx
jne 0x14008cb29
test byte [rax + 0x14], 0x82
jne 0x14008cb45
test rbx, rbx
cmove rbx, rax
lea rcx, [rsp + 0x170]
call fcn.14008f1d0
test rax, rax
jne 0x14008cb10
mov rax, rbx
test rax, rax
je 0x14008cbba
test byte [rax + 0x12], 4
jne 0x14008cbba
mov rax, qword [rax]
lea rdx, [rsp + 0x120]
mov r8d, dword [rsp + 0x98]
mov r9d, 0x10
mov rcx, rsi
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x120], xmm0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x130], xmm1
movups xmm0, xmmword [rax + 0x20]
movaps xmmword [rsp + 0x140], xmm0
movups xmm1, xmmword [rax + 0x30]
movaps xmmword [rsp + 0x150], xmm1
movsd xmm0, qword [rax + 0x40]
movsd qword [rsp + 0x160], xmm0
mov rax, qword [r13 + 0x10]
mov qword [rsp + 0x130], rax
call fcn.140054620
mov r13d, dword [rsp + 0x40]
dec r15d
add rdi, 0x40
test r15d, r15d
jg 0x14008caa0
mov r14, qword [rsp + 0xe8]
mov rdi, qword [rsp + 0x48]
mov r9d, dword [rdi]
test r9d, r9d
je 0x14008ccdb
mov eax, dword [r14 + 0xb8]
mov dword [rdi + 0x1c], eax
mov rax, qword [r14 + 0x18]
movsxd rcx, dword [r14 + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14008cc1b
mov eax, 1
mov dword [rsp + 0x20], ebp
mov r8d, eax
mov rcx, r14
lea edx, [rax + 0x4c]
call fcn.140036ff0
jmp 0x14008cc4a
lea eax, [rcx + 1]
mov dword [r14 + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x68]
mov dword [rax + rcx*8], 0x4d
mov dword [rax + rcx*8 + 4], 1
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
cmp byte [rsi + 0x25], 0
mov r8d, ebp
jbe 0x14008cc8d
lea rdx, [rsi + 0xd0]
nop word [rax + rax]
cmp byte [rdx - 6], 0
je 0x14008cc7d
movzx eax, byte [rsi + 0x1f]
cmp al, 8
jae 0x14008cc7d
movzx ecx, al
mov eax, dword [rdx]
mov dword [rsi + rcx*4 + 0x18c], eax
inc byte [rsi + 0x1f]
movzx eax, byte [rsi + 0x25]
inc r8d
add rdx, 0x14
cmp r8d, eax
jl 0x14008cc60
mov byte [rsi + 0x25], 0
cmp dword [r12 + 0x14], 0
mov rbx, qword [r12 + 0x20]
jle 0x14008ccdb
nop
test byte [rbx + 0x12], 6
jne 0x14008ccce
mov rax, qword [rbx + 0x38]
test qword [rdi + 0x50], rax
jne 0x14008ccce
mov r8d, dword [rsp + 0x98]
mov r9d, 0x10
mov rdx, qword [rbx]
mov rcx, rsi
call fcn.140054620
or word [rbx + 0x12], 4
inc ebp
add rbx, 0x40
cmp ebp, dword [r12 + 0x14]
jl 0x14008cca0
mov rax, qword [rdi + 0x50]
mov rcx, qword [rsp + 0x1e0]
xor rcx, rsp
call fcn.1400a4a60
mov rbx, qword [rsp + 0x240]
add rsp, 0x1f0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret