Function at 0x1401a7540
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
mov eax, 0x1c58
call fcn.140271bb0
sub rsp, rax
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x1230], r8
mov qword [rbp + 0x1358], rdx
mov qword [rbp + 0x1238], rcx
mov eax, 0x10
mov qword [rbp + 0x1340], rax
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x1240], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x1248], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x1250], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x1258], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x1260], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x1268], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x1270], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x1278], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x1280], rax
mov eax, 0x30
mov qword [rbp + 0x12d8], rax
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x1288], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x1290], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x1298], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x12a0], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x12a8], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x12b0], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x12b8], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x12c0], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x12c8], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x12d0], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x12d8]
mov rcx, rsp
mov qword [rbp + 0x12e0], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x12e8], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x12f0], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x12f8], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x1300], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x1308], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x1310], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x1318], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x1320], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x1328], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x1330], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x1338], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x1340]
mov rcx, rsp
mov qword [rbp + 0x1348], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x1350], rax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
mov rdx, qword [rbp + 0x1358]
add rsp, 0x20
mov qword [rbp + 0x1370], rax
add rax, 0x60
mov qword [rbp + 0x1360], rax
mov rax, rdx
add rax, 0x48
mov qword [rbp + 0x1368], rax
movups xmm0, xmmword [rdx + 0x48]
movaps xmmword [rbp + 0x1bb0], xmm0
sub rsp, 0x20
lea rcx, [rbp + 0x1bc8]
lea rdx, [rbp + 0x1bb0]
call fcn.140039831
add rsp, 0x20
mov rcx, qword [rbp + 0x1bc8]
mov rax, qword [rbp + 0x1bd0]
mov qword [rbp + 0x1ba0], rcx
mov qword [rbp + 0x1ba8], rax
sub rsp, 0x20
lea rcx, [rbp + 0x1ba0]
call fcn.14010c730
add rsp, 0x20
mov cl, al
mov rax, qword [rbp + 0x1370]
mov al, byte [rax + 0x60]
test al, al
setne al
mov byte [rbp + 0x137f], al
or al, cl
test al, 1
jne 0x1401a798e
mov rcx, qword [rbp + 0x1358]
sub rsp, 0x20
call fcn.1401a5240
add rsp, 0x20
xor eax, eax
mov dword [rbp + 0x122c], eax
jmp 0x1401b5fbb
mov cl, byte [rbp + 0x137f]
xor eax, eax
test cl, 1
mov dword [rbp + 0x1228], eax
jne 0x1401b5e7e
jmp 0x1401a79aa
mov rcx, qword [rbp + 0x1358]
xor eax, eax
cmp byte [rcx], 0
mov dword [rbp + 0x1224], eax
jne 0x1401ae516
mov rax, qword [rbp + 0x12b8]
mov rcx, qword [rbp + 0x1288]
mov rdx, qword [rbp + 0x1298]
mov r8, qword [rbp + 0x12a0]
mov r9, qword [rbp + 0x1290]
mov r10, qword [rbp + 0x1230]
mov r11, qword [rbp + 0x1280]
mov rsi, qword [rbp + 0x1270]
mov rdi, qword [rbp + 0x1268]
mov rbx, qword [rbp + 0x1258]
mov r14, qword [rbp + 0x1240]
mov r15, qword [rbp + 0x1358]
mov r12, qword [r15 + 0x10]
mov qword [rbp + 0x1020], r12
mov r15, qword [r15 + 0x18]
mov qword [rbp + 0x1028], r15
lea r15, [rbp + 0x1b60]
add r15, 8
mov qword [rbp + 0x1030], r15
add r14, 8
mov qword [rbp + 0x1038], r14
lea r14, [rbp + 0x1ac0]
add r14, 8
mov qword [rbp + 0x1040], r14
add rbx, 8
mov qword [rbp + 0x1048], rbx
lea rbx, [rbp + 0x1ab0]
add rbx, 8
mov qword [rbp + 0x1050], rbx
lea rbx, [rbp + 0x1b20]
add rbx, 2
mov qword [rbp + 0x1058], rbx
lea rbx, [rbp + 0x1aa0]
add rbx, 8
mov qword [rbp + 0x1060], rbx
lea rbx, [rbp + 0x1b20]
add rbx, 8
mov qword [rbp + 0x1068], rbx
lea rbx, [rbp + 0x1af0]
add rbx, 0x10
mov qword [rbp + 0x1070], rbx
lea rbx, [rbp + 0x1af0]
add rbx, 0x18
mov qword [rbp + 0x1078], rbx
lea rbx, [rbp + 0x1af0]
add rbx, 8
mov qword [rbp + 0x1080], rbx
lea rbx, [rbp + 0x1af0]
add rbx, 0x20
mov qword [rbp + 0x1088], rbx
lea rbx, [rbp + 0x1af0]
add rbx, 0x28
mov qword [rbp + 0x1090], rbx
lea rbx, [rbp + 0x1a90]
add rbx, 8
mov qword [rbp + 0x1098], rbx
lea rbx, [rbp + 0x1a80]
add rbx, 8
mov qword [rbp + 0x10a0], rbx
lea rbx, [rbp + 0x1a70]
add rbx, 8
mov qword [rbp + 0x10a8], rbx
lea rbx, [rbp + 0x1ad0]
add rbx, 8
mov qword [rbp + 0x10b0], rbx
lea rbx, [rbp + 0x1a08]
add rbx, 8
mov qword [rbp + 0x10b8], rbx
lea rbx, [rbp + 0x19f8]
add rbx, 8
mov qword [rbp + 0x10c0], rbx
lea rbx, [rbp + 0x19d8]
add rbx, 8
mov qword [rbp + 0x10c8], rbx
lea rbx, [rbp + 0x19e8]
add rbx, 8
mov qword [rbp + 0x10d0], rbx
lea rbx, [rbp + 0x1a18]
add rbx, 8
mov qword [rbp + 0x10d8], rbx
lea rbx, [rbp + 0x1a18]
add rbx, 0x10
mov qword [rbp + 0x10e0], rbx
lea rbx, [rbp + 0x19b8]
add rbx, 8
mov qword [rbp + 0x10e8], rbx
lea rbx, [rbp + 0x19a8]
add rbx, 8
mov qword [rbp + 0x10f0], rbx
lea rbx, [rbp + 0x19c8]
add rbx, 8
mov qword [rbp + 0x10f8], rbx
lea rbx, [rbp + 0x1a18]
add rbx, 0x18
mov qword [rbp + 0x1100], rbx
lea rbx, [rbp + 0x1a18]
add rbx, 0x20
mov qword [rbp + 0x1108], rbx
lea rbx, [rbp + 0x1a18]
add rbx, 0x28
mov qword [rbp + 0x1110], rbx
lea rbx, [rbp + 0x1b30]
add rbx, 0x18
mov qword [rbp + 0x1118], rbx
lea rbx, [rbp + 0x1948]
add rbx, 8
mov qword [rbp + 0x1120], rbx
add rdi, 8
mov qword [rbp + 0x1128], rdi
lea rdi, [rbp + 0x1978]
add rdi, 8
mov qword [rbp + 0x1130], rdi
lea rdi, [rbp + 0x1958]
add rdi, 8
mov qword [rbp + 0x1138], rdi
lea rdi, [rbp + 0x1b70]
add rdi, 0x28
mov qword [rbp + 0x1140], rdi
lea rdi, [rbp + 0x1b70]
add rdi, 8
mov qword [rbp + 0x1148], rdi
add rsi, 8
mov qword [rbp + 0x1150], rsi
lea rsi, [rbp + 0x1928]
add rsi, 8
mov qword [rbp + 0x1158], rsi
lea rsi, [rbp + 0x1918]
add rsi, 8
mov qword [rbp + 0x1160], rsi
add r11, 8
mov qword [rbp + 0x1168], r11
add r10, 8
mov qword [rbp + 0x1170], r10
lea r10, [rbp + 0x18d8]
add r10, 8
mov qword [rbp + 0x1178], r10
lea r10, [rbp + 0x18c8]
add r10, 8
mov qword [rbp + 0x1180], r10
add r9, 8
mov qword [rbp + 0x1188], r9
lea r9, [rbp + 0x18b8]
add r9, 8
mov qword [rbp + 0x1190], r9
mov r9, rcx
add r9, 8
mov qword [rbp + 0x1198], r9
mov r9, rcx
add r9, 0x10
mov qword [rbp + 0x11a0], r9
add r8, 8
mov qword [rbp + 0x11a8], r8
lea r8, [rbp + 0x18a8]
add r8, 8
mov qword [rbp + 0x11b0], r8
add rdx, 8
mov qword [rbp + 0x11b8], rdx
mov rdx, rcx
add rdx, 0x18
mov qword [rbp + 0x11c0], rdx
mov rdx, rcx
add rdx, 0x20
mov qword [rbp + 0x11c8], rdx
add rcx, 0x28
mov qword [rbp + 0x11d0], rcx
lea rcx, [rbp + 0x1858]
add rcx, 8
mov qword [rbp + 0x11d8], rcx
lea rcx, [rbp + 0x1838]
add rcx, 8
mov qword [rbp + 0x11e0], rcx
lea rcx, [rbp + 0x1888]
add rcx, 8
mov qword [rbp + 0x11e8], rcx
lea rcx, [rbp + 0x1868]
add rcx, 8
mov qword [rbp + 0x11f0], rcx
lea rcx, [rbp + 0x1828]
add rcx, 8
mov qword [rbp + 0x11f8], rcx
lea rcx, [rbp + 0x1808]
add rcx, 8
mov qword [rbp + 0x1200], rcx
add rax, 8
mov qword [rbp + 0x1208], rax
lea rax, [rbp + 0x17f8]
add rax, 8
mov qword [rbp + 0x1210], rax
xor eax, eax
mov ecx, eax
xor eax, eax
mov qword [rbp + 0x1218], rcx
mov dword [rbp + 0x1220], eax
mov rdx, qword [rbp + 0x1020]
mov rcx, qword [rbp + 0x1218]
mov eax, dword [rbp + 0x1220]
mov dword [rbp + 0x1014], eax
mov qword [rbp + 0x1018], rcx
cmp rcx, rdx
mov dword [rbp + 0x1224], eax
jge 0x1401ae516
mov rax, qword [rbp + 0x1018]
cmp rax, 0xffffffffffffffff
jg 0x1401a7e9d
mov rcx, qword [rbp + 0x1018]
mov rdx, qword [rbp + 0x1020]
add rdx, 0xffffffffffffffff
sub rsp, 0x20
call fcn.1400292ad
mov eax, dword [rbp + 0x1014]
add rsp, 0x20
mov dword [rbp + 0x1228], eax
jmp 0x1401b5e7e
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0x1008], rax
mov rax, qword [rbp + 0x1008]
mov qword [rbp + 0x1000], rax
mov eax, dword [0x14027d918]
xor eax, 0xcdea5c1
xor edx, edx
div dword [0x14027d91c]
mov ecx, 0x32d2db6a
xor ecx, 0x4f6b5906
sub eax, ecx
mov ecx, 0x33c42764
xor ecx, 0xf5421dff
sub eax, ecx
imul eax, eax, 0x43969dbd
cmp eax, 0x22b254d0
jbe 0x1401b5fd5
mov rdx, qword [rbp + 0x1000]
mov eax, dword [0x14027d920]
mov r8d, dword [0x14027d924]
mov ecx, r8d
and ecx, eax
add eax, r8d
sub eax, ecx
and eax, 0x6e1ef88d
add eax, 0x4978b7dd
mov ecx, eax
imul rcx, rcx, 0x20e2d2cf
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1f
mov ecx, 0x8c01a5aa
xorps xmm0, xmm0
movups xmmword [rbp + rdx + 0x1b70], xmm0
movabs r8, 0x3b967fec98325fd4
movabs r9, 0xd7d772bf998ab967
xor r8, r9
add rdx, r8
add rdx, 0x10
movabs r8, 0x754619d0c550fc8
movabs r9, 0xeb156cce0dede97b
xor r8, r9
sub rdx, r8
mov qword [rbp + 0xff0], rdx
cmp rdx, 0x30
sete dl
mov byte [rbp + 0xfff], dl
cmp eax, ecx
jae 0x1401b5fd5
mov rax, qword [rbp + 0xff0]
mov cl, byte [rbp + 0xfff]
test cl, 1
mov qword [rbp + 0x1008], rax
jne 0x1401a7fcc
jmp 0x1401a7ebc
mov ecx, dword [0x14027d928]
mov r8d, dword [0x14027d92c]
xor r8d, 0x5762852e
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
or eax, edx
and eax, r8d
xor eax, 0xffffffff
mov r9d, 0xfbba5798
xor r9d, 0x445a867
mov edx, r8d
xor edx, r9d
xor r8d, 0xffffffff
or edx, r8d
xor ecx, 0xffffffff
xor edx, 0xffffffff
or ecx, edx
mov edx, 0xdd3d1d1
xor edx, 0xf22c2e2e
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x4651fc4b
xor ecx, 0xcdd7998c
sub eax, ecx
add eax, 0x8f214c73
xor eax, 0x941637ff
mov ecx, 0x36f4e35
xor ecx, 0x462ed267
cmp eax, ecx
jbe 0x1401b5fde
mov rax, qword [rbp + 0x1030]
mov ecx, dword [0x14027d930]
or ecx, dword [0x14027d934]
mov edx, 0xffffffff
xor edx, 0xe67aea4a
add ecx, edx
add ecx, 1
mov edx, 0x1d6a458e
xor edx, 0x1d6a458e
mov r8d, 0xa41332a9
xor r8d, 0xd5ca3038
sub edx, r8d
sub ecx, edx
and ecx, 0x12ec0b76
mov dword [rbp + 0xfec], ecx
movabs rcx, 0x59c8703100a56bc
movabs rdx, 0x59c8703100a56bc
xor rcx, rdx
mov qword [rbp + 0x1b60], rcx
mov qword [rax], 0
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov eax, dword [rbp + 0xfec]
cmp eax, 0xecf39bcd
jae 0x1401b5fde
xor eax, eax
mov qword [rbp + 0xfe0], rax
jmp 0x1401a80f6
mov rax, qword [rbp + 0xfe0]
xorps xmm0, xmm0
movups xmmword [rbp + rax + 0x1b70], xmm0
mov rcx, 0xffffffffffffffff
xor rcx, 0x10
xor edx, edx
sub rdx, 1
sub rcx, rdx
sub rax, rcx
cmp rax, 0x30
mov qword [rbp + 0xfe0], rax
jne 0x1401a80f6
mov rax, qword [rbp + 0x1028]
mov rcx, qword [rbp + 0x1018]
add rax, 8
shl rcx, 3
add rax, rcx
mov qword [rbp + 0xfc8], rax
movabs rax, 0xee03a84bc62ef24b
movabs rcx, 0xee03a84bc62ef24a
xor rax, rcx
mov qword [rbp + 0x1b60], rax
mov ecx, 1
mov edx, 0x10
mov r8d, 8
sub rsp, 0x20
call fcn.140020645
mov r8, qword [rbp + 0x1018]
mov rdx, qword [rbp + 0x1248]
mov rcx, qword [rbp + 0x1240]
mov r9, qword [rbp + 0x1030]
add rsp, 0x20
mov r10, rax
mov rax, qword [rbp + 0x1028]
mov qword [r9], r10
mov rax, qword [rax + r8*8 + 8]
mov r8, qword [rax + 0x48]
mov qword [rdx], r8
mov rax, qword [rax + 0x50]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140039831
mov r8, qword [rbp + 0x1240]
mov rdx, qword [rbp + 0x1038]
mov rcx, qword [rbp + 0x1030]
mov eax, dword [rbp + 0x1014]
add rsp, 0x20
mov r8, qword [r8]
mov rdx, qword [rdx]
mov rcx, qword [rcx]
mov qword [rcx + 8], r8
mov qword [rcx + 0x10], rdx
mov rcx, qword [rbp + 0x1b60]
cmp rcx, 0
mov qword [rbp + 0xfd0], rcx
mov dword [rbp + 0xfdc], eax
jg 0x1401a8273
mov eax, dword [rbp + 0x1014]
mov rcx, qword [rbp + 0x1360]
mov cl, byte [rcx]
mov byte [rbp + 0xfc3], cl
mov dword [rbp + 0xfc4], eax
jmp 0x1401ae391
mov eax, dword [rbp + 0xfbc]
mov rdx, qword [rbp + 0x1b60]
xor ecx, ecx
cmp rdx, 0
mov qword [rbp + 0xfd0], rdx
mov edx, eax
mov dword [rbp + 0xfdc], edx
mov byte [rbp + 0xfc3], cl
mov dword [rbp + 0xfc4], eax
jle 0x1401ae391
mov rcx, qword [rbp + 0x1030]
mov rax, qword [rbp + 0xfd0]
mov edx, dword [rbp + 0xfdc]
mov dword [rbp + 0xf94], edx
add rax, 0xffffffffffffffff
mov qword [rbp + 0xfa8], rax
mov rcx, qword [rcx]
add rcx, 8
shl rax, 4
add rcx, rax
mov rax, qword [rcx]
mov qword [rbp + 0xf98], rax
mov rax, qword [rcx + 8]
mov qword [rbp + 0xfa0], rax
sub rsp, 0x20
call fcn.140020530
mov rdx, qword [rbp + 0xfa8]
add rsp, 0x20
lea rcx, [rbp + 0x1b60]
sub rsp, 0x20
call fcn.140031050
add rsp, 0x20
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0xfb0], rax
mov rax, qword [rbp + 0xfb0]
xorps xmm0, xmm0
movups xmmword [rbp + rax + 0x1b30], xmm0
movabs rcx, 0xa09885ac72f8892e
movabs rdx, 0xa09885ac72f8893e
xor rcx, rdx
add rax, rcx
cmp rax, 0x30
mov qword [rbp + 0xfb0], rax
jne 0x1401a8302
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0xf88], rax
mov rax, qword [rbp + 0xf88]
xorps xmm0, xmm0
movups xmmword [rbp + rax + 0x1b30], xmm0
add rax, 0x10
movabs rcx, 0x105cdb87b9b2fb6a
movabs rdx, 0x105cdb87b9b2fb5a
xor rcx, rdx
cmp rax, rcx
mov qword [rbp + 0xf88], rax
jne 0x1401a835e
mov rcx, qword [rbp + 0x1250]
mov word [rcx], 0x10c
sub rsp, 0x20
call fcn.140093f60
mov rcx, qword [rbp + 0x1360]
add rsp, 0x20
mov qword [rbp + 0xf68], rax
xor eax, eax
cmp byte [rcx], 0
mov rcx, rax
mov qword [rbp + 0xf70], rcx
mov rcx, rax
mov qword [rbp + 0xf78], rcx
mov qword [rbp + 0xf80], rax
jne 0x1401adc12
mov rcx, qword [rbp + 0xf68]
mov rax, qword [rbp + 0xf98]
mov rdx, qword [rcx]
movabs rcx, 0xb1f06b9e8d630a7e
sub rdx, rcx
add rdx, rax
movabs rax, 0xb1f06b9e8d630a7e
add rdx, rax
lea rcx, [rbp + 0x1ac0]
sub rsp, 0x20
call fcn.140037460
mov rcx, qword [rbp + 0x1040]
mov rdx, qword [rbp + 0xf68]
add rsp, 0x20
mov rax, qword [rbp + 0x1ac0]
mov qword [rbp + 0xf40], rax
mov rcx, qword [rcx]
mov qword [rbp + 0xf48], rcx
mov rcx, qword [rdx]
mov qword [rbp + 0xf50], rcx
mov rdx, qword [rdx + 8]
mov qword [rbp + 0xf58], rdx
cmp rcx, 0
mov qword [rbp + 0xf60], rax
jle 0x1401a8762
mov rcx, qword [rbp + 0xf50]
movabs rdx, 0x6dc563770ec8cfbf
movabs rax, 0x6dc563770ec8cfbf
xor rdx, rax
movabs rax, 0xfbdad5fcb808d7d6
movabs r8, 0xfbdad5fcb808d7d7
xor rax, r8
sub rdx, rax
mov rax, rcx
sub rax, rdx
mov qword [rbp + 0xf38], rax
xor rcx, 0xffffffffffffffff
and rax, rcx
movabs rcx, 0xcad5b2487449b457
movabs rdx, 0xcad5b2487449b457
xor rcx, rdx
cmp rax, rcx
jge 0x1401a8502
sub rsp, 0x20
call fcn.14000f24b
mov rax, qword [rbp + 0xf40]
add rsp, 0x20
mov qword [rbp + 0xf60], rax
jmp 0x1401a8762
mov rax, qword [rbp + 0xf38]
cmp rax, 0
jge 0x1401a8548
mov rcx, qword [rbp + 0xf38]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14001a720
mov rax, qword [rbp + 0xf40]
add rsp, 0x20
mov qword [rbp + 0xf60], rax
jmp 0x1401a8762
mov rax, qword [rbp + 0xf58]
mov rdx, qword [rbp + 0xf40]
mov rcx, qword [rbp + 0xf48]
add rcx, 8
add rcx, rdx
mov qword [rbp + 0xf20], rcx
add rax, 8
mov qword [rbp + 0xf28], rax
xor eax, eax
mov qword [rbp + 0xf30], rax
mov rcx, qword [rbp + 0xf30]
mov rdx, qword [rbp + 0xf50]
mov rax, qword [rbp + 0xf20]
mov r8, qword [rbp + 0xf28]
mov r8b, byte [r8 + rcx]
mov byte [rax + rcx], r8b
mov rax, rcx
add rax, 1
cmp rcx, rdx
mov qword [rbp + 0xf30], rax
jne 0x1401a857f
mov rcx, qword [rbp + 0xf50]
mov r9, qword [rbp + 0xf40]
mov rax, rcx
add rax, r9
mov r8, rax
xor r8, 0xffffffffffffffff
mov rdx, r9
and rdx, r8
xor r9, 0xffffffffffffffff
mov r8, rax
and r8, r9
or rdx, r8
mov r8, rax
xor r8, rcx
xor r8, 0xffffffffffffffff
mov rcx, rdx
xor rcx, r8
and rcx, rdx
cmp rcx, 0
mov qword [rbp + 0xf60], rax
jge 0x1401a8762
mov eax, dword [0x14027d938]
mov ecx, 0x5e9c2649
xor ecx, 0x5975a8b5
xor eax, ecx
mov ecx, dword [0x14027d93c]
mov edx, 0x93b0b541
xor edx, 0x9230448e
xor ecx, edx
and eax, ecx
mov ecx, 0xc46c78d9
xor ecx, 0xde270fb8
xor eax, ecx
add eax, 0x543d3385
mov edx, 0xc0998877
xor edx, 0x388fe843
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
or eax, 0xf8166034
and eax, ecx
cmp eax, 0x874f2b0a
je 0x1401b5fe7
mov r8d, dword [0x14027d940]
xor r8d, 0x6053860c
mov eax, dword [0x14027d944]
sub r8d, 0xcdf20622
add r8d, eax
add r8d, 0xcdf20622
mov ecx, r8d
xor ecx, 0xffffffff
and ecx, 0x3244fa19
mov edx, 0xffffffff
xor edx, 0x3244fa19
mov eax, r8d
and eax, edx
imul eax, ecx
mov edx, 0xcdd80ad9
xor edx, 0xff9cf0c0
mov ecx, r8d
and ecx, edx
or r8d, 0x3244fa19
imul r8d, ecx
add r8d, eax
or r8d, 0xba8b48ec
mov eax, 0x4f47f30e
xor eax, 0xb0b80cf1
mov ecx, r8d
xor ecx, eax
mov eax, 0xe94e1eb3
xor eax, 0xa872ce15
and eax, ecx
mov r9d, 0xffffffff
xor r9d, 0x413cd0a6
and r8d, r9d
mov ecx, 0xffffffff
xor ecx, 0xfef048eb
mov edx, 0x37f67896
xor edx, 0x76caa830
and ecx, edx
mov edx, 0x4569a04a
xor edx, 0xbb99e8a1
and edx, r9d
or eax, r8d
or ecx, edx
xor eax, ecx
mov dword [rbp + 0xf1c], eax
sub rsp, 0x20
call fcn.14000f24b
mov eax, dword [rbp + 0xf1c]
add rsp, 0x20
cmp eax, 0xd8455e13
jae 0x1401b5fe7
mov rax, qword [rbp + 0xf40]
mov qword [rbp + 0xf60], rax
jmp 0x1401a8762
mov rcx, qword [rbp + 0xf98]
mov rax, qword [rbp + 0xf60]
mov qword [rbp + 0xf08], rax
cmp rcx, 0
mov qword [rbp + 0xf10], rax
jle 0x1401a8b0c
mov rcx, qword [rbp + 0xf98]
movabs rdx, 0xa50f7e912f41324
movabs rax, 0xa50f7e912f41325
xor rdx, rax
movabs rax, 0x5f82cf47053f6b9d
movabs r8, 0xa07d30b8fac09462
xor rax, r8
xor rdx, rax
xor eax, eax
sub rax, 1
sub rdx, rax
mov rax, rcx
sub rax, rdx
mov qword [rbp + 0xf00], rax
xor rcx, 0xffffffffffffffff
movabs rdx, 0x5494bd6d8c1bae96
movabs r8, 0xab6b429273e45169
xor rdx, r8
xor rax, rdx
xor rcx, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
movabs r8, 0xceaa44730f9b61d5
xor rdx, r8
or rax, rcx
movabs rcx, 0x9ff2b8017f8317d7
movabs r8, 0x5158fc7270187602
xor rcx, r8
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jge 0x1401a885a
sub rsp, 0x20
call fcn.14000f24b
mov rax, qword [rbp + 0xf08]
add rsp, 0x20
mov qword [rbp + 0xf10], rax
jmp 0x1401a8b0c
mov rax, qword [rbp + 0xf00]
movabs rcx, 0x83394aed4c188e0a
movabs rdx, 0x83394aed4c188e0a
xor rcx, rdx
cmp rax, rcx
jge 0x1401a88b6
mov rcx, qword [rbp + 0xf00]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14001a720
mov rax, qword [rbp + 0xf08]
add rsp, 0x20
mov qword [rbp + 0xf10], rax
jmp 0x1401a8b0c
mov rax, qword [rbp + 0xfa0]
mov rdx, qword [rbp + 0xf08]
mov rcx, qword [rbp + 0xf48]
add rcx, 8
add rcx, rdx
mov qword [rbp + 0xee8], rcx
add rax, 8
mov qword [rbp + 0xef0], rax
xor eax, eax
mov qword [rbp + 0xef8], rax
mov rax, qword [rbp + 0xef8]
mov qword [rbp + 0xee0], rax
mov ecx, dword [0x14027d948]
xor ecx, 0x1d3c765d
and ecx, dword [0x14027d94c]
mov r8d, 0xffffffff
xor r8d, 0x909c85e1
mov edx, ecx
and edx, r8d
mov eax, ecx
or eax, r8d
xor eax, 0xffffffff
imul eax, edx
mov r8d, 0xa62fc1e4
xor r8d, 0x36b34405
mov edx, ecx
and edx, r8d
or ecx, 0x909c85e1
imul ecx, edx
add ecx, eax
mov eax, ecx
and eax, 0x3b6c0b40
shl eax, 1
xor ecx, 0x3b6c0b40
add ecx, eax
mov edx, 0x12d8ba8d
xor edx, 0xed274572
mov eax, ecx
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x130c5af8
mov edx, 0xffffffff
xor edx, 0x130c5af8
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
cmp eax, 0x4cf002f7
je 0x1401b5ff0
mov rcx, qword [rbp + 0xee0]
mov rdx, qword [rbp + 0xf98]
mov r8, qword [rbp + 0xee8]
mov r9, qword [rbp + 0xef0]
mov eax, dword [0x14027d950]
and eax, dword [0x14027d954]
mov r10d, eax
and r10d, 0xd81795a7
shl r10d, 1
mov r11d, 0x74a3f6cd
xor r11d, 0xacb4636a
xor eax, r11d
add eax, r10d
mov r10d, 0xe5374e37
xor r10d, 0x249f86a6
add eax, r10d
mov r10d, eax
and r10d, 0x54f6db7f
mov r11d, 0xaa1763fd
xor r11d, 0x55e89c02
xor r10d, r11d
mov r11d, 0xcb45f75e
xor r11d, 0x9fb32c21
add eax, r11d
add eax, 1
add eax, r10d
mov r9b, byte [r9 + rcx]
mov byte [r8 + rcx], r9b
mov r8, rcx
add r8, 1
mov qword [rbp + 0xed0], r8
cmp rcx, rdx
sete cl
mov byte [rbp + 0xedf], cl
cmp eax, 0x9d547746
jb 0x1401a8998
mov rax, qword [rbp + 0xed0]
mov cl, byte [rbp + 0xedf]
test cl, 1
mov qword [rbp + 0xef8], rax
jne 0x1401a8a70
jmp 0x1401a88ed
mov rdx, qword [rbp + 0xf98]
mov r8, qword [rbp + 0xf08]
mov rax, r8
and rax, rdx
mov rcx, r8
or rcx, rdx
add rax, rcx
mov rcx, rax
xor rcx, r8
mov r8, rax
xor r8, rdx
xor r8, 0xffffffffffffffff
mov r9, rdx
and r9, r8
movabs r8, 0x9dcbde35e40bbdf0
movabs r10, 0x9dcbde35e40bbdf2
xor r8, r10
imul r8, r9
sub r8, rdx
mov rdx, rax
sub rdx, r8
and rcx, rdx
movabs rdx, 0x1fa5841da9d90027
movabs r8, 0x1fa5841da9d90027
xor rdx, r8
cmp rcx, rdx
mov qword [rbp + 0xf10], rax
jge 0x1401a8b0c
sub rsp, 0x20
call fcn.14000f24b
mov rax, qword [rbp + 0xf08]
add rsp, 0x20
mov qword [rbp + 0xf10], rax
mov rax, qword [rbp + 0xf10]
mov qword [rbp + 0xec0], rax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
mov rcx, qword [rbp + 0xf48]
mov r8, qword [rbp + 0xec0]
add rsp, 0x20
add rcx, 8
lea rdx, [0x14028b9f8]
cmp r8, 0
cmove rcx, rdx
mov qword [rbp + 0xec8], rcx
cmp byte [rax + 0x60], 0
jne 0x1401a8bbc
mov rax, qword [rbp + 0xec0]
cmp rax, 0
jge 0x1401a8b9a
mov rcx, qword [rbp + 0xec0]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14001a720
add rsp, 0x20
jmp 0x1401a8bbc
mov r8, qword [rbp + 0xec0]
mov rdx, qword [rbp + 0xec8]
mov rcx, qword [rbp + 0x1258]
sub rsp, 0x20
call fcn.1400eb9c0
add rsp, 0x20
mov rax, qword [rbp + 0xf48]
mov rcx, qword [rbp + 0x1360]
mov rdx, qword [rbp + 0x1048]
mov r8, qword [rbp + 0x1258]
mov r8, qword [r8]
mov qword [rbp + 0xeb0], r8
mov rdx, qword [rdx]
mov qword [rbp + 0xeb8], rdx
mov dl, byte [rcx]
mov r8b, 0x2c
xor r8b, 0x2c
xor ecx, ecx
cmp dl, r8b
mov rdx, rcx
mov qword [rbp + 0xf70], rdx
mov qword [rbp + 0xf78], rcx
mov qword [rbp + 0xf80], rax
jne 0x1401adc12
mov rax, qword [rbp + 0xeb0]
mov ecx, 2
cqo
idiv rcx
mov rdx, rax
mov rax, qword [rbp + 0xeb0]
movabs r8, 0x5b5c9422da21bab6
mov rcx, rdx
sub rcx, r8
movabs r8, 0xa60d800500472863
movabs r9, 0x59f27ffaffb8d79c
xor r8, r9
add rcx, r8
movabs r8, 0x5b5c9422da21bab6
add rcx, r8
mov qword [rbp + 0xea8], rcx
xor rcx, rdx
cmp rcx, 0
setl cl
movabs rdx, 0xfa3643cf11a8e646
movabs r8, 0xfa3643cf11a8e647
xor rdx, r8
cmp rax, rdx
setg al
and al, cl
test al, 1
jne 0x1401a8cbe
mov rcx, qword [rbp + 0xea8]
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rbp + 0xea0], rax
jmp 0x1401a8d01
sub rsp, 0x20
call fcn.14000f24b
mov r8, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0xeb8]
mov rax, qword [rbp + 0xf48]
add rsp, 0x20
xor edx, edx
cmp byte [r8], 0
mov qword [rbp + 0xf70], rdx
mov qword [rbp + 0xf78], rcx
mov qword [rbp + 0xf80], rax
jne 0x1401adc12
mov rcx, qword [rbp + 0xea0]
mov rax, rcx
shl rax, 1
mov qword [rbp + 0xe88], rax
cvtsi2sd xmm0, rcx
movsd xmm1, qword [0x14028b5c8]
mulsd xmm0, xmm1
movsd qword [rbp + 0xe90], xmm0
cvtsi2sd xmm1, rax
movsd qword [rbp + 0xe98], xmm1
ucomisd xmm0, xmm1
jne 0x1401a8d51
jp 0x1401a8d51
jmp 0x1401a8db9
movsd xmm1, qword [rbp + 0xe90]
movsd xmm0, qword [rbp + 0xe98]
subsd xmm0, xmm1
sub rsp, 0x20
call fcn.140271c60
add rsp, 0x20
movaps xmm1, xmm0
movsd xmm0, qword [rbp + 0xe90]
movsd qword [rbp + 0xe78], xmm1
sub rsp, 0x20
call fcn.140271c60
movsd xmm1, qword [rbp + 0xe78]
add rsp, 0x20
movsd xmm2, qword [0x14028b5d0]
mulsd xmm1, xmm2
xor eax, eax
ucomisd xmm0, xmm1
mov qword [rbp + 0xe80], rax
jb 0x1401adbcd
mov rax, qword [rbp + 0xe88]
mov word [rbp + 0x1b20], ax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
cmp byte [rax + 0x60], 0
jne 0x1401a8e41
mov rax, qword [rbp + 0xec0]
cmp rax, 0
jge 0x1401a8e1f
mov rcx, qword [rbp + 0xec0]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14001a720
add rsp, 0x20
jmp 0x1401a8e41
mov r8, qword [rbp + 0xec0]
mov rdx, qword [rbp + 0xec8]
lea rcx, [rbp + 0x1ab0]
sub rsp, 0x20
call fcn.1400eb9c0
add rsp, 0x20
mov ecx, dword [0x14027d958]
mov r8d, dword [0x14027d95c]
xor r8d, 0x2b30db8b
mov eax, ecx
xor eax, 0xffffffff
mov edx, r8d
and edx, eax
mov eax, 0x834122b8
xor eax, 0x7cbedd47
mov r9d, r8d
xor r9d, eax
mov eax, ecx
and eax, r9d
imul eax, edx
mov edx, ecx
and edx, r8d
or ecx, r8d
imul ecx, edx
add ecx, eax
mov eax, 0x8d8d546b
xor eax, 0xbbf2e9d0
and ecx, eax
mov eax, 0x9b2cf351
xor eax, 0x319da6ca
and eax, ecx
xor eax, 0xffffffff
mov edx, 0x2197ff06
xor edx, 0x8b26aa9d
add ecx, edx
add ecx, 1
add ecx, eax
mov eax, ecx
and eax, 0x436fa302
mov edx, 0xce1320f4
xor edx, 0x8d7c83f6
or ecx, edx
add eax, ecx
cmp eax, 0x7b32b63e
jb 0x1401b5ff9
mov rcx, qword [rbp + 0x1360]
mov rdx, qword [rbp + 0x1050]
mov eax, dword [0x14027d960]
mov r8d, dword [0x14027d964]
xor r8d, 0xa68f6a00
and eax, r8d
mov r8d, eax
and r8d, 0xd40755fd
mov r9d, 0x1e62a87e
xor r9d, 0x1e62a87c
imul r8d, r9d
xor eax, 0xd40755fd
add eax, r8d
mov r9d, 0x4255f6b8
xor r9d, 0x4255f6b9
mov r8d, eax
add r8d, r9d
xor eax, 0xffffffff
or eax, 0x95479e8d
add eax, r8d
imul eax, eax, 0xf1fc248e
mov r8, qword [rbp + 0x1ab0]
mov qword [rbp + 0xe60], r8
mov rdx, qword [rdx]
mov qword [rbp + 0xe68], rdx
mov cl, byte [rcx]
mov dl, 0xfd
xor dl, 0xfd
cmp cl, dl
sete cl
mov byte [rbp + 0xe77], cl
cmp eax, 0x39afe4d9
je 0x1401b5ff9
mov rax, qword [rbp + 0xf48]
mov rcx, qword [rbp + 0xeb8]
mov r8b, byte [rbp + 0xe77]
xor edx, edx
test r8b, 1
mov qword [rbp + 0xf70], rdx
mov qword [rbp + 0xf78], rcx
mov qword [rbp + 0xf80], rax
jne 0x1401a8fae
jmp 0x1401adc12
mov rax, qword [rbp + 0xe60]
mov ecx, 2
cqo
idiv rcx
mov r9, rax
mov rax, qword [rbp + 0xe60]
movabs rcx, 0x72a3d4ce5e548ffc
movabs rdx, 0x8d5c2b31a1ab7003
xor rcx, rdx
movabs rdx, 0xaa00b1143e54fe1e
movabs r8, 0x55ff4eebc1ab01e1
xor rdx, r8
xor rcx, rdx
xor edx, edx
sub rdx, 1
sub rcx, rdx
mov rdx, r9
sub rdx, rcx
mov qword [rbp + 0xe58], rdx
movabs r8, 0x6e23532dc60c27dd
movabs rcx, 0x91dcacd239f3d822
xor r8, rcx
mov rcx, rdx
xor rcx, r8
movabs r10, 0x26324d4d39dd8391
movabs r8, 0xd9cdb2b2c6227c6e
xor r10, r8
mov r8, rdx
xor r8, r10
or rcx, r8
xor rcx, 0xffffffffffffffff
movabs r10, 0xf6396402387043e1
movabs r8, 0x9c69bfdc78fbc1e
xor r10, r8
mov r8, r9
xor r8, r10
or rcx, r8
mov r8, r9
xor r8, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
or r8, r9
and rdx, r8
xor rdx, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
or rcx, rdx
cmp rcx, 0
setl dl
movabs rcx, 0xfa5a3bd187537e48
movabs r8, 0xfa5a3bd187537e49
xor rcx, r8
cmp rax, rcx
setg al
mov cl, al
xor cl, dl
xor r8d, r8d
xor r8b, 1
xor cl, r8b
or al, dl
and al, cl
test al, 1
jne 0x1401a9181
mov eax, dword [0x14027d968]
and eax, dword [0x14027d96c]
add eax, 0xb51cd0b0
sub eax, 0x86521251
sub eax, 0xba46fb38
add eax, 0x86521251
sub eax, 0xeffbecb
cmp eax, 0xdfcdbb6d
ja 0x1401b6002
mov rdx, qword [rbp + 0xe58]
mov ecx, dword [str.C._r]
sub ecx, dword [0x14027d974]
mov eax, ecx
and eax, 0xd2724087
mov r8d, 0x298cc8ad
xor r8d, 0xd6733752
xor eax, r8d
and ecx, 0xd2724087
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
sub eax, 0x15c90d3a
mov ecx, 0x76933454
xor ecx, 0x154e760e
sub eax, ecx
add eax, 0x6154619
add eax, 0x63dd425a
xor ecx, ecx
test rdx, rdx
cmovg rcx, rdx
mov qword [rbp + 0xe50], rcx
cmp eax, 0xe8750863
jae 0x1401b6002
mov rax, qword [rbp + 0xe50]
mov qword [rbp + 0xe48], rax
jmp 0x1401a91d2
sub rsp, 0x20
call fcn.14000f24b
mov r8, qword [rbp + 0x1360]
mov rdx, qword [rbp + 0xe68]
mov rcx, qword [rbp + 0xeb8]
mov rax, qword [rbp + 0xf48]
add rsp, 0x20
mov r8b, byte [r8]
mov r9b, 0x17
xor r9b, 0x17
cmp r8b, r9b
mov qword [rbp + 0xf70], rdx
mov qword [rbp + 0xf78], rcx
mov qword [rbp + 0xf80], rax
jne 0x1401adc12
mov rcx, qword [rbp + 0xe48]
mov rax, rcx
shl rax, 1
mov qword [rbp + 0xe30], rax
cvtsi2sd xmm0, rcx
movsd xmm1, qword [0x14028b5c8]
mulsd xmm0, xmm1
movsd qword [rbp + 0xe38], xmm0
cvtsi2sd xmm1, rax
movsd qword [rbp + 0xe40], xmm1
ucomisd xmm0, xmm1
jne 0x1401a9222
jp 0x1401a9222
jmp 0x1401a928f
movsd xmm1, qword [rbp + 0xe38]
movsd xmm0, qword [rbp + 0xe40]
subsd xmm0, xmm1
sub rsp, 0x20
call fcn.140271c60
add rsp, 0x20
movaps xmm1, xmm0
movsd xmm0, qword [rbp + 0xe38]
movsd qword [rbp + 0xe28], xmm1
sub rsp, 0x20
call fcn.140271c60
movsd xmm1, qword [rbp + 0xe28]
mov rax, qword [rbp + 0xe68]
add rsp, 0x20
movsd xmm2, qword [0x14028b5d0]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
mov qword [rbp + 0xe80], rax
jb 0x1401adbcd
mov eax, dword [0x14027d978]
mov ecx, dword [0x14027d97c]
xor ecx, 0x230293f1
xor edx, edx
div ecx
mov r11d, eax
mov eax, 0xa741c29b
xor eax, 0xbef4770b
add r11d, eax
mov eax, 0x91903a5a
xor eax, 0x5cc05bb4
add r11d, eax
sub r11d, 0x19b5b590
xor r11d, 0x61d62aa8
mov eax, 0xea6eb281
xor eax, 0x15914d7e
mov ecx, r11d
xor ecx, eax
mov r8d, 0xffffffff
xor r8d, 0x1c29e131
mov edx, 0xffffffff
xor edx, 0xfc93146a
mov eax, ecx
and eax, 0xfc93146a
and r11d, edx
mov r10d, 0x735c8327
xor r10d, 0x8fcf974d
mov r9d, r8d
and r9d, r10d
mov r10d, edx
and r10d, 0x1c29e131
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0xfc93146a
and ecx, edx
or eax, ecx
cmp eax, 0xdcb6c533
ja 0x1401b600b
mov rax, qword [rbp + 0x1058]
mov rcx, qword [rbp + 0xe30]
mov r8d, dword [0x14027d980]
sub r8d, dword [0x14027d984]
mov edx, r8d
xor edx, 0xffffffff
and edx, 0x8b736a00
mov r9d, 0xffffffff
xor r9d, 0x8b736a00
and r8d, r9d
or edx, r8d
imul edx, edx, 0x74e17d23
mov r8d, edx
and r8d, 0xcb86e37
xor r8d, 0xffffffff
mov r9d, 0x9bc4f3c8
xor r9d, 0x977c9dff
add edx, r9d
add edx, 1
add edx, r8d
mov dword [rbp + 0xe20], edx
mov dx, 0xffff
xor dx, 2
xor r8d, r8d
sub r8w, 1
sub dx, r8w
sub cx, dx
mov word [rax], cx
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov rcx, rax
mov eax, dword [rbp + 0xe20]
cmp byte [rcx + 0x60], 0
sete cl
mov byte [rbp + 0xe27], cl
cmp eax, 0xfe86d86d
jae 0x1401b600b
mov al, byte [rbp + 0xe27]
test al, 1
jne 0x1401a9411
jmp 0x1401a957a
mov rax, qword [rbp + 0xec0]
movabs rcx, 0x72e1ecded0d40a32
movabs rdx, 0x72e1ecded0d40a32
xor rcx, rdx
cmp rax, rcx
jge 0x1401a947f
mov rcx, qword [rbp + 0xec0]
movabs rdx, 0xb2603993b47014fd
movabs rax, 0xb2603993b47014fd
xor rdx, rax
movabs r8, 0x99f10c3fa296d21d
movabs rax, 0xe60ef3c05d692de2
xor r8, rax
sub rsp, 0x20
call fcn.14001a720
add rsp, 0x20
jmp 0x1401a957a
mov ecx, dword [0x14027d988]
mov edx, dword [str.L_]
xor edx, 0x5eb95533
mov eax, 0xda1b009d
xor eax, 0x25e4ff62
mov r8d, ecx
xor r8d, eax
mov eax, edx
and eax, r8d
mov r8d, 0xefdeae1c
xor r8d, 0x102151e3
xor edx, r8d
and ecx, edx
or eax, ecx
imul eax, eax, 0x3fd2e8fc
xor eax, 0xdbf252d8
sub eax, 0xc2ee9149
mov ecx, 0x6b15037e
xor ecx, 0x479af0c8
cmp eax, ecx
ja 0x1401b6014
mov r8, qword [rbp + 0xec0]
mov rdx, qword [rbp + 0xec8]
mov eax, dword [0x14027d990]
sub eax, dword [0x14027d994]
imul ecx, eax, 0x2e704a6c
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x1db78db2
mov r9d, 0xffffffff
xor r9d, 0x1db78db2
or ecx, r9d
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x966e8904
xor ecx, 0x9c01d88e
xor eax, ecx
mov dword [rbp + 0xe1c], eax
mov eax, 0xd2a170b5
xor eax, 0x40d97a75
mov dword [rbp + 0xe18], eax
lea rcx, [rbp + 0x1aa0]
sub rsp, 0x20
call fcn.1400eb9c0
mov ecx, dword [rbp + 0xe18]
mov eax, dword [rbp + 0xe1c]
add rsp, 0x20
cmp eax, ecx
je 0x1401b6014
jmp 0x1401a957a
mov eax, dword [0x14027d998]
xor eax, 0x821cb395
mov edx, dword [0x14027d99c]
mov ecx, eax
add ecx, 1
mov r8d, 0x8170f304
xor r8d, 0x7e8f0cfb
xor eax, r8d
or eax, edx
add eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x7a812eab
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov r8d, 0xbeda7c3
xor r8d, 0x716c8968
mov edx, eax
and edx, r8d
or eax, 0x7a812eab
imul eax, edx
add eax, ecx
xor eax, 0xb5a019b0
mov ecx, 0x307988f0
xor ecx, 0x4d9e2496
and eax, ecx
cmp eax, 0x64c9a15b
ja 0x1401b601d
mov rcx, qword [rbp + 0x1360]
mov eax, dword [0x14027d9a0]
add eax, dword [0x14027d9a4]
mov r8d, 0x42860e15
xor edx, edx
div r8d
mov r8d, 0x2129107e
xor edx, edx
div r8d
mov r8d, 0xae6970e9
xor edx, edx
div r8d
mov rdx, qword [rbp + 0x1060]
mov r8, qword [rbp + 0x1aa0]
mov qword [rbp + 0xe00], r8
mov rdx, qword [rdx]
mov qword [rbp + 0xe08], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0xe17], cl
cmp eax, 0x3fd95ec5
je 0x1401b601d
mov rax, qword [rbp + 0xf48]
mov rcx, qword [rbp + 0xeb8]
mov rdx, qword [rbp + 0xe68]
mov r8b, byte [rbp + 0xe17]
test r8b, 1
mov qword [rbp + 0xf70], rdx
mov qword [rbp + 0xf78], rcx
mov qword [rbp + 0xf80], rax
jne 0x1401a96a4
jmp 0x1401adc12
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
mov rcx, qword [rbp + 0x1360]
add rsp, 0x20
mov eax, dword [rbp + 0xf94]
mov dl, byte [rcx]
mov r8b, 0x5a
xor r8b, 0x5a
mov cl, 1
cmp dl, r8b
mov byte [rbp + 0xdfb], cl
mov dword [rbp + 0xdfc], eax
jne 0x1401adc64
mov rax, qword [rbp + 0x1068]
mov r8, qword [rbp + 0xe00]
mov rcx, qword [rbp + 0xe08]
add rcx, 8
lea rdx, [0x14028b9f8]
cmp r8, 0
cmove rcx, rdx
mov qword [rax], rcx
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0xdf0], rax
mov rax, qword [rbp + 0xdf0]
xorps xmm0, xmm0
movups xmmword [rbp + rax + 0x1af0], xmm0
xor ecx, ecx
sub rcx, rax
xor eax, eax
sub rax, 0x10
add rcx, rax
xor eax, eax
sub rax, rcx
cmp rax, 0x30
mov qword [rbp + 0xdf0], rax
jne 0x1401a9731
mov rax, qword [rbp + 0x1090]
mov rcx, qword [rbp + 0x1088]
mov rdx, qword [rbp + 0x1080]
mov r8, qword [rbp + 0x1078]
mov r9, qword [rbp + 0x1070]
mov dword [rbp + 0x1af0], 0x30
lea r10, [rbp + 0x1b20]
mov qword [r9], r10
mov dword [r8], 0x40
mov qword [rdx], 0
mov qword [rcx], 0
mov qword [rax], 0
mov qword [rbp + 0x1ae8], 0
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
xorps xmm0, xmm0
movaps xmmword [rbp + 0x1ad0], xmm0
lea rcx, [rbp + 0x1ae8]
mov edx, 0x80000000
lea r8, [rbp + 0x1af0]
lea r9, [rbp + 0x1ad0]
mov rax, qword [0x14028d050]
sub rsp, 0x30
mov dword [rsp + 0x20], 7
mov dword [rsp + 0x28], 1
call qword [rax]
mov rdx, qword [rbp + 0x1360]
add rsp, 0x30
mov ecx, eax
mov eax, dword [rbp + 0xf94]
mov dword [rbp + 0xdec], ecx
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0xdfb], cl
mov dword [rbp + 0xdfc], eax
jne 0x1401adc64
mov ecx, dword [rbp + 0xdec]
mov rax, qword [rbp + 0x1098]
mov rdx, qword [rbp + 0xfa0]
mov r8, qword [rbp + 0xf98]
mov qword [rbp + 0x1a90], r8
mov qword [rax], rdx
lea rdx, [rbp + 0x1a90]
sub rsp, 0x20
call fcn.14010c830
mov rcx, qword [rbp + 0x1360]
mov eax, dword [rbp + 0xf94]
add rsp, 0x20
mov dl, byte [rcx]
mov r8b, 0xf7
xor r8b, 0xf7
mov cl, 1
cmp dl, r8b
mov byte [rbp + 0xdfb], cl
mov dword [rbp + 0xdfc], eax
jne 0x1401adc64
mov ecx, dword [rbp + 0xdec]
mov rax, qword [rbp + 0x10a0]
mov rdx, qword [rbp + 0xfa0]
mov r8, qword [rbp + 0xf98]
mov qword [rbp + 0x1a80], r8
mov qword [rax], rdx
lea rdx, [rbp + 0x1a80]
sub rsp, 0x20
call fcn.14010ca60
mov rdx, qword [rbp + 0x1360]
mov eax, dword [rbp + 0xf94]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0xdfb], cl
mov dword [rbp + 0xdfc], eax
jne 0x1401adc64
mov edx, dword [rbp + 0xdec]
mov rax, qword [rbp + 0x10a8]
mov r8, qword [rbp + 0xfa0]
mov r9, qword [rbp + 0xf98]
mov rcx, qword [rbp + 0x1ae8]
mov qword [rbp + 0x1a70], r9
mov qword [rax], r8
lea r8, [rbp + 0x1a70]
sub rsp, 0x20
call fcn.14010cd10
mov rdx, qword [rbp + 0x1360]
mov eax, dword [rbp + 0xf94]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0xdfb], cl
mov dword [rbp + 0xdfc], eax
jne 0x1401adc64
cmp qword [rbp + 0x1ae8], 1
jge 0x1401a99db
mov ecx, dword [rbp + 0xdec]
mov rax, qword [0x14028b950]
mov qword [rbp + 0x1a60], rax
mov rax, qword [0x14028b958]
mov qword [rbp + 0x1a68], rax
lea rdx, [rbp + 0x1a60]
sub rsp, 0x20
call fcn.1400f0ce0
mov rdx, qword [rbp + 0x1360]
mov eax, dword [rbp + 0xf94]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0xdfb], cl
mov dword [rbp + 0xdfc], eax
jne 0x1401adc64
mov eax, dword [0x14027d9a8]
xor eax, 0xb831e8c0
mov ecx, dword [0x14027d9ac]
mov edx, 0x33dcc5e0
xor edx, 0xe78e0bd
sub eax, edx
sub eax, ecx
mov ecx, 0x951e4c65
xor ecx, 0xa8ba6938
add eax, ecx
mov ecx, 0xfd9b8a78
xor ecx, 0xbb5f15a7
xor edx, edx
div ecx
mov r11d, eax
mov edx, 0xffffffff
xor edx, 0x3383c63d
mov ecx, r11d
and ecx, edx
mov eax, r11d
or eax, edx
xor eax, 0xffffffff
imul eax, ecx
mov ecx, r11d
and ecx, 0x3383c63d
mov edx, 0x63583b0e
xor edx, 0x50dbfd33
or r11d, edx
imul r11d, ecx
add r11d, eax
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x9cfe24c7
mov edx, 0xffffffff
xor edx, 0x3ed78114
mov eax, ecx
and eax, 0x3ed78114
and r11d, edx
mov r9d, r8d
and r9d, 0x3ed78114
mov r10d, edx
and r10d, 0x9cfe24c7
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0x3ed78114
and ecx, edx
or eax, ecx
cmp eax, 0xc8351711
je 0x1401b6026
mov ecx, dword [rbp + 0xdec]
mov eax, dword [0x14027d9b0]
xor eax, 0x2ceaca49
mov edx, dword [0x14027d9b4]
xor edx, 0xa9e59e86
sub eax, edx
imul edx, eax, 0x70c8a807
mov eax, edx
and eax, eax
xor eax, 0xffffffff
and eax, 0x7066dd8f
mov r8d, 0xf4f6920e
xor r8d, 0xb096df1
xor eax, r8d
mov r8d, 0x4226bd38
xor r8d, 0x324060b7
mov r9d, 0x5003b7ec
xor r9d, 0xaffc4813
xor r8d, r9d
mov r9d, 0xda351c41
xor r9d, 0xaa53c1ce
mov r10d, 0xb7f7f2c0
xor r10d, 0x48080d3f
xor r9d, r10d
or r8d, r9d
mov r9d, 0x5eea3a46
xor r9d, 0xa115c5b9
xor edx, r9d
xor r8d, 0xffffffff
or edx, r8d
and eax, edx
mov edx, 0x9d8971e6
xor edx, 0x62768e19
xor eax, edx
mov r8d, 0x16ea17cd
xor edx, edx
div r8d
mov dword [rbp + 0xde4], eax
mov rax, qword [0x14028b950]
mov qword [rbp + 0x1a50], rax
mov rax, qword [0x14028b958]
mov qword [rbp + 0x1a58], rax
lea rdx, [rbp + 0x1a50]
sub rsp, 0x20
call fcn.1400f0ce0
mov rcx, qword [rbp + 0x1360]
mov eax, dword [rbp + 0xde4]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0xdeb], cl
cmp eax, 0x6f2f3949
jae 0x1401b6026
mov eax, dword [rbp + 0xf94]
mov r8b, byte [rbp + 0xdeb]
mov edx, 0x1d4c0
mov cl, 1
test r8b, 1
mov qword [rbp + 0xdc8], rdx
mov dl, cl
mov byte [rbp + 0xdd7], dl
mov edx, eax
mov dword [rbp + 0xdd8], edx
mov byte [rbp + 0xddf], cl
mov dword [rbp + 0xde0], eax
jne 0x1401a9c02
jmp 0x1401ada79
mov rcx, qword [rbp + 0xdc8]
mov al, byte [rbp + 0xdd7]
mov edx, dword [rbp + 0xdd8]
mov dword [rbp + 0xdb4], edx
mov byte [rbp + 0xdb3], al
mov qword [rbp + 0xda8], rcx
sub rsp, 0x20
call fcn.140015f8d
mov cl, byte [rbp + 0xdb3]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0xdb4]
mov qword [rbp + 0xdb8], rdx
mov byte [rbp + 0xdc3], cl
mov dword [rbp + 0xdc4], eax
jmp 0x1401a9d26
mov al, byte [rbp + 0xd9f]
mov ecx, dword [rbp + 0xd98]
mov dword [rbp + 0xda0], ecx
mov byte [rbp + 0xda7], al
mov eax, dword [0x14027d9b8]
xor edx, edx
div dword [0x14027d9bc]
mov ecx, 0x24d461e6
xor edx, edx
div ecx
mov ecx, 0xd3dcc23c
xor edx, edx
div ecx
mov ecx, 0x9e2a9989
xor ecx, 0xe88911a3
and eax, ecx
cmp eax, 0x274112a
ja 0x1401b602f
mov eax, dword [0x14027d9c0]
xor edx, edx
div dword [0x14027d9c4]
mov edx, eax
xor edx, 0xffffffff
and edx, 0x40ba1fd
mov r8d, 0xffffffff
xor r8d, 0x40ba1fd
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x40ba1fd
or eax, 0x40ba1fd
imul eax, edx
add eax, ecx
mov ecx, 0x9a87fe2e
xor ecx, 0xb78fb02a
xor eax, ecx
sub eax, 0xc800328b
cmp eax, 0x4e1f3e69
jbe 0x1401a9cac
mov eax, dword [rbp + 0xda0]
mov cl, byte [rbp + 0xda7]
mov byte [rbp + 0xdc3], cl
mov dword [rbp + 0xdc4], eax
jmp 0x1401a9d26
mov r11, qword [rbp + 0xdb8]
mov r10b, byte [rbp + 0xdc3]
mov eax, dword [rbp + 0xdc4]
mov dword [rbp + 0xd84], eax
mov byte [rbp + 0xd83], r10b
mov rax, qword [0x14028d070]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x1ae8]
xor edx, edx
mov r9d, edx
lea rsi, [rbp + 0x1ad0]
xor edx, edx
sub rsp, 0x60
mov rdx, r9
mov r8, r9
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x28], r11
mov dword [rsp + 0x30], 0x1d4c0
mov dword [rsp + 0x38], 3
mov dword [rsp + 0x40], 0
mov qword [rsp + 0x48], 0
mov byte [rsp + 0x50], r10b
call rax
mov rdx, qword [rbp + 0x1360]
mov ecx, dword [rbp + 0xd84]
add rsp, 0x60
mov r8d, eax
mov rax, qword [rbp + 0xdb8]
mov dword [rbp + 0xd88], r8d
cmp byte [rdx], 0
mov dword [rbp + 0xd8c], ecx
mov qword [rbp + 0xd90], rax
jne case.0x1401ad876.17
mov eax, dword [rbp + 0xd88]
mov ecx, 0xc6e0087a
xor ecx, 0xc6e00979
cmp eax, ecx
mov dword [rbp + 0xd7c], eax
jne 0x1401a9fdd
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov qword [rbp + 0x1a48], 0
movabs rax, 0x1654c77e2ea84f2d
movabs rcx, 0xe9ab3881d11bfbed
xor rax, rcx
mov qword [rbp + 0x1a48], rax
mov rax, qword [0x14028d0a0]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x1ae8]
mov edx, 1
lea r8, [rbp + 0x1a48]
sub rsp, 0x20
call rax
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0x1360]
mov dword [rbp + 0xd78], ecx
cmp byte [rax], 0
jne 0x1401a9fbe
mov eax, dword [rbp + 0xd78]
test eax, eax
je 0x1401a9fad
jmp 0x1401a9e8a
mov eax, dword [rbp + 0xd78]
sub eax, 0x102
jne 0x1401a9f30
jmp 0x1401a9ea0
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.140029060
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x14028d000]
mov qword [rcx], rax
lea rax, [0x14028b908]
mov qword [rcx + 0x10], rax
mov rax, qword [0x14028b978]
mov qword [rcx + 0x18], rax
mov rax, qword [0x14028b980]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
movabs rax, 0x5a4ec9e91dfacd6e
movabs rdx, 0xa5b13616e729f637
xor rax, rdx
lea rdx, [0x14028b908]
lea r8, [0x14028b919]
lea r9, [0x14028b921]
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.140028fa8
add rsp, 0x30
jmp 0x1401a9fbe
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.140029060
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x14028d000]
mov qword [rcx], rax
lea rax, [0x14028b908]
mov qword [rcx + 0x10], rax
mov rax, qword [0x14028b978]
mov qword [rcx + 0x18], rax
mov rax, qword [0x14028b980]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x14028b908]
lea r8, [0x14028b919]
lea r9, [0x14028b921]
sub rsp, 0x30
mov qword [rsp + 0x20], 0xffffffff802ad3e1
call fcn.140028fa8
add rsp, 0x30
jmp 0x1401a9fbe
mov eax, dword [rbp + 0x1ad0]
mov dword [rbp + 0xd7c], eax
jmp 0x1401a9fdd
mov rax, qword [rbp + 0xdb8]
mov ecx, dword [rbp + 0xd84]
mov dword [rbp + 0xd8c], ecx
mov qword [rbp + 0xd90], rax
jmp case.0x1401ad876.17
mov rdx, qword [rbp + 0x10b0]
mov ecx, dword [rbp + 0xd7c]
mov dword [rbp + 0xd70], ecx
mov eax, ecx
sub eax, 0x80000005
sete al
test ecx, ecx
sete cl
mov byte [rbp + 0xd77], cl
mov rdx, qword [rdx]
test rdx, rdx
sete dl
and cl, dl
or al, cl
test al, 1
jne 0x1401aa01f
jmp 0x1401aa324
mov eax, dword [0x14027d9c8]
xor edx, edx
div dword [0x14027d9cc]
mov r8d, eax
add r8d, 0x8ec6695a
mov eax, 0xf87c42f1
xor eax, 0xec28a99
imul r8d, eax
mov eax, 0x6888850c
xor eax, 0x97777af3
mov ecx, r8d
xor ecx, eax
mov eax, 0xb21109fe
xor eax, 0xda820f93
and eax, ecx
mov r9d, 0xffffffff
xor r9d, 0x6893066d
and r8d, r9d
mov ecx, 0xffffffff
xor ecx, 0x5e16ff70
and ecx, 0x6893066d
mov edx, 0x2818e55a
xor edx, 0x760e1a2a
and edx, r9d
or eax, r8d
or ecx, edx
xor eax, ecx
cmp eax, 0x8137340d
ja 0x1401b6038
mov eax, dword [0x14027d9d0]
mov ecx, 0xd8f06544
xor ecx, 0x4e624f4b
xor eax, ecx
and eax, dword [0x14027d9d4]
mov ecx, 0x625c3839
xor ecx, 0x4bb973c9
xor edx, edx
div ecx
mov rdx, qword [rbp + 0xda8]
mov ecx, 0xb7bd38b2
xor ecx, 0xb7bd38b2
mov r8d, 0xb0138dad
xor r8d, 0x9234e353
sub ecx, r8d
add eax, ecx
or eax, 0xe8e68308
movabs rcx, 0xe669378d555dfc9f
movabs r8, 0xe669378d555dfc9e
xor rcx, r8
mov r8, rdx
shl r8, cl
mov qword [rbp + 0xd50], r8
mov rcx, r8
cvtsi2sd xmm0, rdx
movsd xmm1, qword [0x14028b5c8]
mulsd xmm0, xmm1
movsd qword [rbp + 0xd58], xmm0
cvtsi2sd xmm1, rcx
movsd qword [rbp + 0xd60], xmm1
ucomisd xmm0, xmm1
sete cl
setnp dl
and cl, dl
mov byte [rbp + 0xd6f], cl
cmp eax, 0x7d97ad12
jbe 0x1401aa0a1
mov al, byte [rbp + 0xd6f]
test al, 1
jne 0x1401aa1fa
jmp 0x1401aa16f
movsd xmm1, qword [rbp + 0xd58]
movsd xmm0, qword [rbp + 0xd60]
subsd xmm0, xmm1
sub rsp, 0x20
call fcn.140271c60
add rsp, 0x20
movaps xmm1, xmm0
movsd xmm0, qword [rbp + 0xd58]
movsd qword [rbp + 0xd48], xmm1
sub rsp, 0x20
call fcn.140271c60
movsd xmm1, qword [rbp + 0xd48]
add rsp, 0x20
movsd xmm2, qword [0x14028b5d0]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
jae 0x1401aa1fa
sub rsp, 0x20
call fcn.14000f24b
mov ecx, dword [rbp + 0xd84]
mov rax, qword [rbp + 0xdb8]
add rsp, 0x20
mov dword [rbp + 0xd8c], ecx
mov qword [rbp + 0xd90], rax
jmp case.0x1401ad876.17
mov rax, qword [rbp + 0xd50]
cmp rax, 0x100000
jl 0x1401aa2a4
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.140029060
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x14028cfb0]
mov qword [rcx], rax
lea rax, [0x14028b8c8]
mov qword [rcx + 0x10], rax
mov rax, qword [0x14028b978]
mov qword [rcx + 0x18], rax
mov rax, qword [0x14028b980]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x14028b8c8]
lea r8, [0x14028b919]
lea r9, [0x14028b921]
sub rsp, 0x30
mov qword [rsp + 0x20], 0xcd54e7a
call fcn.140028fa8
mov ecx, dword [rbp + 0xd84]
mov rax, qword [rbp + 0xdb8]
add rsp, 0x30
mov dword [rbp + 0xd8c], ecx
mov qword [rbp + 0xd90], rax
jmp case.0x1401ad876.17
mov rcx, qword [rbp + 0xdb8]
sub rsp, 0x20
call fcn.14003b4d4
mov rdx, qword [rbp + 0xd50]
mov cl, byte [rbp + 0xd83]
mov eax, dword [rbp + 0xd84]
add rsp, 0x20
cmp rdx, 0
mov qword [rbp + 0xdc8], rdx
mov byte [rbp + 0xdd7], cl
mov dword [rbp + 0xdd8], eax
jge 0x1401a9c02
mov rcx, qword [rbp + 0xd50]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14001a720
mov ecx, dword [rbp + 0xd84]
add rsp, 0x20
xor eax, eax
mov dword [rbp + 0xd8c], ecx
mov qword [rbp + 0xd90], rax
jmp case.0x1401ad876.17
mov eax, dword [rbp + 0xd84]
mov rcx, qword [rbp + 0xdb8]
mov dl, byte [rbp + 0xd77]
test dl, 1
mov qword [rbp + 0xd38], rcx
mov dword [rbp + 0xd44], eax
jne case.0x1401ad876.0
jmp 0x1401ad878
mov rax, qword [rbp + 0xd38]
mov ecx, dword [rbp + 0xd44]
mov dword [rbp + 0xd2c], ecx
mov qword [rbp + 0xd30], rax
mov r11d, dword [0x14027d9d8]
xor r11d, 0x2bcada2
mov r10d, dword [0x14027d9dc]
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, r10d
xor r8d, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xd99af0a3
mov eax, ecx
and eax, 0xd99af0a3
and r11d, edx
mov r9d, r8d
and r9d, 0xd99af0a3
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0xd99af0a3
and ecx, edx
or eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x6adc16d4
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x84743045
xor r8d, 0x7b8bcfba
xor ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x6adc16d4
or eax, 0x6adc16d4
imul eax, edx
add eax, ecx
imul eax, eax, 0x969d139e
mov ecx, 0x78abaea3
xor ecx, 0x44cfc1d4
xor edx, edx
div ecx
cmp eax, 0x1026576c
jae 0x1401b6041
mov rcx, qword [rbp + 0xd30]
mov eax, dword [0x14027d9e0]
mov r8d, dword [0x14027d9e4]
mov edx, eax
xor edx, 0xffffffff
mov r9d, eax
xor r9d, 0xffffffff
and edx, r9d
mov r9d, r8d
xor r9d, 0xffffffff
mov r10d, r8d
xor r10d, 0xffffffff
and r9d, r10d
or edx, r9d
mov r9d, 0xb9263a34
xor r9d, 0x46d9c5cb
xor edx, r9d
or eax, r8d
xor eax, 0xffffffff
mov r8d, 0xfe279813
xor r8d, 0x1d867ec
xor edx, r8d
xor eax, 0xffffffff
and edx, eax
mov eax, edx
and eax, 0x134d25be
xor eax, 0xffffffff
mov r8d, 0x19e4fc16
xor r8d, 0xaa9d9a8
and edx, r8d
mov r8d, 0x4edbca6b
xor r8d, 0xb1243594
xor edx, r8d
and eax, edx
xor eax, 0xffffffff
sub eax, 0xdbc545d2
sub eax, 0x4603c467
mov rdx, rcx
add rdx, 0x3c
mov qword [rbp + 0xd20], rdx
cmp dword [rcx + 0x3c], 0
sete cl
mov byte [rbp + 0xd2b], cl
cmp eax, 0x884ac04f
jbe 0x1401aa425
mov eax, dword [rbp + 0xd2c]
mov cl, byte [rbp + 0xd2b]
test cl, 1
mov dword [rbp + 0xd1c], eax
jne 0x1401ad51c
jmp 0x1401aa506
mov eax, dword [0x14027d9e8]
mov ecx, dword [0x14027d9ec]
xor ecx, 0xffffffff
add eax, ecx
add eax, 1
mov ecx, eax
and ecx, ecx
xor ecx, 0xffffffff
and ecx, 0x44183db5
xor ecx, 0xffffffff
mov edx, 0x66cc95cc
xor edx, 0x22d4a879
mov r8d, 0x6856abd4
xor r8d, 0x97a9542b
xor edx, r8d
mov r8d, 0xffffffff
xor r8d, 0x44183db5
or edx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
or eax, edx
and ecx, eax
xor ecx, 0xffffffff
mov eax, 0xd5b84c7b
xor eax, 0x81c697de
sub ecx, eax
mov edx, 0x444356fe
xor edx, 0xb4e7d064
mov eax, ecx
and eax, edx
xor eax, 0xffffffff
mov edx, 0x16a32437
xor edx, 0xe95cdbc8
xor ecx, edx
mov edx, 0x5d99435d
xor edx, 0xad3dc5c7
mov r8d, 0xaa16e00a
xor r8d, 0x55e91ff5
xor edx, r8d
or ecx, edx
mov edx, 0x1f3fd232
xor edx, 0xe0c02dcd
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
cmp eax, 0x7619d1c3
jbe 0x1401b604a
mov rax, qword [rbp + 0xd30]
mov ecx, dword [str.___F__]
mov edx, dword [0x14027d9f4]
or ecx, edx
add ecx, 0x610e1f04
xor ecx, 0x4d64f824
add ecx, 0x2912e4a
mov dword [rbp + 0xd14], ecx
mov rcx, rax
add rcx, 0x38
mov qword [rbp + 0xd08], rcx
mov eax, dword [rax + 0x38]
mov ecx, eax
xor ecx, 0xffffffef
and ecx, eax
sub rsp, 0x20
call fcn.1400e7c9c
mov rcx, qword [rbp + 0x1360]
add rsp, 0x20
mov dl, al
mov eax, dword [rbp + 0xd14]
mov cl, byte [rcx]
mov byte [rbp + 0xd19], cl
test cl, cl
sete cl
mov byte [rbp + 0xd1a], cl
and cl, dl
mov byte [rbp + 0xd1b], cl
cmp eax, 0xba1882e3
je 0x1401aa5c7
mov al, byte [rbp + 0xd1b]
test al, 1
jne 0x1401aa661
jmp 0x1401abe4d
mov rax, qword [rbp + 0xd20]
mov eax, dword [rax]
mov dword [rbp + 0xd04], eax
sub eax, 2
je 0x1401aa79a
jmp 0x1401aa67e
mov eax, dword [rbp + 0xd04]
sub eax, 4
jne 0x1401aa84f
jmp 0x1401aa692
mov rax, qword [rbp + 0xd30]
mov rcx, rax
add rcx, 0x5e
mov qword [rbp + 0xcf8], rcx
mov ax, word [rax + 0x5e]
mov word [rbp + 0xd02], ax
mov cx, 0x3065
xor cx, 0x309a
cmp ax, cx
jbe 0x1401aa6f8
mov ax, word [rbp + 0xd02]
movzx eax, ax
mov ecx, eax
xor eax, eax
mov edx, eax
mov r8d, 0xff
sub rsp, 0x20
call fcn.14001a720
mov eax, dword [rbp + 0xd2c]
add rsp, 0x20
mov dword [rbp + 0xcf4], eax
jmp 0x1401abdde
mov ax, word [rbp + 0xd02]
mov cx, 0xc94e
xor cx, 0xc960
cmp ax, cx
jne 0x1401aa8b6
mov rax, qword [rbp + 0xcf8]
mov ax, word [rax + 2]
mov word [rbp + 0xcf2], ax
cmp ax, 0xff
jbe 0x1401aa761
mov ax, word [rbp + 0xcf2]
movzx eax, ax
mov ecx, eax
xor eax, eax
mov edx, eax
mov r8d, 0xff
sub rsp, 0x20
call fcn.14001a720
mov eax, dword [rbp + 0xd2c]
add rsp, 0x20
mov dword [rbp + 0xcf4], eax
jmp 0x1401abdde
mov eax, dword [rbp + 0xd2c]
mov r8w, word [rbp + 0xcf2]
xor ecx, ecx
mov dl, cl
mov ecx, 0x1f
cmp r8w, 0x2e
mov byte [rbp + 0xce7], dl
mov dword [rbp + 0xce8], ecx
mov dword [rbp + 0xcec], eax
je 0x1401abe24
jmp 0x1401aa8b6
mov rax, qword [rbp + 0xd30]
mov ax, word [rax + 0x5e]
mov word [rbp + 0xce4], ax
mov cx, 0x7591
xor cx, 0x756e
cmp ax, cx
jbe 0x1401aa816
mov ax, word [rbp + 0xce4]
movzx eax, ax
mov ecx, eax
movabs rdx, 0xf853bef80bf9b0fc
movabs rax, 0xf853bef80bf9b0fc
xor rdx, rax
movabs r8, 0xa1a6aeb7efb6f1a5
movabs rax, 0xa1a6aeb7efb6f15a
xor r8, rax
sub rsp, 0x20
call fcn.14001a720
mov eax, dword [rbp + 0xd2c]
add rsp, 0x20
mov dword [rbp + 0xcf4], eax
jmp 0x1401abdde
mov eax, dword [rbp + 0xd2c]
mov r8w, word [rbp + 0xce4]
xor ecx, ecx
mov dl, cl
mov ecx, 0x1f
cmp r8w, 0x2e
mov byte [rbp + 0xce7], dl
mov dword [rbp + 0xce8], ecx
mov dword [rbp + 0xcec], eax
je 0x1401abe24
jmp 0x1401aa8b6
mov eax, dword [rbp + 0xd04]
mov ecx, 0xf5a68c7c
xor ecx, 0xa597383
cmp eax, ecx
jge 0x1401aa8b6
mov ecx, dword [rbp + 0xd04]
mov eax, 0xffffffff
xor eax, 0
and eax, ecx
xor ecx, 0xffffffff
and ecx, 0
sub ecx, eax
shr ecx, 1
xor eax, eax
sub eax, ecx
movsxd rcx, eax
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14001a720
mov eax, dword [rbp + 0xd2c]
add rsp, 0x20
mov dword [rbp + 0xcf4], eax
jmp 0x1401abdde
mov eax, dword [rbp + 0xd04]
mov rcx, qword [rbp + 0xd30]
add rcx, 0x5e
mov qword [rbp + 0xcc8], rcx
mov ecx, 2
cdq
idiv ecx
mov rdx, qword [rbp + 0xcc8]
mov eax, eax
mov r8d, eax
lea rcx, [rbp + 0x1a08]
sub rsp, 0x20
call fcn.1400ebd10
mov rcx, qword [rbp + 0x10b8]
mov r8, qword [rbp + 0x1360]
mov eax, dword [rbp + 0xd2c]
add rsp, 0x20
mov rdx, qword [rbp + 0x1a08]
mov qword [rbp + 0xcd0], rdx
mov rcx, qword [rcx]
mov qword [rbp + 0xcd8], rcx
mov dl, 1
mov ecx, 0x11
cmp byte [r8], 0
mov byte [rbp + 0xce7], dl
mov dword [rbp + 0xce8], ecx
mov dword [rbp + 0xcec], eax
jne 0x1401abe24
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov qword [rbp + 0xcb8], rax
add rax, 0x60
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
mov rcx, qword [rbp + 0xcd8]
mov r8, qword [rbp + 0xcd0]
add rsp, 0x20
mov rax, qword [rbp + 0xcb8]
movabs r9, 0xcccf224a5cc4f9c1
movabs rdx, 0xcccf224a5cc4f9c1
xor r9, rdx
add rcx, 8
lea rdx, [0x14028b9f8]
cmp r8, r9
cmove rcx, rdx
mov qword [rbp + 0xcc0], rcx
mov al, byte [rax + 0x60]
mov cl, 0x3c
xor cl, 0x3c
cmp al, cl
jne 0x1401aab9d
mov rax, qword [rbp + 0xcd0]
mov ecx, 2
cqo
idiv rcx
mov r8, rax
mov rax, qword [rbp + 0xcd0]
movabs rcx, 0x10803ad5d6c4f55
movabs rdx, 0x232a4a9b5fbdda96
xor rcx, rdx
mov rdx, r8
sub rdx, rcx
movabs rcx, 0xda26866a673d451
movabs r9, 0xf25d9799598c2bae
xor rcx, r9
add rdx, rcx
movabs rcx, 0x2222493602d195c3
add rdx, rcx
mov qword [rbp + 0xcb0], rdx
mov rcx, rdx
or rcx, rcx
xor rcx, 0xffffffffffffffff
mov r9, r8
or r9, r9
movabs r10, 0xe8376a5e748ae432
movabs r11, 0x17c895a18b751bcd
xor r10, r11
xor r9, r10
or rcx, r9
movabs r9, 0xaef009d6c2ae986a
movabs r10, 0x510ff6293d516795
xor r9, r10
xor rcx, r9
xor rdx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rdx, r8
or rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0x8e05a2ea15aec2e
movabs r8, 0x8e05a2ea15aec2e
xor rdx, r8
cmp rcx, rdx
setl cl
movabs rdx, 0xa5c1deea183f8575
movabs r8, 0xa5c1deea183f8574
xor rdx, r8
cmp rax, rdx
setg al
and al, cl
test al, 1
jne 0x1401aab07
mov rdx, qword [rbp + 0xcc0]
mov rax, qword [rbp + 0xcb0]
xor ecx, ecx
test rax, rax
mov r8d, ecx
cmovg r8, rax
lea rcx, [rbp + 0x19f8]
sub rsp, 0x20
call fcn.1400eaab0
add rsp, 0x20
jmp 0x1401aab9d
mov eax, dword [0x14027d9f8]
mov ecx, dword [0x14027d9fc]
xor ecx, 0xdff24239
xor eax, ecx
add eax, 0x6cca6e42
xor ecx, ecx
sub ecx, 0x1b04dfe7
add eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x55397bf5
mov edx, 0xffffffff
xor edx, 0x55397bf5
and eax, edx
sub eax, ecx
cmp eax, 0x601bc3a8
ja 0x1401b6053
mov eax, dword [0x14027da00]
and eax, dword [0x14027da04]
mov ecx, 0x1bccd74f
xor ecx, 0x1de4d164
xor edx, edx
div ecx
xor eax, 0xd7ab10f4
and eax, 0xdbadf8bb
mov dword [rbp + 0xcac], eax
sub rsp, 0x20
call fcn.14000f24b
mov eax, dword [rbp + 0xcac]
add rsp, 0x20
cmp eax, 0x41feae87
jbe 0x1401aab4f
jmp 0x1401aab9d
mov eax, dword [rbp + 0xd2c]
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0x10c0]
mov r8, qword [rbp + 0x19f8]
mov qword [rbp + 0xc90], r8
mov rcx, qword [rcx]
mov qword [rbp + 0xc98], rcx
xor ecx, ecx
cmp byte [rdx], 0
mov qword [rbp + 0xca0], rcx
mov dword [rbp + 0xca8], eax
jne 0x1401abb40
mov rcx, qword [rbp + 0xc98]
mov rdx, qword [rbp + 0xc90]
mov rdi, qword [rbp + 0x10d8]
mov rsi, qword [rbp + 0x10d0]
mov rax, qword [rbp + 0x10c8]
mov r8b, 0x56
xor r8b, 0x57
mov byte [rbp + 0x1a18], r8b
mov qword [rbp + 0x19d8], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x19e8]
lea rdx, [rbp + 0x19d8]
sub rsp, 0x20
call fcn.140039831
mov r11, qword [rbp + 0x10e0]
mov r10, qword [rbp + 0xf98]
mov r9, qword [rbp + 0xfa0]
mov r8, qword [rbp + 0x10e8]
mov rdx, qword [rbp + 0xc90]
mov rax, qword [rbp + 0x10f0]
mov rcx, qword [rbp + 0xc98]
add rsp, 0x20
mov rbx, qword [rbp + 0x19e8]
mov rsi, qword [rsi]
mov qword [rdi], rbx
mov qword [r11], rsi
mov qword [rbp + 0x19b8], r10
mov qword [r8], r9
mov qword [rbp + 0x19a8], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x19c8]
lea rdx, [rbp + 0x19b8]
lea r8, [rbp + 0x19a8]
sub rsp, 0x20
call fcn.1400ca2e0
mov r8, qword [rbp + 0x10f8]
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0xc98]
mov eax, dword [rbp + 0xd2c]
add rsp, 0x20
mov r9, qword [rbp + 0x19c8]
mov qword [rbp + 0xc80], r9
mov r8, qword [r8]
mov qword [rbp + 0xc88], r8
mov dl, byte [rdx]
mov r8b, 0x2c
xor r8b, 0x2c
cmp dl, r8b
mov qword [rbp + 0xca0], rcx
mov dword [rbp + 0xca8], eax
jne 0x1401abb40
mov rax, qword [rbp + 0x1110]
mov rcx, qword [rbp + 0x1108]
mov rdx, qword [rbp + 0xc88]
mov r8, qword [rbp + 0x1100]
mov r9, qword [rbp + 0xc80]
mov qword [r8], r9
mov qword [rcx], rdx
mov qword [rax], 0
lea rcx, [rbp + 0x1b30]
lea rdx, [rbp + 0x1a18]
sub rsp, 0x20
call fcn.14010d470
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0xc98]
mov eax, dword [rbp + 0xd2c]
add rsp, 0x20
cmp byte [rdx], 0
mov qword [rbp + 0xca0], rcx
mov dword [rbp + 0xca8], eax
jne 0x1401abb40
mov al, byte [rbp + 0x1b30]
cmp al, 1
mov byte [rbp + 0xc7f], al
jne 0x1401ab191
mov rax, qword [rbp + 0x1118]
mov rcx, qword [rbp + 0xfc8]
mov rcx, qword [rcx]
mov rdx, qword [rcx + 0x48]
mov qword [rbp + 0x1998], rdx
mov rcx, qword [rcx + 0x50]
mov qword [rbp + 0x19a0], rcx
mov rcx, qword [rax]
mov qword [rbp + 0x1988], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1990], rax
lea rcx, [rbp + 0x1998]
lea rdx, [rbp + 0x1988]
sub rsp, 0x20
call fcn.14010d720
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0xc98]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp + 0xd2c]
mov qword [rbp + 0xc70], r8
mov dl, byte [rdx]
mov r8b, 0xc9
xor r8b, 0xc9
cmp dl, r8b
mov qword [rbp + 0xca0], rcx
mov dword [rbp + 0xca8], eax
jne 0x1401abb40
mov eax, dword [0x14027da08]
mov r8d, dword [0x14027da0c]
mov edx, r8d
xor edx, 0xffffffff
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
mov ecx, 0x52ad8705
xor ecx, 0x9613c821
xor eax, ecx
add eax, 0x45a463f0
xor ecx, ecx
sub ecx, 0xa6904222
sub eax, ecx
mov ecx, 0xca1c3f9f
xor ecx, 0x5cb9c4f4
cmp eax, ecx
jb 0x1401b605c
mov r8, qword [rbp + 0xc70]
mov eax, dword [0x14027da10]
or eax, dword [0x14027da14]
mov ecx, eax
xor ecx, 0x78517ef4
xor ecx, 0xffffffff
and ecx, 0x78517ef4
shl ecx, 1
sub ecx, 0x78517ef4
sub eax, ecx
xor eax, 0x29216df
add eax, 0x233602f1
add eax, 0x86d4d276
sub eax, 0x233602f1
movabs rdx, 0x3eaf315962db2b06
mov rcx, r8
sub rcx, rdx
add rcx, 1
movabs rdx, 0x3eaf315962db2b06
add rcx, rdx
mov qword [rbp + 0xc60], rcx
movabs rdx, 0xad5127411868ef78
movabs r9, 0x52aed8bee7971087
xor rdx, r9
mov r9, r8
and r9, rdx
movabs rdx, 0xf3765f3e43877278
movabs r10, 0xf3765f3e4387727a
xor rdx, r10
imul rdx, r9
add r8, 0xffffffffffffffff
sub r8, rdx
mov rdx, rcx
xor rdx, r8
xor rdx, 0xffffffffffffffff
or rcx, r8
and rcx, rdx
movabs rdx, 0xcbda23822d7a6b24
movabs r8, 0xcbda23822d7a6b24
xor rdx, r8
cmp rcx, rdx
setl cl
mov byte [rbp + 0xc6f], cl
cmp eax, 0x49bc5121
jbe 0x1401b605c
mov al, byte [rbp + 0xc6f]
test al, 1
jne 0x1401aaf67
jmp 0x1401aaf93
sub rsp, 0x20
call fcn.14000f24b
mov rcx, qword [rbp + 0xc98]
mov eax, dword [rbp + 0xd2c]
add rsp, 0x20
mov qword [rbp + 0xca0], rcx
mov dword [rbp + 0xca8], eax
jmp 0x1401abb40
mov rax, qword [rbp + 0xfc8]
mov rax, qword [rax]
mov eax, dword [rax + 0x24]
mov dword [rbp + 0xc5c], eax
mov ecx, 0xde4ebd23
xor ecx, 0x21b142dc
cmp eax, ecx
jne 0x1401ab032
mov rax, qword [rbp + 0x1118]
mov rcx, qword [rax]
mov qword [rbp + 0x1968], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1970], rax
lea rcx, [rbp + 0x1978]
lea rdx, [rbp + 0x1968]
sub rsp, 0x20
call fcn.140039831
mov rcx, qword [rbp + 0x1130]
mov rax, qword [rbp + 0x1138]
add rsp, 0x20
mov rdx, qword [rbp + 0x1978]
mov rcx, qword [rcx]
mov qword [rbp + 0x1958], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x1b60]
lea rdx, [rbp + 0x1958]
sub rsp, 0x20
call fcn.1400363f2
add rsp, 0x20
jmp 0x1401ab185
mov eax, dword [0x14027da18]
mov ecx, 0x94c3d9b6
xor ecx, 0x7ba18577
xor eax, ecx
mov ecx, dword [0x14027da1c]
xor ecx, 0x1066cd5e
add eax, ecx
or eax, eax
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x643665ec
mov edx, 0xffffffff
xor edx, 0x643665ec
and ecx, edx
or eax, ecx
mov ecx, 0x75ae71dd
xor ecx, 0x8a518e22
xor eax, ecx
imul eax, eax, 0xd850cdc1
mov ecx, 0xa9e6ce7
xor ecx, 0xa649e311
imul eax, ecx
cmp eax, 0xa1111b72
jb 0x1401b6065
mov rdx, qword [rbp + 0xc60]
mov r8d, dword [rbp + 0xc5c]
mov eax, dword [0x14027da20]
mov r9d, dword [0x14027da24]
mov r10d, eax
and r10d, r9d
mov ecx, 0x47305520
xor ecx, 0x47305522
imul ecx, r10d
add eax, r9d
sub eax, ecx
xor ecx, ecx
sub ecx, 0x6f163440
add eax, ecx
or eax, 0xcde9bdb4
sub eax, 0xa9915a91
mov ecx, 0xa9221f86
xor ecx, 0xb761b24e
movsxd r8, r8d
cmp rdx, r8
setg dl
mov byte [rbp + 0xc5b], dl
cmp eax, ecx
jb 0x1401ab09e
mov al, byte [rbp + 0xc5b]
test al, 1
jne 0x1401ab185
jmp 0x1401ab11c
mov rdx, qword [rbp + 0x1260]
mov rax, qword [rbp + 0x1118]
mov rcx, qword [rax]
mov qword [rdx], rcx
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x1948]
sub rsp, 0x20
call fcn.140039831
mov rcx, qword [rbp + 0x1120]
mov rax, qword [rbp + 0x1128]
mov rdx, qword [rbp + 0x1268]
add rsp, 0x20
mov r8, qword [rbp + 0x1948]
mov rcx, qword [rcx]
mov qword [rdx], r8
mov qword [rax], rcx
lea rcx, [rbp + 0x1b60]
sub rsp, 0x20
call fcn.1400363f2
add rsp, 0x20
mov al, byte [rbp + 0x1b30]
mov byte [rbp + 0xc7f], al
mov eax, dword [rbp + 0xd2c]
mov rcx, qword [rbp + 0xc98]
mov dl, byte [rbp + 0xc7f]
cmp dl, 0
mov qword [rbp + 0xca0], rcx
mov dword [rbp + 0xca8], eax
jne 0x1401abb40
lea rcx, [rbp + 0x1b70]
lea rdx, [rbp + 0x1b30]
sub rsp, 0x20
call fcn.14010d470
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0xc98]
mov eax, dword [rbp + 0xd2c]
add rsp, 0x20
cmp byte [rdx], 0
mov qword [rbp + 0xca0], rcx
mov dword [rbp + 0xca8], eax
jne 0x1401abb40
lea rcx, [rbp + 0x1b30]
sub rsp, 0x20
call fcn.14010e041
mov rcx, qword [rbp + 0xc98]
mov eax, dword [rbp + 0xd2c]
add rsp, 0x20
cmp byte [rbp + 0x1b70], 0
mov qword [rbp + 0xca0], rcx
mov dword [rbp + 0xca8], eax
jne 0x1401abb40
mov eax, dword [0x14027da28]
and eax, dword [0x14027da2c]
mov ecx, 0x5ca50403
xor ecx, 0x9f55db46
xor eax, ecx
mov ecx, 0x8365faa6
xor edx, edx
div ecx
sub eax, 0x8ee78695
add eax, 0x44f2526f
add eax, 0x8ee78695
cmp eax, 0x5b36b58f
je 0x1401b606e
mov rcx, qword [rbp + 0xfc8]
mov eax, dword [0x14027da30]
xor edx, edx
div dword [0x14027da34]
mov edx, eax
mov eax, 0xc9f89e36
xor eax, 0xe8c2bf9f
and edx, eax
mov eax, edx
or eax, 0xb135db6c
xor eax, 0xffffffff
xor edx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xb135db6c
and edx, r8d
or eax, edx
xor eax, 0xffffffff
mov r8d, 0x2e46f392
xor r8d, 0x24dd93b6
xor edx, edx
div r8d
mov rcx, qword [rcx]
mov rcx, qword [rcx + 0x58]
mov qword [rbp + 0xc50], rcx
cmp rcx, 0
setg cl
mov byte [rbp + 0xc5a], cl
cmp eax, 0x23d091cd
ja 0x1401ab276
mov eax, dword [rbp + 0xd2c]
mov rcx, qword [rbp + 0xc98]
mov r8b, byte [rbp + 0xc5a]
xor edx, edx
test r8b, 1
mov qword [rbp + 0xc48], rdx
mov qword [rbp + 0xca0], rcx
mov dword [rbp + 0xca8], eax
jne 0x1401ab32c
jmp 0x1401abb40
mov rcx, qword [rbp + 0xfc8]
mov rax, qword [rbp + 0xc48]
mov qword [rbp + 0xc30], rax
mov rcx, qword [rcx]
mov qword [rbp + 0xc38], rcx
mov rcx, qword [rcx + 0x58]
mov qword [rbp + 0xc40], rcx
cmp rax, rcx
jl 0x1401ab39d
mov rcx, qword [rbp + 0xc30]
mov rdx, qword [rbp + 0xc40]
add rdx, 0xffffffffffffffff
sub rsp, 0x20
call fcn.1400292ad
mov rcx, qword [rbp + 0xc98]
mov eax, dword [rbp + 0xd2c]
add rsp, 0x20
mov qword [rbp + 0xca0], rcx
mov dword [rbp + 0xca8], eax
jmp 0x1401abb40
mov rax, qword [rbp + 0x1140]
mov rdx, qword [rbp + 0xc30]
mov rcx, qword [rbp + 0xc38]
mov rcx, qword [rcx + 0x60]
add rcx, 8
shl rdx, 3
add rcx, rdx
mov qword [rbp + 0xc20], rcx
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400cf5c9
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0xc98]
add rsp, 0x20
mov r8b, al
mov eax, dword [rbp + 0xd2c]
mov byte [rbp + 0xc2f], r8b
mov dl, byte [rdx]
mov r8b, 0xcd
xor r8b, 0xcd
cmp dl, r8b
mov qword [rbp + 0xca0], rcx
mov dword [rbp + 0xca8], eax
jne 0x1401abb40
mov al, byte [rbp + 0xc2f]
test al, 1
jne 0x1401ab428
jmp 0x1401abaca
mov rax, qword [rbp + 0x1140]
mov rcx, qword [rbp + 0xc20]
mov rcx, qword [rcx]
mov qword [rbp + 0xc10], rcx
movsxd rcx, dword [rcx + 0x10]
mov rax, qword [rax]
mov qword [rbp + 0xc18], rax
cmp rax, rcx
jl 0x1401abaca
mov rax, qword [rbp + 0xc18]
mov rcx, qword [rbp + 0xc10]
movsxd rcx, dword [rcx + 0x14]
cmp rax, rcx
jg 0x1401abaca
mov rcx, qword [rbp + 0x1270]
mov rax, qword [rbp + 0x1148]
mov rdx, qword [rax]
mov qword [rbp + 0x1938], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1940], rax
lea rdx, [rbp + 0x1938]
sub rsp, 0x20
call fcn.140039831
mov r8, qword [rbp + 0x1270]
mov rcx, qword [rbp + 0x1150]
mov rax, qword [rbp + 0xc20]
mov rdx, qword [rbp + 0x1278]
add rsp, 0x20
mov r8, qword [r8]
mov qword [rbp + 0xbf8], r8
mov rcx, qword [rcx]
mov qword [rbp + 0xc00], rcx
mov rax, qword [rax]
mov rcx, qword [rax]
mov qword [rdx], rcx
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x1928]
sub rsp, 0x20
call fcn.140039831
mov rcx, qword [rbp + 0x1158]
mov r11, qword [rbp + 0xbf8]
mov r10, qword [rbp + 0xc00]
mov r9, qword [rbp + 0x1160]
mov rax, qword [rbp + 0x1168]
mov rdx, qword [rbp + 0x1280]
add rsp, 0x20
mov r8, qword [rbp + 0x1928]
mov rcx, qword [rcx]
mov qword [rbp + 0x1918], r11
mov qword [r9], r10
mov qword [rdx], r8
mov qword [rax], rcx
lea rcx, [rbp + 0x1918]
sub rsp, 0x20
call fcn.1400b6d90
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0xc98]
add rsp, 0x20
mov r8b, al
mov eax, dword [rbp + 0xd2c]
mov byte [rbp + 0xc0f], r8b
cmp byte [rdx], 0
mov qword [rbp + 0xca0], rcx
mov dword [rbp + 0xca8], eax
jne 0x1401abb40
mov al, byte [rbp + 0xc0f]
test al, 1
jne 0x1401ab59d
jmp 0x1401abaca
mov rax, qword [rbp + 0xfc8]
mov rax, qword [rax]
mov qword [rbp + 0xbf0], rax
cmp rax, 0
je 0x1401ab665
mov rax, qword [rbp + 0xbf0]
movabs rcx, 0x4481ec847cb270a6
movabs rdx, 0xbb7e137b834d8f56
xor rcx, rdx
add rax, rcx
mov qword [rbp + 0xbe0], rax
mov rcx, qword [rax]
movabs rdx, 0x89e9c24aa7443918
movabs rax, 0x89e9c24aa7443918
xor rdx, rax
movabs rax, 0xc8a541c5c3525421
movabs r8, 0xc8a541c5c3525431
xor rax, r8
sub rdx, rax
mov rax, rcx
sub rax, rdx
mov qword [rbp + 0xbe8], rax
xor rcx, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jl 0x1401ab648
mov rax, qword [rbp + 0xbe0]
mov rcx, qword [rbp + 0xbe8]
mov qword [rax], rcx
jmp 0x1401ab665
sub rsp, 0x20
call fcn.14000f24b
mov rax, qword [rbp + 0x1360]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401aba01
mov eax, dword [0x14027da38]
xor eax, 0x101fe73d
xor edx, edx
div dword [0x14027da3c]
mov ecx, eax
mov edx, 0xa6a9caca
xor edx, 0x6aaf7fd6
mov eax, 0x3bb83608
xor eax, 0xc447c9f7
xor edx, eax
mov eax, ecx
and eax, edx
mov r8d, 0x26bc164a
xor r8d, 0xeabaa356
mov edx, ecx
xor edx, r8d
add ecx, edx
sub ecx, eax
mov eax, ecx
and eax, 0x53e6541d
xor ecx, 0x53e6541d
or eax, ecx
add eax, 0x587ec12c
cmp eax, 0x4068a8b2
ja 0x1401b6077
mov r11d, dword [0x14027da40]
mov eax, dword [0x14027da44]
mov ecx, 0xeca1873
xor ecx, 0xfce5c398
xor eax, ecx
sub r11d, eax
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xc9c62dd1
mov edx, 0xffffffff
xor edx, 0xd227d7cb
mov eax, ecx
and eax, 0xd227d7cb
and r11d, edx
mov r9d, r8d
and r9d, 0xd227d7cb
mov r10d, edx
and r10d, 0xc9c62dd1
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0xd227d7cb
and ecx, edx
or eax, ecx
mov ecx, 0xc1723aa2
xor ecx, 0x3e8dc55d
mov edx, eax
xor edx, ecx
and edx, 0x7be37774
mov r8d, 0xffffffff
xor r8d, 0x7be37774
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x7be37774
or eax, 0x7be37774
imul eax, edx
add eax, ecx
sub eax, 0x82ee28fd
mov dword [rbp + 0xbdc], eax
mov eax, 0x4a04313f
xor eax, 0xe80f0ad8
mov dword [rbp + 0xbd8], eax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
mov ecx, dword [rbp + 0xbd8]
add rsp, 0x20
mov eax, dword [rbp + 0xbdc]
cmp eax, ecx
je 0x1401b6077
xor eax, eax
mov qword [rbp + 0xbd0], rax
jmp 0x1401ab7cb
mov rax, qword [rbp + 0xbd0]
xorps xmm0, xmm0
movups xmmword [rbp + rax + 0x18e8], xmm0
add rax, 0x10
movabs rcx, 0x900eab6207358ffe
movabs rdx, 0x900eab6207358fce
xor rcx, rdx
cmp rax, rcx
mov qword [rbp + 0xbd0], rax
jne 0x1401ab7cb
lea rcx, [rbp + 0x18e8]
lea rdx, [rbp + 0x1b70]
mov r8d, 0x30
sub rsp, 0x20
call sub.msvcrt.dll_memcpy
add rsp, 0x20
lea rcx, [rbp + 0x1b70]
sub rsp, 0x20
call fcn.14010e041
mov rax, qword [rbp + 0x1170]
mov rcx, qword [rbp + 0x1230]
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp + 0xbc0], rax
mov rcx, qword [rcx]
mov qword [rbp + 0xbc8], rcx
cmp rax, 0
je 0x1401ab8a1
mov rax, qword [rbp + 0xbc8]
mov r9, qword [rbp + 0xbc0]
mov rdx, qword [rbp + 0xbf0]
mov rcx, qword [rbp + 0x1238]
lea r8, [rbp + 0x18e8]
sub rsp, 0x20
call rax
add rsp, 0x20
mov byte [rbp + 0xbbf], al
jmp 0x1401ab8cd
mov rax, qword [rbp + 0xbc8]
mov rdx, qword [rbp + 0xbf0]
mov rcx, qword [rbp + 0x1238]
lea r8, [rbp + 0x18e8]
sub rsp, 0x20
call rax
add rsp, 0x20
mov byte [rbp + 0xbbf], al
mov al, byte [rbp + 0xbbf]
mov byte [rbp + 0xbbe], al
mov eax, dword [0x14027da48]
mov r8d, dword [0x14027da4c]
mov ecx, 0x7f2437db
xor ecx, 0x80dbc824
mov edx, r8d
xor edx, ecx
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
or eax, 0xe25c17b1
xor eax, 0xeb6cd463
mov ecx, eax
and ecx, 0x1e09141e
shl ecx, 1
mov edx, 0x96e42d9b
xor edx, 0x88ed3985
add eax, edx
sub eax, ecx
mov ecx, 0x3022d841
xor ecx, 0xe0d6bf6d
cmp eax, ecx
je 0x1401b6080
mov dl, byte [rbp + 0xbbe]
mov rcx, qword [rbp + 0x1360]
mov eax, dword [0x14027da50]
mov r8d, dword [0x14027da54]
sub eax, r8d
and eax, 0x82ecf9f3
add eax, 0xba1059ed
mov cl, byte [rcx]
test cl, cl
sete cl
and cl, dl
mov byte [rbp + 0xbbd], cl
cmp eax, 0x3d30a720
jbe 0x1401ab93a
mov al, byte [rbp + 0xbbd]
test al, 1
jne 0x1401ab98e
jmp 0x1401abaab
mov eax, dword [rbp + 0xd2c]
movsxd rcx, eax
mov rax, rcx
inc rax
mov qword [rbp + 0xbb0], rax
mov rdx, rcx
not rdx
and rax, rdx
test rax, rax
sets al
add rcx, 0xffffffff80000001
movabs rdx, 0xffffffff00000000
sub rcx, rdx
setb cl
or al, cl
test al, 1
jne 0x1401ab9f4
mov rcx, qword [rbp + 0xc98]
mov rax, qword [rbp + 0xbb0]
mov qword [rbp + 0xca0], rcx
mov dword [rbp + 0xca8], eax
jmp 0x1401abb40
sub rsp, 0x20
call fcn.14000f24b
add rsp, 0x20
mov eax, dword [0x14027da58]
xor eax, dword [0x14027da5c]
mov ecx, 0x41e05a89
xor ecx, 0x137b26f9
or eax, ecx
xor ecx, ecx
sub ecx, 0xe440bbd2
sub eax, ecx
imul eax, eax, 0x685e97be
cmp eax, 0xbb1de93e
je 0x1401b6089
mov ecx, dword [0x14027da60]
mov edx, dword [0x14027da64]
mov eax, 0x7a3d7df9
xor eax, 0x85c28206
mov r8d, ecx
xor r8d, eax
mov eax, edx
and eax, r8d
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
sub eax, 0xca93935f
mov ecx, 0xffd215c3
xor ecx, 0x3068d31e
imul eax, ecx
mov ecx, 0xa9f87c18
xor edx, edx
div ecx
mov ecx, 0xeae4e477
xor ecx, 0xfb6ccae
cmp eax, ecx
je 0x1401b6089
mov eax, dword [rbp + 0xd2c]
mov rcx, qword [rbp + 0xc98]
mov qword [rbp + 0xca0], rcx
mov dword [rbp + 0xca8], eax
jmp 0x1401abb40
mov eax, dword [rbp + 0xd2c]
mov rcx, qword [rbp + 0xc98]
mov qword [rbp + 0xca0], rcx
mov dword [rbp + 0xca8], eax
jmp 0x1401abb40
mov eax, dword [rbp + 0xd2c]
mov rcx, qword [rbp + 0xc98]
mov r8, qword [rbp + 0xc50]
mov rdx, qword [rbp + 0xc30]
movabs r9, 0xdb8703ff0fad3709
movabs r10, 0xdb8703ff0fad3708
xor r9, r10
movabs r10, 0xc1a7a3ea186ad27f
movabs r11, 0x3e585c15e7952d80
xor r10, r11
xor r9, r10
xor r10d, r10d
sub r10, 1
sub r9, r10
sub rdx, r9
cmp rdx, r8
mov qword [rbp + 0xc48], rdx
mov qword [rbp + 0xca0], rcx
mov dword [rbp + 0xca8], eax
jl 0x1401ab32c
mov rax, qword [rbp + 0xcd8]
mov rcx, qword [rbp + 0xca0]
mov edx, dword [rbp + 0xca8]
mov dword [rbp + 0xba4], edx
mov qword [rbp + 0xba8], rcx
cmp rax, 0
je 0x1401abc9a
mov ecx, dword [0x14027da68]
and ecx, dword [0x14027da6c]
mov edx, 0xe03640ac
xor edx, 0x1fc9bf53
mov eax, ecx
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x49cc2211
xor ecx, 0x3b516b20
mov edx, 0x527fb43a
xor edx, 0x20e2fd0b
and ecx, edx
mov edx, 0xc4eaeb73
xor edx, 0x3b15148c
xor ecx, edx
and eax, ecx
xor eax, 0xffffffff
or eax, 0x32593431
mov ecx, 0x48161d9e
xor edx, edx
div ecx
cmp eax, 0x913aae49
jae 0x1401b6092
mov rcx, qword [rbp + 0xcd8]
mov eax, dword [0x14027da70]
mov r8d, dword [0x14027da74]
xor r8d, 0x83270984
mov edx, r8d
and edx, eax
mov r9d, 0x7ce8dac9
xor r9d, 0x83172536
xor edx, r9d
add eax, r8d
mov r8d, 0x9bebd7ee
xor r8d, 0x9bebd7ef
add eax, r8d
add eax, edx
mov r8d, 0x8ac2baf1
xor edx, edx
div r8d
sub eax, 0x35209f71
add eax, 0x54ab53c9
mov edx, 0x9053a439
xor edx, 0xa5733b48
add eax, edx
imul eax, eax, 0x44d61be5
mov rdx, qword [rcx]
mov r8, 0xffffffffffffffff
movabs rcx, 0x4000000000000000
xor r8, rcx
mov rcx, rdx
xor rcx, r8
and rcx, rdx
cmp rcx, 0
sete cl
mov byte [rbp + 0xba3], cl
cmp eax, 0xf7d09fac
je 0x1401abbce
mov al, byte [rbp + 0xba3]
test al, 1
jne 0x1401abc86
jmp 0x1401abc9a
mov rcx, qword [rbp + 0xcd8]
sub rsp, 0x20
call fcn.14001d1d6
add rsp, 0x20
mov eax, dword [rbp + 0xba4]
mov rcx, qword [rbp + 0xba8]
cmp rcx, 0
mov dword [rbp + 0xcf4], eax
je 0x1401abdde
mov eax, dword [0x14027da78]
mov edx, dword [0x14027da7c]
mov ecx, 0xe3c86aa0
xor ecx, 0xd4b1ea30
xor edx, ecx
mov ecx, eax
and ecx, edx
shl ecx, 1
add eax, edx
sub eax, ecx
and eax, 0x3fef757f
xor eax, 0x232ae5c9
mov ecx, eax
xor ecx, 0x99031384
mov edx, 0xffffffff
xor edx, 0x99031384
and eax, edx
shl eax, 1
sub eax, ecx
cmp eax, 0x25c5469d
jb 0x1401b609b
mov eax, dword [0x14027da80]
xor edx, edx
div dword [0x14027da84]
mov rdx, qword [rbp + 0xba8]
mov ecx, 0xffffffff
xor ecx, 0x433980bc
add eax, ecx
add eax, 1
xor ecx, ecx
sub ecx, 0x9366999d
add eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x7c5913fd
mov ecx, eax
and ecx, r8d
mov r9d, 0x1b7c2e01
xor r9d, 0x67253dfc
mov r8d, eax
xor r8d, r9d
add eax, r8d
sub eax, ecx
movabs rcx, 0x4000000000000000
and rcx, qword [rdx]
movabs rdx, 0x91c09b0136041bb2
movabs r8, 0x91c09b0136041bb2
xor rdx, r8
cmp rcx, rdx
sete cl
mov byte [rbp + 0xba2], cl
cmp eax, 0x5f20e9a2
je 0x1401b609b
mov eax, dword [rbp + 0xba4]
mov cl, byte [rbp + 0xba2]
test cl, 1
mov dword [rbp + 0xcf4], eax
jne 0x1401abdbe
jmp 0x1401abdde
mov rcx, qword [rbp + 0xba8]
sub rsp, 0x20
call fcn.14001d1d6
mov eax, dword [rbp + 0xba4]
add rsp, 0x20
mov dword [rbp + 0xcf4], eax
mov rcx, qword [rbp + 0x1360]
mov eax, dword [rbp + 0xcf4]
mov dword [rbp + 0xb9c], eax
mov dl, byte [rcx]
mov ecx, 0x11
cmp dl, 0
mov byte [rbp + 0xce7], dl
mov dword [rbp + 0xce8], ecx
mov dword [rbp + 0xcec], eax
jne 0x1401abe24
mov eax, dword [rbp + 0xb9c]
mov dword [rbp + 0xb98], eax
jmp 0x1401abe90
mov dl, byte [rbp + 0xce7]
mov ecx, dword [rbp + 0xce8]
mov eax, dword [rbp + 0xcec]
mov byte [rbp + 0xb8f], dl
mov dword [rbp + 0xb90], ecx
mov dword [rbp + 0xb94], eax
jmp 0x1401ad4dc
mov eax, dword [rbp + 0xd2c]
mov dl, byte [rbp + 0xd19]
mov r8b, byte [rbp + 0xd1a]
mov ecx, 0x11
test r8b, 1
mov r8d, eax
mov dword [rbp + 0xb98], r8d
mov byte [rbp + 0xb8f], dl
mov dword [rbp + 0xb90], ecx
mov dword [rbp + 0xb94], eax
jne 0x1401abe90
jmp 0x1401ad4dc
mov rax, qword [rbp + 0xd08]
mov ecx, dword [rbp + 0xb98]
mov dword [rbp + 0xb88], ecx
mov ecx, dword [rax]
not ecx
and ecx, 0x10
sub rsp, 0x20
call fcn.1400e7c9c
add rsp, 0x20
mov cl, al
mov rax, qword [rbp + 0x1360]
mov al, byte [rax]
mov byte [rbp + 0xb8d], al
test al, al
sete al
mov byte [rbp + 0xb8e], al
and al, cl
test al, 1
jne 0x1401abee2
jmp 0x1401ad4a0
mov rax, qword [rbp + 0xd20]
mov eax, dword [rax]
mov dword [rbp + 0xb84], eax
mov ecx, 0xd33fc71f
xor ecx, 0x2cc038e0
cmp eax, ecx
jge 0x1401abf44
mov eax, dword [rbp + 0xb84]
xor ecx, ecx
sub ecx, eax
shr ecx, 1
xor eax, eax
sub eax, ecx
movsxd rcx, eax
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14001a720
mov eax, dword [rbp + 0xb88]
add rsp, 0x20
mov dword [rbp + 0xb80], eax
jmp 0x1401ad15b
mov eax, dword [rbp + 0xb84]
mov rcx, qword [rbp + 0xd30]
add rcx, 0x5e
mov qword [rbp + 0xb60], rcx
mov ecx, 2
cdq
idiv ecx
mov rdx, qword [rbp + 0xb60]
mov eax, eax
mov r8d, eax
lea rcx, [rbp + 0x18d8]
sub rsp, 0x20
call fcn.1400ebd10
mov rdx, qword [rbp + 0x1178]
mov rcx, qword [rbp + 0x1360]
mov eax, dword [rbp + 0xb88]
add rsp, 0x20
mov r8, qword [rbp + 0x18d8]
mov qword [rbp + 0xb68], r8
mov rdx, qword [rdx]
mov qword [rbp + 0xb70], rdx
cmp byte [rcx], 0
mov dword [rbp + 0xb7c], eax
jne 0x1401ad246
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov qword [rbp + 0xb50], rax
add rax, 0x60
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
mov rcx, qword [rbp + 0xb70]
mov r8, qword [rbp + 0xb68]
add rsp, 0x20
mov rax, qword [rbp + 0xb50]
add rcx, 8
lea rdx, [0x14028b9f8]
cmp r8, 0
cmove rcx, rdx
mov qword [rbp + 0xb58], rcx
cmp byte [rax + 0x60], 0
jne 0x1401ac0eb
mov rax, qword [rbp + 0xb68]
movabs rcx, 0x994ca98eb805423c
movabs rdx, 0x994ca98eb805423e
xor rcx, rdx
cqo
idiv rcx
mov rdx, rax
mov rax, qword [rbp + 0xb68]
mov rcx, rdx
add rcx, 0xffffffffffffffff
mov qword [rbp + 0xb48], rcx
xor rcx, rdx
movabs rdx, 0x1e17da5763b50838
movabs r8, 0x1e17da5763b50838
xor rdx, r8
cmp rcx, rdx
setl dl
cmp rax, 1
setg cl
mov al, cl
and al, dl
xor al, 0xff
and cl, dl
xor cl, 0xff
xor al, 0xff
xor cl, 0xff
or al, cl
test al, 1
jne 0x1401ac0de
mov rdx, qword [rbp + 0xb58]
mov rax, qword [rbp + 0xb48]
xor ecx, ecx
test rax, rax
mov r8d, ecx
cmovg r8, rax
lea rcx, [rbp + 0x18c8]
sub rsp, 0x20
call fcn.1400eaab0
add rsp, 0x20
jmp 0x1401ac0eb
sub rsp, 0x20
call fcn.14000f24b
add rsp, 0x20
mov eax, dword [rbp + 0xb88]
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0x1180]
mov r8, qword [rbp + 0x18c8]
mov qword [rbp + 0xb28], r8
mov rcx, qword [rcx]
mov qword [rbp + 0xb30], rcx
xor ecx, ecx
cmp byte [rdx], 0
mov qword [rbp + 0xb38], rcx
mov dword [rbp + 0xb44], eax
jne 0x1401ad052
mov rcx, qword [rbp + 0xb30]
mov r8, qword [rbp + 0xb28]
mov rsi, qword [rbp + 0xf98]
mov rdi, qword [rbp + 0x11a0]
mov r14, qword [rbp + 0x1198]
mov rbx, qword [rbp + 0x1190]
mov rdx, qword [rbp + 0x1290]
mov rax, qword [rbp + 0x1188]
mov r9, qword [rbp + 0x1288]
mov byte [r9], 0
mov qword [rdx], r8
mov qword [rax], rcx
lea rcx, [rbp + 0x18b8]
sub rsp, 0x20
call fcn.140039831
mov r11, qword [rbp + 0xfa0]
mov r10, qword [rbp + 0x11a8]
mov r9, qword [rbp + 0xb28]
mov rax, qword [rbp + 0x11b0]
mov rdx, qword [rbp + 0x12a0]
mov rcx, qword [rbp + 0x1298]
mov r8, qword [rbp + 0xb30]
add rsp, 0x20
mov r15, qword [rbp + 0x18b8]
mov rbx, qword [rbx]
mov qword [r14], r15
mov qword [rdi], rbx
mov qword [rdx], rsi
mov qword [r10], r11
mov qword [rbp + 0x18a8], r9
mov qword [rax], r8
lea r8, [rbp + 0x18a8]
sub rsp, 0x20
call fcn.1400ca2e0
mov r9, qword [rbp + 0x1298]
mov r8, qword [rbp + 0x11b8]
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0xb30]
mov eax, dword [rbp + 0xb88]
add rsp, 0x20
mov r9, qword [r9]
mov qword [rbp + 0xb18], r9
mov r8, qword [r8]
mov qword [rbp + 0xb20], r8
mov dl, byte [rdx]
mov r8b, 0xc0
xor r8b, 0xc0
cmp dl, r8b
mov qword [rbp + 0xb38], rcx
mov dword [rbp + 0xb44], eax
jne 0x1401ad052
mov rdx, qword [rbp + 0x1288]
mov rax, qword [rbp + 0x11d0]
mov rcx, qword [rbp + 0xd30]
mov r8, qword [rbp + 0x11c8]
mov r9, qword [rbp + 0xb20]
mov r10, qword [rbp + 0x11c0]
mov r11, qword [rbp + 0xb18]
mov qword [r10], r11
mov qword [r8], r9
mov rcx, qword [rcx + 0x28]
mov qword [rax], rcx
lea rcx, [rbp + 0x1b30]
sub rsp, 0x20
call fcn.14010d470
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0xb30]
mov eax, dword [rbp + 0xb88]
add rsp, 0x20
cmp byte [rdx], 0
mov qword [rbp + 0xb38], rcx
mov dword [rbp + 0xb44], eax
jne 0x1401ad052
mov eax, dword [0x14027da88]
imul eax, dword [0x14027da8c]
add eax, 0xe4eb8950
add eax, 0x310a2851
sub eax, 0xe4eb8950
mov ecx, 0xda16283c
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
or eax, 0x29193169
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x29193169
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
cmp eax, 0x4814f00
jb 0x1401b60a4
mov eax, dword [0x14027da90]
mov ecx, 0xc5808e54
xor ecx, 0xea405ef3
xor eax, ecx
xor edx, edx
div dword [0x14027da94]
mov r8d, eax
add r8d, 0xb368821
or r8d, 0x739c93ec
mov eax, r8d
xor eax, 0xffffffff
and eax, 0xb51f06f6
mov edx, 0xffffffff
xor edx, 0xb51f06f6
and r8d, edx
mov ecx, 0x8e089105
xor ecx, 0xdc81f0c8
mov r9d, 0x16b3f8ca
xor r9d, 0xe94c0735
xor ecx, r9d
mov r9d, 0xd7157164
xor r9d, 0x620a7792
and ecx, r9d
and edx, 0x528961cd
or eax, r8d
or ecx, edx
xor eax, ecx
mov cl, byte [rbp + 0x1b30]
mov byte [rbp + 0xb16], cl
cmp cl, 1
sete cl
mov byte [rbp + 0xb17], cl
cmp eax, 0x39c39a01
ja 0x1401b60a4
mov al, byte [rbp + 0xb16]
mov cl, byte [rbp + 0xb17]
test cl, 1
mov byte [rbp + 0xb15], al
jne 0x1401ac3d3
jmp 0x1401ac659
mov rcx, qword [rbp + 0x12a8]
mov rax, qword [rbp + 0x1118]
mov rdx, qword [rbp + 0xfc8]
mov rdx, qword [rdx]
mov r8, qword [rdx + 0x48]
mov qword [rcx], r8
mov rdx, qword [rdx + 0x50]
mov qword [rcx + 8], rdx
mov rdx, qword [rax]
mov qword [rbp + 0x1898], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x18a0], rax
lea rdx, [rbp + 0x1898]
sub rsp, 0x20
call fcn.14010d720
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0xb30]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp + 0xb88]
mov qword [rbp + 0xb08], r8
mov dl, byte [rdx]
mov r8b, 0x6d
xor r8b, 0x6d
cmp dl, r8b
mov qword [rbp + 0xb38], rcx
mov dword [rbp + 0xb44], eax
jne 0x1401ad052
mov rcx, qword [rbp + 0xb08]
movabs rdx, 0xca8ef8f221498c26
movabs rax, 0xca8ef8f221498c27
xor rdx, rax
mov rax, rcx
add rax, rdx
mov qword [rbp + 0xb00], rax
mov rdx, rcx
xor rdx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
movabs r8, 0xfb818d8374d28da0
movabs r9, 0x47e727c8b2d725f
xor r8, r9
and r8, rdx
movabs rdx, 0xe6fe55bf5f0c54b9
movabs r9, 0xe6fe55bf5f0c54bb
xor rdx, r9
imul rdx, r8
movabs r8, 0x86fc8bc8a4967703
movabs r9, 0x790374375b6988fc
xor r8, r9
sub rdx, r8
sub rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x1401ac521
sub rsp, 0x20
call fcn.14000f24b
mov rcx, qword [rbp + 0xb30]
mov eax, dword [rbp + 0xb88]
add rsp, 0x20
mov qword [rbp + 0xb38], rcx
mov dword [rbp + 0xb44], eax
jmp 0x1401ad052
mov rax, qword [rbp + 0xfc8]
mov rax, qword [rax]
mov eax, dword [rax + 0x24]
mov dword [rbp + 0xafc], eax
mov ecx, 0xaffe1878
xor ecx, 0x5001e787
cmp eax, ecx
jne 0x1401ac5c0
mov rax, qword [rbp + 0x1118]
mov rcx, qword [rax]
mov qword [rbp + 0x1878], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1880], rax
lea rcx, [rbp + 0x1888]
lea rdx, [rbp + 0x1878]
sub rsp, 0x20
call fcn.140039831
mov rcx, qword [rbp + 0x11e8]
mov rax, qword [rbp + 0x11f0]
add rsp, 0x20
mov rdx, qword [rbp + 0x1888]
mov rcx, qword [rcx]
mov qword [rbp + 0x1868], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x1b60]
lea rdx, [rbp + 0x1868]
sub rsp, 0x20
call fcn.1400363f2
add rsp, 0x20
jmp 0x1401ac64d
mov rax, qword [rbp + 0xb00]
mov ecx, dword [rbp + 0xafc]
movsxd rcx, ecx
cmp rax, rcx
jg 0x1401ac64d
mov rax, qword [rbp + 0x1118]
mov rcx, qword [rax]
mov qword [rbp + 0x1848], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1850], rax
lea rcx, [rbp + 0x1858]
lea rdx, [rbp + 0x1848]
sub rsp, 0x20
call fcn.140039831
mov rcx, qword [rbp + 0x11d8]
mov rax, qword [rbp + 0x11e0]
add rsp, 0x20
mov rdx, qword [rbp + 0x1858]
mov rcx, qword [rcx]
mov qword [rbp + 0x1838], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x1b60]
lea rdx, [rbp + 0x1838]
sub rsp, 0x20
call fcn.1400363f2
add rsp, 0x20
mov al, byte [rbp + 0x1b30]
mov byte [rbp + 0xb15], al
mov eax, dword [rbp + 0xb88]
mov rcx, qword [rbp + 0xb30]
mov dl, byte [rbp + 0xb15]
cmp dl, 0
mov qword [rbp + 0xb38], rcx
mov dword [rbp + 0xb44], eax
jne 0x1401ad052
lea rcx, [rbp + 0x1b70]
lea rdx, [rbp + 0x1b30]
sub rsp, 0x20
call fcn.14010d470
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0xb30]
mov eax, dword [rbp + 0xb88]
add rsp, 0x20
cmp byte [rdx], 0
mov qword [rbp + 0xb38], rcx
mov dword [rbp + 0xb44], eax
jne 0x1401ad052
lea rcx, [rbp + 0x1b30]
sub rsp, 0x20
call fcn.14010e041
mov rcx, qword [rbp + 0xb30]
mov eax, dword [rbp + 0xb88]
add rsp, 0x20
cmp byte [rbp + 0x1b70], 0
mov qword [rbp + 0xb38], rcx
mov dword [rbp + 0xb44], eax
jne 0x1401ad052
mov eax, dword [rbp + 0xb88]
mov rcx, qword [rbp + 0xb30]
mov rdx, qword [rbp + 0xfc8]
mov rdx, qword [rdx]
mov r8, qword [rdx + 0x58]
mov qword [rbp + 0xae8], r8
xor edx, edx
cmp r8, 0
mov qword [rbp + 0xaf0], rdx
mov qword [rbp + 0xb38], rcx
mov dword [rbp + 0xb44], eax
jle 0x1401ad052
mov rcx, qword [rbp + 0xfc8]
mov rax, qword [rbp + 0xaf0]
mov qword [rbp + 0xad0], rax
mov rcx, qword [rcx]
mov qword [rbp + 0xad8], rcx
mov rcx, qword [rcx + 0x58]
mov qword [rbp + 0xae0], rcx
cmp rax, rcx
jl 0x1401ac7b5
mov rcx, qword [rbp + 0xad0]
mov rdx, qword [rbp + 0xae0]
add rdx, 0xffffffffffffffff
sub rsp, 0x20
call fcn.1400292ad
mov rcx, qword [rbp + 0xb30]
mov eax, dword [rbp + 0xb88]
add rsp, 0x20
mov qword [rbp + 0xb38], rcx
mov dword [rbp + 0xb44], eax
jmp 0x1401ad052
mov rax, qword [rbp + 0x1140]
mov rdx, qword [rbp + 0xad0]
mov rcx, qword [rbp + 0xad8]
mov rcx, qword [rcx + 0x60]
add rcx, 8
shl rdx, 3
add rcx, rdx
mov qword [rbp + 0xac0], rcx
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400cf5c9
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0xb30]
add rsp, 0x20
mov r8b, al
mov eax, dword [rbp + 0xb88]
mov byte [rbp + 0xacf], r8b
mov dl, byte [rdx]
mov r8b, 0x69
xor r8b, 0x69
cmp dl, r8b
mov qword [rbp + 0xb38], rcx
mov dword [rbp + 0xb44], eax
jne 0x1401ad052
mov al, byte [rbp + 0xacf]
test al, 1
jne 0x1401ac840
jmp 0x1401ad016
mov rax, qword [rbp + 0x1140]
mov rcx, qword [rbp + 0xac0]
mov rcx, qword [rcx]
mov qword [rbp + 0xab0], rcx
movsxd rcx, dword [rcx + 0x10]
mov rax, qword [rax]
mov qword [rbp + 0xab8], rax
cmp rax, rcx
jl 0x1401ad016
mov rax, qword [rbp + 0xab8]
mov rcx, qword [rbp + 0xab0]
movsxd rcx, dword [rcx + 0x14]
cmp rax, rcx
jg 0x1401ad016
mov rax, qword [rbp + 0x1148]
mov rcx, qword [rax]
mov qword [rbp + 0x1818], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1820], rax
lea rcx, [rbp + 0x1828]
lea rdx, [rbp + 0x1818]
sub rsp, 0x20
call fcn.140039831
mov rcx, qword [rbp + 0x11f8]
mov rax, qword [rbp + 0xac0]
mov rdx, qword [rbp + 0x12b0]
add rsp, 0x20
mov r8, qword [rbp + 0x1828]
mov qword [rbp + 0xa98], r8
mov rcx, qword [rcx]
mov qword [rbp + 0xaa0], rcx
mov rax, qword [rax]
mov rcx, qword [rax]
mov qword [rdx], rcx
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x1808]
sub rsp, 0x20
call fcn.140039831
mov rdx, qword [rbp + 0x1200]
mov r11, qword [rbp + 0xa98]
mov r10, qword [rbp + 0xaa0]
mov r9, qword [rbp + 0x1208]
mov rax, qword [rbp + 0x1210]
mov rcx, qword [rbp + 0x12b8]
add rsp, 0x20
mov r8, qword [rbp + 0x1808]
mov rdx, qword [rdx]
mov qword [rcx], r11
mov qword [r9], r10
mov qword [rbp + 0x17f8], r8
mov qword [rax], rdx
lea rdx, [rbp + 0x17f8]
sub rsp, 0x20
call fcn.1400b6d90
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0xb30]
add rsp, 0x20
mov r8b, al
mov eax, dword [rbp + 0xb88]
mov byte [rbp + 0xaaf], r8b
cmp byte [rdx], 0
mov qword [rbp + 0xb38], rcx
mov dword [rbp + 0xb44], eax
jne 0x1401ad052
mov al, byte [rbp + 0xaaf]
test al, 1
jne 0x1401ac9b2
jmp 0x1401ad016
mov rax, qword [rbp + 0xfc8]
mov rax, qword [rax]
mov qword [rbp + 0xa90], rax
cmp rax, 0
je 0x1401acb9a
mov rax, qword [rbp + 0xa90]
movabs rcx, 0xea252c9603978a8c
movabs rdx, 0xea252c9603978a8c
xor rcx, rdx
sub rcx, rax
xor eax, eax
sub rax, 0xfffffffffffffff0
add rcx, rax
movabs rax, 0xdaaca5236b0241f0
movabs rdx, 0xdaaca5236b0241f0
xor rax, rdx
sub rax, rcx
mov qword [rbp + 0xa80], rax
mov rdx, qword [rax]
movabs rcx, 0x197b44c9253ac67d
movabs rax, 0x197b44c9253ac66d
xor rcx, rax
mov rax, rdx
add rax, rcx
mov qword [rbp + 0xa88], rax
movabs r8, 0x19d8664ae4c084b0
movabs rcx, 0xe62799b51b3f7b4f
xor r8, rcx
mov rcx, rdx
xor rcx, r8
xor rcx, 0xffffffffffffffff
and rcx, 0xffffffffffffffff
shl rcx, 1
sub rcx, 0xffffffffffffffff
sub rdx, rcx
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
or rax, rdx
add rax, rcx
cmp rax, 0
jl 0x1401acb7d
mov eax, dword [0x14027da98]
xor eax, 0xf50c92c6
xor edx, edx
div dword [0x14027da9c]
mov ecx, eax
xor ecx, 0x8f2048c0
mov edx, 0xffffffff
xor edx, 0x8f2048c0
and eax, edx
shl eax, 1
sub eax, ecx
mov ecx, 0x8187ca1b
xor edx, edx
div ecx
mov ecx, 0xb9743747
xor ecx, 0x6c34f52b
xor edx, edx
div ecx
mov ecx, 0xc4c38bee
xor ecx, 0xe27daa18
cmp eax, ecx
je 0x1401b60ad
mov rcx, qword [rbp + 0xa80]
mov eax, dword [0x14027daa0]
mov r8d, dword [0x14027daa4]
mov edx, eax
or edx, r8d
mov r9d, 0xed768bc5
xor r9d, 0x1289743a
xor edx, r9d
or eax, r8d
xor eax, 0xffffffff
or edx, eax
xor edx, 0xffffffff
mov eax, edx
and eax, 0x31970d10
mov r8d, 0x21db13e4
xor r8d, 0xde24ec1b
xor eax, r8d
mov r8d, 0xae7ef10d
xor r8d, 0x51810ef2
xor edx, r8d
mov r8d, 0xffffffff
xor r8d, 0x31970d10
or edx, r8d
and eax, edx
xor eax, 0xffffffff
mov r8d, 0x5257ab63
xor edx, edx
div r8d
mov rdx, qword [rbp + 0xa88]
imul eax, eax, 0xe64d24a5
mov qword [rcx], rdx
cmp eax, 0x15af6e61
ja 0x1401acae2
jmp 0x1401acb9a
sub rsp, 0x20
call fcn.14000f24b
mov rax, qword [rbp + 0x1360]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401acfd8
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0xa78], rax
mov rax, qword [rbp + 0xa78]
mov qword [rbp + 0xa70], rax
mov eax, dword [0x14027daa8]
mov ecx, dword [0x14027daac]
xor ecx, 0x7cf7bffb
xor ecx, 0xffffffff
add eax, ecx
add eax, 1
mov edx, 0x5d6a97b4
xor edx, 0x5e55bb9c
mov ecx, eax
and ecx, edx
xor eax, 0x33f2c28
or ecx, eax
mov eax, ecx
or eax, eax
mov edx, 0x8cdf8543
xor edx, 0x73207abc
xor eax, edx
mov edx, 0x1c55236b
or edx, 0x1c55236b
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
or ecx, 0x1c55236b
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
imul eax, eax, 0xc0d5fffe
cmp eax, 0x9436fb03
jae 0x1401b60b6
mov rcx, qword [rbp + 0xa70]
mov eax, dword [0x14027dab0]
mov edx, dword [0x14027dab4]
and eax, edx
imul rax, rax, 0x6520e273
shr rax, 0x3e
imul eax, eax, 0x6112edcb
or eax, 0xde93d446
xorps xmm0, xmm0
movups xmmword [rbp + rcx + 0x17c8], xmm0
movabs rdx, 0x9713be088f27b8ed
movabs r8, 0x9713be088f27b8fd
xor rdx, r8
movabs r8, 0x5f3d4ba9d3575164
movabs r9, 0xa0c2b4562ca8ae9b
xor r8, r9
xor rdx, r8
xor r8d, r8d
sub r8, 1
sub rdx, r8
sub rcx, rdx
mov qword [rbp + 0xa60], rcx
cmp rcx, 0x30
sete cl
mov byte [rbp + 0xa6f], cl
cmp eax, 0x63c58c40
jb 0x1401acc3a
mov rax, qword [rbp + 0xa60]
mov cl, byte [rbp + 0xa6f]
test cl, 1
mov qword [rbp + 0xa78], rax
jne 0x1401accef
jmp 0x1401acbb9
lea rcx, [rbp + 0x17c8]
lea rdx, [rbp + 0x1b70]
mov r8d, 0x30
sub rsp, 0x20
call sub.msvcrt.dll_memcpy
add rsp, 0x20
lea rcx, [rbp + 0x1b70]
sub rsp, 0x20
call fcn.14010e041
mov rax, qword [rbp + 0x1170]
mov rcx, qword [rbp + 0x1230]
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp + 0xa50], rax
mov rcx, qword [rcx]
mov qword [rbp + 0xa58], rcx
cmp rax, 0
je 0x1401acd88
mov rax, qword [rbp + 0xa58]
mov r9, qword [rbp + 0xa50]
mov rdx, qword [rbp + 0xa90]
mov rcx, qword [rbp + 0x1238]
lea r8, [rbp + 0x17c8]
sub rsp, 0x20
call rax
add rsp, 0x20
mov byte [rbp + 0xa4f], al
jmp 0x1401acdb4
mov rax, qword [rbp + 0xa58]
mov rdx, qword [rbp + 0xa90]
mov rcx, qword [rbp + 0x1238]
lea r8, [rbp + 0x17c8]
sub rsp, 0x20
call rax
add rsp, 0x20
mov byte [rbp + 0xa4f], al
mov rax, qword [rbp + 0x1360]
mov cl, byte [rbp + 0xa4f]
mov al, byte [rax]
test al, al
sete al
and al, cl
test al, 1
jne 0x1401acdd7
jmp 0x1401acff7
mov ecx, dword [0x14027dab8]
mov edx, dword [0x14027dabc]
mov eax, ecx
xor eax, 0xffffffff
and eax, edx
xor edx, 0xffffffff
and ecx, edx
sub ecx, eax
xor eax, eax
sub eax, 0xb68b50bc
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x7850bf86
mov edx, 0xffffffff
xor edx, 0x7850bf86
and ecx, edx
or eax, ecx
xor ecx, ecx
sub ecx, 0xd7885ad
add eax, ecx
mov ecx, 0x36bb4e5f
xor ecx, 0x702023c5
cmp eax, ecx
jbe 0x1401b60bf
mov eax, dword [0x14027dac0]
mov ecx, dword [0x14027dac4]
xor ecx, 0x5d53b75d
xor edx, edx
div ecx
mov edx, dword [rbp + 0xb88]
mov ecx, eax
xor ecx, 0x1243100
xor eax, 0x10410000
or eax, 0xcd34f3a6
or ecx, 0x5e538884
and eax, ecx
not eax
or eax, 0x20880459
mov ecx, 0x22e1180d
movsxd r8, edx
mov r9, r8
inc r9
mov qword [rbp + 0xa40], r9
mov r10, r8
not r10
mov rdx, r9
not rdx
or rdx, r8
and r9, r10
not r9
and rdx, r9
xor rdx, 0xffffffffffffffff
sets dl
add r8, 0xffffffff80000001
movabs r9, 0xffffffff00000000
sub r8, r9
setb r8b
or dl, r8b
mov byte [rbp + 0xa4e], dl
cmp eax, ecx
jb 0x1401ace30
mov al, byte [rbp + 0xa4e]
test al, 1
jne 0x1401acfcb
jmp 0x1401acedd
mov eax, dword [0x14027dac8]
mov ecx, dword [0x14027dacc]
xor ecx, 0xc360228d
mov edx, 0x671f7d94
xor edx, 0xd38a84a3
add eax, edx
add eax, ecx
mov ecx, 0x8abef874
xor ecx, 0x3e2b0143
sub eax, ecx
mov ecx, 0xf2fd54f3
xor ecx, 0x1489a2ef
xor edx, edx
div ecx
sub eax, 0x5ea6ba05
mov ecx, 0x152e5214
xor ecx, 0x301332a1
or eax, ecx
cmp eax, 0xde334bf4
ja 0x1401b60c8
mov rdx, qword [rbp + 0xa40]
mov ecx, dword [0x14027dad0]
mov eax, 0xf3335d6c
xor eax, 0xd8e1c82d
xor ecx, eax
mov r8d, dword [0x14027dad4]
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
and eax, r8d
xor eax, 0xffffffff
and r8d, r8d
xor r8d, 0xffffffff
and ecx, r8d
mov r8d, 0xc5a5580a
xor r8d, 0x3a5aa7f5
xor ecx, r8d
and eax, ecx
xor eax, 0xffffffff
xor eax, 0x198a225c
imul eax, eax, 0xe5dbbef8
add eax, 0xeee5c57d
mov ecx, 0x1b155369
xor ecx, 0xbc86c309
mov dword [rbp + 0xa3c], edx
cmp eax, ecx
je 0x1401b60c8
mov eax, dword [rbp + 0xa3c]
mov rcx, qword [rbp + 0xb30]
mov qword [rbp + 0xb38], rcx
mov dword [rbp + 0xb44], eax
jmp 0x1401ad052
sub rsp, 0x20
call fcn.14000f24b
add rsp, 0x20
mov eax, dword [rbp + 0xb88]
mov rcx, qword [rbp + 0xb30]
mov qword [rbp + 0xb38], rcx
mov dword [rbp + 0xb44], eax
jmp 0x1401ad052
mov eax, dword [rbp + 0xb88]
mov rcx, qword [rbp + 0xb30]
mov qword [rbp + 0xb38], rcx
mov dword [rbp + 0xb44], eax
jmp 0x1401ad052
mov eax, dword [rbp + 0xb88]
mov rcx, qword [rbp + 0xb30]
mov r8, qword [rbp + 0xae8]
mov rdx, qword [rbp + 0xad0]
add rdx, 1
cmp rdx, r8
mov qword [rbp + 0xaf0], rdx
mov qword [rbp + 0xb38], rcx
mov dword [rbp + 0xb44], eax
jl 0x1401ac744
mov rax, qword [rbp + 0xb70]
mov rcx, qword [rbp + 0xb38]
mov edx, dword [rbp + 0xb44]
mov dword [rbp + 0xa2c], edx
mov qword [rbp + 0xa30], rcx
cmp rax, 0
je 0x1401ad0bf
mov rax, qword [rbp + 0xb70]
mov rax, qword [rax]
movabs rcx, 0xa77f5961c3c28004
movabs rdx, 0xe77f5961c3c28004
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x1401ad0bf
mov rcx, qword [rbp + 0xb70]
sub rsp, 0x20
call fcn.14001d1d6
add rsp, 0x20
mov eax, dword [rbp + 0xa2c]
mov rcx, qword [rbp + 0xa30]
cmp rcx, 0
mov dword [rbp + 0xb80], eax
je 0x1401ad15b
mov eax, dword [rbp + 0xa2c]
mov rcx, qword [rbp + 0xa30]
mov rcx, qword [rcx]
or rcx, rcx
xor rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
movabs r8, 0x4000000000000000
or rdx, r8
movabs r8, 0x4c39a2d62d870d1d
movabs r9, 0xb3c65d29d278f2e2
xor r8, r9
xor rdx, r8
or rcx, rdx
xor rcx, 0xffffffffffffffff
cmp rcx, 0
mov dword [rbp + 0xb80], eax
jne 0x1401ad15b
mov rcx, qword [rbp + 0xa30]
sub rsp, 0x20
call fcn.14001d1d6
mov eax, dword [rbp + 0xa2c]
add rsp, 0x20
mov dword [rbp + 0xb80], eax
mov eax, dword [rbp + 0xb80]
mov dword [rbp + 0xa28], eax
mov ecx, dword [0x14027dad8]
mov edx, dword [0x14027dadc]
mov eax, ecx
and eax, edx
or ecx, edx
add eax, ecx
add eax, 0xff6d1c63
xor ecx, ecx
sub ecx, 0xb00b4480
add eax, ecx
mov ecx, 0xad61a1fc
xor ecx, 0xead60dc4
or eax, ecx
cmp eax, 0x77bd68b8
ja 0x1401b60d1
mov rdx, qword [rbp + 0x1360]
mov eax, dword [0x14027dae0]
add eax, dword [0x14027dae4]
imul eax, eax, 0xf771b672
mov ecx, 0x31719d42
xor ecx, 0xf9543e0c
add eax, ecx
mov ecx, 0xcc7a6182
xor ecx, 0xf1c7bab5
sub eax, ecx
sub eax, 0xc825a34e
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xde6a2079
mov r8d, 0x98456dca
xor r8d, 0x462f4db3
mov r9d, 0x1a919678
xor r9d, 0xe56e6987
xor r8d, r9d
and eax, r8d
sub eax, ecx
mov ecx, 0xaa8fc0d4
xor ecx, 0x1cb00cff
cmp byte [rdx], 0
sete dl
mov byte [rbp + 0xa27], dl
cmp eax, ecx
jb 0x1401b60d1
mov eax, dword [rbp + 0xa28]
mov cl, byte [rbp + 0xa27]
test cl, 1
mov dword [rbp + 0xb7c], eax
jne 0x1401ad364
jmp 0x1401ad246
mov eax, dword [rbp + 0xb7c]
mov dword [rbp + 0xa20], eax
mov eax, dword [0x14027dae8]
mov ecx, 0xdc876b93
xor ecx, 0x533a9596
xor eax, ecx
imul eax, dword [0x14027daec]
mov ecx, 0x97d2813b
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0x59998923
xor edx, 0x66b631fe
mov r8d, 0x7830ad
xor r8d, 0xff87cf52
xor edx, r8d
or eax, edx
mov edx, 0xba2fad2f
xor edx, 0x850015f2
and ecx, edx
mov edx, 0xa9a75230
xor edx, 0x5658adcf
xor ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xfb893016
xor ecx, 0x1d715951
and eax, ecx
cmp eax, 0x8d26b110
jae 0x1401b60da
mov eax, dword [0x14027daf0]
xor edx, edx
div dword [0x14027daf4]
mov r8d, 0xffffffff
xor r8d, 0xde2014dc
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov r8d, 0xe19dc66a
xor r8d, 0x3fbdd2b6
mov edx, eax
and edx, r8d
mov r8d, 0xfc25f1f1
xor r8d, 0x2205e52d
or eax, r8d
imul eax, edx
add eax, ecx
imul eax, eax, 0x65f5eb7a
sub eax, 0x868604f3
sub eax, 0x441d98da
add eax, 0x868604f3
cmp eax, 0x8e9951d3
jbe 0x1401b60da
mov rax, qword [rbp + 0xdb8]
mov ecx, dword [rbp + 0xa20]
mov dword [rbp + 0xd8c], ecx
mov qword [rbp + 0xd90], rax
jmp case.0x1401ad876.17
mov ecx, dword [0x14027daf8]
mov edx, dword [0x14027dafc]
xor edx, 0x12022601
mov eax, ecx
xor eax, 0xffffffff
mov r8d, edx
xor r8d, 0xffffffff
or eax, r8d
xor ecx, 0xffffffff
xor edx, 0xffffffff
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
sub eax, 0x49afa037
mov ecx, eax
and ecx, ecx
xor ecx, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0x286d1ed2
xor edx, 0x66508e2d
mov r8d, 0x64b89ff0
xor r8d, 0x9b47600f
xor edx, r8d
or ecx, edx
mov edx, 0xffffffff
xor edx, 0x4e3d90ff
mov r8d, 0xeb1643e5
xor r8d, 0xa52bd31a
mov r9d, 0x2792e035
xor r9d, 0xd86d1fca
xor r8d, r9d
or edx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
or eax, edx
and ecx, eax
xor ecx, 0xffffffff
mov eax, ecx
and eax, 0xf7ae5607
mov edx, 0xf48f78c6
xor edx, 0x3212ec1
xor ecx, edx
or eax, ecx
cmp eax, 0x9d116b7c
jbe 0x1401b60e3
mov eax, dword [0x14027db00]
mov r8d, dword [0x14027db04]
xor r8d, 0xea1f224
mov ecx, 0x68e99bc1
xor ecx, 0x9716643e
mov r9d, r8d
xor r9d, ecx
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
mov r9d, 0x794b8d33
xor r9d, 0x86b472cc
xor ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
and eax, 0x31bcb57c
mov ecx, 0x2b0cdaf7
xor edx, edx
div ecx
or eax, 0x91a6111a
mov ecx, 0x1536c399
xor ecx, 0x7afbf24c
cmp eax, ecx
jbe 0x1401b60e3
mov eax, dword [rbp + 0xa28]
mov dword [rbp + 0xd1c], eax
jmp 0x1401ad51c
mov eax, dword [rbp + 0xb88]
mov dl, byte [rbp + 0xb8d]
mov r8b, byte [rbp + 0xb8e]
mov ecx, 0x11
test r8b, 1
mov byte [rbp + 0xb8f], dl
mov dword [rbp + 0xb90], ecx
mov ecx, eax
mov dword [rbp + 0xb94], ecx
mov dword [rbp + 0xd1c], eax
jne 0x1401ad51c
mov rcx, qword [rbp + 0xd30]
mov r8b, byte [rbp + 0xb8f]
mov eax, dword [rbp + 0xb90]
mov edx, dword [rbp + 0xb94]
cmp eax, 0x1f
mov r8d, edx
mov dword [rbp + 0xd1c], r8d
mov dword [rbp + 0xa0c], edx
mov qword [rbp + 0xa10], rcx
mov dword [rbp + 0xa1c], eax
jne 0x1401ad7d5
mov rcx, qword [rbp + 0xd30]
mov eax, dword [rbp + 0xd1c]
mov dword [rbp + 0xa04], eax
mov edx, dword [rcx]
mov dword [rbp + 0xa08], edx
xor ecx, ecx
cmp edx, 1
mov byte [rbp + 0xd9f], cl
mov dword [rbp + 0xd98], eax
jl case.0x1401ad876.26
mov eax, dword [0x14027db08]
xor edx, edx
div dword [0x14027db0c]
mov ecx, eax
or ecx, 0x6a335b6
xor ecx, 0xf3442112
mov eax, ecx
or eax, 0x6ebdd471
xor eax, 0xffffffff
mov edx, 0xc035b48d
xor edx, 0xae8860fc
or ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
cmp eax, 0x74eb8c5b
je 0x1401b60ec
mov eax, dword [0x14027db10]
imul eax, dword [0x14027db14]
imul ecx, eax, 0x81ecc540
mov eax, 0x2b09505c
xor eax, 0x2c8506e5
or ecx, eax
mov eax, ecx
or eax, eax
mov edx, 0x666bdbbc
xor edx, 0x99942443
xor eax, edx
mov edx, 0xffffffff
xor edx, 0x62dcfb8b
mov r8d, 0x121032d7
xor r8d, 0x70ccc95c
mov r9d, 0xecc59272
xor r9d, 0x133a6d8d
xor r8d, r9d
and edx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
or ecx, 0x62dcfb8b
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov dword [rbp + 0x9f4], eax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov rcx, rax
mov eax, dword [rbp + 0x9f4]
mov rdx, rcx
add rdx, 0x60
mov qword [rbp + 0x9f8], rdx
cmp byte [rcx + 0x60], 0
sete cl
mov byte [rbp + 0xa03], cl
cmp eax, 0x4dfc65ae
je 0x1401ad597
mov al, byte [rbp + 0xa03]
test al, 1
jne 0x1401ad666
jmp 0x1401ad78a
mov eax, dword [0x14027db18]
mov ecx, dword [0x14027db1c]
mov edx, 0x5d6be70b
xor edx, 0x39727b5
xor ecx, edx
and eax, ecx
mov ecx, 0x570cbca2
xor edx, edx
div ecx
xor ecx, ecx
sub ecx, 0xbefb1a9d
add eax, ecx
mov ecx, 0x3313e4bd
xor ecx, 0xbb1f61fe
or eax, ecx
cmp eax, 0xd2f0d87e
jae 0x1401b60f5
mov eax, dword [0x14027db20]
xor eax, 0x97529e58
add eax, dword [0x14027db24]
mov edx, eax
and edx, 0x18e20f4c
mov ecx, 0x7601affa
xor ecx, 0x7601aff8
imul ecx, edx
add eax, 0x18e20f4c
sub eax, ecx
add eax, 0xc349afc1
mov edx, 0xffffffff
xor edx, 0xc4c04d93
mov ecx, eax
and ecx, edx
mov r8d, 0x93d89436
xor r8d, 0x5718d9a5
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
mov dword [rbp + 0x9ec], eax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
mov rcx, qword [rbp + 0x9f8]
add rsp, 0x20
mov eax, dword [rbp + 0x9ec]
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x9f3], cl
cmp eax, 0x13cb4f39
je 0x1401b60f5
mov al, byte [rbp + 0x9f3]
test al, 1
jne 0x1401ad757
jmp 0x1401ad78a
mov rcx, qword [rbp + 0xd30]
mov eax, dword [rbp + 0xa08]
mov eax, eax
movabs rdx, 0x8666fea059401e6c
add rax, rdx
add rax, rcx
movabs rcx, 0x8666fea059401e6c
sub rax, rcx
mov qword [rbp + 0x9e0], rax
mov rax, qword [rbp + 0xdb8]
mov ecx, dword [rbp + 0xa04]
mov r9, qword [rbp + 0x1360]
mov r8, qword [rbp + 0x9e0]
xor edx, edx
cmp byte [r9], 0
mov r9d, ecx
mov dword [rbp + 0xa0c], r9d
mov qword [rbp + 0xa10], r8
mov dword [rbp + 0xa1c], edx
mov dword [rbp + 0xd8c], ecx
mov qword [rbp + 0xd90], rax
jne case.0x1401ad876.17
mov ecx, dword [rbp + 0xa0c]
mov rdx, qword [rbp + 0xa10]
mov eax, dword [rbp + 0xa1c]
mov dword [rbp + 0x9c4], eax
mov qword [rbp + 0x9c8], rdx
mov dword [rbp + 0x9d4], ecx
mov ecx, eax
mov qword [rbp + 0x9d8], rcx
sub eax, 0x1b
ja case.0x1401ad876.1
mov rcx, qword [rbp + 0xdb8]
mov edx, dword [rbp + 0x9d4]
mov r8, qword [rbp + 0x9c8]
mov r9b, byte [rbp + 0xd83]
mov rax, qword [rbp + 0x9d8]
lea r10, [0x1401b628c]
movsxd rax, dword [r10 + rax*4]
add rax, r10
mov byte [rbp + 0xd9f], r9b
mov r9d, edx
mov dword [rbp + 0xd98], r9d
mov qword [rbp + 0xd38], r8
mov r8d, edx
mov dword [rbp + 0xd44], r8d
mov r8d, edx
mov dword [rbp + 0x9c0], r8d
mov dword [rbp + 0xd8c], edx
mov qword [rbp + 0xd90], rcx
jmp rax
mov rax, qword [rbp + 0xdb8]
mov ecx, dword [rbp + 0xd84]
mov edx, dword [rbp + 0xd70]
cmp edx, 0x80000006
mov edx, ecx
mov dword [rbp + 0x9c0], edx
mov dword [rbp + 0xd8c], ecx
mov qword [rbp + 0xd90], rax
je case.0x1401ad876.17
mov eax, dword [rbp + 0x9c0]
mov dword [rbp + 0x9bc], eax
mov ecx, dword [0x14027db28]
xor ecx, 0x2817eb7d
xor ecx, dword [0x14027db2c]
mov eax, 0x41133448
xor eax, 0x2669a7c4
sub ecx, eax
sub ecx, 0x8b2e14f7
add ecx, 0x677a938c
and ecx, ecx
xor ecx, 0xffffffff
mov eax, 0x637f0f2e
and eax, 0x637f0f2e
xor eax, 0xffffffff
and ecx, eax
mov eax, 0x3dfafb00
xor eax, 0xc20504ff
xor ecx, eax
mov edx, 0x8f510736
xor edx, 0xa29e2bb1
mov eax, ecx
and eax, edx
or ecx, 0x2dcf2c87
add eax, ecx
cmp eax, 0xa23db1cd
je 0x1401b60fe
mov edx, dword [0x14027db30]
mov ecx, dword [0x14027db34]
mov eax, edx
xor eax, 0xffffffff
xor edx, 0xffffffff
or eax, edx
and ecx, ecx
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov edx, 0xffffffff
xor edx, 0xf17c6954
mov ecx, eax
and ecx, edx
mov r8d, 0x68f175d
xor r8d, 0xf7f37e09
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
mov ecx, 0x783783f3
xor ecx, 0x7f70a789
or eax, ecx
sub eax, 0xc748b41
mov ecx, 0x4b9bd10d
xor ecx, 0x8f0483c7
sub eax, ecx
add eax, 0xc748b41
mov dword [rbp + 0x9b8], eax
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.140029060
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x14028d000]
mov qword [rcx], rax
lea rax, [0x14028b908]
mov qword [rcx + 0x10], rax
mov rax, qword [0x14028b978]
mov qword [rcx + 0x18], rax
mov rax, qword [0x14028b980]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x14028b908]
lea r8, [0x14028b919]
lea r9, [0x14028b921]
sub rsp, 0x30
mov qword [rsp + 0x20], 0xffffffffba93d67b
call fcn.140028fa8
mov eax, dword [rbp + 0x9b8]
add rsp, 0x30
cmp eax, 0xa35ed379
ja 0x1401ad924
mov rax, qword [rbp + 0xdb8]
mov ecx, dword [rbp + 0x9bc]
mov dword [rbp + 0xd8c], ecx
mov qword [rbp + 0xd90], rax
jmp case.0x1401ad876.17
mov eax, dword [rbp + 0xd8c]
mov rcx, qword [rbp + 0xd90]
mov dword [rbp + 0x9b4], eax
sub rsp, 0x20
call fcn.14003b4d4
mov rcx, qword [rbp + 0x1360]
mov eax, dword [rbp + 0x9b4]
add rsp, 0x20
mov cl, byte [rcx]
mov byte [rbp + 0xddf], cl
mov dword [rbp + 0xde0], eax
mov rax, qword [rbp + 0x1360]
mov cl, byte [rbp + 0xddf]
mov edx, dword [rbp + 0xde0]
mov dword [rbp + 0x9a0], edx
mov byte [rbp + 0x9a7], cl
mov byte [rax], 0
mov rax, qword [rbp + 0x1ae8]
mov qword [rbp + 0x9a8], rax
cmp rax, 0
jle 0x1401adbb0
mov eax, dword [0x14027db38]
xor eax, 0x570afa3a
sub eax, dword [0x14027db3c]
add eax, 0xfed7e2e9
sub eax, 0xc3e25092
xor eax, 0xd228d9a0
cmp eax, 0x20493b8f
jb 0x1401b6107
mov rcx, qword [rbp + 0x9a8]
mov eax, dword [0x14027db40]
mov r9d, dword [0x14027db44]
mov r10d, r9d
xor r10d, 0xffffffff
mov r8d, eax
and r8d, r10d
mov edx, eax
or edx, r10d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, edx
imul edx, eax, 0x688b87ce
mov eax, edx
and eax, 0x1e40dfe3
xor edx, 0x1e40dfe3
or eax, edx
mov r8d, 0x1e8ac905
xor edx, edx
div r8d
mov dword [rbp + 0x998], eax
mov eax, 0xe626f844
xor eax, 0x46e8dab3
mov dword [rbp + 0x994], eax
mov rax, qword [0x14028d038]
sub rsp, 0x20
call qword [rax]
mov rdx, qword [rbp + 0x1360]
mov ecx, dword [rbp + 0x994]
add rsp, 0x20
mov eax, dword [rbp + 0x998]
cmp byte [rdx], 0
sete dl
mov byte [rbp + 0x99f], dl
cmp eax, ecx
ja 0x1401b6107
mov eax, dword [rbp + 0x9a0]
mov dl, byte [rbp + 0x99f]
mov cl, 1
test dl, 1
mov byte [rbp + 0xdfb], cl
mov dword [rbp + 0xdfc], eax
jne 0x1401adbb0
jmp 0x1401adc64
mov eax, dword [rbp + 0x9a0]
mov cl, byte [rbp + 0x9a7]
mov byte [rbp + 0xdfb], cl
mov dword [rbp + 0xdfc], eax
jmp 0x1401adc64
mov rax, qword [rbp + 0xe80]
mov qword [rbp + 0x988], rax
sub rsp, 0x20
call fcn.14000f24b
mov rdx, qword [rbp + 0x988]
mov rcx, qword [rbp + 0xeb8]
mov rax, qword [rbp + 0xf48]
add rsp, 0x20
mov qword [rbp + 0xf70], rdx
mov qword [rbp + 0xf78], rcx
mov qword [rbp + 0xf80], rax
mov r8d, dword [rbp + 0xf94]
mov r10, qword [rbp + 0x1360]
mov rax, qword [rbp + 0xf70]
mov rcx, qword [rbp + 0xf78]
mov rdx, qword [rbp + 0xf80]
mov r9b, byte [r10]
mov byte [r10], 0
mov byte [rbp + 0x96b], r9b
mov dword [rbp + 0x96c], r8d
mov qword [rbp + 0x970], rdx
mov qword [rbp + 0x978], rcx
mov qword [rbp + 0x980], rax
jmp 0x1401addc2
mov rax, qword [rbp + 0xe68]
mov rcx, qword [rbp + 0xeb8]
mov rdx, qword [rbp + 0xf48]
mov r10, qword [rbp + 0xe08]
mov r11, qword [rbp + 0x1360]
mov r9b, byte [rbp + 0xdfb]
mov r8d, dword [rbp + 0xdfc]
mov dword [rbp + 0x964], r8d
mov byte [rbp + 0x96a], r9b
mov byte [r11], 0
cmp r10, 0
mov byte [rbp + 0x96b], r9b
mov dword [rbp + 0x96c], r8d
mov qword [rbp + 0x970], rdx
mov qword [rbp + 0x978], rcx
mov qword [rbp + 0x980], rax
je 0x1401addc2
mov rax, qword [rbp + 0xe68]
mov rcx, qword [rbp + 0xeb8]
mov rdx, qword [rbp + 0xf48]
mov r8d, dword [rbp + 0x964]
mov r9b, byte [rbp + 0x96a]
mov r10, qword [rbp + 0xe08]
mov r10, qword [r10]
movabs rsi, 0x4000000000000000
mov r11, r10
xor r11, rsi
xor r11, 0xffffffffffffffff
movabs rsi, 0x4000000000000000
or r10, rsi
and r10, r11
movabs r11, 0x18e585f91ac79046
movabs rsi, 0x18e585f91ac79046
xor r11, rsi
cmp r10, r11
mov byte [rbp + 0x96b], r9b
mov dword [rbp + 0x96c], r8d
mov qword [rbp + 0x970], rdx
mov qword [rbp + 0x978], rcx
mov qword [rbp + 0x980], rax
jne 0x1401addc2
mov rcx, qword [rbp + 0xe08]
sub rsp, 0x20
call fcn.14001d1d6
mov r9b, byte [rbp + 0x96a]
mov r8d, dword [rbp + 0x964]
mov rdx, qword [rbp + 0xf48]
mov rcx, qword [rbp + 0xeb8]
mov rax, qword [rbp + 0xe68]
add rsp, 0x20
mov byte [rbp + 0x96b], r9b
mov dword [rbp + 0x96c], r8d
mov qword [rbp + 0x970], rdx
mov qword [rbp + 0x978], rcx
mov qword [rbp + 0x980], rax
mov cl, byte [rbp + 0x96b]
mov edx, dword [rbp + 0x96c]
mov r8, qword [rbp + 0x970]
mov r9, qword [rbp + 0x978]
mov rax, qword [rbp + 0x980]
mov qword [rbp + 0x948], rax
mov qword [rbp + 0x950], r9
mov qword [rbp + 0x958], r8
mov dword [rbp + 0xfbc], edx
mov byte [rbp + 0x962], cl
cmp cl, 0
sete cl
mov byte [rbp + 0x963], cl
cmp rax, 0
je 0x1401ae03e
mov rax, qword [rbp + 0x948]
mov rax, qword [rax]
movabs rdx, 0xb64f683350fcb65a
movabs rcx, 0xf64f683350fcb65a
xor rdx, rcx
mov rcx, rax
xor rcx, rdx
movabs rdx, 0xc58d0efab8187906
movabs r8, 0x3a72f10547e786f9
xor rdx, r8
xor rcx, rdx
movabs rdx, 0x4000000000000000
or rax, rdx
and rax, rcx
movabs rcx, 0xb61f4743720c8a23
movabs rdx, 0xb61f4743720c8a23
xor rcx, rdx
cmp rax, rcx
jne 0x1401ae03e
mov r11d, dword [0x14027db48]
mov ecx, dword [0x14027db4c]
or r11d, r11d
xor r11d, 0xffffffff
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
or r11d, eax
xor r11d, 0xffffffff
mov eax, 0x9168086b
xor eax, 0x6e97f794
mov ecx, r11d
xor ecx, eax
mov r8d, 0xffffffff
xor r8d, 0xc427c13c
mov edx, 0xffffffff
xor edx, 0xdf62867e
mov eax, ecx
and eax, 0xdf62867e
and r11d, edx
mov r9d, r8d
and r9d, 0xdf62867e
mov r10d, edx
and r10d, 0xc427c13c
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
mov r8d, 0x397b10c
xor r8d, 0xfc684ef3
xor ecx, r8d
or edx, 0xdf62867e
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xeda35fc1
mov ecx, 0xffffffff
xor ecx, 0xe15941eb
or eax, edx
or ecx, 0xe15941eb
mov edx, 0xde94c261
xor edx, 0x216b3d9e
xor eax, edx
and eax, ecx
or eax, 0x14d27622
cmp eax, 0x7c5a31b3
jb 0x1401b6110
mov rcx, qword [rbp + 0x948]
mov eax, dword [0x14027db50]
or eax, dword [0x14027db54]
mov edx, eax
or edx, edx
xor edx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xe0b7b013
mov r9d, 0xbc4f4aaa
xor r9d, 0x5cf8fab9
mov r10d, 0x767da5c5
xor r10d, 0x89825a3a
xor r9d, r10d
and r8d, r9d
xor edx, 0xffffffff
xor r8d, 0xffffffff
and edx, r8d
or eax, 0xe0b7b013
mov r8d, 0x1fd8e916
xor r8d, 0xe02716e9
xor eax, r8d
or edx, eax
xor edx, 0xffffffff
sub edx, 0x77c42828
sub edx, 0x2c58e0e
add edx, 0x77c42828
mov r8d, 0xb557d682
xor r8d, 0xe744d6ae
mov eax, edx
and eax, r8d
xor eax, 0xffffffff
mov r8d, 0x6d9f74ee
xor r8d, 0x3f8c74c2
and edx, r8d
xor edx, 0xffffffff
mov r8d, 0x3489091d
xor r8d, 0xcb76f6e2
xor eax, r8d
xor edx, 0xffffffff
or eax, edx
mov dword [rbp + 0x944], eax
sub rsp, 0x20
call fcn.14001d1d6
mov eax, dword [rbp + 0x944]
add rsp, 0x20
cmp eax, 0xe068d896
je 0x1401b6110
jmp 0x1401ae03e
mov rax, qword [rbp + 0x950]
cmp rax, 0
je 0x1401ae1b0
mov rcx, qword [rbp + 0x950]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x1401ae1b0
mov eax, dword [0x14027db58]
mov r8d, dword [0x14027db5c]
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xe67bff5e
xor ecx, 0x39d39b83
or eax, ecx
imul ecx, eax, 0x6cf2762a
mov edx, 0x43faeebe
xor edx, 0xbc051141
mov eax, ecx
xor eax, edx
mov edx, 0x6c62a585
xor edx, 0xa60efb8d
mov r8d, 0x87d3c6a0
xor r8d, 0x782c395f
xor edx, r8d
or eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xca6c5e08
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
cmp eax, 0x57cf37d7
je 0x1401b6119
mov rcx, qword [rbp + 0x950]
mov eax, dword [0x14027db60]
xor eax, 0x68991ed8
mov r9d, dword [0x14027db64]
mov r8d, r9d
xor r8d, 0xffffffff
mov edx, eax
and edx, r8d
mov r8d, eax
xor r8d, r9d
add eax, r8d
sub eax, edx
mov edx, eax
add edx, 1
xor eax, 0xffffffff
mov r8d, 0xed0b8fcc
xor r8d, 0xaf673060
or eax, r8d
add eax, edx
mov r8d, 0xd8c95595
xor edx, edx
div r8d
mov edx, eax
and edx, 0xa636b863
xor edx, 0xffffffff
add eax, 0xa636b863
mov r8d, 0x456c4fe4
xor r8d, 0x456c4fe5
add eax, r8d
add eax, edx
mov dword [rbp + 0x940], eax
mov eax, 0xe7ad9c6e
xor eax, 0x3c382f9f
mov dword [rbp + 0x93c], eax
sub rsp, 0x20
call fcn.14001d1d6
mov ecx, dword [rbp + 0x93c]
mov eax, dword [rbp + 0x940]
add rsp, 0x20
cmp eax, ecx
ja 0x1401ae0fd
jmp 0x1401ae1b0
mov rax, qword [rbp + 0x958]
cmp rax, 0
je 0x1401ae223
mov rax, qword [rbp + 0x958]
mov rax, qword [rax]
movabs rdx, 0x4000000000000000
mov rcx, rax
xor rcx, rdx
movabs rdx, 0xea566070b76a87c9
movabs r8, 0x15a99f8f48957836
xor rdx, r8
xor rcx, rdx
movabs rdx, 0x4000000000000000
or rax, rdx
and rax, rcx
cmp rax, 0
jne 0x1401ae223
mov rcx, qword [rbp + 0x958]
sub rsp, 0x20
call fcn.14001d1d6
add rsp, 0x20
lea rcx, [rbp + 0x1b30]
sub rsp, 0x20
call fcn.14010e070
mov rax, qword [rbp + 0x1360]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x64
xor cl, 0x64
cmp al, cl
jne 0x1401ae274
mov al, byte [rbp + 0x963]
mov rcx, qword [rbp + 0x1360]
mov dl, byte [rbp + 0x962]
mov byte [rcx], dl
test al, 1
jne 0x1401ae26f
jmp 0x1401ae274
jmp 0x1401ae2fa
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
mov qword [rbp + 0x930], rax
cmp word [rax + 0x12], 1
jle 0x1401ae2fa
mov rax, qword [rbp + 0x930]
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0xd4054986
jne 0x1401ae2fa
mov rax, qword [rbp + 0x1360]
mov byte [rax], 0
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov rcx, rax
add rcx, 0x10
mov rax, qword [rax + 0x10]
mov rdx, qword [rax + 0x38]
xor r8d, r8d
sub rsp, 0x20
call fcn.140028560
add rsp, 0x20
mov rax, qword [rbp + 0xfa0]
cmp rax, 0
je 0x1401ae33d
mov rcx, qword [rbp + 0xfa0]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x1401ae33d
mov rcx, qword [rbp + 0xfa0]
sub rsp, 0x20
call fcn.14001d1d6
add rsp, 0x20
mov eax, dword [rbp + 0xfbc]
mov rdx, qword [rbp + 0x1360]
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0xfc3], cl
mov dword [rbp + 0xfc4], eax
je 0x1401a823f
jmp 0x1401ae391
mov eax, dword [rbp + 0x9d4]
mov ecx, dword [rbp + 0x9c4]
mov rdx, qword [rbp + 0x1018]
mov qword [rbp + 0x920], rdx
mov dword [rbp + 0x928], ecx
mov dword [rbp + 0x92c], eax
jmp 0x1401ae49d
mov rax, qword [rbp + 0x1360]
mov cl, byte [rbp + 0xfc3]
mov edx, dword [rbp + 0xfc4]
mov dword [rbp + 0x918], edx
mov byte [rbp + 0x91f], cl
mov byte [rax], 0
mov rax, qword [rbp + 0x1b60]
mov qword [rbp + 0x17b8], rax
mov rax, qword [rbp + 0x1b68]
mov qword [rbp + 0x17c0], rax
lea rcx, [rbp + 0x17b8]
sub rsp, 0x20
call fcn.1400333b0
add rsp, 0x20
lea rcx, [rbp + 0x1b70]
sub rsp, 0x20
call fcn.14010e070
mov rax, qword [rbp + 0x1360]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ae46e
mov al, byte [rbp + 0x91f]
mov rcx, qword [rbp + 0x1360]
mov byte [rcx], al
cmp al, 0
jne 0x1401ae46e
mov eax, dword [rbp + 0x918]
mov rcx, qword [rbp + 0x1018]
mov r8, rcx
and r8, 1
shl r8, 1
mov rdx, rcx
xor rdx, 1
add rdx, r8
xor rcx, 0xffffffffffffffff
mov r8, rdx
and r8, rcx
xor ecx, ecx
cmp r8, 0
mov qword [rbp + 0x920], rdx
mov dword [rbp + 0x928], ecx
mov dword [rbp + 0x92c], eax
jl 0x1401ae47f
jmp 0x1401ae49d
mov eax, dword [rbp + 0x918]
mov dword [rbp + 0x1228], eax
jmp 0x1401b5e7e
sub rsp, 0x20
call fcn.14000f24b
mov eax, dword [rbp + 0x918]
add rsp, 0x20
mov dword [rbp + 0x1228], eax
jmp 0x1401b5e7e
mov rcx, qword [rbp + 0x920]
mov edx, dword [rbp + 0x928]
mov eax, dword [rbp + 0x92c]
mov dword [rbp + 0x910], eax
mov dword [rbp + 0x914], edx
test edx, edx
mov qword [rbp + 0x1218], rcx
mov dword [rbp + 0x1220], eax
je 0x1401a7e2c
jmp 0x1401ae4d6
mov eax, dword [rbp + 0x910]
mov ecx, dword [rbp + 0x914]
sub ecx, 2
mov dword [rbp + 0x1228], eax
je 0x1401b5e7e
jmp 0x1401ae4f6
mov eax, dword [rbp + 0x910]
mov ecx, dword [rbp + 0x914]
sub ecx, 8
mov dword [rbp + 0x1224], eax
jne 0x1401b5fbb
jmp 0x1401ae516
mov eax, dword [rbp + 0x1224]
mov dword [rbp + 0x904], eax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0x908], rax
mov rax, qword [rbp + 0x908]
xorps xmm0, xmm0
movups xmmword [rbp + rax + 0x1788], xmm0
add rax, 0x10
cmp rax, 0x30
mov qword [rbp + 0x908], rax
jne 0x1401ae541
mov rsi, qword [rbp + 0x12f8]
mov rdi, qword [rbp + 0x12e8]
mov rbx, qword [rbp + 0x12f0]
mov r14, qword [rbp + 0x12d0]
mov r15, qword [rbp + 0x12c8]
lea rax, [rbp + 0x1778]
add rax, 8
mov qword [rbp + 0x6f8], rax
movabs rax, 0x25e36ba28a89e6f1
movabs rcx, 0x25e36ba28a89e6f0
xor rax, rcx
mov qword [rbp + 0x1778], rax
mov ecx, 1
mov edx, 0x10
mov r8d, 8
sub rsp, 0x20
call fcn.140020645
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1368]
mov qword [rbp + 0x1780], rcx
mov rcx, qword [rax]
mov qword [rbp + 0x1758], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1760], rax
lea rcx, [rbp + 0x1768]
lea rdx, [rbp + 0x1758]
sub rsp, 0x20
call fcn.140039831
mov r11, qword [rbp + 0x1230]
mov r10, qword [rbp + 0x1358]
mov r9, qword [rbp + 0x1310]
mov r8, qword [rbp + 0x1320]
mov rdx, qword [rbp + 0x1318]
mov rcx, qword [rbp + 0x1348]
add rsp, 0x20
mov rax, qword [rbp + 0x1768]
mov r13, qword [rbp + 0x1770]
mov r12, qword [rbp + 0x1780]
mov qword [r12 + 8], rax
mov eax, dword [rbp + 0x904]
mov qword [r12 + 0x10], r13
lea r12, [rbp + 0x16c0]
add r12, 8
mov qword [rbp + 0x700], r12
lea r12, [rbp + 0x16b0]
add r12, 8
mov qword [rbp + 0x708], r12
lea r12, [rbp + 0x16a0]
add r12, 8
mov qword [rbp + 0x710], r12
lea r12, [rbp + 0x1710]
add r12, 2
mov qword [rbp + 0x718], r12
add r15, 8
mov qword [rbp + 0x720], r15
lea r15, [rbp + 0x1710]
add r15, 8
mov qword [rbp + 0x728], r15
lea r15, [rbp + 0x16e0]
add r15, 0x10
mov qword [rbp + 0x730], r15
lea r15, [rbp + 0x16e0]
add r15, 0x18
mov qword [rbp + 0x738], r15
lea r15, [rbp + 0x16e0]
add r15, 8
mov qword [rbp + 0x740], r15
lea r15, [rbp + 0x16e0]
add r15, 0x20
mov qword [rbp + 0x748], r15
lea r15, [rbp + 0x16e0]
add r15, 0x28
mov qword [rbp + 0x750], r15
lea r15, [rbp + 0x1690]
add r15, 8
mov qword [rbp + 0x758], r15
lea r15, [rbp + 0x1680]
add r15, 8
mov qword [rbp + 0x760], r15
add r14, 8
mov qword [rbp + 0x768], r14
lea r14, [rbp + 0x16d0]
add r14, 8
mov qword [rbp + 0x770], r14
add rbx, 8
mov qword [rbp + 0x778], rbx
lea rbx, [rbp + 0x1650]
add rbx, 8
mov qword [rbp + 0x780], rbx
lea rbx, [rbp + 0x1630]
add rbx, 8
mov qword [rbp + 0x788], rbx
lea rbx, [rbp + 0x1640]
add rbx, 8
mov qword [rbp + 0x790], rbx
mov rbx, rdi
add rbx, 8
mov qword [rbp + 0x798], rbx
mov rbx, rdi
add rbx, 0x10
mov qword [rbp + 0x7a0], rbx
lea rbx, [rbp + 0x1610]
add rbx, 8
mov qword [rbp + 0x7a8], rbx
lea rbx, [rbp + 0x1600]
add rbx, 8
mov qword [rbp + 0x7b0], rbx
lea rbx, [rbp + 0x1620]
add rbx, 8
mov qword [rbp + 0x7b8], rbx
mov rbx, rdi
add rbx, 0x18
mov qword [rbp + 0x7c0], rbx
mov rbx, rdi
add rbx, 0x20
mov qword [rbp + 0x7c8], rbx
add rdi, 0x28
mov qword [rbp + 0x7d0], rdi
lea rdi, [rbp + 0x1728]
add rdi, 0x18
mov qword [rbp + 0x7d8], rdi
mov rdi, r10
add rdi, 0x24
mov qword [rbp + 0x7e0], rdi
lea rdi, [rbp + 0x15a0]
add rdi, 8
mov qword [rbp + 0x7e8], rdi
add rsi, 8
mov qword [rbp + 0x7f0], rsi
lea rsi, [rbp + 0x15d0]
add rsi, 8
mov qword [rbp + 0x7f8], rsi
lea rsi, [rbp + 0x15b0]
add rsi, 8
mov qword [rbp + 0x800], rsi
mov rsi, r10
add rsi, 0x58
mov qword [rbp + 0x808], rsi
mov rsi, r10
add rsi, 0x60
mov qword [rbp + 0x810], rsi
lea rsi, [rbp + 0x1788]
add rsi, 0x28
mov qword [rbp + 0x818], rsi
lea rsi, [rbp + 0x1788]
add rsi, 8
mov qword [rbp + 0x820], rsi
lea rsi, [rbp + 0x1560]
add rsi, 8
mov qword [rbp + 0x828], rsi
lea rsi, [rbp + 0x1540]
add rsi, 8
mov qword [rbp + 0x830], rsi
lea rsi, [rbp + 0x1530]
add rsi, 8
mov qword [rbp + 0x838], rsi
lea rsi, [rbp + 0x1520]
add rsi, 8
mov qword [rbp + 0x840], rsi
mov rsi, r10
and rsi, 0xfffffffffffffff0
mov rdi, r10
or rdi, 0xfffffffffffffff0
add rsi, rdi
mov qword [rbp + 0x848], rsi
add r11, 8
mov qword [rbp + 0x850], r11
add r10, 8
mov qword [rbp + 0x858], r10
lea r10, [rbp + 0x14b0]
add r10, 8
mov qword [rbp + 0x860], r10
add r9, 8
mov qword [rbp + 0x868], r9
lea r9, [rbp + 0x1490]
add r9, 8
mov qword [rbp + 0x870], r9
lea r9, [rbp + 0x14a0]
add r9, 8
mov qword [rbp + 0x878], r9
lea r9, [rbp + 0x14c0]
add r9, 8
mov qword [rbp + 0x880], r9
lea r9, [rbp + 0x14c0]
add r9, 0x10
mov qword [rbp + 0x888], r9
lea r9, [rbp + 0x1470]
add r9, 8
mov qword [rbp + 0x890], r9
lea r9, [rbp + 0x1460]
add r9, 8
mov qword [rbp + 0x898], r9
lea r9, [rbp + 0x1480]
add r9, 8
mov qword [rbp + 0x8a0], r9
lea r9, [rbp + 0x14c0]
add r9, 0x18
mov qword [rbp + 0x8a8], r9
lea r9, [rbp + 0x14c0]
add r9, 0x20
mov qword [rbp + 0x8b0], r9
lea r9, [rbp + 0x14c0]
add r9, 0x28
mov qword [rbp + 0x8b8], r9
add r8, 8
mov qword [rbp + 0x8c0], r8
lea r8, [rbp + 0x1400]
add r8, 8
mov qword [rbp + 0x8c8], r8
add rdx, 8
mov qword [rbp + 0x8d0], rdx
lea rdx, [rbp + 0x1420]
add rdx, 8
mov qword [rbp + 0x8d8], rdx
lea rdx, [rbp + 0x13f0]
add rdx, 8
mov qword [rbp + 0x8e0], rdx
lea rdx, [rbp + 0x13d0]
add rdx, 8
mov qword [rbp + 0x8e8], rdx
add rcx, 8
mov qword [rbp + 0x8f0], rcx
lea rcx, [rbp + 0x13b0]
add rcx, 8
mov qword [rbp + 0x8f8], rcx
mov dword [rbp + 0x900], eax
mov eax, dword [rbp + 0x900]
mov dword [rbp + 0x6ec], eax
mov rax, qword [rbp + 0x1778]
mov qword [rbp + 0x6f0], rax
cmp rax, 0
jg 0x1401aeacf
mov eax, dword [rbp + 0x6ec]
mov rcx, qword [rbp + 0x1360]
mov cl, byte [rcx]
mov byte [rbp + 0x6e7], cl
mov dword [rbp + 0x6e8], eax
jmp 0x1401b5dd1
mov rcx, qword [rbp + 0x6f8]
mov rax, qword [rbp + 0x6f0]
add rax, 0xffffffffffffffff
mov qword [rbp + 0x6d0], rax
mov rcx, qword [rcx]
add rcx, 8
shl rax, 4
add rcx, rax
mov rax, qword [rcx]
mov qword [rbp + 0x6c0], rax
mov rax, qword [rcx + 8]
mov qword [rbp + 0x6c8], rax
sub rsp, 0x20
call fcn.140020530
mov rdx, qword [rbp + 0x6d0]
add rsp, 0x20
lea rcx, [rbp + 0x1778]
sub rsp, 0x20
call fcn.140031050
add rsp, 0x20
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0x6d8], rax
mov rax, qword [rbp + 0x6d8]
xorps xmm0, xmm0
movups xmmword [rbp + rax + 0x1728], xmm0
movabs rcx, 0x5f5be71549606144
sub rax, rcx
add rax, 0x10
movabs rcx, 0x5f5be71549606144
add rax, rcx
cmp rax, 0x30
mov qword [rbp + 0x6d8], rax
jne 0x1401aeb52
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0x6b8], rax
mov rax, qword [rbp + 0x6b8]
xorps xmm0, xmm0
movups xmmword [rbp + rax + 0x1728], xmm0
add rax, 0x10
cmp rax, 0x30
mov qword [rbp + 0x6b8], rax
jne 0x1401aebb2
mov word [rbp + 0x1726], 0x10c
lea rcx, [rbp + 0x1726]
sub rsp, 0x20
call fcn.140093f60
mov rcx, qword [rbp + 0x1360]
add rsp, 0x20
mov qword [rbp + 0x698], rax
xor eax, eax
cmp byte [rcx], 0
mov rcx, rax
mov qword [rbp + 0x6a0], rcx
mov rcx, rax
mov qword [rbp + 0x6a8], rcx
mov qword [rbp + 0x6b0], rax
jne 0x1401b5701
mov rax, qword [rbp + 0x698]
mov rdx, qword [rbp + 0x6c0]
add rdx, qword [rax]
lea rcx, [rbp + 0x16c0]
sub rsp, 0x20
call fcn.140037460
mov rcx, qword [rbp + 0x700]
mov rdx, qword [rbp + 0x698]
add rsp, 0x20
mov rax, qword [rbp + 0x16c0]
mov qword [rbp + 0x670], rax
mov rcx, qword [rcx]
mov qword [rbp + 0x678], rcx
mov rcx, qword [rdx]
mov qword [rbp + 0x680], rcx
mov rdx, qword [rdx + 8]
mov qword [rbp + 0x688], rdx
cmp rcx, 0
mov qword [rbp + 0x690], rax
jle 0x1401aeeb3
mov rdx, qword [rbp + 0x680]
mov rax, 0xffffffffffffffff
xor rax, 1
xor ecx, ecx
sub rcx, 1
sub rax, rcx
mov rcx, rdx
sub rcx, rax
mov qword [rbp + 0x668], rcx
movabs rax, 0x76ace6c47b5a2445
movabs r8, 0x8953193b84a5dbba
xor rax, r8
xor rdx, rax
movabs rax, 0x1aa185b139ebde9c
movabs r8, 0xe55e7a4ec6142163
xor rax, r8
xor rdx, rax
mov rax, rcx
xor rax, rdx
and rax, rcx
cmp rax, 0
jge 0x1401aed2a
sub rsp, 0x20
call fcn.14000f24b
mov rax, qword [rbp + 0x670]
add rsp, 0x20
mov qword [rbp + 0x690], rax
jmp 0x1401aeeb3
mov rax, qword [rbp + 0x668]
cmp rax, 0
jge 0x1401aed70
mov rcx, qword [rbp + 0x668]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14001a720
mov rax, qword [rbp + 0x670]
add rsp, 0x20
mov qword [rbp + 0x690], rax
jmp 0x1401aeeb3
mov rax, qword [rbp + 0x688]
mov rdx, qword [rbp + 0x670]
mov rcx, qword [rbp + 0x678]
add rcx, 8
add rcx, rdx
mov qword [rbp + 0x650], rcx
add rax, 8
mov qword [rbp + 0x658], rax
xor eax, eax
mov qword [rbp + 0x660], rax
mov rcx, qword [rbp + 0x660]
mov rdx, qword [rbp + 0x680]
mov rax, qword [rbp + 0x650]
mov r8, qword [rbp + 0x658]
mov r8b, byte [r8 + rcx]
mov byte [rax + rcx], r8b
xor eax, eax
mov r8d, eax
sub r8, rcx
xor eax, eax
sub rax, 1
add r8, rax
xor eax, eax
sub rax, r8
cmp rcx, rdx
mov qword [rbp + 0x660], rax
jne 0x1401aeda7
mov r9, qword [rbp + 0x680]
mov rcx, qword [rbp + 0x670]
mov rax, r9
add rax, rcx
mov r8, rax
xor r8, rcx
mov rcx, rax
xor rcx, 0xffffffffffffffff
mov rdx, r9
and rdx, rcx
xor r9, 0xffffffffffffffff
mov rcx, rax
and rcx, r9
or rdx, rcx
mov rcx, r8
xor rcx, 0xffffffffffffffff
movabs r9, 0x98ec31bee6979e05
movabs r10, 0x6713ce41196861fa
xor r9, r10
xor r8, r9
and rcx, r8
or rdx, rdx
xor rdx, 0xffffffffffffffff
movabs r8, 0x1bd607ee436dac5f
movabs r9, 0xe429f811bc9253a0
xor r8, r9
xor rcx, r8
movabs r8, 0x6e7df46e69c5b6bb
movabs r9, 0x91820b91963a4944
xor r8, r9
xor rdx, r8
and rcx, rdx
cmp rcx, 0
mov qword [rbp + 0x690], rax
jge 0x1401aeeb3
sub rsp, 0x20
call fcn.14000f24b
mov rax, qword [rbp + 0x670]
add rsp, 0x20
mov qword [rbp + 0x690], rax
mov rcx, qword [rbp + 0x6c0]
mov rax, qword [rbp + 0x690]
mov qword [rbp + 0x640], rax
movabs rdx, 0x773ec287ca220642
movabs r8, 0x773ec287ca220642
xor rdx, r8
cmp rcx, rdx
mov qword [rbp + 0x648], rax
jle 0x1401af25a
mov eax, dword [0x14027db68]
and eax, dword [0x14027db6c]
mov ecx, eax
and ecx, 0x78aff5be
shl ecx, 1
add eax, 0x78aff5be
sub eax, ecx
or eax, eax
mov ecx, 0xc30be372
xor ecx, 0x3cf41c8d
xor eax, ecx
mov ecx, 0xb7197956
xor ecx, 0xb38a8f16
mov edx, 0xc0376438
xor edx, 0xc4a49278
or ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xa6c0ae26
xor edx, 0x593f51d9
xor ecx, edx
and eax, ecx
imul eax, eax, 0x47ff3854
cmp eax, 0x1b1287f1
je 0x1401b6122
mov rdx, qword [rbp + 0x6c0]
mov eax, dword [0x14027db70]
xor eax, 0xc0f78c71
mov r9d, dword [0x14027db74]
mov r8d, 0xe0550296
xor r8d, 0x1faafd69
mov ecx, eax
xor ecx, r8d
mov r8d, r9d
and r8d, ecx
mov r10d, r9d
xor r10d, 0xffffffff
mov ecx, eax
and ecx, r10d
imul ecx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, ecx
mov ecx, 0x44ec73fe
xor ecx, 0x8a651230
sub eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov r8d, 0xc96c6b03
xor r8d, 0xaa2ae262
and r8d, ecx
mov r9d, 0xffffffff
xor r9d, 0x63468961
mov ecx, eax
and ecx, r9d
imul ecx, r8d
mov r9d, 0xdec42d5
xor r9d, 0x6eaacbb4
mov r8d, eax
and r8d, r9d
or eax, 0x63468961
imul eax, r8d
add eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov r8d, 0xe22b3f9
xor r8d, 0xa4898273
and r8d, ecx
mov r9d, 0xca3933b1
xor r9d, 0x6092023b
mov ecx, 0x93178fff
xor ecx, 0x6ce87000
xor r9d, ecx
mov ecx, eax
and ecx, r9d
imul ecx, r8d
mov r8d, eax
and r8d, 0xaaab318a
or eax, 0xaaab318a
imul eax, r8d
add eax, ecx
movabs r8, 0xf20726ef84d19103
movabs rcx, 0xf20726ef84d19102
xor r8, rcx
mov rcx, rdx
add rcx, r8
mov qword [rbp + 0x630], rcx
movabs r8, 0x1165e6baa835b9b5
movabs r9, 0xee9a194557ca464a
xor r8, r9
xor rdx, r8
or rcx, rcx
xor rcx, 0xffffffffffffffff
or rdx, rdx
xor rdx, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
and rcx, rdx
movabs rdx, 0xe1c134711f753c49
movabs r8, 0xe1c134711f753c49
xor rdx, r8
cmp rcx, rdx
setl cl
mov byte [rbp + 0x63f], cl
cmp eax, 0x211aedf9
jb 0x1401aef5a
mov al, byte [rbp + 0x63f]
test al, 1
jne 0x1401af0e6
jmp 0x1401af106
sub rsp, 0x20
call fcn.14000f24b
mov rax, qword [rbp + 0x640]
add rsp, 0x20
mov qword [rbp + 0x648], rax
jmp 0x1401af25a
mov rax, qword [rbp + 0x630]
cmp rax, 0
jge 0x1401af14c
mov rcx, qword [rbp + 0x630]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14001a720
mov rax, qword [rbp + 0x640]
add rsp, 0x20
mov qword [rbp + 0x648], rax
jmp 0x1401af25a
mov rax, qword [rbp + 0x6c8]
mov rdx, qword [rbp + 0x640]
mov rcx, qword [rbp + 0x678]
add rcx, 8
add rcx, rdx
mov qword [rbp + 0x618], rcx
add rax, 8
mov qword [rbp + 0x620], rax
xor eax, eax
mov qword [rbp + 0x628], rax
mov rcx, qword [rbp + 0x628]
mov rdx, qword [rbp + 0x6c0]
mov rax, qword [rbp + 0x618]
mov r8, qword [rbp + 0x620]
mov r8b, byte [r8 + rcx]
mov byte [rax + rcx], r8b
mov rax, rcx
add rax, 1
cmp rcx, rdx
mov qword [rbp + 0x628], rax
jne 0x1401af183
mov r9, qword [rbp + 0x6c0]
mov r8, qword [rbp + 0x640]
mov rax, r8
add rax, r9
mov rdx, rax
and rdx, r8
shl rdx, 1
mov rcx, rax
add rcx, r8
sub rcx, rdx
movabs rdx, 0x9aec915f53f4d85e
movabs r8, 0x65136ea0ac0b27a1
xor rdx, r8
mov r8, rax
xor r8, rdx
mov rdx, r9
and rdx, r8
xor r9, 0xffffffffffffffff
mov r8, rax
and r8, r9
or rdx, r8
and rcx, rdx
movabs rdx, 0xc1cdb5e64fd9ffe2
movabs r8, 0xc1cdb5e64fd9ffe2
xor rdx, r8
cmp rcx, rdx
mov qword [rbp + 0x648], rax
jge 0x1401af25a
sub rsp, 0x20
call fcn.14000f24b
mov rax, qword [rbp + 0x640]
add rsp, 0x20
mov qword [rbp + 0x648], rax
mov rax, qword [rbp + 0x648]
mov qword [rbp + 0x608], rax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
mov rcx, qword [rbp + 0x678]
mov r8, qword [rbp + 0x608]
add rsp, 0x20
add rcx, 8
lea rdx, [0x14028b9f8]
cmp r8, 0
cmove rcx, rdx
mov qword [rbp + 0x610], rcx
cmp byte [rax + 0x60], 0
jne 0x1401af3f1
mov rax, qword [rbp + 0x608]
cmp rax, 0
jge 0x1401af2e8
mov rcx, qword [rbp + 0x608]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14001a720
add rsp, 0x20
jmp 0x1401af3f1
mov eax, dword [0x14027db78]
mov edx, dword [0x14027db7c]
mov r8d, eax
xor r8d, 0xffffffff
mov ecx, edx
and ecx, r8d
mov r8d, 0x6c9f9d71
xor r8d, 0x9360628e
xor edx, r8d
and eax, edx
or ecx, eax
add ecx, 0x3e5150b
add ecx, 0xf1b4fe10
sub ecx, 0x3e5150b
add ecx, 0x4dfbd87d
mov eax, ecx
and eax, 0xdea49ad2
xor eax, 0xffffffff
and ecx, 0xdea49ad2
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xc76dce4f
xor ecx, 0x389231b0
xor eax, ecx
cmp eax, 0x5eb7638
je 0x1401b612b
mov r8, qword [rbp + 0x608]
mov rdx, qword [rbp + 0x610]
mov eax, dword [0x14027db80]
xor eax, 0x65f470b8
and eax, dword [0x14027db84]
xor eax, 0x2ac80e9c
mov ecx, eax
and ecx, 0xde51dce4
or eax, 0xde51dce4
add ecx, eax
mov eax, ecx
or eax, 0x445d8afa
xor eax, 0xffffffff
or ecx, 0x445d8afa
mov r9d, 0x13374817
xor r9d, 0xecc8b7e8
xor ecx, r9d
xor eax, 0xffffffff
mov r9d, 0xad4506fe
xor r9d, 0x52baf901
xor ecx, r9d
and eax, ecx
mov dword [rbp + 0x604], eax
lea rcx, [rbp + 0x16b0]
sub rsp, 0x20
call fcn.1400eb9c0
mov eax, dword [rbp + 0x604]
add rsp, 0x20
cmp eax, 0xa06ae728
jae 0x1401b612b
jmp 0x1401af3f1
mov rcx, qword [rbp + 0x678]
mov rdx, qword [rbp + 0x1360]
mov rax, qword [rbp + 0x708]
mov r8, qword [rbp + 0x16b0]
mov qword [rbp + 0x5f0], r8
mov rax, qword [rax]
mov qword [rbp + 0x5f8], rax
xor eax, eax
cmp byte [rdx], 0
mov qword [rbp + 0x6a0], rcx
mov rcx, rax
mov qword [rbp + 0x6a8], rcx
mov qword [rbp + 0x6b0], rax
jne 0x1401b5701
mov rax, qword [rbp + 0x5f0]
mov ecx, 2
cqo
idiv rcx
mov r9, rax
mov rax, qword [rbp + 0x5f0]
mov rdx, r9
add rdx, 0xffffffffffffffff
mov qword [rbp + 0x5e8], rdx
mov rcx, rdx
and rcx, rcx
xor rcx, 0xffffffffffffffff
and rcx, r9
xor rcx, 0xffffffffffffffff
mov r8, r9
xor r8, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
or r8, r9
and rdx, r8
xor rdx, 0xffffffffffffffff
and rcx, rdx
xor rcx, 0xffffffffffffffff
cmp rcx, 0
setl dl
cmp rax, 1
setg cl
mov al, cl
xor al, 0xff
xor r8d, r8d
xor r8b, 1
xor cl, r8b
and al, cl
mov cl, dl
xor cl, 0xff
mov r8b, 1
xor r8b, 0
xor dl, r8b
and cl, dl
or al, cl
xor al, 0xff
test al, 1
jne 0x1401af5d9
mov ecx, dword [0x14027db88]
xor ecx, 0x3bb5cc5f
mov r8d, dword [0x14027db8c]
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
mov edx, r8d
xor edx, 0xffffffff
or eax, edx
mov edx, r8d
xor edx, 0xffffffff
xor r8d, 0xffffffff
or edx, r8d
xor ecx, 0xffffffff
xor edx, 0xffffffff
or ecx, edx
mov edx, 0x870d3b11
xor edx, 0x78f2c4ee
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
mov edx, 0x57c131fd
xor edx, 0xd44c3e78
mov ecx, eax
and ecx, edx
shl ecx, 1
add eax, 0x838d0f85
sub eax, ecx
xor ecx, ecx
sub ecx, 0x5c9b6567
add eax, ecx
mov ecx, 0x5e5de3c2
xor ecx, 0x6b050870
xor edx, edx
div ecx
mov ecx, 0x1710dbf7
xor ecx, 0x7d7dc13a
cmp eax, ecx
ja 0x1401b6134
mov rdx, qword [rbp + 0x5e8]
mov eax, dword [0x14027db90]
mov ecx, dword [0x14027db94]
mov r8d, 0x70f3b871
xor r8d, 0x1b15feeb
sub eax, r8d
add eax, ecx
add eax, 0x6be6469a
imul eax, eax, 0xe0b35d8d
or eax, 0x7dd675a6
mov ecx, 0x222dc29b
xor ecx, 0x97f430b
imul eax, ecx
xor ecx, ecx
test rdx, rdx
cmovg rcx, rdx
mov qword [rbp + 0x5e0], rcx
cmp eax, 0xe7b6af55
jae 0x1401af568
mov rax, qword [rbp + 0x5e0]
mov qword [rbp + 0x5d8], rax
jmp 0x1401af61c
sub rsp, 0x20
call fcn.14000f24b
mov r8, qword [rbp + 0x1360]
mov rdx, qword [rbp + 0x678]
mov rcx, qword [rbp + 0x5f8]
add rsp, 0x20
xor eax, eax
cmp byte [r8], 0
mov qword [rbp + 0x6a0], rdx
mov qword [rbp + 0x6a8], rcx
mov qword [rbp + 0x6b0], rax
jne 0x1401b5701
mov rax, qword [rbp + 0x5d8]
mov qword [rbp + 0x5b8], rax
movabs rcx, 0x13d0e1603ff460d1
movabs rdx, 0x13d0e1603ff460d0
xor rcx, rdx
shl rax, cl
mov rcx, qword [rbp + 0x5b8]
mov qword [rbp + 0x5c0], rax
cvtsi2sd xmm0, rcx
movsd xmm1, qword [0x14028b5c8]
mulsd xmm0, xmm1
movsd qword [rbp + 0x5c8], xmm0
cvtsi2sd xmm1, rax
movsd qword [rbp + 0x5d0], xmm1
ucomisd xmm0, xmm1
jne 0x1401af68d
jp 0x1401af68d
jmp 0x1401af828
mov eax, dword [0x14027db98]
xor eax, 0xc08337dc
or eax, dword [0x14027db9c]
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0x7d8b1467
add eax, ecx
mov ecx, 0x1cafebc7
xor edx, edx
div ecx
mov ecx, 0x22af10e6
xor ecx, 0xdd50ef19
mov edx, eax
xor edx, ecx
and edx, 0x8555f863
mov r8d, 0x2af72efa
xor r8d, 0xafa2d699
mov ecx, 0xc3c8c484
xor ecx, 0x3c373b7b
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x8555f863
mov r8d, 0xdbd6423f
xor r8d, 0x5e83ba5c
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0x7b8d47d0
xor ecx, 0x6014faf7
cmp eax, ecx
je 0x1401b613d
movsd xmm1, qword [rbp + 0x5c8]
movsd xmm0, qword [rbp + 0x5d0]
mov eax, dword [0x14027dba0]
xor eax, 0x28f820c4
mov edx, dword [0x14027dba4]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, 0x152b694b
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0x9bb6fc4a
mov edx, 0xffffffff
xor edx, 0x9bb6fc4a
and eax, edx
shl eax, 1
sub eax, ecx
mov edx, 0x84ccf279
xor edx, 0xba44f571
mov ecx, 0x1faf2cf7
xor ecx, 0xe050d308
xor edx, ecx
mov ecx, eax
and ecx, edx
mov r8d, 0xfd7401f6
xor r8d, 0xc3fc06fe
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
mov dword [rbp + 0x5b0], eax
subsd xmm0, xmm1
sub rsp, 0x20
call fcn.140271c60
add rsp, 0x20
movaps xmm1, xmm0
movsd xmm0, qword [rbp + 0x5c8]
movsd qword [rbp + 0x5a8], xmm1
sub rsp, 0x20
call fcn.140271c60
movsd xmm1, qword [rbp + 0x5a8]
mov eax, dword [rbp + 0x5b0]
add rsp, 0x20
movsd xmm2, qword [0x14028b5d0]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
setb cl
mov byte [rbp + 0x5b7], cl
cmp eax, 0xb26cdcf6
ja 0x1401af71e
mov cl, byte [rbp + 0x5b7]
xor eax, eax
test cl, 1
mov qword [rbp + 0x5a0], rax
jne 0x1401b56c2
jmp 0x1401af828
mov rax, qword [rbp + 0x5c0]
mov word [rbp + 0x1710], ax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov al, byte [rax + 0x60]
mov cl, 0xbc
xor cl, 0xbc
cmp al, cl
jne 0x1401af8cc
mov rax, qword [rbp + 0x608]
movabs rcx, 0xab12ff6bd3873bae
movabs rdx, 0xab12ff6bd3873bae
xor rcx, rdx
cmp rax, rcx
jge 0x1401af8aa
mov rcx, qword [rbp + 0x608]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14001a720
add rsp, 0x20
jmp 0x1401af8cc
mov r8, qword [rbp + 0x608]
mov rdx, qword [rbp + 0x610]
lea rcx, [rbp + 0x16a0]
sub rsp, 0x20
call fcn.1400eb9c0
add rsp, 0x20
mov rcx, qword [rbp + 0x5f8]
mov rdx, qword [rbp + 0x678]
mov r8, qword [rbp + 0x1360]
mov rax, qword [rbp + 0x710]
mov r9, qword [rbp + 0x16a0]
mov qword [rbp + 0x590], r9
mov rax, qword [rax]
mov qword [rbp + 0x598], rax
xor eax, eax
cmp byte [r8], 0
mov qword [rbp + 0x6a0], rdx
mov qword [rbp + 0x6a8], rcx
mov qword [rbp + 0x6b0], rax
jne 0x1401b5701
mov eax, dword [0x14027dba8]
mov ecx, dword [0x14027dbac]
xor ecx, 0x9b88e6e8
and eax, eax
xor eax, 0xffffffff
and ecx, ecx
mov edx, 0x4a5778a2
xor edx, 0xb5a8875d
xor ecx, edx
xor eax, 0xffffffff
mov edx, 0xe6431352
xor edx, 0x19bcecad
xor ecx, edx
or eax, ecx
mov ecx, 0x6bdf43fe
xor ecx, 0x93ca8e39
xor edx, edx
div ecx
mov ecx, 0x4fc26f40
xor ecx, 0x30c33965
xor eax, ecx
sub eax, 0xb5a16117
mov ecx, 0x6dee40eb
xor ecx, 0x86fa4b68
cmp eax, ecx
je 0x1401b6146
mov rcx, qword [rbp + 0x590]
mov r8d, dword [0x14027dbb0]
mov edx, dword [0x14027dbb4]
mov eax, r8d
xor eax, edx
xor edx, 0xffffffff
and r8d, edx
mov edx, 0x8e38608f
xor edx, 0x8e38608d
imul edx, r8d
sub edx, eax
mov eax, edx
and eax, 0x648fe6a6
xor eax, 0xffffffff
and edx, 0x648fe6a6
mov r8d, 0x6b15d276
xor r8d, 0x94ea2d89
xor edx, r8d
xor eax, 0xffffffff
mov r8d, 0x611c1da7
xor r8d, 0x9ee3e258
xor edx, r8d
or eax, edx
add eax, 0x16edb039
add eax, 0x2efebae6
mov dword [rbp + 0x57c], eax
mov r8d, 2
mov rax, rcx
cqo
idiv r8
mov r9, rax
mov eax, dword [rbp + 0x57c]
mov r8, r9
and r8, 0xffffffffffffffff
mov rdx, r9
or rdx, 0xffffffffffffffff
add r8, rdx
mov qword [rbp + 0x580], r8
mov r10, r8
xor r10, 0xffffffffffffffff
mov rdx, r9
and rdx, r10
xor r9, 0xffffffffffffffff
and r8, r9
or rdx, r8
cmp rdx, 0
setl dl
cmp rcx, 1
setg cl
and cl, dl
mov byte [rbp + 0x58f], cl
cmp eax, 0x59a0435b
je 0x1401af98d
mov al, byte [rbp + 0x58f]
test al, 1
jne 0x1401afa98
jmp 0x1401afa7c
mov rcx, qword [rbp + 0x580]
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rbp + 0x570], rax
jmp 0x1401afae0
sub rsp, 0x20
call fcn.14000f24b
mov r8, qword [rbp + 0x1360]
mov rdx, qword [rbp + 0x678]
mov rcx, qword [rbp + 0x5f8]
mov rax, qword [rbp + 0x598]
add rsp, 0x20
cmp byte [r8], 0
mov qword [rbp + 0x6a0], rdx
mov qword [rbp + 0x6a8], rcx
mov qword [rbp + 0x6b0], rax
jne 0x1401b5701
mov rax, qword [rbp + 0x570]
mov qword [rbp + 0x550], rax
movabs rcx, 0x70305a564117346f
movabs rdx, 0x70305a564117346e
xor rcx, rdx
shl rax, cl
mov rcx, qword [rbp + 0x550]
mov qword [rbp + 0x558], rax
cvtsi2sd xmm0, rcx
movsd xmm1, qword [0x14028b5c8]
mulsd xmm0, xmm1
movsd qword [rbp + 0x560], xmm0
cvtsi2sd xmm1, rax
movsd qword [rbp + 0x568], xmm1
ucomisd xmm0, xmm1
jne 0x1401afb51
jp 0x1401afb51
jmp 0x1401afbbe
movsd xmm1, qword [rbp + 0x560]
movsd xmm0, qword [rbp + 0x568]
subsd xmm0, xmm1
sub rsp, 0x20
call fcn.140271c60
add rsp, 0x20
movaps xmm1, xmm0
movsd xmm0, qword [rbp + 0x560]
movsd qword [rbp + 0x548], xmm1
sub rsp, 0x20
call fcn.140271c60
movsd xmm1, qword [rbp + 0x548]
mov rax, qword [rbp + 0x598]
add rsp, 0x20
movsd xmm2, qword [0x14028b5d0]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
mov qword [rbp + 0x5a0], rax
jb 0x1401b56c2
mov rax, qword [rbp + 0x718]
mov rcx, qword [rbp + 0x558]
add cx, 2
mov word [rax], cx
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
cmp byte [rax + 0x60], 0
jne 0x1401afc4d
mov rax, qword [rbp + 0x608]
cmp rax, 0
jge 0x1401afc2b
mov rcx, qword [rbp + 0x608]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14001a720
add rsp, 0x20
jmp 0x1401afc4d
mov r8, qword [rbp + 0x608]
mov rdx, qword [rbp + 0x610]
mov rcx, qword [rbp + 0x12c8]
sub rsp, 0x20
call fcn.1400eb9c0
add rsp, 0x20
mov rax, qword [rbp + 0x598]
mov rcx, qword [rbp + 0x5f8]
mov rdx, qword [rbp + 0x678]
mov r8, qword [rbp + 0x1360]
mov r9, qword [rbp + 0x720]
mov r10, qword [rbp + 0x12c8]
mov r10, qword [r10]
mov qword [rbp + 0x538], r10
mov r9, qword [r9]
mov qword [rbp + 0x540], r9
cmp byte [r8], 0
mov qword [rbp + 0x6a0], rdx
mov qword [rbp + 0x6a8], rcx
mov qword [rbp + 0x6b0], rax
jne 0x1401b5701
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
mov rdx, qword [rbp + 0x1360]
add rsp, 0x20
mov eax, dword [rbp + 0x6ec]
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x533], cl
mov dword [rbp + 0x534], eax
jne 0x1401b574a
mov rax, qword [rbp + 0x728]
mov r8, qword [rbp + 0x538]
mov rcx, qword [rbp + 0x540]
add rcx, 8
lea rdx, [0x14028b9f8]
cmp r8, 0
cmove rcx, rdx
mov qword [rax], rcx
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0x528], rax
mov rax, qword [rbp + 0x528]
xorps xmm0, xmm0
movups xmmword [rbp + rax + 0x16e0], xmm0
movabs rcx, 0x7875ce772b9ee30f
movabs rdx, 0x7875ce772b9ee31f
xor rcx, rdx
add rax, rcx
cmp rax, 0x30
mov qword [rbp + 0x528], rax
jne 0x1401afd2e
mov ecx, dword [0x14027dbb8]
mov eax, 0xf767cd23
xor eax, 0x26f101af
xor ecx, eax
add ecx, dword [0x14027dbbc]
sub ecx, 0x505c0640
mov eax, ecx
xor eax, 0xffffffff
mov r8d, 0x9ae13a6
xor r8d, 0xf651ec59
mov edx, ecx
xor edx, r8d
or eax, edx
mov edx, 0x693aeb31
xor edx, 0x1f1f4bd3
and eax, edx
xor eax, 0xffffffff
mov edx, 0xde016ed1
xor edx, 0xa824ce33
mov r8d, 0xe92f1701
xor r8d, 0x9f0ab7e3
and edx, r8d
xor edx, 0xffffffff
mov r8d, 0x7b4a092
xor r8d, 0xf84b5f6d
xor ecx, r8d
xor edx, 0xffffffff
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x9e156754
xor edx, edx
div ecx
cmp eax, 0x73a92e59
je 0x1401b614f
mov rax, qword [rbp + 0x12c0]
mov rcx, qword [rbp + 0x750]
mov rdx, qword [rbp + 0x748]
mov r8, qword [rbp + 0x740]
mov r9, qword [rbp + 0x738]
mov r10, qword [rbp + 0x730]
xor r11d, r11d
mov dword [rbp + 0x51c], r11d
mov dword [rbp + 0x16e0], 0x30
lea r11, [rbp + 0x1710]
mov qword [r10], r11
mov dword [r9], 0x40
mov qword [r8], 0
mov qword [rdx], 0
mov qword [rcx], 0
mov qword [rax], 0
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
mov rcx, qword [rbp + 0x12c0]
add rsp, 0x20
xorps xmm0, xmm0
movaps xmmword [rbp + 0x16d0], xmm0
mov edx, 0x80000000
lea r8, [rbp + 0x16e0]
lea r9, [rbp + 0x16d0]
mov rax, qword [0x14028d050]
sub rsp, 0x30
mov dword [rsp + 0x20], 7
mov dword [rsp + 0x28], 1
call qword [rax]
mov rcx, qword [rbp + 0x1360]
add rsp, 0x30
mov edx, eax
mov eax, dword [rbp + 0x51c]
mov dword [rbp + 0x520], edx
mov cl, byte [rcx]
mov dl, 0x1a
xor dl, 0x1a
cmp cl, dl
sete cl
mov byte [rbp + 0x527], cl
cmp eax, 0xd58a927
je 0x1401afe01
mov eax, dword [rbp + 0x6ec]
mov dl, byte [rbp + 0x527]
mov cl, 1
test dl, 1
mov byte [rbp + 0x533], cl
mov dword [rbp + 0x534], eax
jne 0x1401aff21
jmp 0x1401b574a
mov ecx, dword [rbp + 0x520]
mov rax, qword [rbp + 0x758]
mov rdx, qword [rbp + 0x6c8]
mov r8, qword [rbp + 0x6c0]
mov qword [rbp + 0x1690], r8
mov qword [rax], rdx
lea rdx, [rbp + 0x1690]
sub rsp, 0x20
call fcn.14010c830
mov rdx, qword [rbp + 0x1360]
mov eax, dword [rbp + 0x6ec]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x533], cl
mov dword [rbp + 0x534], eax
jne 0x1401b574a
mov ecx, dword [rbp + 0x520]
mov rax, qword [rbp + 0x760]
mov rdx, qword [rbp + 0x6c8]
mov r8, qword [rbp + 0x6c0]
mov qword [rbp + 0x1680], r8
mov qword [rax], rdx
lea rdx, [rbp + 0x1680]
sub rsp, 0x20
call fcn.14010ca60
mov rdx, qword [rbp + 0x1360]
mov eax, dword [rbp + 0x6ec]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x533], cl
mov dword [rbp + 0x534], eax
jne 0x1401b574a
mov r8, qword [rbp + 0x12d0]
mov edx, dword [rbp + 0x520]
mov rax, qword [rbp + 0x768]
mov r9, qword [rbp + 0x6c8]
mov r10, qword [rbp + 0x6c0]
mov rcx, qword [rbp + 0x12c0]
mov rcx, qword [rcx]
mov qword [r8], r10
mov qword [rax], r9
sub rsp, 0x20
call fcn.14010cd10
mov rcx, qword [rbp + 0x1360]
mov eax, dword [rbp + 0x6ec]
add rsp, 0x20
mov dl, byte [rcx]
mov r8b, 0x86
xor r8b, 0x86
mov cl, 1
cmp dl, r8b
mov byte [rbp + 0x533], cl
mov dword [rbp + 0x534], eax
jne 0x1401b574a
mov rax, qword [rbp + 0x12c0]
cmp qword [rax], 1
jge 0x1401b00b2
mov ecx, dword [rbp + 0x520]
mov rax, qword [0x14028b950]
mov qword [rbp + 0x1670], rax
mov rax, qword [0x14028b958]
mov qword [rbp + 0x1678], rax
lea rdx, [rbp + 0x1670]
sub rsp, 0x20
call fcn.1400f0ce0
mov rdx, qword [rbp + 0x1360]
mov eax, dword [rbp + 0x6ec]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x533], cl
mov dword [rbp + 0x534], eax
jne 0x1401b574a
mov ecx, dword [rbp + 0x520]
mov rax, qword [0x14028b950]
mov qword [rbp + 0x1660], rax
mov rax, qword [0x14028b958]
mov qword [rbp + 0x1668], rax
lea rdx, [rbp + 0x1660]
sub rsp, 0x20
call fcn.1400f0ce0
mov r8, qword [rbp + 0x1360]
mov eax, dword [rbp + 0x6ec]
add rsp, 0x20
mov edx, 0x1d4c0
mov cl, 1
cmp byte [r8], 0
mov qword [rbp + 0x500], rdx
mov dl, cl
mov byte [rbp + 0x50f], dl
mov edx, eax
mov dword [rbp + 0x510], edx
mov byte [rbp + 0x517], cl
mov dword [rbp + 0x518], eax
jne 0x1401b552e
mov rcx, qword [rbp + 0x500]
mov al, byte [rbp + 0x50f]
mov edx, dword [rbp + 0x510]
mov dword [rbp + 0x4ec], edx
mov byte [rbp + 0x4eb], al
mov qword [rbp + 0x4e0], rcx
sub rsp, 0x20
call fcn.140015f8d
mov cl, byte [rbp + 0x4eb]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x4ec]
mov qword [rbp + 0x4f0], rdx
mov byte [rbp + 0x4fb], cl
mov dword [rbp + 0x4fc], eax
jmp 0x1401b019b
mov cl, byte [rbp + 0x4df]
mov eax, dword [rbp + 0x4d8]
mov byte [rbp + 0x4fb], cl
mov dword [rbp + 0x4fc], eax
mov rbx, qword [rbp + 0x4f0]
mov rcx, qword [rbp + 0x12c0]
mov r10b, byte [rbp + 0x4fb]
mov eax, dword [rbp + 0x4fc]
mov dword [rbp + 0x4c4], eax
mov byte [rbp + 0x4c3], r10b
mov rax, qword [0x14028d070]
mov rax, qword [rax]
mov rcx, qword [rcx]
movabs rdx, 0x71849346c4175651
movabs r8, 0x71849346c4175651
xor rdx, r8
mov edi, 0x6cd25db9
xor edi, 0x6cd38979
mov esi, 0x1a526833
xor esi, 0x1a526830
mov r11b, 0xa4
xor r11b, 0xa4
xor r8d, r8d
mov r9d, r8d
lea r14, [rbp + 0x16d0]
sub rsp, 0x60
mov r8, r9
mov qword [rsp + 0x20], r14
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x30], edi
mov dword [rsp + 0x38], esi
mov byte [rsp + 0x40], r11b
mov qword [rsp + 0x48], 0
mov byte [rsp + 0x50], r10b
call rax
mov rdx, qword [rbp + 0x1360]
mov ecx, dword [rbp + 0x4c4]
add rsp, 0x60
mov r8d, eax
mov rax, qword [rbp + 0x4f0]
mov dword [rbp + 0x4c8], r8d
cmp byte [rdx], 0
mov dword [rbp + 0x4cc], ecx
mov qword [rbp + 0x4d0], rax
jne 0x1401b54f9
mov eax, dword [rbp + 0x4c8]
mov ecx, 0xe665e106
xor ecx, 0xe665e005
cmp eax, ecx
mov dword [rbp + 0x4bc], eax
jne 0x1401b066f
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
mov rcx, qword [rbp + 0x12c0]
mov r8, qword [rbp + 0x12e0]
add rsp, 0x20
mov qword [r8], 0
mov qword [r8], 0xffffffffffb3b4c0
mov rax, qword [0x14028d0a0]
mov rax, qword [rax]
mov rcx, qword [rcx]
mov edx, 1
sub rsp, 0x20
call rax
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0x1360]
mov dword [rbp + 0x4b8], ecx
cmp byte [rax], 0
jne 0x1401b052e
mov eax, dword [rbp + 0x4b8]
test eax, eax
je 0x1401b0456
jmp 0x1401b030f
mov eax, dword [rbp + 0x4b8]
sub eax, 0x102
jne 0x1401b03a2
jmp 0x1401b0325
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.140029060
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x14028d000]
mov qword [rcx], rax
lea rax, [0x14028b908]
mov qword [rcx + 0x10], rax
mov rax, qword [0x14028b978]
mov qword [rcx + 0x18], rax
mov rax, qword [0x14028b980]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x14028b908]
lea r8, [0x14028b919]
lea r9, [0x14028b921]
sub rsp, 0x30
mov qword [rsp + 0x20], 0xfffffffffad33b59
call fcn.140028fa8
add rsp, 0x30
jmp 0x1401b052e
movabs rcx, 0x222ce69c11c1523f
movabs rax, 0x222ce69c11c1527f
xor rcx, rax
movabs rdx, 0xc527db1bc9cb598b
movabs rax, 0xc527db1bc9cb5983
xor rdx, rax
sub rsp, 0x20
call fcn.140029060
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x14028d000]
mov qword [rcx], rax
lea rax, [0x14028b908]
mov qword [rcx + 0x10], rax
mov rax, qword [0x14028b978]
mov qword [rcx + 0x18], rax
mov rax, qword [0x14028b980]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
movabs rax, 0x54330c9ae3c0595a
movabs rdx, 0xabccf36563ea8abb
xor rax, rdx
lea rdx, [0x14028b908]
lea r8, [0x14028b919]
lea r9, [0x14028b921]
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.140028fa8
add rsp, 0x30
jmp 0x1401b052e
mov eax, dword [0x14027dbc8]
mov ecx, dword [0x14027dbcc]
xor ecx, 0x71094a63
xor edx, edx
div ecx
mov ecx, 0x9621777
xor edx, edx
div ecx
mov ecx, 0xa8a2cf09
xor ecx, 0xb30149c0
xor edx, edx
div ecx
mov ecx, 0x9f8a0c1e
xor edx, edx
div ecx
cmp eax, 0xd0636586
jae 0x1401b6158
mov eax, dword [0x14027dbd0]
mov r8d, dword [0x14027dbd4]
mov ecx, 0x28c0b05
xor ecx, 0xfd73f4fa
mov r9d, r8d
xor r9d, ecx
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
mov r9d, 0xaf3d2fa8
xor r9d, 0x50c2d057
xor ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xdf3e6a5d
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
sub eax, 0x986911cc
and eax, 0xbd5c7f90
mov ecx, 0x5cd2a83
xor ecx, 0x46c5a704
mov edx, dword [rbp + 0x16d0]
mov dword [rbp + 0x4b4], edx
cmp eax, ecx
jbe 0x1401b6158
mov eax, dword [rbp + 0x4b4]
mov dword [rbp + 0x4bc], eax
jmp 0x1401b066f
mov eax, dword [0x14027dbd8]
mov r8d, dword [0x14027dbdc]
xor r8d, 0x78ad091e
mov ecx, eax
xor ecx, 0xffffffff
mov edx, r8d
and edx, ecx
mov r9d, r8d
xor r9d, 0xffffffff
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
xor eax, 0x8dcf049c
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xb7398256
mov edx, 0xbd5c6a7c
xor edx, 0xa65e82a
mov r8d, 0xdae7d155
xor r8d, 0x25182eaa
xor edx, r8d
and eax, edx
sub eax, ecx
mov ecx, 0xd4ba312d
xor edx, edx
div ecx
cmp eax, 0x9107fa9b
je 0x1401b6161
mov ecx, dword [0x14027dbe0]
mov eax, dword [0x14027dbe4]
mov edx, 0x2f9bc7c2
xor edx, 0x4f6c7abe
add ecx, edx
add ecx, eax
mov eax, 0xee85583f
xor eax, 0x8e72e543
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x7c3541b8
mov edx, 0x7b333a67
xor edx, 0x7067bdf
mov r8d, 0x4fe36a03
xor r8d, 0xb01c95fc
xor edx, r8d
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x5c93e4ec
mov edx, 0xffffffff
xor edx, 0xcd4545b7
or eax, ecx
mov ecx, 0x5212fd8b
xor ecx, 0x9f57b83c
or ecx, edx
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0x1f42285
xor ecx, 0xa97bab
xor edx, edx
div ecx
cmp eax, 0x3eea74a5
je 0x1401b05ab
mov rax, qword [rbp + 0x4f0]
mov ecx, dword [rbp + 0x4c4]
mov dword [rbp + 0x4cc], ecx
mov qword [rbp + 0x4d0], rax
jmp 0x1401b54f9
mov rdx, qword [rbp + 0x770]
mov ecx, dword [rbp + 0x4bc]
mov dword [rbp + 0x4ac], ecx
mov eax, ecx
sub eax, 0x80000005
sete al
test ecx, ecx
sete cl
mov byte [rbp + 0x4b3], cl
mov rdx, qword [rdx]
test rdx, rdx
sete dl
and cl, dl
or al, cl
test al, 1
jne 0x1401b06b1
jmp 0x1401b0b0b
mov rcx, qword [rbp + 0x4e0]
mov rax, rcx
shl rax, 1
mov qword [rbp + 0x490], rax
cvtsi2sd xmm0, rcx
movsd xmm1, qword [0x14028b5c8]
mulsd xmm0, xmm1
movsd qword [rbp + 0x498], xmm0
cvtsi2sd xmm1, rax
movsd qword [rbp + 0x4a0], xmm1
ucomisd xmm0, xmm1
jne 0x1401b0701
jp 0x1401b0701
jmp 0x1401b085d
movsd xmm1, qword [rbp + 0x498]
movsd xmm0, qword [rbp + 0x4a0]
subsd xmm0, xmm1
sub rsp, 0x20
call fcn.140271c60
add rsp, 0x20
movaps xmm1, xmm0
movsd xmm0, qword [rbp + 0x498]
movsd qword [rbp + 0x488], xmm1
sub rsp, 0x20
call fcn.140271c60
movsd xmm1, qword [rbp + 0x488]
add rsp, 0x20
movsd xmm2, qword [0x14028b5d0]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
jae 0x1401b085d
mov eax, dword [0x14027dbe8]
mov ecx, dword [0x14027dbec]
or eax, eax
mov edx, 0x6c4c318c
xor edx, 0x93b3ce73
xor eax, edx
or ecx, ecx
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0xa252d3c7
xor edx, edx
div ecx
mov ecx, 0xf23eef62
xor ecx, 0x8c226248
or eax, ecx
mov ecx, 0x26c8c051
xor ecx, 0xd8b9541f
xor edx, edx
div ecx
mov ecx, 0xea69b2a0
xor ecx, 0x976d4e03
cmp eax, ecx
je 0x1401b616a
mov ecx, dword [0x14027dbf0]
imul ecx, dword [0x14027dbf4]
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xb0db234f
and eax, edx
mov edx, 0x3d32e463
xor edx, 0xc2cd1b9c
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0xb0db234f
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xf5fc1ef
add eax, ecx
add eax, 1
mov ecx, 0x7a1f6c31
xor ecx, 0x455468bb
xor edx, edx
div ecx
mov dword [rbp + 0x484], eax
sub rsp, 0x20
call fcn.14000f24b
mov eax, dword [rbp + 0x484]
add rsp, 0x20
cmp eax, 0x8fd3ed72
je 0x1401b07bd
mov rax, qword [rbp + 0x4f0]
mov ecx, dword [rbp + 0x4c4]
mov dword [rbp + 0x4cc], ecx
mov qword [rbp + 0x4d0], rax
jmp 0x1401b54f9
mov rax, qword [rbp + 0x490]
cmp rax, 0x100000
jl 0x1401b091a
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.140029060
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x14028cfb0]
mov qword [rcx], rax
lea rax, [0x14028b8c8]
mov qword [rcx + 0x10], rax
mov rax, qword [0x14028b978]
mov qword [rcx + 0x18], rax
mov rax, qword [0x14028b980]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
movabs rax, 0xe2917b231323eeba
movabs rdx, 0xe2917b231ff6a0c0
xor rax, rdx
lea rdx, [0x14028b8c8]
lea r8, [0x14028b919]
lea r9, [0x14028b921]
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.140028fa8
mov ecx, dword [rbp + 0x4c4]
mov rax, qword [rbp + 0x4f0]
add rsp, 0x30
mov dword [rbp + 0x4cc], ecx
mov qword [rbp + 0x4d0], rax
jmp 0x1401b54f9
mov ecx, dword [0x14027dbf8]
mov r8d, dword [0x14027dbfc]
mov eax, ecx
and eax, eax
mov edx, 0xc815338
xor edx, 0xf37eacc7
xor eax, edx
and eax, r8d
xor eax, 0xffffffff
mov r9d, 0x47173f61
xor r9d, 0xb8e8c09e
mov edx, r8d
xor edx, r9d
xor r8d, 0xffffffff
or edx, r8d
and ecx, edx
mov edx, 0x2fa340b9
xor edx, 0xd05cbf46
xor ecx, edx
and eax, ecx
xor eax, 0xffffffff
or eax, 0xa4121c53
sub eax, 0x280408bd
mov ecx, 0x167598d5
xor ecx, 0x6dadfa97
sub eax, ecx
cmp eax, 0xec0fd60e
jae 0x1401b6173
mov rcx, qword [rbp + 0x4f0]
mov esi, dword [0x14027dc00]
mov edx, dword [0x14027dc04]
xor edx, 0xf6489714
mov eax, esi
xor eax, edx
xor eax, 0xffffffff
mov r8d, edx
and r8d, eax
mov eax, 0x1f557f6f
xor eax, 0x1f557f6d
imul eax, r8d
sub eax, edx
sub esi, eax
and esi, 0xdf2ee934
add esi, 0xbbac3e53
mov eax, 0x8970cdb1
xor eax, 0x768f324e
mov edx, esi
xor edx, eax
mov r9d, 0xffffffff
xor r9d, 0xc00bf29a
mov r8d, 0xffffffff
xor r8d, 0x8734b080
mov eax, edx
and eax, 0x8734b080
and esi, r8d
mov r11d, 0x687d305f
xor r11d, 0xef4980df
mov r10d, r9d
and r10d, r11d
mov r11d, r8d
and r11d, 0xc00bf29a
or eax, esi
or r10d, r11d
xor eax, r10d
or edx, r9d
xor edx, 0xffffffff
or r8d, 0x8734b080
and edx, r8d
or eax, edx
mov dword [rbp + 0x47c], eax
sub rsp, 0x20
call fcn.14003b4d4
mov rcx, qword [rbp + 0x490]
mov eax, dword [rbp + 0x47c]
add rsp, 0x20
cmp rcx, 0
setl cl
mov byte [rbp + 0x483], cl
cmp eax, 0xaec7ac58
je 0x1401b098e
mov eax, dword [rbp + 0x4c4]
mov cl, byte [rbp + 0x4c3]
mov rdx, qword [rbp + 0x490]
mov r8b, byte [rbp + 0x483]
test r8b, 1
mov qword [rbp + 0x500], rdx
mov byte [rbp + 0x50f], cl
mov dword [rbp + 0x510], eax
jne 0x1401b0aaf
jmp 0x1401b0129
mov rcx, qword [rbp + 0x490]
movabs rdx, 0x7a5cd69af7cacbf7
movabs rax, 0x7a5cd69af7cacbf7
xor rdx, rax
movabs r8, 0x1897d04dafc085bf
movabs rax, 0x67682fb2503f7a40
xor r8, rax
sub rsp, 0x20
call fcn.14001a720
mov ecx, dword [rbp + 0x4c4]
add rsp, 0x20
xor eax, eax
mov dword [rbp + 0x4cc], ecx
mov qword [rbp + 0x4d0], rax
jmp 0x1401b54f9
mov ecx, dword [0x14027dc08]
mov r8d, dword [str.Mrs]
mov eax, 0xc8b24cc6
xor eax, 0x374db339
mov r9d, r8d
xor r9d, eax
mov edx, ecx
and edx, r9d
mov eax, ecx
or eax, r9d
mov r9d, 0xee49c0f8
xor r9d, 0x11b63f07
xor eax, r9d
imul eax, edx
mov edx, ecx
and edx, r8d
or ecx, r8d
imul ecx, edx
add ecx, eax
sub ecx, 0xbd22999b
xor ecx, 0xdb27f682
mov eax, ecx
or eax, 0x9003d991
xor eax, 0xffffffff
or ecx, 0x9003d991
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
cmp eax, 0x15971c84
jb 0x1401b617c
mov r8d, dword [0x14027dc10]
mov ecx, dword [0x14027dc14]
xor ecx, 0xff9e12a4
or r8d, r8d
mov eax, 0xfded32d3
xor eax, 0x212cd2c
xor r8d, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
xor r8d, 0xffffffff
xor eax, 0xffffffff
and r8d, eax
mov ecx, r8d
xor ecx, 0xffffffff
mov eax, 0xbb518790
xor eax, 0xfe93b426
and eax, ecx
mov edx, 0xffffffff
xor edx, 0x45c233b6
and r8d, edx
mov ecx, 0xffffffff
xor ecx, 0xc95d334f
and ecx, 0x45c233b6
and edx, 0xc95d334f
or eax, r8d
or ecx, edx
xor eax, ecx
or eax, 0xa939b774
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xdbabdb48
mov edx, 0x9fc50485
xor edx, 0x446edfcd
mov r8d, 0xdce7f459
xor r8d, 0x23180ba6
xor edx, r8d
and eax, edx
sub eax, ecx
cmp eax, 0x730d0869
je 0x1401b0b84
mov eax, dword [rbp + 0x4c4]
mov rcx, qword [rbp + 0x4f0]
mov dl, byte [rbp + 0x4b3]
test dl, 1
mov qword [rbp + 0x470], rcx
mov dword [rbp + 0x478], eax
jne 0x1401b0c61
jmp 0x1401b5429
mov rcx, qword [rbp + 0x470]
mov eax, dword [rbp + 0x478]
mov dword [rbp + 0x454], eax
mov qword [rbp + 0x458], rcx
mov rdx, rcx
add rdx, 0x3c
mov qword [rbp + 0x460], rdx
cmp dword [rcx + 0x3c], 0
mov dword [rbp + 0x46c], eax
je 0x1401b514e
mov rax, qword [rbp + 0x458]
mov rcx, rax
add rcx, 0x38
mov qword [rbp + 0x440], rcx
mov ecx, dword [rax + 0x38]
and ecx, 0x10
sub rsp, 0x20
call fcn.1400e7c9c
mov rcx, qword [rbp + 0x1360]
add rsp, 0x20
mov cl, byte [rcx]
xor edx, edx
mov r9b, dl
test cl, cl
sete dl
and dl, al
mov eax, 0x5c
mov r8d, 0x6b
cmp cl, r9b
cmove eax, r8d
test dl, 1
mov byte [rbp + 0x44f], cl
mov dword [rbp + 0x450], eax
jne 0x1401b0d02
jmp 0x1401b2efc
mov rax, qword [rbp + 0x460]
mov eax, dword [rax]
mov dword [rbp + 0x43c], eax
sub eax, 2
je 0x1401b0e73
jmp 0x1401b0d1f
mov eax, dword [rbp + 0x43c]
sub eax, 4
jne 0x1401b1102
jmp 0x1401b0d33
mov rax, qword [rbp + 0x458]
mov rcx, rax
add rcx, 0x5e
mov qword [rbp + 0x430], rcx
mov ax, word [rax + 0x5e]
mov word [rbp + 0x43a], ax
cmp ax, 0xff
jbe 0x1401b0d91
mov ax, word [rbp + 0x43a]
movzx eax, ax
mov ecx, eax
xor eax, eax
mov edx, eax
mov r8d, 0xff
sub rsp, 0x20
call fcn.14001a720
mov eax, dword [rbp + 0x454]
add rsp, 0x20
mov dword [rbp + 0x42c], eax
jmp 0x1401b2e86
mov ax, word [rbp + 0x43a]
cmp ax, 0x2e
jne 0x1401b1178
mov rax, qword [rbp + 0x430]
movabs rcx, 0xb1143784a631696
sub rax, rcx
movabs rcx, 0xcc274a031093c744
movabs rdx, 0xcc274a031093c746
xor rcx, rdx
add rax, rcx
movabs rcx, 0xba5f139138ef933c
movabs rdx, 0xb14e50e9728c85aa
xor rcx, rdx
add rax, rcx
mov ax, word [rax]
mov word [rbp + 0x42a], ax
mov cx, 0xe807
xor cx, 0xe8f8
cmp ax, cx
jbe 0x1401b0e3a
mov ax, word [rbp + 0x42a]
movzx eax, ax
mov ecx, eax
xor eax, eax
mov edx, eax
mov r8d, 0xff
sub rsp, 0x20
call fcn.14001a720
mov eax, dword [rbp + 0x454]
add rsp, 0x20
mov dword [rbp + 0x42c], eax
jmp 0x1401b2e86
mov eax, dword [rbp + 0x454]
mov r8w, word [rbp + 0x42a]
xor ecx, ecx
mov dl, cl
mov ecx, 0x6a
cmp r8w, 0x2e
mov byte [rbp + 0x41f], dl
mov dword [rbp + 0x420], ecx
mov dword [rbp + 0x424], eax
je 0x1401b2ed3
jmp 0x1401b1178
mov rax, qword [rbp + 0x458]
mov ax, word [rax + 0x5e]
mov word [rbp + 0x41c], ax
cmp ax, 0xff
jbe 0x1401b0f9e
mov eax, dword [0x14027dc18]
or eax, dword [0x14027dc1c]
imul eax, eax, 0xbdaf1c60
mov ecx, 0xffffffff
xor ecx, 0xf9d00b06
add eax, ecx
add eax, 1
mov edx, eax
xor edx, 0xffffffff
and edx, 0xb30e533c
mov r8d, 0xffffffff
xor r8d, 0xb30e533c
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0xfa0e6c5b
xor r8d, 0x49003f67
mov edx, eax
and edx, r8d
mov r8d, 0x5c8cdc2d
xor r8d, 0xef828f11
or eax, r8d
imul eax, edx
add eax, ecx
cmp eax, 0x3047903d
jb 0x1401b6185
mov ax, word [rbp + 0x41c]
mov ecx, dword [0x14027dc20]
mov r9d, dword [0x14027dc24]
mov edx, ecx
xor edx, 0xffffffff
mov r8d, r9d
and r8d, edx
mov r10d, r9d
xor r10d, 0xffffffff
mov edx, ecx
and edx, r10d
imul edx, r8d
mov r8d, ecx
and r8d, r9d
or ecx, r9d
imul ecx, r8d
add ecx, edx
sub ecx, 0x7e3c8ab5
mov edx, 0xc128b260
xor edx, 0x522be84f
xor ecx, edx
sub ecx, 0xde74137
mov dword [rbp + 0x418], ecx
movzx eax, ax
mov ecx, eax
xor eax, eax
mov edx, eax
mov r8d, 0xff
sub rsp, 0x20
call fcn.14001a720
mov eax, dword [rbp + 0x418]
add rsp, 0x20
cmp eax, 0x4a1ee29f
jb 0x1401b0f03
mov eax, dword [rbp + 0x454]
mov dword [rbp + 0x42c], eax
jmp 0x1401b2e86
mov eax, dword [0x14027dc28]
xor eax, 0x63ce26c1
mov edx, dword [0x14027dc2c]
xor eax, 0xffffffff
xor edx, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x77ddb9f7
or eax, edx
or ecx, 0x77ddb9f7
xor eax, 0xffffffff
and eax, ecx
imul eax, eax, 0x6c3e3df8
mov r8d, 0xffffffff
xor r8d, 0xe7cfd321
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xe7cfd321
or eax, 0xe7cfd321
imul eax, edx
add eax, ecx
mov ecx, 0x8eed17f0
xor edx, edx
div ecx
cmp eax, 0x3ee29871
jae 0x1401b618e
mov cx, word [rbp + 0x41c]
mov eax, dword [0x14027dc30]
xor edx, edx
div dword [0x14027dc34]
mov edx, eax
mov eax, edx
and eax, eax
xor eax, 0xffffffff
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x5f165f08
or eax, r8d
mov r8d, 0x5f03b44a
xor r8d, 0x15eb42
mov r9d, 0xe61a6ee4
xor r9d, 0x19e5911b
xor r8d, r9d
mov r9d, 0xffffffff
xor r9d, 0x5f165f08
or r8d, r9d
xor edx, 0xffffffff
xor r8d, 0xffffffff
or edx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
or eax, edx
mov edx, 0xdf35ddec
xor edx, 0x858da59c
mov r8d, 0xe15ca597
xor r8d, 0x1ea35a68
xor edx, r8d
add eax, edx
add eax, 1
mov edx, 0x52249e20
xor edx, 0x6b08ef7b
or eax, edx
cmp cx, 0x2e
sete cl
mov byte [rbp + 0x417], cl
cmp eax, 0xe3734203
jae 0x1401b1016
mov eax, dword [rbp + 0x454]
mov r8b, byte [rbp + 0x417]
xor ecx, ecx
mov dl, cl
mov ecx, 0x6a
test r8b, 1
mov byte [rbp + 0x41f], dl
mov dword [rbp + 0x420], ecx
mov dword [rbp + 0x424], eax
jne 0x1401b2ed3
jmp 0x1401b1178
mov eax, dword [rbp + 0x43c]
cmp eax, 0xffffffff
jge 0x1401b1178
mov eax, dword [rbp + 0x43c]
mov ecx, 0xaf391d45
xor ecx, 0xaf391d45
mov edx, 0x3efecb6a
xor edx, 0x10fb95cf
add ecx, edx
sub ecx, eax
sub ecx, 0x2e055ea5
shr ecx, 1
mov eax, 0xdb5231ce
add eax, 0
sub eax, ecx
sub eax, 0xdb5231ce
movsxd rcx, eax
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14001a720
mov eax, dword [rbp + 0x454]
add rsp, 0x20
mov dword [rbp + 0x42c], eax
jmp 0x1401b2e86
mov eax, dword [0x14027dc38]
xor eax, 0x7db54dd4
add eax, dword [0x14027dc3c]
or eax, 0xdcd8a691
mov ecx, eax
and ecx, 0x45102016
shl ecx, 1
xor eax, 0x45102016
add eax, ecx
imul eax, eax, 0x43ed251f
mov ecx, 0x66b9ef53
xor ecx, 0x508f9635
cmp eax, ecx
jb 0x1401b6197
mov rcx, qword [rbp + 0x12f0]
mov eax, dword [rbp + 0x43c]
mov rdx, qword [rbp + 0x458]
mov r8d, dword [0x14027dc40]
mov r9d, dword [0x14027dc44]
xor r9d, 0x1eb681b0
xor r9d, 0xffffffff
mov r10d, 0x8f3cb54c
xor r10d, 0x8f3cb54c
mov r11d, 0xb6fd306e
xor r11d, 0xb6fd306f
sub r10d, r11d
sub r9d, r10d
sub r8d, r9d
sub r8d, 0x74a56a34
imul r8d, r8d, 0xec895353
mov r9d, 0xf29f50d9
xor r9d, 0x56f616eb
imul r8d, r9d
mov dword [rbp + 0x3fc], r8d
mov r8d, 0x83e487cc
xor r8d, 0x74c26c8d
mov dword [rbp + 0x3f8], r8d
add rdx, 0x5e
mov qword [rbp + 0x3f0], rdx
mov r8d, 0x95340f18
xor r8d, 0x95340f1a
cdq
idiv r8d
mov rdx, qword [rbp + 0x3f0]
mov eax, eax
mov r8d, eax
sub rsp, 0x20
call fcn.1400ebd10
mov r9, qword [rbp + 0x12f0]
mov r8, qword [rbp + 0x778]
mov rdx, qword [rbp + 0x1360]
mov ecx, dword [rbp + 0x3f8]
mov eax, dword [rbp + 0x3fc]
add rsp, 0x20
mov r9, qword [r9]
mov qword [rbp + 0x400], r9
mov r8, qword [r8]
mov qword [rbp + 0x408], r8
cmp byte [rdx], 0
sete dl
mov byte [rbp + 0x416], dl
cmp eax, ecx
je 0x1401b11b9
mov eax, dword [rbp + 0x454]
mov r8b, byte [rbp + 0x416]
mov dl, 1
mov ecx, 0x5c
test r8b, 1
mov byte [rbp + 0x41f], dl
mov dword [rbp + 0x420], ecx
mov dword [rbp + 0x424], eax
jne 0x1401b12f6
jmp 0x1401b2ed3
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov qword [rbp + 0x3e0], rax
add rax, 0x60
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
mov rcx, qword [rbp + 0x408]
mov r8, qword [rbp + 0x400]
add rsp, 0x20
mov rax, qword [rbp + 0x3e0]
add rcx, 8
lea rdx, [0x14028b9f8]
cmp r8, 0
cmove rcx, rdx
mov qword [rbp + 0x3e8], rcx
cmp byte [rax + 0x60], 0
jne 0x1401b142a
mov rax, qword [rbp + 0x400]
mov ecx, 2
cqo
idiv rcx
mov r8, rax
mov rax, qword [rbp + 0x400]
movabs rcx, 0x93485b1ac19a0a5c
movabs rdx, 0x6cb7a4e53e65f5a3
xor rcx, rdx
mov rdx, r8
add rdx, rcx
mov qword [rbp + 0x3d8], rdx
mov r9, rdx
xor r9, 0xffffffffffffffff
mov rcx, r8
and rcx, r9
xor r8, 0xffffffffffffffff
and rdx, r8
or rcx, rdx
movabs rdx, 0xa336ab812371fc1c
movabs r8, 0xa336ab812371fc1c
xor rdx, r8
cmp rcx, rdx
setl cl
cmp rax, 1
setg al
and al, cl
test al, 1
jne 0x1401b141d
mov rdx, qword [rbp + 0x3e8]
mov rax, qword [rbp + 0x3d8]
xor ecx, ecx
test rax, rax
mov r8d, ecx
cmovg r8, rax
lea rcx, [rbp + 0x1650]
sub rsp, 0x20
call fcn.1400eaab0
add rsp, 0x20
jmp 0x1401b142a
sub rsp, 0x20
call fcn.14000f24b
add rsp, 0x20
mov eax, dword [rbp + 0x454]
mov rcx, qword [rbp + 0x1360]
mov rdx, qword [rbp + 0x780]
mov r8, qword [rbp + 0x1650]
mov qword [rbp + 0x3b8], r8
mov rdx, qword [rdx]
mov qword [rbp + 0x3c0], rdx
mov dl, byte [rcx]
mov r8b, 0x50
xor r8b, 0x50
xor ecx, ecx
cmp dl, r8b
mov qword [rbp + 0x3c8], rcx
mov dword [rbp + 0x3d4], eax
jne 0x1401b2c70
mov rcx, qword [rbp + 0x3c0]
mov rdx, qword [rbp + 0x3b8]
mov rdi, qword [rbp + 0x798]
mov rsi, qword [rbp + 0x790]
mov rax, qword [rbp + 0x788]
mov r8, qword [rbp + 0x12e8]
mov byte [r8], 1
mov qword [rbp + 0x1630], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x1640]
lea rdx, [rbp + 0x1630]
sub rsp, 0x20
call fcn.140039831
mov r11, qword [rbp + 0x7a0]
mov r10, qword [rbp + 0x6c0]
mov r9, qword [rbp + 0x6c8]
mov r8, qword [rbp + 0x7a8]
mov rdx, qword [rbp + 0x3b8]
mov rax, qword [rbp + 0x7b0]
mov rcx, qword [rbp + 0x3c0]
add rsp, 0x20
mov rbx, qword [rbp + 0x1640]
mov rsi, qword [rsi]
mov qword [rdi], rbx
mov qword [r11], rsi
mov qword [rbp + 0x1610], r10
mov qword [r8], r9
mov qword [rbp + 0x1600], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x1620]
lea rdx, [rbp + 0x1610]
lea r8, [rbp + 0x1600]
sub rsp, 0x20
call fcn.1400ca2e0
mov r8, qword [rbp + 0x7b8]
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0x3c0]
mov eax, dword [rbp + 0x454]
add rsp, 0x20
mov r9, qword [rbp + 0x1620]
mov qword [rbp + 0x3a8], r9
mov r8, qword [r8]
mov qword [rbp + 0x3b0], r8
cmp byte [rdx], 0
mov qword [rbp + 0x3c8], rcx
mov dword [rbp + 0x3d4], eax
jne 0x1401b2c70
mov rdx, qword [rbp + 0x12e8]
mov rax, qword [rbp + 0x7d0]
mov rcx, qword [rbp + 0x7c8]
mov r8, qword [rbp + 0x3b0]
mov r9, qword [rbp + 0x7c0]
mov r10, qword [rbp + 0x3a8]
mov qword [r9], r10
mov qword [rcx], r8
mov qword [rax], 0
lea rcx, [rbp + 0x1728]
sub rsp, 0x20
call fcn.14010d470
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0x3c0]
mov eax, dword [rbp + 0x454]
add rsp, 0x20
mov dl, byte [rdx]
mov r8b, 0xe
xor r8b, 0xe
cmp dl, r8b
mov qword [rbp + 0x3c8], rcx
mov dword [rbp + 0x3d4], eax
jne 0x1401b2c70
mov eax, dword [0x14027dc48]
xor eax, 0xb34ffafd
add eax, dword [0x14027dc4c]
mov edx, eax
xor edx, 0xffffffff
and edx, 0x3d805f2b
mov r8d, 0xffffffff
xor r8d, 0x3d805f2b
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0x1d93956d
xor r8d, 0x2013ca46
mov edx, eax
and edx, r8d
or eax, 0x3d805f2b
imul eax, edx
add eax, ecx
mov ecx, 0x952a4cd9
xor edx, edx
div ecx
xor eax, 0xdb6ed5d4
cmp eax, 0x88bd426c
je 0x1401b61a0
mov r8d, dword [0x14027dc50]
mov eax, dword [0x14027dc54]
xor eax, 0xd61a62dc
xor r8d, eax
mov ecx, r8d
xor ecx, 0xffffffff
and ecx, 0x2e378e8b
mov edx, 0xffffffff
xor edx, 0x2e378e8b
and r8d, edx
mov eax, 0x61c84ba4
xor eax, 0x4199a04b
mov r9d, 0x896b098a
xor r9d, 0x7694f675
xor eax, r9d
and eax, 0x2e378e8b
and edx, 0x2051ebef
or ecx, r8d
or eax, edx
xor ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x3349fb22
mov edx, 0xffffffff
xor edx, 0x3349fb22
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
or eax, 0x254837a
mov ecx, 0xd24d9134
xor ecx, 0xa62fe9db
mov dl, byte [rbp + 0x1728]
mov byte [rbp + 0x3a6], dl
cmp dl, 1
sete dl
mov byte [rbp + 0x3a7], dl
cmp eax, ecx
jb 0x1401b61a0
mov al, byte [rbp + 0x3a6]
mov cl, byte [rbp + 0x3a7]
test cl, 1
mov byte [rbp + 0x3a5], al
jne 0x1401b1740
jmp 0x1401b1ca4
mov rax, qword [rbp + 0x7d8]
mov rcx, qword [rbp + 0x1368]
mov rdx, qword [rcx]
mov qword [rbp + 0x15f0], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x15f8], rcx
mov rcx, qword [rax]
mov qword [rbp + 0x15e0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x15e8], rax
lea rcx, [rbp + 0x15f0]
lea rdx, [rbp + 0x15e0]
sub rsp, 0x20
call fcn.14010d720
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0x3c0]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp + 0x454]
mov qword [rbp + 0x398], r8
cmp byte [rdx], 0
mov qword [rbp + 0x3c8], rcx
mov dword [rbp + 0x3d4], eax
jne 0x1401b2c70
mov rcx, qword [rbp + 0x398]
movabs rax, 0x79fbe648a72d7136
movabs rdx, 0x79fbe648a72d7137
xor rax, rdx
mov rdx, rcx
and rdx, rax
shl rdx, 1
mov rax, rcx
xor rax, 1
add rax, rdx
mov qword [rbp + 0x390], rax
movabs r8, 0x1648b4791065013f
movabs rdx, 0xe9b74b86ef9afec0
xor r8, rdx
mov rdx, rcx
xor rdx, r8
mov r8, rcx
xor r8, 0xffffffffffffffff
or rdx, r8
movabs r8, 0x4006929f9c18c368
movabs r9, 0xbff96d6063e73c97
xor r8, r9
and rdx, r8
xor rdx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
movabs r9, 0xf98daf29d9235006
movabs r10, 0x67250d626dcaff9
xor r9, r10
movabs r10, 0x18bd50600597350c
movabs r11, 0xe742af9ffa68caf3
xor r10, r11
xor r9, r10
or r8, r9
and rcx, r8
movabs r8, 0xa150536956f62185
movabs r9, 0x5eafac96a909de7a
xor r8, r9
xor rcx, r8
xor rdx, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
or rdx, rcx
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
or rax, rdx
add rax, rcx
movabs rcx, 0x85d00b8cffc60a84
movabs rdx, 0x85d00b8cffc60a84
xor rcx, rdx
cmp rax, rcx
jge 0x1401b1909
sub rsp, 0x20
call fcn.14000f24b
mov rcx, qword [rbp + 0x3c0]
mov eax, dword [rbp + 0x454]
add rsp, 0x20
mov qword [rbp + 0x3c8], rcx
mov dword [rbp + 0x3d4], eax
jmp 0x1401b2c70
mov eax, dword [0x14027dc58]
mov edx, dword [0x14027dc5c]
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
or eax, edx
and eax, ecx
mov ecx, 0x419a5111
xor ecx, 0x9ebd7f84
xor edx, edx
div ecx
imul eax, eax, 0x634fb8cf
mov ecx, 0xa82fb226
xor ecx, 0x81b125ba
xor edx, edx
div ecx
cmp eax, 0x9cbc8424
ja 0x1401b61a9
mov eax, dword [0x14027dc60]
xor edx, edx
div dword [0x14027dc64]
mov ecx, eax
mov r8d, 0xffffffff
xor r8d, 0x20984bde
mov edx, ecx
and edx, r8d
mov eax, ecx
or eax, r8d
xor eax, 0xffffffff
imul eax, edx
mov edx, ecx
and edx, 0x20984bde
mov r8d, 0x2ef9dc99
xor r8d, 0xe619747
or ecx, r8d
imul ecx, edx
add ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x53cb6f4d
mov edx, 0xffffffff
xor edx, 0x53cb6f4d
and ecx, edx
or eax, ecx
mov ecx, 0x491fbd1f
xor edx, edx
div ecx
mov rdx, qword [rbp + 0x7e0]
mov ecx, 0x29bacc4c
xor ecx, 0x62919cc
mov edx, dword [rdx]
mov dword [rbp + 0x388], edx
mov r8d, 0x7c89559c
xor r8d, 0x8376aa63
cmp edx, r8d
sete dl
mov byte [rbp + 0x38f], dl
cmp eax, ecx
jae 0x1401b61a9
mov al, byte [rbp + 0x38f]
test al, 1
jne 0x1401b1a09
jmp 0x1401b1a82
mov rax, qword [rbp + 0x7d8]
mov rcx, qword [rax]
mov qword [rbp + 0x15c0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x15c8], rax
lea rcx, [rbp + 0x15d0]
lea rdx, [rbp + 0x15c0]
sub rsp, 0x20
call fcn.140039831
mov rcx, qword [rbp + 0x7f8]
mov rax, qword [rbp + 0x800]
add rsp, 0x20
mov rdx, qword [rbp + 0x15d0]
mov rcx, qword [rcx]
mov qword [rbp + 0x15b0], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x1778]
lea rdx, [rbp + 0x15b0]
sub rsp, 0x20
call fcn.1400363f2
add rsp, 0x20
jmp 0x1401b1c98
mov eax, dword [0x14027dc68]
xor eax, 0x1ab8710b
mov ecx, dword [0x14027dc6c]
xor ecx, 0xe6a9c407
mov edx, 0x2717eb24
xor edx, 0xd8e814db
xor eax, edx
xor ecx, 0xffffffff
mov edx, 0x62ee05a0
xor edx, 0x2ca2f894
mov r8d, 0xc553ab77
xor r8d, 0x3aac5488
xor edx, r8d
or eax, ecx
mov ecx, 0x6f2f1d36
xor ecx, 0x2163e002
or ecx, edx
xor eax, 0xffffffff
and eax, ecx
mov edx, eax
xor edx, 0x2dc5a973
xor edx, 0xffffffff
mov ecx, 0xc4d90065
xor ecx, 0xe91ca916
and ecx, edx
shl ecx, 1
sub ecx, 0x2dc5a973
sub eax, ecx
mov ecx, 0x1b560214
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x23af4e2e
mov edx, 0xffffffff
xor edx, 0x23af4e2e
and eax, edx
sub eax, ecx
cmp eax, 0x95c6653
je 0x1401b61b2
mov rcx, qword [rbp + 0x390]
mov edx, dword [rbp + 0x388]
mov r8d, dword [0x14027dc70]
mov eax, 0x39d289a8
xor eax, 0xb9dab02b
xor r8d, eax
mov r9d, dword [0x14027dc74]
xor r9d, 0xb2830c2e
mov eax, r8d
and eax, eax
mov r10d, 0x13558143
xor r10d, 0xecaa7ebc
xor eax, r10d
and eax, r9d
mov r10d, 0x12567fba
xor r10d, 0xeda98045
xor eax, r10d
and r9d, r9d
mov r10d, 0x5c170fe0
xor r10d, 0xa3e8f01f
xor r9d, r10d
and r8d, r9d
mov r9d, 0x4771faab
xor r9d, 0xb88e0554
xor r8d, r9d
mov r9d, 0xd245b6cb
xor r9d, 0x2dba4934
xor eax, r9d
mov r9d, 0x9ed58e18
xor r9d, 0x612a71e7
xor r8d, r9d
or eax, r8d
mov r8d, eax
and r8d, 0x167db10e
xor r8d, 0xffffffff
add eax, 0x167db10e
mov r9d, 0x2d630ca2
xor r9d, 0x2d630ca3
add eax, r9d
add eax, r8d
imul eax, eax, 0xdb4654dd
imul eax, eax, 0xf43fe962
movsxd rdx, edx
cmp rcx, rdx
setg cl
mov byte [rbp + 0x387], cl
cmp eax, 0x6044aefd
je 0x1401b61b2
mov al, byte [rbp + 0x387]
test al, 1
jne 0x1401b1c98
jmp 0x1401b1c28
mov rax, qword [rbp + 0x7d8]
mov rcx, qword [rax]
mov qword [rbp + 0x1590], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1598], rax
lea rcx, [rbp + 0x15a0]
lea rdx, [rbp + 0x1590]
sub rsp, 0x20
call fcn.140039831
mov rcx, qword [rbp + 0x7e8]
mov rax, qword [rbp + 0x7f0]
mov rdx, qword [rbp + 0x12f8]
add rsp, 0x20
mov r8, qword [rbp + 0x15a0]
mov rcx, qword [rcx]
mov qword [rdx], r8
mov qword [rax], rcx
lea rcx, [rbp + 0x1778]
sub rsp, 0x20
call fcn.1400363f2
add rsp, 0x20
mov al, byte [rbp + 0x1728]
mov byte [rbp + 0x3a5], al
mov eax, dword [rbp + 0x454]
mov rcx, qword [rbp + 0x3c0]
mov dl, byte [rbp + 0x3a5]
cmp dl, 2
mov qword [rbp + 0x3c8], rcx
mov dword [rbp + 0x3d4], eax
jae 0x1401b2c70
lea rcx, [rbp + 0x1788]
lea rdx, [rbp + 0x1728]
sub rsp, 0x20
call fcn.14010d470
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0x3c0]
mov eax, dword [rbp + 0x454]
add rsp, 0x20
cmp byte [rdx], 0
mov qword [rbp + 0x3c8], rcx
mov dword [rbp + 0x3d4], eax
jne 0x1401b2c70
sub rsp, 0x20
lea rcx, [rbp + 0x1728]
call fcn.14010e041
add rsp, 0x20
mov al, byte [rbp + 0x1788]
mov byte [rbp + 0x386], al
test al, al
je 0x1401b250a
jmp 0x1401b1d3f
mov eax, dword [rbp + 0x454]
mov rcx, qword [rbp + 0x3c0]
mov dl, byte [rbp + 0x386]
sub dl, 1
mov qword [rbp + 0x3c8], rcx
mov dword [rbp + 0x3d4], eax
jne 0x1401b2c70
jmp 0x1401b1d6d
mov eax, dword [rbp + 0x454]
mov rcx, qword [rbp + 0x3c0]
mov rdx, qword [rbp + 0x1358]
mov dl, byte [rdx]
mov r8b, 0xf3
xor r8b, 0xf3
cmp dl, r8b
mov qword [rbp + 0x3c8], rcx
mov dword [rbp + 0x3d4], eax
jne 0x1401b2c70
mov eax, dword [rbp + 0x454]
mov rcx, qword [rbp + 0x3c0]
mov rdx, qword [rbp + 0x7e0]
cmp dword [rdx], 1
mov qword [rbp + 0x3c8], rcx
mov dword [rbp + 0x3d4], eax
jne 0x1401b2c70
mov rax, qword [rbp + 0x858]
mov rcx, qword [rax]
sub rsp, 0x20
xor eax, eax
mov edx, eax
call fcn.140081680
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0x3c0]
add rsp, 0x20
mov r8b, al
mov eax, dword [rbp + 0x454]
mov dl, byte [rdx]
test dl, dl
setne dl
or dl, r8b
test dl, 1
mov qword [rbp + 0x3c8], rcx
mov dword [rbp + 0x3d4], eax
jne 0x1401b2c70
mov rax, qword [rbp + 0x858]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400820c9
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0x3c0]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp + 0x454]
mov dl, byte [rdx]
test dl, dl
sete dl
test r8, r8
setg r8b
and dl, r8b
test dl, 1
mov qword [rbp + 0x3c8], rcx
mov dword [rbp + 0x3d4], eax
jne 0x1401b1e76
jmp 0x1401b2c70
mov rdx, qword [rbp + 0x1300]
mov rax, qword [rbp + 0x820]
mov rcx, qword [rbp + 0x858]
mov rcx, qword [rcx]
movups xmm0, xmmword [rax]
movups xmmword [rdx], xmm0
sub rsp, 0x20
call fcn.140082138
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0x3c0]
add rsp, 0x20
mov r8b, al
mov eax, dword [rbp + 0x454]
mov dl, byte [rdx]
test dl, dl
sete dl
and dl, r8b
test dl, 1
mov qword [rbp + 0x3c8], rcx
mov dword [rbp + 0x3d4], eax
jne 0x1401b1edd
jmp 0x1401b2c70
mov rax, qword [rbp + 0x820]
mov rcx, qword [rbp + 0x858]
mov rcx, qword [rcx]
mov rdx, qword [rax]
mov qword [rbp + 0x1580], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1588], rax
lea rdx, [rbp + 0x1580]
sub rsp, 0x20
call fcn.14008276f
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0x3c0]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp + 0x454]
mov qword [rbp + 0x378], r8
cmp byte [rdx], 0
mov qword [rbp + 0x3c8], rcx
mov dword [rbp + 0x3d4], eax
jne 0x1401b2c70
mov rax, qword [rbp + 0x378]
mov rax, qword [rax]
mov qword [rbp + 0x370], rax
cmp rax, 0
je 0x1401b20c0
mov rax, qword [rbp + 0x370]
movabs rcx, 0xc6e233645ec9b439
movabs rdx, 0x391dcc9ba1364bc9
xor rcx, rdx
movabs rdx, 0xe740422733a71cd5
movabs r8, 0x18bfbdd8cc58e32a
xor rdx, r8
xor rcx, rdx
xor edx, edx
sub rdx, 1
sub rcx, rdx
sub rax, rcx
mov qword [rbp + 0x360], rax
mov rax, qword [rax]
movabs rdx, 0xcc624ff119229a4f
movabs rcx, 0xcc624ff119229a5f
xor rdx, rcx
movabs rcx, 0xcc8312ca328a2a6d
movabs r8, 0x337ced35cd75d592
xor rcx, r8
xor rdx, rcx
xor ecx, ecx
sub rcx, 1
sub rdx, rcx
mov rcx, rax
sub rcx, rdx
mov qword [rbp + 0x368], rcx
mov rdx, rax
xor rdx, 0xffffffffffffffff
mov r8, rax
xor r8, 0xffffffffffffffff
or rdx, r8
and rdx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
mov r9, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
or r8, r9
and rax, r8
xor rax, 0xffffffffffffffff
and rdx, rax
xor rdx, 0xffffffffffffffff
mov rax, rcx
and rax, rdx
movabs r8, 0xf4a490143948b0da
movabs r9, 0xb5b6febc6b74f25
xor r8, r9
xor rax, r8
and rcx, rdx
xor rcx, 0xffffffffffffffff
and rax, rcx
xor rax, 0xffffffffffffffff
cmp rax, 0
jl 0x1401b2089
mov rax, qword [rbp + 0x360]
mov rcx, qword [rbp + 0x368]
mov qword [rax], rcx
jmp 0x1401b20c0
sub rsp, 0x20
call fcn.14000f24b
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0x3c0]
mov eax, dword [rbp + 0x454]
add rsp, 0x20
cmp byte [rdx], 0
mov qword [rbp + 0x3c8], rcx
mov dword [rbp + 0x3d4], eax
jne 0x1401b2c70
mov rdx, qword [rbp + 0x370]
mov rcx, qword [rbp + 0x1238]
mov rax, qword [rbp + 0x1230]
mov r8, qword [rax]
mov qword [rbp + 0x1570], r8
mov rax, qword [rax + 8]
mov qword [rbp + 0x1578], rax
lea r8, [rbp + 0x1570]
sub rsp, 0x20
call fcn.1401a7540
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0x3c0]
add rsp, 0x20
mov r8d, eax
mov eax, dword [rbp + 0x454]
mov dword [rbp + 0x35c], r8d
cmp byte [rdx], 0
mov qword [rbp + 0x3c8], rcx
mov dword [rbp + 0x3d4], eax
jne 0x1401b2c70
mov eax, dword [0x14027dc78]
xor edx, edx
div dword [0x14027dc7c]
xor eax, 0x299c28dc
mov ecx, 0x2f393e51
xor ecx, 0xd0c6c1ae
mov edx, eax
xor edx, ecx
and edx, 0x1ff9f2c3
mov r8d, 0xe90c0bf6
xor r8d, 0xf6f5f935
mov ecx, 0x9df6242e
xor ecx, 0x6209dbd1
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x1ff9f2c3
mov r8d, 0x60dfb094
xor r8d, 0x7f264257
or eax, r8d
imul eax, edx
add eax, ecx
add eax, 0x42d7108a
mov ecx, 0xce15bcc5
xor ecx, 0x36e1551b
cmp eax, ecx
jae 0x1401b61bb
mov ecx, dword [rbp + 0x454]
mov eax, dword [0x14027dc80]
xor eax, 0x29ea3d30
xor edx, edx
div dword [0x14027dc84]
mov r8d, 0x17428ff3
xor edx, edx
div r8d
mov edx, eax
xor edx, 0xffffffff
and edx, 0xac755cd7
mov r8d, 0x253a2f65
xor r8d, 0x894f73b2
mov r9d, 0xa3cb362a
xor r9d, 0x5c34c9d5
xor r8d, r9d
and eax, r8d
sub eax, edx
mov r8d, 0x823dadd2
xor edx, edx
div r8d
mov edx, dword [rbp + 0x35c]
movsxd rcx, ecx
movsxd rdx, edx
xor r8d, r8d
mov r9d, r8d
sub r9, rcx
mov r8, rdx
sub r8, r9
mov qword [rbp + 0x350], r8
mov r9, r8
xor r9, rcx
movabs r10, 0x6d0bc4ce0e163ec9
movabs r11, 0x92f43b31f1e9c136
xor r10, r11
xor r9, r10
mov r10, rcx
and r10, r9
movabs r9, 0xa9fb0339ecb4937b
movabs r11, 0xa9fb0339ecb49379
xor r9, r11
imul r9, r10
sub r9, rcx
mov rcx, r8
sub rcx, r9
xor r8, rdx
xor rcx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
movabs rdx, 0x751d9639c6423509
movabs r9, 0x56b992a0efdb2daf
xor rdx, r9
movabs r9, 0x62e6fc3a56752590
movabs r10, 0x9d1903c5a98ada6f
xor r9, r10
xor rdx, r9
or rcx, r8
movabs r8, 0x23a40499299918a6
or rdx, r8
xor rcx, 0xffffffffffffffff
and rcx, rdx
cmp rcx, 0
setl cl
mov byte [rbp + 0x35b], cl
cmp eax, 0xbb15974c
je 0x1401b61bb
mov al, byte [rbp + 0x35b]
test al, 1
jne 0x1401b22f8
jmp 0x1401b2324
sub rsp, 0x20
call fcn.14000f24b
mov rcx, qword [rbp + 0x3c0]
mov eax, dword [rbp + 0x454]
add rsp, 0x20
mov qword [rbp + 0x3c8], rcx
mov dword [rbp + 0x3d4], eax
jmp 0x1401b2c70
mov rax, qword [rbp + 0x350]
add rax, 0xffffffff80000000
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x1401b24ea
mov eax, dword [0x14027dc88]
xor eax, 0xc488ade8
and eax, dword [0x14027dc8c]
or eax, 0x4d094aeb
xor eax, 0x8147e5e7
or eax, eax
mov ecx, 0x8002b6e5
xor ecx, 0x7ffd491a
xor eax, ecx
mov ecx, 0xee5328a1
xor ecx, 0x232b51d
mov edx, 0xfc0320d1
xor edx, 0x1062bd6d
or ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
cmp eax, 0x512565c
jbe 0x1401b61c4
mov eax, dword [str.p_hF]
xor eax, 0x26c73c57
mov ecx, dword [0x14027dc94]
mov r11d, eax
xor r11d, 0xffffffff
mov edx, eax
xor edx, 0xffffffff
and r11d, edx
mov edx, ecx
or edx, edx
xor edx, 0xffffffff
or r11d, edx
xor r11d, 0xffffffff
or eax, ecx
mov ecx, 0xddda933a
xor ecx, 0x22256cc5
xor eax, ecx
xor r11d, 0xffffffff
xor eax, 0xffffffff
and r11d, eax
mov ecx, 0x717ec240
xor ecx, 0x8e813dbf
mov eax, r11d
xor eax, ecx
mov ecx, 0xd2ec63f1
xor ecx, 0x2d4556a7
and ecx, eax
mov edx, 0xffffffff
xor edx, 0xffa93556
mov eax, r11d
and eax, edx
imul eax, ecx
mov edx, 0xc90a8bf4
xor edx, 0x36a3bea2
mov ecx, r11d
and ecx, edx
or r11d, 0xffa93556
imul r11d, ecx
add r11d, eax
or r11d, 0x3a408501
mov ecx, r11d
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x2b6d5014
mov r8d, 0xffffffff
xor r8d, 0x2d9a40d7
mov eax, ecx
and eax, 0x2d9a40d7
and r11d, r8d
mov r9d, edx
and r9d, 0x2d9a40d7
mov r10d, r8d
and r10d, 0x2b6d5014
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, edx
xor ecx, 0xffffffff
mov edx, 0x97ccb83c
xor edx, 0xba56f8eb
or edx, r8d
and ecx, edx
or eax, ecx
mov dword [rbp + 0x34c], eax
mov eax, 0x3c7f0773
xor eax, 0x5fe2019a
mov dword [rbp + 0x348], eax
sub rsp, 0x20
call fcn.14000f24b
mov ecx, dword [rbp + 0x348]
mov eax, dword [rbp + 0x34c]
add rsp, 0x20
cmp eax, ecx
jae 0x1401b61c4
mov eax, dword [rbp + 0x454]
mov rcx, qword [rbp + 0x3c0]
mov qword [rbp + 0x3c8], rcx
mov dword [rbp + 0x3d4], eax
jmp 0x1401b2c70
mov rcx, qword [rbp + 0x3c0]
mov rax, qword [rbp + 0x350]
mov qword [rbp + 0x3c8], rcx
mov dword [rbp + 0x3d4], eax
jmp 0x1401b2c70
mov rax, qword [rbp + 0x808]
mov rax, qword [rax]
mov qword [rbp + 0x338], rax
xor eax, eax
mov qword [rbp + 0x340], rax
mov eax, dword [rbp + 0x454]
mov rcx, qword [rbp + 0x3c0]
mov r8, qword [rbp + 0x338]
mov rdx, qword [rbp + 0x340]
mov qword [rbp + 0x330], rdx
cmp rdx, r8
mov qword [rbp + 0x3c8], rcx
mov dword [rbp + 0x3d4], eax
jge 0x1401b2c70
mov rcx, qword [rbp + 0x330]
mov rdx, qword [rbp + 0x808]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rbp + 0x328], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x1401b25c8
mov rcx, qword [rbp + 0x330]
mov rdx, qword [rbp + 0x328]
add rdx, 0xffffffffffffffff
sub rsp, 0x20
call fcn.1400292ad
mov rcx, qword [rbp + 0x3c0]
mov eax, dword [rbp + 0x454]
add rsp, 0x20
mov qword [rbp + 0x3c8], rcx
mov dword [rbp + 0x3d4], eax
jmp 0x1401b2c70
mov rax, qword [rbp + 0x818]
mov rdx, qword [rbp + 0x330]
mov rcx, qword [rbp + 0x810]
mov rcx, qword [rcx]
add rcx, 8
shl rdx, 3
add rcx, rdx
mov qword [rbp + 0x318], rcx
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400cf5c9
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0x3c0]
add rsp, 0x20
mov r8b, al
mov eax, dword [rbp + 0x454]
mov byte [rbp + 0x327], r8b
cmp byte [rdx], 0
mov qword [rbp + 0x3c8], rcx
mov dword [rbp + 0x3d4], eax
jne 0x1401b2c70
mov al, byte [rbp + 0x327]
test al, 1
jne 0x1401b2649
jmp 0x1401b2bc1
mov rax, qword [rbp + 0x818]
mov rcx, qword [rbp + 0x318]
mov rcx, qword [rcx]
mov qword [rbp + 0x308], rcx
movsxd rcx, dword [rcx + 0x10]
mov rax, qword [rax]
mov qword [rbp + 0x310], rax
cmp rax, rcx
jl 0x1401b2bc1
mov rax, qword [rbp + 0x310]
mov rcx, qword [rbp + 0x308]
movsxd rcx, dword [rcx + 0x14]
cmp rax, rcx
jg 0x1401b2bc1
mov rax, qword [rbp + 0x820]
mov rcx, qword [rax]
mov qword [rbp + 0x1550], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1558], rax
lea rcx, [rbp + 0x1560]
lea rdx, [rbp + 0x1550]
sub rsp, 0x20
call fcn.140039831
mov rcx, qword [rbp + 0x828]
mov rax, qword [rbp + 0x318]
mov rdx, qword [rbp + 0x1308]
add rsp, 0x20
mov r8, qword [rbp + 0x1560]
mov qword [rbp + 0x2f0], r8
mov rcx, qword [rcx]
mov qword [rbp + 0x2f8], rcx
mov rax, qword [rax]
mov rcx, qword [rax]
mov qword [rdx], rcx
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x1540]
sub rsp, 0x20
call fcn.140039831
mov rcx, qword [rbp + 0x830]
mov r10, qword [rbp + 0x2f0]
mov r9, qword [rbp + 0x2f8]
mov r8, qword [rbp + 0x838]
mov rax, qword [rbp + 0x840]
add rsp, 0x20
mov rdx, qword [rbp + 0x1540]
mov rcx, qword [rcx]
mov qword [rbp + 0x1530], r10
mov qword [r8], r9
mov qword [rbp + 0x1520], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x1530]
lea rdx, [rbp + 0x1520]
sub rsp, 0x20
call fcn.1400b6d90
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0x3c0]
add rsp, 0x20
mov r8b, al
mov eax, dword [rbp + 0x454]
mov byte [rbp + 0x307], r8b
mov dl, byte [rdx]
mov r8b, 0xae
xor r8b, 0xae
cmp dl, r8b
mov qword [rbp + 0x3c8], rcx
mov dword [rbp + 0x3d4], eax
jne 0x1401b2c70
mov al, byte [rbp + 0x307]
test al, 1
jne 0x1401b27c8
jmp 0x1401b2bc1
mov rax, qword [rbp + 0x848]
mov rdx, qword [rax]
movabs rax, 0xad8782e003c4b2cc
movabs rcx, 0xad8782e003c4b2dc
xor rax, rcx
mov rcx, rdx
and rcx, rax
movabs rax, 0x1efc4f6f00e64ce7
movabs r8, 0x1efc4f6f00e64ce5
xor rax, r8
imul rcx, rax
mov rax, rdx
xor rax, 0x10
add rax, rcx
mov qword [rbp + 0x2e8], rax
xor rdx, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
mov rcx, 0xffffffffffffffff
movabs r8, 0xcacac609122493aa
xor rcx, r8
or rax, rdx
movabs rdx, 0xcacac609122493aa
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jl 0x1401b2872
mov rax, qword [rbp + 0x848]
mov rcx, qword [rbp + 0x2e8]
mov qword [rax], rcx
jmp 0x1401b288f
sub rsp, 0x20
call fcn.14000f24b
mov rax, qword [rbp + 0x1360]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401b2ace
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0x2e0], rax
mov rax, qword [rbp + 0x2e0]
xorps xmm0, xmm0
movups xmmword [rbp + rax + 0x14f0], xmm0
add rax, 0x10
cmp rax, 0x30
mov qword [rbp + 0x2e0], rax
jne 0x1401b28ae
lea rcx, [rbp + 0x14f0]
lea rdx, [rbp + 0x1788]
mov r8d, 0x30
sub rsp, 0x20
call sub.msvcrt.dll_memcpy
add rsp, 0x20
lea rcx, [rbp + 0x1788]
sub rsp, 0x20
call fcn.14010e041
mov rax, qword [rbp + 0x850]
mov rcx, qword [rbp + 0x1230]
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp + 0x2d0], rax
mov rcx, qword [rcx]
mov qword [rbp + 0x2d8], rcx
cmp rax, 0
je 0x1401b296e
mov rax, qword [rbp + 0x2d8]
mov r9, qword [rbp + 0x2d0]
mov rdx, qword [rbp + 0x1358]
mov rcx, qword [rbp + 0x1238]
lea r8, [rbp + 0x14f0]
sub rsp, 0x20
call rax
add rsp, 0x20
mov byte [rbp + 0x2cf], al
jmp 0x1401b299a
mov rax, qword [rbp + 0x2d8]
mov rdx, qword [rbp + 0x1358]
mov rcx, qword [rbp + 0x1238]
lea r8, [rbp + 0x14f0]
sub rsp, 0x20
call rax
add rsp, 0x20
mov byte [rbp + 0x2cf], al
mov rax, qword [rbp + 0x1360]
mov cl, byte [rbp + 0x2cf]
mov al, byte [rax]
test al, al
sete al
mov byte [rbp + 0x2ce], al
and al, cl
test al, 1
jne 0x1401b29c3
jmp 0x1401b2aed
mov eax, dword [rbp + 0x454]
movsxd rcx, eax
mov rax, rcx
inc rax
mov qword [rbp + 0x2c0], rax
mov rdx, rcx
not rdx
and rax, rdx
test rax, rax
sets al
add rcx, 0xffffffff80000001
movabs rdx, 0xffffffff00000000
sub rcx, rdx
setb cl
or al, cl
test al, 1
jne 0x1401b2a29
mov rcx, qword [rbp + 0x3c0]
mov rax, qword [rbp + 0x2c0]
mov qword [rbp + 0x3c8], rcx
mov dword [rbp + 0x3d4], eax
jmp 0x1401b2c70
mov eax, dword [0x14027dc98]
xor eax, 0x4477ec6b
xor edx, edx
div dword [0x14027dc9c]
mov ecx, 0xd405079d
xor edx, edx
div ecx
mov ecx, eax
and ecx, 0x2a2cbbed
shl ecx, 1
add eax, 0x2a2cbbed
sub eax, ecx
mov ecx, 0xd2312a32
xor edx, edx
div ecx
cmp eax, 0xb477b818
ja 0x1401b61cd
mov eax, dword [0x14027dca0]
mov ecx, 0x893c91e7
xor ecx, 0xb057401c
xor eax, ecx
xor edx, edx
div dword [0x14027dca4]
mov ecx, 0xc7fec642
xor ecx, 0x13c44602
or eax, ecx
mov ecx, 0x58d2839a
xor edx, edx
div ecx
mov ecx, 0x942e3226
xor edx, edx
div ecx
mov dword [rbp + 0x2bc], eax
sub rsp, 0x20
call fcn.14000f24b
mov eax, dword [rbp + 0x2bc]
add rsp, 0x20
cmp eax, 0x431490de
ja 0x1401b2a6b
jmp 0x1401b2ace
mov eax, dword [rbp + 0x454]
mov rcx, qword [rbp + 0x3c0]
mov qword [rbp + 0x3c8], rcx
mov dword [rbp + 0x3d4], eax
jmp 0x1401b2c70
mov eax, dword [0x14027dca8]
xor eax, 0x3144e456
mov edx, dword [0x14027dcac]
mov ecx, 0xf23a2401
xor ecx, 0xf23a2401
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0xbd7d32b2
add eax, ecx
mov ecx, 0xae436cd1
xor edx, edx
div ecx
mov ecx, 0xd51d9b47
xor edx, edx
div ecx
cmp eax, 0x28bbd020
jae 0x1401b61d6
mov eax, dword [0x14027dcb0]
imul eax, dword [0x14027dcb4]
imul eax, eax, 0x940772c1
xor ecx, ecx
sub ecx, 0x8a3bd397
sub eax, ecx
xor eax, 0xe7d1932e
cmp eax, 0x8749cddf
jbe 0x1401b61d6
mov eax, dword [rbp + 0x454]
mov rcx, qword [rbp + 0x3c0]
mov r8, qword [rbp + 0x330]
mov r10b, byte [rbp + 0x2ce]
mov r9b, 1
mov edx, 0x6d
test r10b, 1
mov byte [rbp + 0x2af], r9b
mov qword [rbp + 0x2b0], r8
mov dword [rbp + 0x2b8], edx
mov qword [rbp + 0x3c8], rcx
mov dword [rbp + 0x3d4], eax
jne 0x1401b2c70
jmp 0x1401b2bef
mov rax, qword [rbp + 0x330]
mov rcx, rax
and rcx, 1
or rax, 1
add rcx, rax
xor eax, eax
mov dl, al
xor eax, eax
mov byte [rbp + 0x2af], dl
mov qword [rbp + 0x2b0], rcx
mov dword [rbp + 0x2b8], eax
mov dl, byte [rbp + 0x2af]
mov rax, qword [rbp + 0x2b0]
mov ecx, dword [rbp + 0x2b8]
mov dword [rbp + 0x2a8], ecx
mov byte [rbp + 0x2ad], dl
mov byte [rbp + 0x2ae], cl
test cl, cl
mov qword [rbp + 0x340], rax
je 0x1401b2524
jmp 0x1401b2c28
mov eax, dword [rbp + 0x2a8]
mov cl, byte [rbp + 0x2ad]
mov edx, dword [rbp + 0x454]
mov r8, qword [rbp + 0x3c0]
mov r9b, byte [rbp + 0x2ae]
sub r9b, 0x6d
mov qword [rbp + 0x3c8], r8
mov dword [rbp + 0x3d4], edx
mov byte [rbp + 0x44f], cl
mov dword [rbp + 0x450], eax
jne 0x1401b2efc
jmp 0x1401b2c70
mov rax, qword [rbp + 0x3c8]
mov ecx, dword [rbp + 0x3d4]
mov dword [rbp + 0x29c], ecx
mov qword [rbp + 0x2a0], rax
mov ecx, dword [0x14027dcb8]
mov edx, dword [0x14027dcbc]
mov eax, ecx
xor eax, edx
xor edx, 0xffffffff
and ecx, edx
shl ecx, 1
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0x2acdd647
xor edx, 0x37142433
mov r8d, 0x16d791a6
xor r8d, 0xe9286e59
xor edx, r8d
and eax, edx
or ecx, 0x1dd9f274
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0xcf4336a9
xor ecx, 0xfc70ab55
add eax, ecx
mov ecx, 0xe2d29718
xor edx, edx
div ecx
cmp eax, 0x9288e4c2
jae 0x1401b61df
mov rcx, qword [rbp + 0x408]
mov edx, dword [0x14027dcc0]
mov r8d, dword [0x14027dcc4]
mov eax, edx
and eax, eax
mov r9d, 0x76c8bfe3
xor r9d, 0x8937401c
xor eax, r9d
and eax, r8d
mov r9d, 0xfbba3e0
xor r9d, 0xf0445c1f
xor eax, r9d
and r8d, r8d
xor r8d, 0xffffffff
and edx, r8d
xor edx, 0xffffffff
mov r8d, 0x448d30c5
xor r8d, 0xbb72cf3a
xor eax, r8d
xor edx, 0xffffffff
or eax, edx
mov r8d, 0xda9abe50
xor edx, edx
div r8d
mov r8d, 0xeaee1ba8
xor edx, edx
div r8d
mov r8d, 0x8e55b137
xor edx, edx
div r8d
cmp rcx, 0
sete cl
mov byte [rbp + 0x29b], cl
cmp eax, 0x6610f0b5
jae 0x1401b61df
mov al, byte [rbp + 0x29b]
test al, 1
jne 0x1401b2e1f
jmp 0x1401b2d9e
mov rax, qword [rbp + 0x408]
mov rax, qword [rax]
movabs rcx, 0x4ffd2a6120948860
movabs rdx, 0xb002d59edf6b779f
xor rcx, rdx
xor rax, rcx
mov rdx, 0xffffffffffffffff
movabs rcx, 0x4000000000000000
xor rdx, rcx
mov rcx, 0xffffffffffffffff
movabs r8, 0xa4b0f92ae6789331
xor rcx, r8
or rax, rdx
movabs rdx, 0xa4b0f92ae6789331
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jne 0x1401b2e1f
mov rcx, qword [rbp + 0x408]
sub rsp, 0x20
call fcn.14001d1d6
add rsp, 0x20
mov eax, dword [rbp + 0x29c]
mov rcx, qword [rbp + 0x2a0]
cmp rcx, 0
mov dword [rbp + 0x42c], eax
je 0x1401b2e86
mov eax, dword [rbp + 0x29c]
mov rdx, qword [rbp + 0x2a0]
movabs rcx, 0x4000000000000000
and rcx, qword [rdx]
cmp rcx, 0
mov dword [rbp + 0x42c], eax
jne 0x1401b2e86
mov rcx, qword [rbp + 0x2a0]
sub rsp, 0x20
call fcn.14001d1d6
mov eax, dword [rbp + 0x29c]
add rsp, 0x20
mov dword [rbp + 0x42c], eax
mov rcx, qword [rbp + 0x1360]
mov eax, dword [rbp + 0x42c]
mov dword [rbp + 0x294], eax
mov dl, byte [rcx]
mov r8b, 0x45
xor r8b, 0x45
mov ecx, 0x5c
cmp dl, r8b
mov byte [rbp + 0x41f], dl
mov dword [rbp + 0x420], ecx
mov dword [rbp + 0x424], eax
jne 0x1401b2ed3
mov eax, dword [rbp + 0x294]
mov dword [rbp + 0x290], eax
jmp 0x1401b2f6d
mov dl, byte [rbp + 0x41f]
mov ecx, dword [rbp + 0x420]
mov eax, dword [rbp + 0x424]
mov byte [rbp + 0x287], dl
mov dword [rbp + 0x288], ecx
mov dword [rbp + 0x28c], eax
jmp 0x1401b50c7
mov eax, dword [rbp + 0x454]
mov dl, byte [rbp + 0x44f]
mov ecx, dword [rbp + 0x450]
mov dword [rbp + 0x280], ecx
mov byte [rbp + 0x286], dl
test ecx, ecx
mov dword [rbp + 0x290], eax
je 0x1401b2f6d
jmp 0x1401b2f2d
mov eax, dword [rbp + 0x454]
mov ecx, dword [rbp + 0x280]
mov dl, byte [rbp + 0x286]
mov r8d, ecx
sub r8d, 0x6b
mov r8d, eax
mov dword [rbp + 0x290], r8d
mov byte [rbp + 0x287], dl
mov dword [rbp + 0x288], ecx
mov dword [rbp + 0x28c], eax
jne 0x1401b50c7
jmp 0x1401b2f6d
mov eax, dword [rbp + 0x290]
mov dword [rbp + 0x27c], eax
mov eax, dword [0x14027dcc8]
xor eax, dword [0x14027dccc]
mov ecx, 0xc58eff59
xor edx, edx
div ecx
mov ecx, eax
add ecx, 0x5704be98
mov edx, 0xc0453969
xor edx, 0x4a101fb9
mov eax, ecx
and eax, edx
or ecx, 0x8a5526d0
add eax, ecx
mov ecx, 0x5ae5c00f
xor ecx, 0x7192ed4b
cmp eax, ecx
jb 0x1401b61e8
mov rax, qword [rbp + 0x440]
mov ecx, dword [0x14027dcd0]
mov edx, dword [str.tPWH]
xor edx, 0x29417475
add ecx, edx
mov edx, ecx
xor edx, 0xa04
xor ecx, 0x380004a
or ecx, 0x34200a24
or edx, 0x380904a
and ecx, edx
and ecx, 0x37a09a6e
mov dword [rbp + 0x270], ecx
mov ecx, dword [rax]
mov eax, ecx
xor eax, 0xffffffef
or ecx, 0x10
and ecx, eax
xor ecx, 0x10
sub rsp, 0x20
call fcn.1400e7c9c
mov rcx, qword [rbp + 0x1360]
add rsp, 0x20
mov dl, al
mov eax, dword [rbp + 0x270]
mov r8b, byte [rcx]
mov byte [rbp + 0x276], r8b
test r8b, r8b
sete cl
and cl, dl
mov byte [rbp + 0x277], cl
mov ecx, 0x5c
mov edx, 0x87
cmp r8b, 0
cmove ecx, edx
mov dword [rbp + 0x278], ecx
cmp eax, 0x79de321a
je 0x1401b2fc0
mov eax, dword [rbp + 0x278]
mov cl, byte [rbp + 0x276]
mov dl, byte [rbp + 0x277]
test dl, 1
mov byte [rbp + 0x26b], cl
mov dword [rbp + 0x26c], eax
jne 0x1401b3094
jmp 0x1401b5055
mov rax, qword [rbp + 0x460]
mov eax, dword [rax]
mov dword [rbp + 0x264], eax
cmp eax, 0xffffffff
jge 0x1401b30ec
mov eax, dword [rbp + 0x264]
xor ecx, ecx
sub ecx, eax
shr ecx, 1
xor eax, eax
sub eax, ecx
movsxd rcx, eax
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14001a720
mov eax, dword [rbp + 0x27c]
add rsp, 0x20
mov dword [rbp + 0x260], eax
jmp 0x1401b4ffd
mov eax, dword [rbp + 0x264]
mov rcx, qword [rbp + 0x458]
add rcx, 0x5e
mov qword [rbp + 0x240], rcx
mov ecx, 0x99e8a823
xor ecx, 0x99e8a821
cdq
idiv ecx
mov rdx, qword [rbp + 0x240]
mov eax, eax
mov r8d, eax
lea rcx, [rbp + 0x14b0]
sub rsp, 0x20
call fcn.1400ebd10
mov rdx, qword [rbp + 0x860]
mov rcx, qword [rbp + 0x1360]
mov eax, dword [rbp + 0x27c]
add rsp, 0x20
mov r8, qword [rbp + 0x14b0]
mov qword [rbp + 0x248], r8
mov rdx, qword [rdx]
mov qword [rbp + 0x250], rdx
cmp byte [rcx], 0
mov dword [rbp + 0x25c], eax
jne 0x1401b5025
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov qword [rbp + 0x230], rax
add rax, 0x60
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
mov rcx, qword [rbp + 0x250]
mov r8, qword [rbp + 0x248]
add rsp, 0x20
mov rax, qword [rbp + 0x230]
movabs r9, 0xe18a8b9d128eda56
movabs rdx, 0xe18a8b9d128eda56
xor r9, rdx
add rcx, 8
lea rdx, [0x14028b9f8]
cmp r8, r9
cmove rcx, rdx
mov qword [rbp + 0x238], rcx
cmp byte [rax + 0x60], 0
jne 0x1401b33ac
mov rax, qword [rbp + 0x248]
movabs rcx, 0x6687a612aa452f4
movabs rdx, 0x6687a612aa452f6
xor rcx, rdx
cqo
idiv rcx
mov r8, rax
mov rax, qword [rbp + 0x248]
mov r9, r8
add r9, 0xffffffffffffffff
mov qword [rbp + 0x228], r9
mov rcx, r9
xor rcx, 0xffffffffffffffff
movabs rdx, 0x871521f84e83d1f7
and rcx, rdx
mov r10, 0xffffffffffffffff
movabs rdx, 0x871521f84e83d1f7
xor r10, rdx
and r9, r10
movabs r11, 0x914d80ccc7db4813
movabs rdx, 0x6eb27f333824b7ec
xor r11, rdx
mov rdx, r8
xor rdx, r11
movabs r11, 0x871521f84e83d1f7
and rdx, r11
and r8, r10
or rcx, r9
or rdx, r8
xor rcx, rdx
cmp rcx, 0
setl cl
cmp rax, 1
setg al
and al, cl
test al, 1
jne 0x1401b32d8
mov rdx, qword [rbp + 0x238]
mov rcx, qword [rbp + 0x1310]
mov rax, qword [rbp + 0x228]
xor r8d, r8d
test rax, rax
cmovg r8, rax
sub rsp, 0x20
call fcn.1400eaab0
add rsp, 0x20
jmp 0x1401b33ac
mov eax, dword [0x14027dcd8]
xor eax, 0x922da7a5
xor edx, edx
div dword [0x14027dcdc]
mov r8d, eax
mov eax, r8d
xor eax, 0xffffffff
and eax, 0x3cade0c5
mov edx, 0xffffffff
xor edx, 0x3cade0c5
and r8d, edx
mov ecx, 0xffffffff
xor ecx, 0xdc636475
mov r9d, 0xfc2170b6
xor r9d, 0xc08c9073
and ecx, r9d
and edx, 0xdc636475
or eax, r8d
or ecx, edx
xor eax, ecx
sub eax, 0xb52cc1a5
and eax, 0x10b5ef1f
mov ecx, 0xf67e7b36
xor ecx, 0x1ca56400
cmp eax, ecx
jae 0x1401b61f1
mov eax, dword [0x14027dce0]
mov ecx, dword [0x14027dce4]
mov edx, 0x90641656
xor edx, 0xdda50752
xor ecx, edx
imul eax, ecx
mov ecx, 0x9c4d856d
xor edx, edx
div ecx
xor eax, 0xbae888ee
mov ecx, 0xbabd3e14
xor ecx, 0xb5b1a431
xor eax, ecx
mov dword [rbp + 0x224], eax
sub rsp, 0x20
call fcn.14000f24b
mov eax, dword [rbp + 0x224]
add rsp, 0x20
cmp eax, 0x111213d7
jbe 0x1401b61f1
jmp 0x1401b33ac
mov eax, dword [rbp + 0x27c]
mov rcx, qword [rbp + 0x1360]
mov rdx, qword [rbp + 0x868]
mov r8, qword [rbp + 0x1310]
mov r8, qword [r8]
mov qword [rbp + 0x208], r8
mov rdx, qword [rdx]
mov qword [rbp + 0x210], rdx
mov dl, byte [rcx]
mov r8b, 0xd5
xor r8b, 0xd5
xor ecx, ecx
cmp dl, r8b
mov qword [rbp + 0x218], rcx
mov dword [rbp + 0x220], eax
jne 0x1401b4d7d
mov r8d, dword [0x14027dce8]
mov edx, dword [0x14027dcec]
mov ecx, r8d
xor ecx, 0xffffffff
mov eax, 0x4eb8bd8f
xor eax, 0xe4097b89
and eax, ecx
mov r9d, 0xffffffff
xor r9d, 0xaab1c606
and r8d, r9d
mov r10d, 0x46dbef60
xor r10d, 0xb924109f
mov ecx, edx
xor ecx, r10d
mov r10d, 0xeae9bbd6
xor r10d, 0x40587dd0
and ecx, r10d
and edx, r9d
or eax, r8d
or ecx, edx
xor eax, ecx
add eax, 0x8beeaeb
mov ecx, 0xef428e97
xor edx, edx
div ecx
imul eax, eax, 0x401ae1bb
cmp eax, 0xe09b44ca
ja 0x1401b61fa
mov rcx, qword [rbp + 0x210]
mov rdx, qword [rbp + 0x208]
mov rdi, qword [rbp + 0x880]
mov rsi, qword [rbp + 0x878]
mov rax, qword [rbp + 0x870]
mov r8d, dword [0x14027dcf0]
mov r11d, dword [0x14027dcf4]
mov r9d, 0xbc151206
xor r9d, 0x570d4272
xor r11d, r9d
mov ebx, r11d
xor ebx, 0xffffffff
mov r10d, r8d
and r10d, ebx
mov r9d, r8d
or r9d, ebx
xor r9d, 0xffffffff
imul r9d, r10d
mov r10d, r8d
and r10d, r11d
or r8d, r11d
imul r8d, r10d
add r8d, r9d
xor r8d, 0x25b0ae2d
mov r9d, 0x4e2d8221
xor r9d, 0xf6dc614b
or r8d, r9d
sub r8d, 0x5163a2bc
add r8d, 0xe8f4d4a
add r8d, 0x5163a2bc
mov dword [rbp + 0x1ec], r8d
mov byte [rbp + 0x14c0], 0
mov qword [rbp + 0x1490], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x14a0]
lea rdx, [rbp + 0x1490]
sub rsp, 0x20
call fcn.140039831
mov r11, qword [rbp + 0x888]
mov r10, qword [rbp + 0x6c0]
mov r9, qword [rbp + 0x6c8]
mov r8, qword [rbp + 0x890]
mov rdx, qword [rbp + 0x208]
mov rcx, qword [rbp + 0x210]
mov rax, qword [rbp + 0x898]
add rsp, 0x20
mov rbx, qword [rbp + 0x14a0]
mov rsi, qword [rsi]
mov qword [rdi], rbx
mov qword [r11], rsi
mov qword [rbp + 0x1470], r10
mov qword [r8], r9
mov qword [rbp + 0x1460], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x1480]
lea rdx, [rbp + 0x1470]
lea r8, [rbp + 0x1460]
sub rsp, 0x20
call fcn.1400ca2e0
mov rdx, qword [rbp + 0x8a0]
mov rcx, qword [rbp + 0x1360]
mov eax, dword [rbp + 0x1ec]
add rsp, 0x20
mov r8, qword [rbp + 0x1480]
mov qword [rbp + 0x1f0], r8
mov rdx, qword [rdx]
mov qword [rbp + 0x1f8], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x207], cl
cmp eax, 0x1dce9cbb
jae 0x1401b61fa
mov eax, dword [rbp + 0x27c]
mov rcx, qword [rbp + 0x210]
mov dl, byte [rbp + 0x207]
test dl, 1
mov qword [rbp + 0x218], rcx
mov dword [rbp + 0x220], eax
jne 0x1401b3628
jmp 0x1401b4d7d
mov rax, qword [rbp + 0x8b8]
mov rcx, qword [rbp + 0x458]
mov rdx, qword [rbp + 0x8b0]
mov r8, qword [rbp + 0x1f8]
mov r9, qword [rbp + 0x8a8]
mov r10, qword [rbp + 0x1f0]
mov qword [r9], r10
mov qword [rdx], r8
mov rcx, qword [rcx + 0x28]
mov qword [rax], rcx
lea rcx, [rbp + 0x1728]
lea rdx, [rbp + 0x14c0]
sub rsp, 0x20
call fcn.14010d470
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0x210]
mov eax, dword [rbp + 0x27c]
add rsp, 0x20
cmp byte [rdx], 0
mov qword [rbp + 0x218], rcx
mov dword [rbp + 0x220], eax
jne 0x1401b4d7d
mov al, byte [rbp + 0x1728]
cmp al, 1
mov byte [rbp + 0x1eb], al
jne 0x1401b3aa7
mov rax, qword [rbp + 0x7d8]
mov rcx, qword [rbp + 0x1368]
mov rdx, qword [rcx]
mov qword [rbp + 0x1450], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x1458], rcx
mov rcx, qword [rax]
mov qword [rbp + 0x1440], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1448], rax
lea rcx, [rbp + 0x1450]
lea rdx, [rbp + 0x1440]
sub rsp, 0x20
call fcn.14010d720
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0x210]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp + 0x27c]
mov qword [rbp + 0x1e0], r8
cmp byte [rdx], 0
mov qword [rbp + 0x218], rcx
mov dword [rbp + 0x220], eax
jne 0x1401b4d7d
mov rdx, qword [rbp + 0x1e0]
movabs rcx, 0x2c15754f6ed5a7d7
movabs rax, 0x6a0c365ae497d2a5
xor rcx, rax
mov rax, rdx
sub rax, rcx
add rax, 1
movabs rcx, 0x461943158a427572
add rax, rcx
mov qword [rbp + 0x1d8], rax
movabs rcx, 0xff890a8281a44cd9
movabs r8, 0x76f57d7e5bb326
xor rcx, r8
xor rdx, rcx
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
or rax, rdx
add rax, rcx
cmp rax, 0
jge 0x1401b37dc
sub rsp, 0x20
call fcn.14000f24b
mov rcx, qword [rbp + 0x210]
mov eax, dword [rbp + 0x27c]
add rsp, 0x20
mov qword [rbp + 0x218], rcx
mov dword [rbp + 0x220], eax
jmp 0x1401b4d7d
mov rax, qword [rbp + 0x7e0]
mov eax, dword [rax]
mov dword [rbp + 0x1d4], eax
cmp eax, 0xffffffff
jne 0x1401b3924
mov eax, dword [0x14027dcf8]
xor eax, 0x608bef86
add eax, dword [0x14027dcfc]
mov ecx, 0xf5d40793
xor edx, edx
div ecx
sub eax, 0xaa7a5558
add eax, 0x4d35d6d2
cmp eax, 0xd6ab5e91
je 0x1401b6203
mov rcx, qword [rbp + 0x1318]
mov rax, qword [rbp + 0x7d8]
mov edx, dword [0x14027dd00]
mov r8d, 0x9aef0fca
xor r8d, 0x7bebeb9a
xor edx, r8d
or edx, dword [0x14027dd04]
mov r8d, 0x57e6fb74
xor r8d, 0xefb5bd8
sub edx, r8d
mov r9d, edx
xor r9d, 0xffffffff
and r9d, 0x7b26a8f9
mov r10d, 0xffffffff
xor r10d, 0x7b26a8f9
mov r8d, edx
and r8d, r10d
imul r8d, r9d
mov r9d, edx
and r9d, 0x7b26a8f9
or edx, 0x7b26a8f9
imul edx, r9d
add edx, r8d
add edx, 0x121f9074
mov dword [rbp + 0x1d0], edx
mov rdx, qword [rax]
mov qword [rbp + 0x1430], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1438], rax
lea rdx, [rbp + 0x1430]
sub rsp, 0x20
call fcn.140039831
mov rdx, qword [rbp + 0x1318]
mov rcx, qword [rbp + 0x8d0]
mov rax, qword [rbp + 0x8d8]
add rsp, 0x20
mov rdx, qword [rdx]
mov rcx, qword [rcx]
mov qword [rbp + 0x1420], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x1778]
lea rdx, [rbp + 0x1420]
sub rsp, 0x20
call fcn.1400363f2
mov eax, dword [rbp + 0x1d0]
add rsp, 0x20
cmp eax, 0xc02bb3f6
je 0x1401b6203
jmp 0x1401b3a9b
mov rax, qword [rbp + 0x1d8]
mov ecx, dword [rbp + 0x1d4]
movsxd rcx, ecx
cmp rax, rcx
jg 0x1401b3a9b
mov eax, dword [0x14027dd08]
xor edx, edx
div dword [0x14027dd0c]
mov ecx, eax
mov eax, 0x32d24430
xor eax, 0x567d22ba
and ecx, eax
mov edx, 0xf909c4da
xor edx, 0xb521284d
mov eax, ecx
or eax, edx
xor eax, 0xffffffff
or ecx, 0x4c28ec97
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0xb4ed7851
xor edx, edx
div ecx
cmp eax, 0x13d08319
ja 0x1401b620c
mov rcx, qword [rbp + 0x1320]
mov rax, qword [rbp + 0x7d8]
mov r8d, dword [0x14027dd10]
mov edx, dword [0x14027dd14]
mov r9d, 0xaf021a60
xor r9d, 0x9cf57c69
xor edx, r9d
imul r8d, edx
or r8d, 0x83469d31
mov r9d, r8d
xor r9d, 0xffffffff
and r9d, 0xd077ac2
mov r10d, 0xffffffff
xor r10d, 0xd077ac2
mov edx, r8d
and edx, r10d
imul edx, r9d
mov r9d, r8d
and r9d, 0xd077ac2
or r8d, 0xd077ac2
imul r8d, r9d
add r8d, edx
mov r9d, 0xffffffff
xor r9d, 0x940e1de3
mov edx, r8d
xor edx, r9d
and edx, r8d
mov dword [rbp + 0x1cc], edx
mov rdx, qword [rax]
mov qword [rbp + 0x1410], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1418], rax
lea rdx, [rbp + 0x1410]
sub rsp, 0x20
call fcn.140039831
mov rdx, qword [rbp + 0x1320]
mov rcx, qword [rbp + 0x8c0]
mov rax, qword [rbp + 0x8c8]
add rsp, 0x20
mov rdx, qword [rdx]
mov rcx, qword [rcx]
mov qword [rbp + 0x1400], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x1778]
lea rdx, [rbp + 0x1400]
sub rsp, 0x20
call fcn.1400363f2
mov eax, dword [rbp + 0x1cc]
add rsp, 0x20
cmp eax, 0x79818816
jbe 0x1401b620c
jmp 0x1401b3a9b
mov al, byte [rbp + 0x1728]
mov byte [rbp + 0x1eb], al
mov eax, dword [rbp + 0x27c]
mov rcx, qword [rbp + 0x210]
mov dl, byte [rbp + 0x1eb]
cmp dl, 2
mov qword [rbp + 0x218], rcx
mov dword [rbp + 0x220], eax
jae 0x1401b4d7d
lea rcx, [rbp + 0x1788]
lea rdx, [rbp + 0x1728]
sub rsp, 0x20
call fcn.14010d470
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0x210]
mov eax, dword [rbp + 0x27c]
add rsp, 0x20
cmp byte [rdx], 0
mov qword [rbp + 0x218], rcx
mov dword [rbp + 0x220], eax
jne 0x1401b4d7d
sub rsp, 0x20
lea rcx, [rbp + 0x1728]
call fcn.14010e041
add rsp, 0x20
mov al, byte [rbp + 0x1788]
mov byte [rbp + 0x1cb], al
test al, al
je 0x1401b436c
jmp 0x1401b3b42
mov eax, dword [rbp + 0x27c]
mov rcx, qword [rbp + 0x210]
mov dl, byte [rbp + 0x1cb]
sub dl, 1
mov qword [rbp + 0x218], rcx
mov dword [rbp + 0x220], eax
jne 0x1401b4d7d
jmp 0x1401b3b70
mov eax, dword [rbp + 0x27c]
mov rcx, qword [rbp + 0x210]
mov rdx, qword [rbp + 0x1358]
cmp byte [rdx], 0
mov qword [rbp + 0x218], rcx
mov dword [rbp + 0x220], eax
jne 0x1401b4d7d
mov eax, dword [rbp + 0x27c]
mov rcx, qword [rbp + 0x210]
mov rdx, qword [rbp + 0x7e0]
cmp dword [rdx], 1
mov qword [rbp + 0x218], rcx
mov dword [rbp + 0x220], eax
jne 0x1401b4d7d
mov rax, qword [rbp + 0x858]
mov rcx, qword [rax]
sub rsp, 0x20
xor eax, eax
mov edx, eax
call fcn.140081680
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0x210]
add rsp, 0x20
mov r8b, al
mov eax, dword [rbp + 0x27c]
mov dl, byte [rdx]
test dl, dl
setne dl
or dl, r8b
test dl, 1
mov qword [rbp + 0x218], rcx
mov dword [rbp + 0x220], eax
jne 0x1401b4d7d
mov rax, qword [rbp + 0x858]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400820c9
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0x210]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp + 0x27c]
mov dl, byte [rdx]
test dl, dl
sete dl
test r8, r8
setg r8b
and dl, r8b
test dl, 1
mov qword [rbp + 0x218], rcx
mov dword [rbp + 0x220], eax
jne 0x1401b3c70
jmp 0x1401b4d7d
mov rdx, qword [rbp + 0x1328]
mov rax, qword [rbp + 0x820]
mov rcx, qword [rbp + 0x858]
mov rcx, qword [rcx]
movups xmm0, xmmword [rax]
movups xmmword [rdx], xmm0
sub rsp, 0x20
call fcn.140082138
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0x210]
add rsp, 0x20
mov r8b, al
mov eax, dword [rbp + 0x27c]
mov dl, byte [rdx]
test dl, dl
sete dl
and dl, r8b
test dl, 1
mov qword [rbp + 0x218], rcx
mov dword [rbp + 0x220], eax
jne 0x1401b3cd7
jmp 0x1401b4d7d
mov rdx, qword [rbp + 0x1330]
mov rax, qword [rbp + 0x820]
mov rcx, qword [rbp + 0x858]
mov rcx, qword [rcx]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14008276f
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0x210]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp + 0x27c]
mov qword [rbp + 0x1c0], r8
cmp byte [rdx], 0
mov qword [rbp + 0x218], rcx
mov dword [rbp + 0x220], eax
jne 0x1401b4d7d
mov rax, qword [rbp + 0x1c0]
mov rax, qword [rax]
mov qword [rbp + 0x1b8], rax
cmp rax, 0
je 0x1401b3fb0
mov rax, qword [rbp + 0x1b8]
movabs rcx, 0x9c850c5aa85d3fa0
sub rax, rcx
add rax, 0xfffffffffffffff0
movabs rcx, 0x9c850c5aa85d3fa0
add rax, rcx
mov qword [rbp + 0x1a8], rax
mov rdx, qword [rax]
xor eax, eax
mov ecx, eax
sub rcx, rdx
xor eax, eax
sub rax, 0x10
add rcx, rax
xor eax, eax
sub rax, rcx
mov qword [rbp + 0x1b0], rax
mov rcx, rdx
or rcx, rcx
xor rcx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
movabs r9, 0xb5212368c0dd1f8f
movabs r10, 0x4adedc973f22e070
xor r9, r10
movabs r10, 0x76549c416a725d5f
movabs r11, 0x89ab63be958da2a0
xor r10, r11
xor r9, r10
and r8, r9
or rcx, r8
xor rcx, 0xffffffffffffffff
or rdx, 0xffffffffffffffff
movabs r8, 0xcd6474d6ad52635d
movabs r9, 0x329b8b2952ad9ca2
xor r8, r9
xor rdx, r8
movabs r8, 0xc1a98956aa40d2e6
movabs r9, 0x3e5676a955bf2d19
xor r8, r9
xor rcx, r8
xor rdx, 0xffffffffffffffff
and rcx, rdx
and rax, rcx
cmp rax, 0
jl 0x1401b3f79
mov eax, dword [0x14027dd18]
xor eax, 0xe936c68e
mov ecx, dword [str.rd_]
xor ecx, 0xcdf2239c
or eax, ecx
mov ecx, 0x9c62a3fd
xor ecx, 0xf7f3fede
add eax, ecx
mov ecx, 0xb9c0f56d
xor ecx, 0x33159fc4
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
and eax, 0xd53cb940
xor eax, 0xffffffff
mov edx, 0x292eca62
xor edx, 0xd6d1359d
xor ecx, edx
mov edx, 0xc2806e09
xor edx, 0x17bcd749
mov r8d, 0x622ddef8
xor r8d, 0x9dd22107
xor edx, r8d
or ecx, edx
mov edx, 0xe3949ffd
xor edx, 0x1c6b6002
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xfb6a4162
xor ecx, 0x3a586d7a
cmp eax, ecx
ja 0x1401b6215
mov rcx, qword [rbp + 0x1a8]
mov eax, dword [0x14027dd20]
xor eax, 0xed54d503
xor edx, edx
div dword [0x14027dd24]
mov rdx, qword [rbp + 0x1b0]
mov r8d, eax
mov eax, 0x81f44e32
xor eax, 0x2c39e171
mov r9d, 0x1657a353
xor r9d, 0xe9a85cac
xor eax, r9d
mov r9d, 0xddd6b954
xor r9d, 0xddd6b954
mov r10d, 0x2cc8781d
xor r10d, 0x2cc8781c
sub r9d, r10d
sub eax, r9d
sub r8d, eax
mov eax, r8d
and eax, 0x5f1ab697
xor r8d, 0x5f1ab697
or eax, r8d
mov r8d, eax
and r8d, 0x76158541
mov r9d, 0x34f71827
xor r9d, 0x34f71825
imul r8d, r9d
xor eax, 0x76158541
add eax, r8d
mov qword [rcx], rdx
cmp eax, 0xd28e17fa
jae 0x1401b6215
jmp 0x1401b3fb0
sub rsp, 0x20
call fcn.14000f24b
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0x210]
mov eax, dword [rbp + 0x27c]
add rsp, 0x20
cmp byte [rdx], 0
mov qword [rbp + 0x218], rcx
mov dword [rbp + 0x220], eax
jne 0x1401b4d7d
mov r8, qword [rbp + 0x1338]
mov rdx, qword [rbp + 0x1b8]
mov rcx, qword [rbp + 0x1238]
mov rax, qword [rbp + 0x1230]
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.1401a7540
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0x210]
add rsp, 0x20
mov r8d, eax
mov eax, dword [rbp + 0x27c]
mov dword [rbp + 0x1a4], r8d
mov dl, byte [rdx]
mov r8b, 0x77
xor r8b, 0x77
cmp dl, r8b
mov qword [rbp + 0x218], rcx
mov dword [rbp + 0x220], eax
jne 0x1401b4d7d
mov eax, dword [rbp + 0x1a4]
mov ecx, dword [rbp + 0x27c]
movsxd r8, ecx
movsxd rdx, eax
mov rcx, rdx
add rcx, r8
mov qword [rbp + 0x198], rcx
mov rax, rcx
xor rax, r8
xor rcx, rdx
and rax, rcx
movabs rcx, 0xa69e5602c8ccb04a
movabs rdx, 0xa69e5602c8ccb04a
xor rcx, rdx
cmp rax, rcx
jge 0x1401b409b
sub rsp, 0x20
call fcn.14000f24b
mov rcx, qword [rbp + 0x210]
mov eax, dword [rbp + 0x27c]
add rsp, 0x20
mov qword [rbp + 0x218], rcx
mov dword [rbp + 0x220], eax
jmp 0x1401b4d7d
mov eax, dword [0x14027dd28]
xor eax, 0xf5318af1
add eax, dword [0x14027dd2c]
mov ecx, 0xcea5eed1
xor edx, edx
div ecx
imul r11d, eax, 0xf83f5e53
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x74e8f871
mov edx, 0xffffffff
xor edx, 0x2bb218e0
mov eax, ecx
and eax, 0x2bb218e0
and r11d, edx
mov r9d, r8d
and r9d, 0x2bb218e0
mov r10d, edx
and r10d, 0x74e8f871
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
mov r8d, 0xf7bcc297
xor r8d, 0x8433d68
xor ecx, r8d
or edx, 0x2bb218e0
and ecx, edx
or eax, ecx
cmp eax, 0xb97c62fb
jb 0x1401b621e
mov rdx, qword [rbp + 0x198]
mov eax, dword [0x14027dd30]
mov ecx, dword [0x14027dd34]
or eax, eax
mov r8d, 0x713d8b1d
xor r8d, 0x8ec274e2
xor eax, r8d
or ecx, ecx
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xf4c38ece
xor ecx, 0xb3c7131
xor eax, ecx
xor eax, 0xa7b9c62
mov ecx, 0xda47f611
xor ecx, 0x25b809ee
mov r8d, eax
xor r8d, ecx
and r8d, 0x29bdb431
mov r9d, 0xffffffff
xor r9d, 0x29bdb431
mov ecx, eax
and ecx, r9d
imul ecx, r8d
mov r8d, eax
and r8d, 0x29bdb431
or eax, 0x29bdb431
imul eax, r8d
add eax, ecx
and eax, 0x577ae5c3
mov ecx, 0x8d0ae58b
xor ecx, 0xe3b48de3
mov r8, 0xffffffffffffffff
xor r8, 0xffffffff80000000
xor r9d, r9d
sub r9, 1
sub r8, r9
sub rdx, r8
movabs r8, 0xffffffff00000000
cmp rdx, r8
setb dl
mov byte [rbp + 0x197], dl
cmp eax, ecx
ja 0x1401b621e
mov al, byte [rbp + 0x197]
test al, 1
jne 0x1401b4206
jmp 0x1401b4232
sub rsp, 0x20
call fcn.14000f24b
mov rcx, qword [rbp + 0x210]
mov eax, dword [rbp + 0x27c]
add rsp, 0x20
mov qword [rbp + 0x218], rcx
mov dword [rbp + 0x220], eax
jmp 0x1401b4d7d
mov eax, dword [0x14027dd38]
xor eax, 0xfece506f
or eax, dword [0x14027dd3c]
mov ecx, eax
and ecx, 0x174dfedd
xor ecx, 0xffffffff
and eax, 0x174dfedd
xor eax, 0xffffffff
and ecx, eax
xor ecx, 0xffffffff
mov edx, ecx
xor edx, 0xbf211b24
mov eax, 0x24bd9a3e
xor eax, 0xdb4265c1
xor edx, eax
and edx, 0xbf211b24
mov eax, 0x4ac0356a
xor eax, 0x4ac03568
imul eax, edx
sub eax, 0xbf211b24
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0xda7b66ea
mov edx, 0xffffffff
xor edx, 0xda7b66ea
and ecx, edx
or eax, ecx
cmp eax, 0xabd12a86
je 0x1401b6227
mov rcx, qword [rbp + 0x198]
mov eax, dword [0x14027dd40]
xor eax, 0x86c90d9
mov edx, dword [0x14027dd44]
xor edx, 0xffffffff
add eax, edx
add eax, 1
mov edx, 0xa403dd91
xor edx, 0xa403dd91
sub edx, eax
xor eax, eax
sub eax, 0xdb1aa357
add edx, eax
xor eax, eax
sub eax, edx
mov edx, eax
xor edx, 0xffffffff
mov r8d, 0xc5702c1e
xor r8d, 0x290fe4d
mov r9d, 0xc2a80c38
xor r9d, 0x3d57f3c7
xor r8d, r9d
or edx, r8d
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xc7e0d253
or eax, r8d
and edx, eax
xor edx, 0xffffffff
mov eax, edx
and eax, 0x65ae1576
xor eax, 0xffffffff
and edx, 0x65ae1576
xor edx, 0xffffffff
and eax, edx
xor eax, 0xffffffff
mov dword [rbp + 0x190], ecx
cmp eax, 0xf1686b39
je 0x1401b42ad
mov eax, dword [rbp + 0x190]
mov rcx, qword [rbp + 0x210]
mov qword [rbp + 0x218], rcx
mov dword [rbp + 0x220], eax
jmp 0x1401b4d7d
mov rax, qword [rbp + 0x808]
mov rax, qword [rax]
mov qword [rbp + 0x180], rax
xor eax, eax
mov qword [rbp + 0x188], rax
mov eax, dword [rbp + 0x27c]
mov rcx, qword [rbp + 0x210]
mov r8, qword [rbp + 0x180]
mov rdx, qword [rbp + 0x188]
mov qword [rbp + 0x178], rdx
cmp rdx, r8
mov qword [rbp + 0x218], rcx
mov dword [rbp + 0x220], eax
jge 0x1401b4d7d
mov rcx, qword [rbp + 0x178]
mov rdx, qword [rbp + 0x808]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rbp + 0x170], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x1401b451f
mov r11d, dword [0x14027dd48]
add r11d, dword [0x14027dd4c]
and r11d, 0xa25aa410
sub r11d, 0x5de28652
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, 0x2c7001d6
xor r8d, 0xb6d12a03
mov eax, 0x9998a614
xor eax, 0x666759eb
xor r8d, eax
mov edx, 0xffffffff
xor edx, 0x9d766794
mov eax, ecx
and eax, 0x9d766794
and r11d, edx
mov r9d, r8d
and r9d, 0x9d766794
mov r10d, edx
and r10d, 0x9aa12bd5
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0x9d766794
and ecx, edx
or eax, ecx
mov ecx, 0x6f893158
xor ecx, 0xe6cd12d8
cmp eax, ecx
jbe 0x1401b6230
mov rcx, qword [rbp + 0x178]
mov eax, dword [0x14027dd50]
xor edx, edx
div dword [0x14027dd54]
xor eax, 0x42b43208
mov r8d, 0x464b3713
xor edx, edx
div r8d
mov rdx, qword [rbp + 0x170]
imul eax, eax, 0x84c9efe7
mov dword [rbp + 0x16c], eax
mov eax, 0x4226d302
xor eax, 0x451c6f27
mov dword [rbp + 0x168], eax
movabs rax, 0x47d1521834a029a7
movabs r8, 0xb82eade7cb5fd658
xor rax, r8
add rdx, rax
sub rsp, 0x20
call fcn.1400292ad
mov ecx, dword [rbp + 0x168]
mov eax, dword [rbp + 0x16c]
add rsp, 0x20
cmp eax, ecx
ja 0x1401b447d
mov eax, dword [rbp + 0x27c]
mov rcx, qword [rbp + 0x210]
mov qword [rbp + 0x218], rcx
mov dword [rbp + 0x220], eax
jmp 0x1401b4d7d
mov eax, dword [0x14027dd58]
mov ecx, 0xb4622999
xor ecx, 0xa707f37
xor eax, ecx
sub eax, dword [0x14027dd5c]
sub eax, 0xa532b6c
and eax, 0xc6de62a2
mov ecx, 0x25a5ddae
xor edx, edx
div ecx
mov ecx, 0xda5ab519
xor ecx, 0x735be13
cmp eax, ecx
jae 0x1401b6239
mov rax, qword [rbp + 0x818]
mov rdx, qword [rbp + 0x178]
mov rcx, qword [rbp + 0x810]
mov r9d, dword [str.t_v_]
add r9d, dword [0x14027dd64]
or r9d, 0x22d23ea0
mov r10d, 0x3dd792ea
xor r10d, 0xc2286d15
mov r8d, r9d
xor r8d, r10d
mov r10d, 0xaece06ad
xor r10d, 0x5131f952
xor r9d, r10d
and r8d, r9d
mov r9d, 0x45ae8026
xor r9d, 0x3e519fe1
mov r10d, 0xa01c39c3
xor r10d, 0x5fe3c63c
xor r9d, r10d
mov r10d, 0xffffffff
xor r10d, 0x7bff1fc7
and r9d, r10d
or r8d, r9d
xor r8d, 0xffffffff
mov r9d, 0x202bfbf7
xor r9d, 0xdfd40408
mov r10d, r8d
xor r10d, r9d
and r10d, 0x70353e44
mov r11d, 0xffffffff
xor r11d, 0x70353e44
mov r9d, r8d
and r9d, r11d
imul r9d, r10d
mov r10d, r8d
and r10d, 0x70353e44
or r8d, 0x70353e44
imul r8d, r10d
add r8d, r9d
mov dword [rbp + 0x160], r8d
mov rcx, qword [rcx]
add rcx, 8
shl rdx, 3
add rcx, rdx
mov qword [rbp + 0x158], rcx
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400cf5c9
mov rcx, qword [rbp + 0x1360]
add rsp, 0x20
mov dl, al
mov eax, dword [rbp + 0x160]
mov byte [rbp + 0x166], dl
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x167], cl
cmp eax, 0x7fec1ead
je 0x1401b6239
mov eax, dword [rbp + 0x27c]
mov rcx, qword [rbp + 0x210]
mov dl, byte [rbp + 0x167]
test dl, 1
mov qword [rbp + 0x218], rcx
mov dword [rbp + 0x220], eax
jne 0x1401b46b1
jmp 0x1401b4d7d
mov al, byte [rbp + 0x166]
test al, 1
jne 0x1401b46c4
jmp 0x1401b4cc3
mov rax, qword [rbp + 0x818]
mov rcx, qword [rbp + 0x158]
mov rcx, qword [rcx]
mov qword [rbp + 0x148], rcx
movsxd rcx, dword [rcx + 0x10]
mov rax, qword [rax]
mov qword [rbp + 0x150], rax
cmp rax, rcx
jl 0x1401b4cc3
mov rax, qword [rbp + 0x150]
mov rcx, qword [rbp + 0x148]
movsxd rcx, dword [rcx + 0x14]
cmp rax, rcx
jg 0x1401b4cc3
mov rax, qword [rbp + 0x820]
mov rcx, qword [rax]
mov qword [rbp + 0x13e0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x13e8], rax
lea rcx, [rbp + 0x13f0]
lea rdx, [rbp + 0x13e0]
sub rsp, 0x20
call fcn.140039831
mov rcx, qword [rbp + 0x8e0]
mov rax, qword [rbp + 0x158]
add rsp, 0x20
mov rdx, qword [rbp + 0x13f0]
mov qword [rbp + 0x130], rdx
mov rcx, qword [rcx]
mov qword [rbp + 0x138], rcx
mov rax, qword [rax]
mov rcx, qword [rax]
mov qword [rbp + 0x13c0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x13c8], rax
lea rcx, [rbp + 0x13d0]
lea rdx, [rbp + 0x13c0]
sub rsp, 0x20
call fcn.140039831
mov rdx, qword [rbp + 0x8e8]
mov r11, qword [rbp + 0x130]
mov r10, qword [rbp + 0x138]
mov r9, qword [rbp + 0x8f0]
mov rax, qword [rbp + 0x8f8]
mov rcx, qword [rbp + 0x1348]
add rsp, 0x20
mov r8, qword [rbp + 0x13d0]
mov rdx, qword [rdx]
mov qword [rcx], r11
mov qword [r9], r10
mov qword [rbp + 0x13b0], r8
mov qword [rax], rdx
lea rdx, [rbp + 0x13b0]
sub rsp, 0x20
call fcn.1400b6d90
mov rdx, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0x210]
add rsp, 0x20
mov r8b, al
mov eax, dword [rbp + 0x27c]
mov byte [rbp + 0x147], r8b
mov dl, byte [rdx]
mov r8b, 0x68
xor r8b, 0x68
cmp dl, r8b
mov qword [rbp + 0x218], rcx
mov dword [rbp + 0x220], eax
jne 0x1401b4d7d
mov al, byte [rbp + 0x147]
test al, 1
jne 0x1401b4846
jmp 0x1401b4cc3
mov rax, qword [rbp + 0x848]
mov rdx, qword [rax]
xor eax, eax
sub rax, 0x10
mov rcx, rdx
sub rcx, rax
mov qword [rbp + 0x128], rcx
xor rdx, 0xffffffffffffffff
mov rax, rcx
and rax, rdx
xor rax, 0xffffffffffffffff
and rcx, rdx
xor rcx, 0xffffffffffffffff
and rax, rcx
xor rax, 0xffffffffffffffff
cmp rax, 0
jl 0x1401b489f
mov rax, qword [rbp + 0x848]
mov rcx, qword [rbp + 0x128]
mov qword [rax], rcx
jmp 0x1401b48bc
sub rsp, 0x20
call fcn.14000f24b
mov rax, qword [rbp + 0x1360]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401b4a83
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0x120], rax
mov rax, qword [rbp + 0x120]
xorps xmm0, xmm0
movups xmmword [rbp + rax + 0x1380], xmm0
add rax, 0x10
cmp rax, 0x30
mov qword [rbp + 0x120], rax
jne 0x1401b48db
lea rcx, [rbp + 0x1380]
lea rdx, [rbp + 0x1788]
mov r8d, 0x30
sub rsp, 0x20
call sub.msvcrt.dll_memcpy
add rsp, 0x20
lea rcx, [rbp + 0x1788]
sub rsp, 0x20
call fcn.14010e041
mov rax, qword [rbp + 0x850]
mov rcx, qword [rbp + 0x1230]
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp + 0x110], rax
mov rcx, qword [rcx]
mov qword [rbp + 0x118], rcx
cmp rax, 0
je 0x1401b499b
mov rax, qword [rbp + 0x118]
mov r9, qword [rbp + 0x110]
mov rdx, qword [rbp + 0x1358]
mov rcx, qword [rbp + 0x1238]
lea r8, [rbp + 0x1380]
sub rsp, 0x20
call rax
add rsp, 0x20
mov byte [rbp + 0x10f], al
jmp 0x1401b49c7
mov rax, qword [rbp + 0x118]
mov rdx, qword [rbp + 0x1358]
mov rcx, qword [rbp + 0x1238]
lea r8, [rbp + 0x1380]
sub rsp, 0x20
call rax
add rsp, 0x20
mov byte [rbp + 0x10f], al
mov rax, qword [rbp + 0x1360]
mov cl, byte [rbp + 0x10f]
mov al, byte [rax]
test al, al
sete al
mov byte [rbp + 0x10e], al
and al, cl
test al, 1
jne 0x1401b49f0
jmp 0x1401b4b89
mov eax, dword [rbp + 0x27c]
movsxd rdx, eax
and eax, 1
mov rcx, rdx
or rcx, 1
add rax, rcx
mov qword [rbp + 0x100], rax
mov r8, rdx
not r8
mov rcx, rax
xor rcx, r8
not rcx
or rax, r8
and rax, rcx
test rax, rax
sets al
mov rcx, rdx
and rcx, 0xffffffff80000001
or rdx, 0xffffffff80000001
add rcx, rdx
movabs rdx, 0xffffffff00000000
sub rcx, rdx
setb cl
or al, cl
test al, 1
jne 0x1401b4a76
mov rcx, qword [rbp + 0x210]
mov rax, qword [rbp + 0x100]
mov qword [rbp + 0x218], rcx
mov dword [rbp + 0x220], eax
jmp 0x1401b4d7d
sub rsp, 0x20
call fcn.14000f24b
add rsp, 0x20
mov eax, dword [0x14027dd68]
and eax, dword [0x14027dd6c]
mov ecx, eax
xor ecx, 0xfeb58861
xor ecx, 0xffffffff
or eax, 0xfeb58861
and eax, ecx
add eax, 0xbe94258d
mov ecx, 0x16a1546f
xor ecx, 0xeb8eee3c
sub eax, ecx
sub eax, 0xbe94258d
mov ecx, 0x7f3b7ec4
xor ecx, 0x80c4813b
xor eax, ecx
mov edx, 0xd9f2df1a
xor edx, 0x28d09b84
mov ecx, 0x187fd01b
xor ecx, 0xe7802fe4
xor edx, ecx
mov ecx, 0xffffffff
xor ecx, 0x5f8bcb86
or eax, edx
or ecx, 0x5f8bcb86
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0x27dbe0d3
xor ecx, 0xa15b681a
cmp eax, ecx
je 0x1401b6242
mov eax, dword [0x14027dd70]
sub eax, dword [0x14027dd74]
xor ecx, ecx
sub ecx, 0xf5fe9300
add eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0xc35c853d
mov r8d, 0xffffffff
xor r8d, 0xc35c853d
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xc35c853d
or eax, 0xc35c853d
imul eax, edx
add eax, ecx
sub eax, 0x20670834
add eax, 0x4ab0dcf3
add eax, 0x20670834
cmp eax, 0x35c10567
je 0x1401b4b08
mov eax, dword [rbp + 0x27c]
mov rcx, qword [rbp + 0x210]
mov qword [rbp + 0x218], rcx
mov dword [rbp + 0x220], eax
jmp 0x1401b4d7d
mov eax, dword [0x14027dd78]
mov ecx, 0x84d68e73
xor ecx, 0x171b8d1d
xor eax, ecx
or eax, dword [0x14027dd7c]
mov ecx, 0x41d9f248
xor ecx, 0x497c99f0
mov edx, 0xe4961acc
xor edx, 0x1b69e533
xor ecx, edx
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
mov ecx, eax
xor ecx, 0x818ea9c1
xor ecx, 0xffffffff
and ecx, 0x818ea9c1
shl ecx, 1
sub ecx, 0x818ea9c1
sub eax, ecx
mov ecx, 0x9a4d67de
xor ecx, 0x81f60da6
sub eax, ecx
cmp eax, 0x6488f815
jbe 0x1401b624b
mov ecx, dword [0x14027dd80]
mov edx, dword [0x14027dd84]
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov r8d, edx
xor r8d, 0xffffffff
mov r9d, edx
xor r9d, 0xffffffff
and r8d, r9d
xor eax, 0xffffffff
xor r8d, 0xffffffff
and eax, r8d
xor ecx, 0xffffffff
mov r8d, 0xbcb55381
xor r8d, 0x434aac7e
xor edx, r8d
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
add eax, 0xfcedaa2b
mov ecx, 0xad89e0f
xor ecx, 0x20e8fd46
xor edx, edx
div ecx
add eax, 0x7baf82db
mov ecx, 0xd5add13
xor ecx, 0x1c866e4
cmp eax, ecx
jbe 0x1401b624b
mov eax, dword [rbp + 0x27c]
mov rcx, qword [rbp + 0x210]
mov rdx, qword [rbp + 0x178]
mov r10b, byte [rbp + 0x10e]
mov r9b, 1
mov r8d, 0x88
test r10b, 1
mov byte [rbp + 0xf3], r9b
mov dword [rbp + 0xf4], r8d
mov qword [rbp + 0xf8], rdx
mov qword [rbp + 0x218], rcx
mov dword [rbp + 0x220], eax
jne 0x1401b4d7d
jmp 0x1401b4cec
mov rax, qword [rbp + 0x178]
xor ecx, ecx
sub rcx, 1
sub rax, rcx
xor ecx, ecx
mov dl, cl
xor ecx, ecx
mov byte [rbp + 0xf3], dl
mov dword [rbp + 0xf4], ecx
mov qword [rbp + 0xf8], rax
mov eax, dword [rbp + 0x27c]
mov rcx, qword [rbp + 0x210]
mov r8b, byte [rbp + 0xf3]
mov edx, dword [rbp + 0xf4]
mov r9, qword [rbp + 0xf8]
mov qword [rbp + 0xe0], r9
mov dword [rbp + 0xec], edx
mov byte [rbp + 0xf1], r8b
mov byte [rbp + 0xf2], dl
sub dl, 0x88
mov qword [rbp + 0x218], rcx
mov dword [rbp + 0x220], eax
je 0x1401b4d7d
jmp 0x1401b4d42
mov eax, dword [rbp + 0xec]
mov cl, byte [rbp + 0xf1]
mov rdx, qword [rbp + 0xe0]
mov r8b, byte [rbp + 0xf2]
test r8b, r8b
mov qword [rbp + 0x188], rdx
mov byte [rbp + 0x26b], cl
mov dword [rbp + 0x26c], eax
je 0x1401b4386
jmp 0x1401b5055
mov rax, qword [rbp + 0x250]
mov rcx, qword [rbp + 0x218]
mov edx, dword [rbp + 0x220]
mov dword [rbp + 0xd4], edx
mov qword [rbp + 0xd8], rcx
cmp rax, 0
je 0x1401b4f86
mov ecx, dword [0x14027dd88]
xor ecx, dword [0x14027dd8c]
mov edx, 0xf6be37d4
xor edx, 0x73f951ba
mov eax, 0x51833393
xor eax, 0xae7ccc6c
xor edx, eax
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0xffd81216
xor ecx, 0x8172df9a
and ecx, eax
xor ecx, 0xffffffff
add eax, 0x7eaacd8c
mov edx, 0xf7068abc
xor edx, 0xf7068abd
add eax, edx
add eax, ecx
mov edx, 0xffffffff
xor edx, 0x871c9cb0
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x871c9cb0
add eax, edx
sub eax, ecx
cmp eax, 0x8ca70efa
jbe 0x1401b6254
mov rcx, qword [rbp + 0x250]
mov edx, dword [0x14027dd90]
mov r8d, dword [0x14027dd94]
mov eax, 0xd0bad69e
xor eax, 0xcc350fad
xor r8d, eax
mov eax, r8d
and eax, edx
mov r9d, 0xec931191
xor r9d, 0x136cee6e
xor eax, r9d
add edx, r8d
mov r8d, 0x36f1d6a
xor r8d, 0x36f1d6b
add edx, r8d
add edx, eax
mov eax, edx
or eax, eax
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xb23f8add
mov r9d, 0xc89cd77d
xor r9d, 0x7aa35da0
mov r10d, 0x7a8a6695
xor r10d, 0x8575996a
xor r9d, r10d
and r8d, r9d
or eax, r8d
mov r8d, 0xe6323747
xor r8d, 0x19cdc8b8
xor eax, r8d
or edx, 0xb23f8add
mov r8d, 0xa25528de
xor r8d, 0x5daad721
xor edx, r8d
or eax, edx
xor eax, 0xffffffff
mov edx, eax
xor edx, 0xffffffff
and edx, 0x4db81122
mov r8d, 0xffffffff
xor r8d, 0x4db81122
and eax, r8d
sub eax, edx
and eax, 0xc7d249a4
mov rdx, qword [rcx]
movabs r8, 0xeef1ec179e7791b5
movabs rcx, 0x110e13e861886e4a
xor r8, rcx
mov rcx, rdx
xor rcx, r8
xor rdx, 0xffffffffffffffff
and rcx, rdx
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
mov r8, 0xffffffffffffffff
movabs r9, 0x4000000000000000
xor r8, r9
and rdx, r8
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
and rcx, rdx
cmp rcx, 0
sete cl
mov byte [rbp + 0xd3], cl
cmp eax, 0x64b40436
jae 0x1401b6254
mov al, byte [rbp + 0xd3]
test al, 1
jne 0x1401b4f72
jmp 0x1401b4f86
mov rcx, qword [rbp + 0x250]
sub rsp, 0x20
call fcn.14001d1d6
add rsp, 0x20
mov eax, dword [rbp + 0xd4]
mov rcx, qword [rbp + 0xd8]
cmp rcx, 0
mov dword [rbp + 0x260], eax
je 0x1401b4ffd
mov eax, dword [rbp + 0xd4]
mov rcx, qword [rbp + 0xd8]
mov rcx, qword [rcx]
movabs rdx, 0x7f15dbb21be17abc
movabs r8, 0x3f15dbb21be17abc
xor rdx, r8
and rcx, rdx
cmp rcx, 0
mov dword [rbp + 0x260], eax
jne 0x1401b4ffd
mov rcx, qword [rbp + 0xd8]
sub rsp, 0x20
call fcn.14001d1d6
mov eax, dword [rbp + 0xd4]
add rsp, 0x20
mov dword [rbp + 0x260], eax
mov rcx, qword [rbp + 0x1360]
mov eax, dword [rbp + 0x260]
mov dword [rbp + 0xcc], eax
mov cl, byte [rcx]
mov dl, 0x98
xor dl, 0x98
cmp cl, dl
mov dword [rbp + 0x25c], eax
je 0x1401b5044
mov rax, qword [rbp + 0x4f0]
mov ecx, dword [rbp + 0x25c]
mov dword [rbp + 0x4cc], ecx
mov qword [rbp + 0x4d0], rax
jmp 0x1401b54f9
mov eax, dword [rbp + 0xcc]
mov dword [rbp + 0x46c], eax
jmp 0x1401b514e
mov eax, dword [rbp + 0x27c]
mov dl, byte [rbp + 0x26b]
mov ecx, dword [rbp + 0x26c]
mov dword [rbp + 0xc4], ecx
mov byte [rbp + 0xcb], dl
test ecx, ecx
mov dword [rbp + 0x46c], eax
je 0x1401b514e
jmp 0x1401b5086
mov eax, dword [rbp + 0x27c]
mov ecx, dword [rbp + 0xc4]
mov dl, byte [rbp + 0xcb]
mov r8d, ecx
sub r8d, 0x87
mov byte [rbp + 0x287], dl
mov dword [rbp + 0x288], ecx
mov ecx, eax
mov dword [rbp + 0x28c], ecx
mov dword [rbp + 0x46c], eax
je 0x1401b514e
jmp 0x1401b50c7
mov dl, byte [rbp + 0x287]
mov ecx, dword [rbp + 0x288]
mov eax, dword [rbp + 0x28c]
mov dword [rbp + 0xb8], eax
mov dword [rbp + 0xbc], ecx
mov byte [rbp + 0xc3], dl
test ecx, ecx
mov dword [rbp + 0x46c], eax
je 0x1401b514e
jmp 0x1401b50fe
mov eax, dword [rbp + 0xbc]
mov rcx, qword [rbp + 0x458]
mov edx, dword [rbp + 0xb8]
mov r8b, byte [rbp + 0xc3]
mov r9d, eax
sub r9d, 0x6a
mov r9d, edx
mov dword [rbp + 0x46c], r9d
mov byte [rbp + 0xa3], r8b
mov dword [rbp + 0xa4], edx
mov qword [rbp + 0xa8], rcx
mov dword [rbp + 0xb4], eax
jne 0x1401b534f
jmp 0x1401b514e
mov rcx, qword [rbp + 0x458]
mov eax, dword [rbp + 0x46c]
mov dword [rbp + 0x98], eax
mov edx, dword [rcx]
mov dword [rbp + 0x9c], edx
xor ecx, ecx
cmp edx, 1
mov byte [rbp + 0x4df], cl
mov dword [rbp + 0x4d8], eax
jl 0x1401b0183
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov rcx, rax
add rcx, 0x60
mov qword [rbp + 0x90], rcx
cmp byte [rax + 0x60], 0
jne 0x1401b52fb
mov eax, dword [0x14027dd98]
xor eax, 0x24cda12
imul eax, dword [0x14027dd9c]
imul ecx, eax, 0x2f87bf4e
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
and eax, edx
mov edx, 0x31d4eabd
or edx, 0x31d4eabd
mov r8d, 0x9c5a96b3
xor r8d, 0x63a5694c
xor edx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
mov edx, 0x62b2afa1
xor edx, 0x9d4d505e
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0x31d4eabd
and ecx, edx
or eax, ecx
mov ecx, 0xd13e12ed
xor ecx, 0x2ec1ed12
xor eax, ecx
xor eax, 0xa0847214
mov ecx, 0xf0950d19
xor ecx, 0x1ada5b76
cmp eax, ecx
je 0x1401b625d
mov eax, dword [0x14027dda0]
xor eax, dword [0x14027dda4]
mov ecx, 0xb75810e4
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
and eax, 0xa0ea34f
or ecx, 0xa0ea34f
add eax, ecx
mov ecx, 0x4654c912
xor edx, edx
div ecx
mov dword [rbp + 0x88], eax
mov eax, 0xc735f203
xor eax, 0xcc8394d
mov dword [rbp + 0x84], eax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
mov rdx, qword [rbp + 0x90]
mov ecx, dword [rbp + 0x84]
add rsp, 0x20
mov eax, dword [rbp + 0x88]
cmp byte [rdx], 0
sete dl
mov byte [rbp + 0x8f], dl
cmp eax, ecx
jae 0x1401b625d
mov al, byte [rbp + 0x8f]
test al, 1
jne 0x1401b52cb
jmp 0x1401b52fb
mov rcx, qword [rbp + 0x458]
mov eax, dword [rbp + 0x9c]
mov eax, eax
movabs rdx, 0x7e04cf8a5514390f
sub rax, rdx
add rax, rcx
movabs rcx, 0x7e04cf8a5514390f
add rax, rcx
mov qword [rbp + 0x78], rax
mov rax, qword [rbp + 0x4f0]
mov ecx, dword [rbp + 0x98]
mov r10, qword [rbp + 0x1360]
mov r8, qword [rbp + 0x78]
xor edx, edx
mov r9b, dl
xor edx, edx
cmp byte [r10], 0
mov byte [rbp + 0xa3], r9b
mov r9d, ecx
mov dword [rbp + 0xa4], r9d
mov qword [rbp + 0xa8], r8
mov dword [rbp + 0xb4], edx
mov dword [rbp + 0x4cc], ecx
mov qword [rbp + 0x4d0], rax
jne 0x1401b54f9
mov r8b, byte [rbp + 0xa3]
mov eax, dword [rbp + 0xa4]
mov rcx, qword [rbp + 0xa8]
mov edx, dword [rbp + 0xb4]
mov dword [rbp + 0x6c], edx
mov dword [rbp + 0x70], eax
mov byte [rbp + 0x77], r8b
test edx, edx
mov qword [rbp + 0x470], rcx
mov dword [rbp + 0x478], eax
je 0x1401b0c61
jmp 0x1401b538d
mov eax, dword [rbp + 0x70]
mov cl, byte [rbp + 0x77]
mov edx, dword [rbp + 0x6c]
sub edx, 0x59
mov byte [rbp + 0x517], cl
mov dword [rbp + 0x518], eax
je 0x1401b552e
jmp 0x1401b53b0
mov rax, qword [rbp + 0x4f0]
mov ecx, dword [rbp + 0x70]
mov edx, dword [rbp + 0x6c]
sub edx, 0x5c
mov dword [rbp + 0x4cc], ecx
mov qword [rbp + 0x4d0], rax
je 0x1401b54f9
jmp 0x1401b53d8
mov eax, dword [rbp + 0x70]
mov cl, byte [rbp + 0x4c3]
mov edx, dword [rbp + 0x6c]
sub edx, 0x65
mov byte [rbp + 0x4df], cl
mov dword [rbp + 0x4d8], eax
je 0x1401b0183
jmp 0x1401b53fe
mov eax, dword [rbp + 0x70]
mov ecx, dword [rbp + 0x6c]
mov dl, byte [rbp + 0x77]
mov r8d, ecx
sub r8d, 0x66
mov r8d, eax
mov dword [rbp + 0x5c], r8d
mov byte [rbp + 0x63], dl
mov dword [rbp + 0x64], ecx
mov dword [rbp + 0x68], eax
je 0x1401b5464
jmp 0x1401b5a82
mov rax, qword [rbp + 0x4f0]
mov ecx, dword [rbp + 0x4c4]
mov edx, dword [rbp + 0x4ac]
mov r8d, 0x6073536
xor r8d, 0x86073530
cmp edx, r8d
mov edx, ecx
mov dword [rbp + 0x5c], edx
mov dword [rbp + 0x4cc], ecx
mov qword [rbp + 0x4d0], rax
je 0x1401b54f9
mov eax, dword [rbp + 0x5c]
mov dword [rbp + 0x58], eax
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.140029060
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x14028d000]
mov qword [rcx], rax
lea rax, [0x14028b908]
mov qword [rcx + 0x10], rax
mov rax, qword [0x14028b978]
mov qword [rcx + 0x18], rax
mov rax, qword [0x14028b980]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x14028b908]
lea r8, [0x14028b919]
lea r9, [0x14028b921]
sub rsp, 0x30
mov qword [rsp + 0x20], 0xffffffffba93d67b
call fcn.140028fa8
mov ecx, dword [rbp + 0x58]
mov rax, qword [rbp + 0x4f0]
add rsp, 0x30
mov dword [rbp + 0x4cc], ecx
mov qword [rbp + 0x4d0], rax
mov eax, dword [rbp + 0x4cc]
mov rcx, qword [rbp + 0x4d0]
mov dword [rbp + 0x54], eax
sub rsp, 0x20
call fcn.14003b4d4
mov rcx, qword [rbp + 0x1360]
mov eax, dword [rbp + 0x54]
add rsp, 0x20
mov cl, byte [rcx]
mov byte [rbp + 0x517], cl
mov dword [rbp + 0x518], eax
mov rax, qword [rbp + 0x12c0]
mov rcx, qword [rbp + 0x1360]
mov dl, byte [rbp + 0x517]
mov r8d, dword [rbp + 0x518]
mov dword [rbp + 0x40], r8d
mov byte [rbp + 0x47], dl
mov byte [rcx], 0
mov rax, qword [rax]
mov qword [rbp + 0x48], rax
cmp rax, 0
jle 0x1401b56ab
mov eax, dword [0x14027dda8]
mov edx, dword [0x14027ddac]
xor edx, 0x531a471c
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov ecx, eax
and ecx, 0xeda304e
shl ecx, 1
add eax, 0xeda304e
sub eax, ecx
mov edx, 0x5eb695b1
xor edx, 0x5eb695b0
mov ecx, eax
add ecx, edx
xor eax, 0xffffffff
or eax, 0x1b2b4b5f
add eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xfd29e638
add eax, ecx
mov ecx, 0x2561cce6
xor ecx, 0x2561cce7
add eax, ecx
mov ecx, 0x7e72c49e
xor ecx, 0x9818b14f
cmp eax, ecx
ja 0x1401b6266
mov rcx, qword [rbp + 0x48]
mov edx, dword [0x14027ddb0]
mov r8d, dword [0x14027ddb4]
mov r9d, edx
xor r9d, r8d
xor r9d, 0xffffffff
mov eax, r8d
and eax, r9d
shl eax, 1
sub eax, r8d
sub edx, eax
mov eax, edx
and eax, 0x706e3d9b
xor edx, 0x706e3d9b
or eax, edx
add eax, 0xddb9a900
mov edx, 0x2b5d2bb7
xor edx, 0x112f001
add eax, edx
mov dword [rbp + 0x30], eax
mov rax, qword [0x14028d038]
sub rsp, 0x20
call qword [rax]
mov rcx, qword [rbp + 0x1360]
add rsp, 0x20
mov eax, dword [rbp + 0x30]
mov r8b, byte [rcx]
mov byte [rbp + 0x37], r8b
mov ecx, 0x57
xor edx, edx
cmp r8b, 0
cmove ecx, edx
mov dword [rbp + 0x38], ecx
mov byte [rbp + 0x3f], cl
cmp eax, 0x5dac53be
jbe 0x1401b6266
mov al, byte [rbp + 0x3f]
test al, al
je 0x1401b56ab
jmp 0x1401b5672
mov eax, dword [rbp + 0x40]
mov ecx, dword [rbp + 0x38]
mov dl, byte [rbp + 0x37]
mov r8b, byte [rbp + 0x3f]
sub r8b, 0x57
mov r8b, dl
mov byte [rbp + 0x533], r8b
mov r8d, eax
mov dword [rbp + 0x534], r8d
mov byte [rbp + 0x63], dl
mov dword [rbp + 0x64], ecx
mov dword [rbp + 0x68], eax
je 0x1401b574a
jmp 0x1401b5a82
mov eax, dword [rbp + 0x40]
mov cl, byte [rbp + 0x47]
mov byte [rbp + 0x533], cl
mov dword [rbp + 0x534], eax
jmp 0x1401b574a
mov rax, qword [rbp + 0x5a0]
mov qword [rbp + 0x28], rax
sub rsp, 0x20
call fcn.14000f24b
mov rdx, qword [rbp + 0x678]
mov rcx, qword [rbp + 0x5f8]
mov rax, qword [rbp + 0x28]
add rsp, 0x20
mov qword [rbp + 0x6a0], rdx
mov qword [rbp + 0x6a8], rcx
mov qword [rbp + 0x6b0], rax
mov r8d, dword [rbp + 0x6ec]
mov r10, qword [rbp + 0x1360]
mov rax, qword [rbp + 0x6a0]
mov rcx, qword [rbp + 0x6a8]
mov rdx, qword [rbp + 0x6b0]
mov r9b, byte [r10]
mov r11b, 0x2e
xor r11b, 0x2e
mov byte [r10], r11b
mov byte [rbp + 0xb], r9b
mov dword [rbp + 0xc], r8d
mov qword [rbp + 0x10], rdx
mov qword [rbp + 0x18], rcx
mov qword [rbp + 0x20], rax
jmp 0x1401b5839
mov rax, qword [rbp + 0x678]
mov rcx, qword [rbp + 0x5f8]
mov rdx, qword [rbp + 0x598]
mov r10, qword [rbp + 0x540]
mov r11, qword [rbp + 0x1360]
mov r9b, byte [rbp + 0x533]
mov r8d, dword [rbp + 0x534]
mov dword [rbp + 4], r8d
mov byte [rbp + 0xa], r9b
mov byte [r11], 0
cmp r10, 0
mov byte [rbp + 0xb], r9b
mov dword [rbp + 0xc], r8d
mov qword [rbp + 0x10], rdx
mov qword [rbp + 0x18], rcx
mov qword [rbp + 0x20], rax
je 0x1401b5839
mov rax, qword [rbp + 0x678]
mov rcx, qword [rbp + 0x5f8]
mov rdx, qword [rbp + 0x598]
mov r8d, dword [rbp + 4]
mov r9b, byte [rbp + 0xa]
mov r11, qword [rbp + 0x540]
movabs r10, 0x4000000000000000
and r10, qword [r11]
cmp r10, 0
mov byte [rbp + 0xb], r9b
mov dword [rbp + 0xc], r8d
mov qword [rbp + 0x10], rdx
mov qword [rbp + 0x18], rcx
mov qword [rbp + 0x20], rax
jne 0x1401b5839
mov rcx, qword [rbp + 0x540]
sub rsp, 0x20
call fcn.14001d1d6
mov r9b, byte [rbp + 0xa]
mov r8d, dword [rbp + 4]
mov rdx, qword [rbp + 0x598]
mov rcx, qword [rbp + 0x5f8]
mov rax, qword [rbp + 0x678]
add rsp, 0x20
mov byte [rbp + 0xb], r9b
mov dword [rbp + 0xc], r8d
mov qword [rbp + 0x10], rdx
mov qword [rbp + 0x18], rcx
mov qword [rbp + 0x20], rax
mov cl, byte [rbp + 0xb]
mov edx, dword [rbp + 0xc]
mov rax, qword [rbp + 0x10]
mov r8, qword [rbp + 0x18]
mov r9, qword [rbp + 0x20]
mov qword [rbp - 0x20], r9
mov qword [rbp - 0x18], r8
mov qword [rbp - 0x10], rax
mov dword [rbp - 4], edx
mov byte [rbp + 2], cl
cmp cl, 0
sete cl
mov byte [rbp + 3], cl
cmp rax, 0
je 0x1401b58af
mov rax, qword [rbp - 0x10]
mov rcx, qword [rax]
mov rdx, 0xffffffffffffffff
movabs rax, 0x4000000000000000
xor rdx, rax
mov rax, rcx
xor rax, rdx
and rax, rcx
cmp rax, 0
jne 0x1401b58af
mov rcx, qword [rbp - 0x10]
sub rsp, 0x20
call fcn.14001d1d6
add rsp, 0x20
mov rax, qword [rbp - 0x18]
cmp rax, 0
je 0x1401b58fa
mov rax, qword [rbp - 0x18]
mov rax, qword [rax]
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
or rax, rdx
add rax, rcx
cmp rax, 0
jne 0x1401b58fa
mov rcx, qword [rbp - 0x18]
sub rsp, 0x20
call fcn.14001d1d6
add rsp, 0x20
mov rax, qword [rbp - 0x20]
cmp rax, 0
je 0x1401b5934
mov rcx, qword [rbp - 0x20]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x1401b5934
mov rcx, qword [rbp - 0x20]
sub rsp, 0x20
call fcn.14001d1d6
add rsp, 0x20
lea rcx, [rbp + 0x1728]
sub rsp, 0x20
call fcn.14010e070
mov rax, qword [rbp + 0x1360]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401b5a77
mov eax, dword [0x14027ddb8]
imul eax, dword [0x14027ddbc]
mov edx, 0x15bc9dc2
xor edx, 0x15bc9dc3
mov ecx, eax
add ecx, edx
xor eax, 0xffffffff
or eax, 0xc0ba4a07
add eax, ecx
mov r8d, 0xffffffff
xor r8d, 0xe1bb2718
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xe1bb2718
or eax, 0xe1bb2718
imul eax, edx
add eax, ecx
imul eax, eax, 0x45edd26d
cmp eax, 0x4266360d
je 0x1401b626f
mov rcx, qword [rbp + 0x1360]
mov eax, dword [0x14027ddc0]
mov r9d, dword [0x14027ddc4]
mov edx, eax
xor edx, 0xffffffff
mov r8d, r9d
and r8d, edx
mov r10d, r9d
xor r10d, 0xffffffff
mov edx, eax
and edx, r10d
imul edx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, edx
mov edx, eax
xor edx, 0xffffffff
mov r8d, 0xb93c258d
xor r8d, 0x1067f2dd
and r8d, edx
mov r9d, 0xffffffff
xor r9d, 0xa95bd750
mov edx, eax
and edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0xa95bd750
or eax, 0xa95bd750
imul eax, r8d
add eax, edx
mov r8d, 0xe8bbb47
xor edx, edx
div r8d
mov dl, byte [rbp + 2]
and eax, 0xd749ebf7
mov byte [rcx], dl
cmp eax, 0x94278be0
jae 0x1401b59be
mov al, byte [rbp + 3]
test al, 1
jne 0x1401b5a6c
jmp 0x1401b5a77
mov eax, dword [rbp - 4]
mov dword [rbp - 0x24], eax
jmp 0x1401b5b6c
mov eax, dword [rbp - 4]
mov dword [rbp - 0x28], eax
jmp 0x1401b5abe
mov dl, byte [rbp + 0x63]
mov ecx, dword [rbp + 0x64]
mov eax, dword [rbp + 0x68]
mov dword [rbp - 0x38], eax
mov byte [rbp - 0x32], dl
cmp ecx, 0
mov byte [rbp - 0x31], dl
mov dword [rbp - 0x30], ecx
mov dword [rbp - 0x2c], eax
jne 0x1401b5d89
mov eax, dword [rbp - 0x38]
mov cl, byte [rbp - 0x32]
mov dl, 0x6b
xor dl, 0x6b
cmp cl, dl
mov ecx, eax
mov dword [rbp - 0x28], ecx
mov dword [rbp - 0x24], eax
je 0x1401b5b6c
mov eax, dword [rbp - 0x28]
mov dword [rbp - 0x44], eax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov rcx, rax
mov eax, dword [rbp - 0x44]
mov rcx, qword [rcx + 0x10]
mov rcx, qword [rcx]
mov qword [rbp - 0x40], rcx
cmp word [rcx + 0x12], 1
mov dword [rbp - 0x24], eax
jle 0x1401b5b6c
mov eax, dword [rbp - 0x44]
mov rcx, qword [rbp - 0x40]
mov rcx, qword [rcx + 0x18]
mov ecx, dword [rcx + 8]
mov edx, 0x928a409b
xor edx, 0x468f091d
cmp ecx, edx
mov dword [rbp - 0x24], eax
jne 0x1401b5b6c
mov rax, qword [rbp + 0x1360]
mov byte [rax], 0
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov rcx, rax
add rcx, 0x10
mov rax, qword [rax + 0x10]
mov rdx, qword [rax + 0x38]
xor eax, eax
mov r8b, al
xor r8b, 0
and r8b, 1
sub rsp, 0x20
call fcn.140028560
mov eax, dword [rbp - 0x44]
add rsp, 0x20
mov dword [rbp - 0x24], eax
mov eax, dword [rbp - 0x24]
mov dword [rbp - 0x48], eax
mov eax, dword [0x14027ddc8]
mov edx, dword [0x14027ddcc]
mov ecx, 0xdb71ef36
xor ecx, 0x248e10c9
xor eax, ecx
xor edx, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xb345c9e3
or eax, edx
or ecx, 0xb345c9e3
xor eax, 0xffffffff
and eax, ecx
sub eax, 0xf9ab8a72
add eax, 0x4d6b228f
mov ecx, 0x4acc37d
xor ecx, 0xe1871315
imul eax, ecx
cmp eax, 0xb331eff5
jae 0x1401b6278
mov rcx, qword [rbp + 0x6c8]
mov eax, dword [0x14027ddd0]
mov edx, dword [0x14027ddd4]
xor edx, 0x566cfa47
xor eax, edx
or eax, 0x57ec0dc6
mov r8d, 0x8bd8522
xor edx, edx
div r8d
add eax, 0xea80d956
cmp rcx, 0
sete cl
mov byte [rbp - 0x49], cl
cmp eax, 0x18501465
jbe 0x1401b5bc9
mov al, byte [rbp - 0x49]
test al, 1
jne 0x1401b5c76
jmp 0x1401b5c1e
mov rax, qword [rbp + 0x6c8]
mov rax, qword [rax]
movabs rcx, 0x8269605cf30ed0ec
movabs rdx, 0xc269605cf30ed0ec
xor rcx, rdx
and rax, rcx
movabs rcx, 0x9bbe31ae418cba74
movabs rdx, 0x9bbe31ae418cba74
xor rcx, rdx
cmp rax, rcx
jne 0x1401b5c76
mov rcx, qword [rbp + 0x6c8]
sub rsp, 0x20
call fcn.14001d1d6
add rsp, 0x20
mov ecx, dword [0x14027ddd8]
sub ecx, dword [0x14027dddc]
xor ecx, 0xb9bd3512
mov eax, ecx
and eax, 0xb4431dac
mov edx, 0xc5d567c3
xor edx, 0xc5d567c1
imul eax, edx
xor ecx, 0xb4431dac
add ecx, eax
mov eax, ecx
and eax, 0xd34f3610
or ecx, 0xd34f3610
add eax, ecx
mov ecx, 0x5efe2cc2
xor ecx, 0x5132ed9b
cmp eax, ecx
je 0x1401b6281
mov rcx, qword [rbp + 0x1360]
mov edx, dword [0x14027dde0]
mov r8d, dword [0x14027dde4]
xor r8d, 0xdd097cdd
xor eax, eax
sub eax, r8d
sub edx, eax
and edx, 0x887bc23f
add edx, 0xcee15468
mov eax, 0x58fe543
xor eax, 0x337940ac
add edx, eax
sub edx, 0xcee15468
mov eax, edx
and eax, eax
xor eax, 0xffffffff
and eax, 0x68bea415
xor eax, 0xffffffff
mov r8d, 0x68bea415
and r8d, 0x68bea415
mov r9d, 0xd75026a2
xor r9d, 0x28afd95d
xor r8d, r9d
and edx, r8d
xor edx, 0xffffffff
and eax, edx
xor eax, 0xffffffff
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x4a], cl
cmp eax, 0xbae82486
ja 0x1401b6281
mov eax, dword [rbp - 0x48]
mov r9b, byte [rbp - 0x4a]
xor ecx, ecx
mov r8b, cl
xor edx, edx
mov cl, 1
test r9b, 1
mov byte [rbp - 0x31], r8b
mov dword [rbp - 0x30], edx
mov edx, eax
mov dword [rbp - 0x2c], edx
mov byte [rbp + 0x6e7], cl
mov dword [rbp + 0x6e8], eax
jne 0x1401b5d89
jmp 0x1401b5dd1
mov dl, byte [rbp - 0x31]
mov ecx, dword [rbp - 0x30]
mov eax, dword [rbp - 0x2c]
mov dword [rbp - 0x54], eax
mov dword [rbp - 0x50], ecx
mov byte [rbp - 0x4b], dl
test ecx, ecx
mov dword [rbp + 0x900], eax
je 0x1401aea8b
jmp 0x1401b5dae
mov eax, dword [rbp - 0x54]
mov cl, byte [rbp - 0x4b]
mov edx, dword [rbp - 0x50]
sub edx, 0x56
mov byte [rbp + 0x6e7], cl
mov dword [rbp + 0x6e8], eax
jne 0x1401b5e69
jmp 0x1401b5dd1
mov rax, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0x1350]
mov dl, byte [rbp + 0x6e7]
mov r8d, dword [rbp + 0x6e8]
mov dword [rbp - 0x5c], r8d
mov byte [rbp - 0x55], dl
mov byte [rax], 0
mov rax, qword [rbp + 0x1778]
mov qword [rcx], rax
mov rax, qword [rbp + 0x1780]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.1400333b0
add rsp, 0x20
lea rcx, [rbp + 0x1788]
sub rsp, 0x20
call fcn.14010e070
mov rax, qword [rbp + 0x1360]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401b5e5b
mov al, byte [rbp - 0x55]
mov rcx, qword [rbp + 0x1360]
mov byte [rcx], al
cmp al, 0
jne 0x1401b5e5b
mov eax, dword [rbp - 0x5c]
mov dword [rbp - 0x60], eax
jmp 0x1401b5f64
mov eax, dword [rbp - 0x5c]
mov dword [rbp + 0x1228], eax
jmp 0x1401b5e7e
mov eax, dword [rbp - 0x54]
mov ecx, dword [rbp - 0x50]
cmp ecx, 2
mov dword [rbp + 0x1228], eax
jne 0x1401b5fbb
mov eax, dword [rbp + 0x1228]
mov dword [rbp - 0x6c], eax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov rcx, rax
mov eax, dword [rbp - 0x6c]
mov rcx, qword [rcx + 0x10]
mov rcx, qword [rcx]
mov qword [rbp - 0x68], rcx
mov cx, word [rcx + 0x12]
mov dx, 0x3d1e
xor dx, 0x3d1f
cmp cx, dx
mov dword [rbp - 0x60], eax
jle 0x1401b5f64
mov eax, dword [rbp - 0x6c]
mov rcx, qword [rbp - 0x68]
mov rcx, qword [rcx + 0x18]
cmp dword [rcx + 8], 0xd4054986
mov dword [rbp - 0x60], eax
jne 0x1401b5f64
mov rax, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0x1358]
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401a5240
mov rcx, qword [rbp + 0x1360]
mov eax, dword [rbp - 0x6c]
add rsp, 0x20
cmp byte [rcx], 0
mov dword [rbp + 0x122c], eax
jne 0x1401b5fbb
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov rcx, rax
add rcx, 0x10
mov rax, qword [rax + 0x10]
mov rdx, qword [rax + 0x38]
mov r8b, 1
xor r8b, 1
and r8b, 1
sub rsp, 0x20
call fcn.140028560
mov eax, dword [rbp - 0x6c]
add rsp, 0x20
mov dword [rbp + 0x122c], eax
jmp 0x1401b5fbb
mov rax, qword [rbp + 0x1360]
mov rcx, qword [rbp + 0x1358]
mov edx, dword [rbp - 0x60]
mov dword [rbp - 0x70], edx
mov dl, byte [rax]
mov byte [rbp - 0x71], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401a5240
mov rcx, qword [rbp + 0x1360]
mov eax, dword [rbp - 0x70]
add rsp, 0x20
cmp byte [rcx], 0
mov dword [rbp + 0x122c], eax
jne 0x1401b5fbb
mov eax, dword [rbp - 0x70]
mov rcx, qword [rbp + 0x1360]
mov dl, byte [rbp - 0x71]
mov byte [rcx], dl
mov dword [rbp + 0x122c], eax
mov eax, dword [rbp + 0x122c]
lea rsp, [rbp + 0x1bd8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
nop
invalid
invalid
mov bl, dh
or dword [rcx - 0x17], esi
jp 0x1401b6014
invalid
ret 0x5757
invalid
fptan
loope 0x1401b6022
jmp 0x1401a90ff
in al, 0x26
invalid
invalid
movabs qword [0x4cffff35d4e91ac4], rax
rcr dword [rdi + 0x3a84e91f], 0xff
invalid
rcr qword [rdi + 0x3a84e91f], 0xff
push qword [rbx + 0x1c]
jae 0x1401b604d
and dword [rsi - 0xc38b17], esp
call qword [rcx - 0x16d71963]
invalid
xchg ecx, eax
popfq
out 0x28, al
jmp 0x1401aa0a1
push rsp
outsd dx, dword [rsi]
invalid
hlt
invalid
invalid
bnd jmp 0x1401aa5c7
lodsd eax, dword [rsi]
pushfq
invalid
je 0x1401b6040
sub ah, ch
jmp 0x1401aae6c
mov cs, ebp
cmp al, 0x81
jmp 0x1401ab09e
cdq
sahf
outsb dx, byte [rsi]
jmp 0x1401ab276
sbb eax, 0xe9fdea8f
push rsi
invalid
ror dword [rbx - 0x61], 1
loope 0x1401b606e
mov cl, 0x58
invalid
push rsp
int3
xchg ecx, eax
pop rax
xor bl, byte [rsi]
jmp 0x1401abbce
add byte [rdx + 0x66e99d24], dl
pop rsp
invalid
pop rbx
lodsd eax, dword [rsi]
fnstsw word [rcx]
jmp 0x1401ac313
sbb eax, 0xe910680d
sub al, 0x6a
push 0x6a2ce910
invalid
loope 0x1401b6048
invalid
movsd dword [rdi], dword [rsi]
cmc
mov edx, 0xff6d68e9
invalid
in eax, dx
mov ss, word [rbx + 0x6e66e93b]
invalid
in eax, dx
jmp 0x10904fa26
js 0x1401b60ec
movabs al, byte [0x66abffff71f0e9ff]
push rax
stosd dword [rdi], eax
push ax
jmp 0x1401ad41a
pop rdi
fcompi st(7)
int1
jmp 0x1401ad597
mov ebp, 0xe97064df
scasb al, byte [rdi]
jne 0x1401b60fc
invalid
invalid
jge 0x1401b610a
mov ch, 0xde
jmp 0x1401ad924
jge 0x1401b60af
out dx, eax
or ebp, ecx
invalid
and al, 0x8f
mov ebp, 0x7e42e9bb
invalid
invalid
sal dh, 0x88
cmp cl, ch
invalid
mov esp, 0xe9aee3d6
and eax, 0x23ffff92
out 0x7a, eax
jmp 0x1401af568
and esp, edi
jp 0x1401b617d
jmp 0x1401af568
xchg byte [rsi - 0x27168efa], ah
xchg ebp, eax
invalid
test al, 0x4f
invalid
out dx, al
adc cl, byte [rcx - 1]
jmp 0x1401afe01
mov esi, 0xe997a2e4
invalid
invalid
invalid
cmp eax, 0xe9605ccd
adc ch, byte [rax + 0x235dffff]
stosb byte [rdi], al
jmp 0x1401b0b84
pop rbp
and ebp, dword [rdx - 0x5600169a]
invalid
sal byte [rbp - 0x79], cl
retf
or ebx, eax
test dword [rcx], esp
jmp 0x1401b1016
ror al, cl
rol byte [rsi], cl
jmp 0x1401b11b9
invalid
invalid
in al, dx
pop rcx
invalid
movabs al, byte [0xffffb96ee9eab911]
adc dh, dh
ret
fsub dword [rdx + rdx*8 - 0x21]
jmp 0x1401b239c
adc byte [rsi - 0x6a16f5de], dh
enter 0xffffffffffffffff, 0xffffffffffffff95
xchg ebp, eax
sbb eax, dword [rsi]
shr ecx, cl
invalid
sbb byte [rdi + rax*8 - 0x34f21645], ah
invalid
jp 0x1401b6249
xor eax, 0xcdcfe967
invalid
add byte [rsi + 0x52e953de], dh
sar edi, 1
push rbx
hlt
hlt
mov esi, ds
jne 0x1401b61f1
invalid
jrcxz 0x1401b61a5
and byte [rsi - 0x17], cl
js 0x1401b61ea
invalid
mov dl, 0xae
invalid
or eax, ebp
cmp byte [rbp - 0x20fd17], ch
invalid
mov ebx, 0xe9cae789
jge 0x1401b620e
invalid
insd dword [rdi], dx
adc bh, 0x7d
jmp 0x1401b447d
mov bh, byte [rdi]
lea edi, [rdx]
jmp 0x1401b455e
lea r11, [rsp + rsi*8]
jmp 0x1401b4b08
invalid
call 0x129c7022b
movabs dword [0xe997c012ccffffe9], eax
mov esi, 0x22ffffeb
insb byte [rdi], dx
scasb al, byte [rdi]
mov ecx, gs
shr bh, 1
invalid
int3
and ch, byte [rsi + rbp*4 - 0x74]
jmp 0x1401b5236
lahf
movsb byte [rdi], byte [rsi]
cmpsb byte [rsi], byte [rdi]
jmp 0x1401b55d4
add al, 0x38
shr byte [rdx], cl
jmp 0x1401b59be
sbb al, 0xda
xor dword [rdx - 0x6b717], 0xffffffff
insd dword [rdi], dx
loope 0x1401b6234
invalid