Function at 0x1400d4980
Capabilities:
Check for software breakpoints

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rbp
push rdi
push r12
push r13
push r14
lea rbp, [rsp - 0x30]
sub rsp, 0x130
mov rax, qword [0x14049f410]
xor rax, rsp
mov qword [rbp + 0x20], rax
mov eax, dword [rcx + 0x754]
xor r14d, r14d
mov qword [rbp - 0x68], rcx
mov rbx, rcx
mov edi, r14d
test eax, eax
je 0x1400d49d3
cmp dword [rcx + 0x680], eax
setae dil
mov dword [rsp + 0x74], edi
jmp 0x1400d49d8
mov dword [rsp + 0x74], r14d
test byte [rcx + 0x14], 4
mov esi, 1
mov dword [rcx + 0x88], r14d
je 0x1400d4ae1
lea rax, [rcx + 0x670]
cmp qword [rax], rax
jne 0x1400d4a59
mov dword [rcx + 0x72c], r14d
mov ecx, dword [rcx + 0x7a0]
test ecx, ecx
je 0x1400d4a35
cmp dword [rbx + 0x720], esi
je 0x1400d4a35
mov eax, dword [rbx + 0x728]
xor edx, edx
mov dword [rbx + 0x720], eax
mov rcx, rbx
mov dword [rbx + 0x7e0], esi
mov dword [rbx + 0x730], esi
jmp 0x1400d4aec
mov eax, dword [rbx + 0x728]
mov dword [rbx + 0x720], eax
mov dword [rbx + 0x730], esi
test ecx, ecx
je 0x1400d4af1
xor edx, edx
mov rcx, rbx
jmp 0x1400d4aec
mov ecx, dword [rcx + 0x720]
cmp dword [rbx + 0x700], ecx
jb 0x1400d4af1
cmp dword [rbx + 0x7a0], 0
je 0x1400d4a8c
mov edx, esi
mov rcx, rbx
call fcn.1400e0940
mov ecx, dword [rbx + 0x720]
mov dword [rbx + 0x700], ecx
jmp 0x1400d4af1
mov eax, dword [rbx + 0x72c]
inc eax
mov dword [rbx + 0x72c], eax
cmp eax, 2
jb 0x1400d4ac9
mov ecx, eax
mov eax, dword [rbx + 0x728]
shl ecx, 0xa
sub ecx, 0x600
shr ecx, 0xa
cmp eax, ecx
cmova ecx, eax
mov eax, dword [rbx + 0x724]
cmp eax, ecx
cmovb ecx, eax
mov dword [rbx + 0x720], ecx
cmp ecx, esi
jbe 0x1400d4ad9
mov eax, dword [rbx + 0x734]
mov dword [rbx + 0x730], eax
mov dword [rbx + 0x700], ecx
jmp 0x1400d4af1
cmp dword [rcx + 0x7a0], 0
je 0x1400d4af1
mov edx, esi
call fcn.1400e0940
cmp dword [rbx + 0x77c], 0
je 0x1400d4b0c
mov dword [rbx + 0x720], esi
mov dword [rbx + 0x730], esi
mov dword [rbx + 0x700], esi
mov rcx, qword [rbx + 0x668]
xor edx, edx
mov r8d, 0xffffffff
call qword [rbx + 0x660]
mov edx, dword [rbx + 0x720]
mov r12d, eax
mov eax, dword [rbx + 0x700]
cmp eax, edx
je 0x1400d4b44
test eax, eax
je 0x1400d4b44
lea rcx, [rbx + 0x670]
cmp qword [rcx], rcx
je 0x1400d4b7c
test r12d, r12d
jne 0x1400d4b7c
test edi, edi
jne 0x1400d4b71
cmp dword [rbx + 0x768], edi
jne 0x1400d4b6b
xor edx, edx
mov rcx, rbx
call fcn.1400d7280
mov edx, dword [rbx + 0x720]
mov eax, dword [rbx + 0x700]
cmp eax, edx
mov edx, esi
jae 0x1400d4b74
mov edx, r14d
mov rcx, rbx
call fcn.1400dfc80
mov rcx, qword [rbx + 0x668]
mov r8d, esi
mov edx, esi
call qword [rbx + 0x660]
mov ecx, dword [rbx + 0x14]
or r12d, eax
mov dword [rsp + 0x40], r12d
test cl, 0xc0
je 0x1400d4bc4
lea rax, [rbx + 0x670]
cmp qword [rax], rax
je 0x1400d4bb2
mov eax, dword [rbx + 0x81c]
jmp 0x1400d4bbe
mov eax, dword [rbx + 0x820]
test eax, eax
jle 0x1400d4bc4
dec eax
mov dword [rbx + 0x820], eax
mov eax, dword [rbx + 0x720]
mov qword [rsp + 0x168], r15
cmp dword [rbx + 0x700], eax
jb 0x1400d4d01
mov dword [rbx + 0x700], r14d
test cl, 0x40
je 0x1400d4c88
lea rax, [rbx + 0x670]
mov r8, qword [rax]
lea rdi, [rbx + 0x76c]
mov r15d, dword [rdi]
lea rsi, [rbx + 0x770]
mov r13d, dword [rsi]
cmp r8, rax
jne 0x1400d4c20
cmp dword [rbx + 0x820], 0
mov edx, r13d
mov ecx, r15d
jne 0x1400d4c31
mov dword [rdi], 0x7fffffff
mov edx, r14d
mov dword [rsi], r14d
mov ecx, 0x7fffffff
cmp r8, rax
je 0x1400d4c70
mov r8, rsi
mov rdx, rdi
mov rcx, rax
call fcn.1400d27f0
mov edx, dword [rsi]
mov ecx, dword [rdi]
cmp ecx, edx
ja 0x1400d4c74
imul eax, ecx, 0x9a
add eax, 0x200
shr eax, 0xa
sub ecx, eax
imul eax, edx, 0x133
mov dword [rdi], ecx
add eax, 0x200
shr eax, 0xa
add edx, eax
mov dword [rsi], edx
cmp ecx, edx
jbe 0x1400d4c83
cmp dword [rbx + 0x820], 0
jle 0x1400d4c83
mov dword [rdi], r15d
mov dword [rsi], r13d
mov esi, 1
cmp dword [rbx + 0x708], 0
jbe 0x1400d4d01
mov eax, dword [rbx + 0x72c]
test r14b, r14b
jne 0x1400d4cdf
cmp eax, 1
je 0x1400d4cdf
cmp eax, 2
jne 0x1400d4cb5
mov dword [rbx + 0x790], esi
mov dword [rbx + 0x6fc], r14d
jmp 0x1400d4cdf
inc dword [rbx + 0x6f4]
mov eax, dword [rbx + 0x6f4]
mov ecx, eax
cmp eax, dword [rbx + 0x6f0]
mov eax, dword [rbx + 0x788]
cmovae ecx, r14d
mov dword [rbx + 0x790], eax
mov dword [rbx + 0x6f4], ecx
inc dword [rbx + 0x18]
mov eax, dword [rbx + 0x788]
shr eax, 1
mov ecx, eax
imul ecx, eax
cmp eax, 1
mov eax, dword [rbx + 0x18]
cmovb ecx, esi
cmp eax, ecx
cmovae eax, r14d
mov dword [rbx + 0x18], eax
mov r10d, dword [rbx + 0x14]
bt r10d, 0xd
jb 0x1400d4db8
lea r9, [rbx + 0x670]
mov r8d, r14d
mov rax, qword [r9]
mov edx, r14d
cmp rax, r9
je 0x1400d4d97
cmp dword [rax + 0x7c], 2
jg 0x1400d4d44
cmp dword [rax + 0x94], 0xa
jb 0x1400d4d44
mov ecx, dword [rax + 0xa0]
cmp ecx, edx
jbe 0x1400d4d44
mov r8d, dword [rax + 0x40]
mov edx, ecx
mov rax, qword [rax]
cmp rax, r9
jne 0x1400d4d25
lea eax, [r8 + 0x2d]
cmp eax, 0x5a
jbe 0x1400d4d97
lea eax, [r8 + 0x87]
cmp eax, 0x59
ja 0x1400d4d68
mov eax, 0xffffffa6
jmp 0x1400d4d76
lea eax, [r8 - 0x38]
cmp eax, 0x4f
ja 0x1400d4d90
mov eax, 0x5a
mov dword [rbx + 0x6dc], eax
mov eax, dword [rbx + 0x748]
mov dword [rbx + 0x73c], eax
mov eax, dword [rbx + 0x744]
jmp 0x1400d4db2
mov eax, 0xb4
jmp 0x1400d4d9a
mov eax, r14d
mov dword [rbx + 0x6dc], eax
mov eax, dword [rbx + 0x744]
mov dword [rbx + 0x73c], eax
mov eax, dword [rbx + 0x748]
mov dword [rbx + 0x740], eax
mov eax, dword [rbx + 0x6f4]
lea rdx, [rax + rax]
mov rax, qword [rbx + 0x6e0]
movsx r9d, word [rdx + rax]
add r9d, dword [rbx + 0x6dc]
mov dword [rsp + 0x58], r9d
cmp r9d, 0xb4
jle 0x1400d4dec
add r9d, 0xfffffe98
jmp 0x1400d4dfc
cmp r9d, 0xffffff4d
jge 0x1400d4e01
add r9d, 0x168
mov dword [rsp + 0x58], r9d
mov rax, qword [rbx + 0x6e8]
movsx ecx, word [rdx + rax]
mov dword [rsp + 0x44], ecx
test r10b, 4
je 0x1400d4e61
cmp dword [rbx + 0x6fc], 0
je 0x1400d4e61
cmp dword [rbx + 0x72c], 2
jbe 0x1400d4e61
cmp dword [rbx + 0x700], 0
jne 0x1400d4e61
mov r9d, dword [rbx + 0x6f8]
mov eax, dword [rbx + 0x728]
mov dword [rsp + 0x58], r9d
mov dword [rbx + 0x720], eax
mov dword [rsp + 0x44], r14d
mov dword [rbx + 0x790], esi
mov dword [rbx + 0x730], esi
mov dword [rbx + 0x6fc], r14d
test r10b, 0x20
je 0x1400d4e7d
mov r8d, dword [rbx + 0x784]
mov edx, r9d
mov rcx, rbx
call fcn.1400d6db0
mov dword [rsp + 0x58], eax
mov ecx, dword [rbx + 0x730]
mov eax, 0x51eb851f
mov r8d, dword [rbx + 0x700]
mul ecx
shr edx, 5
cmp r8d, edx
ja 0x1400d50bd
imul eax, r8d, 0x64
cmp eax, ecx
je 0x1400d50bd
cmp dword [rsp + 0x74], 0
jne 0x1400d50bd
test r12d, r12d
jne 0x1400d50bd
mov rax, qword [rbx + 0x80]
mov ecx, dword [rbx + 0x73c]
mov qword [rsp + 0x60], 0
mov r10d, dword [rax]
mov r8d, dword [rax + 4]
mov dword [rsp + 0x40], r10d
mov dword [rsp + 0x68], r10d
mov dword [rsp + 0x70], r8d
mov dword [rsp + 0x6c], r8d
cmp ecx, 0x64
jb 0x1400d4f00
cmp dword [rbx + 0x740], 0x64
jae 0x1400d508e
imul ecx, r10d
mov eax, 0x51eb851f
mov r12d, r10d
mov r15d, r8d
mul ecx
mov ecx, dword [rbx + 0x740]
mov eax, 0x51eb851f
imul ecx, r8d
mov esi, edx
shr esi, 5
sub r12d, esi
mov dword [rsp + 0x68], esi
shr r12d, 1
mov dword [rsp + 0x60], r12d
mul ecx
lea rax, [rbx + 0x670]
mov r13, qword [rax]
mov edi, edx
shr edi, 5
sub r15d, edi
mov dword [rsp + 0x6c], edi
shr r15d, 1
mov dword [rsp + 0x64], r15d
cmp r13, rax
je 0x1400d5089
mov rbx, rax
lea rcx, [rbp - 0x78]
mov rax, r13
mov r13, qword [r13]
add rax, 0x4c
mov qword [rsp + 0x28], rcx
mov r9d, r8d
xor ecx, ecx
mov qword [rsp + 0x20], rax
mov r8d, r10d
xor edx, edx
call fcn.1400e44b0
mov r8d, dword [rbp - 0x70]
mov ecx, dword [rbp - 0x6c]
mov r11d, dword [rsp + 0x40]
imul r10d, r8d, 0x4cd
shr r8d, 1
add r10d, 0x200
shr r10d, 0xa
mov eax, r10d
cdq
and edx, 3
lea r9d, [rdx + rax]
mov eax, r10d
sar r9d, 2
cdq
sub eax, edx
mov edx, dword [rbp - 0x78]
sar eax, 1
dec edx
sub r8d, eax
sub r8d, r9d
add edx, r8d
mov r8d, r14d
test edx, edx
cmovg r8d, edx
shr ecx, 1
sub ecx, eax
mov edx, r14d
mov eax, dword [rbp - 0x74]
sub ecx, r9d
dec eax
add ecx, eax
lea eax, [r10 + 1]
lea eax, [rax + r9*2]
test ecx, ecx
mov r9d, dword [rsp + 0x70]
cmovg edx, ecx
sub r11d, r8d
dec r11d
cmp eax, r11d
cmovb r11d, eax
sub r9d, edx
dec r9d
cmp eax, r9d
cmovb r9d, eax
cmp r8d, r12d
jge 0x1400d502b
sub r12d, r8d
mov dword [rsp + 0x60], r8d
add esi, r12d
mov r12d, r8d
mov dword [rsp + 0x68], esi
cmp edx, r15d
jge 0x1400d5041
sub r15d, edx
mov dword [rsp + 0x64], edx
add edi, r15d
mov r15d, edx
mov dword [rsp + 0x6c], edi
lea ecx, [r11 + r8]
lea eax, [rsi + r12]
cmp ecx, eax
jbe 0x1400d505a
mov esi, r11d
sub esi, r12d
add esi, r8d
mov dword [rsp + 0x68], esi
lea ecx, [r9 + rdx]
lea eax, [rdi + r15]
cmp ecx, eax
jbe 0x1400d5072
mov edi, r9d
sub edi, r15d
add edi, edx
mov dword [rsp + 0x6c], edi
mov r8d, dword [rsp + 0x70]
mov r10d, dword [rsp + 0x40]
cmp r13, rbx
jne 0x1400d4f60
mov rbx, qword [rbp - 0x68]
mov esi, 1
mov r8d, esi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400e0430
mov rcx, qword [rbx + 0x668]
mov r8d, esi
mov edx, esi
mov dword [rbx + 0x88], esi
call qword [rbx + 0x660]
mov r12d, eax
mov dword [rsp + 0x40], eax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x50], rax
lea r13, [rbx + 0x670]
lea rax, [rsp + 0x48]
mov qword [rsp + 0x48], rax
mov rax, qword [r13]
cmp rax, r13
je 0x1400d5108
mov qword [rsp + 0x48], rax
lea rcx, [rsp + 0x48]
mov qword [rax + 8], rcx
lea rcx, [rsp + 0x48]
mov rax, qword [r13 + 8]
mov qword [rax], rcx
mov qword [rsp + 0x50], rax
mov qword [r13 + 8], r13
mov qword [r13], r13
test r12d, r12d
jne 0x1400d57ea
mov rax, qword [rsp + 0x48]
lea rcx, [rsp + 0x48]
cmp rax, rcx
je 0x1400d57ea
mov ecx, 0xe4
lea r13d, [r12 + 1]
nop
test r12d, r12d
jne 0x1400d57de
cmp dword [rax + 0x15c], r12d
lea rdi, [rax - 0x98]
mov rax, qword [rax]
mov qword [rbp - 0x78], rax
mov rax, qword [rbx + 0x80]
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x68], 0
mov r15d, dword [rax + 4]
mov r9d, r15d
mov esi, dword [rax]
mov eax, 0x1ec
cmovbe rax, rcx
mov r8d, esi
lea rcx, [rsp + 0x60]
add rax, rdi
mov qword [rsp + 0x28], rcx
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rax
call fcn.1400e44b0
cmp dword [rbx + 0x88], r12d
je 0x1400d51ad
mov rcx, rbx
call fcn.1400d7c00
jmp 0x1400d524d
mov r8d, dword [rsp + 0x68]
mov ecx, dword [rsp + 0x6c]
imul r10d, r8d, 0x4cd
shr r8d, 1
add r10d, 0x200
shr r10d, 0xa
mov eax, r10d
cdq
and edx, 3
lea r9d, [rdx + rax]
mov eax, r10d
cdq
sar r9d, 2
sub eax, edx
mov edx, dword [rsp + 0x60]
sar eax, 1
dec edx
sub r8d, eax
sub r8d, r9d
add edx, r8d
mov r8d, r14d
test edx, edx
cmovg r8d, edx
shr ecx, 1
sub ecx, eax
mov dword [rbp - 0x58], r8d
mov eax, dword [rsp + 0x64]
sub ecx, r9d
dec eax
mov edx, r14d
add ecx, eax
lea eax, [r10 + 1]
test ecx, ecx
lea eax, [rax + r9*2]
cmovg edx, ecx
sub esi, r8d
dec esi
mov dword [rbp - 0x54], edx
cmp eax, esi
mov rcx, rbx
cmovb esi, eax
sub r15d, edx
dec r15d
mov dword [rbp - 0x50], esi
cmp eax, r15d
lea rdx, [rbp - 0x58]
cmovb r15d, eax
xor r8d, r8d
mov dword [rbp - 0x4c], r15d
call fcn.1400e0430
cmp dword [rdi + 0x1d4], 0
mov rdx, qword [rbx + 0x28]
mov qword [rbp - 0x80], rdx
mov eax, dword [rdx + 0x14]
mov dword [rbp - 0x68], eax
mov eax, dword [rdx]
mov dword [rbp - 0x60], eax
jne 0x1400d527e
cmp dword [rdi + 0x114], 3
jge 0x1400d527e
cmp dword [rdi + 0x130], 4
mov r8d, r13d
ja 0x1400d5281
mov r8d, r14d
mov eax, dword [rbx + 0x794]
mov dword [rsp + 0x40], r8d
cmp eax, 1
jne 0x1400d5298
mov dword [rsp + 0x70], r13d
jmp 0x1400d52a9
add eax, eax
mov ecx, 5
cmp eax, 5
cmovb eax, ecx
mov dword [rsp + 0x70], eax
mov esi, dword [rdi + 0xdc]
mov r12d, r14d
mov r15d, dword [rdi + 0xd8]
mov r13d, r15d
test esi, esi
jne 0x1400d530a
cmp dword [rdi + 0x114], 1
jg 0x1400d530a
cmp dword [rdi + 0x12c], 5
jbe 0x1400d530a
mov eax, r15d
mov rcx, rbx
sub eax, dword [rdi + 0x10]
cdq
xor eax, edx
sub eax, edx
mov edx, r15d
cmp eax, 0x14
cmovle edx, dword [rdi + 0x10]
xor r8d, r8d
call fcn.1400d6db0
mov r8d, dword [rsp + 0x40]
cmp eax, r15d
mov rdx, qword [rbp - 0x80]
mov r13d, eax
cmovne r8d, r14d
mov dword [rsp + 0x40], r8d
test dword [rbx + 0x14], 0x28000
jne 0x1400d5343
cmp esi, 0xffffffa6
je 0x1400d533d
cmp esi, 0xffffffd3
je 0x1400d5335
cmp esi, 0x2d
je 0x1400d532d
cmp esi, 0x5a
jne 0x1400d5343
lea r12d, [rsi - 0x2d]
jmp 0x1400d5343
mov r12d, 0x5a
jmp 0x1400d5343
mov r12d, 0xffffffa6
jmp 0x1400d5343
mov r12d, 0xffffffd3
mov ecx, dword [rdi + 0xb0]
cmp ecx, 0x46
jbe 0x1400d5355
mov eax, 0xe
jmp 0x1400d5385
cmp ecx, 0x3c
jbe 0x1400d5361
mov eax, 0xf
jmp 0x1400d5385
cmp ecx, 0x32
jbe 0x1400d536d
mov eax, 0x10
jmp 0x1400d5385
cmp ecx, 0x28
jbe 0x1400d5379
mov eax, 0x11
jmp 0x1400d5385
cmp ecx, 0x1e
mov eax, r14d
setbe al
add eax, 0x12
mov dword [rdx + 0x14], eax
mov r9d, r13d
mov eax, dword [rdi + 0x90]
mov rdx, rdi
mov dword [rsp + 0x38], eax
mov rcx, rbx
mov eax, dword [rbx + 0x794]
mov dword [rsp + 0x30], r8d
lea r8, [rsp + 0x60]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r14d
call fcn.1400d9330
test eax, eax
jne 0x1400d5750
mov r9d, dword [rdi + 0xd8]
mov esi, dword [rsp + 0x40]
cmp r13d, r9d
je 0x1400d5406
mov eax, dword [rdi + 0x90]
lea r8, [rsp + 0x60]
mov dword [rsp + 0x38], eax
mov rdx, rdi
mov eax, dword [rbx + 0x794]
mov rcx, rbx
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r14d
call fcn.1400d9330
test eax, eax
jne 0x1400d5750
test dword [rbx + 0x14], 0x8000
jne 0x1400d545a
mov ecx, dword [rdi + 0xdc]
cmp ecx, 0x2d
je 0x1400d541f
cmp ecx, 0xffffffd3
jne 0x1400d545a
mov eax, dword [rdi + 0x90]
lea r8, [rsp + 0x60]
mov r9d, dword [rdi + 0xd8]
mov rdx, rdi
mov dword [rsp + 0x38], eax
mov eax, dword [rbx + 0x794]
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ecx
mov rcx, rbx
call fcn.1400d9330
test eax, eax
jne 0x1400d5750
test dword [rbx + 0x14], 0x20000
jne 0x1400d54ae
mov ecx, dword [rdi + 0xdc]
cmp ecx, 0x5a
je 0x1400d5473
cmp ecx, 0xffffffa6
jne 0x1400d54ae
mov eax, dword [rdi + 0x90]
lea r8, [rsp + 0x60]
mov r9d, dword [rdi + 0xd8]
mov rdx, rdi
mov dword [rsp + 0x38], eax
mov eax, dword [rbx + 0x794]
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ecx
mov rcx, rbx
call fcn.1400d9330
test eax, eax
jne 0x1400d5750
test r12d, r12d
je 0x1400d54ef
mov eax, dword [rdi + 0x90]
lea r8, [rsp + 0x60]
mov r9d, dword [rdi + 0xd8]
mov rdx, rdi
mov dword [rsp + 0x38], eax
mov rcx, rbx
mov eax, dword [rbx + 0x794]
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r12d
call fcn.1400d9330
test eax, eax
jne 0x1400d5750
lea r13, [rbx + 0x698]
mov rax, qword [r13]
cmp rax, r13
je 0x1400d576c
mov ecx, dword [rdi + 0xd8]
nop dword [rax]
mov rsi, rax
cmp dword [rax - 8], ecx
je 0x1400d5520
mov rax, qword [rax]
cmp rax, r13
jne 0x1400d5510
mov rax, qword [r13]
mov ecx, r14d
nop word [rax + rax]
mov rax, qword [rax]
inc ecx
cmp rax, r13
jne 0x1400d5530
shr ecx, 1
mov r9d, 1
cmp ecx, 1
mov dword [rsp + 0x78], r14d
mov r15, rsi
cmova ecx, r9d
mov dword [rbp - 0x80], ecx
test ecx, ecx
je 0x1400d5642
nop dword [rax]
mov rsi, qword [rsi + 8]
mov ecx, dword [rdi + 0xdc]
mov r12d, ecx
cmp rsi, r13
jne 0x1400d5576
mov rsi, qword [rsi + 8]
mov r15, qword [r15]
cmp r15, r13
jne 0x1400d5581
mov r15, qword [r15]
test ecx, ecx
je 0x1400d55ba
mov eax, dword [rsi - 8]
test eax, eax
je 0x1400d559f
cmp eax, 0x5a
je 0x1400d559f
cmp eax, 0xb4
je 0x1400d559f
cmp eax, 0xffffffa6
cmovne ecx, r14d
mov eax, dword [r15 - 8]
test eax, eax
je 0x1400d55ba
cmp eax, 0x5a
je 0x1400d55ba
cmp eax, 0xb4
je 0x1400d55ba
cmp eax, 0xffffffa6
cmovne r12d, r14d
mov eax, dword [rdi + 0x90]
lea r8, [rsp + 0x60]
mov r9d, dword [rsi - 8]
mov rdx, rdi
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x70]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ecx
mov rcx, rbx
call fcn.1400d9330
test eax, eax
jne 0x1400d5750
mov eax, dword [rdi + 0x90]
lea r8, [rsp + 0x60]
mov r9d, dword [r15 - 8]
mov rdx, rdi
mov dword [rsp + 0x38], eax
mov rcx, rbx
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x70]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r12d
call fcn.1400d9330
test eax, eax
jne 0x1400d5750
mov eax, dword [rsp + 0x78]
inc eax
mov dword [rsp + 0x78], eax
cmp eax, dword [rbp - 0x80]
jl 0x1400d5560
test dword [rbx + 0x14], 0x8000
mov esi, dword [rsp + 0x40]
jne 0x1400d56cd
mov eax, dword [rdi + 0x90]
lea r8, [rsp + 0x60]
mov r9d, dword [rdi + 0xd8]
mov rdx, rdi
mov dword [rsp + 0x38], eax
mov rcx, rbx
mov eax, dword [rbx + 0x794]
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], 0x2d
call fcn.1400d9330
test eax, eax
jne 0x1400d5750
mov eax, dword [rdi + 0x90]
lea r8, [rsp + 0x60]
mov r9d, dword [rdi + 0xd8]
mov rdx, rdi
mov dword [rsp + 0x38], eax
mov rcx, rbx
mov eax, dword [rbx + 0x794]
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], 0xffffffd3
call fcn.1400d9330
test eax, eax
jne 0x1400d5750
test dword [rbx + 0x14], 0x20000
jne 0x1400d576c
mov eax, dword [rdi + 0x90]
lea r8, [rsp + 0x60]
mov r9d, dword [rdi + 0xd8]
mov rdx, rdi
mov dword [rsp + 0x38], eax
mov rcx, rbx
mov eax, dword [rbx + 0x794]
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], 0x5a
call fcn.1400d9330
test eax, eax
jne 0x1400d5750
mov eax, dword [rdi + 0x90]
lea r8, [rsp + 0x60]
mov r9d, dword [rdi + 0xd8]
mov rdx, rdi
mov dword [rsp + 0x38], eax
mov rcx, rbx
mov eax, dword [rbx + 0x794]
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], 0xffffffa6
call fcn.1400d9330
test eax, eax
je 0x1400d576c
mov dword [rsp + 0x28], r14d
lea r8, [rbp - 0x80]
xor r9d, r9d
mov dword [rsp + 0x20], r14d
mov rdx, rdi
mov rcx, rbx
call fcn.1400e12b0
cmp dword [rbx + 0x88], 0
je 0x1400d577d
mov rcx, rbx
call fcn.1400d7c00
mov rax, qword [rbx + 0x28]
mov r13d, 1
mov ecx, dword [rbp - 0x68]
mov r8d, r13d
mov edx, r13d
mov dword [rax + 0x14], ecx
mov rax, qword [rbx + 0x28]
mov ecx, dword [rbp - 0x60]
mov dword [rax], ecx
mov rcx, qword [rbx + 0x668]
mov dword [rbx + 0x6c0], 0x16
mov dword [rbx + 0x6c4], 0x16
mov dword [rbx + 0x6bc], r14d
call qword [rbx + 0x660]
lea rcx, [rsp + 0x48]
mov r12d, eax
mov rax, qword [rbp - 0x78]
cmp rax, rcx
mov ecx, 0xe4
jne 0x1400d5130
mov dword [rsp + 0x40], r12d
lea r13, [rbx + 0x670]
cmp dword [rsp + 0x74], 0
jne 0x1400d5cb1
test r12d, r12d
jne 0x1400d5cb1
mov rcx, rbx
call fcn.1400d7c00
test byte [rbx + 0x14], 0x80
mov dword [rbx + 0x738], r14d
je 0x1400d59c6
cmp qword [r13], r13
je 0x1400d59b4
lea rsi, [rbx + 0x698]
mov ecx, r14d
mov rax, qword [rsi]
cmp rax, rsi
je 0x1400d59c6
nop word [rax + rax]
mov rax, qword [rax]
inc ecx
cmp rax, rsi
jne 0x1400d5840
cmp ecx, 3
jbe 0x1400d59c6
mov rax, qword [r13]
mov r8d, r14d
mov rcx, rax
mov edx, r14d
mov r15d, r14d
mov r9d, 1
nop dword [rax]
cmp dword [rcx + 0x7c], 0
jne 0x1400d587e
cmp dword [rcx + 0x54], 0x16
cmova edx, r9d
mov rcx, qword [rcx]
cmp rcx, r13
jne 0x1400d5870
cmp dword [rax + 0x7c], 0
jne 0x1400d58a8
mov ecx, dword [rax + 0x98]
cmp ecx, r8d
jbe 0x1400d58a8
test edx, edx
je 0x1400d58a1
cmp dword [rax + 0x54], 0x16
jbe 0x1400d58a8
mov r15d, dword [rax + 0x40]
mov r8d, ecx
mov rax, qword [rax]
cmp rax, r13
jne 0x1400d5886
cmp r15d, dword [rbx + 0x6a8]
jne 0x1400d58ce
mov rdx, qword [rbx + 0x6b0]
test rdx, rdx
jne 0x1400d5998
mov rdi, r14
jmp 0x1400d58db
cmp qword [rbx + 0x6b0], 0
mov rdi, r14
jne 0x1400d5900
mov rcx, qword [rbx + 8]
mov edx, 0x10
mov rax, qword [rcx]
call qword [rax + 8]
mov qword [rbx + 0x6b0], rax
test rax, rax
jne 0x1400d5900
mov eax, 0xfffffffd
jmp 0x1400d68fd
mov rax, qword [rsi]
cmp rax, rsi
je 0x1400d5922
nop dword [rax + rax]
cmp dword [rax - 8], r15d
lea rdi, [rax - 8]
je 0x1400d5922
mov rax, qword [rax]
cmp rax, rsi
jne 0x1400d5910
test rdi, rdi
je 0x1400d5965
mov eax, dword [rdi]
mov rcx, qword [rbx + 0x6b0]
mov dword [rcx], eax
mov rax, qword [rdi + 0x10]
cmp rax, rsi
jne 0x1400d593f
mov rax, qword [rax + 8]
mov eax, dword [rax - 8]
mov dword [rcx + 4], eax
mov eax, dword [rdi]
mov dword [rcx + 8], eax
mov rax, qword [rdi + 8]
cmp rax, rsi
jne 0x1400d5956
mov rax, qword [rax]
mov eax, dword [rax - 8]
mov dword [rcx + 0xc], eax
mov rdx, qword [rbx + 0x6b0]
jmp 0x1400d5985
mov rdx, qword [rbx + 0x6b0]
test rdx, rdx
je 0x1400d5985
mov rcx, qword [rbx + 8]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rdx, r14
mov qword [rbx + 0x6b0], r14
mov dword [rbx + 0x6a8], r15d
mov dword [rbx + 0x6b8], r14d
test rdx, rdx
je 0x1400d59c6
mov ecx, dword [rbx + 0x6b8]
mov eax, ecx
and eax, 3
mov edi, dword [rdx + rax*4]
lea eax, [rcx + 1]
mov dword [rbx + 0x6b8], eax
mov ecx, r14d
jmp 0x1400d59ce
cmp dword [rbx + 0x820], 0
jle 0x1400d59c6
mov rdx, qword [rbx + 0x6b0]
jmp 0x1400d5993
mov ecx, dword [rsp + 0x44]
mov edi, dword [rsp + 0x58]
mov eax, dword [rbx + 0x780]
test al, 8
je 0x1400d5a70
cmp dword [rbx + 0x6f0], 0
mov edi, r14d
jbe 0x1400d5a5b
nop dword [rax + rax]
mov eax, edi
lea r8, [rax + rax]
mov rax, qword [rbx + 0x6e0]
movsx edx, word [r8 + rax]
add edx, dword [rbx + 0x6dc]
cmp edx, 0xb4
jle 0x1400d5a18
add edx, 0xfffffe98
jmp 0x1400d5a26
cmp edx, 0xffffff4d
jge 0x1400d5a26
add edx, 0x168
mov rax, qword [rbx + 0x6e8]
mov rcx, rbx
movsx r8d, word [r8 + rax]
call fcn.1400e4ae0
cmp eax, 0xfffffffe
mov ecx, r14d
sete cl
inc edi
or r12d, ecx
cmp edi, dword [rbx + 0x6f0]
jb 0x1400d59f0
mov eax, dword [rbx + 0x780]
mov dword [rsp + 0x40], r12d
test al, 1
je 0x1400d5be4
mov rcx, rbx
call fcn.1400d8e20
jmp 0x1400d5be4
mov r8d, ecx
mov edx, edi
mov rcx, rbx
call fcn.1400de440
cmp eax, 0xfffffffe
mov r12d, r14d
sete r12b
test byte [rbx + 0x780], 1
mov dword [rsp + 0x40], r12d
je 0x1400d5a9d
mov rcx, rbx
call fcn.1400d8e20
cmp dword [rbx + 0x7a0], 0
je 0x1400d5be4
mov r15d, dword [rbx + 0x7b0]
test r15d, r15d
jle 0x1400d5be4
movdqa xmm0, xmmword [0x14017d140]
lea r13, [rbp - 0x3c]
mov r9d, dword [rbx + 0x6f4]
mov rsi, r14
mov r12d, dword [rbx + 0x6f0]
mov r8d, dword [rsp + 0x40]
movups xmmword [rbp - 0x3c], xmm0
mov dword [rbp - 0x40], edi
movups xmmword [rbp - 0x2c], xmm0
movups xmmword [rbp - 0x1c], xmm0
movups xmmword [rbp - 0xc], xmm0
movups xmmword [rbp + 4], xmm0
movq qword [rbp + 0x14], xmm0
movd dword [rbp + 0x1c], xmm0
nop dword [rax]
test r12d, r12d
jle 0x1400d5bd8
test r8d, r8d
jne 0x1400d5bd8
mov rax, qword [rbx + 0x6e0]
lea ecx, [r9 + 1]
cmp ecx, dword [rbx + 0x6f0]
mov r9d, r14d
mov edx, r14d
cmovb r9d, ecx
mov rcx, rsi
mov qword [rbp - 0x78], r9
movsx edi, word [rax + r9*2]
mov rax, qword [rbx + 0x6e8]
movsx r10d, word [rax + r9*2]
test rsi, rsi
js 0x1400d5b66
nop word [rax + rax]
cmp edi, dword [rbp + rcx*4 - 0x40]
mov eax, r14d
sete al
or edx, eax
sub rcx, 1
jns 0x1400d5b50
test edx, edx
jne 0x1400d5bcc
mov edx, dword [rbx + 0x6dc]
add edx, edi
cmp edx, 0xb4
jle 0x1400d5b7e
add edx, 0xfffffe98
jmp 0x1400d5b8c
cmp edx, 0xffffff4d
jge 0x1400d5b8c
add edx, 0x168
mov r8d, r10d
mov rcx, rbx
call fcn.1400de440
cmp eax, 0xfffffffe
mov ecx, r14d
sete cl
test byte [rbx + 0x780], 1
mov dword [rsp + 0x40], ecx
je 0x1400d5bb5
mov rcx, rbx
call fcn.1400d8e20
mov r8d, dword [rsp + 0x40]
inc rsi
mov r9, qword [rbp - 0x78]
mov dword [r13], edi
add r13, 4
dec r15d
dec r12d
test r15d, r15d
jg 0x1400d5b00
mov r12d, dword [rsp + 0x40]
lea r13, [rbx + 0x670]
mov rcx, rbx
call fcn.1400d7c00
mov rdi, qword [r13]
cmp rdi, r13
je 0x1400d5cb1
mov r12d, 1
nop
cmp dword [rdi + 0x54], 0
lea rdx, [rdi - 0x98]
mov rdi, qword [rdi]
je 0x1400d5c28
mov dword [rsp + 0x28], r12d
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x20], r12d
mov rcx, rbx
call fcn.1400e12b0
cmp rdi, r13
jne 0x1400d5c00
mov rdi, qword [rbx + 0x670]
mov r12d, dword [rsp + 0x40]
cmp rdi, r13
je 0x1400d5cb1
nop
cmp dword [rdi + 0x54], 0
lea rdx, [rdi - 0x98]
mov rdi, qword [rdi]
jne 0x1400d5c58
mov rcx, rbx
call fcn.1400e2e70
cmp rdi, r13
jne 0x1400d5c40
mov rdi, qword [rbx + 0x670]
cmp rdi, r13
je 0x1400d5cb1
mov rdi, qword [rsp + 0x48]
lea rax, [rsp + 0x48]
cmp rdi, rax
je 0x1400d5cb1
mov r12d, 1
nop
lea rdx, [rdi - 0x98]
mov dword [rsp + 0x28], r12d
mov rdi, qword [rdi]
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x20], r14d
mov rcx, rbx
call fcn.1400e12b0
lea rax, [rsp + 0x48]
cmp rdi, rax
jne 0x1400d5c80
mov r12d, dword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
lea rax, [rsp + 0x48]
cmp rdi, rax
je 0x1400d5cf0
mov rcx, qword [r13 + 8]
mov qword [rcx], rdi
mov rax, qword [rsp + 0x48]
mov qword [rax + 8], rcx
mov rax, qword [rsp + 0x50]
mov qword [rax], r13
mov qword [r13 + 8], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x48], rax
mov rcx, rbx
call fcn.1400e5fe0
mov rdx, qword [r13]
mov r8d, 4
lea r9d, [r8 - 2]
cmp rdx, r13
je 0x1400d5f48
cmp dword [rbx + 0x88], 0
mov edi, r14d
mov r13d, r14d
mov dword [rsp + 0x44], r14d
mov esi, r14d
mov r10d, r14d
mov r11d, r14d
mov r9d, r14d
mov r15d, r14d
je 0x1400d5d41
mov rcx, rbx
call fcn.1400d7c00
mov rdx, qword [rbx + 0x670]
lea rcx, [rbx + 0x670]
cmp rdx, rcx
je 0x1400d5e1f
cmp dword [rdx + 0x94], 0
jbe 0x1400d5e13
cmp dword [rdx + 0x7c], 0
jne 0x1400d5e13
mov eax, dword [rdx + 0x14]
cmp eax, 0x14
jae 0x1400d5d77
inc edi
inc r10d
jmp 0x1400d5dd9
cmp eax, 0x28
jae 0x1400d5d83
inc edi
inc r11d
jmp 0x1400d5dd9
mov ecx, dword [rdx + 0x9c]
cmp ecx, 0x14
jae 0x1400d5da1
lea rcx, [rbx + 0x670]
cmp eax, 0x96
jbe 0x1400d5dd6
inc r15d
jmp 0x1400d5dd9
cmp ecx, 0x27
ja 0x1400d5dcf
mov rax, qword [rbx + 0x28]
mov ecx, dword [rax + 0x1c]
cmp ecx, 0x14
jae 0x1400d5dbe
inc r10d
lea rcx, [rbx + 0x670]
jmp 0x1400d5dd9
cmp ecx, 0x28
jae 0x1400d5dcf
inc r11d
lea rcx, [rbx + 0x670]
jmp 0x1400d5dd9
lea rcx, [rbx + 0x670]
inc r9d
mov rax, qword [rbx + 0x28]
cmp dword [rax + 0x38], 0
je 0x1400d5e13
mov r8d, dword [rdx + 0x30]
add r8d, dword [rdx + 0x34]
mov eax, dword [rdx + 0x2c]
add eax, r8d
imul esi, eax, 0x46
imul eax, dword [rdx + 0x34], 0x64
cmp eax, esi
jbe 0x1400d5e5f
cmp dword [rdx + 0x18], 0xf
jbe 0x1400d5e5f
mov esi, dword [rsp + 0x44]
inc esi
mov dword [rsp + 0x44], esi
lea rcx, [rbx + 0x670]
mov rdx, qword [rdx]
cmp rdx, rcx
jne 0x1400d5d51
cmp dword [rbx + 0x88], 0
je 0x1400d5e30
mov rcx, rbx
call fcn.1400d7c00
test edi, edi
je 0x1400d5e8b
mov ecx, dword [rbx + 0x14]
mov rax, qword [rbx + 0x28]
mov byte [rax + 0x10], 0
mov rdx, qword [rbx + 0x28]
and ecx, 2
je 0x1400d5e84
movzx ecx, byte [rdx + 0x10]
test ecx, ecx
je 0x1400d5e84
cmp ecx, 1
je 0x1400d5e7d
mov eax, dword [rdx + 8]
mov dword [rdx], eax
jmp 0x1400d5eee
imul eax, r8d, 0x64
cmp eax, esi
mov esi, dword [rsp + 0x44]
jbe 0x1400d5e0c
cmp dword [rdx + 0x18], 7
lea rcx, [rbx + 0x670]
jbe 0x1400d5e13
inc r13d
jmp 0x1400d5e13
mov eax, dword [rdx + 4]
mov dword [rdx], eax
jmp 0x1400d5eee
mov eax, r14d
mov dword [rdx], eax
jmp 0x1400d5eee
test r13d, r13d
je 0x1400d5ead
test byte [rbx + 0x14], 2
mov rax, qword [rbx + 0x28]
jne 0x1400d5ea7
mov byte [rax + 0x10], 0
mov rax, qword [rbx + 0x28]
mov dword [rax], r14d
jmp 0x1400d5eee
mov byte [rax + 0x10], 1
jmp 0x1400d5ecc
test esi, esi
je 0x1400d5eee
test byte [rbx + 0x14], 2
mov rax, qword [rbx + 0x28]
jne 0x1400d5ec8
mov byte [rax + 0x10], 0
mov rax, qword [rbx + 0x28]
mov dword [rax], r14d
jmp 0x1400d5eee
mov byte [rax + 0x10], 2
mov rcx, qword [rbx + 0x28]
movzx edx, byte [rcx + 0x10]
test edx, edx
je 0x1400d5eeb
cmp edx, 1
je 0x1400d5ee4
mov eax, dword [rcx + 8]
mov dword [rcx], eax
jmp 0x1400d5eee
mov eax, dword [rcx + 4]
mov dword [rcx], eax
jmp 0x1400d5eee
mov dword [rcx], r14d
cmp r9d, r15d
lea r13, [rbx + 0x670]
mov ecx, r15d
mov r8d, 4
cmova ecx, r9d
cmp r11d, ecx
cmova ecx, r11d
lea r9d, [r8 - 2]
cmp r10d, ecx
cmova ecx, r10d
test ecx, ecx
je 0x1400d5f48
mov rdx, qword [rbx + 0x28]
cmp r10d, ecx
jne 0x1400d5f30
mov r15d, 1
mov dword [rdx + 0xc], r15d
jmp 0x1400d5f4e
cmp r11d, ecx
jne 0x1400d5f3b
mov dword [rdx + 0xc], r9d
jmp 0x1400d5f48
cmp r15d, ecx
mov eax, r14d
cmove eax, r8d
mov dword [rdx + 0xc], eax
mov r15d, 1
cmp dword [rbx + 0x700], 0
jne 0x1400d6183
cmp qword [r13], r13
jne 0x1400d617c
mov rcx, qword [rbx + 0x28]
mov eax, dword [rcx + 0x1c]
cmp eax, 0x14
jae 0x1400d5fc4
mov eax, dword [rbx + 0x14]
mov byte [rcx + 0x10], 0
mov rdx, qword [rbx + 0x28]
and eax, 2
je 0x1400d5fb2
movzx ecx, byte [rdx + 0x10]
test ecx, ecx
je 0x1400d5fb2
cmp ecx, 1
je 0x1400d5fa0
mov eax, dword [rdx + 8]
mov dword [rdx], eax
mov rax, qword [rbx + 0x28]
mov dword [rax + 0xc], r15d
jmp 0x1400d6183
mov eax, dword [rdx + 4]
mov dword [rdx], eax
mov rax, qword [rbx + 0x28]
mov dword [rax + 0xc], r15d
jmp 0x1400d6183
mov eax, r14d
mov dword [rdx], eax
mov rax, qword [rbx + 0x28]
mov dword [rax + 0xc], r15d
jmp 0x1400d6183
cmp eax, 0x28
jae 0x1400d601c
mov eax, dword [rbx + 0x14]
mov byte [rcx + 0x10], 0
mov rdx, qword [rbx + 0x28]
and eax, 2
je 0x1400d600a
movzx ecx, byte [rdx + 0x10]
test ecx, ecx
je 0x1400d600a
cmp ecx, 1
je 0x1400d5ff8
mov eax, dword [rdx + 8]
mov dword [rdx], eax
mov rax, qword [rbx + 0x28]
mov dword [rax + 0xc], r9d
jmp 0x1400d6183
mov eax, dword [rdx + 4]
mov dword [rdx], eax
mov rax, qword [rbx + 0x28]
mov dword [rax + 0xc], r9d
jmp 0x1400d6183
mov eax, r14d
mov dword [rdx], eax
mov rax, qword [rbx + 0x28]
mov dword [rax + 0xc], r9d
jmp 0x1400d6183
inc dword [rbx + 0x704]
mov dword [rcx + 0xc], r14d
mov edx, dword [rbx + 0x704]
mov ecx, dword [rbx + 0x14]
mov rax, qword [rbx + 0x28]
cmp edx, 1
ja 0x1400d604d
test cl, 2
jne 0x1400d60bb
mov byte [rax + 0x10], 0
mov rax, qword [rbx + 0x28]
mov dword [rax], r14d
jmp 0x1400d6183
cmp edx, 2
ja 0x1400d6067
test cl, 2
jne 0x1400d609b
mov byte [rax + 0x10], 0
mov rax, qword [rbx + 0x28]
mov dword [rax], r14d
jmp 0x1400d6183
cmp edx, 3
ja 0x1400d6081
test cl, 2
jne 0x1400d60bb
mov byte [rax + 0x10], 0
mov rax, qword [rbx + 0x28]
mov dword [rax], r14d
jmp 0x1400d6183
cmp edx, 4
ja 0x1400d60a1
test cl, 2
jne 0x1400d609b
mov byte [rax + 0x10], 0
mov rax, qword [rbx + 0x28]
mov dword [rax], r14d
jmp 0x1400d6183
mov byte [rax + 0x10], 1
jmp 0x1400d60bf
cmp edx, 5
ja 0x1400d60ec
test cl, 2
jne 0x1400d60bb
mov byte [rax + 0x10], 0
mov rax, qword [rbx + 0x28]
mov dword [rax], r14d
jmp 0x1400d6183
mov byte [rax + 0x10], 2
mov rcx, qword [rbx + 0x28]
movzx edx, byte [rcx + 0x10]
test edx, edx
je 0x1400d60e4
cmp edx, 1
je 0x1400d60da
mov eax, dword [rcx + 8]
mov dword [rcx], eax
jmp 0x1400d6183
mov eax, dword [rcx + 4]
mov dword [rcx], eax
jmp 0x1400d6183
mov dword [rcx], r14d
jmp 0x1400d6183
and ecx, 2
cmp edx, 6
ja 0x1400d614c
test ecx, ecx
jne 0x1400d610c
mov byte [rax + 0x10], cl
mov rax, qword [rbx + 0x28]
mov dword [rax], r14d
mov rax, qword [rbx + 0x28]
mov dword [rax + 0xc], r8d
jmp 0x1400d6183
mov byte [rax + 0x10], 1
mov rcx, qword [rbx + 0x28]
movzx edx, byte [rcx + 0x10]
test edx, edx
je 0x1400d613f
cmp edx, 1
je 0x1400d6130
mov eax, dword [rcx + 8]
mov dword [rcx], eax
mov rax, qword [rbx + 0x28]
mov dword [rax + 0xc], r8d
jmp 0x1400d6183
mov eax, dword [rcx + 4]
mov dword [rcx], eax
mov rax, qword [rbx + 0x28]
mov dword [rax + 0xc], r8d
jmp 0x1400d6183
mov dword [rcx], r14d
mov rax, qword [rbx + 0x28]
mov dword [rax + 0xc], r8d
jmp 0x1400d6183
mov byte [rax + 0x10], 0
mov rdx, qword [rbx + 0x28]
test ecx, ecx
je 0x1400d616f
movzx ecx, byte [rdx + 0x10]
test ecx, ecx
je 0x1400d616f
cmp ecx, 1
je 0x1400d616a
mov eax, dword [rdx + 8]
jmp 0x1400d6172
mov eax, dword [rdx + 4]
jmp 0x1400d6172
mov eax, r14d
mov dword [rdx], eax
mov rax, qword [rbx + 0x28]
mov dword [rax + 0xc], r8d
mov dword [rbx + 0x704], r14d
mov rcx, qword [r13]
lea rax, [rsp + 0x48]
mov qword [rsp + 0x50], rax
lea rsi, [rsp + 0x48]
mov qword [rsp + 0x48], rsi
cmp rcx, r13
je 0x1400d61dd
mov rdx, rcx
mov r8, rcx
mov rcx, qword [rcx]
cmp dword [rdx + 0x7c], 0
jle 0x1400d61d3
mov rax, qword [rdx + 8]
lea r9, [rsp + 0x48]
mov qword [rax], rcx
mov qword [rcx + 8], rax
mov rax, qword [rsp + 0x50]
mov qword [rdx], r9
mov qword [rdx + 8], rax
mov qword [rax], rdx
mov qword [rsp + 0x50], rdx
cmp rcx, r13
jne 0x1400d61a0
mov rsi, qword [rsp + 0x48]
lea rax, [rsp + 0x48]
cmp rsi, rax
je 0x1400d6255
test r12d, r12d
jne 0x1400d6250
lea rdi, [rsi - 0x98]
mov rsi, qword [rsi]
cmp dword [rdi + 0x114], r12d
jle 0x1400d622c
mov r8d, r15d
mov rdx, rdi
mov rcx, rbx
call fcn.1400deae0
test eax, eax
je 0x1400d622c
mov dword [rsp + 0x28], r14d
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x20], r14d
mov rdx, rdi
mov rcx, rbx
call fcn.1400e12b0
mov rcx, qword [rbx + 0x668]
mov r8d, r15d
mov edx, r15d
call qword [rbx + 0x660]
mov r12d, eax
mov dword [rsp + 0x40], eax
lea rax, [rsp + 0x48]
cmp rsi, rax
jne 0x1400d61e7
mov rsi, qword [rsp + 0x48]
lea rax, [rsp + 0x48]
cmp rsi, rax
je 0x1400d628f
mov rcx, qword [r13 + 8]
mov qword [rcx], rsi
lea rsi, [rsp + 0x48]
mov rax, qword [rsp + 0x48]
mov qword [rax + 8], rcx
mov rax, qword [rsp + 0x50]
mov qword [rax], r13
mov qword [r13 + 8], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], rsi
cmp dword [rbx + 0x750], 0
jbe 0x1400d63c7
mov rcx, qword [rbx + 0x80]
lea r10, [rbx + 0x670]
mov r8, qword [r10]
mov rdi, r14
mov r13d, r14d
mov eax, dword [rcx]
cdq
sub eax, edx
sar eax, 1
mov r15d, eax
mov eax, dword [rcx + 4]
cdq
sub eax, edx
sar eax, 1
mov r12d, eax
cmp r8, r10
je 0x1400d6386
mov r9d, 0x7fffffff
nop word [rax + rax]
mov eax, dword [r8 + 0x54]
mov edx, r15d
shr eax, 1
mov ecx, r12d
sub edx, eax
mov eax, dword [r8 + 0x58]
sub edx, dword [r8 + 0x4c]
shr eax, 1
sub ecx, eax
imul edx, edx
sub ecx, dword [r8 + 0x50]
lea rax, [r8 - 0x98]
mov r8, qword [r8]
imul ecx, ecx
add edx, ecx
cmp edx, r9d
cmovae rax, rdi
cmovae edx, r9d
mov rdi, rax
mov r9d, edx
cmp r8, r10
jne 0x1400d62e0
mov rcx, qword [rax + 0xa0]
lea rdx, [rax + 0x98]
mov rax, qword [rdx]
inc r13d
mov qword [rcx], rax
mov qword [rax + 8], rcx
lea rcx, [rsp + 0x48]
mov rax, qword [rsp + 0x50]
mov qword [rdx], rcx
mov qword [rdi + 0xa0], rax
mov qword [rax], rdx
mov qword [rsp + 0x50], rdx
cmp r13d, dword [rbx + 0x750]
jb 0x1400d6375
mov rcx, rbx
call fcn.1400df760
lea r10, [rbx + 0x670]
mov r8, qword [r10]
cmp r8, r10
jne 0x1400d62d1
mov rsi, qword [rsp + 0x48]
lea rax, [rsp + 0x48]
lea r13, [rbx + 0x670]
cmp rsi, rax
je 0x1400d63c7
mov rcx, qword [r13 + 8]
mov qword [rcx], rsi
mov rax, qword [rsp + 0x48]
mov qword [rax + 8], rcx
mov rax, qword [rsp + 0x50]
mov qword [rax], r13
mov qword [r13 + 8], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x48], rax
mov rax, qword [rbx + 0x80]
mov rcx, rbx
mov r8d, dword [rax + 4]
mov edx, dword [rax]
call fcn.1400ce290
xor edx, edx
mov rcx, rbx
call fcn.1400e21a0
test dword [rbx + 0x14], 0x200
je 0x1400d64a4
mov rsi, qword [r13]
cmp rsi, r13
je 0x1400d64a4
mov r15d, 0xfffffffe
lea r12d, [r15 + 4]
lea r14d, [r15 + 3]
nop
cmp dword [rsi + 0x7c], 0
lea rdi, [rsi - 0x98]
jne 0x1400d6495
cmp dword [rdi + 0x1dc], 0xcd
jg 0x1400d6495
mov eax, dword [rbx + 0x778]
mov ecx, 0x7fffffff
test eax, eax
cmovne ecx, eax
mov eax, dword [rdi + 0xec]
cmp eax, dword [rbx + 0x774]
jb 0x1400d6495
cmp eax, ecx
ja 0x1400d6495
cmp dword [rbx + 0x88], 0
je 0x1400d645c
mov rcx, rbx
call fcn.1400d7c00
mov r8d, r14d
mov rdx, rdi
mov rcx, rbx
call fcn.1400dd820
mov eax, dword [rdi + 0x13c]
cmp eax, r15d
cmovl eax, r15d
cmp eax, r12d
cmovg eax, r12d
mov dword [rdi + 0x13c], eax
cmp dword [rbx + 0x88], 0
je 0x1400d6495
mov rcx, rbx
call fcn.1400d7c00
mov rsi, qword [rsi]
cmp rsi, r13
jne 0x1400d6410
xor r14d, r14d
mov rcx, qword [rbx + 0x80]
cmp qword [r13], r13
je 0x1400d64d2
mov eax, dword [rcx]
shr eax, 1
mov dword [rbx + 0x758], eax
mov eax, dword [rcx + 4]
shr eax, 1
mov dword [rbx + 0x75c], eax
mov eax, r14d
mov dword [rbx + 0x760], r14d
jmp 0x1400d64e8
mov qword [rbx + 0x758], 0
mov eax, dword [rcx]
mov dword [rbx + 0x760], eax
mov eax, dword [rcx + 4]
mov dword [rbx + 0x764], eax
mov rcx, rbx
mov dword [rbx + 0x680], r14d
call fcn.1400e5fe0
mov rcx, rbx
call fcn.1400e61c0
mov rsi, qword [r13]
cmp rsi, r13
je 0x1400d673a
mov ecx, 0x64
nop word [rax + rax]
mov r8, rsi
mov r11, rsi
mov rsi, qword [rsi]
cmp dword [r8 - 0x7c], 0
jne 0x1400d6540
inc dword [rbx + 0x71c]
mov eax, dword [rbx + 0x71c]
mov dword [r8 - 0x7c], eax
imul edx, dword [r8 + 0xa0], 0x66
mov eax, dword [r8 - 0x5c]
mov r9d, dword [r8 + 0x7c]
add edx, 0x200
shr edx, 0xa
cmp edx, 0x64
cmova edx, ecx
neg eax
mov eax, dword [r8 - 0x4c]
sbb ecx, ecx
and ecx, 0x32
add edx, ecx
neg eax
mov eax, dword [r8 + 0x48]
sbb ecx, ecx
and ecx, 0x32
add edx, ecx
lea ecx, [rax + rax*4]
lea r10d, [rdx + rcx*4]
cmp r9d, 0xa
jge 0x1400d6596
mov eax, 0xa
sub eax, r9d
lea ecx, [rax + rax*4]
shl ecx, 2
jmp 0x1400d6599
mov ecx, r14d
lea eax, [rcx + r10]
mov ecx, dword [r8 - 0x88]
mov r10d, dword [r8 + 0x40]
mov dword [r8 - 0x84], eax
mov eax, r10d
sub eax, ecx
cdq
xor eax, edx
sub eax, edx
cmp eax, 0x14
cmovg ecx, r10d
mov dword [r8 - 0x88], ecx
mov ecx, dword [r8 + 0x94]
test ecx, ecx
jne 0x1400d65ef
mov dword [rbx + 0x6f8], r10d
mov eax, 1
mov dword [rbx + 0x6fc], eax
mov r9d, dword [r11 + 0x7c]
mov ecx, dword [r11 + 0x94]
lea eax, [r9 + 1]
mov dword [r8 + 0x7c], eax
lea eax, [rcx + 1]
mov dword [r8 + 0x94], eax
inc dword [rbx + 0x680]
cmp dword [r8 + 0x15c], 0
jbe 0x1400d661a
add r8, 0x154
jmp 0x1400d661e
add r8, 0x4c
movups xmm1, xmmword [r8]
mov edi, r14d
mov r10d, r14d
movups xmmword [rbp - 0x58], xmm1
movdqa xmm0, xmm1
movd ecx, xmm1
psrldq xmm0, 8
movd r8d, xmm0
imul r9d, r8d, 0x99a
shr r8d, 1
add r9d, 0x200
shr r9d, 0xa
mov eax, r9d
cdq
sub eax, edx
sar eax, 1
sub r8d, eax
mov edx, eax
mov rax, qword [rbp - 0x50]
add r8d, ecx
test r8d, r8d
cmovg edi, r8d
shr rax, 0x20
shr eax, 1
sub eax, edx
add eax, dword [rbp - 0x54]
test eax, eax
cmovg r10d, eax
mov rax, qword [rbx + 0x80]
mov r11d, dword [rax]
mov r8d, dword [rax + 4]
sub r11d, edi
dec r11d
cmp r9d, r11d
cmovb r11d, r9d
sub r8d, r10d
dec r8d
cmp r9d, r8d
cmovb r8d, r9d
mov r9d, dword [rbx + 0x758]
cmp edi, r9d
jge 0x1400d66c6
sub r9d, edi
mov dword [rbx + 0x758], edi
add dword [rbx + 0x760], r9d
mov r9d, edi
mov edx, dword [rbx + 0x75c]
cmp r10d, edx
jge 0x1400d66e9
sub edx, r10d
mov dword [rbx + 0x75c], r10d
add dword [rbx + 0x764], edx
mov r12d, r10d
mov edx, r10d
jmp 0x1400d66ec
mov r12d, edx
mov r15d, dword [rbx + 0x760]
lea eax, [r11 + rdi]
lea ecx, [r15 + r9]
cmp eax, ecx
jbe 0x1400d670d
sub r11d, r9d
lea r15d, [r11 + rdi]
mov dword [rbx + 0x760], r15d
mov ecx, dword [rbx + 0x764]
lea eax, [r8 + r10]
add ecx, edx
cmp eax, ecx
jbe 0x1400d672a
sub r8d, edx
add r8d, r10d
mov dword [rbx + 0x764], r8d
mov ecx, 0x64
cmp rsi, r13
jne 0x1400d6520
jmp 0x1400d674f
mov r9d, dword [rbx + 0x758]
mov r12d, dword [rbx + 0x75c]
mov r15d, dword [rbx + 0x760]
mov rax, qword [rbx + 0x80]
lea edx, [r15 + r9]
mov ecx, dword [rbx + 0x764]
and edx, 1
mov r8d, r9d
mov esi, r12d
and r8d, 0xfffffffe
and esi, 0xfffffffe
sub edx, r8d
mov dword [rbx + 0x758], r8d
add edx, r15d
mov dword [rbx + 0x75c], esi
add edx, r9d
lea r10d, [rcx + r12]
and r10d, 1
mov dword [rbx + 0x760], edx
sub r10d, esi
add r10d, ecx
add r10d, r12d
test r8d, r8d
mov dword [rbx + 0x764], r10d
mov ecx, dword [rax]
mov r11d, dword [rax + 4]
cmovs r8d, r14d
lea edi, [rcx - 1]
cmp r8d, edi
lea r9d, [r11 - 1]
cmovl edi, r8d
mov r8d, r14d
mov dword [rbx + 0x758], edi
lea eax, [rdx + rdi]
cmp ecx, eax
cmovl eax, ecx
test eax, eax
cmovg r8d, eax
test esi, esi
mov ecx, r8d
cmovs esi, r14d
cmp esi, r9d
cmovl r9d, esi
mov dword [rbx + 0x75c], r9d
lea eax, [r10 + r9]
cmp r11d, eax
cmovl eax, r11d
test eax, eax
cmovg r14d, eax
sub ecx, edi
lea eax, [rdx + rdi]
cmp eax, r8d
cmovle ecx, edx
mov dword [rbx + 0x760], ecx
mov ecx, r14d
mov edx, dword [rbx + 0x764]
sub ecx, r9d
lea eax, [rdx + r9]
cmp eax, r14d
cmovle ecx, edx
mov dword [rbx + 0x764], ecx
cmp dword [rbx + 0x724], 1
jbe 0x1400d68d2
cmp dword [rbx + 0x88], 0
je 0x1400d68d2
mov rax, qword [rbx + 0x28]
mov rcx, qword [rbx + 0xd0]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movsd xmm0, qword [rax + 0x40]
movsd qword [rcx + 0x40], xmm0
mov eax, dword [rax + 0x48]
mov dword [rcx + 0x48], eax
mov rcx, qword [rbx + 0x80]
mov rax, qword [rbx + 0x128]
movups xmm1, xmmword [rbx + 0xc0]
mov qword [rbx + 0x80], rax
movups xmm0, xmmword [rbx + 0x160]
mov rax, qword [rbx + 0x140]
mov qword [rbx + 0x128], rcx
mov rcx, qword [rbx + 0xa0]
mov qword [rbx + 0xa0], rax
mov qword [rbx + 0x140], rcx
movups xmmword [rbx + 0xc0], xmm0
movups xmmword [rbx + 0x160], xmm1
mov rcx, qword [rbx + 0x668]
xor r8d, r8d
inc dword [rbx + 0x708]
inc dword [rbx + 0x700]
lea edx, [r8 + 2]
call qword [rbx + 0x660]
or eax, dword [rsp + 0x40]
neg eax
sbb eax, eax
and eax, 0xfffffffe
mov r15, qword [rsp + 0x168]
mov rcx, qword [rbp + 0x20]
xor rcx, rsp
call fcn.1400fcc70
lea r11, [rsp + 0x130]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r14
pop r13
pop r12
pop rdi
pop rbp
ret