Function at 0x14008dfd0
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
lea rbp, [rsp - 0xb0]
sub rsp, 0x1b0
mov rax, qword [0x1400e3040]
xor rax, rsp
mov qword [rbp + 0xa0], rax
mov r14, qword [rcx]
lea rax, [rcx + 0x158]
movsxd r11, edx
xor r12d, r12d
mov qword [rbp - 0x70], rax
mov r15, rcx
mov qword [rbp], r8
mov edx, r12d
movsxd r8, dword [rcx + 0x54]
mov r10, qword [r14 + 0x10]
lea r13, [r11 + r11*4]
mov rsi, qword [r14]
shl r13, 4
add r13, rcx
mov dword [rbp - 0x28], r11d
mov qword [rbp - 0x40], rcx
mov qword [rbp - 0x30], r14
mov qword [rsp + 0x48], r10
mov r9, qword [r13 + 0x380]
lea rax, [r13 + 0x340]
mov qword [rbp - 0x38], rax
movzx eax, byte [r13 + 0x364]
imul rdi, rax, 0x78
mov qword [rbp - 0x20], rsi
add rdi, qword [rcx + 8]
mov qword [rsp + 0x70], r13
mov qword [rsp + 0x68], r9
mov ebx, dword [rdi + 0x50]
mov dword [rsp + 0x50], ebx
test r8, r8
jle 0x14008e09e
mov ecx, r12d
lea rax, [r15 + 0x58]
cmp dword [rax], ebx
je 0x14008e197
inc edx
inc rcx
add rax, 4
cmp rcx, r8
jl 0x14008e088
mov rax, r12
mov edx, 1
not rax
mov ecx, r11d
and rax, qword [rbp]
mov qword [r13 + 0x388], rax
mov r15, qword [r15 + 0x28]
shr r15, cl
and r15d, 1
test byte [r9 + 0x28], 0x40
mov qword [rsp + 0x60], r15
je 0x14008e0db
mov rax, qword [rbp - 0x40]
mov dword [rbp - 0x68], edx
test byte [rax + 0x32], 0x20
je 0x14008e0df
mov dword [rbp - 0x68], r12d
mov rcx, r10
call fcn.14002fcf0
mov rcx, qword [rsp + 0x48]
mov ebx, eax
mov dword [rsp + 0x44], eax
mov dword [r13 + 0x350], eax
mov dword [r13 + 0x34c], eax
call fcn.14002fcf0
mov dword [rbp - 0x58], eax
mov dword [r13 + 0x358], eax
cmp byte [r13 + 0x364], r12b
jbe 0x14008e146
test byte [rdi + 0x44], 8
je 0x14008e146
mov r9d, dword [r14 + 0x54]
xor r8d, r8d
mov rcx, qword [rsp + 0x48]
inc r9d
mov dword [r14 + 0x54], r9d
mov dword [r13 + 0x340], r9d
lea edx, [r8 + 0x19]
mov dword [rsp + 0x20], r12d
call fcn.14002fbb0
mov r8d, dword [rdi + 0x48]
test r8b, 4
je 0x14008e1a8
mov ebx, dword [rdi + 0x3c]
xor r9d, r9d
mov eax, dword [rdi + 0x38]
mov r8d, ebx
mov rcx, qword [rsp + 0x48]
mov dword [rsp + 0x20], eax
lea edx, [r9 + 0x14]
call fcn.14002fbb0
mov r9d, dword [rsp + 0x44]
mov r8d, ebx
mov rcx, qword [rsp + 0x48]
mov edx, 0x16
mov dword [rsp + 0x20], r12d
call fcn.14002fbb0
mov byte [r13 + 0x365], 0x10
jmp 0x14008fa69
mov ecx, edx
mov edx, 1
mov eax, edx
shl rax, cl
jmp 0x14008e0a6
mov r10, qword [rsp + 0x68]
mov edx, dword [r10 + 0x28]
bt edx, 0xa
jae 0x14008e403
movzx r15d, word [r10 + 0x2c]
inc dword [r14 + 0x70]
mov edx, dword [r14 + 0x44]
mov r8d, dword [r14 + 0x48]
lea ecx, [r15 + 2]
mov dword [rsp + 0x40], r8d
cmp ecx, edx
jg 0x14008e1e9
lea eax, [rcx + r8]
sub edx, ecx
mov dword [r14 + 0x48], eax
mov dword [r14 + 0x44], edx
jmp 0x14008e1fc
mov eax, dword [r14 + 0x54]
lea r8d, [rax + 1]
add eax, ecx
mov dword [r14 + 0x54], eax
mov dword [rsp + 0x40], r8d
mov r13d, dword [r13 + 0x34c]
mov ebx, r12d
test r15d, r15d
je 0x14008e284
mov rsi, qword [rsp + 0x60]
lea ecx, [r8 + 2]
mov rdi, r12
mov dword [rsp + 0x5c], ecx
mov r12, qword [rsp + 0x70]
mov rax, qword [r10 + 0x30]
mov rdx, qword [rdi + rax]
test rdx, rdx
je 0x14008e272
test byte [rdx + 0x1a], 1
lea r8d, [rcx + rbx]
mov rcx, r14
je 0x14008e25d
mov dword [rsp + 0x28], r8d
mov r9d, ebx
lea r8, [r12 + 0x340]
mov dword [rsp + 0x20], esi
call fcn.14008d100
mov r13d, dword [r12 + 0x350]
jmp 0x14008e269
mov rdx, qword [rdx]
mov rdx, qword [rdx + 0x18]
call fcn.14004b5a0
mov r10, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x5c]
inc ebx
add rdi, 8
cmp ebx, r15d
jl 0x14008e220
mov rsi, qword [rbp - 0x20]
xor r12d, r12d
mov ebx, dword [rsp + 0x40]
mov edx, 0x19
mov r8d, dword [r10 + 0x18]
mov r9d, ebx
mov rcx, qword [rsp + 0x48]
mov dword [rsp + 0x20], r12d
call fcn.14002fbb0
mov rcx, qword [rsp + 0x48]
lea r9d, [rbx + 1]
mov r8d, r15d
mov dword [rsp + 0x20], r12d
mov edx, 0x19
call fcn.14002fbb0
mov r9, qword [rsp + 0x68]
mov eax, 0xfffffff5
mov r8d, dword [rsp + 0x50]
mov edi, 0xfffffffe
mov rcx, qword [rsp + 0x48]
mov edx, 0xe
cmp byte [r9 + 0x1c], 0
mov rbx, qword [r9 + 0x20]
mov r9d, r13d
cmovne edi, eax
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x20], eax
call fcn.14002fbb0
mov r8, rbx
mov r9d, edi
mov rbx, qword [rsp + 0x48]
mov edx, eax
mov rcx, rbx
call fcn.1400301e0
mov rdx, qword [rsp + 0x68]
mov r10d, r12d
mov byte [rdx + 0x1c], 0
test r15d, r15d
je 0x14008e3b2
mov r11, qword [rsp + 0x70]
mov rsi, qword [rbp - 0x38]
nop dword [rax + rax]
cmp r10d, 0x10
jge 0x14008e3ae
movzx eax, word [rdx + 0x1e]
movzx ecx, r10w
shr ax, cl
test al, 1
je 0x14008e3a6
mov rax, qword [rdx + 0x30]
movsxd rcx, r10d
mov rcx, qword [rax + rcx*8]
test rcx, rcx
je 0x14008e3a6
movzx edx, byte [rcx + 0x1c]
test dl, 4
jne 0x14008e3a1
cmp dword [rsi], 0
je 0x14008e36c
mov rax, qword [rcx]
test byte [rax + 4], 1
je 0x14008e3a1
mov rax, qword [rcx + 0x30]
test qword [r11 + 0x388], rax
jne 0x14008e3a1
movsxd rax, dword [rcx + 8]
or dl, 4
mov byte [rcx + 0x1c], dl
test eax, eax
js 0x14008e3a1
mov rcx, qword [rcx + 0x20]
imul rdx, rax, 0x38
add rdx, qword [rcx + 0x20]
add byte [rdx + 0x1d], 0xff
jne 0x14008e3a1
mov rcx, rsi
call fcn.14008cfe0
mov rdx, qword [rsp + 0x68]
inc r10d
cmp r10d, r15d
jl 0x14008e330
mov rsi, qword [rbp - 0x20]
mov r13, qword [rsp + 0x70]
add r15d, 2
mov eax, dword [rsp + 0x50]
mov r8d, r15d
mov r11d, dword [rsp + 0x40]
mov rcx, r14
mov edx, r11d
mov byte [r13 + 0x365], 0x95
mov dword [r13 + 0x368], eax
mov eax, dword [rbx + 0x3c]
mov dword [r13 + 0x36c], eax
call fcn.140049900
cmp r15d, dword [r14 + 0x44]
jle 0x14008e3f9
mov dword [r14 + 0x44], r15d
mov dword [r14 + 0x48], r11d
call fcn.140049b30
jmp 0x14008fa70
test dl, 5
setne cl
bt edx, 8
setb al
test al, cl
je 0x14008e4ef
mov rax, qword [r10 + 0x30]
lea r8, [r13 + 0x340]
xor r9d, r9d
mov rcx, r14
mov rdx, qword [rax]
inc dword [r14 + 0x54]
mov ebx, dword [r14 + 0x54]
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], r15d
call fcn.14008d100
mov edi, eax
cmp eax, ebx
je 0x14008e484
test ebx, ebx
je 0x14008e484
cmp byte [r14 + 0x1f], 8
jae 0x14008e484
mov ecx, r12d
lea rax, [r14 + 0x88]
nop dword [rax]
cmp dword [rax + 0xc], ebx
je 0x14008e480
inc ecx
add rax, 0x14
cmp ecx, 0xa
jl 0x14008e460
movzx eax, byte [r14 + 0x1f]
mov dword [r14 + rax*4 + 0x24], ebx
inc byte [r14 + 0x1f]
jmp 0x14008e484
mov byte [rax + 6], 1
mov ebx, dword [r13 + 0x350]
mov r8d, edi
mov rcx, qword [rsp + 0x48]
mov r9d, ebx
mov edx, 0x26
mov dword [rsp + 0x20], r12d
call fcn.14002fbb0
mov r8d, dword [rsp + 0x50]
mov r9d, ebx
mov rcx, qword [rsp + 0x48]
mov edx, 0x46
mov dword [rsp + 0x20], edi
call fcn.14002fbb0
mov r8d, 1
mov edx, edi
mov rcx, r14
call fcn.140049900
mov edx, dword [rsp + 0x50]
mov r9d, edi
mov r8d, 0xffffffff
call fcn.140049660
mov byte [r13 + 0x365], 0x9a
jmp 0x14008fa70
mov eax, edx
and eax, 0x102
cmp eax, 0x102
jne 0x14008e7ad
mov dword [rsp + 0x54], 0x9a
mov r13, r12
mov r15, r12
test dl, 0x20
je 0x14008e522
mov rax, qword [r10 + 0x30]
mov ecx, 8
mov r15, qword [rax]
jmp 0x14008e525
mov rcx, r12
test dl, 0x10
je 0x14008e532
mov rax, qword [r10 + 0x30]
mov r13, qword [rcx + rax]
mov rdi, qword [rsp + 0x60]
test edi, edi
je 0x14008e544
mov rax, r15
mov r15, r13
mov r13, rax
test r15, r15
je 0x14008e66b
mov rbx, qword [r15]
lea r8, [rbp - 0x78]
mov rcx, r14
mov dword [rsp + 0x40], 0x403e3f41
mov rdx, qword [rbx + 0x18]
call fcn.14004b410
mov r9d, dword [rsp + 0x44]
mov edi, eax
movzx eax, byte [rbx]
mov r8d, dword [rsp + 0x50]
mov rcx, qword [rsp + 0x48]
mov dword [rsp + 0x20], edi
movzx edx, byte [rsp + rax - 0x10]
call fcn.14002fbb0
mov r8d, 1
mov edx, edi
mov rcx, r14
call fcn.140049900
mov r11d, dword [rbp - 0x78]
test r11d, r11d
je 0x14008e5d9
cmp byte [r14 + 0x1f], 8
jae 0x14008e5d9
mov ecx, r12d
lea rax, [r14 + 0x88]
cmp dword [rax + 0xc], r11d
je 0x14008e5d5
inc ecx
add rax, 0x14
cmp ecx, 0xa
jl 0x14008e5b4
movzx eax, byte [r14 + 0x1f]
mov dword [r14 + rax*4 + 0x24], r11d
inc byte [r14 + 0x1f]
jmp 0x14008e5d9
mov byte [rax + 6], 1
movzx ecx, byte [r15 + 0x1c]
test cl, 4
jne 0x14008e630
mov r8, qword [rbp - 0x38]
cmp dword [r8], r12d
je 0x14008e5f5
mov rax, qword [r15]
test byte [rax + 4], 1
je 0x14008e630
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x388]
test qword [r15 + 0x30], rax
jne 0x14008e630
movsxd rax, dword [r15 + 8]
or cl, 4
mov byte [r15 + 0x1c], cl
test eax, eax
js 0x14008e630
imul rdx, rax, 0x38
mov rax, qword [r15 + 0x20]
add rdx, qword [rax + 0x20]
add byte [rdx + 0x1d], 0xff
jne 0x14008e630
mov rcx, r8
call fcn.14008cfe0
mov rdi, qword [rsp + 0x60]
test r13, r13
je 0x14008e6fd
mov rbx, qword [r13]
mov rcx, r14
inc dword [r14 + 0x54]
mov r15d, dword [r14 + 0x54]
mov r8d, r15d
mov rdx, qword [rbx + 0x18]
call fcn.14004b5a0
movzx eax, byte [rbx]
sub al, 0x50
test al, 0xfd
je 0x14008e693
lea eax, [rdi*2 + 0x50]
jmp 0x14008e69f
mov r8d, dword [rsp + 0x50]
test edi, edi
mov rcx, qword [rsp + 0x48]
mov edx, 0x6c
mov eax, 0x69
mov dword [rsp + 0x20], r12d
cmovne edx, eax
mov r9d, ebx
call fcn.14002fbb0
jmp 0x14008e635
mov eax, edi
xor eax, 1
lea eax, [rax*2 + 0x51]
movzx ecx, byte [r13 + 0x1c]
mov dword [rsp + 0x54], eax
test cl, 4
jne 0x14008e700
mov r8, qword [rbp - 0x38]
cmp dword [r8], r12d
je 0x14008e6c0
mov rax, qword [r13]
test byte [rax + 4], 1
je 0x14008e700
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x388]
test qword [r13 + 0x30], rax
jne 0x14008e700
movsxd rax, dword [r13 + 8]
or cl, 4
mov byte [r13 + 0x1c], cl
test eax, eax
js 0x14008e700
imul rdx, rax, 0x38
mov rax, qword [r13 + 0x20]
add rdx, qword [rax + 0x20]
add byte [rdx + 0x1d], 0xff
jne 0x14008e700
mov rcx, r8
call fcn.14008cfe0
jmp 0x14008e700
mov r15d, r12d
mov r13, qword [rsp + 0x70]
test edi, edi
mov r10, qword [rsp + 0x48]
mov edi, dword [rsp + 0x54]
sete al
add al, 8
mov ecx, dword [r10 + 0x3c]
mov byte [r13 + 0x365], al
mov eax, dword [rsp + 0x50]
mov dword [r13 + 0x368], eax
mov dword [r13 + 0x36c], ecx
cmp edi, 0x9a
je 0x14008fa70
inc dword [r14 + 0x54]
mov r8d, eax
mov ebx, dword [r14 + 0x54]
mov edx, 0x67
mov r9d, ebx
mov dword [rsp + 0x20], r12d
mov rcx, r10
call fcn.14002fbb0
mov edx, dword [rsp + 0x50]
mov r9d, ebx
mov r8d, 0xffffffff
mov rcx, r14
call fcn.140049660
mov r9d, dword [rsp + 0x44]
mov r8d, r15d
mov r15, qword [rsp + 0x48]
mov edx, edi
mov rcx, r15
mov dword [rsp + 0x20], ebx
call fcn.14002fbb0
mov rdx, qword [r15 + 8]
test rdx, rdx
je 0x14008fa70
movsxd rax, dword [r15 + 0x3c]
lea rcx, [rax + rax*2]
mov byte [rdx + rcx*8 - 0x15], 0x53
jmp 0x14008fa70
bt edx, 9
jae 0x14008f0fd
mov rax, qword [rsp + 0x70]
mov rbx, r12
mov r11, qword [r10 + 0x20]
xor r13b, r13b
movzx r15d, word [r10 + 0x18]
mov rdi, r12
mov qword [rbp - 0x48], r12
mov r9d, r12d
mov eax, dword [rax + 0x348]
mov dword [rsp + 0x40], eax
mov rax, qword [rbp - 0x40]
mov qword [rbp - 0x60], rbx
mov byte [rbp + 0x10], bl
mov byte [rsp + 0x58], bl
test byte [rax + 0x32], 1
mov qword [rbp - 0x50], r11
je 0x14008e80d
cmp byte [rax + 0x34], bl
jle 0x14008e80d
cmp word [r11 + 0x5e], r15w
jbe 0x14008e80d
mov r13b, 1
mov r9d, 1
mov r8, r15
test dl, 0x20
je 0x14008e82a
mov rax, qword [r10 + 0x30]
inc r8d
mov r9d, 1
mov rdi, qword [rax + r15*8]
mov qword [rbp - 0x48], rdi
test dl, 0x10
je 0x14008e876
mov rax, qword [r10 + 0x30]
mov rbx, qword [rax + r8*8]
mov r8d, 1
mov qword [rbp - 0x60], rbx
mov r9d, r8d
test rdi, rdi
jne 0x14008e876
mov rax, qword [r11 + 8]
movsx rdx, word [rax + r15*2]
test dx, dx
js 0x14008e876
mov rax, qword [r11 + 0x18]
mov rcx, rdx
movzx r13d, r13b
mov rdx, qword [rax + 8]
lea rax, [rcx + rcx*2]
add rax, rax
cmp byte [rdx + rax*8 + 0x28], r12b
cmove r13d, r8d
mov r8d, dword [rsp + 0x60]
lea rax, [rbp - 0x80]
mov rdx, qword [rbp - 0x38]
mov rcx, r14
mov qword [rsp + 0x20], rax
call fcn.14008d3d0
mov rcx, qword [rbp - 0x80]
mov r9d, eax
mov dword [rsp + 0x44], eax
test rcx, rcx
je 0x14008e8a8
movzx ecx, byte [r15 + rcx]
mov byte [rbp + 0x10], cl
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x350]
mov dword [rsp + 0x54], eax
mov rax, qword [rbp - 0x50]
movzx r8d, word [rax + 0x5e]
cmp r15w, r8w
jae 0x14008e8df
mov rax, qword [rax + 0x38]
mov edx, r12d
cmp byte [r15 + rax], r12b
mov rax, qword [rsp + 0x60]
sete dl
cmp eax, edx
je 0x14008e8ee
jmp 0x14008e8e4
mov rax, qword [rsp + 0x60]
test eax, eax
je 0x14008e907
cmp r8w, r15w
jne 0x14008e907
mov rax, rbx
mov byte [rsp + 0x58], r13b
mov rbx, rdi
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x60], rbx
mov rdi, rax
xor r13b, r13b
test rdi, rdi
je 0x14008e91e
test byte [rdi + 0x1a], 0x28
jne 0x14008e91e
mov dword [rsp + 0x7c], r12d
mov eax, 1
jmp 0x14008e927
mov eax, 1
mov dword [rsp + 0x7c], eax
test rbx, rbx
je 0x14008e937
test byte [rbx + 0x1a], 0x28
mov dword [rsp + 0x5c], r12d
je 0x14008e93b
mov dword [rsp + 0x5c], eax
test rdi, rdi
jne 0x14008ea54
test r15w, r15w
jne 0x14008ea54
mov dword [rsp + 0x78], r12d
mov ebx, r15d
test r13b, r13b
je 0x14008e988
mov rcx, qword [rsp + 0x48]
xor r8d, r8d
mov r9d, r15d
mov dword [rsp + 0x20], r12d
add r9d, dword [rsp + 0x44]
lea edx, [r8 + 0x1c]
call fcn.14002fbb0
inc ebx
mov dword [rsp + 0x7c], r12d
mov dword [rsp + 0x78], 1
mov rdi, qword [rbp - 0x80]
mov r8d, ebx
mov edx, dword [rsp + 0x44]
mov r9, rdi
movzx eax, r13b
mov rcx, r14
sub r8d, eax
call fcn.14008d040
mov edx, dword [rsp + 0x7c]
lea r13, [0x140000000]
mov ecx, dword [rsp + 0x78]
mov r9d, dword [rsp + 0x54]
mov r8d, dword [rsp + 0x40]
lea eax, [rdx + rcx*2]
mov rcx, qword [rsp + 0x60]
lea ecx, [rcx + rax*2]
mov eax, dword [rsp + 0x44]
movzx edx, byte [rcx + r13 + 0xcc3b8]
mov rcx, qword [rsp + 0x48]
mov dword [rsp + 0x20], eax
call fcn.14002fbb0
mov rcx, qword [rsp + 0x48]
mov r9d, 0xfffffff2
mov r8d, ebx
mov edx, eax
call fcn.1400301e0
mov rax, qword [rbp - 0x60]
mov ebx, r15d
mov dword [rbp - 0x78], ebx
test rax, rax
je 0x14008ed98
mov rax, qword [rax]
mov r11d, r15d
add r11d, dword [rsp + 0x44]
mov r8d, 1
mov edx, r11d
mov rcx, r14
mov rbx, qword [rax + 0x18]
call fcn.140049900
mov r8d, r11d
mov rdx, rbx
call fcn.14004b5a0
mov rdx, rbx
nop word [rax + rax]
movzx ecx, byte [rdx]
lea eax, [rcx + 0x63]
cmp al, 1
ja 0x14008ebc6
mov rdx, qword [rdx + 0x10]
jmp 0x14008ea40
mov dword [rsp + 0x78], eax
mov ebx, r15d
test rdi, rdi
je 0x14008e956
mov rax, qword [rdi]
lea r8d, [r9 + r15]
mov rcx, r14
mov rbx, qword [rax + 0x18]
mov rdx, rbx
call fcn.14004b5a0
mov rdx, rbx
nop dword [rax]
movzx ecx, byte [rdx]
lea eax, [rcx + 0x63]
cmp al, 1
ja 0x14008ea90
mov rdx, qword [rdx + 0x10]
jmp 0x14008ea80
cmp cl, 0x9f
jne 0x14008ea99
movzx ecx, byte [rdx + 0x36]
movzx ecx, cl
sub ecx, 0x61
je 0x14008eb0d
sub ecx, 0x23
je 0x14008eb0d
sub ecx, 1
je 0x14008eb0d
sub ecx, 1
je 0x14008eb0d
cmp ecx, 0x14
jne 0x14008eaec
test dword [rdx + 4], 0x100000
jne 0x14008eae3
movsx rax, word [rdx + 0x30]
test ax, ax
js 0x14008eade
mov rdx, qword [rdx + 0x40]
lea rcx, [rax + rax*2]
add rcx, rcx
mov rax, qword [rdx + 8]
cmp byte [rax + rcx*8 + 0x28], r12b
je 0x14008eae3
mov eax, r12d
jmp 0x14008eae8
mov eax, 1
test eax, eax
je 0x14008eb0d
mov r9d, dword [rsp + 0x54]
mov r8d, r15d
add r8d, dword [rsp + 0x44]
mov edx, 0x4c
mov rcx, qword [rsp + 0x48]
mov dword [rsp + 0x20], r12d
call fcn.14002fbb0
mov rcx, qword [rbp - 0x80]
test rcx, rcx
je 0x14008ebbd
movzx edx, byte [rcx + r15]
lea rdi, [rcx + r15]
mov rcx, rbx
call fcn.140044ad0
cmp al, 0x41
jne 0x14008eb31
mov byte [rdi], al
movzx edx, byte [rdi]
cmp dl, 0x41
je 0x14008ebb4
nop dword [rax]
movzx ecx, byte [rbx]
lea eax, [rcx + 0x63]
cmp al, 1
ja 0x14008eb50
mov rbx, qword [rbx + 0x10]
jmp 0x14008eb40
cmp cl, 0x9f
jne 0x14008eb59
movzx ecx, byte [rbx + 0x36]
movzx ecx, cl
sub ecx, 0x61
je 0x14008eba7
sub ecx, 0x23
je 0x14008eb98
sub ecx, 1
je 0x14008eb89
sub ecx, 1
je 0x14008ebb4
cmp ecx, 0x14
jne 0x14008ebbd
cmp word [rbx + 0x30], r12w
jge 0x14008eb84
sub dl, 0x43
cmp dl, 1
jbe 0x14008ebb4
mov eax, r12d
jmp 0x14008ebb0
sub dl, 0x43
test dl, 0xfd
jne 0x14008ebbd
mov eax, 1
jmp 0x14008ebb0
sub dl, 0x43
cmp dl, 1
ja 0x14008ebbd
mov eax, 1
jmp 0x14008ebb0
cmp dl, 0x42
mov eax, r12d
sete al
test eax, eax
je 0x14008ebbd
mov rcx, qword [rbp - 0x80]
mov byte [r15 + rcx], 0x41
lea ebx, [r15 + 1]
jmp 0x14008e988
cmp cl, 0x9f
jne 0x14008ebcf
movzx ecx, byte [rdx + 0x36]
movzx ecx, cl
sub ecx, 0x61
je 0x14008ec43
sub ecx, 0x23
je 0x14008ec43
sub ecx, 1
je 0x14008ec43
sub ecx, 1
je 0x14008ec43
cmp ecx, 0x14
jne 0x14008ec22
test dword [rdx + 4], 0x100000
jne 0x14008ec19
movsx rax, word [rdx + 0x30]
test ax, ax
js 0x14008ec14
mov rdx, qword [rdx + 0x40]
lea rcx, [rax + rax*2]
add rcx, rcx
mov rax, qword [rdx + 8]
cmp byte [rax + rcx*8 + 0x28], r12b
je 0x14008ec19
mov eax, r12d
jmp 0x14008ec1e
mov eax, 1
test eax, eax
je 0x14008ec43
mov r9d, dword [rsp + 0x54]
mov r8d, r15d
add r8d, dword [rsp + 0x44]
mov edx, 0x4c
mov rcx, qword [rsp + 0x48]
mov dword [rsp + 0x20], r12d
call fcn.14002fbb0
movzx edx, byte [rbp + 0x10]
mov rcx, rbx
call fcn.140044ad0
cmp al, 0x41
je 0x14008ed6a
movzx edx, byte [rbp + 0x10]
cmp dl, 0x41
je 0x14008ed6a
movzx ecx, byte [rbx]
lea eax, [rcx + 0x63]
cmp al, 1
ja 0x14008ec74
mov rbx, qword [rbx + 0x10]
jmp 0x14008ec64
cmp cl, 0x9f
jne 0x14008ec7d
movzx ecx, byte [rbx + 0x36]
movzx ecx, cl
sub ecx, 0x61
je 0x14008ecd3
sub ecx, 0x23
je 0x14008ecc4
sub ecx, 1
je 0x14008ecb5
sub ecx, 1
je 0x14008ed6a
cmp ecx, 0x14
jne 0x14008ece4
cmp word [rbx + 0x30], r12w
jge 0x14008ecb0
sub dl, 0x43
cmp dl, 1
jbe 0x14008ed6a
mov eax, r12d
jmp 0x14008ecdc
sub dl, 0x43
test dl, 0xfd
jne 0x14008ece4
mov eax, 1
jmp 0x14008ecdc
sub dl, 0x43
cmp dl, 1
ja 0x14008ece4
mov eax, 1
jmp 0x14008ecdc
cmp dl, 0x42
mov eax, r12d
sete al
test eax, eax
jne 0x14008ed6a
add r15d, dword [rsp + 0x44]
lea rdi, [rbp + 0x10]
mov r13, qword [r14 + 0x10]
mov ebx, 1
cmp byte [rdi], 0x41
jne 0x14008ed07
dec ebx
inc r15d
inc rdi
test ebx, ebx
jg 0x14008ecf6
movsxd rax, ebx
cmp rax, 1
jle 0x14008ed22
cmp byte [rdi + rax - 1], 0x41
jne 0x14008ed22
dec ebx
dec rax
cmp rax, 1
jg 0x14008ed10
test ebx, ebx
jle 0x14008ed5f
mov r9d, ebx
mov dword [rsp + 0x20], r12d
mov r8d, r15d
mov edx, 0x30
mov rcx, r13
call fcn.14002fbb0
mov r9d, ebx
mov r8, rdi
mov edx, 0xffffffff
mov rcx, r13
call fcn.1400301e0
mov r8d, ebx
mov edx, r15d
mov rcx, r14
call fcn.140049900
mov rdi, qword [rbp - 0x80]
lea r13, [0x140000000]
mov ebx, dword [rbp - 0x78]
inc ebx
mov r15d, dword [rsp + 0x44]
test rdi, rdi
je 0x14008edfc
test rsi, rsi
je 0x14008edf4
cmp qword [rsi + 0x320], r12
je 0x14008edc9
mov rdx, rdi
mov rcx, rsi
call fcn.14000d0c0
jmp 0x14008edfc
cmp byte [rsp + 0x58], r12b
je 0x14008ed6f
mov rcx, qword [rsp + 0x48]
mov r9d, r15d
mov r15d, dword [rsp + 0x44]
xor r8d, r8d
add r9d, r15d
mov dword [rsp + 0x20], r12d
lea edx, [r8 + 0x1c]
call fcn.14002fbb0
inc ebx
mov dword [rsp + 0x5c], r12d
jmp 0x14008ed74
cmp rdi, qword [rsi + 0x168]
jb 0x14008edf4
cmp rdi, qword [rsi + 0x170]
jae 0x14008edf4
mov rax, qword [rsi + 0x160]
mov qword [rdi], rax
dec dword [rsi + 0x14c]
mov qword [rsi + 0x160], rdi
jmp 0x14008edfc
mov rcx, rdi
call fcn.14000d020
mov rax, qword [rsp + 0x48]
mov r10, qword [rsp + 0x70]
mov edi, dword [rsp + 0x40]
mov eax, dword [rax + 0x3c]
mov dword [r10 + 0x36c], eax
test ebx, ebx
je 0x14008ee61
mov rax, qword [rsp + 0x60]
mov r8d, edi
mov ecx, dword [rsp + 0x5c]
mov r9d, dword [rsp + 0x54]
mov dword [rsp + 0x20], r15d
mov r15, qword [rsp + 0x48]
lea eax, [rcx + rax*2]
mov rcx, r15
movzx edx, byte [rax + r13 + 0xcf79c]
call fcn.14002fbb0
mov r8d, ebx
mov r9d, 0xfffffff2
mov edx, eax
mov rcx, r15
call fcn.1400301e0
mov r10, qword [rsp + 0x70]
jmp 0x14008ee66
mov r15, qword [rsp + 0x48]
mov r8, qword [rbp - 0x48]
lea r9, [r10 + 0x340]
test r8, r8
je 0x14008eecb
movzx ecx, byte [r8 + 0x1c]
test cl, 4
jne 0x14008eecb
cmp dword [r9], r12d
je 0x14008ee8e
mov rax, qword [r8]
test byte [rax + 4], 1
je 0x14008eecb
mov rax, qword [r10 + 0x388]
test qword [r8 + 0x30], rax
jne 0x14008eecb
movsxd rax, dword [r8 + 8]
or cl, 4
mov byte [r8 + 0x1c], cl
test eax, eax
js 0x14008eecb
imul rdx, rax, 0x38
mov rax, qword [r8 + 0x20]
add rdx, qword [rax + 0x20]
add byte [rdx + 0x1d], 0xff
jne 0x14008eecb
mov rcx, r9
call fcn.14008cfe0
lea r9, [r10 + 0x340]
mov rdx, qword [rbp - 0x60]
test rdx, rdx
je 0x14008ef20
movzx ecx, byte [rdx + 0x1c]
test cl, 4
jne 0x14008ef20
cmp dword [r9], r12d
je 0x14008eeeb
mov rax, qword [rdx]
test byte [rax + 4], 1
je 0x14008ef20
mov rax, qword [r10 + 0x388]
test qword [rdx + 0x30], rax
jne 0x14008ef20
movsxd rax, dword [rdx + 8]
or cl, 4
mov byte [rdx + 0x1c], cl
test eax, eax
js 0x14008ef20
mov rcx, qword [rdx + 0x20]
imul rdx, rax, 0x38
add rdx, qword [rcx + 0x20]
add byte [rdx + 0x1d], 0xff
jne 0x14008ef20
mov rcx, r9
call fcn.14008cfe0
cmp dword [rbp - 0x68], r12d
jne 0x14008f09d
mov rbx, qword [rbp - 0x50]
mov rbx, qword [rbx + 0x18]
test byte [rbx + 0x48], 0x20
jne 0x14008ef8c
inc dword [r14 + 0x54]
mov r8d, edi
mov ebx, dword [r14 + 0x54]
mov edx, 0x70
mov r9d, ebx
mov dword [rsp + 0x20], r12d
mov rcx, r15
call fcn.14002fbb0
mov edx, dword [rsp + 0x50]
mov r9d, ebx
mov r8d, 0xffffffff
mov rcx, r14
call fcn.140049660
mov r8d, dword [rsp + 0x50]
mov r9d, ebx
mov edx, 0x42
mov dword [rsp + 0x20], r12d
mov rcx, r15
call fcn.14002fbb0
jmp 0x14008f09d
cmp dword [rsp + 0x50], edi
je 0x14008f09d
mov rbx, qword [rbx + 0x10]
test rbx, rbx
je 0x14008efb2
nop
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x14008efb2
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x14008efa0
movzx ecx, word [rbx + 0x5e]
mov edx, dword [r14 + 0x44]
mov r13d, dword [r14 + 0x48]
cmp ecx, edx
jg 0x14008efd2
lea eax, [rcx + r13]
sub edx, ecx
mov dword [r14 + 0x48], eax
mov dword [r14 + 0x44], edx
jmp 0x14008efe0
mov eax, dword [r14 + 0x54]
lea r13d, [rax + 1]
add eax, ecx
mov dword [r14 + 0x54], eax
movzx r15d, word [rbx + 0x5e]
mov edi, r12d
cmp r12w, r15w
jae 0x14008f06a
mov rsi, qword [rbp - 0x50]
mov r14d, dword [rsp + 0x40]
nop word [rax + rax]
movzx r8d, word [rsi + 0x60]
mov edx, r12d
test r8d, r8d
je 0x14008f031
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 0x14008f036
inc edx
cmp edx, r8d
jl 0x14008f020
mov edx, 0xffffffff
mov rcx, qword [rsp + 0x48]
lea eax, [rdi + r13]
movsx r9d, dx
mov r8d, r14d
mov edx, 0x2f
mov dword [rsp + 0x20], eax
call fcn.14002fbb0
movzx eax, word [rbx + 0x5e]
inc edi
cmp edi, eax
jl 0x14008f000
mov rsi, qword [rbp - 0x20]
movzx r15d, ax
mov r14, qword [rbp - 0x30]
mov r9d, dword [rbp - 0x58]
mov edx, 0x44
mov r8d, dword [rsp + 0x50]
mov rcx, qword [rsp + 0x48]
mov dword [rsp + 0x20], r13d
call fcn.14002fbb0
mov rcx, qword [rsp + 0x48]
mov r9d, 0xfffffff2
movzx r8d, r15w
mov edx, eax
call fcn.1400301e0
mov r9, qword [rsp + 0x68]
mov r13, qword [rsp + 0x70]
test dword [r9 + 0x28], 0x1000
je 0x14008f0bb
mov byte [r13 + 0x365], 0x9a
jmp 0x14008f0cc
cmp dword [rsp + 0x60], r12d
sete al
add al, 8
mov byte [r13 + 0x365], al
mov eax, dword [rsp + 0x40]
mov dword [r13 + 0x368], eax
movzx eax, byte [r9 + 0x2a]
and al, 1
mov byte [r13 + 0x366], al
test byte [r9 + 0x28], 0xf
jne 0x14008fa70
mov byte [r13 + 0x367], 1
jmp 0x14008fa70
bt edx, 0xd
jae 0x14008fa0f
mov eax, dword [r14 + 0x50]
inc dword [r14 + 0x54]
mov r15d, dword [r14 + 0x54]
mov rbx, qword [rsp + 0x48]
mov dword [rbp - 0x54], eax
mov rcx, rbx
inc eax
mov qword [rbp - 0x48], r12
mov dword [r14 + 0x50], eax
mov dword [rbp - 0x68], r15d
mov dword [rsp + 0x40], r12d
mov dword [rsp + 0x7c], r12d
call fcn.14002fcf0
mov rcx, qword [rdi + 0x28]
mov r9, qword [rsp + 0x68]
mov r11, qword [rbp - 0x40]
mov dword [rbp - 0x78], eax
mov dword [rsp + 0x44], r12d
mov rax, qword [r9 + 0x30]
mov qword [rbp - 0x80], r12
mov qword [rbp - 0x60], rcx
mov rax, qword [rax]
mov qword [rbp - 0x18], rax
mov rax, qword [rax + 0x10]
mov qword [rbp - 8], rax
mov byte [r13 + 0x365], 0x12
mov dword [r13 + 0x368], r15d
movzx eax, byte [r11 + 0x39]
cmp al, 1
jbe 0x14008f35b
mov ebx, eax
sub ebx, dword [rbp - 0x28]
dec ebx
movsxd rax, ebx
imul rcx, rax, 0x78
sub rcx, 0xffffffffffffff80
test rsi, rsi
je 0x14008f1bf
cmp byte [rsi + 0x50], r12b
jne 0x14008f1de
cmp byte [rsi + 0x14a], r12b
je 0x14008f1bf
movzx eax, word [rsi + 0x148]
cmp rcx, rax
jbe 0x14008f1e7
inc dword [rsi + 0x158]
call fcn.14000cbd0
mov qword [rbp - 0x50], rax
mov r15, rax
test rax, rax
jne 0x14008f1d9
test rsi, rsi
je 0x14008f1d9
mov byte [rsi + 0x50], 1
test r15, r15
jne 0x14008f22d
mov rax, qword [rbp]
jmp 0x14008fd80
mov r15, qword [rsi + 0x160]
mov qword [rbp - 0x50], r15
test r15, r15
jne 0x14008f1ff
inc dword [rsi + 0x15c]
jmp 0x14008f1bf
mov rax, qword [r15]
mov qword [rsi + 0x160], rax
mov eax, dword [rsi + 0x14c]
inc eax
mov dword [rsi + 0x14c], eax
inc dword [rsi + 0x154]
cmp eax, dword [rsi + 0x150]
jle 0x14008f231
mov dword [rsi + 0x150], eax
jmp 0x14008f231
mov r11, qword [rbp - 0x40]
lea eax, [rbx + 1]
movzx ecx, al
mov dword [r15 + 4], ecx
mov dword [r15], ecx
movups xmm0, xmmword [rdi + 8]
movups xmmword [r15 + 8], xmm0
movups xmm1, xmmword [rdi + 0x18]
movups xmmword [r15 + 0x18], xmm1
movups xmm0, xmmword [rdi + 0x28]
movups xmmword [r15 + 0x28], xmm0
movups xmm1, xmmword [rdi + 0x38]
movups xmmword [r15 + 0x38], xmm1
movups xmm0, xmmword [rdi + 0x48]
movups xmmword [r15 + 0x48], xmm0
movups xmm1, xmmword [rdi + 0x58]
movups xmmword [r15 + 0x58], xmm1
movups xmm0, xmmword [rdi + 0x68]
movups xmmword [r15 + 0x68], xmm0
movsd xmm1, qword [rdi + 0x78]
movsd qword [r15 + 0x78], xmm1
mov r10, qword [r11 + 8]
cmp ebx, 1
jl 0x14008f318
lea r8, [r13 + 0x3b4]
mov r9d, ebx
lea rdx, [r15 + 0x80]
nop word [rax + rax]
movzx eax, byte [r8]
lea rdx, [rdx + 0x78]
imul rcx, rax, 0x78
lea r8, [r8 + 0x50]
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 0x14008f2b0
mov rbx, qword [rsp + 0x48]
mov rcx, qword [rbp - 0x60]
test byte [r11 + 0x32], 8
jne 0x14008f3dc
test byte [rcx + 0x48], 0x20
jne 0x14008f365
mov r13d, dword [r14 + 0x54]
xor r8d, r8d
inc r13d
mov dword [rsp + 0x20], r12d
mov r9d, r13d
mov dword [rsp + 0x40], r13d
mov rcx, rbx
mov dword [r14 + 0x54], r13d
lea edx, [r8 + 0x1c]
call fcn.14002fbb0
jmp 0x14008f3ce
mov r15, qword [r11 + 8]
mov qword [rbp - 0x50], r15
jmp 0x14008f321
mov rdi, qword [rcx + 0x10]
test rdi, rdi
je 0x14008f382
nop
mov eax, dword [rdi + 0x64]
and al, 3
cmp al, 2
je 0x14008f382
mov rdi, qword [rdi + 0x28]
test rdi, rdi
jne 0x14008f370
mov ecx, dword [r14 + 0x50]
mov edx, 0x39
mov dword [rsp + 0x40], ecx
mov r8d, ecx
mov dword [rsp + 0x20], r12d
lea eax, [rcx + 1]
mov rcx, rbx
mov dword [r14 + 0x50], eax
movzx r9d, word [rdi + 0x5e]
call fcn.14002fbb0
mov rbx, qword [r14 + 0x10]
mov rdx, rdi
mov rcx, r14
call fcn.14005c200
mov edx, 0xffffffff
mov r8, rax
mov rcx, rbx
lea r9d, [rdx - 5]
call fcn.1400301e0
mov ebx, dword [r14 + 0x54]
inc ebx
mov dword [rsp + 0x7c], ebx
mov dword [r14 + 0x54], ebx
mov r9d, dword [rbp - 0x68]
xor r8d, r8d
mov rcx, qword [rsp + 0x48]
mov dword [rsp + 0x20], r12d
lea edx, [r8 + 0x19]
call fcn.14002fbb0
mov dword [rsp + 0x60], eax
mov rdi, r12
mov rax, qword [rbp - 0x70]
cmp dword [rax + 0x14], 1
jle 0x14008f515
mov r13, qword [rbp - 0x18]
mov ebx, r12d
mov r8d, 0xfff
mov r15, r12
mov r14, rax
nop
mov rdx, qword [r14 + 0x20]
movsxd rax, ebx
imul rcx, rax, 0x38
mov r10, qword [rdi + rdx]
add rcx, rdx
cmp rcx, r13
je 0x14008f475
test byte [r10 + 4], 1
jne 0x14008f475
test byte [rdi + rdx + 0x1c], 0x12
jne 0x14008f475
test word [rdi + rdx + 0x1a], r8w
je 0x14008f475
xor r9d, r9d
xor r8d, r8d
mov rdx, r10
mov rcx, rsi
call fcn.140045f30
mov r8, rax
mov rdx, r15
mov rcx, rsi
call fcn.140045380
mov r15, rax
mov r8d, 0xfff
inc ebx
add rdi, 0x38
cmp ebx, dword [r14 + 0x14]
jl 0x14008f420
mov r14, qword [rbp - 0x30]
test r15, r15
mov qword [rbp - 0x80], r15
mov r15, qword [rbp - 0x50]
je 0x14008f511
mov rcx, qword [r14]
mov r9d, 1
xor r8d, r8d
lea edx, [r9 + 0x47]
call fcn.140045040
mov rdi, qword [r14]
mov rbx, rax
test rax, rax
jne 0x14008f4d1
xor edx, edx
mov rcx, rdi
call fcn.140045b70
mov rdx, qword [rbp - 0x80]
mov rcx, rdi
call fcn.140045b70
mov rdi, rbx
mov qword [rbp - 0x80], rbx
jmp 0x14008f515
mov rax, qword [rbp - 0x80]
mov rcx, rbx
mov qword [rbx + 0x18], rax
mov eax, dword [rax + 4]
and eax, 0x100
or dword [rbx + 4], eax
call fcn.140044f40
mov rax, qword [r14]
mov r8d, dword [rax + 0x74]
cmp dword [rbx + 0x28], r8d
jle 0x14008f508
lea rdx, str.Expression_tree_is_too_large__maximum_depth__d_
mov rcx, r14
call fcn.1400102a0
mov rdi, rbx
mov qword [rbp - 0x80], rbx
jmp 0x14008f515
mov rdi, qword [rbp - 0x80]
mov rax, qword [rbp - 8]
mov ecx, 0x70
mov dword [rsp + 0x54], ecx
mov r13d, r12d
mov dword [rsp + 0x78], r12d
cmp dword [rax + 0x14], r12d
jle 0x14008f8a4
mov r8d, dword [rsp + 0x50]
mov rdx, r12
mov qword [rbp - 0x30], rdx
mov rax, qword [rax + 0x20]
cmp dword [rdx + rax + 0xc], r8d
je 0x14008f55d
mov r9d, 0x200
test word [rdx + rax + 0x1a], r9w
je 0x14008f882
mov r8, qword [rdx + rax]
mov esi, r12d
mov dword [rsp + 0x68], r12d
test rdi, rdi
je 0x14008f57c
test byte [r8 + 4], 1
jne 0x14008f57c
mov qword [rdi + 0x10], r8
mov r8, rdi
mov eax, dword [rbp - 0x54]
xor r9d, r9d
mov dword [rsp + 0x30], eax
mov rdx, r15
mov word [rsp + 0x28], cx
mov rcx, r14
mov qword [rsp + 0x20], r12
call fcn.1400939c0
mov qword [rbp + 8], rax
mov rbx, rax
test rax, rax
je 0x14008f875
mov rax, qword [rsp + 0x70]
lea r8, [rbx + 0x340]
mov r9d, dword [rbp - 0x28]
mov rdx, r15
mov word [rsp + 0x28], r12w
mov rcx, r14
movzx eax, byte [rax + 0x364]
mov dword [rsp + 0x20], eax
call fcn.14008dbe0
mov rax, qword [rbp - 0x40]
test byte [rax + 0x32], 8
jne 0x14008f7ba
mov rax, qword [rbp - 8]
mov edi, r13d
mov edx, 0xffffffff
mov eax, dword [rax + 0x14]
dec eax
cmp r13d, eax
mov rax, qword [rbp - 0x60]
cmove edi, edx
mov dword [rbp - 0xc], edi
test byte [rax + 0x48], 0x20
jne 0x14008f660
mov ecx, dword [rsp + 0x7c]
mov r8d, edx
mov r9d, dword [rsp + 0x50]
mov rdx, rax
mov byte [rsp + 0x28], 0
mov dword [rsp + 0x20], ecx
mov rcx, r14
call fcn.140049e80
mov r8d, dword [rsp + 0x40]
xor r9d, r9d
mov rcx, qword [rsp + 0x48]
mov edx, 0x82
mov dword [rsp + 0x20], eax
call fcn.14002fbb0
mov rcx, qword [rsp + 0x48]
mov r9d, 0xfffffff2
movsxd r8, edi
mov edx, eax
mov esi, eax
call fcn.1400301e0
jmp 0x14008f7b6
mov rcx, rax
call fcn.140053e00
mov ecx, dword [r14 + 0x44]
mov rsi, rax
mov edx, dword [r14 + 0x48]
mov dword [rsp + 0x5c], edx
movzx r15d, word [rax + 0x5e]
cmp r15d, ecx
jg 0x14008f692
lea eax, [rdx + r15]
sub ecx, r15d
mov dword [r14 + 0x48], eax
mov dword [r14 + 0x44], ecx
jmp 0x14008f6a4
mov eax, dword [r14 + 0x54]
lea edx, [rax + 1]
add eax, r15d
mov dword [r14 + 0x54], eax
mov dword [rsp + 0x5c], edx
mov rbx, r12
mov r13, r15
test r15d, r15d
je 0x14008f6f3
mov r12, qword [rbp - 0x60]
mov edi, edx
mov r15d, dword [rsp + 0x50]
nop word [rax + rax]
mov rax, qword [rsi + 8]
mov r9d, r15d
mov byte [rsp + 0x28], 0
mov rdx, r12
mov rcx, r14
mov dword [rsp + 0x20], edi
movsx r8d, word [rax + rbx*2]
call fcn.140049e80
inc edi
inc rbx
cmp rbx, r13
jl 0x14008f6c0
mov edi, dword [rbp - 0xc]
xor r12d, r12d
mov r15d, r13d
mov ebx, dword [rsp + 0x5c]
test edi, edi
je 0x14008f732
mov r8d, dword [rsp + 0x40]
xor r9d, r9d
mov rcx, qword [rsp + 0x48]
mov dword [rsp + 0x20], ebx
lea edx, [r9 + 0x45]
call fcn.14002fbb0
mov rcx, qword [rsp + 0x48]
mov r9d, 0xfffffff2
movsxd r8, r15d
mov edx, eax
mov esi, eax
call fcn.1400301e0
test edi, edi
js 0x14008f78e
jmp 0x14008f736
mov esi, dword [rsp + 0x68]
mov r13d, dword [rsp + 0x7c]
mov r9d, r15d
mov rcx, qword [rsp + 0x48]
mov r8d, ebx
mov edx, 0x31
mov dword [rsp + 0x20], r13d
call fcn.14002fbb0
mov r8d, dword [rsp + 0x40]
mov r9d, r13d
mov r13, qword [rsp + 0x48]
mov edx, 0x6e
mov rcx, r13
mov dword [rsp + 0x20], r12d
call fcn.14002fbb0
test edi, edi
je 0x14008f78e
mov rdx, qword [r13 + 8]
test rdx, rdx
je 0x14008f78e
movsxd rax, dword [r13 + 0x3c]
lea rcx, [rax + rax*2]
mov byte [rdx + rcx*8 - 0x15], 0x10
mov r8d, r15d
mov edx, ebx
mov rcx, r14
call fcn.140049900
mov r13d, dword [rsp + 0x78]
cmp r15d, dword [r14 + 0x44]
jle 0x14008f7ae
mov dword [r14 + 0x44], r15d
mov dword [r14 + 0x48], ebx
mov rbx, qword [rbp + 8]
mov r15, qword [rbp - 0x50]
mov rdi, qword [rbp - 0x80]
mov r9d, dword [rbp - 0x78]
mov edx, 0x11
mov r8d, dword [rbp - 0x68]
mov rcx, qword [rsp + 0x48]
mov dword [rsp + 0x20], r12d
call fcn.14002fbb0
test esi, esi
je 0x14008f802
mov r8, qword [rsp + 0x48]
mov edx, dword [r8 + 0x3c]
cmp edx, esi
jbe 0x14008f7f5
mov eax, esi
lea rcx, [rax + rax*2]
mov rax, qword [r8 + 8]
mov dword [rax + rcx*8 + 8], edx
mov ecx, dword [r8 + 0x3c]
mov rax, qword [r8 + 0x30]
dec ecx
mov dword [rax + 0x64], ecx
cmp byte [rbx + 0x37], 0
mov ecx, 1
mov eax, dword [rsp + 0x44]
mov rdx, qword [rbx + 0x380]
cmovne eax, ecx
mov dword [rsp + 0x44], eax
mov eax, 0x200
test dword [rdx + 0x28], eax
je 0x14008f869
test r13d, r13d
je 0x14008f836
mov rax, qword [rbp - 0x48]
cmp qword [rdx + 0x20], rax
jne 0x14008f869
mov rax, qword [rbp - 0x60]
test byte [rax + 0x48], 0x20
je 0x14008f84f
mov rax, qword [rdx + 0x20]
mov ecx, dword [rax + 0x64]
and cl, 3
cmp cl, 2
je 0x14008f869
mov eax, dword [rsp + 0x54]
mov ecx, 0x1000
mov rsi, qword [rdx + 0x20]
or ax, cx
mov dword [rsp + 0x54], eax
mov qword [rbp - 0x48], rsi
jmp 0x14008f86d
mov qword [rbp - 0x48], r12
mov rcx, rbx
call fcn.1400943e0
mov r8d, dword [rsp + 0x50]
mov rdx, qword [rbp - 0x30]
mov ecx, dword [rsp + 0x54]
mov rax, qword [rbp - 8]
inc r13d
add rdx, 0x38
mov dword [rsp + 0x78], r13d
mov qword [rbp - 0x30], rdx
cmp r13d, dword [rax + 0x14]
jl 0x14008f540
mov rsi, qword [rbp - 0x20]
mov rax, qword [rbp - 0x48]
mov r13, qword [rsp + 0x70]
mov qword [r13 + 0x370], rax
test rax, rax
je 0x14008f8c3
mov eax, dword [rbp - 0x54]
mov dword [r13 + 0x348], eax
test rdi, rdi
je 0x14008f8d7
mov rdx, rdi
mov qword [rdi + 0x10], r12
mov rcx, rsi
call fcn.140045b70
mov rbx, qword [rsp + 0x48]
mov eax, dword [rsp + 0x60]
mov edx, dword [rbx + 0x3c]
cmp edx, eax
jbe 0x14008f8f3
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 8]
mov dword [rax + rcx*8 + 4], edx
mov r9d, dword [r13 + 0x34c]
xor r8d, r8d
mov rcx, rbx
mov dword [rsp + 0x20], r12d
lea edx, [r8 + 0x10]
call fcn.14002fbb0
mov eax, dword [rbp - 0x78]
mov r8, qword [rbx + 0x30]
not eax
test eax, eax
js 0x14008f930
mov rdx, qword [r8 + 0x80]
test rdx, rdx
je 0x14008f930
movsxd rcx, eax
mov eax, dword [rbx + 0x3c]
mov dword [rdx + rcx*4], eax
mov eax, dword [rbx + 0x3c]
dec eax
mov dword [r8 + 0x64], eax
mov rax, qword [rbp - 0x40]
cmp byte [rax + 0x39], 1
jbe 0x14008f997
test r15, r15
je 0x14008f997
test rsi, rsi
je 0x14008f98f
cmp qword [rsi + 0x320], 0
je 0x14008f964
mov rdx, r15
mov rcx, rsi
call fcn.14000d0c0
jmp 0x14008f997
cmp r15, qword [rsi + 0x168]
jb 0x14008f98f
cmp r15, qword [rsi + 0x170]
jae 0x14008f98f
mov rax, qword [rsi + 0x160]
mov qword [r15], rax
dec dword [rsi + 0x14c]
mov qword [rsi + 0x160], r15
jmp 0x14008f997
mov rcx, r15
call fcn.14000d020
cmp dword [rsp + 0x44], 0
jne 0x14008fa70
mov r8, qword [rbp - 0x18]
movzx ecx, byte [r8 + 0x1c]
test cl, 4
jne 0x14008fa70
cmp dword [r13 + 0x340], 0
je 0x14008f9cb
mov rax, qword [r8]
test byte [rax + 4], 1
je 0x14008fa70
mov rax, qword [r13 + 0x388]
test qword [r8 + 0x30], rax
jne 0x14008fa70
movsxd rax, dword [r8 + 8]
or cl, 4
mov byte [r8 + 0x1c], cl
test eax, eax
js 0x14008fa70
imul rdx, rax, 0x38
mov rax, qword [r8 + 0x20]
add rdx, qword [rax + 0x20]
add byte [rdx + 0x1d], 0xff
jne 0x14008fa70
lea rcx, [r13 + 0x340]
call fcn.14008cfe0
jmp 0x14008fa70
test r8b, 8
je 0x14008fa1f
mov byte [r13 + 0x365], 0x9a
jmp 0x14008fa70
mov rcx, qword [rsp + 0x48]
lea rdx, [0x140000000]
movzx eax, byte [r15 + rdx + 0xcc128]
mov r9d, ebx
movzx edx, byte [r15 + rdx + 0xcc268]
mov byte [r13 + 0x365], al
mov eax, dword [rsp + 0x50]
mov r8d, eax
mov dword [r13 + 0x368], eax
mov dword [rsp + 0x20], r12d
call fcn.14002fbb0
inc eax
mov byte [r13 + 0x367], 1
mov dword [r13 + 0x36c], eax
mov rdx, qword [rbp - 0x70]
mov edi, dword [rdx + 0x14]
mov rbx, qword [rdx + 0x20]
test edi, edi
jle 0x14008fadc
mov r12, qword [rbp - 0x40]
test byte [rbx + 0x1c], 6
jne 0x14008fac7
mov rax, qword [rbx + 0x30]
test qword [r13 + 0x388], rax
je 0x14008fa9e
mov byte [r12 + 0x37], 1
jmp 0x14008fac7
cmp dword [r13 + 0x340], 0
mov rdx, qword [rbx]
je 0x14008fab1
test byte [rdx + 4], 1
je 0x14008fac7
mov r8d, dword [rbp - 0x58]
mov r9d, 0x10
mov rcx, r14
call fcn.14004bd00
or byte [rbx + 0x1c], 4
dec edi
add rbx, 0x38
test edi, edi
jg 0x14008fa83
mov rsi, qword [rbp - 0x20]
xor r12d, r12d
mov rdx, qword [rbp - 0x70]
mov r13d, dword [rdx + 0x14]
mov r15, qword [rdx + 0x20]
test r13d, r13d
jle 0x14008fcf4
mov eax, 0x402
test byte [r15 + 0x1c], 6
jne 0x14008fce4
cmp word [r15 + 0x1a], ax
jne 0x14008fce4
mov ecx, dword [rsp + 0x50]
cmp dword [r15 + 0xc], ecx
jne 0x14008fce4
mov rax, qword [rbp - 0x38]
cmp dword [rax], 0
jne 0x14008fcdf
mov rax, qword [r15]
mov rdi, r12
mov qword [rbp - 0x18], rax
mov eax, dword [r15 + 0x10]
mov dword [rbp + 0x44], ecx
lea rcx, [rbp + 0x20]
mov dword [rbp + 0x48], eax
mov qword [rbp + 0x20], rdx
mov qword [rbp + 0x28], rdx
mov word [rbp + 0x38], 0x200
mov qword [rbp + 0x30], r12
mov qword [rbp + 0x3c], 3
mov byte [rbp + 0x3a], 2
call fcn.14008a400
mov rbx, rax
test rax, rax
je 0x14008fb93
mov rax, qword [rbx + 0x28]
test qword [rbp], rax
jne 0x14008fb82
test rax, rax
jne 0x14008fb7b
test byte [rbx + 0x1a], 2
jne 0x14008fb96
test rdi, rdi
cmove rdi, rbx
lea rcx, [rbp + 0x20]
call fcn.14008a400
mov rbx, rax
test rax, rax
jne 0x14008fb66
mov rbx, rdi
test rbx, rbx
je 0x14008fcdb
test byte [rbx + 0x1c], 4
jne 0x14008fcdb
test rsi, rsi
je 0x14008fc19
cmp byte [rsi + 0x50], 0
jne 0x14008fcdb
cmp byte [rsi + 0x14a], 0
mov eax, 0x48
je 0x14008fc1e
cmp ax, word [rsi + 0x148]
jbe 0x14008fbd7
inc dword [rsi + 0x158]
jmp 0x14008fc1e
mov rdi, qword [rsi + 0x160]
test rdi, rdi
jne 0x14008fbeb
inc dword [rsi + 0x15c]
jmp 0x14008fc1e
mov rax, qword [rdi]
mov qword [rsi + 0x160], rax
mov eax, dword [rsi + 0x14c]
inc eax
mov dword [rsi + 0x14c], eax
inc dword [rsi + 0x154]
cmp eax, dword [rsi + 0x150]
jle 0x14008fc40
mov dword [rsi + 0x150], eax
jmp 0x14008fc40
mov eax, 0x48
mov rcx, rax
call fcn.14000cbd0
mov rdi, rax
test rax, rax
jne 0x14008fc40
test rsi, rsi
je 0x14008fc37
mov byte [rsi + 0x50], 1
test rax, rax
je 0x14008fcdb
mov rax, qword [rbx]
mov r9d, 0x10
mov r8d, dword [rbp - 0x58]
mov rdx, rdi
mov rcx, r14
movups xmm0, xmmword [rax]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdi + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rdi + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rdi + 0x30], xmm1
movsd xmm0, qword [rax + 0x40]
mov rax, qword [rbp - 0x18]
movsd qword [rdi + 0x40], xmm0
mov rax, qword [rax + 0x10]
mov qword [rdi + 0x10], rax
call fcn.14004bd00
test rsi, rsi
je 0x14008fcd3
cmp qword [rsi + 0x320], 0
je 0x14008fca8
mov rdx, rdi
mov rcx, rsi
call fcn.14000d0c0
jmp 0x14008fcdb
cmp rdi, qword [rsi + 0x168]
jb 0x14008fcd3
cmp rdi, qword [rsi + 0x170]
jae 0x14008fcd3
mov rax, qword [rsi + 0x160]
mov qword [rdi], rax
dec dword [rsi + 0x14c]
mov qword [rsi + 0x160], rdi
jmp 0x14008fcdb
mov rcx, rdi
call fcn.14000d020
mov rdx, qword [rbp - 0x70]
mov eax, 0x402
dec r13d
add r15, 0x38
test r13d, r13d
jg 0x14008faf2
mov rax, qword [rbp - 0x38]
mov rdi, qword [rsp + 0x70]
mov r9d, dword [rax]
test r9d, r9d
je 0x14008fd79
mov rcx, qword [rsp + 0x48]
mov edx, 0x19
mov dword [rsp + 0x20], r12d
mov eax, dword [rcx + 0x3c]
lea r8d, [rdx - 0x18]
mov dword [rdi + 0x35c], eax
call fcn.14002fbb0
mov rcx, r14
call fcn.140049ff0
mov rsi, qword [rbp - 0x70]
cmp dword [rsi + 0x14], 0
mov rbx, qword [rsi + 0x20]
jle 0x14008fd79
nop dword [rax]
test byte [rbx + 0x1c], 6
jne 0x14008fd6c
mov rax, qword [rbx + 0x30]
test qword [rdi + 0x388], rax
jne 0x14008fd6c
mov r8d, dword [rbp - 0x58]
mov r9d, 0x10
mov rdx, qword [rbx]
mov rcx, r14
call fcn.14004bd00
or byte [rbx + 0x1c], 4
inc r12d
add rbx, 0x38
cmp r12d, dword [rsi + 0x14]
jl 0x14008fd40
mov rax, qword [rdi + 0x388]
mov rcx, qword [rbp + 0xa0]
xor rcx, rsp
call fcn.1400a1280
mov rbx, qword [rsp + 0x200]
add rsp, 0x1b0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret