Function at 0x1401660b0
Capabilities:
Authenticate hmac
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
mov eax, 0x1368
call fcn.1401c7680
sub rsp, rax
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x8a8], rcx
mov eax, 0x10
mov qword [rbp + 0xa88], rax
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x8b0], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x8b8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x8c0], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x8c8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x8d0], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x8d8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x8e0], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x8e8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x8f0], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x8f8], rax
mov eax, 0x20
mov qword [rbp + 0xa50], rax
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x900], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa50]
mov rcx, rsp
mov qword [rbp + 0x908], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x910], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x918], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x920], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x928], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x930], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x938], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x940], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x948], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x950], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa50]
mov rcx, rsp
mov qword [rbp + 0x958], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x960], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x968], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x970], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x978], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x980], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa50]
mov rcx, rsp
mov qword [rbp + 0x988], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x990], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x998], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa50]
mov rcx, rsp
mov qword [rbp + 0x9a0], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x9a8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x9b0], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa50]
mov rcx, rsp
mov qword [rbp + 0x9b8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x9c0], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x9c8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x9d0], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x9d8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x9e0], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x9e8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x9f0], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0x9f8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0xa00], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa50]
mov rcx, rsp
mov qword [rbp + 0xa08], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0xa10], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0xa18], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0xa20], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0xa28], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0xa30], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa50]
mov rcx, rsp
mov qword [rbp + 0xa38], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0xa40], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa50]
mov rcx, rsp
mov qword [rbp + 0xa48], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa50]
mov rcx, rsp
mov qword [rbp + 0xa58], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0xa60], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0xa68], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0xa70], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0xa78], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0xa80], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0xa88]
mov rcx, rsp
mov qword [rbp + 0xa90], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xa98], rax
sub rsp, 0x20
call fcn.140178f36
add rsp, 0x20
mov qword [rbp + 0xaa8], rax
add rax, 0x60
mov qword [rbp + 0xaa0], rax
mov word [rbp + 0x12d6], 0xa83
lea rcx, [rbp + 0x12d6]
sub rsp, 0x20
call fcn.140062840
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xaa8]
mov qword [rbp + 0xab0], rcx
cmp byte [rax + 0x60], 0
jne 0x1401706ce
mov rcx, qword [rbp + 0x8b0]
mov edx, 0x10
sub rsp, 0x20
call fcn.140170a00
mov rax, qword [rbp + 0xab0]
mov rcx, qword [rbp + 0x8b0]
add rsp, 0x20
mov rdx, qword [rax]
mov qword [rbp + 0x12c0], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x12c8], rax
movabs rdx, 0x6cf11309ffc3f66e
movabs rax, 0x930eecf67fc3f66f
xor rdx, rax
mov r9d, 0x215275dc
xor r9d, 0x215075c5
lea r8, [rbp + 0x12c0]
sub rsp, 0x20
call fcn.1400c9b36
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x24
xor cl, 0x24
cmp al, cl
jne 0x1401706ce
mov eax, dword [0x1401d12a8]
xor eax, dword [0x1401d12ac]
mov ecx, 0x538bd66e
xor edx, edx
div ecx
add eax, 0x14894f58
mov ecx, 0x57de0204
xor ecx, 0x4324ff60
imul eax, ecx
cmp eax, 0x75c75312
jae 0x140170765
mov eax, dword [0x1401d12b0]
mov edx, dword [0x1401d12b4]
xor edx, 0xe6588c56
xor eax, 0xffffffff
xor edx, 0xffffffff
mov ecx, 0x70680c1d
xor ecx, 0xffb0e34e
mov r8d, 0x2f271149
xor r8d, 0xd0d8eeb6
xor ecx, r8d
or eax, edx
or ecx, 0x8fd8ef53
mov edx, 0x5f51e2d9
xor edx, 0xa0ae1d26
xor eax, edx
and eax, ecx
mov ecx, 0xf80c5a57
xor ecx, 0xf4e0a83a
xor edx, edx
div ecx
mov rdx, qword [rbp + 0x8b0]
xor eax, 0x6039bd5d
or eax, 0xedefcd10
mov ecx, 0xf6e98399
xor ecx, 0xda772b86
mov r8, qword [rdx]
mov qword [rbp + 0x12d8], r8
mov rdx, qword [rdx + 8]
mov qword [rbp + 0x12e0], rdx
lea rdx, [rbp + 0x12d8]
add rdx, 8
mov qword [rbp + 0x898], rdx
cmp byte [rbp + 0x12e0], 0
sete dl
mov byte [rbp + 0x8a7], dl
cmp eax, ecx
jb 0x140170765
mov al, byte [rbp + 0x8a7]
test al, 1
jne 0x140166899
jmp 0x140166925
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call fcn.14002f81c
mov rcx, qword [rbp + 0xaa0]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x897], al
jne 0x14017063d
mov rax, qword [rbp + 0x898]
mov al, byte [rax]
mov cl, 0x5a
xor cl, 0x5a
cmp al, cl
je 0x140170751
lea rcx, [rbp + 0x12d8]
sub rsp, 0x20
call fcn.140170b20
add rsp, 0x20
mov rax, qword [rbp + 0xaa0]
cmp byte [rax], 0
jne 0x1401706ce
mov rcx, qword [rbp + 0x12d8]
sub rsp, 0x20
call fcn.1400ca44d
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
je 0x140170751
jmp 0x1401706ce
mov word [rbp + 0x12d4], 0x146
lea rcx, [rbp + 0x12d4]
sub rsp, 0x20
call fcn.140062840
mov rdx, qword [rbp + 0xaa0]
add rsp, 0x20
mov qword [rbp + 0x878], rax
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x887], cl
mov qword [rbp + 0x888], rax
jne 0x1401705ec
mov rax, qword [rbp + 0x878]
mov rcx, qword [rax]
mov qword [rbp + 0x860], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x868], rax
mov rax, qword [0x1401dd070]
mov qword [rbp + 0x12b0], rax
mov rax, qword [0x1401dd078]
mov qword [rbp + 0x12b8], rax
lea rcx, [rbp + 0x12b0]
sub rsp, 0x20
call fcn.140030db0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xaa0]
mov qword [rbp + 0x870], rcx
mov dl, byte [rax]
mov r8b, 0x65
xor r8b, 0x65
mov cl, 1
xor eax, eax
cmp dl, r8b
mov byte [rbp + 0x887], cl
mov qword [rbp + 0x888], rax
jne 0x1401705ec
mov rax, qword [rbp + 0x8b8]
movabs rcx, 0xe104cf69cd082cd3
movabs rdx, 0xe104cf69cd082cd3
xor rcx, rdx
mov qword [rax], rcx
mov rcx, rax
add rcx, 8
mov qword [rbp + 0x850], rcx
mov qword [rax + 8], 0
mov qword [rbp + 0x12a0], 0
lea rax, [rbp + 0x12a0]
add rax, 8
mov qword [rbp + 0x858], rax
mov qword [rbp + 0x12a8], 0
lea rcx, [rbp + 0x12d8]
sub rsp, 0x20
call fcn.140170b20
add rsp, 0x20
mov rax, qword [rbp + 0xaa0]
mov al, byte [rax]
mov cl, 0xc6
xor cl, 0xc6
cmp al, cl
jne 0x14017005c
mov rcx, qword [rbp + 0x12d8]
mov qword [rbp + 0x840], rcx
sub rsp, 0x20
call fcn.1400cb501
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0xaa0]
mov dword [rbp + 0x84c], ecx
cmp byte [rax], 0
jne 0x14017005c
mov eax, dword [rbp + 0x84c]
movsxd rcx, eax
mov qword [rbp + 0x830], rcx
mov rax, rcx
add rax, 1
mov qword [rbp + 0x838], rax
movabs rdx, 0x9ea8671f928cb89b
movabs r8, 0x615798e06d734764
xor rdx, r8
xor rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x140166afd
sub rsp, 0x20
call fcn.140008024
add rsp, 0x20
jmp 0x14017005c
mov eax, dword [0x1401d12b8]
mov ecx, 0xa1e4eaa9
xor ecx, 0xc89e1095
xor eax, ecx
xor eax, dword [0x1401d12bc]
mov ecx, 0x88b12cf6
xor edx, edx
div ecx
mov ecx, eax
mov edx, 0xe9629f70
xor edx, 0x169d608f
mov eax, ecx
xor eax, edx
mov edx, 0xffffffff
xor edx, 0xfccc4544
and eax, edx
or ecx, 0xfccc4544
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x5a35b4c
xor ecx, 0xfa5ca4b3
xor eax, ecx
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xbac5c4b2
mov edx, 0xd3cefe8e
xor edx, 0x285a4232
mov r8d, 0x534cf01b
xor r8d, 0xacb30fe4
xor edx, r8d
or eax, ecx
mov ecx, 0x502e3573
xor ecx, 0xabba89cf
or ecx, edx
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0xe3661c72
xor ecx, 0x597f819e
cmp eax, ecx
ja 0x14017076e
mov rcx, qword [rbp + 0x830]
mov eax, dword [0x1401d12c0]
mov edx, dword [0x1401d12c4]
xor edx, 0x914d74d3
and eax, edx
mov r8d, 0xc576d699
xor edx, edx
div r8d
mov edx, 0x1db160e2
xor edx, 0xbdcc75a8
or eax, edx
mov r8d, 0xe7148977
xor r8d, 0x1a4ac269
xor edx, edx
div r8d
add rcx, 0xffffffff80000001
movabs rdx, 0xffffffff00000000
cmp rcx, rdx
setb cl
mov byte [rbp + 0x82f], cl
cmp eax, 0x5eb6c412
je 0x14017076e
mov al, byte [rbp + 0x82f]
test al, 1
jne 0x140166c25
jmp 0x140166d1f
mov eax, dword [0x1401d12c8]
sub eax, dword [0x1401d12cc]
mov r8d, 0xe3c55df4
xor r8d, 0xc6fc1a9f
mov ecx, 0x8db8ef04
xor ecx, 0x724710fb
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x2539476b
or eax, 0x2539476b
imul eax, edx
add eax, ecx
add eax, 0xdb9b0e2e
sub eax, 0xf2bc61d3
mov ecx, 0x73b632c2
xor ecx, 0xa82d3cec
sub eax, ecx
xor eax, 0x1ea57b38
cmp eax, 0xf0d1edcd
ja 0x140170777
mov eax, dword [0x1401d12d0]
xor edx, edx
div dword [0x1401d12d4]
mov ecx, eax
and ecx, 0x3481d7e
shl ecx, 1
mov edx, 0xf7594d7f
xor edx, 0xf4115001
xor eax, edx
add eax, ecx
xor eax, 0x7ed8f676
mov edx, 0x79f95256
xor edx, 0x8606ada9
mov ecx, eax
xor ecx, edx
and ecx, 0x3c1e6e53
mov edx, 0x70fb475
xor edx, 0x3b11da26
mov r8d, 0xe4ab429d
xor r8d, 0x1b54bd62
xor edx, r8d
and eax, edx
sub eax, ecx
mov dword [rbp + 0x828], eax
sub rsp, 0x20
call fcn.140008024
mov eax, dword [rbp + 0x828]
add rsp, 0x20
cmp eax, 0x2ead944c
jb 0x140166c95
jmp 0x14017005c
mov eax, dword [rbp + 0x84c]
mov rcx, qword [rbp + 0x838]
mov dword [rbp + 0x824], ecx
cmp eax, 0xffffffff
jge 0x140166d62
mov rcx, qword [rbp + 0x838]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14000c8ac
add rsp, 0x20
jmp 0x14017005c
mov rdx, qword [rbp + 0x838]
lea rcx, [rbp + 0x1290]
sub rsp, 0x20
call fcn.1400993f0
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov rcx, qword [rbp + 0x1290]
mov qword [rbp + 0x810], rcx
mov rcx, qword [rbp + 0x1298]
mov qword [rbp + 0x818], rcx
cmp byte [rax], 0
jne 0x14017005c
mov eax, dword [0x1401d12d8]
xor edx, edx
div dword [0x1401d12dc]
mov edx, 0xffffffff
xor edx, 0x9d355298
mov ecx, eax
xor ecx, edx
and ecx, eax
xor ecx, 0x949ba30
mov edx, 0xffffffff
xor edx, 0xbf7beb32
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0x517af43e
xor ecx, 0x31238d9c
cmp eax, ecx
je 0x140170780
mov rsi, qword [rbp + 0x998]
mov rdi, qword [rbp + 0xa10]
mov rbx, qword [rbp + 0xa18]
mov r14, qword [rbp + 0xa40]
mov r15, qword [rbp + 0xa90]
mov r12, qword [rbp + 0xa70]
mov r13, qword [rbp + 0xa20]
mov rax, qword [rbp + 0x818]
mov rcx, qword [rbp + 0x810]
mov edx, dword [0x1401d12e0]
xor edx, 0x298bd131
mov r8d, dword [0x1401d12e4]
xor r8d, 0x868606d5
xor edx, r8d
mov r8d, 0xb2283f15
xor r8d, 0x61ea636b
and edx, r8d
mov r8d, 0x427eec4d
xor r8d, 0xb7df6e0a
imul edx, r8d
mov r9d, 0xc4f24b8
xor r9d, 0xf3b0db47
mov r8d, edx
xor r8d, r9d
and r8d, 0x1208c54c
mov r9d, 0xffffffff
xor r9d, 0x1208c54c
and edx, r9d
sub edx, r8d
mov dword [rbp + 0x61c], edx
mov qword [rbp + 0x1280], rcx
mov qword [rbp + 0x1288], rax
lea rcx, [rbp + 0x12a0]
lea rdx, [rbp + 0x1280]
sub rsp, 0x20
call fcn.140013b10
mov r11, qword [rbp + 0x990]
mov r10, qword [rbp + 0x9b0]
mov r9, qword [rbp + 0x970]
mov r8, qword [rbp + 0x930]
mov rdx, qword [rbp + 0x918]
mov eax, dword [rbp + 0x61c]
add rsp, 0x20
lea rcx, [rbp + 0x1258]
add rcx, 8
mov qword [rbp + 0x620], rcx
mov rcx, qword [rbp + 0x8c8]
add rcx, 8
mov qword [rbp + 0x628], rcx
lea rcx, [rbp + 0x1248]
add rcx, 8
mov qword [rbp + 0x630], rcx
mov rcx, qword [rbp + 0x8d0]
add rcx, 8
mov qword [rbp + 0x638], rcx
mov rcx, qword [rbp + 0x8d8]
add rcx, 8
mov qword [rbp + 0x640], rcx
lea rcx, [rbp + 0x11f8]
add rcx, 8
mov qword [rbp + 0x648], rcx
lea rcx, [rbp + 0x1238]
add rcx, 8
mov qword [rbp + 0x650], rcx
lea rcx, [rbp + 0x11e8]
add rcx, 8
mov qword [rbp + 0x658], rcx
lea rcx, [rbp + 0x11d8]
add rcx, 8
mov qword [rbp + 0x660], rcx
mov rcx, qword [rbp + 0x8e8]
add rcx, 8
mov qword [rbp + 0x668], rcx
lea rcx, [rbp + 0x11c8]
add rcx, 8
mov qword [rbp + 0x670], rcx
lea rcx, [rbp + 0x11a0]
add rcx, 8
mov qword [rbp + 0x678], rcx
mov rcx, qword [rbp + 0x8f0]
add rcx, 8
mov qword [rbp + 0x680], rcx
lea rcx, [rbp + 0x1180]
add rcx, 8
mov qword [rbp + 0x688], rcx
lea rcx, [rbp + 0x1170]
add rcx, 8
mov qword [rbp + 0x690], rcx
lea rcx, [rbp + 0x1150]
add rcx, 8
mov qword [rbp + 0x698], rcx
lea rcx, [rbp + 0x1160]
add rcx, 8
mov qword [rbp + 0x6a0], rcx
mov rcx, qword [rbp + 0x8f8]
add rcx, 8
mov qword [rbp + 0x6a8], rcx
lea rcx, [rbp + 0x1140]
add rcx, 8
mov qword [rbp + 0x6b0], rcx
lea rcx, [rbp + 0x10e0]
add rcx, 8
mov qword [rbp + 0x6b8], rcx
lea rcx, [rbp + 0x1040]
add rcx, 8
mov qword [rbp + 0x6c0], rcx
lea rcx, [rbp + 0xfb0]
add rcx, 8
mov qword [rbp + 0x6c8], rcx
mov rcx, qword [rbp + 0x958]
add rcx, 8
mov qword [rbp + 0x6d0], rcx
lea rcx, [rbp + 0xea8]
add rcx, 8
mov qword [rbp + 0x6d8], rcx
mov rcx, qword [rbp + 0x9a0]
add rcx, 8
mov qword [rbp + 0x6e0], rcx
mov rcx, qword [rbp + 0x9b8]
add rcx, 8
mov qword [rbp + 0x6e8], rcx
lea rcx, [rbp + 0xd00]
add rcx, 8
mov qword [rbp + 0x6f0], rcx
mov rcx, qword [rbp + 0xa00]
add rcx, 8
mov qword [rbp + 0x6f8], rcx
mov rcx, qword [rbp + 0x900]
add r13, 8
mov qword [rbp + 0x700], r13
lea r13, [rbp + 0xb78]
add r13, 8
mov qword [rbp + 0x708], r13
add r12, 8
mov qword [rbp + 0x710], r12
add r15, 8
mov qword [rbp + 0x718], r15
lea r15, [rbp + 0xb10]
add r15, 8
mov qword [rbp + 0x720], r15
lea r15, [rbp + 0xb88]
add r15, 8
mov qword [rbp + 0x728], r15
add r14, 0x10
mov qword [rbp + 0x730], r14
lea r14, [rbp + 0xb28]
add r14, 8
mov qword [rbp + 0x738], r14
add rbx, 8
mov qword [rbp + 0x740], rbx
add rdi, 0x10
mov qword [rbp + 0x748], rdi
lea rdi, [rbp + 0xbb0]
add rdi, 8
mov qword [rbp + 0x750], rdi
lea rdi, [rbp + 0xc48]
add rdi, 8
mov qword [rbp + 0x758], rdi
lea rdi, [rbp + 0xca0]
add rdi, 8
mov qword [rbp + 0x760], rdi
lea rdi, [rbp + 0xcc8]
add rdi, 8
mov qword [rbp + 0x768], rdi
lea rdi, [rbp + 0xd10]
add rdi, 8
mov qword [rbp + 0x770], rdi
lea rdi, [rbp + 0xd90]
add rdi, 8
mov qword [rbp + 0x778], rdi
lea rdi, [rbp + 0xda0]
add rdi, 0x10
mov qword [rbp + 0x780], rdi
lea rdi, [rbp + 0xd28]
add rdi, 8
mov qword [rbp + 0x788], rdi
add rsi, 8
mov qword [rbp + 0x790], rsi
add r11, 0x10
mov qword [rbp + 0x798], r11
add r10, 8
mov qword [rbp + 0x7a0], r10
lea r10, [rbp + 0xe68]
add r10, 8
mov qword [rbp + 0x7a8], r10
add r9, 8
mov qword [rbp + 0x7b0], r9
lea r9, [rbp + 0xf30]
add r9, 8
mov qword [rbp + 0x7b8], r9
lea r9, [rbp + 0xf40]
add r9, 0x10
mov qword [rbp + 0x7c0], r9
lea r9, [rbp + 0xec8]
add r9, 8
mov qword [rbp + 0x7c8], r9
lea r9, [rbp + 0xf70]
add r9, 8
mov qword [rbp + 0x7d0], r9
add r8, 8
mov qword [rbp + 0x7d8], r8
add rdx, 8
mov qword [rbp + 0x7e0], rdx
lea rdx, [rbp + 0x1050]
add rdx, 0x10
mov qword [rbp + 0x7e8], rdx
lea rdx, [rbp + 0xfd0]
add rdx, 8
mov qword [rbp + 0x7f0], rdx
lea rdx, [rbp + 0x1100]
add rdx, 8
mov qword [rbp + 0x7f8], rdx
add rcx, 0x10
mov qword [rbp + 0x800], rcx
lea rcx, [rbp + 0x1088]
add rcx, 8
mov qword [rbp + 0x808], rcx
cmp eax, 0x1af5dd3d
jb 0x140166df2
xor eax, eax
mov dword [rbp + 0x618], eax
jmp 0x140167314
mov eax, dword [rbp + 0x824]
mov ecx, dword [rbp + 0x618]
mov dword [rbp + 0x60c], ecx
mov dword [rbp + 0x127c], eax
mov rax, qword [rbp + 0x12a0]
mov qword [rbp + 0x1268], rax
mov rax, qword [rbp + 0x12a8]
mov qword [rbp + 0x1270], rax
lea rcx, [rbp + 0x1268]
sub rsp, 0x20
call fcn.140170d80
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xaa0]
mov qword [rbp + 0x610], rcx
cmp byte [rax], 0
jne 0x140170049
mov r8, qword [rbp + 0x610]
mov edx, dword [rbp + 0x60c]
mov rcx, qword [rbp + 0x840]
lea r9, [rbp + 0x127c]
xor eax, eax
sub rsp, 0x40
mov qword [rsp + 0x20], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x38], 0
call fcn.14009c9f0
add rsp, 0x40
mov ecx, eax
mov rax, qword [rbp + 0xaa0]
mov dword [rbp + 0x608], ecx
cmp byte [rax], 0
jne 0x140170049
mov eax, dword [rbp + 0x608]
test eax, eax
je 0x140167405
jmp 0x1401673ef
mov eax, dword [rbp + 0x608]
sub eax, 0x103
je 0x140170049
jmp 0x140170036
mov eax, dword [0x1401d12e8]
mov ecx, dword [0x1401d12ec]
mov edx, 0x340ffa36
xor edx, 0x6f6af67d
xor ecx, edx
or eax, ecx
mov ecx, 0xace0891e
xor ecx, 0xfb01308d
xor edx, edx
div ecx
mov ecx, eax
and ecx, 0x32ef2204
mov edx, 0xe504d81f
xor edx, 0x1afb27e0
xor ecx, edx
add eax, 0x32ef2204
add eax, 1
add eax, ecx
imul eax, eax, 0xf64682ac
cmp eax, 0x7f501b6f
jbe 0x140170789
mov eax, dword [0x1401d12f0]
xor eax, 0xd6442ad4
mov r8d, dword [0x1401d12f4]
mov ecx, 0x3bea73bc
xor ecx, 0x687d5429
xor r8d, ecx
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, 0x4ffdff97
xor edx, edx
div ecx
add eax, 0x88fdb8f5
mov ecx, 0xf856b4ae
xor edx, edx
div ecx
mov rdx, qword [rbp + 0x8c0]
mov dword [rbp + 0x5ec], eax
mov rax, qword [rbp + 0x12a0]
mov qword [rdx], rax
mov rax, qword [rbp + 0x12a8]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x1258]
sub rsp, 0x20
call fcn.140170eb0
mov rdx, qword [rbp + 0x620]
mov rcx, qword [rbp + 0xaa0]
mov eax, dword [rbp + 0x5ec]
add rsp, 0x20
mov r8, qword [rbp + 0x1258]
mov qword [rbp + 0x5f0], r8
mov rdx, qword [rdx]
mov qword [rbp + 0x5f8], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x607], cl
cmp eax, 0xf5fcd91d
jae 0x14016745f
mov al, byte [rbp + 0x607]
test al, 1
jne 0x140167546
jmp 0x140170031
mov rdx, qword [rbp + 0x8c8]
mov rax, qword [rbp + 0x628]
mov rcx, qword [rbp + 0x5f8]
mov r8, qword [rbp + 0x5f0]
mov qword [rdx], r8
mov qword [rax], rcx
lea rcx, [rbp + 0x1248]
sub rsp, 0x20
call fcn.140171090
mov rdx, qword [rbp + 0x630]
mov rcx, qword [rbp + 0xaa0]
mov eax, dword [rbp + 0x60c]
add rsp, 0x20
mov r8, qword [rbp + 0x1248]
mov qword [rbp + 0x5d8], r8
mov rdx, qword [rdx]
mov qword [rbp + 0x5e0], rdx
cmp byte [rcx], 0
mov dword [rbp + 0x5e8], eax
jne 0x14016ff48
mov rdx, qword [rbp + 0x8d0]
mov rcx, qword [rbp + 0x8b8]
mov rax, qword [rbp + 0x638]
mov r8, qword [rbp + 0x5e0]
mov r9, qword [rbp + 0x5d8]
mov qword [rdx], r9
mov qword [rax], r8
sub rsp, 0x20
call fcn.140013b10
add rsp, 0x20
lea rcx, [rbp + 0x1238]
mov edx, 0x10
sub rsp, 0x20
call fcn.140170a00
mov rdx, qword [rbp + 0x8d8]
mov rax, qword [rbp + 0x640]
mov rcx, qword [rbp + 0x8e0]
add rsp, 0x20
mov qword [rdx], 0
mov qword [rax], 0
mov word [rcx], 0x164
sub rsp, 0x20
call fcn.140062840
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xaa0]
mov qword [rbp + 0x5c8], rcx
mov cl, byte [rax]
mov dl, 0x5c
xor dl, 0x5c
mov al, 1
cmp cl, dl
mov byte [rbp + 0x5d7], al
jne 0x14016fbd7
mov rcx, qword [rbp + 0x8d8]
mov rax, qword [rbp + 0x8b8]
mov rdx, qword [rbp + 0x5c8]
mov rdx, qword [rdx]
add rdx, qword [rax]
sub rsp, 0x20
call fcn.1400197e0
mov rax, qword [rbp + 0x5c8]
mov rcx, qword [rbp + 0x8d8]
add rsp, 0x20
mov rdx, qword [rax]
mov qword [rbp + 0x1218], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1220], rax
lea rdx, [rbp + 0x1218]
sub rsp, 0x20
call fcn.1401712c0
mov rax, qword [rbp + 0x8b8]
mov rcx, qword [rbp + 0x8d8]
add rsp, 0x20
mov rdx, qword [rax]
mov qword [rbp + 0x1208], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1210], rax
lea rdx, [rbp + 0x1208]
sub rsp, 0x20
call fcn.1401712c0
mov rcx, qword [rbp + 0x8d8]
mov rax, qword [rbp + 0x640]
add rsp, 0x20
mov rcx, qword [rcx]
mov qword [rbp + 0x5b8], rcx
mov rax, qword [rax]
mov qword [rbp + 0x5c0], rax
movabs rdx, 0x37101d9179912a7a
movabs rax, 0x37101d9179912a6a
xor rdx, rax
lea rcx, [rbp + 0x1228]
sub rsp, 0x20
call fcn.140170a00
mov rdx, qword [rbp + 0x5b8]
mov rcx, qword [rbp + 0x5c0]
mov rax, qword [rbp + 0x648]
add rsp, 0x20
mov qword [rbp + 0x11f8], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x1228]
mov rdx, 0xffffffff80000001
lea r8, [rbp + 0x11f8]
mov r9d, 0x20019
sub rsp, 0x20
call fcn.1400c9b36
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14016fb2f
mov rax, qword [rbp + 0x650]
mov rcx, qword [rbp + 0x1228]
mov qword [rbp + 0x1238], rcx
mov rcx, qword [rbp + 0x1230]
mov qword [rbp + 0x1240], rcx
mov al, byte [rax]
mov cl, 0xe3
xor cl, 0xe3
cmp al, cl
jne 0x1401679a6
mov rax, qword [rbp + 0x5c0]
cmp rax, 0
je 0x1401679a1
mov rax, qword [rbp + 0x5c0]
mov rcx, qword [rax]
movabs rdx, 0x2a987b63a4c59256
movabs rax, 0xd567849c5b3a6da9
xor rdx, rax
mov rax, rcx
xor rax, rdx
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
or rax, rdx
movabs rdx, 0x648f2dbf88896515
movabs r8, 0x248f2dbf88896515
xor rdx, r8
and rcx, rdx
xor rcx, 0xffffffffffffffff
and rax, rcx
xor rax, 0xffffffffffffffff
cmp rax, 0
jne 0x1401679a1
mov rcx, qword [rbp + 0x5c0]
sub rsp, 0x20
call fcn.14000e572
mov rcx, qword [rbp + 0x650]
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov cl, byte [rcx]
mov al, byte [rax]
test cl, cl
sete cl
test al, al
setne al
mov byte [rbp + 0x5b7], al
or al, cl
test al, 1
jne 0x14016798e
lea rcx, [rbp + 0x1238]
sub rsp, 0x20
call fcn.140170b20
add rsp, 0x20
mov rax, qword [rbp + 0xaa0]
cmp byte [rax], 0
jne 0x14016fd56
mov ecx, dword [0x1401d12f8]
mov edx, dword [0x1401d12fc]
mov eax, edx
and eax, ecx
xor eax, 0xffffffff
add ecx, edx
add ecx, 1
add ecx, eax
mov edx, 0x2a6c27dc
xor edx, 0x6bad5360
mov eax, 0x82c069c9
xor eax, 0x7d3f9636
xor edx, eax
mov eax, ecx
xor eax, edx
and eax, ecx
imul eax, eax, 0xf7fde10c
and eax, 0xb822f14c
cmp eax, 0xbc419ee9
jae 0x140170792
mov eax, dword [0x1401d1300]
mov ecx, dword [0x1401d1304]
xor ecx, 0xffffffff
add eax, ecx
add eax, 1
sub eax, 0x8de4c7f5
mov edx, 0x84b4bd8e
xor edx, 0xd7582e6
mov ecx, eax
and ecx, edx
shl ecx, 1
mov edx, 0x8d748b8b
xor edx, 0x4b5b4e3
add eax, edx
sub eax, ecx
sub eax, 0xa488e295
mov dword [rbp + 0x5b0], eax
mov rcx, qword [rbp + 0x1238]
sub rsp, 0x20
call fcn.1400ca44d
mov rcx, qword [rbp + 0xaa0]
mov eax, dword [rbp + 0x5b0]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x5b6], cl
cmp eax, 0xda8e71cb
ja 0x140170792
mov al, byte [rbp + 0x5b6]
test al, 1
jne 0x1401679a1
jmp 0x14016fd56
mov al, byte [rbp + 0x5b7]
test al, 1
jne 0x14016fd45
jmp 0x1401679a1
jmp 0x14016fd67
mov rax, qword [rbp + 0x658]
mov rcx, qword [rbp + 0x660]
movabs rdx, 0x5b8a381299d5d439
movabs r8, 0x5b8a381299d5d439
xor rdx, r8
mov qword [rbp + 0x11d8], rdx
mov qword [rcx], 0
mov qword [rbp + 0x11e8], 0
mov qword [rax], 0
lea rcx, [rbp + 0x1238]
sub rsp, 0x20
call fcn.140170b20
add rsp, 0x20
mov rax, qword [rbp + 0xaa0]
cmp byte [rax], 0
jne 0x14016f971
mov rax, qword [rbp + 0x660]
mov rcx, qword [rbp + 0x1238]
mov qword [rbp + 0x5a0], rcx
mov qword [rbp + 0x11d8], 0
mov qword [rax], 0
sub rsp, 0x20
call fcn.1400cb620
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0xaa0]
mov dword [rbp + 0x5ac], ecx
mov al, byte [rax]
mov cl, 0x6a
xor cl, 0x6a
cmp al, cl
jne 0x14016f971
mov eax, dword [rbp + 0x5ac]
movsxd rcx, eax
mov qword [rbp + 0x590], rcx
mov rax, rcx
add rax, 1
mov qword [rbp + 0x598], rax
movabs rdx, 0x4f1719efee87a0b2
movabs r8, 0xb0e8e61011785f4d
xor rdx, r8
mov r8, rcx
xor r8, rdx
xor r8, 0xffffffffffffffff
movabs rdx, 0x41ca3e1ed2e5e9cf
movabs r9, 0xbe35c1e12d1a1630
xor rdx, r9
and rdx, r8
shl rdx, 1
sub rdx, 0xffffffffffffffff
sub rcx, rdx
and rax, rcx
movabs rcx, 0xc3169e75168f4061
movabs rdx, 0xc3169e75168f4061
xor rcx, rdx
cmp rax, rcx
jge 0x140167bb9
mov eax, dword [0x1401d1308]
xor edx, edx
div dword [0x1401d130c]
or eax, 0x3a0481c4
add eax, 0x5ef9f4e2
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0x5bd662e2
xor edx, 0x9f07442a
and ecx, edx
mov edx, 0xffffffff
xor edx, 0xc4d126c8
and eax, edx
sub eax, ecx
mov ecx, 0x3599c67b
xor ecx, 0x386319ad
cmp eax, ecx
jbe 0x14017079b
mov ecx, dword [0x1401d1310]
xor ecx, 0xabef0c5c
mov eax, dword [0x1401d1314]
add ecx, 0xa565242d
add ecx, eax
sub ecx, 0xa565242d
mov eax, 0x6901d6f6
xor eax, 0x25ee9bb6
add ecx, eax
mov eax, ecx
add eax, 1
xor ecx, 0xffffffff
or ecx, 0x4d528318
add ecx, eax
mov edx, ecx
xor edx, 0xffffffff
mov eax, 0xb265acaa
xor eax, 0xed66cd93
and eax, edx
mov edx, 0xffffffff
xor edx, 0x5f036139
and ecx, edx
or eax, ecx
mov dword [rbp + 0x58c], eax
sub rsp, 0x20
call fcn.140008024
mov eax, dword [rbp + 0x58c]
add rsp, 0x20
cmp eax, 0xd362716e
je 0x140167b34
jmp 0x14016f971
mov rax, qword [rbp + 0x590]
movabs rcx, 0xbb4e42ec074dd50a
sub rax, rcx
movabs rcx, 0x2bfbe7f3e8ee1a58
movabs rdx, 0xd404180c68ee1a59
xor rcx, rdx
add rax, rcx
movabs rcx, 0x1a5eab1441acd127
movabs rdx, 0xa110e9f846e1042d
xor rcx, rdx
add rax, rcx
movabs rcx, 0xc6f8dd4ef4ceb84d
movabs rdx, 0x390722b1f4ceb84d
xor rcx, rdx
cmp rax, rcx
jae 0x140167c33
sub rsp, 0x20
call fcn.140008024
add rsp, 0x20
jmp 0x14016f971
mov eax, dword [rbp + 0x5ac]
mov rcx, qword [rbp + 0x598]
mov dword [rbp + 0x588], ecx
mov ecx, 0xf36e76bc
xor ecx, 0xc918943
cmp eax, ecx
jge 0x140167c80
mov rcx, qword [rbp + 0x598]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14000c8ac
add rsp, 0x20
jmp 0x14016f971
mov ecx, dword [0x1401d1318]
mov eax, dword [0x1401d131c]
xor eax, 0xcc0ccab3
and ecx, eax
mov edx, 0xffffffff
xor edx, 0xf75a7267
mov eax, ecx
xor eax, edx
and eax, ecx
add eax, 0x86123032
add eax, 0xe7d4c9e2
sub eax, 0x86123032
or eax, eax
xor eax, 0xffffffff
mov ecx, 0xfc73e37d
or ecx, 0xfc73e37d
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
cmp eax, 0x31ad995a
jbe 0x1401707a4
mov rcx, qword [rbp + 0x8e8]
mov eax, dword [0x1401d1320]
xor edx, edx
div dword [0x1401d1324]
mov rdx, qword [rbp + 0x598]
and eax, 0x96428683
mov r8d, 0xfc3dc358
xor r8d, 0x8c77854a
and eax, r8d
xor eax, 0x40ef2f8f
mov dword [rbp + 0x56c], eax
mov eax, 0x655601c4
xor eax, 0xb75201a2
mov dword [rbp + 0x568], eax
sub rsp, 0x20
call fcn.1400993f0
mov r9, qword [rbp + 0x8e8]
mov r8, qword [rbp + 0x668]
mov rdx, qword [rbp + 0xaa0]
mov ecx, dword [rbp + 0x568]
mov eax, dword [rbp + 0x56c]
add rsp, 0x20
mov r9, qword [r9]
mov qword [rbp + 0x570], r9
mov r8, qword [r8]
mov qword [rbp + 0x578], r8
cmp byte [rdx], 0
sete dl
mov byte [rbp + 0x587], dl
cmp eax, ecx
je 0x1401707a4
mov al, byte [rbp + 0x587]
test al, 1
jne 0x140167d8e
jmp 0x14016f971
mov rax, qword [rbp + 0x670]
mov rcx, qword [rbp + 0x578]
mov rdx, qword [rbp + 0x570]
mov qword [rbp + 0x11c8], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x11d8]
lea rdx, [rbp + 0x11c8]
sub rsp, 0x20
call fcn.140013b10
add rsp, 0x20
xor eax, eax
mov dword [rbp + 0x564], eax
mov eax, dword [rbp + 0x588]
mov ecx, dword [rbp + 0x564]
mov dword [rbp + 0x554], ecx
mov dword [rbp + 0x11c4], eax
mov rax, qword [rbp + 0x11d8]
mov qword [rbp + 0x11b0], rax
mov rax, qword [rbp + 0x11e0]
mov qword [rbp + 0x11b8], rax
lea rcx, [rbp + 0x11b0]
sub rsp, 0x20
call fcn.140170d80
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xaa0]
mov qword [rbp + 0x558], rcx
cmp byte [rax], 0
jne 0x14016f893
mov r8, qword [rbp + 0x558]
mov edx, dword [rbp + 0x554]
mov rcx, qword [rbp + 0x5a0]
lea r9, [rbp + 0x11c4]
xor eax, eax
sub rsp, 0x40
mov qword [rsp + 0x20], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x38], 0
call fcn.14009cb2c
add rsp, 0x40
mov ecx, eax
mov rax, qword [rbp + 0xaa0]
mov dword [rbp + 0x550], ecx
cmp byte [rax], 0
jne 0x14016f893
mov eax, dword [rbp + 0x550]
test eax, eax
je 0x140167ec1
jmp 0x140167eab
mov eax, dword [rbp + 0x550]
sub eax, 0x103
je 0x14016f893
jmp 0x14016f880
mov rax, qword [rbp + 0x11d8]
mov qword [rbp + 0x1190], rax
mov rax, qword [rbp + 0x11e0]
mov qword [rbp + 0x1198], rax
lea rcx, [rbp + 0x11a0]
lea rdx, [rbp + 0x1190]
sub rsp, 0x20
call fcn.140170eb0
mov rcx, qword [rbp + 0x678]
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov rdx, qword [rbp + 0x11a0]
mov qword [rbp + 0x540], rdx
mov rcx, qword [rcx]
mov qword [rbp + 0x548], rcx
cmp byte [rax], 0
jne 0x14016f87b
mov rdx, qword [rbp + 0x8f0]
mov rax, qword [rbp + 0x680]
mov rcx, qword [rbp + 0x548]
mov r8, qword [rbp + 0x540]
mov qword [rdx], r8
mov qword [rax], rcx
lea rcx, [rbp + 0x1180]
sub rsp, 0x20
call fcn.140171090
mov rdx, qword [rbp + 0x688]
mov rcx, qword [rbp + 0xaa0]
mov eax, dword [rbp + 0x554]
add rsp, 0x20
mov r8, qword [rbp + 0x1180]
mov qword [rbp + 0x528], r8
mov rdx, qword [rdx]
mov qword [rbp + 0x530], rdx
mov cl, byte [rcx]
mov dl, 0x1c
xor dl, 0x1c
cmp cl, dl
mov dword [rbp + 0x53c], eax
jne 0x14016f77d
mov rax, qword [rbp + 0x690]
mov rcx, qword [rbp + 0x530]
mov rdx, qword [rbp + 0x528]
mov qword [rbp + 0x1170], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x11e8]
lea rdx, [rbp + 0x1170]
sub rsp, 0x20
call fcn.140013b10
mov rdx, qword [rbp + 0x860]
mov rcx, qword [rbp + 0x868]
mov rax, qword [rbp + 0x698]
add rsp, 0x20
mov qword [rbp + 0x1150], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x1160]
lea rdx, [rbp + 0x1150]
sub rsp, 0x20
call fcn.14001c072
mov rcx, qword [rbp + 0x6a0]
mov rax, qword [rbp + 0x6a8]
mov r8, qword [rbp + 0x8f8]
add rsp, 0x20
mov rdx, qword [rbp + 0x1160]
mov rcx, qword [rcx]
mov r9, qword [rbp + 0x11e8]
mov qword [rbp + 0x1130], r9
mov r9, qword [rbp + 0x11f0]
mov qword [rbp + 0x1138], r9
mov qword [r8], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x1140]
lea rdx, [rbp + 0x1130]
sub rsp, 0x20
call fcn.140080cd0
mov rdx, qword [rbp + 0x6b0]
mov rcx, qword [rbp + 0xaa0]
mov eax, dword [rbp + 0x554]
add rsp, 0x20
mov r8, qword [rbp + 0x1140]
mov qword [rbp + 0x518], r8
mov rdx, qword [rdx]
mov qword [rbp + 0x520], rdx
cmp byte [rcx], 0
mov dword [rbp + 0x53c], eax
jne 0x14016f77d
mov ax, 0x7b3c
xor ax, 0x7a38
mov word [rbp + 0x112e], ax
lea rcx, [rbp + 0x112e]
sub rsp, 0x20
call fcn.140062840
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xaa0]
mov qword [rbp + 0x510], rcx
mov al, byte [rax]
mov cl, 0x2c
xor cl, 0x2c
cmp al, cl
jne 0x140168dfd
mov rax, qword [rbp + 0x510]
mov rcx, qword [rbp + 0x6b8]
mov rdx, qword [rbp + 0x520]
mov r8, qword [rbp + 0x518]
mov qword [rbp + 0x10e0], r8
mov qword [rcx], rdx
mov rcx, qword [rax]
mov qword [rbp + 0x10d0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x10d8], rax
lea rcx, [rbp + 0x10e0]
lea rdx, [rbp + 0x10d0]
sub rsp, 0x20
call fcn.140171740
add rsp, 0x20
test al, 1
jne 0x14016818c
mov ax, 0xee98
xor ax, 0xeea3
mov word [rbp + 0x1086], ax
lea rcx, [rbp + 0x1086]
sub rsp, 0x20
call fcn.140062840
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xaa0]
mov qword [rbp + 0x508], rcx
cmp byte [rax], 0
je 0x140168e07
jmp 0x140169c82
mov eax, dword [0x1401d1328]
mov edx, dword [0x1401d132c]
mov ecx, 0x2a78f5d7
xor ecx, 0xd5870a28
xor edx, ecx
mov ecx, eax
xor ecx, edx
and ecx, eax
or ecx, 0x5fb7209a
mov edx, 0xffffffff
xor edx, 0xc6ecce9b
mov eax, ecx
xor eax, edx
and eax, ecx
and eax, 0x6b24514e
cmp eax, 0x5b8d5a66
jae 0x1401707ad
mov eax, dword [0x1401d1330]
mov ecx, dword [0x1401d1334]
xor eax, ecx
mov ecx, eax
xor ecx, 0x16040a2
xor eax, 0xa2801a4c
and ecx, 0x4d7445b3
and eax, 0xb28bba4c
or eax, ecx
mov edx, eax
not edx
or edx, 0xb2a3aa91
mov ecx, eax
mov eax, edx
lea eax, [rax + rcx + 1]
mov dword [rbp + 0x4f4], eax
mov eax, 0x11ef9c30
mov dword [rbp + 0x4f0], eax
sub rsp, 0x20
lea rcx, [rbp + 0x1110]
mov edx, 0x18
mov qword [rbp + 0x4e8], rdx
call fcn.140170a00
mov rcx, qword [rbp + 0x900]
mov rdx, qword [rbp + 0x4e8]
call fcn.140170a00
mov r9, qword [rbp + 0x7f8]
mov r8, qword [rbp + 0x650]
mov rdx, qword [rbp + 0xaa0]
mov ecx, dword [rbp + 0x4f0]
mov eax, dword [rbp + 0x4f4]
add rsp, 0x20
mov qword [rbp + 0x1100], 0
mov qword [r9], 0
mov r9, qword [rbp + 0x1238]
mov qword [rbp + 0x4f8], r9
mov r8b, byte [r8]
test r8b, r8b
sete r8b
mov dl, byte [rdx]
test dl, dl
setne dl
mov byte [rbp + 0x506], dl
or dl, r8b
mov byte [rbp + 0x507], dl
cmp eax, ecx
jbe 0x1401707ad
mov al, byte [rbp + 0x507]
test al, 1
jne 0x140168474
jmp 0x1401682cc
mov rax, qword [rbp + 0x908]
mov rcx, qword [rbp + 0x11e8]
mov qword [rax], rcx
mov rcx, qword [rbp + 0x11f0]
mov qword [rax + 8], rcx
lea rcx, [rbp + 0x11e8]
sub rsp, 0x20
call fcn.14000f979
add rsp, 0x20
lea rcx, [rbp + 0x10b8]
mov edx, 0x18
sub rsp, 0x20
call fcn.140170a00
mov rax, qword [rbp + 0x908]
mov rdx, qword [rbp + 0x4f8]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0x10a8], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x10b0], rax
lea rcx, [rbp + 0x10b8]
lea r8, [rbp + 0x10a8]
sub rsp, 0x20
call fcn.1400cadb9
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
je 0x140168445
mov eax, dword [0x1401d1338]
mov ecx, dword [0x1401d133c]
xor ecx, 0x75215081
and eax, ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0x2c475a07
add eax, ecx
mov ecx, 0x1464310d
xor ecx, 0xeb9bcef2
mov edx, eax
xor edx, ecx
and edx, 0x8d1c8fe1
mov r8d, 0x3f78489a
xor r8d, 0xb264c77b
mov ecx, 0xf16d700e
xor ecx, 0xe928ff1
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x8d1c8fe1
or eax, 0x8d1c8fe1
imul eax, edx
add eax, ecx
mov ecx, 0xdedb8e3f
xor edx, edx
div ecx
mov ecx, 0x8cd7b56f
xor ecx, 0x5e46f78e
cmp eax, ecx
ja 0x1401707b6
mov eax, dword [0x1401d1340]
xor eax, dword [0x1401d1344]
mov edx, 0x9ca182f8
xor edx, 0x679afc16
mov ecx, eax
xor ecx, edx
mov edx, 0x16cc9b3d
xor edx, 0xe93364c2
xor ecx, edx
or eax, 0xfb3b7eee
and eax, ecx
sub eax, 0x7e2566c5
mov ecx, 0xd206d0db
xor ecx, 0x4cd2bbef
and eax, ecx
cmp eax, 0xfdf6e072
je 0x1401707b6
mov al, 1
mov byte [rbp + 0x4e7], al
jmp 0x140168c54
mov rax, qword [rbp + 0x10b8]
mov qword [rbp + 0x1110], rax
mov rax, qword [rbp + 0x10c0]
mov qword [rbp + 0x1118], rax
mov rax, qword [rbp + 0x10c8]
mov qword [rbp + 0x1120], rax
jmp 0x1401685d9
mov cl, byte [rbp + 0x506]
mov al, 1
test cl, 1
mov byte [rbp + 0x4e7], al
jne 0x140168c54
mov rcx, qword [rbp + 0x910]
mov edx, 0x18
sub rsp, 0x20
call fcn.140170a00
mov rcx, qword [rbp + 0x910]
call fcn.140171a68
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401685cc
mov ecx, dword [0x1401d1348]
mov eax, 0xee11953b
xor eax, 0x5a965c56
xor ecx, eax
mov edx, dword [0x1401d134c]
mov eax, ecx
add eax, 1
xor ecx, 0xffffffff
or ecx, edx
add ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xc0499936
and eax, edx
or ecx, 0xc0499936
mov edx, 0x1295e264
xor edx, 0xed6a1d9b
xor ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0xf0f9801e
xor edx, edx
div ecx
and eax, eax
xor eax, 0xffffffff
mov ecx, 0x7c450f33
xor ecx, 0xfcedcf13
mov edx, 0x509248d4
xor edx, 0xd03a88f4
and ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x53868114
xor ecx, 0xc74f77e1
cmp eax, ecx
ja 0x1401707bf
mov rcx, qword [rbp + 0x910]
mov eax, dword [0x1401d1350]
xor eax, dword [0x1401d1354]
mov edx, 0x912c68c2
xor edx, 0xfd89554e
sub eax, edx
mov edx, 0x48c3994c
xor edx, 0x1f01538f
add eax, edx
mov edx, 0xc3ddc8ff
xor edx, 0xaf78f573
add eax, edx
xor eax, 0xb7c9894f
mov r8d, 0x4a26036b
xor edx, edx
div r8d
mov rdx, qword [rcx]
mov qword [rbp + 0x1110], rdx
mov rdx, qword [rcx + 8]
mov qword [rbp + 0x1118], rdx
mov rcx, qword [rcx + 0x10]
mov qword [rbp + 0x1120], rcx
cmp eax, 0xb075755
ja 0x140168552
jmp 0x1401685d9
mov al, 1
mov byte [rbp + 0x4e7], al
jmp 0x140168c54
mov rax, qword [rbp + 0x900]
mov rcx, qword [rbp + 0x1120]
mov qword [rax + 0x10], rcx
movups xmm0, xmmword [rbp + 0x1110]
movups xmmword [rax], xmm0
sub rsp, 0x20
lea rcx, [rbp + 0x1110]
call fcn.14005da3b
mov rcx, qword [rbp + 0x800]
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov cl, byte [rcx]
test cl, cl
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x4e6], al
or al, cl
test al, 1
jne 0x14016863a
jmp 0x1401686c5
mov cl, byte [rbp + 0x4e6]
mov al, 1
test cl, 1
mov byte [rbp + 0x4e7], al
jne 0x140168c54
jmp 0x140168656
lea rcx, [rbp + 0x1088]
sub rsp, 0x20
call fcn.140080b91
mov rax, qword [rbp + 0x808]
mov rcx, qword [rbp + 0xaa0]
add rsp, 0x20
mov rdx, qword [rbp + 0x1088]
mov qword [rbp + 0x4d0], rdx
mov rax, qword [rax]
mov qword [rbp + 0x4d8], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x4e7], al
jne 0x140168c54
mov rax, qword [rbp + 0x7f8]
mov rcx, qword [rbp + 0x4d8]
mov rdx, qword [rbp + 0x4d0]
mov qword [rbp + 0x1100], rdx
mov qword [rax], rcx
jmp 0x140168856
mov eax, dword [0x1401d1358]
xor eax, 0x76cc2fdd
mov r8d, dword [0x1401d135c]
mov ecx, 0x981e88b3
xor ecx, 0x7e8fecd4
xor r8d, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, r8d
and edx, ecx
mov ecx, 0xccde5f59
xor ecx, 0x3321a0a6
mov r9d, r8d
xor r9d, ecx
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
sub eax, 0xecaccb1f
sub eax, 0xb9981b89
add eax, 0xecaccb1f
add eax, 0x8de4e32e
sub eax, 0xe9cd6ee8
mov ecx, 0x9e21a5db
xor ecx, 0x13c546f5
sub eax, ecx
mov ecx, 0xc8772ae4
xor ecx, 0x3788d51b
xor eax, ecx
mov edx, 0xffffffff
xor edx, 0x39e48450
mov ecx, 0xffffffff
xor ecx, 0x94e78148
or eax, edx
or ecx, 0x94e78148
xor eax, 0xffffffff
and eax, ecx
cmp eax, 0xc34dc6b5
je 0x1401707c8
mov eax, dword [0x1401d1360]
xor eax, 0xf217303c
xor edx, edx
div dword [0x1401d1364]
mov ecx, eax
and ecx, 0x351e1c76
mov edx, 0x9667148d
xor edx, 0x9667148f
imul ecx, edx
xor eax, 0x351e1c76
add eax, ecx
mov edx, 0xaad554f3
xor edx, 0x76b43789
mov ecx, 0xd32f226c
xor ecx, 0x2cd0dd93
xor edx, ecx
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0xdc61637a
add eax, edx
sub eax, ecx
mov ecx, 0x6bb156e4
xor edx, edx
div ecx
mov ecx, eax
mov rax, qword [rbp + 0x900]
mov dword [rbp + 0x4c8], ecx
mov rcx, qword [rax]
mov qword [rbp + 0x1098], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x10a0], rax
lea rcx, [rbp + 0x1100]
lea rdx, [rbp + 0x1098]
sub rsp, 0x20
call fcn.140018d5d
mov rcx, qword [rbp + 0xaa0]
mov eax, dword [rbp + 0x4c8]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x4cf], cl
cmp eax, 0xa08cd59c
ja 0x140168776
mov cl, byte [rbp + 0x4cf]
mov al, 1
test cl, 1
mov byte [rbp + 0x4e7], al
jne 0x140168856
jmp 0x140168c54
mov rax, qword [rbp + 0x800]
cmp byte [rax], 0
jne 0x140168b1b
mov rax, qword [rbp + 0x7f8]
mov rax, qword [rax]
mov qword [rbp + 0x4c0], rax
cmp rax, 0
je 0x140168a12
mov eax, dword [0x1401d1368]
mov r8d, dword [0x1401d136c]
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, 0xc5add3dc
xor edx, edx
div ecx
mov r11d, eax
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, 0x4b461eda
xor r8d, 0x67213918
mov eax, 0x1ccf3f0b
xor eax, 0xe330c0f4
xor r8d, eax
mov edx, 0xffffffff
xor edx, 0xa2836da5
mov eax, ecx
and eax, 0xa2836da5
and r11d, edx
mov r9d, r8d
and r9d, 0xa2836da5
mov r10d, 0xd1bab6ae
xor r10d, 0xfddd916c
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0xa2836da5
and ecx, edx
or eax, ecx
mov ecx, 0x9d98657e
xor ecx, 0x9d98657e
mov edx, 0xa4ad4270
xor edx, 0xe24e59f3
sub ecx, edx
add eax, ecx
mov ecx, 0xca0ea4e8
xor ecx, 0x6d2d23fb
cmp eax, ecx
je 0x1401707d1
mov rdx, qword [rbp + 0x4c0]
mov eax, dword [0x1401d1370]
xor eax, 0x9d483508
mov r8d, dword [0x1401d1374]
xor r8d, 0x7d08030e
mov ecx, r8d
and ecx, eax
xor ecx, 0xffffffff
add eax, r8d
add eax, 1
add eax, ecx
mov ecx, 0x15494ccb
xor ecx, 0x1cd42449
sub eax, ecx
mov ecx, 0xe267905a
xor ecx, 0xe267905a
sub ecx, eax
xor eax, eax
sub eax, 0x8d045c14
add ecx, eax
xor eax, eax
sub eax, ecx
mov r8d, 0x40195f23
xor r8d, 0xf4c4e68
mov ecx, eax
xor ecx, r8d
xor ecx, 0xffffffff
or eax, 0x4f55114b
and eax, ecx
movabs rcx, 0x4000000000000000
and rcx, qword [rdx]
cmp rcx, 0
sete cl
mov byte [rbp + 0x4bf], cl
cmp eax, 0x812f00d8
je 0x140168953
mov al, byte [rbp + 0x4bf]
test al, 1
jne 0x1401689fe
jmp 0x140168a12
mov rcx, qword [rbp + 0x4c0]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
mov rcx, qword [rbp + 0x900]
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140168dfd
lea rcx, [rbp + 0x1110]
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140168dfd
mov rax, qword [rbp + 0x520]
cmp rax, 0
je 0x140168e02
mov rax, qword [rbp + 0x520]
mov rax, qword [rax]
xor rax, 0xffffffffffffffff
movabs rcx, 0xc827147144e1076c
movabs rdx, 0x8827147144e1076c
xor rcx, rdx
movabs rdx, 0x3536d2ee1bd510de
movabs r8, 0xcac92d11e42aef21
xor rdx, r8
xor rcx, rdx
mov rdx, 0xffffffffffffffff
movabs r8, 0xf816fdadf9a5ff8d
xor rdx, r8
or rax, rcx
movabs rcx, 0xcd661a97db283096
movabs r8, 0x3570e73a228dcf1b
xor rcx, r8
or rcx, rdx
movabs rdx, 0xb6b0740fe77190d5
movabs r8, 0x494f8bf0188e6f2a
xor rdx, r8
xor rax, rdx
and rax, rcx
cmp rax, 0
jne 0x140168e02
mov rcx, qword [rbp + 0x520]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
jmp 0x140168e02
mov eax, dword [0x1401d1378]
mov ecx, 0xb30bbc68
xor ecx, 0x8bf1ec08
xor eax, ecx
mov r8d, dword [0x1401d137c]
mov edx, 0x5329bec5
xor edx, 0xacd6413a
mov ecx, eax
xor ecx, edx
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
add eax, 0xcafcb206
mov ecx, 0x3e6b75c9
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xe26ad492
mov edx, 0xb2d01fb3
xor edx, 0x50bacb21
mov r8d, 0xb6a4a90b
xor r8d, 0x495b56f4
xor edx, r8d
and eax, edx
shl eax, 1
sub eax, ecx
cmp eax, 0x2ac6f21f
ja 0x1401707da
mov rcx, qword [rbp + 0x870]
mov eax, dword [0x1401d1380]
xor eax, 0x4e9f08c
mov r8d, dword [0x1401d1384]
mov edx, 0x529b20eb
xor edx, 0x529b20eb
sub edx, r8d
add eax, edx
imul eax, eax, 0x107f8d7e
xor eax, 0xb6689aa9
mov r8d, 0x13a10a5f
xor edx, edx
div r8d
mov dword [rbp + 0x4b8], eax
mov rax, qword [rbp + 0x1100]
mov qword [rbp + 0x10f0], rax
mov rax, qword [rbp + 0x1108]
mov qword [rbp + 0x10f8], rax
lea rdx, [rbp + 0x10f0]
mov r8d, 1
sub rsp, 0x20
call fcn.140032450
mov rcx, qword [rbp + 0xaa0]
mov eax, dword [rbp + 0x4b8]
add rsp, 0x20
mov cl, byte [rcx]
mov byte [rbp + 0x4be], cl
cmp eax, 0xb9ac240f
ja 0x140168ba8
mov al, byte [rbp + 0x4be]
mov byte [rbp + 0x4e7], al
jmp 0x140168c54
mov rax, qword [rbp + 0x7f8]
mov rcx, qword [rbp + 0xaa0]
mov dl, byte [rbp + 0x4e7]
mov byte [rbp + 0x4af], dl
mov byte [rcx], 0
mov rax, qword [rax]
mov qword [rbp + 0x4b0], rax
cmp rax, 0
je 0x140168da0
mov rcx, qword [rbp + 0x4b0]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x140168da0
mov eax, dword [0x1401d1388]
mov r8d, dword [0x1401d138c]
mov ecx, 0x3fede016
xor ecx, 0x2e5d3f28
xor r8d, ecx
mov edx, 0x7dea3611
xor edx, 0x8215c9ee
mov ecx, eax
xor ecx, edx
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
mov ecx, 0xbfb39978
xor ecx, 0xd4dd53ec
sub eax, ecx
mov ecx, 0xb3691ada
xor edx, edx
div ecx
or eax, 0xa0923061
mov ecx, 0x6d365968
xor ecx, 0x6a7e91d7
cmp eax, ecx
je 0x1401707e3
mov rcx, qword [rbp + 0x4b0]
mov eax, dword [0x1401d1390]
mov edx, dword [0x1401d1394]
xor edx, 0x358de36c
and eax, edx
and eax, 0x21bebebd
mov r8d, 0x2b901daf
xor edx, edx
div r8d
mov edx, 0x59e1ccaf
xor edx, 0x59e1ccaf
mov r8d, 0x21990955
xor r8d, 0xe762baf1
sub edx, r8d
sub eax, edx
mov dword [rbp + 0x4a8], eax
mov eax, 0x39ee4515
xor eax, 0x753fcd3e
mov dword [rbp + 0x4a4], eax
sub rsp, 0x20
call fcn.14000e572
mov ecx, dword [rbp + 0x4a4]
mov eax, dword [rbp + 0x4a8]
add rsp, 0x20
cmp eax, ecx
je 0x140168d1c
jmp 0x140168da0
mov rcx, qword [rbp + 0x900]
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140168dfd
lea rcx, [rbp + 0x1110]
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov al, byte [rax]
mov cl, 5
xor cl, 5
cmp al, cl
jne 0x140168dfd
mov rax, qword [rbp + 0xaa0]
mov cl, byte [rbp + 0x4af]
mov byte [rax], cl
jmp 0x14016f4e1
jmp 0x14016f653
mov rax, qword [rbp + 0x508]
mov rcx, qword [rbp + 0x6c0]
mov rdx, qword [rbp + 0x520]
mov r8, qword [rbp + 0x518]
mov qword [rbp + 0x1040], r8
mov qword [rcx], rdx
mov rcx, qword [rax]
mov qword [rbp + 0x1030], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1038], rax
lea rcx, [rbp + 0x1040]
lea rdx, [rbp + 0x1030]
sub rsp, 0x20
call fcn.140171740
add rsp, 0x20
test al, 1
jne 0x140168ea1
mov word [rbp + 0xfce], 0x17f
lea rcx, [rbp + 0xfce]
sub rsp, 0x20
call fcn.140062840
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xaa0]
mov qword [rbp + 0x498], rcx
cmp byte [rax], 0
je 0x140169c8c
jmp 0x14016a434
sub rsp, 0x20
lea rcx, [rbp + 0x1068]
mov edx, 0x18
mov qword [rbp + 0x480], rdx
call fcn.140170a00
mov rdx, qword [rbp + 0x480]
lea rcx, [rbp + 0x1050]
call fcn.140170a00
mov r8, qword [rbp + 0x918]
mov rdx, qword [rbp + 0x7e0]
mov rcx, qword [rbp + 0x650]
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov qword [r8], 0
mov qword [rdx], 0
mov rdx, qword [rbp + 0x1238]
mov qword [rbp + 0x488], rdx
mov cl, byte [rcx]
test cl, cl
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x497], al
or al, cl
test al, 1
jne 0x140169008
mov rax, qword [rbp + 0x11e8]
mov qword [rbp + 0x1020], rax
mov rax, qword [rbp + 0x11f0]
mov qword [rbp + 0x1028], rax
lea rcx, [rbp + 0x11e8]
sub rsp, 0x20
call fcn.14000f979
add rsp, 0x20
movabs rdx, 0x2825955f7a21b51a
movabs rax, 0x2825955f7a21b502
xor rdx, rax
lea rcx, [rbp + 0x1008]
sub rsp, 0x20
call fcn.140170a00
mov rdx, qword [rbp + 0x488]
mov r8, qword [rbp + 0x928]
add rsp, 0x20
mov rax, qword [rbp + 0x1020]
mov qword [r8], rax
mov rax, qword [rbp + 0x1028]
mov qword [r8 + 8], rax
lea rcx, [rbp + 0x1008]
sub rsp, 0x20
call fcn.1400cadb9
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
je 0x140168fd9
mov al, 1
mov byte [rbp + 0x47f], al
jmp 0x140169b5c
mov rax, qword [rbp + 0x1008]
mov qword [rbp + 0x1068], rax
mov rax, qword [rbp + 0x1010]
mov qword [rbp + 0x1070], rax
mov rax, qword [rbp + 0x1018]
mov qword [rbp + 0x1078], rax
jmp 0x140169293
mov cl, byte [rbp + 0x497]
mov al, 1
test cl, 1
mov byte [rbp + 0x47f], al
jne 0x140169b5c
mov eax, dword [0x1401d1398]
xor eax, dword [0x1401d139c]
mov ecx, 0x7cfa4d4
xor edx, edx
div ecx
mov ecx, 0x1a849b58
xor ecx, 0xda6ae9a4
mov edx, 0x370f78c6
xor edx, 0xc8f08739
xor ecx, edx
mov edx, 0x212d4c78
xor edx, 0x212d4c78
mov r8d, 0xb47e1293
xor r8d, 0xb47e1292
sub edx, r8d
sub ecx, edx
sub eax, ecx
mov ecx, 0xb98f8c3b
xor edx, edx
div ecx
cmp eax, 0x90f0ad53
jae 0x1401707ec
mov eax, dword [0x1401d13a0]
mov ecx, 0x67cf5743
xor ecx, 0x2eed9458
xor eax, ecx
mov ecx, dword [0x1401d13a4]
xor ecx, 0x62e6d742
xor edx, edx
div ecx
mov ecx, 0x1b858fff
xor edx, edx
div ecx
sub eax, 0xb2203283
mov ecx, 0xc3da58f8
xor ecx, 0xc66f34b9
sub eax, ecx
mov ecx, 0xd1f490db
xor ecx, 0x3e15eddf
sub eax, ecx
add eax, 0x5b56c41
mov dword [rbp + 0x478], eax
movabs rdx, 0x1745d6eb5797c132
movabs rax, 0x1745d6eb5797c12a
xor rdx, rax
lea rcx, [rbp + 0xff0]
sub rsp, 0x20
call fcn.140170a00
add rsp, 0x20
lea rcx, [rbp + 0xff0]
sub rsp, 0x20
call fcn.140171a68
mov rcx, qword [rbp + 0xaa0]
mov eax, dword [rbp + 0x478]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x47e], cl
cmp eax, 0xf26a7230
ja 0x14016907f
mov al, byte [rbp + 0x47e]
test al, 1
jne 0x14016914b
jmp 0x14016917a
mov rax, qword [rbp + 0xff0]
mov qword [rbp + 0x1068], rax
mov rax, qword [rbp + 0xff8]
mov qword [rbp + 0x1070], rax
mov rax, qword [rbp + 0x1000]
mov qword [rbp + 0x1078], rax
jmp 0x140169293
mov ecx, dword [0x1401d13a8]
mov edx, dword [0x1401d13ac]
mov eax, ecx
add eax, 1
xor ecx, 0xffffffff
or ecx, edx
add ecx, eax
add ecx, 0x75b1500d
sub ecx, 0xd645617b
sub ecx, 0x75b1500d
mov eax, ecx
xor eax, 0xffffffff
and eax, 0xabb7cc1
mov edx, 0xffffffff
xor edx, 0xabb7cc1
and ecx, edx
or eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x93f73e2
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov r8d, 0x34e34a38
xor r8d, 0x3ddc39da
mov edx, eax
and edx, r8d
mov r8d, 0xaa576555
xor r8d, 0xa36816b7
or eax, r8d
imul eax, edx
add eax, ecx
cmp eax, 0xe7378562
je 0x1401707f5
mov eax, dword [0x1401d13b0]
mov edx, dword [0x1401d13b4]
mov ecx, 0xbe26a6b6
xor ecx, 0xb493b84a
xor edx, ecx
mov ecx, eax
and ecx, edx
shl ecx, 1
add eax, edx
sub eax, ecx
mov ecx, 0xddcc0ff6
xor edx, edx
div ecx
mov edx, 0x5b8f7287
xor edx, 0x1a40dd5
mov ecx, 0x1cbc1124
xor ecx, 0xe343eedb
xor edx, ecx
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x5a2b7f52
add eax, edx
sub eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xaf5cf38a
add eax, ecx
mov ecx, 0x4b88a6ee
xor ecx, 0x4b88a6ef
add eax, ecx
cmp eax, 0xcb7dfd66
ja 0x14016920c
mov al, 1
mov byte [rbp + 0x47f], al
jmp 0x140169b5c
mov rax, qword [rbp + 0x1078]
mov qword [rbp + 0x1060], rax
movups xmm0, xmmword [rbp + 0x1068]
movaps xmmword [rbp + 0x1050], xmm0
sub rsp, 0x20
lea rcx, [rbp + 0x1068]
call fcn.14005da3b
mov rcx, qword [rbp + 0x7e8]
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov cl, byte [rcx]
test cl, cl
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x477], al
or al, cl
test al, 1
jne 0x1401692f4
jmp 0x140169458
mov cl, byte [rbp + 0x477]
mov al, 1
test cl, 1
mov byte [rbp + 0x47f], al
jne 0x140169b5c
jmp 0x140169310
mov eax, dword [0x1401d13b8]
add eax, dword [0x1401d13bc]
xor eax, 0x63f45edd
mov ecx, 0x96ad9021
xor edx, edx
div ecx
mov ecx, 0xdaae94c0
xor ecx, 0x1882b502
xor edx, edx
div ecx
mov ecx, 0x5740ab7f
xor ecx, 0xa9182d9b
cmp eax, ecx
je 0x1401707fe
mov eax, dword [0x1401d13c0]
xor edx, edx
div dword [0x1401d13c4]
mov ecx, eax
mov eax, ecx
add eax, 1
xor ecx, 0xffffffff
or ecx, 0x7baaf51f
add ecx, eax
xor eax, eax
sub eax, 0xd54b72ae
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xe623f697
xor edx, 0x19dc0968
xor ecx, edx
and eax, ecx
mov ecx, 0x369093dd
or ecx, 0x369093dd
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov dword [rbp + 0x45c], eax
mov eax, 0x773c9cb2
xor eax, 0x706c4e96
mov dword [rbp + 0x458], eax
lea rcx, [rbp + 0xfd0]
sub rsp, 0x20
call fcn.140080b91
mov r8, qword [rbp + 0x7f0]
mov rdx, qword [rbp + 0xaa0]
mov ecx, dword [rbp + 0x458]
mov eax, dword [rbp + 0x45c]
add rsp, 0x20
mov r9, qword [rbp + 0xfd0]
mov qword [rbp + 0x460], r9
mov r8, qword [r8]
mov qword [rbp + 0x468], r8
mov dl, byte [rdx]
mov r8b, 0x3c
xor r8b, 0x3c
cmp dl, r8b
sete dl
mov byte [rbp + 0x476], dl
cmp eax, ecx
je 0x14016934c
mov cl, byte [rbp + 0x476]
mov al, 1
test cl, 1
mov byte [rbp + 0x47f], al
jne 0x140169431
jmp 0x140169b5c
mov rax, qword [rbp + 0x7e0]
mov rcx, qword [rbp + 0x468]
mov rdx, qword [rbp + 0x918]
mov r8, qword [rbp + 0x460]
mov qword [rdx], r8
mov qword [rax], rcx
jmp 0x1401694a7
mov rcx, qword [rbp + 0x918]
mov rax, qword [rbp + 0x1050]
mov qword [rbp + 0xfe0], rax
mov rax, qword [rbp + 0x1058]
mov qword [rbp + 0xfe8], rax
lea rdx, [rbp + 0xfe0]
sub rsp, 0x20
call fcn.140018d5d
mov rcx, qword [rbp + 0xaa0]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x47f], al
jne 0x140169b5c
mov rax, qword [rbp + 0x7e8]
mov al, byte [rax]
mov cl, 0x8f
xor cl, 0x8f
cmp al, cl
jne 0x140169b17
mov ecx, dword [0x1401d13c8]
add ecx, dword [0x1401d13cc]
mov edx, 0x7b47d478
xor edx, 0x84b82b87
mov eax, ecx
xor eax, edx
mov edx, 0xffffffff
xor edx, 0x9a59aea5
and eax, edx
or ecx, 0x9a59aea5
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
xor eax, 0x2650c02d
mov ecx, 0x1bee49c4
xor edx, edx
div ecx
cmp eax, 0x51f169a6
jae 0x140170807
mov rcx, qword [rbp + 0x7e0]
mov eax, dword [0x1401d13d0]
sub eax, dword [0x1401d13d4]
imul r9d, eax, 0xe280a030
mov edx, 0x8fdd144c
xor edx, 0x7022ebb3
mov eax, r9d
xor eax, edx
and eax, 0x49c0ae72
mov r8d, 0xa1f19e61
xor r8d, 0xe8313013
mov edx, 0x1628b2cd
xor edx, 0xe9d74d32
xor r8d, edx
and r9d, r8d
mov edx, 0xffffffff
xor edx, 0xddafabca
and edx, 0x49c0ae72
and r8d, 0xddafabca
or eax, r9d
or edx, r8d
xor eax, edx
xor eax, 0x5d0ae404
mov rcx, qword [rcx]
mov qword [rbp + 0x448], rcx
cmp rcx, 0
sete cl
mov byte [rbp + 0x457], cl
cmp eax, 0x6774a75f
jae 0x140170807
mov al, byte [rbp + 0x457]
test al, 1
jne 0x140169738
jmp 0x1401695b3
mov rax, qword [rbp + 0x448]
mov rcx, qword [rax]
movabs rdx, 0xf4d1f559f2e7c951
movabs rax, 0xb4d1f559f2e7c951
xor rdx, rax
movabs rax, 0x50d76be43f897a49
movabs r8, 0xaf28941bc07685b6
xor rax, r8
xor rdx, rax
mov rax, rcx
xor rax, rdx
and rax, rcx
cmp rax, 0
jne 0x140169738
mov eax, dword [0x1401d13d8]
xor eax, 0xb1bf1ddb
add eax, dword [0x1401d13dc]
xor eax, 0x4f19c86e
mov edx, 0xffffffff
xor edx, 0x657164f5
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x657164f5
add eax, edx
sub eax, ecx
mov ecx, 0xf5922831
xor ecx, 0xc9cd5313
xor edx, edx
div ecx
cmp eax, 0xbcd8b3eb
je 0x140170810
mov rcx, qword [rbp + 0x448]
mov eax, dword [0x1401d13e0]
xor eax, 0xfd3b7895
xor eax, dword [0x1401d13e4]
mov r9d, 0xffffffff
xor r9d, 0xd146a1c0
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
xor edx, 0xffffffff
imul edx, r8d
mov r9d, 0x6f9e2365
xor r9d, 0xbed882a5
mov r8d, eax
and r8d, r9d
or eax, 0xd146a1c0
imul eax, r8d
add eax, edx
mov r8d, eax
xor r8d, 0xffffffff
and r8d, 0xfc73b794
mov r9d, 0x8bb59810
xor r9d, 0x77c62f84
mov edx, 0x5299b7e9
xor edx, 0xad664816
xor r9d, edx
mov edx, eax
and edx, r9d
imul edx, r8d
mov r9d, 0xd4d9028a
xor r9d, 0x28aab51e
mov r8d, eax
and r8d, r9d
or eax, 0xfc73b794
imul eax, r8d
add eax, edx
mov r8d, 0xa37bcd4e
xor edx, edx
div r8d
mov dword [rbp + 0x444], eax
mov eax, 0x1c96a6c4
xor eax, 0xf0498256
mov dword [rbp + 0x440], eax
sub rsp, 0x20
call fcn.14000e572
mov ecx, dword [rbp + 0x440]
mov eax, dword [rbp + 0x444]
add rsp, 0x20
cmp eax, ecx
je 0x140170810
jmp 0x140169738
mov eax, dword [0x1401d13e8]
and eax, dword [0x1401d13ec]
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0x3998aa74
xor edx, 0x3e292fee
and edx, ecx
mov r8d, 0xffffffff
xor r8d, 0x7b1859a
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x7b1859a
or eax, 0x7b1859a
imul eax, edx
add eax, ecx
or eax, 0x6267a637
mov ecx, 0xa6a3e347
xor ecx, 0x8a2cb6ef
or eax, ecx
cmp eax, 0x3c183718
je 0x140170819
mov eax, dword [0x1401d13f0]
mov ecx, dword [0x1401d13f4]
xor ecx, 0x23028986
xor eax, ecx
imul eax, eax, 0xe41638c5
add eax, 0xb1b6bf29
imul eax, eax, 0x7e67aee8
mov dword [rbp + 0x438], eax
lea rcx, [rbp + 0x1050]
sub rsp, 0x20
call fcn.14005da50
mov rcx, qword [rbp + 0xaa0]
mov eax, dword [rbp + 0x438]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x43f], cl
cmp eax, 0x24570b29
je 0x140170819
mov al, byte [rbp + 0x43f]
test al, 1
jne 0x140169810
jmp 0x140169c82
lea rcx, [rbp + 0x1068]
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140169c82
mov ecx, dword [0x1401d13f8]
xor ecx, 0x394a2f31
mov edx, dword [0x1401d13fc]
mov eax, ecx
and eax, edx
xor ecx, edx
or eax, ecx
mov ecx, 0x6945997c
xor ecx, 0x873d8563
xor eax, ecx
add eax, 0x40b5891a
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0x828330db
xor edx, 0x8e1d1702
and edx, ecx
mov r8d, 0xffffffff
xor r8d, 0xc9e27d9
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xc9e27d9
mov r8d, 0xac6bdbcf
xor r8d, 0xa0f5fc16
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xd34294df
xor ecx, 0xa67fdc99
cmp eax, ecx
je 0x140170822
mov rcx, qword [rbp + 0x520]
mov eax, dword [0x1401d1400]
or eax, dword [0x1401d1404]
mov edx, 0xa00431bd
xor edx, 0x46444d8e
and eax, edx
mov r8d, 0x39892703
xor r8d, 0x9303ee8f
xor edx, edx
div r8d
mov r8d, eax
xor r8d, 0xffffffff
and r8d, 0x214c1de3
mov r9d, 0xffffffff
xor r9d, 0x214c1de3
mov edx, eax
and edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0x214c1de3
or eax, 0x214c1de3
imul eax, r8d
add eax, edx
cmp rcx, 0
sete cl
mov byte [rbp + 0x437], cl
cmp eax, 0x88a4831f
ja 0x140170822
mov al, byte [rbp + 0x437]
test al, 1
jne 0x140169c87
jmp 0x14016994d
mov rax, qword [rbp + 0x520]
mov rax, qword [rax]
or rax, rax
xor rax, 0xffffffffffffffff
mov rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
xor rcx, rdx
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
and rcx, rdx
or rax, rcx
xor rax, 0xffffffffffffffff
cmp rax, 0
jne 0x140169c87
mov eax, dword [0x1401d1408]
xor eax, 0x8b6900ff
xor edx, edx
div dword [0x1401d140c]
mov ecx, 0x863cd626
xor ecx, 0xa56a44e8
xor edx, edx
div ecx
mov ecx, 0xe40b775d
xor ecx, 0x922ccfc8
sub eax, ecx
sub eax, 0x5bdfbdbb
sub eax, 0xc7436dd1
add eax, 0x5bdfbdbb
mov ecx, 0xd38813d2
xor ecx, 0x382877af
cmp eax, ecx
je 0x14017082b
mov rcx, qword [rbp + 0x520]
mov eax, dword [0x1401d1410]
mov edx, dword [0x1401d1414]
mov r8d, 0xbc53226d
xor r8d, 0xa429bcad
xor edx, r8d
mov esi, eax
and esi, edx
or eax, edx
add esi, eax
mov eax, 0xde074f79
xor eax, 0x21f8b086
mov edx, esi
xor edx, eax
and edx, 0x84a12295
mov r8d, 0xffffffff
xor r8d, 0x84a12295
mov eax, esi
and eax, r8d
imul eax, edx
mov r8d, 0x25e086bd
xor r8d, 0xa141a428
mov edx, esi
and edx, r8d
mov r8d, 0x72c76817
xor r8d, 0xf6664a82
or esi, r8d
imul esi, edx
add esi, eax
mov eax, 0xc9ad4928
xor eax, 0xb70c365a
and esi, eax
mov edx, esi
xor edx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x96aee3f
mov r9d, 0xffffffff
xor r9d, 0x924d25ba
mov eax, edx
and eax, 0x924d25ba
and esi, r9d
mov r11d, 0xdf3abaec
xor r11d, 0x4d779f56
mov r10d, r8d
and r10d, r11d
mov r11d, 0xd465c52c
xor r11d, 0xdd0f2b13
and r11d, r9d
or eax, esi
or r10d, r11d
xor eax, r10d
or edx, r8d
mov r8d, 0x69cec507
xor r8d, 0x96313af8
xor edx, r8d
mov r8d, 0x5e148f31
xor r8d, 0xcc59aa8b
or r8d, r9d
and edx, r8d
or eax, edx
mov dword [rbp + 0x430], eax
sub rsp, 0x20
call fcn.14000e572
mov eax, dword [rbp + 0x430]
add rsp, 0x20
cmp eax, 0x18e33808
je 0x14017082b
jmp 0x140169c87
mov rdx, qword [rbp + 0x920]
mov rcx, qword [rbp + 0x870]
mov rax, qword [rbp + 0x918]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
mov r8d, 1
sub rsp, 0x20
call fcn.140032450
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp + 0x47f], al
mov rax, qword [rbp + 0x7e0]
mov rcx, qword [rbp + 0xaa0]
mov dl, byte [rbp + 0x47f]
mov byte [rbp + 0x427], dl
mov byte [rcx], 0
mov rax, qword [rax]
mov qword [rbp + 0x428], rax
cmp rax, 0
je 0x140169c25
mov rax, qword [rbp + 0x428]
mov rcx, qword [rax]
movabs rdx, 0x82763a93aad0b493
movabs rax, 0x7d89c56c552f4b6c
xor rdx, rax
mov rax, rcx
xor rax, rdx
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
or rax, rdx
xor rcx, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
or rcx, rdx
xor rax, 0xffffffffffffffff
movabs rdx, 0x98e3e0c81e32df9
movabs r8, 0xf671c1f37e1cd206
xor rdx, r8
xor rcx, rdx
or rax, rcx
cmp rax, 0
jne 0x140169c25
mov rcx, qword [rbp + 0x428]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
lea rcx, [rbp + 0x1050]
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140169c82
lea rcx, [rbp + 0x1068]
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x6f
xor cl, 0x6f
cmp al, cl
jne 0x140169c82
mov rax, qword [rbp + 0xaa0]
mov cl, byte [rbp + 0x427]
mov byte [rax], cl
jmp 0x14016f4e1
jmp 0x14016f653
mov rdx, qword [rbp + 0x938]
mov rax, qword [rbp + 0x498]
mov rcx, qword [rbp + 0x6c8]
mov r8, qword [rbp + 0x520]
mov r9, qword [rbp + 0x518]
mov qword [rbp + 0xfb0], r9
mov qword [rcx], r8
mov rcx, qword [rax]
mov qword [rdx], rcx
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0xfb0]
sub rsp, 0x20
call fcn.140171740
add rsp, 0x20
test al, 1
jne 0x140169d21
mov rcx, qword [rbp + 0x950]
mov ax, 0x6007
xor ax, 0x624b
mov word [rcx], ax
sub rsp, 0x20
call fcn.140062840
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xaa0]
mov qword [rbp + 0x418], rcx
cmp byte [rax], 0
je 0x14016a439
jmp 0x14016acb5
sub rsp, 0x20
lea rcx, [rbp + 0xfc0]
mov edx, 8
mov qword [rbp + 0x400], rdx
call fcn.140170a00
mov rcx, qword [rbp + 0x940]
mov rdx, qword [rbp + 0x400]
call fcn.140170a00
mov rdx, qword [rbp + 0x400]
lea rcx, [rbp + 0xfa8]
call fcn.140170a00
mov rcx, qword [rbp + 0x650]
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov rdx, qword [rbp + 0x1238]
mov qword [rbp + 0x408], rdx
mov cl, byte [rcx]
test cl, cl
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x417], al
or al, cl
test al, 1
jne 0x140169f87
mov rax, qword [rbp + 0x11e8]
mov qword [rbp + 0xf98], rax
mov rax, qword [rbp + 0x11f0]
mov qword [rbp + 0xfa0], rax
lea rcx, [rbp + 0x11e8]
sub rsp, 0x20
call fcn.14000f979
add rsp, 0x20
lea rcx, [rbp + 0xf90]
mov edx, 8
sub rsp, 0x20
call fcn.140170a00
mov rcx, qword [rbp + 0x408]
add rsp, 0x20
mov rax, qword [rbp + 0xf98]
mov qword [rbp + 0xf80], rax
mov rax, qword [rbp + 0xfa0]
mov qword [rbp + 0xf88], rax
lea rdx, [rbp + 0xf80]
sub rsp, 0x20
call fcn.1400ca110
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xaa0]
mov qword [rbp + 0x3f8], rcx
cmp byte [rax], 0
je 0x140169e40
jmp 0x14016a13d
mov eax, dword [0x1401d1418]
xor eax, 0x914cdd1f
mov r8d, dword [0x1401d141c]
mov ecx, 0x51da5653
xor ecx, 0xae25a9ac
mov edx, r8d
xor edx, ecx
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
mov r8d, 0xffffffff
xor r8d, 0xdd97e41d
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x959a094f
xor r8d, 0x6a65f6b0
xor ecx, r8d
imul ecx, edx
mov r8d, 0xe6a79891
xor r8d, 0x3b307c8c
mov edx, eax
and edx, r8d
or eax, 0xdd97e41d
imul eax, edx
add eax, ecx
mov ecx, 0x3c0e907c
xor ecx, 0xc0815db1
or eax, ecx
mov ecx, 0x542c069b
xor ecx, 0x235bbbaf
and eax, ecx
cmp eax, 0xd8202546
ja 0x140170834
mov rcx, qword [rbp + 0x940]
mov eax, dword [0x1401d1420]
mov r8d, dword [0x1401d1424]
mov edx, eax
xor edx, 0xffffffff
and edx, r8d
xor r8d, 0xffffffff
and eax, r8d
sub eax, edx
mov r9d, 0xffffffff
xor r9d, 0xadba51cd
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, 0xadba51cd
or eax, 0xadba51cd
imul eax, r8d
add eax, edx
mov r8d, 0xe52bc35e
xor r8d, 0x7e337a97
xor edx, edx
div r8d
mov rdx, qword [rbp + 0x3f8]
add eax, 0x9e0c1b2b
mov r8d, 0x72b5333
xor r8d, 0x9a534ae8
sub eax, r8d
sub eax, 0x9e0c1b2b
mov qword [rcx], rdx
cmp eax, 0xe37096f8
ja 0x140169eda
mov rax, qword [rbp + 0x3f8]
mov qword [rbp + 0x3f0], rax
jmp 0x14016a142
mov al, byte [rbp + 0x417]
test al, 1
jne 0x14016a13d
mov eax, dword [0x1401d1428]
mov edx, dword [0x1401d142c]
mov ecx, 0x88a52ac5
xor ecx, 0x88a52ac5
sub ecx, edx
add eax, ecx
mov ecx, 0xdd8a830d
xor ecx, 0x7e0a8f95
xor edx, edx
div ecx
mov r11d, eax
or r11d, 0xa7a07570
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, 0x59911cea
xor r8d, 0xc3f3075a
mov eax, 0xe5d2c942
xor eax, 0x1a2d36bd
xor r8d, eax
mov edx, 0x87e80f16
xor edx, 0x3e69096
mov eax, 0x496b7c5e
xor eax, 0xb69483a1
xor edx, eax
mov r9d, 0x5a6e7a27
xor r9d, 0xde60e5a7
mov eax, ecx
and eax, r9d
and r11d, edx
mov r10d, 0x3ae4b9d0
xor r10d, 0xbeea2650
mov r9d, r8d
and r9d, r10d
mov r10d, edx
and r10d, 0x9a621bb0
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0x840e9f80
and ecx, edx
or eax, ecx
cmp eax, 0x4dea1910
jb 0x14017083d
mov rcx, qword [rbp + 0x948]
mov edx, dword [0x1401d1430]
mov r8d, dword [0x1401d1434]
mov eax, edx
or eax, r8d
mov r9d, 0x3ffd1399
xor r9d, 0xc002ec66
xor eax, r9d
or edx, r8d
xor edx, 0xffffffff
or eax, edx
mov edx, 0xb0a5ee63
xor edx, 0x4f5a119c
xor eax, edx
xor eax, 0x3d786f71
mov edx, 0x7418ffb9
xor edx, 0xf071360c
and eax, edx
xor edx, edx
sub edx, eax
mov eax, 0x3e45a596
xor eax, 0x3e45a596
mov r8d, 0xb9325e0
xor r8d, 0x7909c24b
sub eax, r8d
add edx, eax
xor eax, eax
sub eax, edx
mov dword [rbp + 0x3dc], eax
mov edx, 8
sub rsp, 0x20
call fcn.140170a00
call fcn.140171aa0
mov rcx, qword [rbp + 0xaa0]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x3dc]
mov qword [rbp + 0x3e0], rdx
mov cl, byte [rcx]
mov dl, 0x1b
xor dl, 0x1b
cmp cl, dl
sete cl
mov byte [rbp + 0x3ef], cl
cmp eax, 0x794e7a23
jb 0x14016a056
mov rax, qword [rbp + 0x3e0]
mov cl, byte [rbp + 0x3ef]
test cl, 1
mov qword [rbp + 0x3f0], rax
jne 0x14016a142
jmp 0x14016a13d
jmp 0x14016a434
mov rax, qword [rbp + 0x3f0]
mov qword [rbp + 0x3d0], rax
mov eax, dword [0x1401d1438]
mov ecx, 0x4f40d756
xor ecx, 0x398517f3
xor eax, ecx
mov ecx, dword [0x1401d143c]
mov edx, 0x287a0450
xor edx, 0xf6afd6f9
add eax, edx
add eax, ecx
sub eax, 0xded5d2a9
and eax, 0xa1b4b631
add eax, 0x22e06d39
and eax, 0x24aa9597
cmp eax, 0x5f0b8a2b
je 0x140170846
mov rcx, qword [rbp + 0x3d0]
mov eax, dword [0x1401d1440]
xor eax, 0x2b8b6db5
mov edx, dword [0x1401d1444]
xor edx, 0xcb33b3fb
xor eax, edx
mov edx, eax
xor edx, 0xffffffff
mov r8d, 0xf9d8a3e2
xor r8d, 0x4f38c6d9
and r8d, edx
mov r9d, 0xc66ddc2f
xor r9d, 0x708db914
mov edx, 0xb5fac8c2
xor edx, 0x4a05373d
xor r9d, edx
mov edx, eax
and edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0xb6e0653b
mov r9d, 0x58c2c519
xor r9d, 0xee22a022
or eax, r9d
imul eax, r8d
add eax, edx
sub eax, 0x7a0f33de
mov r8d, eax
xor r8d, 0xfd51e83
mov edx, 0xf54fcd0c
xor edx, 0xab032f3
xor r8d, edx
mov edx, 0xe2602dc6
xor edx, 0xedb53345
and edx, r8d
shl edx, 1
sub edx, 0xfd51e83
sub eax, edx
movabs rdx, 0x100000000
and rcx, rdx
cmp rcx, 0
sete cl
mov byte [rbp + 0x3cf], cl
cmp eax, 0x7cd39bba
jbe 0x140170846
mov al, byte [rbp + 0x3cf]
test al, 1
jne 0x14016a27e
jmp 0x14016a2f9
sub rsp, 0x20
call fcn.1400809a3
add rsp, 0x20
mov rax, qword [rbp + 0xaa0]
mov al, byte [rax]
mov cl, 0x32
xor cl, 0x32
cmp al, cl
jne 0x14016a434
mov rax, qword [rbp + 0x520]
cmp rax, 0
je 0x14016a42f
mov rax, qword [rbp + 0x520]
mov rax, qword [rax]
movabs rcx, 0x80a46276659ea610
movabs rdx, 0xc0a46276659ea610
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x14016a42f
mov rcx, qword [rbp + 0x520]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
jmp 0x14016a42f
mov rdx, qword [rbp + 0x3d0]
movabs rcx, 0x1115d43ae154bb31
movabs rax, 0x1115d43ae154bb11
xor rcx, rax
shl rdx, cl
movabs rcx, 0xab75730c34c0e279
movabs rax, 0xab75730c34c0e259
xor rcx, rax
sar rdx, cl
lea rcx, [rbp + 0xf70]
sub rsp, 0x20
call fcn.14000477c
mov rcx, qword [rbp + 0x7d0]
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov rdx, qword [rbp + 0xf70]
mov qword [rbp + 0x3b8], rdx
mov rcx, qword [rcx]
mov qword [rbp + 0x3c0], rcx
cmp byte [rax], 0
jne 0x14016a434
mov r8, qword [rbp + 0x3c0]
mov rdx, qword [rbp + 0x930]
mov rcx, qword [rbp + 0x870]
mov rax, qword [rbp + 0x7d8]
mov r9, qword [rbp + 0x3b8]
mov qword [rdx], r9
mov qword [rax], r8
mov r8d, 1
sub rsp, 0x20
call fcn.140032450
mov rax, qword [rbp + 0x3c0]
add rsp, 0x20
cmp rax, 0
je 0x14016a434
mov rax, qword [rbp + 0x3c0]
mov rax, qword [rax]
mov rcx, rax
add rcx, 1
movabs rdx, 0x8ea4ee739308b1f
movabs r8, 0xf715b118c6cf74e0
xor rdx, r8
xor rax, rdx
movabs rdx, 0x4c8832bc96949ac5
movabs r8, 0xc8832bc96949ac5
xor rdx, r8
or rax, rdx
add rax, rcx
cmp rax, 0
jne 0x14016a434
mov rcx, qword [rbp + 0x3c0]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
jmp 0x14016a434
jmp 0x14016f653
jmp 0x14016f4e1
mov rcx, qword [rbp + 0x958]
mov rax, qword [rbp + 0x418]
mov rdx, qword [rbp + 0x6d0]
mov r8, qword [rbp + 0x520]
mov r9, qword [rbp + 0x518]
mov qword [rcx], r9
mov qword [rdx], r8
mov rdx, qword [rax]
mov qword [rbp + 0xf10], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0xf18], rax
lea rdx, [rbp + 0xf10]
sub rsp, 0x20
call fcn.140171740
add rsp, 0x20
test al, 1
jne 0x14016a4d5
mov ax, 0xd70f
xor ax, 0xd67a
mov word [rbp + 0xec6], ax
lea rcx, [rbp + 0xec6]
sub rsp, 0x20
call fcn.140062840
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xaa0]
mov qword [rbp + 0x3b0], rcx
cmp byte [rax], 0
je 0x14016ad9e
jmp 0x14016b20b
sub rsp, 0x20
lea rcx, [rbp + 0xf58]
mov edx, 0x18
mov qword [rbp + 0x398], rdx
call fcn.140170a00
mov rdx, qword [rbp + 0x398]
lea rcx, [rbp + 0xf40]
call fcn.140170a00
mov rdx, qword [rbp + 0x7b8]
mov rcx, qword [rbp + 0x650]
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov qword [rbp + 0xf30], 0
mov qword [rdx], 0
mov rdx, qword [rbp + 0x1238]
mov qword [rbp + 0x3a0], rdx
mov cl, byte [rcx]
test cl, cl
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x3af], al
or al, cl
test al, 1
jne 0x14016a62e
mov rax, qword [rbp + 0x11e8]
mov qword [rbp + 0xf00], rax
mov rax, qword [rbp + 0x11f0]
mov qword [rbp + 0xf08], rax
lea rcx, [rbp + 0x11e8]
sub rsp, 0x20
call fcn.14000f979
add rsp, 0x20
lea rcx, [rbp + 0xee8]
mov edx, 0x18
sub rsp, 0x20
call fcn.140170a00
mov rdx, qword [rbp + 0x3a0]
add rsp, 0x20
mov rax, qword [rbp + 0xf00]
mov qword [rbp + 0xed8], rax
mov rax, qword [rbp + 0xf08]
mov qword [rbp + 0xee0], rax
lea rcx, [rbp + 0xee8]
lea r8, [rbp + 0xed8]
sub rsp, 0x20
call fcn.1400cadb9
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
je 0x14016a5ff
mov al, 1
mov byte [rbp + 0x397], al
jmp 0x14016ab1d
mov rax, qword [rbp + 0xee8]
mov qword [rbp + 0xf58], rax
mov rax, qword [rbp + 0xef0]
mov qword [rbp + 0xf60], rax
mov rax, qword [rbp + 0xef8]
mov qword [rbp + 0xf68], rax
jmp 0x14016a773
mov cl, byte [rbp + 0x3af]
mov al, 1
test cl, 1
mov byte [rbp + 0x397], al
jne 0x14016ab1d
mov rcx, qword [rbp + 0x960]
mov edx, 0x18
sub rsp, 0x20
call fcn.140170a00
mov rcx, qword [rbp + 0x960]
call fcn.140171a68
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14016a6a6
mov rax, qword [rbp + 0x960]
mov rcx, qword [rax]
mov qword [rbp + 0xf58], rcx
mov rcx, qword [rax + 8]
mov qword [rbp + 0xf60], rcx
mov rax, qword [rax + 0x10]
mov qword [rbp + 0xf68], rax
jmp 0x14016a773
mov eax, dword [0x1401d1448]
xor eax, dword [0x1401d144c]
add eax, 0xbab58f8b
mov ecx, eax
add ecx, 1
mov edx, 0xd74d5108
xor edx, 0x28b2aef7
xor eax, edx
mov edx, 0x3428630e
xor edx, 0x8cdfc52a
or eax, edx
add eax, ecx
xor ecx, ecx
sub ecx, 0x3c30b60a
add eax, ecx
cmp eax, 0x669d09e
jb 0x14017084f
mov ecx, dword [0x1401d1450]
xor ecx, 0xbdc11cc6
or ecx, dword [0x1401d1454]
sub ecx, 0xeebc3f55
and ecx, 0x3e4d82a1
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov edx, 0x4bbb8b9a
xor edx, 0x2bb73bfc
mov r8d, 0x7b1af0ad
xor r8d, 0x1b1640cb
or edx, r8d
mov r8d, 0xd6a9603d
xor r8d, 0x29569fc2
xor edx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
or ecx, 0x600cb066
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0xf019fb5a
xor ecx, 0xaa62ddf1
cmp eax, ecx
je 0x14016a6ed
mov al, 1
mov byte [rbp + 0x397], al
jmp 0x14016ab1d
mov rax, qword [rbp + 0xf68]
mov qword [rbp + 0xf50], rax
movups xmm0, xmmword [rbp + 0xf58]
movaps xmmword [rbp + 0xf40], xmm0
sub rsp, 0x20
lea rcx, [rbp + 0xf58]
call fcn.14005da3b
mov rcx, qword [rbp + 0x7c0]
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov cl, byte [rcx]
test cl, cl
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x396], al
or al, cl
test al, 1
jne 0x14016a7d4
jmp 0x14016a85f
mov cl, byte [rbp + 0x396]
mov al, 1
test cl, 1
mov byte [rbp + 0x397], al
jne 0x14016ab1d
jmp 0x14016a7f0
lea rcx, [rbp + 0xec8]
sub rsp, 0x20
call fcn.140080b91
mov rax, qword [rbp + 0x7c8]
mov rcx, qword [rbp + 0xaa0]
add rsp, 0x20
mov rdx, qword [rbp + 0xec8]
mov qword [rbp + 0x380], rdx
mov rax, qword [rax]
mov qword [rbp + 0x388], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x397], al
jne 0x14016ab1d
mov rax, qword [rbp + 0x7b8]
mov rcx, qword [rbp + 0x388]
mov rdx, qword [rbp + 0x380]
mov qword [rbp + 0xf30], rdx
mov qword [rax], rcx
jmp 0x14016a8ad
mov rdx, qword [rbp + 0x968]
mov rax, qword [rbp + 0xf40]
mov qword [rdx], rax
mov rax, qword [rbp + 0xf48]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0xf30]
sub rsp, 0x20
call fcn.140018d5d
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov cl, byte [rax]
mov dl, 0xae
xor dl, 0xae
mov al, 1
cmp cl, dl
mov byte [rbp + 0x397], al
jne 0x14016ab1d
mov rax, qword [rbp + 0x7c0]
cmp byte [rax], 0
jne 0x14016aac0
mov rax, qword [rbp + 0x7b8]
mov rax, qword [rax]
mov qword [rbp + 0x378], rax
cmp rax, 0
je 0x14016aa20
mov rcx, qword [rbp + 0x378]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x14016aa20
mov eax, dword [0x1401d1458]
mov edx, dword [0x1401d145c]
mov ecx, edx
and ecx, eax
mov r8d, 0xa5921135
xor r8d, 0x5a6deeca
xor ecx, r8d
add eax, edx
mov edx, 0x7f7083ff
xor edx, 0x7f7083fe
add eax, edx
add eax, ecx
add eax, 0x6c6801c2
mov ecx, 0x3225e243
xor ecx, 0xcdda1dbc
mov edx, eax
xor edx, ecx
and edx, 0x8c272377
mov r8d, 0xffffffff
xor r8d, 0x8c272377
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0x54371889
xor r8d, 0xd8103bfe
mov edx, eax
and edx, r8d
or eax, 0x8c272377
imul eax, edx
add eax, ecx
mov ecx, 0x64ae6fb7
xor ecx, 0xdd9e8215
xor edx, edx
div ecx
cmp eax, 0x58a9ed63
ja 0x140170858
mov rcx, qword [rbp + 0x378]
mov edx, dword [0x1401d1460]
xor edx, dword [0x1401d1464]
mov r8d, 0x27176b0b
xor r8d, 0x7ca45e1f
mov eax, edx
or eax, r8d
xor eax, 0xffffffff
or edx, 0x5bb33514
xor edx, 0xffffffff
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
xor eax, 0xb576f019
mov edx, 0xffffffff
xor edx, 0x42d6523d
add eax, edx
mov edx, 0x546e3139
xor edx, 0x546e3138
add eax, edx
mov dword [rbp + 0x374], eax
mov eax, 0xa7abb199
xor eax, 0xcac0127e
mov dword [rbp + 0x370], eax
sub rsp, 0x20
call fcn.14000e572
mov ecx, dword [rbp + 0x370]
mov eax, dword [rbp + 0x374]
add rsp, 0x20
cmp eax, ecx
jb 0x14016a98c
jmp 0x14016aa20
lea rcx, [rbp + 0xf40]
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14016acb5
lea rcx, [rbp + 0xf58]
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14016acb5
mov rax, qword [rbp + 0x520]
cmp rax, 0
je 0x14016acba
mov rax, qword [rbp + 0x520]
mov rax, qword [rax]
movabs rcx, 0x2eb13d26df4c2537
movabs rdx, 0x6eb13d26df4c2537
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x14016acba
mov rcx, qword [rbp + 0x520]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
jmp 0x14016acba
mov rcx, qword [rbp + 0x870]
mov rax, qword [rbp + 0xf30]
mov qword [rbp + 0xf20], rax
mov rax, qword [rbp + 0xf38]
mov qword [rbp + 0xf28], rax
movabs r8, 0xf04ca6eea2d38eef
movabs rax, 0xf04ca6eea2d38eee
xor r8, rax
lea rdx, [rbp + 0xf20]
sub rsp, 0x20
call fcn.140032450
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp + 0x397], al
mov al, byte [rbp + 0x397]
mov byte [rbp + 0x36f], al
mov eax, dword [0x1401d1468]
sub eax, dword [0x1401d146c]
mov ecx, eax
and ecx, 0xf48a9c4a
shl ecx, 1
mov edx, 0x21bb3c04
xor edx, 0xd531a04e
xor eax, edx
add eax, ecx
imul eax, eax, 0x9100d34d
mov ecx, eax
xor ecx, 0x418c376
xor ecx, 0xffffffff
and ecx, 0x418c376
shl ecx, 1
sub ecx, 0x418c376
sub eax, ecx
mov ecx, 0xe68cdd16
xor ecx, 0xcf97e8b5
cmp eax, ecx
ja 0x140170861
mov rcx, qword [rbp + 0x7b8]
mov rdx, qword [rbp + 0xaa0]
mov eax, dword [0x1401d1470]
xor eax, 0x6deebe63
imul eax, dword [0x1401d1474]
xor r8d, r8d
sub r8d, 0x83a17ad9
sub eax, r8d
and eax, 0xf48d5f1c
mov r9d, 0xfe003483
xor r9d, 0x1b17c170
mov r8d, eax
and r8d, r9d
mov r9d, 0x32504be5
xor r9d, 0x32504be7
imul r8d, r9d
mov r9d, 0xc552dcc7
xor r9d, 0x20452934
xor eax, r9d
add eax, r8d
mov r8b, 0x98
xor r8b, 0x98
mov byte [rdx], r8b
mov rcx, qword [rcx]
mov qword [rbp + 0x360], rcx
cmp rcx, 0
sete cl
mov byte [rbp + 0x36e], cl
cmp eax, 0x16da2432
jb 0x14016ab84
mov al, byte [rbp + 0x36e]
test al, 1
jne 0x14016ac5e
jmp 0x14016ac2c
mov rcx, qword [rbp + 0x360]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x14016ac5e
mov rcx, qword [rbp + 0x360]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
lea rcx, [rbp + 0xf40]
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14016acb5
lea rcx, [rbp + 0xf58]
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14016acb5
mov rax, qword [rbp + 0xaa0]
mov cl, byte [rbp + 0x36f]
mov byte [rax], cl
jmp 0x14016f4e1
mov eax, dword [0x1401d1478]
xor eax, 0xbd7f74f3
mov ecx, dword [0x1401d147c]
mov edx, 0x72a38c63
xor edx, 0xeee37f6d
xor ecx, edx
xor eax, ecx
mov ecx, 0x1a9939c6
xor edx, edx
div ecx
sub eax, 0xf139852e
sub eax, 0xa4c3fee2
mov ecx, 0x1c29ad35
xor ecx, 0x7bf88fee
cmp eax, ecx
jb 0x14017086a
mov eax, dword [0x1401d1480]
mov r8d, dword [0x1401d1484]
mov ecx, 0x3a3cfddd
xor ecx, 0xc5c30222
mov r9d, r8d
xor r9d, ecx
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
mov r9d, 0x6de66861
xor r9d, 0x9219979e
xor ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov edx, 0xbe9e3d7b
xor edx, 0x2d654388
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
and ecx, 0x93fb7ef3
shl ecx, 1
sub ecx, 0x93fb7ef3
sub eax, ecx
mov ecx, 0x2d87eac0
xor ecx, 0x23fe7468
imul eax, ecx
mov ecx, 0x41d31326
xor ecx, 0xc88e04e5
sub eax, ecx
mov ecx, 0x932e9f25
xor ecx, 0xc9e94b15
cmp eax, ecx
ja 0x14016ad00
jmp 0x14016f653
mov rax, qword [rbp + 0x3b0]
mov rcx, qword [rbp + 0x6d8]
mov rdx, qword [rbp + 0x520]
mov r8, qword [rbp + 0x518]
mov qword [rbp + 0xea8], r8
mov qword [rcx], rdx
mov rcx, qword [rax]
mov qword [rbp + 0xe98], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xea0], rax
lea rcx, [rbp + 0xea8]
lea rdx, [rbp + 0xe98]
sub rsp, 0x20
call fcn.140171740
add rsp, 0x20
test al, 1
jne 0x14016ae38
mov word [rbp + 0xe66], 5
lea rcx, [rbp + 0xe66]
sub rsp, 0x20
call fcn.140062840
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xaa0]
mov qword [rbp + 0x358], rcx
cmp byte [rax], 0
je 0x14016b210
jmp 0x14016bdd1
sub rsp, 0x20
lea rcx, [rbp + 0xeb8]
mov edx, 8
mov qword [rbp + 0x340], rdx
call fcn.140170a00
mov rcx, qword [rbp + 0x978]
mov rdx, qword [rbp + 0x340]
call fcn.140170a00
mov rdx, qword [rbp + 0x340]
lea rcx, [rbp + 0xe90]
call fcn.140170a00
mov rcx, qword [rbp + 0x650]
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov rdx, qword [rbp + 0x1238]
mov qword [rbp + 0x348], rdx
mov cl, byte [rcx]
test cl, cl
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x357], al
or al, cl
test al, 1
jne 0x14016af73
mov rax, qword [rbp + 0x11e8]
mov qword [rbp + 0xe80], rax
mov rax, qword [rbp + 0x11f0]
mov qword [rbp + 0xe88], rax
lea rcx, [rbp + 0x11e8]
sub rsp, 0x20
call fcn.14000f979
mov rcx, qword [rbp + 0x980]
add rsp, 0x20
mov edx, 8
sub rsp, 0x20
call fcn.140170a00
mov rcx, qword [rbp + 0x348]
mov rdx, qword [rbp + 0x988]
add rsp, 0x20
mov rax, qword [rbp + 0xe80]
mov qword [rdx], rax
mov rax, qword [rbp + 0xe88]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.1400ca110
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xaa0]
mov qword [rbp + 0x338], rcx
mov al, byte [rax]
mov cl, 0xd8
xor cl, 0xd8
cmp al, cl
je 0x14016af56
jmp 0x14016afb8
mov rax, qword [rbp + 0x338]
mov rcx, qword [rbp + 0x978]
mov qword [rcx], rax
mov qword [rbp + 0x330], rax
jmp 0x14016afbd
mov al, byte [rbp + 0x357]
test al, 1
jne 0x14016afb8
lea rcx, [rbp + 0xe78]
mov edx, 8
sub rsp, 0x20
call fcn.140170a00
call fcn.140171aa0
mov rcx, qword [rbp + 0xaa0]
add rsp, 0x20
mov cl, byte [rcx]
cmp cl, 0
mov qword [rbp + 0x330], rax
je 0x14016afbd
jmp 0x14016b20b
mov rax, qword [rbp + 0x330]
mov qword [rbp + 0x328], rax
or rax, rax
xor rax, 0xffffffffffffffff
mov rcx, 0xffffffffffffffff
movabs rdx, 0x100000000
xor rcx, rdx
mov rdx, 0xffffffffffffffff
movabs r8, 0x100000000
xor rdx, r8
and rcx, rdx
or rax, rcx
xor rax, 0xffffffffffffffff
movabs rcx, 0x5fd546ea90bdc43e
movabs rdx, 0x5fd546ea90bdc43e
xor rcx, rdx
cmp rax, rcx
jne 0x14016b0f9
sub rsp, 0x20
call fcn.1400809a3
add rsp, 0x20
mov rax, qword [rbp + 0xaa0]
cmp byte [rax], 0
jne 0x14016b20b
mov rax, qword [rbp + 0x520]
cmp rax, 0
je 0x14016b206
mov rax, qword [rbp + 0x520]
mov rcx, qword [rax]
mov rax, rcx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
and rax, rcx
movabs rcx, 0x227051dd94fcfa54
movabs rdx, 0x627051dd94fcfa54
xor rcx, rdx
movabs rdx, 0xafbc734641f13368
movabs r8, 0xefbc734641f13368
xor rdx, r8
or rcx, rdx
movabs rdx, 0x596823f278b100e4
movabs r8, 0xa697dc0d874eff1b
xor rdx, r8
xor rcx, rdx
movabs rdx, 0xae27a60c4d3a4f9f
movabs r8, 0x51d859f3b2c5b060
xor rdx, r8
xor rax, rdx
xor rcx, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jne 0x14016b206
mov rcx, qword [rbp + 0x520]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
jmp 0x14016b206
mov rdx, qword [rbp + 0x328]
shl rdx, 0x20
sar rdx, 0x20
lea rcx, [rbp + 0xe68]
sub rsp, 0x20
call fcn.14000477c
mov rcx, qword [rbp + 0x7a8]
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov rdx, qword [rbp + 0xe68]
mov qword [rbp + 0x318], rdx
mov rcx, qword [rcx]
mov qword [rbp + 0x320], rcx
cmp byte [rax], 0
jne 0x14016b20b
mov r8, qword [rbp + 0x320]
mov rdx, qword [rbp + 0x970]
mov rcx, qword [rbp + 0x870]
mov rax, qword [rbp + 0x7b0]
mov r9, qword [rbp + 0x318]
mov qword [rdx], r9
mov qword [rax], r8
movabs r8, 0x9f5607d97b358075
movabs rax, 0x9f5607d97b358074
xor r8, rax
sub rsp, 0x20
call fcn.140032450
mov rax, qword [rbp + 0x320]
add rsp, 0x20
cmp rax, 0
je 0x14016b20b
mov rax, qword [rbp + 0x320]
mov rax, qword [rax]
movabs rcx, 0x780045a6f5fcaf21
movabs rdx, 0x380045a6f5fcaf21
xor rcx, rdx
and rax, rcx
movabs rcx, 0xc6e8d72d5dfc0687
movabs rdx, 0xc6e8d72d5dfc0687
xor rcx, rdx
cmp rax, rcx
jne 0x14016b20b
mov rcx, qword [rbp + 0x320]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
jmp 0x14016b20b
jmp 0x14016f653
jmp 0x14016f4e1
mov eax, dword [0x1401d1488]
or eax, dword [0x1401d148c]
sub eax, 0x72d120cf
mov ecx, 0x5193af0d
xor edx, edx
div ecx
mov ecx, eax
mov edx, 0xffffffff
xor edx, 0xe83d3509
mov eax, ecx
xor eax, edx
and eax, ecx
cmp eax, 0xda50239b
jae 0x140170873
mov rcx, qword [rbp + 0x9a0]
mov rax, qword [rbp + 0x358]
mov rdx, qword [rbp + 0x6e0]
mov r8, qword [rbp + 0x520]
mov r9, qword [rbp + 0x518]
mov r10d, dword [0x1401d1490]
mov r11d, dword [0x1401d1494]
xor r11d, 0xffffffff
mov esi, 0xb96369dd
xor esi, 0xb96369dd
mov edi, 0xf80ff094
xor edi, 0xf80ff095
sub esi, edi
sub r11d, esi
sub r10d, r11d
xor r10d, 0xfdda1b5e
mov r11d, 0x996378e8
xor r11d, 0xb46b0f97
mov esi, 0x25bfdab3
xor esi, 0xda40254c
xor r11d, esi
add r10d, r11d
add r10d, 1
imul r10d, r10d, 0x1a305c73
mov dword [rbp + 0x310], r10d
mov qword [rcx], r9
mov qword [rdx], r8
mov rdx, qword [rax]
mov qword [rbp + 0xe20], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0xe28], rax
lea rdx, [rbp + 0xe20]
sub rsp, 0x20
call fcn.140171740
add rsp, 0x20
mov cl, al
mov eax, dword [rbp + 0x310]
mov byte [rbp + 0x317], cl
cmp eax, 0x7d282ac4
ja 0x140170873
mov al, byte [rbp + 0x317]
test al, 1
jne 0x14016b450
jmp 0x14016b32d
mov eax, dword [0x1401d1498]
mov ecx, dword [0x1401d149c]
mov edx, 0xa7be9ba1
xor edx, 0xc36b4395
xor ecx, edx
and eax, ecx
xor eax, 0xf9746266
or eax, 0xa778f750
mov edx, 0x2f363ae7
xor edx, 0x6e792196
mov ecx, eax
and ecx, edx
shl ecx, 1
xor eax, 0x414f1b71
add eax, ecx
cmp eax, 0xa0ef70ea
ja 0x14017087c
mov eax, dword [0x1401d14a0]
xor eax, 0x1225839b
sub eax, dword [0x1401d14a4]
mov ecx, 0xf2101fdd
xor ecx, 0x9c0eaf3f
xor edx, edx
div ecx
mov ecx, eax
mov eax, 0xb700875e
xor eax, 0x8eafd673
and ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
and eax, edx
mov edx, 0x66d1a15d
or edx, 0x66d1a15d
xor edx, 0xffffffff
or eax, edx
mov edx, 0x9dc5cedf
xor edx, 0x623a3120
xor eax, edx
mov edx, 0x48fd9d85
xor edx, 0xb702627a
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0x66d1a15d
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov dword [rbp + 0x2fc], eax
mov word [rbp + 0xdd6], 0x5e7
lea rcx, [rbp + 0xdd6]
sub rsp, 0x20
call fcn.140062840
mov rcx, qword [rbp + 0xaa0]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x2fc]
mov qword [rbp + 0x300], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x30f], cl
cmp eax, 0xb84fdf1d
je 0x14016b376
mov al, byte [rbp + 0x30f]
test al, 1
jne 0x14016bddb
jmp 0x14016c83a
sub rsp, 0x20
lea rcx, [rbp + 0xe48]
mov edx, 0x18
mov qword [rbp + 0x2e8], rdx
call fcn.140170a00
mov rcx, qword [rbp + 0x990]
mov rdx, qword [rbp + 0x2e8]
call fcn.140170a00
mov r8, qword [rbp + 0x998]
mov rdx, qword [rbp + 0x790]
mov rcx, qword [rbp + 0x650]
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov qword [r8], 0
mov qword [rdx], 0
mov rdx, qword [rbp + 0x1238]
mov qword [rbp + 0x2f0], rdx
mov cl, byte [rcx]
test cl, cl
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x2fb], al
or al, cl
test al, 1
jne 0x14016b5ac
mov rax, qword [rbp + 0x11e8]
mov qword [rbp + 0xe10], rax
mov rax, qword [rbp + 0x11f0]
mov qword [rbp + 0xe18], rax
lea rcx, [rbp + 0x11e8]
sub rsp, 0x20
call fcn.14000f979
add rsp, 0x20
lea rcx, [rbp + 0xdf8]
mov edx, 0x18
sub rsp, 0x20
call fcn.140170a00
mov rdx, qword [rbp + 0x2f0]
add rsp, 0x20
mov rax, qword [rbp + 0xe10]
mov qword [rbp + 0xde8], rax
mov rax, qword [rbp + 0xe18]
mov qword [rbp + 0xdf0], rax
lea rcx, [rbp + 0xdf8]
lea r8, [rbp + 0xde8]
sub rsp, 0x20
call fcn.1400cadb9
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
je 0x14016b57d
mov al, 1
mov byte [rbp + 0x2e7], al
jmp 0x14016bb6b
mov rax, qword [rbp + 0xdf8]
mov qword [rbp + 0xe48], rax
mov rax, qword [rbp + 0xe00]
mov qword [rbp + 0xe50], rax
mov rax, qword [rbp + 0xe08]
mov qword [rbp + 0xe58], rax
jmp 0x14016b736
mov cl, byte [rbp + 0x2fb]
mov al, 1
test cl, 1
mov byte [rbp + 0x2e7], al
jne 0x14016bb6b
mov rcx, qword [rbp + 0x9a8]
mov edx, 0x18
sub rsp, 0x20
call fcn.140170a00
mov rcx, qword [rbp + 0x9a8]
call fcn.140171a68
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14016b624
mov rax, qword [rbp + 0x9a8]
mov rcx, qword [rax]
mov qword [rbp + 0xe48], rcx
mov rcx, qword [rax + 8]
mov qword [rbp + 0xe50], rcx
mov rax, qword [rax + 0x10]
mov qword [rbp + 0xe58], rax
jmp 0x14016b736
mov r11d, dword [0x1401d14a8]
mov r10d, dword [0x1401d14ac]
mov ecx, r11d
xor ecx, 0xffffffff
mov edx, r10d
xor edx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x5c1fd469
mov eax, ecx
and eax, 0x5c1fd469
and r11d, r8d
mov r9d, edx
and r9d, 0x5c1fd469
and r10d, r8d
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, edx
xor ecx, 0xffffffff
mov edx, 0x2a0ac67
xor edx, 0x5ebf780e
or edx, r8d
and ecx, edx
or eax, ecx
mov ecx, eax
xor ecx, 0xf831748
mov edx, 0x3a01278e
xor edx, 0xc5fed871
xor ecx, edx
and ecx, 0xf831748
shl ecx, 1
sub ecx, 0xf831748
sub eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x94836640
add eax, ecx
add eax, 1
mov ecx, 0x194c5728
xor ecx, 0x385608de
xor edx, edx
div ecx
cmp eax, 0x9e303d7a
je 0x140170885
mov eax, dword [0x1401d14b0]
mov ecx, dword [0x1401d14b4]
xor ecx, 0x101203bb
or eax, ecx
mov edx, 0xffffffff
xor edx, 0x6f786dbf
mov ecx, eax
and ecx, edx
mov r8d, 0xdd6a48d9
xor r8d, 0xb2122566
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
xor eax, 0x218f9cb
imul eax, eax, 0x9ccdf158
mov ecx, 0xd2cafa3a
xor ecx, 0x206669dd
cmp eax, ecx
je 0x14016b6d2
mov al, 1
mov byte [rbp + 0x2e7], al
jmp 0x14016bb6b
mov eax, dword [0x1401d14b8]
add eax, dword [0x1401d14bc]
mov ecx, 0xc9301a5a
xor edx, edx
div ecx
and eax, eax
xor eax, 0xffffffff
mov ecx, 0x1aacc472
xor ecx, 0xb049e30d
mov edx, 0xd1db0e93
xor edx, 0x7b3e29ec
and ecx, edx
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xc6aa5edd
xor ecx, 0x3955a122
xor eax, ecx
mov ecx, 0xe1673435
xor ecx, 0x9d8bfd75
or eax, ecx
cmp eax, 0x8f128ef3
jbe 0x14017088e
mov rax, qword [rbp + 0x990]
mov ecx, dword [0x1401d14c0]
mov edx, dword [0x1401d14c4]
sub ecx, edx
xor ecx, 0xd25c5c26
imul rcx, rcx, 0x2d203c85
shr rcx, 0x3c
or ecx, 0xb23281de
mov dword [rbp + 0x2e0], ecx
mov ecx, 0x1fc35a8c
mov dword [rbp + 0x2dc], ecx
mov rcx, qword [rbp + 0xe58]
mov qword [rax + 0x10], rcx
movups xmm0, xmmword [rbp + 0xe48]
movups xmmword [rax], xmm0
sub rsp, 0x20
lea rcx, [rbp + 0xe48]
call fcn.14005da3b
mov r8, qword [rbp + 0x798]
mov rdx, qword [rbp + 0xaa0]
mov ecx, dword [rbp + 0x2dc]
mov eax, dword [rbp + 0x2e0]
add rsp, 0x20
mov r8b, byte [r8]
test r8b, r8b
sete r8b
mov dl, byte [rdx]
test dl, dl
setne dl
mov byte [rbp + 0x2e5], dl
or dl, r8b
mov byte [rbp + 0x2e6], dl
cmp eax, ecx
jbe 0x14016b792
mov al, byte [rbp + 0x2e6]
test al, 1
jne 0x14016b84d
jmp 0x14016b8de
mov cl, byte [rbp + 0x2e5]
mov al, 1
test cl, 1
mov byte [rbp + 0x2e7], al
jne 0x14016bb6b
jmp 0x14016b869
mov rcx, qword [rbp + 0x9b0]
sub rsp, 0x20
call fcn.140080b91
mov rdx, qword [rbp + 0x9b0]
mov rax, qword [rbp + 0x7a0]
mov rcx, qword [rbp + 0xaa0]
add rsp, 0x20
mov rdx, qword [rdx]
mov qword [rbp + 0x2c8], rdx
mov rax, qword [rax]
mov qword [rbp + 0x2d0], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x2e7], al
jne 0x14016bb6b
mov rax, qword [rbp + 0x790]
mov rcx, qword [rbp + 0x2d0]
mov rdx, qword [rbp + 0x998]
mov r8, qword [rbp + 0x2c8]
mov qword [rdx], r8
mov qword [rax], rcx
jmp 0x14016ba0b
mov eax, dword [0x1401d14c8]
xor edx, edx
div dword [0x1401d14cc]
mov ecx, eax
mov eax, 0x24fad0b2
xor eax, 0xe53f3d99
add ecx, eax
mov eax, 0xbcc26751
xor eax, 0xf1c295a0
sub ecx, eax
sub ecx, 0xc1c5ed2b
mov eax, 0x3ef99f76
xor eax, 0x9b25a9cc
add ecx, eax
mov eax, ecx
and eax, 0xac4c1fea
or ecx, 0xac4c1fea
add eax, ecx
cmp eax, 0x47a26073
ja 0x140170897
mov rcx, qword [rbp + 0x998]
mov eax, dword [0x1401d14d0]
xor edx, edx
div dword [0x1401d14d4]
mov edx, eax
mov rax, qword [rbp + 0x990]
imul edx, edx, 0x49a1b464
mov r9d, 0xffffffff
xor r9d, 0xc97f88ad
mov r8d, edx
and r8d, r9d
mov r10d, 0x8b82ae53
xor r10d, 0x42fd26fe
mov r9d, edx
xor r9d, r10d
add edx, r9d
sub edx, r8d
sub edx, 0xcd2b238
mov dword [rbp + 0x2c0], edx
mov edx, 0xa077ffb6
xor edx, 0x9045bc50
mov dword [rbp + 0x2bc], edx
mov rdx, qword [rax]
mov qword [rbp + 0xdd8], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0xde0], rax
lea rdx, [rbp + 0xdd8]
sub rsp, 0x20
call fcn.140018d5d
mov rdx, qword [rbp + 0xaa0]
mov ecx, dword [rbp + 0x2bc]
mov eax, dword [rbp + 0x2c0]
add rsp, 0x20
cmp byte [rdx], 0
sete dl
mov byte [rbp + 0x2c7], dl
cmp eax, ecx
jbe 0x14016b932
mov cl, byte [rbp + 0x2c7]
mov al, 1
test cl, 1
mov byte [rbp + 0x2e7], al
jne 0x14016ba0b
jmp 0x14016bb6b
mov rax, qword [rbp + 0x798]
cmp byte [rax], 0
jne 0x14016bb1f
mov rax, qword [rbp + 0x790]
mov rax, qword [rax]
mov qword [rbp + 0x2b0], rax
cmp rax, 0
je 0x14016ba8f
mov rax, qword [rbp + 0x2b0]
mov rax, qword [rax]
movabs rdx, 0x4000000000000000
mov rcx, rax
xor rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0x921d26837e1595b0
movabs r8, 0xd21d26837e1595b0
xor rdx, r8
or rax, rdx
and rax, rcx
cmp rax, 0
jne 0x14016ba8f
mov rcx, qword [rbp + 0x2b0]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
mov rcx, qword [rbp + 0x990]
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14016bdd1
lea rcx, [rbp + 0xe48]
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14016bdd1
mov rax, qword [rbp + 0x520]
cmp rax, 0
je 0x14016bdd6
mov rcx, qword [rbp + 0x520]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x14016bdd6
mov rcx, qword [rbp + 0x520]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
jmp 0x14016bdd6
mov rcx, qword [rbp + 0x870]
mov rax, qword [rbp + 0x998]
mov rdx, qword [rax]
mov qword [rbp + 0xe30], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0xe38], rax
lea rdx, [rbp + 0xe30]
mov r8d, 1
sub rsp, 0x20
call fcn.140032450
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp + 0x2e7], al
mov rax, qword [rbp + 0x790]
mov rcx, qword [rbp + 0xaa0]
mov dl, byte [rbp + 0x2e7]
mov byte [rbp + 0x2a7], dl
mov byte [rcx], 0
mov rax, qword [rax]
mov qword [rbp + 0x2a8], rax
cmp rax, 0
je 0x14016bcca
mov rcx, qword [rbp + 0x2a8]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x14016bcca
mov eax, dword [0x1401d14d8]
xor eax, dword [0x1401d14dc]
or eax, 0xae1e3291
and eax, 0x9ae55a60
mov ecx, 0xa4359b3a
xor ecx, 0x17a3b993
sub eax, ecx
cmp eax, 0xfee04f0a
je 0x1401708a0
mov rcx, qword [rbp + 0x2a8]
mov edx, dword [0x1401d14e0]
add edx, dword [0x1401d14e4]
mov eax, 0x95423dbb
xor eax, 0x27113077
imul edx, eax
mov r9d, 0x66900604
xor r9d, 0x2bde355e
mov eax, 0x88706199
xor eax, 0x778f9e66
xor r9d, eax
mov r8d, edx
and r8d, r9d
mov eax, edx
or eax, r9d
xor eax, 0xffffffff
imul eax, r8d
mov r8d, edx
and r8d, 0x4d4e335a
mov r9d, 0x5329dd38
xor r9d, 0x1e67ee62
or edx, r9d
imul edx, r8d
add edx, eax
mov r8d, 0x94586998
xor r8d, 0x3be9d4c6
mov eax, edx
or eax, r8d
xor eax, 0xffffffff
mov r8d, 0xe2a2708c
xor r8d, 0x1d5d8f73
xor edx, r8d
mov r8d, 0x7505237b
xor r8d, 0xdab49e25
mov r9d, 0x866f2afd
xor r9d, 0x7990d502
xor r8d, r9d
and edx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
mov dword [rbp + 0x2a0], eax
sub rsp, 0x20
call fcn.14000e572
mov eax, dword [rbp + 0x2a0]
add rsp, 0x20
cmp eax, 0xe489b4e1
jae 0x14016bbe8
jmp 0x14016bcca
mov rcx, qword [rbp + 0x990]
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14016bdd1
lea rcx, [rbp + 0xe48]
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14016bdd1
mov eax, dword [0x1401d14e8]
mov edx, dword [0x1401d14ec]
mov ecx, edx
and ecx, eax
xor ecx, 0xffffffff
add eax, edx
add eax, 1
add eax, ecx
mov ecx, 0xa75ac894
xor ecx, 0xec75fa4e
sub eax, ecx
sub eax, 0x89c0bdc7
mov ecx, eax
and ecx, 0x86fa383a
xor ecx, 0xffffffff
add eax, 0x86fa383a
add eax, 1
add eax, ecx
cmp eax, 0x509ddd9e
jb 0x1401708a9
mov r8b, byte [rbp + 0x2a7]
mov edx, dword [0x1401d14f0]
xor edx, 0xad28ea30
mov ecx, dword [0x1401d14f4]
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 ecx, 0xda81746f
xor ecx, 0x994ccaae
or eax, ecx
mov ecx, 0x1f5d037c
xor ecx, 0x7533ee75
xor edx, edx
div ecx
mov rdx, qword [rbp + 0xaa0]
xor eax, 0xfc368c13
mov ecx, 0x582a149e
xor ecx, 0x3209b35d
mov byte [rdx], r8b
cmp eax, ecx
je 0x14016bd5e
jmp 0x14016bdd1
jmp 0x14016f4e1
jmp 0x14016f653
mov rcx, qword [rbp + 0x9b8]
mov rax, qword [rbp + 0x300]
mov rdx, qword [rbp + 0x6e8]
mov r8, qword [rbp + 0x520]
mov r9, qword [rbp + 0x518]
mov qword [rcx], r9
mov qword [rdx], r8
mov rdx, qword [rax]
mov qword [rbp + 0xd70], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0xd78], rax
lea rdx, [rbp + 0xd70]
sub rsp, 0x20
call fcn.140171740
add rsp, 0x20
test al, 1
jne 0x14016be73
mov rcx, qword [rbp + 0x9d0]
mov word [rcx], 0x555
sub rsp, 0x20
call fcn.140062840
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xaa0]
mov qword [rbp + 0x298], rcx
mov al, byte [rax]
mov cl, 0x4e
xor cl, 0x4e
cmp al, cl
je 0x14016c96f
jmp 0x14016ceed
sub rsp, 0x20
lea rcx, [rbp + 0xdb8]
mov edx, 0x18
mov qword [rbp + 0x280], rdx
call fcn.140170a00
mov rdx, qword [rbp + 0x280]
lea rcx, [rbp + 0xda0]
call fcn.140170a00
mov rdx, qword [rbp + 0x778]
mov rcx, qword [rbp + 0x650]
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov qword [rbp + 0xd90], 0
mov qword [rdx], 0
mov rdx, qword [rbp + 0x1238]
mov qword [rbp + 0x288], rdx
mov cl, byte [rcx]
test cl, cl
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x297], al
or al, cl
test al, 1
jne 0x14016bfd2
mov rax, qword [rbp + 0x11e8]
mov qword [rbp + 0xd60], rax
mov rax, qword [rbp + 0x11f0]
mov qword [rbp + 0xd68], rax
lea rcx, [rbp + 0x11e8]
sub rsp, 0x20
call fcn.14000f979
add rsp, 0x20
lea rcx, [rbp + 0xd48]
mov edx, 0x18
sub rsp, 0x20
call fcn.140170a00
mov rdx, qword [rbp + 0x288]
add rsp, 0x20
mov rax, qword [rbp + 0xd60]
mov qword [rbp + 0xd38], rax
mov rax, qword [rbp + 0xd68]
mov qword [rbp + 0xd40], rax
lea rcx, [rbp + 0xd48]
lea r8, [rbp + 0xd38]
sub rsp, 0x20
call fcn.1400cadb9
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x5d
xor cl, 0x5d
cmp al, cl
je 0x14016bfa3
mov al, 1
mov byte [rbp + 0x27f], al
jmp 0x14016c77a
mov rax, qword [rbp + 0xd48]
mov qword [rbp + 0xdb8], rax
mov rax, qword [rbp + 0xd50]
mov qword [rbp + 0xdc0], rax
mov rax, qword [rbp + 0xd58]
mov qword [rbp + 0xdc8], rax
jmp 0x14016c05d
mov cl, byte [rbp + 0x297]
mov al, 1
test cl, 1
mov byte [rbp + 0x27f], al
jne 0x14016c77a
mov rcx, qword [rbp + 0x9c0]
mov edx, 0x18
sub rsp, 0x20
call fcn.140170a00
mov rcx, qword [rbp + 0x9c0]
call fcn.140171a68
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xea
xor cl, 0xea
cmp al, cl
jne 0x14016c050
mov rax, qword [rbp + 0x9c0]
mov rcx, qword [rax]
mov qword [rbp + 0xdb8], rcx
mov rcx, qword [rax + 8]
mov qword [rbp + 0xdc0], rcx
mov rax, qword [rax + 0x10]
mov qword [rbp + 0xdc8], rax
jmp 0x14016c05d
mov al, 1
mov byte [rbp + 0x27f], al
jmp 0x14016c77a
mov rax, qword [rbp + 0xdc8]
mov qword [rbp + 0xdb0], rax
movups xmm0, xmmword [rbp + 0xdb8]
movaps xmmword [rbp + 0xda0], xmm0
sub rsp, 0x20
lea rcx, [rbp + 0xdb8]
call fcn.14005da3b
mov rcx, qword [rbp + 0x780]
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov cl, byte [rcx]
test cl, cl
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x27e], al
or al, cl
test al, 1
jne 0x14016c0be
jmp 0x14016c149
mov cl, byte [rbp + 0x27e]
mov al, 1
test cl, 1
mov byte [rbp + 0x27f], al
jne 0x14016c77a
jmp 0x14016c0da
lea rcx, [rbp + 0xd28]
sub rsp, 0x20
call fcn.140080b91
mov rax, qword [rbp + 0x788]
mov rcx, qword [rbp + 0xaa0]
add rsp, 0x20
mov rdx, qword [rbp + 0xd28]
mov qword [rbp + 0x268], rdx
mov rax, qword [rax]
mov qword [rbp + 0x270], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x27f], al
jne 0x14016c77a
mov rax, qword [rbp + 0x778]
mov rcx, qword [rbp + 0x270]
mov rdx, qword [rbp + 0x268]
mov qword [rbp + 0xd90], rdx
mov qword [rax], rcx
jmp 0x14016c191
mov rdx, qword [rbp + 0x9c8]
mov rax, qword [rbp + 0xda0]
mov qword [rdx], rax
mov rax, qword [rbp + 0xda8]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0xd90]
sub rsp, 0x20
call fcn.140018d5d
mov rcx, qword [rbp + 0xaa0]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x27f], al
jne 0x14016c77a
mov eax, dword [0x1401d14f8]
xor eax, dword [0x1401d14fc]
or eax, 0xf1dedc71
mov ecx, eax
xor ecx, 0x89d20ac1
mov edx, 0x4a38d73d
xor edx, 0xc3eaddfc
mov r8d, 0xacb4a30b
xor r8d, 0x534b5cf4
xor edx, r8d
and eax, edx
shl eax, 1
sub eax, ecx
mov ecx, 0x532bcdf2
xor edx, edx
div ecx
cmp eax, 0xe96b4219
je 0x1401708b2
mov rcx, qword [rbp + 0x780]
mov edx, dword [0x1401d1500]
mov eax, dword [0x1401d1504]
add edx, 0x64d5dd02
sub edx, eax
mov eax, 0x213a7749
xor eax, 0x45efaa4b
sub edx, eax
mov r8d, edx
xor r8d, 0xffffffff
and r8d, 0xca5ad64f
mov r9d, 0xffffffff
xor r9d, 0xca5ad64f
mov eax, edx
and eax, r9d
imul eax, r8d
mov r9d, 0x3f5dc539
xor r9d, 0xf5071376
mov r8d, edx
and r8d, r9d
or edx, 0xca5ad64f
imul edx, r8d
add edx, eax
mov eax, edx
and eax, 0x3cd09999
or edx, 0x3cd09999
add eax, edx
mov edx, 0x5fd66b19
xor edx, 0xa02994e6
xor eax, edx
mov edx, 0x3acd5bf7
xor edx, 0xf54fa4bf
mov r8d, 0x22cd5eb3
xor r8d, 0xdd32a14c
xor edx, r8d
mov r8d, 0xcfb3c46e
xor r8d, 0x4fb8f10f
mov r9d, 0x1c0bcc17
xor r9d, 0xe3f433e8
xor r8d, r9d
or eax, edx
mov edx, 0xba9c3db3
xor edx, 0x3a9708d2
or edx, r8d
xor eax, 0xffffffff
and eax, edx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x267], cl
cmp eax, 0xd71b754c
jae 0x14016c1e0
mov al, byte [rbp + 0x267]
test al, 1
jne 0x14016c2dd
jmp 0x14016c67b
mov eax, dword [0x1401d1508]
mov ecx, 0xc04169e9
xor ecx, 0xb35e5d1d
xor eax, ecx
xor edx, edx
div dword [0x1401d150c]
sub eax, 0x59d5864e
mov ecx, 0x930f6da0
xor edx, edx
div ecx
mov r8d, 0x7c782230
xor r8d, 0x87346c9f
mov ecx, 0x72b2695f
xor ecx, 0x8d4d96a0
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xfb4c4eaf
or eax, 0xfb4c4eaf
imul eax, edx
add eax, ecx
cmp eax, 0x4138b0a
jbe 0x1401708bb
mov rcx, qword [rbp + 0x778]
mov eax, dword [0x1401d1510]
imul eax, dword [0x1401d1514]
mov r8d, 0x83e1b928
xor edx, edx
div r8d
sub eax, 0x7fbf5926
add eax, 0x198a3dc6
add eax, 0x7fbf5926
or eax, 0x667e39c
mov rcx, qword [rcx]
mov qword [rbp + 0x258], rcx
cmp rcx, 0
sete cl
mov byte [rbp + 0x266], cl
cmp eax, 0x702867f2
ja 0x1401708bb
mov al, byte [rbp + 0x266]
test al, 1
jne 0x14016c42e
jmp 0x14016c3b6
mov rax, qword [rbp + 0x258]
mov rax, qword [rax]
movabs rdx, 0x4000000000000000
mov rcx, rax
xor rcx, rdx
movabs rdx, 0xd7f980fef81d530c
movabs r8, 0x28067f0107e2acf3
xor rdx, r8
xor rcx, rdx
movabs rdx, 0x4000000000000000
or rax, rdx
and rax, rcx
movabs rcx, 0x8d69e2111c99e85b
movabs rdx, 0x8d69e2111c99e85b
xor rcx, rdx
cmp rax, rcx
jne 0x14016c42e
mov rcx, qword [rbp + 0x258]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
mov eax, dword [0x1401d1518]
xor eax, 0x30704ecb
mov ecx, dword [0x1401d151c]
xor ecx, 0x9bff0e74
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
and eax, eax
mov edx, 0xadbb92f3
xor edx, 0x52446d0c
xor eax, edx
mov edx, 0x5c1c8631
xor edx, 0xa3e379ce
xor eax, edx
mov edx, 0xffffffff
xor edx, 0x1aeb9eb9
or eax, edx
mov edx, 0xffffffff
xor edx, 0x1aeb9eb9
mov r8d, 0xb2aa56bd
xor r8d, 0xa841c804
mov r9d, 0x7cc1e0d4
xor r9d, 0x833e1f2b
xor r8d, r9d
or edx, r8d
xor ecx, 0xffffffff
xor edx, 0xffffffff
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, eax
xor ecx, 0xc93f1455
mov edx, 0xffffffff
xor edx, 0xc93f1455
and eax, edx
shl eax, 1
sub eax, ecx
and eax, 0x9655aab4
cmp eax, 0x22504462
ja 0x1401708c4
mov eax, dword [0x1401d1520]
mov ecx, dword [0x1401d1524]
xor ecx, 0x3e3c615a
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
and eax, 0xa8daeed0
xor ecx, 0xa8daeed0
or eax, ecx
mov edx, 0xb559fc6f
xor edx, 0x78744100
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
and ecx, 0xcd2dbd6f
shl ecx, 1
mov edx, 0x25070cf6
xor edx, 0xe82ab199
sub ecx, edx
sub eax, ecx
add eax, 0x7b78ceff
add eax, 0x99324e72
mov ecx, 0x1b478c6a
xor ecx, 0x603f4295
sub eax, ecx
mov dword [rbp + 0x250], eax
mov eax, 0x7b1c2b2e
xor eax, 0x34050c0
mov dword [rbp + 0x24c], eax
lea rcx, [rbp + 0xda0]
sub rsp, 0x20
call fcn.14005da50
mov rdx, qword [rbp + 0xaa0]
mov ecx, dword [rbp + 0x24c]
mov eax, dword [rbp + 0x250]
add rsp, 0x20
mov dl, byte [rdx]
mov r8b, 0xcb
xor r8b, 0xcb
cmp dl, r8b
sete dl
mov byte [rbp + 0x257], dl
cmp eax, ecx
je 0x1401708c4
mov al, byte [rbp + 0x257]
test al, 1
jne 0x14016c5b0
jmp 0x14016c83a
lea rcx, [rbp + 0xdb8]
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14016c83a
mov rax, qword [rbp + 0x520]
cmp rax, 0
je 0x14016c83f
mov rax, qword [rbp + 0x520]
mov rax, qword [rax]
or rax, rax
xor rax, 0xffffffffffffffff
mov rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
xor rcx, rdx
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
and rcx, rdx
xor rax, 0xffffffffffffffff
movabs rdx, 0x8e11531fbaf87635
movabs r8, 0x71eeace0450789ca
xor rdx, r8
xor rcx, rdx
and rax, rcx
movabs rcx, 0xbace6ae8482ce5db
movabs rdx, 0xbace6ae8482ce5db
xor rcx, rdx
cmp rax, rcx
jne 0x14016c83f
mov rcx, qword [rbp + 0x520]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
jmp 0x14016c83f
mov eax, dword [0x1401d1528]
xor eax, dword [0x1401d152c]
mov ecx, 0xeb5af541
xor edx, edx
div ecx
or eax, 0xbfbb2391
mov ecx, 0x5e70bb78
xor ecx, 0xa18f4487
xor eax, ecx
mov edx, 0xcc0d4401
xor edx, 0x2d4a9990
mov ecx, 0x7dc34b6b
xor ecx, 0x823cb494
xor edx, ecx
mov ecx, 0xffffffff
xor ecx, 0xabf3ec35
or eax, edx
or ecx, 0xabf3ec35
xor eax, 0xffffffff
and eax, ecx
cmp eax, 0x59361d99
jb 0x1401708cd
mov rcx, qword [rbp + 0x870]
mov eax, dword [0x1401d1530]
xor eax, 0x3fc7e9c3
xor eax, dword [0x1401d1534]
mov edx, 0x1a59a9da
xor edx, 0x99d7aef6
sub eax, edx
imul eax, eax, 0xb6336844
and eax, 0x91d0b8f5
mov dword [rbp + 0x244], eax
mov rax, qword [rbp + 0xd90]
mov qword [rbp + 0xd80], rax
mov rax, qword [rbp + 0xd98]
mov qword [rbp + 0xd88], rax
lea rdx, [rbp + 0xd80]
mov r8d, 1
sub rsp, 0x20
call fcn.140032450
mov rcx, qword [rbp + 0xaa0]
mov eax, dword [rbp + 0x244]
add rsp, 0x20
mov cl, byte [rcx]
mov byte [rbp + 0x24b], cl
cmp eax, 0xb2432cd3
je 0x1401708cd
mov al, byte [rbp + 0x24b]
mov byte [rbp + 0x27f], al
jmp 0x14016c77a
mov rax, qword [rbp + 0x778]
mov rcx, qword [rbp + 0xaa0]
mov dl, byte [rbp + 0x27f]
mov byte [rbp + 0x237], dl
mov byte [rcx], 0
mov rax, qword [rax]
mov qword [rbp + 0x238], rax
cmp rax, 0
je 0x14016c7dd
mov rcx, qword [rbp + 0x238]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x14016c7dd
mov rcx, qword [rbp + 0x238]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
lea rcx, [rbp + 0xda0]
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14016c83a
lea rcx, [rbp + 0xdb8]
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xc9
xor cl, 0xc9
cmp al, cl
jne 0x14016c83a
mov rax, qword [rbp + 0xaa0]
mov cl, byte [rbp + 0x237]
mov byte [rax], cl
jmp 0x14016f4e1
mov ecx, dword [0x1401d1538]
and ecx, dword [0x1401d153c]
mov eax, 0x64869ebe
xor eax, 0x96340dde
or ecx, eax
add ecx, 0x24f69ad
mov eax, ecx
and eax, eax
mov edx, 0xe100f47b
xor edx, 0x1eff0b84
xor eax, edx
and eax, 0xb986a456
xor eax, 0xffffffff
mov edx, 0xb986a456
and edx, 0xb986a456
mov r8d, 0xa98bf86f
xor r8d, 0x56740790
xor edx, r8d
and ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
cmp eax, 0xea7780de
jae 0x1401708d6
mov eax, dword [0x1401d1540]
xor edx, edx
div dword [0x1401d1544]
mov ecx, 0xe6b6abff
xor ecx, 0xf1973e7d
xor edx, edx
div ecx
mov r11d, eax
mov eax, 0xa0055415
xor eax, 0x5ffaabea
mov ecx, r11d
xor ecx, eax
mov r8d, 0xffffffff
xor r8d, 0x912a9dc2
mov edx, 0xee5b8c33
xor edx, 0x8d25ca14
mov eax, 0x1e10507d
xor eax, 0xe1efaf82
xor edx, eax
mov eax, ecx
and eax, 0x637e4627
and r11d, edx
mov r10d, 0xfd2d4338
xor r10d, 0x9e53051f
mov r9d, r8d
and r9d, r10d
mov r10d, edx
and r10d, 0x912a9dc2
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0x637e4627
and ecx, edx
or eax, ecx
mov edx, 0xd6efc66d
xor edx, 0x4aaba1c5
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
and ecx, 0x9c4467a8
shl ecx, 1
sub ecx, 0x9c4467a8
sub eax, ecx
cmp eax, 0x9a152e94
jae 0x1401708d6
jmp 0x14016f653
mov rax, qword [rbp + 0x298]
mov rcx, qword [rbp + 0x6f0]
mov rdx, qword [rbp + 0x520]
mov r8, qword [rbp + 0x518]
mov qword [rbp + 0xd00], r8
mov qword [rcx], rdx
mov rcx, qword [rax]
mov qword [rbp + 0xcf0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xcf8], rax
lea rcx, [rbp + 0xd00]
lea rdx, [rbp + 0xcf0]
sub rsp, 0x20
call fcn.140171740
add rsp, 0x20
test al, 1
jne 0x14016ca0f
mov word [rbp + 0xcc6], 0x712
lea rcx, [rbp + 0xcc6]
sub rsp, 0x20
call fcn.140062840
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xaa0]
mov qword [rbp + 0x228], rcx
mov al, byte [rax]
mov cl, 0x44
xor cl, 0x44
cmp al, cl
je 0x14016cef2
jmp 0x14016d37a
mov rcx, qword [rbp + 0x9d8]
sub rsp, 0x20
mov edx, 8
mov qword [rbp + 0x210], rdx
call fcn.140170a00
mov rcx, qword [rbp + 0x9e0]
mov rdx, qword [rbp + 0x210]
call fcn.140170a00
mov rdx, qword [rbp + 0x210]
lea rcx, [rbp + 0xce8]
call fcn.140170a00
mov rcx, qword [rbp + 0x650]
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov rdx, qword [rbp + 0x1238]
mov qword [rbp + 0x218], rdx
mov cl, byte [rcx]
test cl, cl
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x227], al
or al, cl
test al, 1
jne 0x14016cc6c
mov rax, qword [rbp + 0x11e8]
mov qword [rbp + 0xcd8], rax
mov rax, qword [rbp + 0x11f0]
mov qword [rbp + 0xce0], rax
lea rcx, [rbp + 0x11e8]
sub rsp, 0x20
call fcn.14000f979
mov rcx, qword [rbp + 0x9e8]
add rsp, 0x20
mov edx, 8
sub rsp, 0x20
call fcn.140170a00
mov rcx, qword [rbp + 0x218]
mov rdx, qword [rbp + 0x9f0]
add rsp, 0x20
mov rax, qword [rbp + 0xcd8]
mov qword [rdx], rax
mov rax, qword [rbp + 0xce0]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.1400ca110
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xaa0]
mov qword [rbp + 0x208], rcx
cmp byte [rax], 0
je 0x14016cc4f
mov eax, dword [0x1401d1548]
mov r8d, dword [0x1401d154c]
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, 0x7ce55a26
xor edx, edx
div ecx
and eax, eax
mov ecx, 0xc8c7dc7a
xor ecx, 0x37382385
xor eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xda9a76bb
mov edx, 0xe70ae053
xor edx, 0x3d9096e8
mov r8d, 0xa4936fb6
xor r8d, 0x5b6c9049
xor edx, r8d
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
sub eax, 0xbb427064
mov ecx, 0x23b25f0
xor ecx, 0x57575e6b
cmp eax, ecx
je 0x1401708df
mov eax, dword [0x1401d1550]
mov ecx, dword [0x1401d1554]
mov edx, 0x89f381c0
xor edx, 0x8a46a733
xor ecx, edx
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xf85a3e52
xor ecx, 0xca3fd81b
mov edx, 0xe029b7d1
xor edx, 0x1fd6482e
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0x3265e649
or ecx, edx
and eax, ecx
mov ecx, 0x4b63084f
xor ecx, 0xb49cf7b0
xor eax, ecx
mov edx, 0xc84a1a75
xor edx, 0xd348772e
mov ecx, eax
xor ecx, edx
mov edx, 0x6f30594c
xor edx, 0x90cfa6b3
xor ecx, edx
and ecx, 0x1b026d5b
shl ecx, 1
sub ecx, 0x1b026d5b
sub eax, ecx
or eax, 0xf84ba3ce
cmp eax, 0xf9d0cda9
ja 0x14016cbb0
jmp 0x14016ccb1
mov rax, qword [rbp + 0x208]
mov rcx, qword [rbp + 0x9e0]
mov qword [rcx], rax
mov qword [rbp + 0x200], rax
jmp 0x14016ccb6
mov al, byte [rbp + 0x227]
test al, 1
jne 0x14016ccb1
mov rcx, qword [rbp + 0x9f8]
mov edx, 8
sub rsp, 0x20
call fcn.140170a00
call fcn.140171aa0
mov rcx, qword [rbp + 0xaa0]
add rsp, 0x20
mov cl, byte [rcx]
cmp cl, 0
mov qword [rbp + 0x200], rax
je 0x14016ccb6
jmp 0x14016ceed
mov rax, qword [rbp + 0x200]
mov qword [rbp + 0x1f8], rax
mov eax, dword [0x1401d1558]
xor edx, edx
div dword [0x1401d155c]
or eax, 0xf66a49bd
mov ecx, 0x5bb2ab00
xor ecx, 0x33e4405f
and eax, ecx
mov ecx, 0xe0711161
xor ecx, 0xf6c00044
xor eax, ecx
cmp eax, 0x681045f5
jb 0x1401708e8
mov rcx, qword [rbp + 0x1f8]
mov eax, dword [0x1401d1560]
mov edx, dword [0x1401d1564]
xor edx, 0x689e929
sub eax, edx
mov edx, 0x47818a4d
xor edx, 0xecdc06e2
sub eax, edx
sub eax, 0xfcd0bb6f
or eax, 0x400ea3dd
movabs rdx, 0x100000000
and rcx, rdx
cmp rcx, 0
sete cl
mov byte [rbp + 0x1f7], cl
cmp eax, 0x9680dfb
jb 0x1401708e8
mov al, byte [rbp + 0x1f7]
test al, 1
jne 0x14016cd66
jmp 0x14016cde7
sub rsp, 0x20
call fcn.1400809a3
add rsp, 0x20
mov rax, qword [rbp + 0xaa0]
mov al, byte [rax]
mov cl, 0xbe
xor cl, 0xbe
cmp al, cl
jne 0x14016ceed
mov rax, qword [rbp + 0x520]
cmp rax, 0
je 0x14016cee8
mov rcx, qword [rbp + 0x520]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
movabs rcx, 0xa6e3e2bd057ec42c
movabs rdx, 0xa6e3e2bd057ec42c
xor rcx, rdx
cmp rax, rcx
jne 0x14016cee8
mov rcx, qword [rbp + 0x520]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
jmp 0x14016cee8
mov rdx, qword [rbp + 0x1f8]
shl rdx, 0x20
sar rdx, 0x20
lea rcx, [rbp + 0xcc8]
sub rsp, 0x20
call fcn.14000477c
mov rcx, qword [rbp + 0x768]
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov rdx, qword [rbp + 0xcc8]
mov qword [rbp + 0x1e0], rdx
mov rcx, qword [rcx]
mov qword [rbp + 0x1e8], rcx
cmp byte [rax], 0
jne 0x14016ceed
mov rdx, qword [rbp + 0x1e8]
mov rcx, qword [rbp + 0x870]
mov rax, qword [rbp + 0x770]
mov r8, qword [rbp + 0x1e0]
mov qword [rbp + 0xd10], r8
mov qword [rax], rdx
lea rdx, [rbp + 0xd10]
mov r8d, 1
sub rsp, 0x20
call fcn.140032450
mov rax, qword [rbp + 0x1e8]
add rsp, 0x20
cmp rax, 0
je 0x14016ceed
mov rax, qword [rbp + 0x1e8]
mov rax, qword [rax]
movabs rdx, 0xa9ff64acdfc980b9
movabs rcx, 0xe9ff64acdfc980b9
xor rdx, rcx
mov rcx, rax
xor rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
or rax, rdx
and rax, rcx
cmp rax, 0
jne 0x14016ceed
mov rcx, qword [rbp + 0x1e8]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
jmp 0x14016ceed
jmp 0x14016f653
jmp 0x14016f4e1
mov rcx, qword [rbp + 0xa00]
mov rax, qword [rbp + 0x228]
mov rdx, qword [rbp + 0x6f8]
mov r8, qword [rbp + 0x520]
mov r9, qword [rbp + 0x518]
mov qword [rcx], r9
mov qword [rdx], r8
mov rdx, qword [rax]
mov qword [rbp + 0xc90], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0xc98], rax
lea rdx, [rbp + 0xc90]
sub rsp, 0x20
call fcn.140171740
add rsp, 0x20
test al, 1
jne 0x14016cf88
mov word [rbp + 0xc46], 0x796
lea rcx, [rbp + 0xc46]
sub rsp, 0x20
call fcn.140062840
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xaa0]
mov qword [rbp + 0x1d8], rcx
cmp byte [rax], 0
je 0x14016d37f
jmp 0x14016df95
sub rsp, 0x20
lea rcx, [rbp + 0xcb8]
mov edx, 8
mov qword [rbp + 0x1c0], rdx
call fcn.140170a00
mov rcx, qword [rbp + 0xa08]
mov rdx, qword [rbp + 0x1c0]
call fcn.140170a00
mov rdx, qword [rbp + 0x1c0]
lea rcx, [rbp + 0xc88]
call fcn.140170a00
mov rcx, qword [rbp + 0x650]
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov rdx, qword [rbp + 0x1238]
mov qword [rbp + 0x1c8], rdx
mov cl, byte [rcx]
test cl, cl
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x1d7], al
or al, cl
test al, 1
jne 0x14016d0d6
mov rax, qword [rbp + 0x11e8]
mov qword [rbp + 0xc78], rax
mov rax, qword [rbp + 0x11f0]
mov qword [rbp + 0xc80], rax
lea rcx, [rbp + 0x11e8]
sub rsp, 0x20
call fcn.14000f979
add rsp, 0x20
movabs rdx, 0x694c6ef7e292f452
movabs rax, 0x694c6ef7e292f45a
xor rdx, rax
lea rcx, [rbp + 0xc70]
sub rsp, 0x20
call fcn.140170a00
mov rcx, qword [rbp + 0x1c8]
add rsp, 0x20
mov rax, qword [rbp + 0xc78]
mov qword [rbp + 0xc60], rax
mov rax, qword [rbp + 0xc80]
mov qword [rbp + 0xc68], rax
lea rdx, [rbp + 0xc60]
sub rsp, 0x20
call fcn.1400ca110
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xaa0]
mov qword [rbp + 0x1b8], rcx
cmp byte [rax], 0
je 0x14016d0b9
jmp 0x14016d11b
mov rax, qword [rbp + 0x1b8]
mov rcx, qword [rbp + 0xa08]
mov qword [rcx], rax
mov qword [rbp + 0x1b0], rax
jmp 0x14016d120
mov al, byte [rbp + 0x1d7]
test al, 1
jne 0x14016d11b
lea rcx, [rbp + 0xc58]
mov edx, 8
sub rsp, 0x20
call fcn.140170a00
call fcn.140171aa0
mov rcx, qword [rbp + 0xaa0]
add rsp, 0x20
mov cl, byte [rcx]
cmp cl, 0
mov qword [rbp + 0x1b0], rax
je 0x14016d120
jmp 0x14016d37a
mov rax, qword [rbp + 0x1b0]
mov qword [rbp + 0x1a8], rax
movabs rcx, 0x100000000
and rax, rcx
movabs rcx, 0x156684d0a9778326
movabs rdx, 0x156684d0a9778326
xor rcx, rdx
cmp rax, rcx
jne 0x14016d285
sub rsp, 0x20
call fcn.1400809a3
add rsp, 0x20
mov rax, qword [rbp + 0xaa0]
cmp byte [rax], 0
jne 0x14016d37a
mov rax, qword [rbp + 0x520]
cmp rax, 0
je 0x14016d375
mov rax, qword [rbp + 0x520]
mov rax, qword [rax]
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
movabs rdx, 0x14f4a0240e7ab8f0
movabs r8, 0x54f4a0240e7ab8f0
xor rdx, r8
or rax, rdx
add rax, rcx
cmp rax, 0
jne 0x14016d375
mov eax, dword [0x1401d1568]
xor eax, 0xfbd417d1
mov edx, dword [0x1401d156c]
mov ecx, eax
and ecx, edx
shl ecx, 1
add eax, edx
sub eax, ecx
and eax, 0x6584de21
xor eax, 0x5ceb8e4e
imul eax, eax, 0x1da49f3c
cmp eax, 0x2e7ff2d4
jb 0x1401708f1
mov rcx, qword [rbp + 0x520]
mov eax, dword [0x1401d1570]
mov edx, dword [0x1401d1574]
xor edx, 0xf363702a
add eax, edx
sub eax, 0x93a70d76
sub eax, 0x552b4585
mov edx, 0xb9115f1c
xor edx, 0x2ab6526a
add eax, edx
mov edx, 0xfc7525e0
xor edx, 0x30ace7e4
imul eax, edx
mov edx, 0xa5c147d0
xor edx, 0xe682a3ca
sub eax, edx
mov dword [rbp + 0x1a4], eax
mov eax, 0xefb54423
xor eax, 0x57d0a68b
mov dword [rbp + 0x1a0], eax
sub rsp, 0x20
call fcn.14000e572
mov ecx, dword [rbp + 0x1a0]
mov eax, dword [rbp + 0x1a4]
add rsp, 0x20
cmp eax, ecx
jae 0x1401708f1
jmp 0x14016d375
mov rdx, qword [rbp + 0x1a8]
shl rdx, 0x20
sar rdx, 0x20
lea rcx, [rbp + 0xc48]
sub rsp, 0x20
call fcn.14000477c
mov rcx, qword [rbp + 0x758]
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov rdx, qword [rbp + 0xc48]
mov qword [rbp + 0x190], rdx
mov rcx, qword [rcx]
mov qword [rbp + 0x198], rcx
mov al, byte [rax]
mov cl, 0xa1
xor cl, 0xa1
cmp al, cl
jne 0x14016d37a
mov rdx, qword [rbp + 0x198]
mov rcx, qword [rbp + 0x870]
mov rax, qword [rbp + 0x760]
mov r8, qword [rbp + 0x190]
mov qword [rbp + 0xca0], r8
mov qword [rax], rdx
lea rdx, [rbp + 0xca0]
mov r8d, 1
sub rsp, 0x20
call fcn.140032450
mov rax, qword [rbp + 0x198]
add rsp, 0x20
cmp rax, 0
je 0x14016d37a
mov rax, qword [rbp + 0x198]
mov rax, qword [rax]
movabs rcx, 0xed4a4dc9b6ceb419
movabs rdx, 0xad4a4dc9b6ceb419
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x14016d37a
mov rcx, qword [rbp + 0x198]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
jmp 0x14016d37a
jmp 0x14016f653
jmp 0x14016f4e1
mov rcx, qword [rbp + 0xa20]
mov rax, qword [rbp + 0x1d8]
mov rdx, qword [rbp + 0x700]
mov r8, qword [rbp + 0x520]
mov r9, qword [rbp + 0x518]
mov qword [rcx], r9
mov qword [rdx], r8
mov rdx, qword [rax]
mov qword [rbp + 0xc00], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0xc08], rax
lea rdx, [rbp + 0xc00]
sub rsp, 0x20
call fcn.140171740
add rsp, 0x20
test al, 1
jne 0x14016d4ef
mov eax, dword [0x1401d1578]
xor eax, 0x72add5a4
mov ecx, dword [0x1401d157c]
xor ecx, 0xb80d83b7
sub eax, ecx
or eax, 0xa74b61e5
mov ecx, 0xffffffff
xor ecx, 0x559120f6
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
mov ecx, 0x4b349bcd
xor ecx, 0x9eae4a39
or eax, ecx
cmp eax, 0xd5b19f3c
jae 0x1401708fa
mov rcx, qword [rbp + 0xa38]
mov edx, dword [0x1401d1580]
mov r9d, dword [0x1401d1584]
mov eax, edx
xor eax, 0xffffffff
mov r8d, r9d
and r8d, eax
mov eax, 0xde8346e9
xor eax, 0x217cb916
mov r10d, r9d
xor r10d, eax
mov eax, edx
and eax, r10d
imul eax, r8d
mov r8d, edx
and r8d, r9d
or edx, r9d
imul edx, r8d
add edx, eax
mov eax, edx
and eax, 0x22120561
xor edx, 0x22120561
or eax, edx
mov edx, eax
add edx, 1
xor eax, 0xffffffff
or eax, 0x634b5332
add eax, edx
mov edx, 0xbd634db1
xor edx, 0x35667dc2
imul eax, edx
mov dword [rbp + 0x17c], eax
mov word [rcx], 0xaab
sub rsp, 0x20
call fcn.140062840
mov rcx, qword [rbp + 0xaa0]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x17c]
mov qword [rbp + 0x180], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x18f], cl
cmp eax, 0x414fb6b6
jae 0x1401708fa
mov al, byte [rbp + 0x18f]
test al, 1
jne 0x14016df9f
jmp 0x14016eba5
mov ecx, dword [0x1401d1588]
mov edx, dword [0x1401d158c]
mov eax, ecx
or eax, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
xor edx, 0xffffffff
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0x57a98d8
mov edx, 0x79a70cdd
xor edx, 0x8658f322
mov ecx, eax
xor ecx, edx
mov edx, 0x5e530f21
xor edx, 0xaafbaf34
and edx, ecx
mov r8d, 0xffffffff
xor r8d, 0xf4a8a015
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0xb6b06098
xor r8d, 0x4218c08d
mov edx, eax
and edx, r8d
mov r8d, 0xeb731514
xor r8d, 0x1fdbb501
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0x2c03e260
xor edx, edx
div ecx
mov ecx, 0x988fb18d
xor ecx, 0x68a7f133
cmp eax, ecx
ja 0x140170903
mov eax, dword [0x1401d1590]
mov ecx, dword [0x1401d1594]
or eax, ecx
mov ecx, eax
imul rcx, rcx, 0x36b83129
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1c
mov ecx, eax
not ecx
mov edx, eax
and edx, 3
and ecx, 0x8debaec
imul ecx, edx
mov edx, eax
and edx, 0xfffffffc
or eax, 0x8debaec
imul eax, edx
add eax, ecx
or eax, 0xdab8c68f
mov dword [rbp + 0x16c], eax
sub rsp, 0x20
lea rcx, [rbp + 0xc28]
mov edx, 0x18
mov qword [rbp + 0x160], rdx
call fcn.140170a00
mov rcx, qword [rbp + 0xa10]
mov rdx, qword [rbp + 0x160]
call fcn.140170a00
mov r9, qword [rbp + 0xa18]
mov r8, qword [rbp + 0x740]
mov rdx, qword [rbp + 0x650]
mov rcx, qword [rbp + 0xaa0]
mov eax, dword [rbp + 0x16c]
add rsp, 0x20
mov qword [r9], 0
mov qword [r8], 0
mov r8, qword [rbp + 0x1238]
mov qword [rbp + 0x170], r8
mov dl, byte [rdx]
test dl, dl
sete dl
mov cl, byte [rcx]
test cl, cl
setne cl
mov byte [rbp + 0x17a], cl
or cl, dl
mov byte [rbp + 0x17b], cl
cmp eax, 0x7930b98d
jb 0x140170903
mov al, byte [rbp + 0x17b]
test al, 1
jne 0x14016d76b
jmp 0x14016d686
mov rax, qword [rbp + 0xa28]
mov rcx, qword [rbp + 0x11e8]
mov qword [rax], rcx
mov rcx, qword [rbp + 0x11f0]
mov qword [rax + 8], rcx
lea rcx, [rbp + 0x11e8]
sub rsp, 0x20
call fcn.14000f979
add rsp, 0x20
movabs rdx, 0x3a7a8f13b0a9696c
movabs rax, 0x3a7a8f13b0a96974
xor rdx, rax
lea rcx, [rbp + 0xbe8]
sub rsp, 0x20
call fcn.140170a00
mov rax, qword [rbp + 0xa28]
mov rdx, qword [rbp + 0x170]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0xbd8], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xbe0], rax
lea rcx, [rbp + 0xbe8]
lea r8, [rbp + 0xbd8]
sub rsp, 0x20
call fcn.1400cadb9
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
je 0x14016d73c
mov al, 1
mov byte [rbp + 0x15f], al
jmp 0x14016ddbf
mov rax, qword [rbp + 0xbe8]
mov qword [rbp + 0xc28], rax
mov rax, qword [rbp + 0xbf0]
mov qword [rbp + 0xc30], rax
mov rax, qword [rbp + 0xbf8]
mov qword [rbp + 0xc38], rax
jmp 0x14016d8a3
mov cl, byte [rbp + 0x17a]
mov al, 1
test cl, 1
mov byte [rbp + 0x15f], al
jne 0x14016ddbf
mov eax, dword [0x1401d1598]
xor edx, edx
div dword [0x1401d159c]
add eax, 0xf12fe7a2
mov ecx, 0x3ab69b4c
xor ecx, 0x18034b75
xor edx, edx
div ecx
or eax, 0x73e7af84
mov ecx, 0xf8c6d381
xor ecx, 0xd38f6bea
cmp eax, ecx
jbe 0x14017090c
mov eax, dword [0x1401d15a0]
mov edx, dword [0x1401d15a4]
xor edx, 0x55477212
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov ecx, 0x83d7b430
xor ecx, 0x747ad93f
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
and eax, 0xbf974646
or ecx, 0xbf974646
add eax, ecx
mov ecx, 0x56fc97eb
xor edx, edx
div ecx
mov dword [rbp + 0x158], eax
lea rcx, [rbp + 0xbc0]
mov edx, 0x18
sub rsp, 0x20
call fcn.140170a00
add rsp, 0x20
lea rcx, [rbp + 0xbc0]
sub rsp, 0x20
call fcn.140171a68
mov rcx, qword [rbp + 0xaa0]
mov eax, dword [rbp + 0x158]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x15e], cl
cmp eax, 0x23addebd
ja 0x14017090c
mov al, byte [rbp + 0x15e]
test al, 1
jne 0x14016d867
jmp 0x14016d896
mov rax, qword [rbp + 0xbc0]
mov qword [rbp + 0xc28], rax
mov rax, qword [rbp + 0xbc8]
mov qword [rbp + 0xc30], rax
mov rax, qword [rbp + 0xbd0]
mov qword [rbp + 0xc38], rax
jmp 0x14016d8a3
mov al, 1
mov byte [rbp + 0x15f], al
jmp 0x14016ddbf
mov rax, qword [rbp + 0xa10]
mov rcx, qword [rbp + 0xc38]
mov qword [rax + 0x10], rcx
movups xmm0, xmmword [rbp + 0xc28]
movups xmmword [rax], xmm0
sub rsp, 0x20
lea rcx, [rbp + 0xc28]
call fcn.14005da3b
mov rcx, qword [rbp + 0x748]
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov cl, byte [rcx]
test cl, cl
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x157], al
or al, cl
test al, 1
jne 0x14016d904
jmp 0x14016da40
mov eax, dword [0x1401d15a8]
xor eax, 0x52c35c6f
imul eax, dword [0x1401d15ac]
mov ecx, 0x9db93764
xor ecx, 0x70175e02
and eax, ecx
mov ecx, 0x88d2349f
xor ecx, 0x890c0557
xor eax, ecx
mov ecx, eax
xor ecx, 0x1ac7d33d
xor ecx, 0xffffffff
and ecx, 0x1ac7d33d
shl ecx, 1
sub ecx, 0x1ac7d33d
sub eax, ecx
cmp eax, 0xdec86684
ja 0x140170915
mov eax, dword [0x1401d15b0]
mov r8d, dword [0x1401d15b4]
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, 0x68fd5c49
xor ecx, 0x9f6ac4e3
add eax, ecx
mov ecx, 0x69bb4637
xor edx, edx
div ecx
mov ecx, 0x11d9863b
xor edx, edx
div ecx
cmp eax, 0x5097a531
jae 0x140170915
mov cl, byte [rbp + 0x157]
mov al, 1
test cl, 1
mov byte [rbp + 0x15f], al
jne 0x14016ddbf
jmp 0x14016d9ce
lea rcx, [rbp + 0xbb0]
sub rsp, 0x20
call fcn.140080b91
mov rax, qword [rbp + 0x750]
mov rcx, qword [rbp + 0xaa0]
add rsp, 0x20
mov rdx, qword [rbp + 0xbb0]
mov qword [rbp + 0x140], rdx
mov rax, qword [rax]
mov qword [rbp + 0x148], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x15f], al
jne 0x14016ddbf
mov rax, qword [rbp + 0x740]
mov rcx, qword [rbp + 0x148]
mov rdx, qword [rbp + 0xa18]
mov r8, qword [rbp + 0x140]
mov qword [rdx], r8
mov qword [rax], rcx
jmp 0x14016da88
mov rdx, qword [rbp + 0xa30]
mov rcx, qword [rbp + 0xa18]
mov rax, qword [rbp + 0xa10]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140018d5d
mov rcx, qword [rbp + 0xaa0]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x15f], al
jne 0x14016ddbf
mov rax, qword [rbp + 0x748]
cmp byte [rax], 0
jne 0x14016dd73
mov rax, qword [rbp + 0x740]
mov rax, qword [rax]
mov qword [rbp + 0x138], rax
cmp rax, 0
je 0x14016dae5
mov rcx, qword [rbp + 0x138]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x14016dae5
mov rcx, qword [rbp + 0x138]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
mov rcx, qword [rbp + 0xa10]
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14016df95
mov eax, dword [0x1401d15b8]
xor eax, 0x1026236c
xor eax, dword [0x1401d15bc]
mov r8d, 0xdc4cbbac
xor r8d, 0x4c226a3c
mov ecx, 0xcb295363
xor ecx, 0x34d6ac9c
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0xec9c1a3c
xor r8d, 0x1363e5c3
xor ecx, r8d
imul ecx, edx
mov r8d, 0x469cc27a
xor r8d, 0xd6f213ea
mov edx, eax
and edx, r8d
mov r8d, 0x978e8147
xor r8d, 0x7e050d7
or eax, r8d
imul eax, edx
add eax, ecx
add eax, 0x5e57cabe
sub eax, 0x9b50fc85
sub eax, 0x5e57cabe
add eax, 0x901826a2
add eax, 0x294fd8b1
mov ecx, 0x526947fd
xor ecx, 0xc271615f
sub eax, ecx
cmp eax, 0xb1a7dd40
ja 0x14017091e
mov eax, dword [0x1401d15c0]
mov r8d, dword [0x1401d15c4]
mov ecx, 0xdb549415
xor ecx, 0x24ab6bea
mov edx, r8d
xor edx, ecx
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
and eax, 0x8c0f170
mov ecx, 0x1d57a9cf
xor ecx, 0x6b810d30
xor edx, edx
div ecx
mov ecx, 0xf7f40ff2
xor ecx, 0x5773a5ae
xor edx, edx
div ecx
mov dword [rbp + 0x130], eax
lea rcx, [rbp + 0xc28]
sub rsp, 0x20
call fcn.14005da50
mov rcx, qword [rbp + 0xaa0]
mov eax, dword [rbp + 0x130]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x137], cl
cmp eax, 0x5a0548fd
ja 0x14017091e
mov al, byte [rbp + 0x137]
test al, 1
jne 0x14016dc48
jmp 0x14016df95
mov rax, qword [rbp + 0x520]
cmp rax, 0
je 0x14016df9a
mov ecx, dword [0x1401d15c8]
mov edx, dword [0x1401d15cc]
xor edx, 0xd02bd73d
mov r8d, ecx
xor r8d, 0xffffffff
mov eax, edx
and eax, r8d
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0xeef85a2d
add eax, ecx
add eax, 0x9b081899
mov ecx, 0xd6dbec4a
xor edx, edx
div ecx
cmp eax, 0x66ebae17
ja 0x140170927
mov eax, dword [0x1401d15d0]
xor eax, 0x5fb68cad
xor edx, edx
div dword [0x1401d15d4]
mov rdx, qword [rbp + 0x520]
mov ecx, 0x8cda0518
xor ecx, 0x488956d1
sub eax, ecx
mov ecx, 0xa9777ec5
xor ecx, 0x4cf4a478
add eax, ecx
mov ecx, 0xbe1be893
xor ecx, 0x80177c63
sub eax, ecx
sub eax, 0x323b61ed
add eax, 0x3e0c94f0
mov ecx, 0x22b0caa2
xor ecx, 0x2351e6c0
mov r8, qword [rdx]
mov r9, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
xor r9, rdx
mov rdx, r8
xor rdx, r9
and rdx, r8
movabs r8, 0xca478cc3c81c69cc
movabs r9, 0xca478cc3c81c69cc
xor r8, r9
cmp rdx, r8
sete dl
mov byte [rbp + 0x12f], dl
cmp eax, ecx
jbe 0x14016dca6
mov al, byte [rbp + 0x12f]
test al, 1
jne 0x14016dd5a
jmp 0x14016df9a
mov rcx, qword [rbp + 0x520]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
jmp 0x14016df9a
mov rcx, qword [rbp + 0x870]
mov rax, qword [rbp + 0xa18]
mov rdx, qword [rax]
mov qword [rbp + 0xc10], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0xc18], rax
lea rdx, [rbp + 0xc10]
mov r8d, 1
sub rsp, 0x20
call fcn.140032450
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp + 0x15f], al
mov rax, qword [rbp + 0x740]
mov rcx, qword [rbp + 0xaa0]
mov dl, byte [rbp + 0x15f]
mov byte [rbp + 0x11f], dl
mov byte [rcx], 0
mov rax, qword [rax]
mov qword [rbp + 0x120], rax
cmp rax, 0
je 0x14016de22
mov rcx, qword [rbp + 0x120]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x14016de22
mov rcx, qword [rbp + 0x120]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
mov rcx, qword [rbp + 0xa10]
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14016df95
lea rcx, [rbp + 0xc28]
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x36
xor cl, 0x36
cmp al, cl
jne 0x14016df95
mov eax, dword [0x1401d15d8]
xor edx, edx
div dword [0x1401d15dc]
mov edx, 0xffffffff
xor edx, 0x8d328cc5
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x8d328cc5
add eax, edx
sub eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x183ff536
mov r8d, 0xffffffff
xor r8d, 0x183ff536
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0xddfb556b
xor r8d, 0xc5c4a05d
mov edx, eax
and edx, r8d
mov r8d, 0xcb86d5c9
xor r8d, 0xd3b920ff
or eax, r8d
imul eax, edx
add eax, ecx
and eax, 0xb6f396b0
cmp eax, 0x65c5aa6
jae 0x140170930
mov rcx, qword [rbp + 0xaa0]
mov eax, dword [0x1401d15e0]
xor eax, dword [0x1401d15e4]
mov r8d, 0x510de637
xor edx, edx
div r8d
mov dl, byte [rbp + 0x11f]
mov edi, eax
mov eax, edi
and eax, 0xfd1c6806
shl eax, 1
add edi, 0xfd1c6806
sub edi, eax
mov r8d, edi
xor r8d, 0xffffffff
mov r10d, 0xffffffff
xor r10d, 0xd84dec51
mov r9d, 0xffffffff
xor r9d, 0x5308a25e
mov eax, r8d
and eax, 0x5308a25e
and edi, r9d
mov r11d, r10d
and r11d, 0x5308a25e
mov esi, r9d
and esi, 0xd84dec51
or eax, edi
or r11d, esi
xor eax, r11d
or r8d, r10d
xor r8d, 0xffffffff
or r9d, 0x5308a25e
and r8d, r9d
or eax, r8d
mov byte [rcx], dl
cmp eax, 0x18df564b
jbe 0x14016def0
jmp 0x14016df95
jmp 0x14016f4e1
jmp 0x14016f653
mov rax, qword [rbp + 0x180]
mov rcx, qword [rbp + 0x708]
mov rdx, qword [rbp + 0x520]
mov r8, qword [rbp + 0x518]
mov qword [rbp + 0xb78], r8
mov qword [rcx], rdx
mov rcx, qword [rax]
mov qword [rbp + 0xb68], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xb70], rax
lea rcx, [rbp + 0xb78]
lea rdx, [rbp + 0xb68]
sub rsp, 0x20
call fcn.140171740
add rsp, 0x20
test al, 1
jne 0x14016e035
mov rcx, qword [rbp + 0xa68]
mov word [rcx], 0x513
sub rsp, 0x20
call fcn.140062840
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xaa0]
mov qword [rbp + 0x110], rcx
cmp byte [rax], 0
je 0x14016ebaf
jmp 0x14016f33d
sub rsp, 0x20
lea rcx, [rbp + 0xb98]
mov edx, 0x18
mov qword [rbp + 0xf8], rdx
call fcn.140170a00
mov rcx, qword [rbp + 0xa40]
mov rdx, qword [rbp + 0xf8]
call fcn.140170a00
mov rdx, qword [rbp + 0x728]
mov rcx, qword [rbp + 0x650]
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov qword [rbp + 0xb88], 0
mov qword [rdx], 0
mov rdx, qword [rbp + 0x1238]
mov qword [rbp + 0x100], rdx
mov cl, byte [rcx]
test cl, cl
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x10f], al
or al, cl
test al, 1
jne 0x14016e18b
mov rax, qword [rbp + 0x11e8]
mov qword [rbp + 0xb58], rax
mov rax, qword [rbp + 0x11f0]
mov qword [rbp + 0xb60], rax
lea rcx, [rbp + 0x11e8]
sub rsp, 0x20
call fcn.14000f979
mov rcx, qword [rbp + 0xa58]
add rsp, 0x20
mov edx, 0x18
sub rsp, 0x20
call fcn.140170a00
mov rcx, qword [rbp + 0xa58]
mov rdx, qword [rbp + 0x100]
add rsp, 0x20
mov rax, qword [rbp + 0xb58]
mov qword [rbp + 0xb48], rax
mov rax, qword [rbp + 0xb60]
mov qword [rbp + 0xb50], rax
lea r8, [rbp + 0xb48]
sub rsp, 0x20
call fcn.1400cadb9
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
je 0x14016e15f
mov al, 1
mov byte [rbp + 0xf7], al
jmp 0x14016e920
mov rax, qword [rbp + 0xa58]
mov rcx, qword [rax]
mov qword [rbp + 0xb98], rcx
mov rcx, qword [rax + 8]
mov qword [rbp + 0xba0], rcx
mov rax, qword [rax + 0x10]
mov qword [rbp + 0xba8], rax
jmp 0x14016e479
mov cl, byte [rbp + 0x10f]
mov al, 1
test cl, 1
mov byte [rbp + 0xf7], al
jne 0x14016e920
mov eax, dword [0x1401d15e8]
xor eax, 0xea858571
sub eax, dword [0x1401d15ec]
mov ecx, 0x859e657d
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
and eax, 0x431150f3
mov edx, 0x218f36bd
xor edx, 0x629e664e
xor ecx, edx
or eax, ecx
mov r8d, 0xffffffff
xor r8d, 0xc4e9058e
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xc4e9058e
or eax, 0xc4e9058e
imul eax, edx
add eax, ecx
cmp eax, 0x6533040d
ja 0x140170939
mov rcx, qword [rbp + 0xa60]
mov eax, dword [0x1401d15f0]
mov r8d, dword [0x1401d15f4]
mov edx, eax
xor edx, 0xffffffff
and edx, r8d
mov r9d, 0x51aac8a7
xor r9d, 0xae553758
xor r8d, r9d
and eax, r8d
sub eax, edx
sub eax, 0x14a72337
mov edx, 0xa5e20dbe
xor edx, 0x5a1df241
mov r8d, eax
xor r8d, edx
and r8d, 0x144826e3
mov r9d, 0xffffffff
xor r9d, 0x144826e3
mov edx, eax
and edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0x144826e3
mov r9d, 0x404e505
xor r9d, 0x104cc3e6
or eax, r9d
imul eax, r8d
add eax, edx
mov r8d, 0x116b5d40
xor r8d, 0x1ac9b1da
xor edx, edx
div r8d
mov dword [rbp + 0xf0], eax
mov eax, 0xc28848d5
xor eax, 0xe3276643
mov dword [rbp + 0xec], eax
movabs rdx, 0x8d399a968ca75c17
movabs rax, 0x8d399a968ca75c0f
xor rdx, rax
sub rsp, 0x20
call fcn.140170a00
mov rcx, qword [rbp + 0xa60]
call fcn.140171a68
mov rdx, qword [rbp + 0xaa0]
mov ecx, dword [rbp + 0xec]
mov eax, dword [rbp + 0xf0]
add rsp, 0x20
cmp byte [rdx], 0
sete dl
mov byte [rbp + 0xf6], dl
cmp eax, ecx
je 0x14016e20e
mov al, byte [rbp + 0xf6]
test al, 1
jne 0x14016e324
jmp 0x14016e46c
mov ecx, dword [0x1401d15f8]
mov edx, dword [0x1401d15fc]
mov eax, ecx
xor eax, 0xffffffff
mov r9d, 0xcef6512f
xor r9d, 0x3109aed0
mov r8d, ecx
xor r8d, r9d
or eax, r8d
and eax, edx
xor eax, 0xffffffff
and edx, edx
xor edx, 0xffffffff
xor ecx, 0xffffffff
xor edx, 0xffffffff
or ecx, edx
xor eax, 0xffffffff
mov edx, 0xba55521e
xor edx, 0x45aaade1
xor ecx, edx
or eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x911af205
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
mov ecx, 0x87c384ba
xor ecx, 0xa5bc4464
add eax, ecx
add eax, 0x1a5a78c4
sub eax, 0x227fc0de
add eax, 0x24f3131c
cmp eax, 0x3552e409
jbe 0x140170942
mov rcx, qword [rbp + 0xa60]
mov eax, dword [0x1401d1600]
mov r9d, dword [0x1401d1604]
mov edx, 0x7f415108
xor edx, 0x80beaef7
mov r10d, r9d
xor r10d, edx
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
mov edx, eax
add edx, 1
xor eax, 0xffffffff
mov r8d, 0x59cb3519
xor r8d, 0xed23a991
or eax, r8d
add eax, edx
mov r8d, 0x3252f68c
xor r8d, 0x4ef7938f
mov edx, eax
xor edx, r8d
mov r8d, 0xffffffff
xor r8d, 0x7ca56503
and eax, r8d
shl eax, 1
sub eax, edx
mov r8d, 0x15ffdf73
xor edx, edx
div r8d
mov rdx, qword [rcx]
mov qword [rbp + 0xb98], rdx
mov rdx, qword [rcx + 8]
mov qword [rbp + 0xba0], rdx
mov rcx, qword [rcx + 0x10]
mov qword [rbp + 0xba8], rcx
cmp eax, 0x89a5a2a4
je 0x14016e3aa
jmp 0x14016e479
mov al, 1
mov byte [rbp + 0xf7], al
jmp 0x14016e920
mov rax, qword [rbp + 0xa40]
mov rcx, qword [rbp + 0xba8]
mov qword [rax + 0x10], rcx
movups xmm0, xmmword [rbp + 0xb98]
movups xmmword [rax], xmm0
sub rsp, 0x20
lea rcx, [rbp + 0xb98]
call fcn.14005da3b
mov rcx, qword [rbp + 0x730]
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov cl, byte [rcx]
test cl, cl
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0xeb], al
or al, cl
test al, 1
jne 0x14016e4da
jmp 0x14016e565
mov cl, byte [rbp + 0xeb]
mov al, 1
test cl, 1
mov byte [rbp + 0xf7], al
jne 0x14016e920
jmp 0x14016e4f6
lea rcx, [rbp + 0xb28]
sub rsp, 0x20
call fcn.140080b91
mov rax, qword [rbp + 0x738]
mov rcx, qword [rbp + 0xaa0]
add rsp, 0x20
mov rdx, qword [rbp + 0xb28]
mov qword [rbp + 0xd8], rdx
mov rax, qword [rax]
mov qword [rbp + 0xe0], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0xf7], al
jne 0x14016e920
mov rax, qword [rbp + 0x728]
mov rcx, qword [rbp + 0xe0]
mov rdx, qword [rbp + 0xd8]
mov qword [rbp + 0xb88], rdx
mov qword [rax], rcx
jmp 0x14016e5b4
mov rax, qword [rbp + 0xa40]
mov rcx, qword [rax]
mov qword [rbp + 0xb38], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xb40], rax
lea rcx, [rbp + 0xb88]
lea rdx, [rbp + 0xb38]
sub rsp, 0x20
call fcn.140018d5d
mov rcx, qword [rbp + 0xaa0]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0xf7], al
jne 0x14016e920
mov eax, dword [0x1401d1608]
xor eax, 0x85e8594c
xor edx, edx
div dword [0x1401d160c]
mov edx, 0xcc7e82d0
xor edx, 0x33817d2f
mov ecx, eax
xor ecx, edx
xor eax, 0xffffffff
and ecx, eax
mov eax, 0xffffffff
xor eax, 0x7f6c432d
mov edx, 0xffffffff
xor edx, 0x7f6c432d
and eax, edx
or ecx, eax
xor ecx, 0xffffffff
mov edx, 0x10669c58
xor edx, 0xef9963a7
mov eax, ecx
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xca98c8fa
xor ecx, 0xf107dbb7
mov edx, 0x781a1e19
xor edx, 0x87e5e1e6
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0x3b9f134d
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov ecx, 0xaca46966
xor edx, edx
div ecx
cmp eax, 0xc0fecc74
je 0x14017094b
mov rcx, qword [rbp + 0x730]
mov eax, dword [0x1401d1610]
mov edx, 0xd644bbf3
xor edx, 0xe1eceae4
xor eax, edx
xor edx, edx
div dword [0x1401d1614]
mov edx, eax
mov eax, edx
or eax, 0x88cd8e47
mov r8d, 0x28e5caea
xor r8d, 0xd71a3515
xor eax, r8d
or edx, 0x88cd8e47
xor edx, 0xffffffff
xor eax, 0xffffffff
mov r8d, 0x6d69a29d
xor r8d, 0x92965d62
xor edx, r8d
and eax, edx
xor eax, 0x95748635
or eax, 0x5e67dcfc
mov cl, byte [rcx]
mov dl, 0xb
xor dl, 0xb
cmp cl, dl
sete cl
mov byte [rbp + 0xd7], cl
cmp eax, 0xfbad91eb
jae 0x14016e649
mov al, byte [rbp + 0xd7]
test al, 1
jne 0x14016e6dc
jmp 0x14016e8db
mov rax, qword [rbp + 0x728]
mov rax, qword [rax]
mov qword [rbp + 0xc8], rax
cmp rax, 0
je 0x14016e729
mov rcx, qword [rbp + 0xc8]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x14016e729
mov rcx, qword [rbp + 0xc8]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
mov rcx, qword [rbp + 0xa40]
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14016eba5
lea rcx, [rbp + 0xb98]
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xae
xor cl, 0xae
cmp al, cl
jne 0x14016eba5
mov rax, qword [rbp + 0x520]
cmp rax, 0
je 0x14016ebaa
mov rax, qword [rbp + 0x520]
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 0x14016ebaa
mov eax, dword [0x1401d1618]
xor eax, dword [0x1401d161c]
mov ecx, 0x7212c5d0
xor edx, edx
div ecx
mov ecx, eax
mov edx, 0xffffffff
xor edx, 0xb4bbdf72
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0x609e5d61
xor edx, edx
div ecx
cmp eax, 0x4b64f8f8
jae 0x140170954
mov rcx, qword [rbp + 0x520]
mov edx, dword [0x1401d1620]
mov eax, dword [0x1401d1624]
xor eax, 0x5a4b60a2
imul edx, eax
mov eax, edx
and eax, 0x75c57daa
mov r8d, 0x29d2dc24
xor r8d, 0x5c17a18e
xor edx, r8d
or eax, edx
mov edx, 0xffffffff
xor edx, 0xd007fb33
mov r8d, 0xb13ba41c
xor r8d, 0xb13ba41c
mov r9d, 0x980ff17e
xor r9d, 0x980ff17f
sub r8d, r9d
sub edx, r8d
sub eax, edx
mov edx, 0xabf11ece
xor edx, 0x540ee131
mov r8d, eax
xor r8d, edx
and r8d, 0x6969c93c
mov r9d, 0x2afd1290
xor r9d, 0x4394dbac
mov edx, 0x8089fccf
xor edx, 0x7f760330
xor r9d, edx
mov edx, eax
and edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0x6969c93c
mov r9d, 0xfcd78ee1
xor r9d, 0x95be47dd
or eax, r9d
imul eax, r8d
add eax, edx
mov dword [rbp + 0xc4], eax
sub rsp, 0x20
call fcn.14000e572
mov eax, dword [rbp + 0xc4]
add rsp, 0x20
cmp eax, 0x1f2c33e0
jb 0x140170954
jmp 0x14016ebaa
mov rdx, qword [rbp + 0xa48]
mov rcx, qword [rbp + 0x870]
mov rax, qword [rbp + 0xb88]
mov qword [rdx], rax
mov rax, qword [rbp + 0xb90]
mov qword [rdx + 8], rax
mov r8d, 1
sub rsp, 0x20
call fcn.140032450
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp + 0xf7], al
mov rax, qword [rbp + 0x728]
mov rcx, qword [rbp + 0xaa0]
mov dl, byte [rbp + 0xf7]
mov byte [rbp + 0xb7], dl
mov byte [rcx], 0
mov rax, qword [rax]
mov qword [rbp + 0xb8], rax
cmp rax, 0
je 0x14016ea2f
mov rax, qword [rbp + 0xb8]
mov rax, qword [rax]
movabs rcx, 0x450707c2362c4dbc
movabs rdx, 0x50707c2362c4dbc
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x14016ea2f
mov eax, dword [0x1401d1628]
and eax, dword [0x1401d162c]
mov ecx, 0xce1072df
xor edx, edx
div ecx
xor ecx, ecx
sub ecx, 0x4ba1dc0a
sub eax, ecx
imul eax, eax, 0x39939d16
mov ecx, 0xf382e76c
xor ecx, 0xb90594dc
cmp eax, ecx
jb 0x14017095d
mov rcx, qword [rbp + 0xb8]
mov eax, dword [0x1401d1630]
xor edx, edx
div dword [0x1401d1634]
add eax, 0x18dd6777
sub eax, 0x8c4cc4d7
sub eax, 0x18dd6777
imul eax, eax, 0x4c415380
mov r8d, 0xb2b875df
xor r8d, 0x704647ba
xor edx, edx
div r8d
mov dword [rbp + 0xb0], eax
mov eax, 0xb23bb81f
xor eax, 0x68058546
mov dword [rbp + 0xac], eax
sub rsp, 0x20
call fcn.14000e572
mov ecx, dword [rbp + 0xac]
mov eax, dword [rbp + 0xb0]
add rsp, 0x20
cmp eax, ecx
jae 0x14017095d
jmp 0x14016ea2f
mov rcx, qword [rbp + 0xa40]
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14016eba5
mov eax, dword [0x1401d1638]
mov ecx, dword [0x1401d163c]
xor ecx, 0xffffffff
add eax, ecx
add eax, 1
or eax, 0xaf212e0d
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x7b8e522f
mov edx, 0xffffffff
xor edx, 0x7b8e522f
and eax, edx
sub eax, ecx
mov ecx, 0x878b3079
xor ecx, 0x878b3079
mov edx, 0x8609044f
xor edx, 0xfd61db8f
sub ecx, edx
sub eax, ecx
cmp eax, 0x67f17ba7
jbe 0x140170966
mov eax, dword [0x1401d1640]
mov r8d, dword [0x1401d1644]
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, 0xbb0e7044
xor ecx, 0x22386f97
sub eax, ecx
mov ecx, 0x83142fe8
xor ecx, 0x23230db9
or eax, ecx
mov edx, 0x6feba8a
xor edx, 0xf9014575
mov ecx, eax
xor ecx, edx
mov edx, 0x54680036
xor edx, 0xe1c530dc
and edx, ecx
mov r8d, 0xffffffff
xor r8d, 0xb5ad30ea
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0xfac771a0
xor r8d, 0x4f6a414a
mov edx, eax
and edx, r8d
or eax, 0xb5ad30ea
imul eax, edx
add eax, ecx
mov dword [rbp + 0xa4], eax
mov eax, 0xf676c744
xor eax, 0x5303c8eb
mov dword [rbp + 0xa0], eax
lea rcx, [rbp + 0xb98]
sub rsp, 0x20
call fcn.14005da50
mov rdx, qword [rbp + 0xaa0]
mov ecx, dword [rbp + 0xa0]
mov eax, dword [rbp + 0xa4]
add rsp, 0x20
cmp byte [rdx], 0
sete dl
mov byte [rbp + 0xab], dl
cmp eax, ecx
je 0x140170966
mov al, byte [rbp + 0xab]
test al, 1
jne 0x14016eb96
jmp 0x14016eba5
mov rax, qword [rbp + 0xaa0]
mov cl, byte [rbp + 0xb7]
mov byte [rax], cl
jmp 0x14016f4e1
jmp 0x14016f653
mov r11d, dword [0x1401d1648]
xor r11d, 0x5d8a2ec
mov r10d, dword [0x1401d164c]
mov eax, r11d
xor eax, 0xffffffff
mov edx, r10d
xor edx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x5a5e958a
mov ecx, eax
and ecx, 0x5a5e958a
and r11d, r8d
mov r9d, edx
and r9d, 0x5a5e958a
and r10d, r8d
or ecx, r11d
or r9d, r10d
xor ecx, r9d
or eax, edx
xor eax, 0xffffffff
mov edx, 0x8cc9f603
xor edx, 0xd6976389
or edx, r8d
and eax, edx
or ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x3c09e899
mov edx, 0xffffffff
xor edx, 0x3c09e899
and ecx, edx
or eax, ecx
mov ecx, 0xc85f9dfe
xor ecx, 0xe0e97f27
add eax, ecx
mov ecx, 0xdd8eab8d
xor ecx, 0x12fe5c40
sub eax, ecx
mov ecx, 0x96ca4f7d
xor ecx, 0xbe7cada4
sub eax, ecx
mov edx, eax
xor edx, 0x7fd1501e
xor edx, 0xffffffff
mov ecx, 0x92e09816
xor ecx, 0xed31c808
and ecx, edx
shl ecx, 1
sub ecx, 0x7fd1501e
sub eax, ecx
mov ecx, 0xe12788ea
xor ecx, 0x65eb14ac
cmp eax, ecx
jb 0x14017096f
mov rcx, qword [rbp + 0xa70]
mov r8, qword [rbp + 0x710]
mov r9, qword [rbp + 0x520]
mov r10, qword [rbp + 0x518]
mov edx, dword [0x1401d1650]
mov r11d, dword [0x1401d1654]
xor eax, eax
sub eax, r11d
add edx, eax
mov eax, edx
and eax, 0xa358b38e
xor edx, 0xa358b38e
or eax, edx
mov r11d, 0xd1fd17ae
xor edx, edx
div r11d
mov rdx, qword [rbp + 0xa78]
mov r11d, eax
mov rax, qword [rbp + 0x110]
add r11d, 0x47554e16
mov dword [rbp + 0x98], r11d
mov qword [rcx], r10
mov qword [r8], r9
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140171740
add rsp, 0x20
mov cl, al
mov eax, dword [rbp + 0x98]
mov byte [rbp + 0x9f], cl
cmp eax, 0x2668bc73
jb 0x14016ec8b
mov al, byte [rbp + 0x9f]
test al, 1
jne 0x14016ed41
jmp 0x14016f33d
sub rsp, 0x20
lea rcx, [rbp + 0xb20]
mov edx, 8
mov qword [rbp + 0x80], rdx
call fcn.140170a00
mov rdx, qword [rbp + 0x80]
lea rcx, [rbp + 0xb08]
call fcn.140170a00
mov rdx, qword [rbp + 0x80]
lea rcx, [rbp + 0xb00]
call fcn.140170a00
mov rcx, qword [rbp + 0x650]
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov rdx, qword [rbp + 0x1238]
mov qword [rbp + 0x88], rdx
mov cl, byte [rcx]
test cl, cl
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x97], al
or al, cl
test al, 1
jne 0x14016ee7c
mov rax, qword [rbp + 0x11e8]
mov qword [rbp + 0xaf0], rax
mov rax, qword [rbp + 0x11f0]
mov qword [rbp + 0xaf8], rax
lea rcx, [rbp + 0x11e8]
sub rsp, 0x20
call fcn.14000f979
add rsp, 0x20
movabs rdx, 0x288f6a537dbe2e95
movabs rax, 0x288f6a537dbe2e9d
xor rdx, rax
lea rcx, [rbp + 0xae8]
sub rsp, 0x20
call fcn.140170a00
mov rcx, qword [rbp + 0x88]
mov rdx, qword [rbp + 0xa80]
add rsp, 0x20
mov rax, qword [rbp + 0xaf0]
mov qword [rdx], rax
mov rax, qword [rbp + 0xaf8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.1400ca110
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xaa0]
mov qword [rbp + 0x78], rcx
cmp byte [rax], 0
je 0x14016ee68
jmp 0x14016ef41
mov rax, qword [rbp + 0x78]
mov qword [rbp + 0xb08], rax
mov qword [rbp + 0x70], rax
jmp 0x14016ef46
mov eax, dword [0x1401d1658]
and eax, dword [0x1401d165c]
or eax, 0x85323a87
mov ecx, 0x6ec614c
xor edx, edx
div ecx
mov ecx, 0xf4397fc3
xor edx, edx
div ecx
cmp eax, 0x3a862158
je 0x140170978
mov eax, dword [0x1401d1660]
add eax, dword [0x1401d1664]
add eax, 0xda46dabc
and eax, 0x3520c060
mov ecx, 0xf4bb82c0
xor ecx, 0x7a524e0a
mov edx, 0x600f9120
xor edx, 0x9ff06edf
xor ecx, edx
add eax, ecx
mov ecx, 0xfea3af9c
xor ecx, 0xfea3af9d
add eax, ecx
mov ecx, 0x1ee7da5a
xor ecx, 0x8cfe793
cmp eax, ecx
jbe 0x14016eeaa
mov al, byte [rbp + 0x97]
test al, 1
jne 0x14016ef41
jmp 0x14016ef0d
lea rcx, [rbp + 0xae0]
mov edx, 8
sub rsp, 0x20
call fcn.140170a00
call fcn.140171aa0
mov rcx, qword [rbp + 0xaa0]
add rsp, 0x20
mov cl, byte [rcx]
cmp cl, 0
mov qword [rbp + 0x70], rax
je 0x14016ef46
jmp 0x14016f33d
mov rax, qword [rbp + 0x70]
mov qword [rbp + 0x68], rax
movabs rdx, 0x100000000
mov rcx, rax
xor rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0x100000000
or rax, rdx
and rax, rcx
cmp rax, 0
jne 0x14016f13e
sub rsp, 0x20
call fcn.1400809a3
add rsp, 0x20
mov rax, qword [rbp + 0xaa0]
mov al, byte [rax]
mov cl, 0x57
xor cl, 0x57
cmp al, cl
jne 0x14016f33d
mov rax, qword [rbp + 0x520]
cmp rax, 0
je 0x14016f401
mov eax, dword [0x1401d1668]
mov edx, dword [0x1401d166c]
xor edx, 0xaec2ac3
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
or eax, edx
and eax, ecx
mov r8d, 0xffffffff
xor r8d, 0xbfe54168
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xbfe54168
or eax, 0xbfe54168
imul eax, edx
add eax, ecx
mov ecx, 0x5dadeb57
xor edx, edx
div ecx
mov ecx, 0xb8bb92af
xor ecx, 0x2151081c
add eax, ecx
sub eax, 0x50fc9a85
sub eax, 0x99ea9ab3
cmp eax, 0x8e0b0877
jbe 0x140170981
mov rcx, qword [rbp + 0x520]
mov eax, dword [0x1401d1670]
mov edx, dword [0x1401d1674]
mov r8d, 0xfd28e88a
xor r8d, 0x2ee93deb
xor edx, r8d
and eax, eax
mov r8d, 0xb786183c
xor r8d, 0x4879e7c3
xor eax, r8d
and edx, edx
xor edx, 0xffffffff
mov r8d, 0x606f9343
xor r8d, 0x9f906cbc
xor eax, r8d
mov r8d, 0x89c27620
xor r8d, 0x763d89df
xor edx, r8d
or eax, edx
mov edx, 0xcc5e8156
xor edx, 0xefb8a295
imul eax, edx
mov edx, eax
xor edx, 0xa82161f3
mov r8d, 0xb9963fc0
xor r8d, 0x11b75e33
mov r9d, 0x4219361e
xor r9d, 0xbde6c9e1
xor r8d, r9d
and eax, r8d
shl eax, 1
sub eax, edx
xor eax, 0x15543083
mov rcx, qword [rcx]
movabs r8, 0x4000000000000000
mov rdx, rcx
xor rdx, r8
xor rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
or rcx, r8
and rcx, rdx
movabs rdx, 0xe8b9f8d957d9db1a
movabs r8, 0xe8b9f8d957d9db1a
xor rdx, r8
cmp rcx, rdx
sete cl
mov byte [rbp + 0x67], cl
cmp eax, 0xc3d8dee3
jae 0x140170981
mov al, byte [rbp + 0x67]
test al, 1
jne 0x14016f125
jmp 0x14016f401
mov rcx, qword [rbp + 0x520]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
jmp 0x14016f401
mov rdx, qword [rbp + 0x68]
shl rdx, 0x20
movabs rcx, 0x743365df420cf92b
movabs rax, 0x743365df420cf90b
xor rcx, rax
sar rdx, cl
mov rcx, qword [rbp + 0xa90]
sub rsp, 0x20
call fcn.14000477c
mov rdx, qword [rbp + 0xa90]
mov rcx, qword [rbp + 0x718]
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov rdx, qword [rdx]
mov qword [rbp + 0x50], rdx
mov rcx, qword [rcx]
mov qword [rbp + 0x58], rcx
mov al, byte [rax]
mov cl, 0xc
xor cl, 0xc
cmp al, cl
jne 0x14016f33d
mov rdx, qword [rbp + 0x58]
mov rcx, qword [rbp + 0x870]
mov rax, qword [rbp + 0x720]
mov r8, qword [rbp + 0x50]
mov qword [rbp + 0xb10], r8
mov qword [rax], rdx
movabs r8, 0xbc482725343654ed
movabs rax, 0xbc482725343654ec
xor r8, rax
lea rdx, [rbp + 0xb10]
sub rsp, 0x20
call fcn.140032450
mov rax, qword [rbp + 0x58]
add rsp, 0x20
cmp rax, 0
je 0x14016f33d
mov rax, qword [rbp + 0x58]
mov rax, qword [rax]
movabs rcx, 0xc4df1c3a1ec9dad2
movabs rdx, 0x84df1c3a1ec9dad2
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x14016f33d
mov ecx, dword [0x1401d1678]
xor ecx, 0x5b8f0140
mov edx, dword [0x1401d167c]
mov eax, ecx
xor eax, 0xffffffff
mov r9d, 0xe4ba3094
xor r9d, 0x1b45cf6b
mov r8d, ecx
xor r8d, r9d
and eax, r8d
mov r8d, edx
or r8d, r8d
xor r8d, 0xffffffff
or eax, r8d
xor eax, 0xffffffff
xor ecx, 0xffffffff
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0xabf35a69
xor ecx, 0x7d388c9d
xor edx, edx
div ecx
mov ecx, 0xded0772f
xor ecx, 0xdbece90f
xor edx, edx
div ecx
sub eax, 0x6880c641
cmp eax, 0xee9cd60
jb 0x14017098a
mov rcx, qword [rbp + 0x58]
mov eax, dword [0x1401d1680]
mov edx, dword [0x1401d1684]
xor edx, 0x1c2fcc6b
imul eax, edx
mov r8d, 0xb8619637
xor r8d, 0x62f89741
xor edx, edx
div r8d
mov edx, eax
xor edx, 0xffffffff
mov r8d, 0x3eb981c7
xor r8d, 0xfc0c8dea
and r8d, edx
mov r9d, 0xffffffff
xor r9d, 0xc2b50c2d
mov edx, eax
and edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0xc2b50c2d
or eax, 0xc2b50c2d
imul eax, r8d
add eax, edx
mov edx, 0x6ecdf933
xor edx, 0x8d99ffb0
and eax, edx
mov dword [rbp + 0x4c], eax
sub rsp, 0x20
call fcn.14000e572
mov eax, dword [rbp + 0x4c]
add rsp, 0x20
cmp eax, 0xbf32f59c
jae 0x14017098a
jmp 0x14016f33d
mov eax, dword [0x1401d1688]
xor edx, edx
div dword [0x1401d168c]
mov ecx, eax
mov eax, 0x6daacc1
xor eax, 0xe5335667
add ecx, eax
add ecx, 0xc40e2d34
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xa4885d58
xor edx, 0x242ae412
mov r8d, 0x8e961d64
xor r8d, 0x7169e29b
xor edx, r8d
or eax, edx
mov edx, 0x26e363c2
xor edx, 0xa641da88
and ecx, edx
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
cmp eax, 0x312855a4
jb 0x140170993
mov eax, dword [0x1401d1690]
or eax, dword [0x1401d1694]
mov edx, 0xfc034f1
xor edx, 0xf2494343
mov ecx, 0x7a1a4f9b
xor ecx, 0x85e5b064
xor edx, ecx
mov ecx, eax
and ecx, edx
mov r8d, 0x8af6b959
xor r8d, 0x777fceeb
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
add eax, 0xd725ae26
mov ecx, 0x342e12a7
xor ecx, 0xeeb8c86d
sub eax, ecx
cmp eax, 0x35f69a94
je 0x14016f3a1
jmp 0x14016f4e1
mov eax, dword [0x1401d1698]
xor eax, 0x8d046c55
or eax, dword [0x1401d169c]
xor eax, 0x876401e2
xor eax, 0x564a81f9
mov ecx, 0x3d9965c7
xor ecx, 0xc2669a38
mov edx, eax
xor edx, ecx
and edx, 0x9266aac
mov r8d, 0x1b881a08
xor r8d, 0x12ae70a4
mov ecx, 0xec594b00
xor ecx, 0x13a6b4ff
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x9266aac
or eax, 0x9266aac
imul eax, edx
add eax, ecx
cmp eax, 0xb06d377
je 0x14017099c
mov eax, dword [0x1401d16a0]
mov r8d, dword [0x1401d16a4]
xor r8d, 0x5c2da574
mov ecx, eax
xor ecx, 0xffffffff
mov edx, r8d
and edx, ecx
mov ecx, 0x45f8e173
xor ecx, 0xba071e8c
mov r9d, r8d
xor r9d, ecx
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
sub eax, 0x8a9b6a3d
mov ecx, eax
and ecx, 0xc5249c7a
shl ecx, 1
xor eax, 0xc5249c7a
add eax, ecx
sub eax, 0xe020989b
cmp eax, 0x8ac359bf
ja 0x14016f471
jmp 0x14016f653
mov rax, qword [rbp + 0x520]
cmp rax, 0
je 0x14016f557
mov rax, qword [rbp + 0x520]
mov rax, qword [rax]
or rax, rax
xor rax, 0xffffffffffffffff
mov rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
xor rcx, rdx
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
and rcx, rdx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jne 0x14016f557
mov rcx, qword [rbp + 0x520]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
mov ecx, dword [0x1401d16a8]
mov edx, dword [0x1401d16ac]
mov r8d, 0x2ce089c2
xor r8d, 0xd31f763d
mov eax, ecx
xor eax, r8d
mov r8d, edx
xor r8d, 0xffffffff
and eax, r8d
or ecx, edx
xor ecx, 0xffffffff
mov edx, 0xb8ba8c3f
xor edx, 0x474573c0
xor eax, edx
mov edx, 0xbe6ba3b5
xor edx, 0x41945c4a
xor ecx, edx
and eax, ecx
mov edx, 0xffffffff
xor edx, 0x55a9c5e8
mov ecx, eax
and ecx, edx
mov r8d, 0x21f858e8
xor r8d, 0x74519d00
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
or eax, 0xef601892
and eax, 0xb2d97b75
cmp eax, 0x79023875
jb 0x1401709a5
mov rcx, qword [rbp + 0xaa0]
mov eax, dword [str.T_eGn]
mov edx, 0x9000adae
xor edx, 0xc02a4534
xor eax, edx
imul eax, dword [0x1401d16b4]
mov r8d, 0x714e64f9
xor edx, edx
div r8d
mov r8d, 0x5a42e49a
xor edx, edx
div r8d
mov r8d, 0xaf91eb1f
xor edx, edx
div r8d
mov cl, byte [rcx]
mov dl, 0x55
xor dl, 0x55
cmp cl, dl
sete cl
mov byte [rbp + 0x4b], cl
cmp eax, 0xe37dbc58
je 0x1401709a5
mov eax, dword [rbp + 0x554]
mov cl, byte [rbp + 0x4b]
test cl, 1
mov dword [rbp + 0x53c], eax
jne 0x14016f653
jmp 0x14016f77d
mov eax, dword [rbp + 0x554]
movsxd rdx, eax
mov qword [rbp + 0x38], rdx
mov rax, rdx
add rax, 1
mov qword [rbp + 0x40], rax
movabs r8, 0xf239444e3af48d40
movabs rcx, 0xdc6bbb1c50b72bf
xor r8, rcx
mov rcx, rdx
xor rcx, r8
and rcx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rdx, r8
or rcx, rdx
and rax, rcx
movabs rcx, 0xa63943450bdc8776
movabs rdx, 0xa63943450bdc8776
xor rcx, rdx
cmp rax, rcx
jge 0x14016f6de
sub rsp, 0x20
call fcn.140008024
mov eax, dword [rbp + 0x554]
add rsp, 0x20
mov dword [rbp + 0x53c], eax
jmp 0x14016f77d
mov rax, qword [rbp + 0x38]
xor ecx, ecx
sub rcx, rax
movabs rax, 0x234fca3f386e82dc
movabs rdx, 0x234fca3f386e82dc
xor rax, rdx
movabs rdx, 0x7168f5a5bddc1456
movabs r8, 0x8e970a5a3ddc1457
xor rdx, r8
sub rax, rdx
add rcx, rax
movabs rax, 0x6e9352d094a8ddd5
movabs rdx, 0x6e9352d094a8ddd5
xor rax, rdx
sub rax, rcx
movabs rcx, 0x24e516e83e380c16
movabs rdx, 0xdb1ae9173e380c16
xor rcx, rdx
cmp rax, rcx
jae 0x14016f773
sub rsp, 0x20
call fcn.140008024
mov eax, dword [rbp + 0x554]
add rsp, 0x20
mov dword [rbp + 0x53c], eax
jmp 0x14016f77d
mov rax, qword [rbp + 0x40]
mov dword [rbp + 0x53c], eax
mov eax, dword [rbp + 0x53c]
mov dword [rbp + 0x34], eax
mov eax, dword [0x1401d16b8]
sub eax, dword [0x1401d16bc]
mov ecx, 0xabb7b621
xor edx, edx
div ecx
or eax, 0xe5fe92f3
mov ecx, 0xd3fd108c
xor ecx, 0xd3fd108c
mov edx, 0x52520a59
xor edx, 0xaf1d2d23
sub ecx, edx
sub eax, ecx
cmp eax, 0xa7e9ac36
je 0x1401709ae
mov rcx, qword [rbp + 0x548]
mov eax, dword [0x1401d16c0]
xor eax, 0xa87fb7c5
and eax, dword [0x1401d16c4]
or eax, 0xa85b35d4
mov r8d, 0xb55fc686
xor r8d, 0x480ab23d
mov edx, eax
xor edx, r8d
xor edx, 0xffffffff
mov r8d, 0xeec16d45
xor r8d, 0x139419fe
or eax, r8d
and eax, edx
mov r8d, 0x3e436db7
xor edx, edx
div r8d
cmp rcx, 0
sete cl
mov byte [rbp + 0x33], cl
cmp eax, 0x55752d7e
je 0x1401709ae
mov al, byte [rbp + 0x33]
test al, 1
jne 0x14016f86b
jmp 0x14016f839
mov rcx, qword [rbp + 0x548]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x14016f86b
mov rcx, qword [rbp + 0x548]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
mov rax, qword [rbp + 0xaa0]
cmp byte [rax], 0
je 0x14016f963
jmp 0x14016f971
mov ecx, dword [rbp + 0x550]
sub rsp, 0x20
call fcn.1400cb48d
add rsp, 0x20
mov eax, dword [0x1401d16c8]
mov edx, dword [0x1401d16cc]
xor edx, 0xae02151f
mov ecx, eax
and ecx, edx
shl ecx, 1
add eax, edx
sub eax, ecx
mov ecx, 0xab17c547
xor edx, edx
div ecx
xor eax, 0x24ce7e18
xor eax, 0xf85de862
cmp eax, 0x7740962f
jb 0x1401709b7
mov eax, dword [0x1401d16d0]
xor eax, 0x409c8431
or eax, dword [0x1401d16d4]
mov r8d, 0xc07be3ff
xor r8d, 0x94ebaff7
mov ecx, 0xc3a80de9
xor ecx, 0x3c57f216
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x54904c08
or eax, 0x54904c08
imul eax, edx
add eax, ecx
mov edx, eax
and edx, 0x437e463c
mov ecx, 0x2545bfeb
xor ecx, 0x2545bfe9
imul ecx, edx
add eax, 0x437e463c
sub eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xda754c01
mov edx, 0xffffffff
xor edx, 0xda754c01
and eax, edx
sub eax, ecx
cmp eax, 0x65f2cb10
je 0x1401709b7
jmp 0x14016f971
mov eax, dword [rbp + 0x34]
mov dword [rbp + 0x564], eax
jmp 0x140167dd0
mov rax, qword [rbp + 0x660]
mov rax, qword [rax]
mov qword [rbp + 0x28], rax
cmp rax, 0
je 0x14016f9b5
mov rcx, qword [rbp + 0x28]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x14016f9b5
mov rcx, qword [rbp + 0x28]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
mov rax, qword [rbp + 0x658]
mov rax, qword [rax]
mov qword [rbp + 0x20], rax
cmp rax, 0
je 0x14016fa3b
mov rax, qword [rbp + 0x20]
mov rcx, qword [rax]
mov rax, rcx
xor rax, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
or rax, rdx
movabs rdx, 0x4000000000000000
and rcx, rdx
xor rcx, 0xffffffffffffffff
and rax, rcx
movabs rcx, 0xe4bce207e577c7a5
movabs rdx, 0x1b431df81a88385a
xor rcx, rdx
xor rax, rcx
cmp rax, 0
jne 0x14016fa3b
mov rcx, qword [rbp + 0x20]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
mov rax, qword [rbp + 0xaa0]
mov al, byte [rax]
cmp al, 0
je 0x14016fb2f
mov eax, dword [0x1401d16d8]
or eax, dword [0x1401d16dc]
mov ecx, 0x70c4ee9
xor ecx, 0x4d891f1e
and eax, ecx
mov edx, 0xdec1bba7
xor edx, 0x390f9c95
mov ecx, eax
and ecx, edx
shl ecx, 1
add eax, 0xe7ce2732
sub eax, ecx
mov ecx, 0x22df7b7f
xor ecx, 0x1a4fc587
and eax, ecx
cmp eax, 0x2744ca27
je 0x1401709c0
mov rax, qword [rbp + 0xaa0]
mov ecx, dword [0x1401d16e0]
imul ecx, dword [0x1401d16e4]
mov edx, 0xc78e5a81
xor edx, 0x81d35662
imul ecx, edx
add ecx, 0x11c5c1d9
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x990f74ab
mov r8d, 0xffffffff
xor r8d, 0x6f768b88
or ecx, edx
mov edx, 0xe8de3df0
xor edx, 0x87a8b678
or edx, r8d
mov r8d, 0xcadcb903
xor r8d, 0x352346fc
xor ecx, r8d
and ecx, edx
mov dword [rbp + 0x1c], ecx
mov ecx, 0xd1a0dec2
xor ecx, 0x25268fc6
mov dword [rbp + 0x18], ecx
mov byte [rax], 0
sub rsp, 0x20
call fcn.140171b60
mov ecx, dword [rbp + 0x18]
mov eax, dword [rbp + 0x1c]
add rsp, 0x20
cmp eax, ecx
je 0x1401709c0
jmp 0x14016fb2f
mov rax, qword [rbp + 0x5c0]
cmp rax, 0
je 0x14016fbc8
mov rax, qword [rbp + 0x5c0]
mov rax, qword [rax]
xor rax, 0xffffffffffffffff
movabs rdx, 0xdc8dcce1cdf4479d
movabs rcx, 0x9c8dcce1cdf4479d
xor rdx, rcx
movabs rcx, 0x4fae9717e9b36a9d
movabs r8, 0xb05168e8164c9562
xor rcx, r8
xor rdx, rcx
mov rcx, 0xffffffffffffffff
movabs r8, 0xbd2f7ca604e969c6
xor rcx, r8
or rax, rdx
movabs rdx, 0xbd2f7ca604e969c6
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jne 0x14016fbc8
mov rcx, qword [rbp + 0x5c0]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
mov rax, qword [rbp + 0xaa0]
mov al, byte [rax]
mov byte [rbp + 0x5d7], al
mov al, byte [rbp + 0x5d7]
mov byte [rbp + 0x17], al
mov eax, dword [0x1401d16e8]
mov ecx, 0x74fcb7ef
xor ecx, 0x9a9fb87
xor eax, ecx
sub eax, dword [0x1401d16ec]
mov ecx, 0xace2d9a6
xor edx, edx
div ecx
mov ecx, 0xb3a650f5
xor ecx, 0x46e27baf
sub eax, ecx
mov ecx, eax
xor ecx, 0x71127412
mov edx, 0x68dc647c
xor edx, 0x97239b83
xor ecx, edx
or eax, 0x71127412
and eax, ecx
mov ecx, 0x21624591
xor ecx, 0x65f22220
cmp eax, ecx
jae 0x1401709c9
mov rcx, qword [rbp + 0x650]
mov r8b, byte [rbp + 0x17]
mov eax, dword [0x1401d16f0]
xor eax, 0xab27dede
mov edx, dword [0x1401d16f4]
xor edx, 0x2ee7023c
add eax, edx
or eax, 0x727379b6
mov edx, eax
xor edx, 0x790c00dc
xor edx, 0xffffffff
mov r9d, 0x6b09c1da
xor r9d, 0x1205c106
or eax, r9d
and eax, edx
mov r9d, 0xc4864285
xor edx, edx
div r9d
mov rdx, qword [rbp + 0xaa0]
cmp r8b, 0
sete r8b
mov byte [rbp + 0x15], r8b
mov r8b, 0x3d
xor r8b, 0x3d
mov byte [rdx], r8b
mov cl, byte [rcx]
mov dl, 0xde
xor dl, 0xde
cmp cl, dl
sete cl
mov byte [rbp + 0x16], cl
cmp eax, 0xce12b6e3
ja 0x14016fc3e
mov al, byte [rbp + 0x16]
test al, 1
jne 0x14016fd24
jmp 0x14016fcd6
lea rcx, [rbp + 0x1238]
sub rsp, 0x20
call fcn.140170b20
add rsp, 0x20
mov rax, qword [rbp + 0xaa0]
cmp byte [rax], 0
jne 0x14016fd45
mov rcx, qword [rbp + 0x1238]
sub rsp, 0x20
call fcn.1400ca44d
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x10
xor cl, 0x10
cmp al, cl
jne 0x14016fd45
mov al, byte [rbp + 0x15]
mov rcx, qword [rbp + 0xaa0]
mov dl, byte [rbp + 0x17]
mov byte [rcx], dl
test al, 1
jne 0x14016fd40
jmp 0x14016fd45
jmp 0x14016fd67
mov eax, dword [rbp + 0x60c]
mov dword [rbp + 0x5e8], eax
jmp 0x14016ff48
mov eax, dword [rbp + 0x60c]
mov dword [rbp + 0x5e8], eax
jmp 0x14016ff48
mov eax, dword [rbp + 0x60c]
movsxd rdx, eax
mov qword [rbp], rdx
mov rcx, 0xffffffffffffffff
xor rcx, 1
xor eax, eax
sub rax, 1
sub rcx, rax
mov rax, rdx
sub rax, rcx
mov qword [rbp + 8], rax
xor rdx, 0xffffffffffffffff
or rax, rax
movabs rcx, 0x5fc95a512b85fa3d
movabs r8, 0xa036a5aed47a05c2
xor rcx, r8
xor rax, rcx
mov rcx, rdx
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
and rcx, rdx
or rax, rcx
movabs rcx, 0x377d8cbab44607fc
movabs rdx, 0xc88273454bb9f803
xor rcx, rdx
xor rax, rcx
cmp rax, 0
jge 0x14016fecf
mov eax, dword [0x1401d16f8]
xor edx, edx
div dword [str.A:_]
and eax, 0x6939b81e
mov ecx, 0xbc4923c9
xor edx, edx
div ecx
mov ecx, 0x814c1e09
xor ecx, 0xa93d7f56
add eax, ecx
cmp eax, 0xff1f7d0b
ja 0x1401709d2
mov eax, dword [0x1401d1700]
xor eax, dword [0x1401d1704]
imul ecx, eax, 0xf34b9db2
sub ecx, 0xf85fda65
mov eax, 0xded5f85
xor eax, 0xe8b5627e
add ecx, eax
mov eax, 0x37ac03cb
xor eax, 0xcff3d9ae
add ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
and eax, edx
mov edx, 0x2f8bd3c0
xor edx, 0x99d6a9e1
mov r8d, 0xbac0cd1e
xor r8d, 0xc9db73f
or edx, r8d
xor edx, 0xffffffff
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
mov edx, 0xc1020254
xor edx, 0x775f7875
or ecx, edx
xor ecx, 0xffffffff
mov edx, 0xd04fd6a0
xor edx, 0x2fb0295f
xor eax, edx
xor ecx, 0xffffffff
and eax, ecx
mov dword [rbp - 4], eax
sub rsp, 0x20
call fcn.140008024
mov eax, dword [rbp - 4]
add rsp, 0x20
cmp eax, 0xbbc4bdee
jae 0x14016fe1c
mov eax, dword [rbp + 0x60c]
mov dword [rbp + 0x5e8], eax
jmp 0x14016ff48
mov rax, qword [rbp]
movabs rcx, 0x123d3a7afc3dc241
movabs rdx, 0xc3936d9f83ff30ad
xor rcx, rdx
sub rax, rcx
add rax, 0xffffffff80000001
movabs rcx, 0x5e486189d4724379
movabs rdx, 0x8fe6366cabb0b195
xor rcx, rdx
add rax, rcx
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x14016ff3e
sub rsp, 0x20
call fcn.140008024
mov eax, dword [rbp + 0x60c]
add rsp, 0x20
mov dword [rbp + 0x5e8], eax
jmp 0x14016ff48
mov rax, qword [rbp + 8]
mov dword [rbp + 0x5e8], eax
mov rax, qword [rbp + 0x5f8]
mov ecx, dword [rbp + 0x5e8]
mov dword [rbp - 8], ecx
cmp rax, 0
je 0x140170021
mov rcx, qword [rbp + 0x5f8]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x140170021
mov eax, dword [0x1401d1708]
mov ecx, dword [0x1401d170c]
xor ecx, 0xffffffff
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
mov ecx, 0x846f3bdf
xor edx, edx
div ecx
mov ecx, 0x66d328fa
xor ecx, 0xc030e46d
xor edx, edx
div ecx
mov ecx, 0xe281bc6
xor ecx, 0x2601daa2
xor edx, edx
div ecx
cmp eax, 0xac74249b
jae 0x1401709db
mov rcx, qword [rbp + 0x5f8]
mov eax, dword [0x1401d1710]
xor eax, 0x2041ba07
mov edx, dword [0x1401d1714]
xor edx, 0x8b26313b
xor eax, edx
and eax, 0x6d23188b
add eax, 0x61070046
xor edx, edx
sub edx, 0x9944ff2e
add eax, edx
mov dword [rbp - 0xc], eax
sub rsp, 0x20
call fcn.14000e572
mov eax, dword [rbp - 0xc]
add rsp, 0x20
cmp eax, 0x1e2e831c
ja 0x14016ffca
jmp 0x140170021
mov rax, qword [rbp + 0xaa0]
cmp byte [rax], 0
je 0x14017004e
jmp 0x14017005c
mov ecx, dword [rbp + 0x608]
sub rsp, 0x20
call fcn.1400cb48d
add rsp, 0x20
jmp 0x14017005c
mov eax, dword [rbp - 8]
mov dword [rbp + 0x618], eax
jmp 0x140167314
mov rax, qword [rbp + 0x858]
mov rax, qword [rax]
mov qword [rbp - 0x18], rax
cmp rax, 0
je 0x1401700dd
mov rax, qword [rbp - 0x18]
mov rax, qword [rax]
mov rcx, rax
add rcx, 1
movabs rdx, 0x5b374805e8779d82
movabs r8, 0xa4c8b7fa1788627d
xor rdx, r8
xor rax, rdx
movabs rdx, 0x4000000000000000
or rax, rdx
add rax, rcx
movabs rcx, 0xf331d458f1890b17
movabs rdx, 0xf331d458f1890b17
xor rcx, rdx
cmp rax, rcx
jne 0x1401700dd
mov rcx, qword [rbp - 0x18]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
mov rax, qword [rbp + 0x850]
mov rax, qword [rax]
mov qword [rbp - 0x20], rax
cmp rax, 0
je 0x140170156
mov rax, qword [rbp - 0x20]
mov rax, qword [rax]
or rax, rax
xor rax, 0xffffffffffffffff
movabs rcx, 0x4000000000000000
movabs rdx, 0x4000000000000000
or rcx, rdx
movabs rdx, 0x888f3b70feb81b63
movabs r8, 0x7770c48f0147e49c
xor rdx, r8
xor rcx, rdx
or rax, rcx
xor rax, 0xffffffffffffffff
cmp rax, 0
jne 0x140170156
mov rcx, qword [rbp - 0x20]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
mov eax, dword [0x1401d1718]
add eax, dword [0x1401d171c]
sub eax, 0xf0bca9b
mov ecx, 0x112351e2
xor ecx, 0xa3fa9380
sub eax, ecx
mov ecx, 0x77a8dabd
xor ecx, 0x78a31026
add eax, ecx
and eax, 0xbbef2d52
sub eax, 0x472776bd
cmp eax, 0xea195276
ja 0x1401709e4
mov rcx, qword [rbp + 0xaa0]
mov edx, dword [0x1401d1720]
mov r8d, dword [0x1401d1724]
xor r8d, 0x3f0817a3
xor r8d, 0xffffffff
mov eax, edx
xor eax, r8d
and eax, edx
imul eax, eax, 0x5c6b7757
or eax, 0x525b80f4
sub eax, 0xbdeb28db
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x21], cl
cmp eax, 0x135dfa50
je 0x140170196
mov cl, byte [rbp - 0x21]
mov al, 1
test cl, 1
mov byte [rbp - 0x22], al
jne 0x1401701f6
jmp 0x14017058c
mov eax, dword [0x1401d1728]
mov ecx, dword [0x1401d172c]
mov edx, 0x4d0e0b49
xor edx, 0x1bb208eb
xor ecx, edx
mov edx, 0xd2fa776f
xor edx, 0x51115576
sub eax, edx
sub eax, ecx
add eax, 0x83eb2219
mov edx, 0xffffffff
xor edx, 0xe93c3a1d
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0xe93c3a1d
add eax, edx
sub eax, ecx
mov ecx, 0x2ecb0438
xor edx, edx
div ecx
mov ecx, 0x3f63f649
xor edx, edx
div ecx
cmp eax, 0xbfa5d97c
jae 0x1401709ed
mov eax, dword [0x1401d1730]
xor eax, 0x9adf4416
xor edx, edx
div dword [0x1401d1734]
mov ecx, eax
xor ecx, 0xc21f3e6d
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xe68f9010
xor edx, 0x19706fef
xor ecx, edx
or eax, ecx
mov ecx, 0x9b82bbe6
and ecx, 0x9b82bbe6
mov edx, 0xf814d862
xor edx, 0x7eb279d
xor ecx, edx
and eax, ecx
mov ecx, 0x534a9e87
xor ecx, 0xacb56178
xor eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x4c440359
mov edx, 0xffffffff
xor edx, 0x4c440359
and eax, edx
sub eax, ecx
mov dword [rbp - 0x34], eax
mov ecx, 0x659
sub rsp, 0x20
call fcn.140062510
mov rcx, qword [rbp + 0xaa0]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x34]
mov qword [rbp - 0x30], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x23], cl
cmp eax, 0xa43162ac
je 0x14017025b
mov cl, byte [rbp - 0x23]
mov al, 1
test cl, 1
mov byte [rbp - 0x35], al
jne 0x14017031b
jmp 0x140170586
mov rcx, qword [rbp - 0x30]
mov rax, qword [rbp + 0x870]
mov rdx, rax
add rdx, 0x58
mov qword [rbp - 0x48], rdx
mov rdx, qword [rax + 0x58]
mov qword [rbp - 0x40], rdx
xor eax, eax
cmp rcx, rdx
mov byte [rbp - 0x35], al
jge 0x140170586
mov rcx, qword [rbp - 0x40]
sub rsp, 0x20
call fcn.1400935e0
add rsp, 0x20
mov dl, al
mov rax, qword [rbp + 0xaa0]
mov al, byte [rax]
test al, al
sete cl
and cl, dl
test cl, 1
mov byte [rbp - 0x35], al
jne 0x14017037b
jmp 0x140170586
mov ecx, dword [0x1401d1738]
mov r8d, dword [0x1401d173c]
mov eax, ecx
xor eax, 0xffffffff
mov edx, r8d
and edx, eax
mov r9d, r8d
xor r9d, 0xffffffff
mov eax, ecx
and eax, r9d
imul eax, edx
mov edx, ecx
and edx, r8d
or ecx, r8d
imul ecx, edx
add ecx, eax
sub ecx, 0x8e7e67fc
mov eax, 0xd7819874
xor eax, 0xc83ddee7
add ecx, eax
add ecx, 0x8e7e67fc
xor ecx, 0xe10d0f6b
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
and eax, 0x4a719434
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x4a719434
mov r8d, 0x7a81666d
xor r8d, 0x30f0f259
mov r9d, 0x600f5d57
xor r9d, 0x9ff0a2a8
xor r8d, r9d
or edx, r8d
and ecx, edx
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x636d5c9f
xor ecx, 0x9c92a360
xor eax, ecx
cmp eax, 0x2e879282
je 0x1401709f6
mov rcx, qword [rbp + 0xa98]
mov edx, dword [0x1401d1740]
mov r8d, dword [0x1401d1744]
xor r8d, 0xf818045b
mov eax, edx
and eax, r8d
xor edx, r8d
or eax, edx
imul eax, eax, 0x5ba8415d
xor eax, 0x2eb38bb6
or eax, 0x55e5e13a
mov dword [rbp - 0x5c], eax
mov word [rcx], 0x120
sub rsp, 0x20
call fcn.140062840
mov rcx, qword [rbp + 0xaa0]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x5c]
mov qword [rbp - 0x58], rdx
mov cl, byte [rcx]
mov dl, 0x89
xor dl, 0x89
cmp cl, dl
sete cl
mov byte [rbp - 0x49], cl
cmp eax, 0x75324650
jae 0x140170425
mov cl, byte [rbp - 0x49]
mov al, 1
test cl, 1
mov byte [rbp - 0x35], al
jne 0x1401704b0
jmp 0x140170586
lea rcx, [rbp + 0xad8]
mov edx, 8
sub rsp, 0x20
call fcn.140170a00
mov rcx, qword [rbp + 0x8a8]
mov rdx, qword [rbp - 0x58]
mov rax, qword [rbp - 0x48]
add rsp, 0x20
mov rcx, qword [rcx]
add rcx, 0x18
mov r8, qword [rdx]
mov qword [rbp + 0xac8], r8
mov rdx, qword [rdx + 8]
mov qword [rbp + 0xad0], rdx
mov rdx, qword [rax]
mov qword [rbp + 0xab8], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0xac0], rax
lea rdx, [rbp + 0xac8]
lea r8, [rbp + 0xab8]
sub rsp, 0x20
call fcn.140112d10
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xaa0]
mov qword [rbp - 0x68], rcx
mov cl, byte [rax]
mov dl, 0xd
xor dl, 0xd
mov al, 1
cmp cl, dl
mov byte [rbp - 0x35], al
jne 0x140170586
mov rcx, qword [rbp - 0x68]
sub rsp, 0x20
call fcn.140093713
mov rcx, qword [rbp + 0xaa0]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp - 0x35], al
jne 0x140170586
mov rax, qword [rbp + 0xaa0]
mov rcx, qword [rbp + 0x8a8]
mov rcx, qword [rcx]
mov byte [rcx + 0x29], 1
mov al, byte [rax]
mov byte [rbp - 0x35], al
mov al, byte [rbp - 0x35]
mov byte [rbp - 0x22], al
mov rax, qword [rbp + 0xaa0]
mov rcx, qword [rbp + 0x870]
mov dl, byte [rbp - 0x22]
mov byte [rbp - 0x6b], dl
mov dl, 0xdc
xor dl, 0xdc
mov byte [rax], dl
sub rsp, 0x20
call fcn.140031860
mov rcx, qword [rbp + 0xaa0]
mov al, byte [rbp - 0x6b]
add rsp, 0x20
mov dl, 1
mov byte [rbp - 0x6a], dl
cmp byte [rcx], 0
mov byte [rbp - 0x69], al
je 0x1401705d5
mov al, byte [rbp - 0x6a]
mov byte [rbp - 0x69], al
mov rax, qword [rbp + 0x870]
mov cl, byte [rbp - 0x69]
mov byte [rbp + 0x887], cl
mov qword [rbp + 0x888], rax
mov rax, qword [rbp + 0xaa0]
mov dl, byte [rbp + 0x887]
mov rcx, qword [rbp + 0x888]
mov byte [rbp - 0x6e], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.14002f81c
mov rcx, qword [rbp + 0xaa0]
mov al, byte [rbp - 0x6e]
add rsp, 0x20
mov dl, 1
mov byte [rbp - 0x6d], dl
cmp byte [rcx], 0
mov byte [rbp - 0x6c], al
je 0x140170634
mov al, byte [rbp - 0x6d]
mov byte [rbp - 0x6c], al
mov al, byte [rbp - 0x6c]
mov byte [rbp + 0x897], al
mov rax, qword [rbp + 0x898]
mov rcx, qword [rbp + 0xaa0]
mov dl, byte [rbp + 0x897]
mov byte [rbp - 0x70], dl
cmp dl, 0
sete dl
mov byte [rbp - 0x6f], dl
mov byte [rcx], 0
mov al, byte [rax]
mov cl, 0x4a
xor cl, 0x4a
cmp al, cl
je 0x1401706b7
lea rcx, [rbp + 0x12d8]
sub rsp, 0x20
call fcn.140170b20
add rsp, 0x20
mov rax, qword [rbp + 0xaa0]
cmp byte [rax], 0
jne 0x1401706ce
mov rcx, qword [rbp + 0x12d8]
sub rsp, 0x20
call fcn.1400ca44d
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401706ce
mov al, byte [rbp - 0x6f]
mov rcx, qword [rbp + 0xaa0]
mov dl, byte [rbp - 0x70]
mov byte [rcx], dl
test al, 1
jne 0x140170751
sub rsp, 0x20
call fcn.140171b86
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x78], rax
mov ax, word [rax + 0x12]
mov cx, 0x9271
xor cx, 0x9270
cmp ax, cx
jle 0x140170751
mov rax, qword [rbp - 0x78]
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0xd4054986
jne 0x140170751
mov rax, qword [rbp + 0xaa0]
mov byte [rax], 0
sub rsp, 0x20
call fcn.140171b98
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.140091980
mov rax, qword [rbp + 0xaa0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140170751
invalid
sub rsp, 0x20
call fcn.140171b60
add rsp, 0x20
lea rsp, [rbp + 0x12e8]
pop rbx
movsd dword [rdi], dword [rsi]
call 0x19b17076b
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
or eax, 0xe97d3e10
jge 0x140170753
invalid
push rbp
js 0x140170739
imul ecx
invalid
invalid
jle 0x140170767
mov ch, 0x4c
jmp 0x140166df2
invalid
cmp ch, byte [rbx - 0x51]
sbb eax, 0xff7163e9
push qword [rdx]
ficom dword [rdi]
adc eax, 0xff7390e9
dec dword [rbp - 0x165b80ab]
sub al, 0x75
invalid
xor bl, dl
invalid
lea edx, [rbp + 0x7f]
movsb byte [rdi], byte [rsi]
jmp 0x140167cd9
invalid
or esp, edi
iretd
jl 0x14017079b
inc byte [rsi]
jmp 0x140168552
push rbp
or edx, edx
invalid
sti
or esp, dword [rsi]
sub ch, cl
jns 0x140170759
invalid
push qword [rax]
in eax, 0x13
jmp 0x140168ba8
xor cl, byte [rbp + 0x30e91081]
test edi, edi
inc dword [rcx - 0x29]
xlatb
fchs
jmp 0x14016907f
mov word [rdi + 0x15], es
jmp 0x14016920c
cwde
outsb dx, byte [rsi]
clc
mov eax, 0xff8b45e9
jmp qword [rdi - 0x16a92b09]
cmpsd dword [rsi], dword [rdi]
not esp
push rsi
jmp 0x14016950c
invalid
xor ecx, dword [rsi + 0x3d92ffff]
fnstcw word [rcx - 0x708717]
dec esi
movabs dword [0x7effff908ce9b0bb], eax
call 0xf8004e2e
xchg ecx, eax
invalid
xchg edx, eax
cmp eax, 0x78e9b9d9
invalid
invalid
jle 0x140170815
std
jmp 0x1401699eb
xor al, byte [rbx - 0x62160b14]
xchg esi, eax
invalid
push rbp
push rdi
jp 0x140170801
jmp 0x14016a056
invalid
shl ebp, cl
shr cl, 0x95
sahf
invalid
and edx, dword [rdi]
pushfq
invalid
cld
sbb eax, 0x1ae9a954
movabs dword [0x8de94310190affff], eax
movsb byte [rdi], byte [rsi]
invalid
or bl, byte [rcx]
adc byte [rbx - 0x17], al
lea esp, [rdi + rdi*8 + 0x5d8608ff]
sub al, 0xe9
int3
or byte [rsi - 0x3316d3a3], al
test eax, 0x9b27ffff
invalid
invalid
xor al, cl
movabs al, byte [0x6d7affffae44e90e]
jp 0x1401708fd
ror dword [rax], 1
jmp 0x14016b792
invalid
pop rax
mov al, byte [rbx - 0x4cc016dd]
invalid
mov gs, word [rsi]
jnp 0x140170920
jmp 0x14016bd5e
lodsb al, byte [rsi]
mov ah, 0xff
jmp qword [rax - 0x16a42cbf]
movabs al, byte [0xffffb925e95bd341]
int3
hlt
scasd eax, dword [rdi]
jge 0x1401708bc
jmp 0x14016c4db
invalid
jmp qword [rbx + 0x2b]
invalid
movabs dword [0xffffbfcae95575fa], eax
movabs eax, dword [0xffffc2c8e9e66105]
jg 0x140170921
int 0x29
jmp 0x14016ccfc
movabs eax, dword [0xffffc902e96d3d39]
mov edx, 0xe95d67bb
and bl, cl
invalid
pop rbp
jmp 0x14016d423
invalid
pop rdi
out 0xfa, eax
movsb byte [rdi], byte [rsi]
jmp 0x14016d7bc
js 0x1401708cb
jbe 0x1401708ae
jmp 0x14016d957
cmp cl, byte [rax]
jge 0x140170988
jmp 0x14016dbaa
jmp 0x14016dbaa
xchg ebx, eax
jnp 0x1401708cc
ret 0x76e9
invalid
mov bh, 0xd5
invalid
invalid
cmc
ret
or byte [rdi - 0xa16bfe2], 0xdc
invalid
jle 0x1401709a0
sti
jmp 0x14016e7f5
imul r12d, dword [r8 - 0x1fae16b2], 0xffffffff
dec dword [rbp + rax - 7]
xor eax, 0xffe13ce9
add rax, 0x3ce935f9
loope 0x14017096d
invalid
invalid
jg 0x140170937
jmp 0x140170942
invalid
hlt
invalid
jg 0x140170935
push rbx
pop rsp
jmp 0x14016f2a2
jle 0x14017098a
movabs al, byte [0xe51fffffea05e951]
cdq
imul cl
int3
invalid
jmp 0x14016f471
sub dword [rbp - 0x1c], esi
or ch, cl
sub al, 0xec
invalid
fcomp qword [rax - 0x14]
popfq
jmp 0x14016f7c5
or byte [rsi + 0x7c], al
xor al, 0xe9
invalid
jrcxz 0x1401709d8
jno 0x1401709d1
jmp 0x14016fa96
push rbp
jnp 0x140170a3e
cli
jmp 0x14016fc3e
inc esi
seto byte [rax]
jmp 0x14016fe1c
invalid
hlt
hlt
invalid
enter 0x2ba2, 0x57
jmp 0x14017025b
fstp qword [rbp + 0x21]
and ebp, ecx
cli
invalid
enter 0xffffffffffff840f, 0x1c
add byte [rax], al
add byte [rax - 0x75], cl
and al, 0x20