Function at 0x140174000
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0xae8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x648], r8
mov qword [rbp + 0x580], rdx
mov qword [rbp + 0x658], rcx
mov eax, 0x10
mov qword [rbp + 0x630], rax
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp + 0x630]
mov rcx, rsp
mov qword [rbp + 0x660], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x668], rax
mov eax, 0x30
mov qword [rbp + 0x590], rax
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp + 0x590]
mov rcx, rsp
mov qword [rbp + 0x588], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp + 0x590]
mov rcx, rsp
mov qword [rbp + 0x598], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp + 0x630]
mov rcx, rsp
mov qword [rbp + 0x5a0], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp + 0x630]
mov rcx, rsp
mov qword [rbp + 0x5a8], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp + 0x630]
mov rcx, rsp
mov qword [rbp + 0x5b0], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp + 0x630]
mov rcx, rsp
mov qword [rbp + 0x5b8], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp + 0x630]
mov rcx, rsp
mov qword [rbp + 0x5c0], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp + 0x630]
mov rcx, rsp
mov qword [rbp + 0x5c8], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp + 0x630]
mov rcx, rsp
mov qword [rbp + 0x5d0], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp + 0x630]
mov rcx, rsp
mov qword [rbp + 0x5d8], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp + 0x630]
mov rcx, rsp
mov qword [rbp + 0x5e0], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp + 0x630]
mov rcx, rsp
mov qword [rbp + 0x5e8], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp + 0x630]
mov rcx, rsp
mov qword [rbp + 0x5f0], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp + 0x630]
mov rcx, rsp
mov qword [rbp + 0x5f8], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp + 0x630]
mov rcx, rsp
mov qword [rbp + 0x600], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp + 0x630]
mov rcx, rsp
mov qword [rbp + 0x608], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp + 0x630]
mov rcx, rsp
mov qword [rbp + 0x610], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp + 0x630]
mov rcx, rsp
mov qword [rbp + 0x618], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x620], rax
mov eax, 0x20
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp + 0x630]
mov rcx, rsp
mov qword [rbp + 0x628], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp + 0x630]
mov rcx, rsp
mov qword [rbp + 0x638], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x640], rax
sub rsp, 0x20
call fcn.140193b2f
mov rcx, qword [rbp + 0x648]
add rsp, 0x20
mov qword [rbp + 0x670], rax
add rax, 0x50
mov qword [rbp + 0x650], rax
sub rsp, 0x20
mov edx, 0x28
call fcn.14015930c
mov rcx, qword [rbp + 0x658]
mov rdx, qword [rbp + 0x660]
add rsp, 0x20
movups xmm0, xmmword [rcx]
movups xmmword [rdx], xmm0
sub rsp, 0x20
lea rcx, [rbp + 0xa58]
call fcn.14001c002
mov rcx, qword [rbp + 0x668]
add rsp, 0x20
mov rdx, qword [rbp + 0xa58]
mov rax, qword [rbp + 0xa60]
mov qword [rcx], rdx
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.1400c6c1f
mov rcx, qword [rbp + 0x670]
add rsp, 0x20
mov r8b, byte [rcx + 0x50]
test r8b, r8b
sete cl
and cl, al
mov eax, 2
mov edx, 3
cmp r8b, 0
cmove eax, edx
test cl, 1
mov dword [rbp + 0x67c], eax
jne 0x140174351
jmp 0x140178f90
mov rsi, qword [rbp + 0x588]
mov rdi, qword [rbp + 0x5f8]
mov rbx, qword [rbp + 0x5f0]
mov r14, qword [rbp + 0x598]
mov r15, qword [rbp + 0x5e8]
mov r12, qword [rbp + 0x5e0]
mov r13, qword [rbp + 0x5d8]
movabs rdx, 0x91467f2966325ad
movabs rax, 0x91467f29663259d
xor rdx, rax
sub rsp, 0x20
mov rcx, rsi
call fcn.14015930c
add rsp, 0x20
mov qword [rbp + 0xa48], 1
mov ecx, 1
mov edx, 0x10
mov r8d, 8
sub rsp, 0x20
call fcn.1400193c0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x658]
mov qword [rbp + 0xa50], rcx
mov rcx, qword [rax]
mov qword [rbp + 0xa28], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xa30], rax
lea rcx, [rbp + 0xa38]
lea rdx, [rbp + 0xa28]
sub rsp, 0x20
call fcn.14001c002
mov r11, qword [rbp + 0x580]
mov r10, qword [rbp + 0x608]
mov r9, qword [rbp + 0x610]
mov r8, qword [rbp + 0x620]
add rsp, 0x20
mov rdx, qword [rbp + 0xa38]
mov rcx, qword [rbp + 0xa40]
mov rax, qword [rbp + 0xa50]
mov qword [rax + 8], rdx
mov rdx, qword [rbp + 0x638]
mov qword [rax + 0x10], rcx
mov rcx, qword [rbp + 0x640]
lea rax, [rbp + 0xa18]
add rax, 8
mov qword [rbp + 0x368], rax
lea rax, [rbp + 0xa08]
add rax, 8
mov qword [rbp + 0x370], rax
lea rax, [rbp + 0x9b0]
add rax, 8
mov qword [rbp + 0x378], rax
mov rax, qword [rbp + 0x5b8]
add rax, 8
mov qword [rbp + 0x380], rax
mov rax, qword [rbp + 0x5b0]
add rax, 8
mov qword [rbp + 0x388], rax
mov rax, qword [rbp + 0x5c0]
add rax, 8
mov qword [rbp + 0x390], rax
lea rax, [rbp + 0x9a0]
add rax, 8
mov qword [rbp + 0x398], rax
mov rax, qword [rbp + 0x5c8]
add rax, 8
mov qword [rbp + 0x3a0], rax
mov rax, qword [rbp + 0x5d0]
add rax, 8
mov qword [rbp + 0x3a8], rax
lea rax, [rbp + 0x9f0]
add rax, 2
mov qword [rbp + 0x3b0], rax
lea rax, [rbp + 0x980]
add rax, 8
mov qword [rbp + 0x3b8], rax
lea rax, [rbp + 0x990]
add rax, 8
mov qword [rbp + 0x3c0], rax
lea rax, [rbp + 0x970]
add rax, 8
mov qword [rbp + 0x3c8], rax
lea rax, [rbp + 0x9f0]
add rax, 8
mov qword [rbp + 0x3d0], rax
mov rax, qword [rbp + 0x5a0]
add rax, 0x10
mov qword [rbp + 0x3d8], rax
mov rax, qword [rbp + 0x5a0]
add rax, 0x18
mov qword [rbp + 0x3e0], rax
mov rax, qword [rbp + 0x5a0]
add rax, 8
mov qword [rbp + 0x3e8], rax
mov rax, qword [rbp + 0x5a0]
add rax, 0x20
mov qword [rbp + 0x3f0], rax
mov rax, qword [rbp + 0x5a0]
add rax, 0x28
mov qword [rbp + 0x3f8], rax
lea rax, [rbp + 0x960]
add rax, 8
mov qword [rbp + 0x400], rax
lea rax, [rbp + 0x950]
add rax, 8
mov qword [rbp + 0x408], rax
lea rax, [rbp + 0x940]
add rax, 8
mov qword [rbp + 0x410], rax
lea rax, [rbp + 0x9d0]
add rax, 8
mov qword [rbp + 0x418], rax
lea rax, [rbp + 0x8d0]
add rax, 8
mov qword [rbp + 0x420], rax
lea rax, [rbp + 0x8c0]
add rax, 8
mov qword [rbp + 0x428], rax
mov rax, qword [rbp + 0x628]
add r13, 8
mov qword [rbp + 0x430], r13
lea r13, [rbp + 0x8b0]
add r13, 8
mov qword [rbp + 0x438], r13
add r12, 8
mov qword [rbp + 0x440], r12
lea r12, [rbp + 0x8e0]
add r12, 8
mov qword [rbp + 0x448], r12
lea r12, [rbp + 0x8e0]
add r12, 0x10
mov qword [rbp + 0x450], r12
lea r12, [rbp + 0x8a0]
add r12, 8
mov qword [rbp + 0x458], r12
lea r12, [rbp + 0x890]
add r12, 8
mov qword [rbp + 0x460], r12
add r15, 8
mov qword [rbp + 0x468], r15
lea r15, [rbp + 0x8e0]
add r15, 0x18
mov qword [rbp + 0x470], r15
lea r15, [rbp + 0x8e0]
add r15, 0x20
mov qword [rbp + 0x478], r15
lea r15, [rbp + 0x8e0]
add r15, 0x28
mov qword [rbp + 0x480], r15
add r14, 0x18
mov qword [rbp + 0x488], r14
lea r14, [rbp + 0x860]
add r14, 8
mov qword [rbp + 0x490], r14
lea r14, [rbp + 0x840]
add r14, 8
mov qword [rbp + 0x498], r14
mov r14, rsi
add r14, 8
mov qword [rbp + 0x4a0], r14
add rbx, 8
mov qword [rbp + 0x4a8], rbx
lea rbx, [rbp + 0x7e0]
add rbx, 8
mov qword [rbp + 0x4b0], rbx
lea rbx, [rbp + 0x7c0]
add rbx, 8
mov qword [rbp + 0x4b8], rbx
add rdi, 8
mov qword [rbp + 0x4c0], rdi
add rsi, 0x18
mov qword [rbp + 0x4c8], rsi
lea rsi, [rbp + 0x820]
add rsi, 0x10
mov qword [rbp + 0x4d0], rsi
add r11, 8
mov qword [rbp + 0x4d8], r11
lea r11, [rbp + 0x780]
add r11, 8
mov qword [rbp + 0x4e0], r11
lea r11, [rbp + 0x770]
add r11, 8
mov qword [rbp + 0x4e8], r11
add r10, 8
mov qword [rbp + 0x4f0], r10
lea r10, [rbp + 0x750]
add r10, 8
mov qword [rbp + 0x4f8], r10
lea r10, [rbp + 0x760]
add r10, 8
mov qword [rbp + 0x500], r10
lea r10, [rbp + 0x790]
add r10, 8
mov qword [rbp + 0x508], r10
lea r10, [rbp + 0x790]
add r10, 0x10
mov qword [rbp + 0x510], r10
add r9, 8
mov qword [rbp + 0x518], r9
lea r9, [rbp + 0x730]
add r9, 8
mov qword [rbp + 0x520], r9
lea r9, [rbp + 0x740]
add r9, 8
mov qword [rbp + 0x528], r9
lea r9, [rbp + 0x790]
add r9, 0x18
mov qword [rbp + 0x530], r9
lea r9, [rbp + 0x790]
add r9, 0x20
mov qword [rbp + 0x538], r9
lea r9, [rbp + 0x790]
add r9, 0x28
mov qword [rbp + 0x540], r9
lea r9, [rbp + 0x710]
add r9, 8
mov qword [rbp + 0x548], r9
add r8, 8
mov qword [rbp + 0x550], r8
lea r8, [rbp + 0x6d0]
add r8, 8
mov qword [rbp + 0x558], r8
add rdx, 8
mov qword [rbp + 0x560], rdx
lea rdx, [rbp + 0x6a0]
add rdx, 8
mov qword [rbp + 0x568], rdx
add rcx, 8
mov qword [rbp + 0x570], rcx
add rax, 0x10
mov qword [rbp + 0x578], rax
mov rax, qword [rbp + 0xa48]
movabs rcx, 0x1bff8431d4ed7592
movabs rdx, 0x1bff8431d4ed7592
xor rcx, rdx
cmp rax, rcx
jle 0x140178ec8
lea rcx, [rbp + 0xa18]
lea rdx, [rbp + 0xa48]
sub rsp, 0x20
call fcn.14016fb20
mov rax, qword [rbp + 0x368]
mov rcx, qword [rbp + 0x598]
add rsp, 0x20
mov rdx, qword [rbp + 0xa18]
mov qword [rbp + 0x338], rdx
mov rax, qword [rax]
mov qword [rbp + 0x340], rax
movabs rdx, 0x37cec3a510c2c53d
movabs rax, 0x37cec3a510c2c50d
xor rdx, rax
sub rsp, 0x20
call fcn.14015930c
mov rcx, qword [rbp + 0x598]
add rsp, 0x20
mov edx, 0x30
sub rsp, 0x20
call fcn.14015930c
mov rax, qword [rbp + 0x370]
add rsp, 0x20
mov qword [rbp + 0xa08], 0
mov qword [rax], 0
mov word [rbp + 0xa06], 0x9de
lea rcx, [rbp + 0xa06]
sub rsp, 0x20
call fcn.140064b20
mov rcx, qword [rbp + 0x650]
add rsp, 0x20
mov qword [rbp + 0x348], rax
xor eax, eax
cmp byte [rcx], 0
mov rcx, rax
mov qword [rbp + 0x350], rcx
mov rcx, rax
mov qword [rbp + 0x358], rcx
mov qword [rbp + 0x360], rax
jne 0x140178669
mov rdx, qword [rbp + 0x338]
mov rax, qword [rbp + 0x348]
add rdx, qword [rax]
lea rcx, [rbp + 0xa08]
sub rsp, 0x20
call fcn.140019920
mov rax, qword [rbp + 0x348]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0x9c0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x9c8], rax
lea rcx, [rbp + 0xa08]
lea rdx, [rbp + 0x9c0]
sub rsp, 0x20
call fcn.14015a900
mov rdx, qword [rbp + 0x338]
mov rcx, qword [rbp + 0x340]
mov rax, qword [rbp + 0x378]
add rsp, 0x20
mov qword [rbp + 0x9b0], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0xa08]
lea rdx, [rbp + 0x9b0]
sub rsp, 0x20
call fcn.14015a900
mov r8, qword [rbp + 0x370]
mov rax, qword [rbp + 0x380]
mov rdx, qword [rbp + 0x5b8]
mov rcx, qword [rbp + 0x5b0]
add rsp, 0x20
mov r9, qword [rbp + 0xa08]
mov qword [rbp + 0x318], r9
mov r8, qword [r8]
mov qword [rbp + 0x320], r8
mov qword [rdx], r9
mov qword [rax], r8
sub rsp, 0x20
call fcn.14016fdc0
mov r8, qword [rbp + 0x5b0]
mov rcx, qword [rbp + 0x388]
mov rdx, qword [rbp + 0x650]
mov rax, qword [rbp + 0x320]
add rsp, 0x20
mov r8, qword [r8]
mov qword [rbp + 0x328], r8
mov rcx, qword [rcx]
mov qword [rbp + 0x330], rcx
xor ecx, ecx
cmp byte [rdx], 0
mov rdx, rcx
mov qword [rbp + 0x350], rdx
mov qword [rbp + 0x358], rcx
mov qword [rbp + 0x360], rax
jne 0x140178669
mov rdx, qword [rbp + 0x330]
mov rcx, qword [rbp + 0x5c0]
mov rax, qword [rbp + 0x390]
mov r8, qword [rbp + 0x328]
mov qword [rcx], r8
mov qword [rax], rdx
sub rsp, 0x20
call fcn.14016ff30
mov rdx, qword [rbp + 0x650]
mov rcx, qword [rbp + 0x330]
add rsp, 0x20
mov r8, rax
mov rax, qword [rbp + 0x320]
mov qword [rbp + 0x310], r8
mov r8b, byte [rdx]
mov r9b, 0xe6
xor r9b, 0xe6
xor edx, edx
cmp r8b, r9b
mov qword [rbp + 0x350], rdx
mov qword [rbp + 0x358], rcx
mov qword [rbp + 0x360], rax
jne 0x140178669
mov rcx, qword [rbp + 0x310]
movabs rdx, 0xa76a126a935c29e0
movabs rax, 0xa76a126a935c29e2
xor rdx, rax
lea r8, [rbp + 0x9e8]
sub rsp, 0x20
call fcn.140170148
add rsp, 0x20
mov cl, al
xor eax, eax
test cl, 1
mov qword [rbp + 0x308], rax
jne 0x140178619
mov eax, dword [0x14024b410]
xor eax, 0x2ae2af2c
imul eax, dword [0x14024b414]
and eax, 0x2af555c6
sub eax, 0xc937cb4c
mov r8d, 0xf46e78d7
xor r8d, 0x38f51144
mov ecx, 0x17b31f2
xor ecx, 0xfe84ce0d
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0xf522356e
xor r8d, 0xaddca91
xor ecx, r8d
imul ecx, edx
mov r8d, 0xcda14495
xor r8d, 0x13a2d06
mov edx, eax
and edx, r8d
or eax, 0xcc9b6993
imul eax, edx
add eax, ecx
mov ecx, 0x6c2da674
xor ecx, 0x3ee241dd
cmp eax, ecx
je 0x140179184
mov rcx, qword [rbp + 0x5c8]
mov rax, qword [rbp + 0x398]
mov rdx, qword [rbp + 0x320]
mov r8, qword [rbp + 0x318]
mov r9d, dword [0x14024b418]
mov r11d, dword [0x14024b41c]
mov r10d, r9d
xor r10d, r11d
mov esi, 0xc48d216b
xor esi, 0x3b72de94
xor r10d, esi
or r9d, r11d
and r9d, r10d
mov esi, 0xffffffff
xor esi, 0xc28667b1
mov r11d, r9d
and r11d, esi
mov r10d, r9d
or r10d, esi
mov esi, 0xce85bc4f
xor esi, 0x317a43b0
xor r10d, esi
imul r10d, r11d
mov r11d, r9d
and r11d, 0xc28667b1
or r9d, 0xc28667b1
imul r9d, r11d
add r9d, r10d
mov r10d, 0x4ed73cbe
xor r10d, 0x4ba84d09
or r9d, r10d
mov r10d, r9d
and r10d, 0xe9c44467
mov r11d, 0x73b01a3c
xor r11d, 0x73b01a3e
imul r10d, r11d
mov r11d, 0x1309184
xor r11d, 0xe8f4d5e3
xor r9d, r11d
add r9d, r10d
mov dword [rbp + 0x2ec], r9d
mov r9d, 0x313a7b7f
xor r9d, 0xeaf9e134
mov dword [rbp + 0x2e8], r9d
mov r9, qword [rbp + 0x9e8]
mov word [rbp + 0x9f0], r9w
mov qword [rbp + 0x9a0], r8
mov qword [rax], rdx
lea rdx, [rbp + 0x9a0]
sub rsp, 0x20
call fcn.14016fdc0
mov r9, qword [rbp + 0x5c8]
mov r8, qword [rbp + 0x3a0]
mov rdx, qword [rbp + 0x650]
mov ecx, dword [rbp + 0x2e8]
mov eax, dword [rbp + 0x2ec]
add rsp, 0x20
mov r9, qword [r9]
mov qword [rbp + 0x2f0], r9
mov r8, qword [r8]
mov qword [rbp + 0x2f8], r8
mov dl, byte [rdx]
mov r8b, 0x57
xor r8b, 0x57
cmp dl, r8b
sete dl
mov byte [rbp + 0x307], dl
cmp eax, ecx
jae 0x140174c30
mov rax, qword [rbp + 0x320]
mov rcx, qword [rbp + 0x330]
mov r8b, byte [rbp + 0x307]
xor edx, edx
test r8b, 1
mov qword [rbp + 0x350], rdx
mov qword [rbp + 0x358], rcx
mov qword [rbp + 0x360], rax
jne 0x140174dc8
jmp 0x140178669
mov eax, dword [0x14024b420]
mov ecx, dword [0x14024b424]
xor ecx, 0xcf5abafd
sub eax, ecx
mov ecx, 0x5b0d7b0e
xor edx, edx
div ecx
sub eax, 0x84f215e8
imul eax, eax, 0x62ab1058
cmp eax, 0xb15ef2fd
jbe 0x14017918d
mov rcx, qword [rbp + 0x5d0]
mov rax, qword [rbp + 0x3a8]
mov rdx, qword [rbp + 0x2f8]
mov r8, qword [rbp + 0x2f0]
mov r9d, dword [str.J_5]
mov r10d, dword [0x14024b42c]
xor r10d, 0x4375de70
and r9d, r10d
add r9d, 0xf2ab9d6a
add r9d, 0x2913e5c0
or r9d, 0xf38fe076
mov dword [rbp + 0x2d4], r9d
mov qword [rcx], r8
mov qword [rax], rdx
sub rsp, 0x20
call fcn.14016ff30
mov rcx, qword [rbp + 0x650]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x2d4]
mov qword [rbp + 0x2d8], rdx
mov cl, byte [rcx]
mov dl, 0x51
xor dl, 0x51
cmp cl, dl
sete cl
mov byte [rbp + 0x2e7], cl
cmp eax, 0x1fbbef3d
jb 0x140174dfb
mov rax, qword [rbp + 0x320]
mov rcx, qword [rbp + 0x330]
mov rdx, qword [rbp + 0x2f8]
mov r8b, byte [rbp + 0x2e7]
test r8b, 1
mov qword [rbp + 0x350], rdx
mov qword [rbp + 0x358], rcx
mov qword [rbp + 0x360], rax
jne 0x140174ed2
jmp 0x140178669
mov eax, dword [0x14024b430]
xor eax, 0xc731ad
mov ecx, dword [0x14024b434]
xor ecx, 0xe6fe8e2f
sub eax, ecx
add eax, 0xde42a326
mov r8d, 0xffffffff
xor r8d, 0xed1c4676
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x22a1cae4
xor r8d, 0xdd5e351b
xor ecx, r8d
imul ecx, edx
mov r8d, 0x277f75f7
xor r8d, 0xca633381
mov edx, eax
and edx, r8d
or eax, 0xed1c4676
imul eax, edx
add eax, ecx
mov ecx, 0x95df184d
xor ecx, 0x6a20e7b2
mov edx, eax
xor edx, ecx
and edx, 0x92bd9543
mov r8d, 0xffffffff
xor r8d, 0x92bd9543
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0xcd3771b6
xor r8d, 0x5f8ae4f5
mov edx, eax
and edx, r8d
or eax, 0x92bd9543
imul eax, edx
add eax, ecx
cmp eax, 0xa05aa4ea
jbe 0x140179196
mov rcx, qword [rbp + 0x2d8]
mov eax, dword [0x14024b438]
mov r8d, dword [0x14024b43c]
mov edx, 0x25c8f0db
xor edx, 0xd6892e93
xor r8d, edx
xor edx, edx
div r8d
mov r8d, eax
xor r8d, 0xffffffff
and r8d, 0xce1d4897
mov r9d, 0xffffffff
xor r9d, 0xce1d4897
mov edx, eax
and edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0xce1d4897
or eax, 0xce1d4897
imul eax, r8d
add eax, edx
mov r8d, 0xdc3d2f9f
xor r8d, 0x23c2d060
mov edx, eax
xor edx, r8d
and edx, 0xbad9ad93
mov r8d, 0xc99d9cff
xor r8d, 0x7344316c
mov r9d, 0x663bdda
xor r9d, 0xf99c4225
xor r8d, r9d
and eax, r8d
or edx, eax
mov r8d, 0x22756e54
xor r8d, 0xdd8a91ab
mov eax, edx
xor eax, r8d
mov r8d, edx
xor r8d, 0xffffffff
and eax, r8d
mov r8d, 0xffffffff
xor r8d, 0x943e7a6b
mov r9d, 0xffffffff
xor r9d, 0x943e7a6b
and r8d, r9d
xor eax, 0xffffffff
mov r9d, 0x55aa35b
xor r9d, 0xfaa55ca4
xor r8d, r9d
and eax, r8d
xor edx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x943e7a6b
and edx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
mov dword [rbp + 0x2cc], eax
mov edx, 2
lea r8, [rbp + 0x9e0]
sub rsp, 0x20
call fcn.140170148
add rsp, 0x20
mov cl, al
mov eax, dword [rbp + 0x2cc]
mov byte [rbp + 0x2d3], cl
cmp eax, 0xfdd9c2c0
ja 0x140174f87
mov rax, qword [rbp + 0x2f8]
mov cl, byte [rbp + 0x2d3]
test cl, 1
mov qword [rbp + 0x308], rax
jne 0x140178619
jmp 0x1401750e5
mov rax, qword [rbp + 0x2f8]
mov r8, qword [rbp + 0x9e0]
mov rcx, r8
and rcx, 2
shl rcx, 1
mov rdx, r8
xor rdx, 2
add rdx, rcx
mov qword [rbp + 0x2c0], rdx
xor r8, 0xffffffffffffffff
movabs r9, 0x11223974464789ad
movabs rcx, 0xeeddc68bb9b87652
xor r9, rcx
mov rcx, rdx
xor rcx, r9
xor rdx, 0xffffffffffffffff
and rcx, rdx
mov rdx, r8
xor rdx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rdx, r8
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
and rcx, rdx
cmp rcx, 0
mov qword [rbp + 0x308], rax
jl 0x140178619
mov rcx, qword [rbp + 0x320]
mov rax, qword [rbp + 0x3b8]
mov rdx, qword [rbp + 0x318]
mov r8, qword [rbp + 0x3b0]
mov r9, qword [rbp + 0x2c0]
mov word [r8], r9w
mov qword [rbp + 0x980], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x990]
lea rdx, [rbp + 0x980]
sub rsp, 0x20
call fcn.14016fdc0
mov r9, qword [rbp + 0x3c0]
mov r8, qword [rbp + 0x650]
mov rdx, qword [rbp + 0x2f8]
mov rcx, qword [rbp + 0x330]
mov rax, qword [rbp + 0x320]
add rsp, 0x20
mov r10, qword [rbp + 0x990]
mov qword [rbp + 0x2b0], r10
mov r9, qword [r9]
mov qword [rbp + 0x2b8], r9
cmp byte [r8], 0
mov qword [rbp + 0x350], rdx
mov qword [rbp + 0x358], rcx
mov qword [rbp + 0x360], rax
jne 0x140178669
mov rcx, qword [rbp + 0x2b8]
mov rax, qword [rbp + 0x3c8]
mov rdx, qword [rbp + 0x2b0]
mov qword [rbp + 0x970], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x970]
sub rsp, 0x20
call fcn.140170230
mov r8, qword [rbp + 0x650]
mov rcx, qword [rbp + 0x2b8]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x2f8]
mov qword [rbp + 0x290], rdx
mov dl, 1
cmp byte [r8], 0
mov byte [rbp + 0x29f], dl
mov qword [rbp + 0x2a0], rcx
mov qword [rbp + 0x2a8], rax
jne 0x1401786a7
mov rcx, qword [rbp + 0x5a0]
mov rax, qword [rbp + 0x3d0]
mov rdx, qword [rbp + 0x290]
mov qword [rax], rdx
mov edx, 0x30
sub rsp, 0x20
call fcn.14015930c
mov r10, qword [rbp + 0x3d8]
mov r9, qword [rbp + 0x3e0]
mov r8, qword [rbp + 0x3e8]
mov rdx, qword [rbp + 0x3f0]
mov rcx, qword [rbp + 0x3f8]
mov rax, qword [rbp + 0x5a8]
mov r11, qword [rbp + 0x5a0]
add rsp, 0x20
mov dword [r11], 0x30
lea r11, [rbp + 0x9f0]
mov qword [r10], r11
mov dword [r9], 0x40
mov qword [r8], 0
mov qword [rdx], 0
mov qword [rcx], 0
mov qword [rax], 0
lea rcx, [rbp + 0x9d0]
mov edx, 0x10
sub rsp, 0x20
call fcn.14015930c
mov rcx, qword [rbp + 0x5a8]
mov r8, qword [rbp + 0x5a0]
add rsp, 0x20
mov edx, 0x80000000
lea r9, [rbp + 0x9d0]
mov rax, qword [0x14025a7e0]
sub rsp, 0x30
mov dword [rsp + 0x20], 7
mov dword [rsp + 0x28], 1
call qword [rax]
mov rdx, qword [rbp + 0x650]
mov rcx, qword [rbp + 0x2b8]
add rsp, 0x30
mov r8d, eax
mov rax, qword [rbp + 0x2f8]
mov dword [rbp + 0x28c], r8d
mov r8b, byte [rdx]
mov r9b, 0x9b
xor r9b, 0x9b
mov dl, 1
cmp r8b, r9b
mov byte [rbp + 0x29f], dl
mov qword [rbp + 0x2a0], rcx
mov qword [rbp + 0x2a8], rax
jne 0x1401786a7
mov ecx, dword [rbp + 0x28c]
mov rax, qword [rbp + 0x400]
mov rdx, qword [rbp + 0x340]
mov r8, qword [rbp + 0x338]
mov qword [rbp + 0x960], r8
mov qword [rax], rdx
lea rdx, [rbp + 0x960]
sub rsp, 0x20
call fcn.1400c3640
mov r8, qword [rbp + 0x650]
mov rcx, qword [rbp + 0x2b8]
mov rax, qword [rbp + 0x2f8]
add rsp, 0x20
mov dl, 1
cmp byte [r8], 0
mov byte [rbp + 0x29f], dl
mov qword [rbp + 0x2a0], rcx
mov qword [rbp + 0x2a8], rax
jne 0x1401786a7
mov ecx, dword [rbp + 0x28c]
mov rax, qword [rbp + 0x408]
mov rdx, qword [rbp + 0x340]
mov r8, qword [rbp + 0x338]
mov qword [rbp + 0x950], r8
mov qword [rax], rdx
lea rdx, [rbp + 0x950]
sub rsp, 0x20
call fcn.1400c6cf6
mov rdx, qword [rbp + 0x650]
mov rcx, qword [rbp + 0x2b8]
mov rax, qword [rbp + 0x2f8]
add rsp, 0x20
mov r8b, byte [rdx]
mov r9b, 0x9b
xor r9b, 0x9b
mov dl, 1
cmp r8b, r9b
mov byte [rbp + 0x29f], dl
mov qword [rbp + 0x2a0], rcx
mov qword [rbp + 0x2a8], rax
jne 0x1401786a7
mov edx, dword [rbp + 0x28c]
mov rax, qword [rbp + 0x410]
mov r8, qword [rbp + 0x340]
mov r9, qword [rbp + 0x338]
mov rcx, qword [rbp + 0x5a8]
mov rcx, qword [rcx]
mov qword [rbp + 0x940], r9
mov qword [rax], r8
lea r8, [rbp + 0x940]
sub rsp, 0x20
call fcn.1400c6da0
mov r8, qword [rbp + 0x650]
mov rcx, qword [rbp + 0x2b8]
mov rax, qword [rbp + 0x2f8]
add rsp, 0x20
mov dl, 1
cmp byte [r8], 0
mov byte [rbp + 0x29f], dl
mov qword [rbp + 0x2a0], rcx
mov qword [rbp + 0x2a8], rax
jne 0x1401786a7
mov ecx, dword [0x14024b440]
mov edx, dword [0x14024b444]
mov eax, edx
and eax, ecx
mov r8d, 0x58b819ec
xor r8d, 0xa747e613
xor eax, r8d
add ecx, edx
add ecx, 1
add ecx, eax
mov eax, 0x343e1a33
xor eax, 0x43e982d8
or ecx, eax
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xc61bd548
mov r8d, 0x864a5649
xor r8d, 0x40518301
mov r9d, 0x47fd3907
xor r9d, 0xb802c6f8
xor r8d, r9d
and edx, r8d
mov r8d, 0xe3dcb0b5
xor r8d, 0x1c234f4a
xor eax, r8d
xor edx, 0xffffffff
and eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xc61bd548
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0xac0a173b
xor ecx, 0x4c5cdf49
sub eax, ecx
sub eax, 0x1dd53072
add eax, 0xe056c872
cmp eax, 0x4ee12bec
jb 0x14017919f
mov ecx, dword [0x14024b448]
mov edx, dword [0x14024b44c]
xor edx, 0xffffffff
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0x5f1025f1
xor ecx, 0x4d409878
xor edx, edx
div ecx
mov rdx, qword [rbp + 0x5a8]
mov ecx, eax
xor ecx, 0x5473b4be
mov r8d, 0x573605bc
xor r8d, 0xa8c9fa43
xor ecx, r8d
or eax, 0x5473b4be
and eax, ecx
and eax, 0xaacf000f
mov ecx, 0xf00c4d9f
xor ecx, 0x6b9afbcd
mov rdx, qword [rdx]
movabs r8, 0x4d79d54c0c1f1a35
movabs r9, 0x4d79d54c0c1f1a34
xor r8, r9
cmp rdx, r8
setl dl
mov byte [rbp + 0x28b], dl
cmp eax, ecx
je 0x14017919f
mov al, byte [rbp + 0x28b]
test al, 1
jne 0x14017564d
jmp 0x1401756c1
mov ecx, dword [rbp + 0x28c]
mov rax, qword [0x140259d18]
mov qword [rbp + 0x930], rax
mov rax, qword [0x140259d20]
mov qword [rbp + 0x938], rax
lea rdx, [rbp + 0x930]
sub rsp, 0x20
call fcn.1400abe10
mov rdx, qword [rbp + 0x650]
mov rcx, qword [rbp + 0x2b8]
mov rax, qword [rbp + 0x2f8]
add rsp, 0x20
mov r8b, byte [rdx]
mov r9b, 0x65
xor r9b, 0x65
mov dl, 1
cmp r8b, r9b
mov byte [rbp + 0x29f], dl
mov qword [rbp + 0x2a0], rcx
mov qword [rbp + 0x2a8], rax
jne 0x1401786a7
mov ecx, dword [rbp + 0x28c]
mov rax, qword [0x140259d18]
mov qword [rbp + 0x920], rax
mov rax, qword [0x140259d20]
mov qword [rbp + 0x928], rax
lea rdx, [rbp + 0x920]
sub rsp, 0x20
call fcn.1400abe10
mov rax, qword [rbp + 0x650]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x59
xor cl, 0x59
cmp al, cl
jne case.0x140178335.9
movabs rcx, 0xd01d48b16be0a6b3
movabs rax, 0xd01d48b16be17273
xor rcx, rax
sub rsp, 0x20
call fcn.14000bbdd
mov r10, qword [rbp + 0x2b8]
mov r9, qword [rbp + 0x2f8]
mov r8, qword [rbp + 0x330]
mov rdx, qword [rbp + 0x320]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x340]
cmp r10, 0
sete r10b
mov byte [rbp + 0x273], r10b
cmp r9, 0
sete r9b
mov byte [rbp + 0x274], r9b
cmp r8, 0
sete r8b
mov byte [rbp + 0x275], r8b
cmp rdx, 0
sete dl
mov byte [rbp + 0x276], dl
cmp rax, 0
sete al
mov byte [rbp + 0x277], al
mov edx, 0x1d4c0
mov al, 1
mov qword [rbp + 0x278], rdx
mov qword [rbp + 0x280], rcx
mov byte [rbp + 0x28a], al
mov rcx, qword [rbp + 0x278]
mov rdx, qword [rbp + 0x280]
mov al, byte [rbp + 0x28a]
mov qword [rbp + 0x260], rdx
mov qword [rbp + 0x268], rcx
mov byte [rbp + 0x272], al
mov r11, qword [rbp + 0x260]
mov rcx, qword [rbp + 0x5a8]
mov r10b, byte [rbp + 0x272]
mov byte [rbp + 0x253], r10b
mov rax, qword [0x14025a808]
mov rax, qword [rax]
mov rcx, qword [rcx]
xor edx, edx
mov r9d, edx
lea rsi, [rbp + 0x9d0]
xor edx, edx
sub rsp, 0x60
mov rdx, r9
mov r8, r9
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x28], r11
mov dword [rsp + 0x30], 0x1d4c0
mov dword [rsp + 0x38], 3
mov dword [rsp + 0x40], 0
mov qword [rsp + 0x48], 0
mov byte [rsp + 0x50], r10b
call rax
mov rcx, qword [rbp + 0x650]
add rsp, 0x60
mov edx, eax
mov rax, qword [rbp + 0x260]
mov dword [rbp + 0x254], edx
cmp byte [rcx], 0
mov qword [rbp + 0x258], rax
jne case.0x140178335.12
mov eax, dword [rbp + 0x254]
mov ecx, 0x9dd7b058
xor ecx, 0x9dd7b15b
cmp eax, ecx
mov dword [rbp + 0x24c], eax
jne 0x140175b84
lea rcx, [rbp + 0x918]
mov edx, 8
sub rsp, 0x20
call fcn.14015930c
mov rcx, qword [rbp + 0x5a8]
add rsp, 0x20
mov qword [rbp + 0x918], 0xffffffffffb3b4c0
mov rax, qword [0x14025a838]
mov rax, qword [rax]
mov rcx, qword [rcx]
mov edx, 1
lea r8, [rbp + 0x918]
sub rsp, 0x20
call rax
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0x650]
mov dword [rbp + 0x248], ecx
cmp byte [rax], 0
jne 0x140175b71
mov eax, dword [rbp + 0x248]
test eax, eax
je 0x140175b60
jmp 0x140175916
mov eax, dword [rbp + 0x248]
sub eax, 0x102
jne 0x140175abf
jmp 0x14017592c
mov eax, dword [0x14024b450]
mov r8d, dword [0x14024b454]
mov ecx, eax
xor ecx, 0xffffffff
mov edx, r8d
and edx, ecx
mov r9d, r8d
xor r9d, 0xffffffff
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
or eax, eax
mov ecx, 0x5d93078c
xor ecx, 0xa26cf873
xor eax, ecx
mov ecx, 0xcd3d20ca
or ecx, 0xcd3d20ca
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x102d9216
xor ecx, 0x102d9216
sub ecx, eax
xor eax, eax
sub eax, 0x211c355a
add ecx, eax
xor eax, eax
sub eax, ecx
or eax, 0x28c9947d
cmp eax, 0xfdb2e61c
ja 0x1401791a8
mov eax, dword [0x14024b458]
add eax, dword [0x14024b45c]
add eax, 0xfb441021
mov ecx, 0xb22d0fe6
xor ecx, 0x15e7f6ac
add eax, ecx
sub eax, 0xfb441021
imul eax, eax, 0xa63edfc1
mov ecx, 0x91a905e2
xor ecx, 0xa4e3ae73
mov edx, 0xb1aab58e
xor edx, 0x4e554a71
xor ecx, edx
add eax, ecx
add eax, 1
mov dword [rbp + 0x244], eax
mov eax, 0xb72bc32
xor eax, 0x6684fbcd
mov dword [rbp + 0x240], eax
movabs rcx, 0xce39c0777e58163f
movabs rax, 0xce39c0777e58167f
xor rcx, rax
movabs rdx, 0xd5ee1e0a1b1cd940
movabs rax, 0xd5ee1e0a1b1cd948
xor rdx, rax
sub rsp, 0x20
call fcn.1400129fd
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x14025a780]
mov qword [rcx], rax
lea rax, [0x140259cd1]
mov qword [rcx + 0x10], rax
mov rax, qword [0x140259d68]
mov qword [rcx + 0x18], rax
mov rax, qword [0x140259d70]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x140259cd1]
lea r8, [0x140259d0a]
lea r9, [0x140259cea]
sub rsp, 0x30
mov qword [rsp + 0x20], 0xfffffffff1a1fcfd
call fcn.140012522
mov ecx, dword [rbp + 0x240]
mov eax, dword [rbp + 0x244]
add rsp, 0x30
cmp eax, ecx
jb 0x1401791a8
jmp 0x140175b71
movabs rcx, 0xc094032659fb13ba
movabs rax, 0xc094032659fb13fa
xor rcx, rax
movabs rdx, 0x69664ecf5014808
movabs rax, 0x69664ecf5014800
xor rdx, rax
sub rsp, 0x20
call fcn.1400129fd
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x14025a780]
mov qword [rcx], rax
lea rax, [0x140259cd1]
mov qword [rcx + 0x10], rax
mov rax, qword [0x140259d68]
mov qword [rcx + 0x18], rax
mov rax, qword [0x140259d70]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x140259cd1]
lea r8, [0x140259d0a]
lea r9, [0x140259cea]
sub rsp, 0x30
mov qword [rsp + 0x20], 0xffffffff925db149
call fcn.140012522
add rsp, 0x30
jmp 0x140175b71
mov eax, dword [rbp + 0x9d0]
mov dword [rbp + 0x24c], eax
jmp 0x140175b84
mov rax, qword [rbp + 0x260]
mov qword [rbp + 0x258], rax
jmp case.0x140178335.12
mov rdx, qword [rbp + 0x418]
mov ecx, dword [rbp + 0x24c]
mov dword [rbp + 0x238], ecx
mov eax, ecx
sub eax, 0x80000005
sete al
test ecx, ecx
sete cl
mov byte [rbp + 0x23f], cl
mov rdx, qword [rdx]
test rdx, rdx
sete dl
and cl, dl
or al, cl
test al, 1
jne 0x140175bc6
jmp 0x140175dde
mov rcx, qword [rbp + 0x268]
mov edx, 2
lea r8, [rbp + 0x910]
sub rsp, 0x20
call fcn.140170148
add rsp, 0x20
test al, 1
jne 0x140175bf3
jmp 0x140175c2c
sub rsp, 0x20
call fcn.140008d37
mov rdx, qword [rbp + 0x268]
mov rcx, qword [rbp + 0x260]
add rsp, 0x20
mov eax, 0xc
mov qword [rbp + 0x220], rdx
mov qword [rbp + 0x228], rcx
mov dword [rbp + 0x234], eax
jmp 0x140175db1
mov rax, qword [rbp + 0x910]
mov qword [rbp + 0x218], rax
cmp rax, 0x100000
jl 0x140175cea
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.1400129fd
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x14025a748]
mov qword [rcx], rax
lea rax, [0x140259c58]
mov qword [rcx + 0x10], rax
mov rax, qword [0x140259d68]
mov qword [rcx + 0x18], rax
mov rax, qword [0x140259d70]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x140259c58]
lea r8, [0x140259d0a]
lea r9, [0x140259cea]
sub rsp, 0x30
mov qword [rsp + 0x20], 0xffffffff945c563e
call fcn.140012522
mov rdx, qword [rbp + 0x268]
mov rcx, qword [rbp + 0x260]
add rsp, 0x30
mov eax, 0xc
mov qword [rbp + 0x220], rdx
mov qword [rbp + 0x228], rcx
mov dword [rbp + 0x234], eax
jmp 0x140175db1
mov rcx, qword [rbp + 0x260]
sub rsp, 0x20
call fcn.14001d422
mov rax, qword [rbp + 0x218]
add rsp, 0x20
cmp rax, 0
jge 0x140175d7a
mov rcx, qword [rbp + 0x218]
movabs rdx, 0x93443aee003dc6b3
movabs rax, 0x93443aee003dc6b3
xor rdx, rax
movabs r8, 0x8e96d31a2c87164f
movabs rax, 0xf1692ce5d378e9b0
xor r8, rax
sub rsp, 0x20
call fcn.14000db87
mov rdx, qword [rbp + 0x218]
add rsp, 0x20
xor eax, eax
mov ecx, eax
mov eax, 0xc
mov qword [rbp + 0x220], rdx
mov qword [rbp + 0x228], rcx
mov dword [rbp + 0x234], eax
jmp 0x140175db1
mov rcx, qword [rbp + 0x218]
sub rsp, 0x20
call fcn.14000bbdd
mov rdx, qword [rbp + 0x218]
add rsp, 0x20
mov rcx, rax
mov eax, 0x15
mov qword [rbp + 0x220], rdx
mov qword [rbp + 0x228], rcx
mov dword [rbp + 0x234], eax
mov rdx, qword [rbp + 0x220]
mov rcx, qword [rbp + 0x228]
mov eax, dword [rbp + 0x234]
mov qword [rbp + 0x200], rdx
mov qword [rbp + 0x208], rcx
mov dword [rbp + 0x214], eax
jmp 0x1401782d4
mov rax, qword [rbp + 0x260]
mov cl, byte [rbp + 0x23f]
test cl, 1
mov qword [rbp + 0x1f8], rax
jne 0x140175e00
jmp 0x140178229
mov rax, qword [rbp + 0x1f8]
mov qword [rbp + 0x1f0], rax
mov eax, dword [0x14024b460]
mov edx, dword [0x14024b464]
xor edx, 0x75ffdca7
mov ecx, edx
and ecx, eax
xor ecx, 0xffffffff
add eax, edx
mov edx, 0xf4933a6b
xor edx, 0xf4933a6a
add eax, edx
add eax, ecx
mov ecx, 0x18eeeedc
xor edx, edx
div ecx
sub eax, 0x99b54037
xor eax, 0xbf82ee89
cmp eax, 0xa91690b
jbe 0x1401791b1
mov eax, dword [0x14024b468]
xor eax, 0x61438112
mov ecx, dword [0x14024b46c]
mov edx, 0x24ac89
xor edx, 0xa2b5f497
xor ecx, edx
xor edx, edx
div ecx
mov rdx, qword [rbp + 0x1f0]
mov ecx, 0x553f6498
xor ecx, 0xe73090b4
sub eax, ecx
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x932c361
add ecx, eax
mov eax, 0x4da68d90
xor eax, 0x4da68d90
sub eax, ecx
or eax, 0x9d1d222e
mov ecx, 0x360cd75f
xor ecx, 0xc690f025
mov r8, rdx
add r8, 0x3c
mov qword [rbp + 0x1e0], r8
cmp dword [rdx + 0x3c], 0
sete dl
mov byte [rbp + 0x1ef], dl
cmp eax, ecx
jae 0x1401791b1
mov al, byte [rbp + 0x1ef]
test al, 1
jne 0x140178156
jmp 0x140175eeb
mov rax, qword [rbp + 0x1f0]
mov rcx, rax
add rcx, 0x38
mov qword [rbp + 0x1d0], rcx
mov ecx, dword [rax + 0x38]
and ecx, 0x10
sub rsp, 0x20
call fcn.1400a24bc
add rsp, 0x20
mov cl, al
mov rax, qword [rbp + 0x650]
mov al, byte [rax]
test al, al
sete al
mov byte [rbp + 0x1df], al
and al, cl
test al, 1
jne 0x140175f38
jmp 0x1401770ae
mov rax, qword [rbp + 0x1e0]
mov eax, dword [rax]
mov dword [rbp + 0x1cc], eax
sub eax, 2
je 0x1401761b8
jmp 0x140175f55
mov eax, dword [rbp + 0x1cc]
sub eax, 4
jne 0x14017623e
jmp 0x140175f69
mov rax, qword [rbp + 0x1f0]
mov rcx, rax
add rcx, 0x5e
mov qword [rbp + 0x1c0], rcx
mov ax, word [rax + 0x5e]
mov word [rbp + 0x1ca], ax
cmp ax, 0xff
jbe 0x140175fdf
mov ax, word [rbp + 0x1ca]
movzx eax, ax
mov ecx, eax
movabs rdx, 0x61b9221bec49bad8
movabs rax, 0x61b9221bec49bad8
xor rdx, rax
movabs r8, 0x902d4e46046feaa
movabs rax, 0x902d4e46046fe55
xor r8, rax
sub rsp, 0x20
call fcn.14000db87
add rsp, 0x20
jmp 0x140177093
mov eax, dword [0x14024b470]
mov ecx, dword [0x14024b474]
add eax, 0xf32cfe0d
add eax, ecx
sub eax, 0xf32cfe0d
mov r8d, 0xffffffff
xor r8d, 0xbe2e8136
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xbe2e8136
or eax, 0xbe2e8136
imul eax, edx
add eax, ecx
sub eax, 0xdb0852d8
mov ecx, 0xd65557f4
xor ecx, 0x8e1b8034
sub eax, ecx
cmp eax, 0x8534dfd6
je 0x1401791ba
mov cx, word [rbp + 0x1ca]
mov eax, dword [0x14024b478]
xor edx, edx
div dword [0x14024b47c]
mov r8d, 0x91acc65
xor edx, edx
div r8d
mov esi, eax
mov eax, 0xb2cebcf3
xor eax, 0x3c2d4bd8
imul esi, eax
mov eax, 0xc6b93914
xor eax, 0x3946c6eb
mov edx, esi
xor edx, eax
mov r8d, 0x9c57a059
xor r8d, 0x5d2faee
mov eax, 0xe695be2d
xor eax, 0x196a41d2
xor r8d, eax
mov r9d, 0xffffffff
xor r9d, 0x8ceade0
mov eax, edx
and eax, 0x8ceade0
and esi, r9d
mov r11d, 0xe8f73615
xor r11d, 0xe0399bf5
mov r10d, r8d
and r10d, r11d
mov r11d, 0xd2aa8592
xor r11d, 0x4b2fdf25
and r11d, r9d
or eax, esi
or r10d, r11d
xor eax, r10d
or edx, r8d
xor edx, 0xffffffff
mov r8d, 0xb4edeb2b
xor r8d, 0xbc2346cb
or r8d, r9d
and edx, r8d
or eax, edx
mov dx, 0xc31c
xor dx, 0xc332
cmp cx, dx
sete cl
mov byte [rbp + 0x1bf], cl
cmp eax, 0xf1e4dbba
je 0x1401791ba
mov al, byte [rbp + 0x1bf]
test al, 1
jne 0x14017612a
jmp 0x14017628d
mov rax, qword [rbp + 0x1c0]
xor ecx, ecx
sub rcx, 2
sub rax, rcx
mov ax, word [rax]
mov word [rbp + 0x1bc], ax
mov cx, 0x2c75
xor cx, 0x2c8a
cmp ax, cx
jbe 0x1401761a2
mov ax, word [rbp + 0x1bc]
movzx eax, ax
mov ecx, eax
movabs rdx, 0x5c08289f0b50ec1a
movabs rax, 0x5c08289f0b50ec1a
xor rdx, rax
movabs r8, 0xdd92521d33e2ac93
movabs rax, 0xdd92521d33e2ac6c
xor r8, rax
sub rsp, 0x20
call fcn.14000db87
add rsp, 0x20
jmp 0x140177093
mov ax, word [rbp + 0x1bc]
cmp ax, 0x2e
je 0x140178079
jmp 0x14017628d
mov rax, qword [rbp + 0x1f0]
mov ax, word [rax + 0x5e]
mov word [rbp + 0x1ba], ax
mov cx, 0x8d9
xor cx, 0x826
cmp ax, cx
jbe 0x140176228
mov ax, word [rbp + 0x1ba]
movzx eax, ax
mov ecx, eax
movabs rdx, 0x810348f4f112f50a
movabs rax, 0x810348f4f112f50a
xor rdx, rax
movabs r8, 0x44b044309e002005
movabs rax, 0x44b044309e0020fa
xor r8, rax
sub rsp, 0x20
call fcn.14000db87
add rsp, 0x20
jmp 0x140177093
mov ax, word [rbp + 0x1ba]
cmp ax, 0x2e
je 0x140178079
jmp 0x14017628d
mov eax, dword [rbp + 0x1cc]
cmp eax, 0xffffffff
jge 0x14017628d
mov eax, dword [rbp + 0x1cc]
mov ecx, 0xc1cb7f60
add ecx, 0
sub ecx, eax
sub ecx, 0xc1cb7f60
shr ecx, 1
xor eax, eax
sub eax, ecx
movsxd rcx, eax
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14000db87
add rsp, 0x20
jmp 0x140177093
mov eax, dword [rbp + 0x1cc]
mov rcx, qword [rbp + 0x1f0]
add rcx, 0x5e
mov qword [rbp + 0x1a0], rcx
mov ecx, 0xe1e624e3
xor ecx, 0xe1e624e1
cdq
idiv ecx
mov rdx, qword [rbp + 0x1a0]
mov eax, eax
mov r8d, eax
lea rcx, [rbp + 0x8d0]
sub rsp, 0x20
call fcn.1400a7cd0
mov rcx, qword [rbp + 0x420]
mov rax, qword [rbp + 0x650]
add rsp, 0x20
mov rdx, qword [rbp + 0x8d0]
mov qword [rbp + 0x1a8], rdx
mov rcx, qword [rcx]
mov qword [rbp + 0x1b0], rcx
mov al, byte [rax]
mov cl, 0xe2
xor cl, 0xe2
cmp al, cl
jne 0x140178143
mov rcx, qword [rbp + 0x5d8]
mov rax, qword [rbp + 0x428]
mov rdx, qword [rbp + 0x1b0]
mov r8, qword [rbp + 0x1a8]
mov qword [rbp + 0x8c0], r8
mov qword [rax], rdx
lea rdx, [rbp + 0x8c0]
sub rsp, 0x20
call fcn.140170330
mov rdx, qword [rbp + 0x5d8]
mov rcx, qword [rbp + 0x430]
mov rax, qword [rbp + 0x650]
add rsp, 0x20
mov rdx, qword [rdx]
mov qword [rbp + 0x188], rdx
mov rcx, qword [rcx]
mov qword [rbp + 0x190], rcx
mov cl, byte [rax]
mov dl, 0x37
xor dl, 0x37
xor eax, eax
cmp cl, dl
mov qword [rbp + 0x198], rax
jne 0x140176eef
mov rcx, qword [rbp + 0x190]
mov rdx, qword [rbp + 0x188]
mov rsi, qword [rbp + 0x450]
mov rbx, qword [rbp + 0x448]
mov rdi, qword [rbp + 0x440]
mov r14, qword [rbp + 0x5e0]
mov rax, qword [rbp + 0x438]
mov byte [rbp + 0x8e0], 1
mov qword [rbp + 0x8b0], rdx
mov qword [rax], rcx
lea rdx, [rbp + 0x8b0]
sub rsp, 0x20
mov rcx, r14
call fcn.14001c002
mov r11, qword [rbp + 0x338]
mov r10, qword [rbp + 0x340]
mov r9, qword [rbp + 0x458]
mov r8, qword [rbp + 0x188]
mov rax, qword [rbp + 0x460]
mov rcx, qword [rbp + 0x5e8]
mov rdx, qword [rbp + 0x190]
add rsp, 0x20
mov r14, qword [r14]
mov rdi, qword [rdi]
mov qword [rbx], r14
mov qword [rsi], rdi
mov qword [rbp + 0x8a0], r11
mov qword [r9], r10
mov qword [rbp + 0x890], r8
mov qword [rax], rdx
lea rdx, [rbp + 0x8a0]
lea r8, [rbp + 0x890]
sub rsp, 0x20
call fcn.1400979bd
mov r8, qword [rbp + 0x5e8]
mov rdx, qword [rbp + 0x468]
mov rcx, qword [rbp + 0x650]
mov rax, qword [rbp + 0x190]
add rsp, 0x20
mov r8, qword [r8]
mov qword [rbp + 0x178], r8
mov rdx, qword [rdx]
mov qword [rbp + 0x180], rdx
cmp byte [rcx], 0
mov qword [rbp + 0x198], rax
jne 0x140176eef
mov rcx, qword [rbp + 0x598]
mov rax, qword [rbp + 0x480]
mov rdx, qword [rbp + 0x478]
mov r8, qword [rbp + 0x180]
mov r9, qword [rbp + 0x470]
mov r10, qword [rbp + 0x178]
mov qword [r9], r10
mov qword [rdx], r8
mov qword [rax], 0
sub rsp, 0x20
lea rdx, [rbp + 0x8e0]
call fcn.1400c7030
mov rcx, qword [rbp + 0x650]
mov rdx, qword [rbp + 0x598]
mov rax, qword [rbp + 0x190]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, byte [rdx]
xor dl, 1
or cl, dl
sete cl
test cl, 1
mov qword [rbp + 0x198], rax
jne 0x140176509
jmp 0x140176eef
mov rax, qword [rbp + 0x488]
mov rcx, qword [rbp + 0x658]
mov rdx, qword [rcx]
mov qword [rbp + 0x880], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x888], rcx
mov rcx, qword [rax]
mov qword [rbp + 0x870], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x878], rax
lea rcx, [rbp + 0x880]
lea rdx, [rbp + 0x870]
sub rsp, 0x20
call fcn.1400c72bf
mov rcx, qword [rbp + 0x650]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x190]
mov qword [rbp + 0x170], rdx
cmp byte [rcx], 0
mov qword [rbp + 0x198], rax
jne 0x140176eef
mov rdx, qword [rbp + 0x170]
movabs rcx, 0xb06b93fb8867648c
movabs rax, 0xb06b93fb8867648c
xor rcx, rax
movabs rax, 0x6fd504b1a7be5e7c
movabs r8, 0x6fd504b1a7be5e7d
xor rax, r8
sub rcx, rax
mov rax, rdx
sub rax, rcx
mov qword [rbp + 0x168], rax
mov r8, rdx
xor r8, 0xffffffffffffffff
movabs rcx, 0x88d7758693189de1
movabs r9, 0x77288a796ce7621e
xor rcx, r9
xor r8, rcx
movabs rcx, 0x9997184745c3c215
movabs r9, 0x6668e7b8ba3c3dea
xor rcx, r9
and rcx, r8
shl rcx, 1
movabs r8, 0x6d543e1768217dc7
movabs r9, 0x92abc1e897de8238
xor r8, r9
sub rcx, r8
sub rdx, rcx
mov rcx, rax
xor rcx, rdx
xor rcx, 0xffffffffffffffff
or rax, rdx
and rax, rcx
cmp rax, 0
jge 0x14017665f
sub rsp, 0x20
call fcn.140008d37
mov rax, qword [rbp + 0x190]
add rsp, 0x20
mov qword [rbp + 0x198], rax
jmp 0x140176eef
mov rax, qword [rbp + 0x168]
cmp rax, 2
jge 0x1401766e4
mov rax, qword [rbp + 0x488]
mov rcx, qword [rax]
mov qword [rbp + 0x850], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x858], rax
lea rcx, [rbp + 0x860]
lea rdx, [rbp + 0x850]
sub rsp, 0x20
call fcn.14001c002
mov rcx, qword [rbp + 0x490]
mov rax, qword [rbp + 0x498]
add rsp, 0x20
mov rdx, qword [rbp + 0x860]
mov rcx, qword [rcx]
mov qword [rbp + 0x840], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0xa48]
lea rdx, [rbp + 0x840]
sub rsp, 0x20
call fcn.14001b440
add rsp, 0x20
mov rax, qword [rbp + 0x190]
mov rcx, qword [rbp + 0x598]
cmp byte [rcx], 1
mov qword [rbp + 0x198], rax
jne 0x140176eef
mov rdx, qword [rbp + 0x598]
mov rcx, qword [rbp + 0x588]
sub rsp, 0x20
call fcn.1400c7030
mov rcx, qword [rbp + 0x650]
mov rax, qword [rbp + 0x190]
add rsp, 0x20
cmp byte [rcx], 0
mov qword [rbp + 0x198], rax
jne 0x140176eef
mov r11d, dword [0x14024b480]
mov r10d, dword [0x14024b484]
mov eax, r11d
xor eax, 0xffffffff
mov ecx, 0xf0ff99f
xor ecx, 0xf0f00660
mov r8d, r10d
xor r8d, ecx
mov edx, 0xffffffff
xor edx, 0xd3d8505c
mov r9d, 0x1d8e0f48
xor r9d, 0xce565f14
mov ecx, eax
and ecx, r9d
and r11d, edx
mov r9d, r8d
and r9d, 0xd3d8505c
and r10d, edx
or ecx, r11d
or r9d, r10d
xor ecx, r9d
or eax, r8d
xor eax, 0xffffffff
or edx, 0xd3d8505c
and eax, edx
or ecx, eax
mov eax, 0xd8aa8e83
xor eax, 0xb975dcb2
imul ecx, eax
mov eax, ecx
and eax, 0x43e0e2b3
mov edx, 0x6ea94e1f
xor edx, 0x2d49acac
xor ecx, edx
or eax, ecx
add eax, 0xccf5047c
mov ecx, 0xf861de7f
xor ecx, 0x7d4ffc7f
cmp eax, ecx
je 0x1401791c3
mov rcx, qword [rbp + 0x598]
mov eax, dword [0x14024b488]
mov edx, dword [0x14024b48c]
sub eax, edx
mov edx, eax
not edx
mov r8d, eax
and r8d, 0x5f3d2a77
and edx, 0xa0c2d588
imul edx, r8d
mov r8d, eax
and r8d, 0xa0c2d588
or eax, 0xa0c2d588
imul eax, r8d
add eax, edx
xor eax, 0xc0150404
or eax, 0x3fe8c3cb
mov dword [rbp + 0x160], eax
sub rsp, 0x20
call fcn.1400c7609
mov rax, qword [rbp + 0x4a0]
mov rcx, qword [rbp + 0x5f0]
add rsp, 0x20
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x7f0], xmm0
sub rsp, 0x20
lea rdx, [rbp + 0x7f0]
call fcn.14001c002
mov rdx, qword [rbp + 0x5f0]
mov rcx, qword [rbp + 0x4a8]
mov rax, qword [rbp + 0x580]
add rsp, 0x20
mov rdx, qword [rdx]
mov qword [rbp + 0x150], rdx
mov rcx, qword [rcx]
mov qword [rbp + 0x158], rcx
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x7d0], xmm0
sub rsp, 0x20
lea rcx, [rbp + 0x7e0]
lea rdx, [rbp + 0x7d0]
call fcn.14001c002
mov rcx, qword [rbp + 0x4b0]
mov r11, qword [rbp + 0x150]
mov r10, qword [rbp + 0x158]
mov r9, qword [rbp + 0x4b8]
mov rax, qword [rbp + 0x4c0]
mov rdx, qword [rbp + 0x5f8]
add rsp, 0x20
mov r8, qword [rbp + 0x7e0]
mov rcx, qword [rcx]
mov qword [rbp + 0x7c0], r11
mov qword [r9], r10
mov qword [rdx], r8
mov qword [rax], rcx
sub rsp, 0x20
lea rcx, [rbp + 0x7c0]
call fcn.140088b60
mov rcx, qword [rbp + 0x650]
add rsp, 0x20
mov dl, al
mov eax, dword [rbp + 0x160]
mov cl, byte [rcx]
test cl, cl
sete cl
and cl, dl
mov byte [rbp + 0x167], cl
cmp eax, 0xdc03f185
jae 0x1401767e1
mov al, byte [rbp + 0x167]
test al, 1
jne 0x14017694e
jmp 0x140176eaf
mov rcx, qword [rbp + 0x4c8]
mov rax, qword [rcx]
mov qword [rbp + 0x810], rax
mov rax, qword [rcx + 8]
mov qword [rbp + 0x818], rax
sub rsp, 0x20
call fcn.140010ae7
mov rcx, qword [rbp + 0x4a0]
add rsp, 0x20
mov rax, qword [rbp + 0x810]
mov qword [rbp + 0x820], rax
mov rax, qword [rbp + 0x818]
mov qword [rbp + 0x828], rax
mov rax, qword [rcx]
mov qword [rbp + 0x800], rax
mov rax, qword [rcx + 8]
mov qword [rbp + 0x808], rax
sub rsp, 0x20
call fcn.140010ae7
mov rax, qword [rbp + 0x4d0]
mov rdx, qword [rbp + 0x648]
add rsp, 0x20
mov rcx, qword [rbp + 0x800]
mov qword [rax], rcx
mov rcx, qword [rbp + 0x808]
mov qword [rax + 8], rcx
lea rcx, [rbp + 0x820]
sub rsp, 0x20
call fcn.1401792b0
mov rax, qword [rbp + 0x650]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140176ee1
mov rax, qword [rbp + 0x1b0]
cmp rax, 0
je 0x140176a46
mov rcx, qword [rbp + 0x1b0]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x140176a46
mov rcx, qword [rbp + 0x1b0]
sub rsp, 0x20
call fcn.14000f4df
add rsp, 0x20
mov rax, qword [rbp + 0x190]
cmp rax, 0
je 0x140176a9f
mov rcx, qword [rbp + 0x190]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
movabs rcx, 0xa401614100537956
movabs rdx, 0xa401614100537956
xor rcx, rdx
cmp rax, rcx
jne 0x140176a9f
mov rcx, qword [rbp + 0x190]
sub rsp, 0x20
call fcn.14000f4df
add rsp, 0x20
mov rcx, qword [rbp + 0x260]
sub rsp, 0x20
call fcn.14001d422
mov rax, qword [rbp + 0x5a8]
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp + 0x148], rax
movabs rcx, 0x4a39a646bcb0352
movabs rdx, 0x4a39a646bcb0352
xor rcx, rdx
cmp rax, rcx
jle 0x140176b17
mov rcx, qword [rbp + 0x148]
mov rax, qword [0x14025a7c0]
sub rsp, 0x20
call qword [rax]
mov rcx, qword [rbp + 0x650]
add rsp, 0x20
mov eax, 7
cmp byte [rcx], 0
mov dword [rbp + 0x144], eax
jne 0x140176ec2
mov al, byte [rbp + 0x273]
test al, 1
jne 0x140176b6f
jmp 0x140176b2a
mov rax, qword [rbp + 0x2b8]
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 0x140176b6f
mov rcx, qword [rbp + 0x2b8]
sub rsp, 0x20
call fcn.14000f4df
add rsp, 0x20
mov al, byte [rbp + 0x274]
test al, 1
jne 0x140176bc7
jmp 0x140176b82
mov rax, qword [rbp + 0x2f8]
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 0x140176bc7
mov rcx, qword [rbp + 0x2f8]
sub rsp, 0x20
call fcn.14000f4df
add rsp, 0x20
mov al, byte [rbp + 0x275]
test al, 1
jne 0x140176c41
jmp 0x140176bda
mov rax, qword [rbp + 0x330]
mov rax, qword [rax]
or rax, rax
xor rax, 0xffffffffffffffff
movabs rcx, 0x4000000000000000
movabs rdx, 0x4000000000000000
or rcx, rdx
xor rcx, 0xffffffffffffffff
or rax, rcx
movabs rcx, 0xdb3b96d095ce411b
movabs rdx, 0x24c4692f6a31bee4
xor rcx, rdx
xor rax, rcx
cmp rax, 0
jne 0x140176c41
mov rcx, qword [rbp + 0x330]
sub rsp, 0x20
call fcn.14000f4df
add rsp, 0x20
mov al, byte [rbp + 0x276]
test al, 1
jne 0x140176ca9
jmp 0x140176c54
mov rax, qword [rbp + 0x320]
mov rax, qword [rax]
or rax, rax
xor rax, 0xffffffffffffffff
movabs rcx, 0x4000000000000000
movabs rdx, 0x4000000000000000
or rcx, rdx
xor rcx, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jne 0x140176ca9
mov rcx, qword [rbp + 0x320]
sub rsp, 0x20
call fcn.14000f4df
add rsp, 0x20
mov rcx, qword [rbp + 0x598]
sub rsp, 0x20
call fcn.1400c7640
mov rcx, qword [rbp + 0x650]
add rsp, 0x20
mov eax, 0x2a
cmp byte [rcx], 0
mov dword [rbp + 0x144], eax
jne 0x140176ec2
mov al, byte [rbp + 0x277]
test al, 1
jne 0x140176d4d
jmp 0x140176ceb
mov rax, qword [rbp + 0x340]
mov rcx, qword [rax]
movabs rdx, 0xe1345a43cef6d2
movabs rax, 0x40e1345a43cef6d2
xor rdx, rax
movabs rax, 0xfdb9cb0f0fa21ae8
movabs r8, 0x24634f0f05de517
xor rax, r8
xor rdx, rax
mov rax, rcx
xor rax, rdx
and rax, rcx
cmp rax, 0
jne 0x140176d4d
mov rcx, qword [rbp + 0x340]
sub rsp, 0x20
call fcn.14000f4df
add rsp, 0x20
mov rcx, qword [rbp + 0x600]
mov rax, qword [rbp + 0xa48]
mov qword [rcx], rax
mov rax, qword [rbp + 0xa50]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.1400180fc
mov rcx, qword [rbp + 0x588]
call fcn.1400c7640
mov rax, qword [rbp + 0x650]
add rsp, 0x20
mov cl, byte [rax]
mov dl, 0x9b
xor dl, 0x9b
mov eax, 0x2b
cmp cl, dl
mov dword [rbp + 0x144], eax
jne 0x140176ec2
mov rax, qword [rbp + 0x4d8]
mov rcx, qword [rax]
mov qword [rbp + 0x138], rcx
mov eax, 0x2c
cmp rcx, 0
mov dword [rbp + 0x144], eax
je 0x140176ec2
mov rax, qword [rbp + 0x138]
mov rcx, qword [rax]
movabs rax, 0x95383d8946467a87
movabs rdx, 0xd5383d8946467a87
xor rax, rdx
and rcx, rax
mov eax, 0x2c
cmp rcx, 0
mov dword [rbp + 0x144], eax
jne 0x140176ec2
mov eax, dword [0x14024b490]
xor eax, dword [0x14024b494]
or eax, 0x909d9622
and eax, 0xa16fcf62
mov ecx, 0x91ae828c
xor ecx, 0x9067f897
sub eax, ecx
cmp eax, 0x927c6909
je 0x1401791cc
mov rcx, qword [rbp + 0x138]
mov eax, dword [0x14024b498]
mov r8d, dword [0x14024b49c]
xor r8d, 0x4d0ecfb1
xor edx, edx
div r8d
mov edx, eax
mov r8d, 0xffffffff
xor r8d, 0x20c7c811
mov eax, edx
xor eax, r8d
and eax, edx
xor eax, 0x5ee6f11b
mov edx, 0xffffffff
xor edx, 0xd3a88be3
add eax, edx
add eax, 1
mov dword [rbp + 0x134], eax
sub rsp, 0x20
call fcn.14000f4df
mov eax, dword [rbp + 0x134]
add rsp, 0x20
cmp eax, 0x69bf2f47
je 0x140176e30
mov eax, 0x2c
mov dword [rbp + 0x144], eax
jmp 0x140176ec2
mov rax, qword [rbp + 0x190]
mov qword [rbp + 0x198], rax
jmp 0x140176eef
mov rax, qword [rbp + 0x1f0]
mov ecx, dword [rbp + 0x144]
mov dword [rbp + 0x124], ecx
mov qword [rbp + 0x128], rax
jmp 0x1401781ce
mov rax, qword [rbp + 0x190]
mov qword [rbp + 0x198], rax
mov rax, qword [rbp + 0x1b0]
mov rcx, qword [rbp + 0x198]
mov qword [rbp + 0x118], rcx
cmp rax, 0
je 0x140176f86
mov rax, qword [rbp + 0x1b0]
mov rax, qword [rax]
movabs rdx, 0x4000000000000000
mov rcx, rax
xor rcx, rdx
movabs rdx, 0xfdca87cfd016d62c
movabs r8, 0x23578302fe929d3
xor rdx, r8
xor rcx, rdx
movabs rdx, 0x4000000000000000
or rax, rdx
and rax, rcx
movabs rcx, 0x2b75cacff9b31b38
movabs rdx, 0x2b75cacff9b31b38
xor rcx, rdx
cmp rax, rcx
jne 0x140176f86
mov rcx, qword [rbp + 0x1b0]
sub rsp, 0x20
call fcn.14000f4df
add rsp, 0x20
mov rax, qword [rbp + 0x118]
cmp rax, 0
je 0x140177093
mov rax, qword [rbp + 0x118]
mov rax, qword [rax]
movabs rcx, 0x1e0d603bd7dcbc1f
movabs rdx, 0x5e0d603bd7dcbc1f
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x140177093
mov ecx, dword [str.Rxg]
mov eax, dword [0x14024b4a4]
mov edx, 0x52ba575f
xor edx, 0xf686e5c8
xor eax, edx
imul ecx, eax
or ecx, 0x3a861871
mov eax, ecx
and eax, 0xaf4891ca
xor ecx, 0xaf4891ca
or eax, ecx
and eax, 0xefce75be
cmp eax, 0xdba11b23
je 0x1401791d5
mov rcx, qword [rbp + 0x118]
mov edx, dword [0x14024b4a8]
xor edx, 0xbdc5d90f
or edx, dword [0x14024b4ac]
mov eax, 0xa4c32d5d
xor eax, 0x5b3cd2a2
xor edx, eax
mov r8d, 0xffffffff
xor r8d, 0x963c6f87
mov eax, 0xffffffff
xor eax, 0xc52713aa
or edx, r8d
or eax, 0xc52713aa
xor edx, 0xffffffff
and edx, eax
mov eax, 0x490a7b17
xor eax, 0xc38e8e08
xor edx, eax
mov eax, edx
and eax, 0xc4ea5c79
xor edx, 0xc4ea5c79
or eax, edx
mov dword [rbp + 0x114], eax
sub rsp, 0x20
call fcn.14000f4df
mov eax, dword [rbp + 0x114]
add rsp, 0x20
cmp eax, 0x18198b1c
je 0x140177006
jmp 0x140177093
mov rax, qword [rbp + 0x650]
mov al, byte [rax]
mov cl, 0x54
xor cl, 0x54
cmp al, cl
jne 0x140178143
jmp 0x1401770e8
mov rax, qword [rbp + 0x1f0]
mov dl, byte [rbp + 0x1df]
mov ecx, 0xc
mov r8d, 0x1b
test dl, 1
cmovne ecx, r8d
test dl, 1
mov dword [rbp + 0x124], ecx
mov qword [rbp + 0x128], rax
jne 0x1401770e8
jmp 0x1401781ce
mov eax, dword [str.Q_]
xor eax, 0x2d5e3609
mov edx, dword [0x14024b4b4]
mov r8d, eax
xor r8d, edx
xor r8d, 0xffffffff
mov ecx, edx
and ecx, r8d
shl ecx, 1
sub ecx, edx
sub eax, ecx
mov ecx, 0x92dd0f16
xor ecx, 0x887cf724
imul eax, ecx
add eax, 0x70f7910b
sub eax, 0x6a72deb9
sub eax, 0x70f7910b
mov ecx, 0x4defbd6e
xor ecx, 0x939a9723
sub eax, ecx
cmp eax, 0x81794781
je 0x1401791de
mov rax, qword [rbp + 0x1d0]
mov edx, dword [0x14024b4b8]
mov ecx, dword [0x14024b4bc]
xor ecx, edx
xor ecx, 0x764ac0ee
add ecx, 0xc1c1ab81
mov edx, 0xf487dcaf
imul rcx, rdx
shr rcx, 0x3e
or ecx, 0x77cd4075
mov dword [rbp + 0x10c], ecx
mov ecx, dword [rax]
not ecx
and ecx, 0x10
sub rsp, 0x20
call fcn.1400a24bc
mov rcx, qword [rbp + 0x650]
add rsp, 0x20
mov dl, al
mov eax, dword [rbp + 0x10c]
mov cl, byte [rcx]
test cl, cl
sete cl
mov byte [rbp + 0x112], cl
and cl, dl
mov byte [rbp + 0x113], cl
cmp eax, 0xf6bda25e
je 0x140177144
mov al, byte [rbp + 0x113]
test al, 1
jne 0x1401771d4
jmp 0x140178032
mov rax, qword [rbp + 0x1e0]
mov eax, dword [rax]
mov dword [rbp + 0x108], eax
cmp eax, 0xffffffff
jge 0x140177248
mov eax, dword [rbp + 0x108]
xor ecx, ecx
sub ecx, eax
shr ecx, 1
mov eax, 0xb0f2806f
xor eax, 0xb0f2806f
sub eax, ecx
movsxd rcx, eax
movabs rdx, 0x5480629af8d752f
movabs rax, 0x5480629af8d752f
xor rdx, rax
movabs r8, 0xb9994c0faeb4bfba
movabs rax, 0xc666b3f0514b4045
xor r8, rax
sub rsp, 0x20
call fcn.14000db87
add rsp, 0x20
jmp 0x140178004
mov eax, dword [rbp + 0x108]
mov rcx, qword [rbp + 0x1f0]
add rcx, 0x5e
mov qword [rbp + 0xf0], rcx
mov ecx, 2
cdq
idiv ecx
mov rdx, qword [rbp + 0xf0]
mov eax, eax
mov r8d, eax
lea rcx, [rbp + 0x780]
sub rsp, 0x20
call fcn.1400a7cd0
mov rcx, qword [rbp + 0x4e0]
mov rax, qword [rbp + 0x650]
add rsp, 0x20
mov rdx, qword [rbp + 0x780]
mov qword [rbp + 0xf8], rdx
mov rcx, qword [rcx]
mov qword [rbp + 0x100], rcx
cmp byte [rax], 0
jne 0x14017801a
mov rcx, qword [rbp + 0x608]
mov rax, qword [rbp + 0x4e8]
mov rdx, qword [rbp + 0x100]
mov r8, qword [rbp + 0xf8]
mov qword [rbp + 0x770], r8
mov qword [rax], rdx
lea rdx, [rbp + 0x770]
sub rsp, 0x20
call fcn.140170330
mov rdx, qword [rbp + 0x608]
mov rax, qword [rbp + 0x4f0]
mov rcx, qword [rbp + 0x650]
add rsp, 0x20
mov rdx, qword [rdx]
mov qword [rbp + 0xd8], rdx
mov rax, qword [rax]
mov qword [rbp + 0xe0], rax
xor eax, eax
cmp byte [rcx], 0
mov qword [rbp + 0xe8], rax
jne 0x140177f29
mov rcx, qword [rbp + 0xe0]
mov rdx, qword [rbp + 0xd8]
mov rsi, qword [rbp + 0x510]
mov rbx, qword [rbp + 0x508]
mov rdi, qword [rbp + 0x500]
mov rax, qword [rbp + 0x4f8]
mov r8b, 0xab
xor r8b, 0xab
mov byte [rbp + 0x790], r8b
mov qword [rbp + 0x750], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x760]
lea rdx, [rbp + 0x750]
sub rsp, 0x20
call fcn.14001c002
mov r11, qword [rbp + 0x338]
mov r10, qword [rbp + 0x340]
mov r9, qword [rbp + 0x518]
mov r8, qword [rbp + 0xd8]
mov rax, qword [rbp + 0x520]
mov rdx, qword [rbp + 0x610]
mov rcx, qword [rbp + 0xe0]
add rsp, 0x20
mov r14, qword [rbp + 0x760]
mov rdi, qword [rdi]
mov qword [rbx], r14
mov qword [rsi], rdi
mov qword [rdx], r11
mov qword [r9], r10
mov qword [rbp + 0x730], r8
mov qword [rax], rcx
lea rcx, [rbp + 0x740]
lea r8, [rbp + 0x730]
sub rsp, 0x20
call fcn.1400979bd
mov rdx, qword [rbp + 0x528]
mov rcx, qword [rbp + 0x650]
mov rax, qword [rbp + 0xe0]
add rsp, 0x20
mov r8, qword [rbp + 0x740]
mov qword [rbp + 0xc8], r8
mov rdx, qword [rdx]
mov qword [rbp + 0xd0], rdx
mov cl, byte [rcx]
mov dl, 0x4c
xor dl, 0x4c
cmp cl, dl
mov qword [rbp + 0xe8], rax
jne 0x140177f29
mov rcx, qword [rbp + 0x598]
mov rax, qword [rbp + 0x540]
mov rdx, qword [rbp + 0x1f0]
mov r8, qword [rbp + 0x538]
mov r9, qword [rbp + 0xd0]
mov r10, qword [rbp + 0x530]
mov r11, qword [rbp + 0xc8]
mov qword [r10], r11
mov qword [r8], r9
mov rdx, qword [rdx + 0x28]
mov qword [rax], rdx
sub rsp, 0x20
lea rdx, [rbp + 0x790]
call fcn.1400c7030
mov rcx, qword [rbp + 0x650]
mov rdx, qword [rbp + 0x598]
mov rax, qword [rbp + 0xe0]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, byte [rdx]
xor dl, 1
or cl, dl
sete cl
test cl, 1
mov qword [rbp + 0xe8], rax
jne 0x1401774c0
jmp 0x140177f29
mov rdx, qword [rbp + 0x618]
mov rax, qword [rbp + 0x488]
mov rcx, qword [rbp + 0x658]
mov r8, qword [rcx]
mov qword [rbp + 0x720], r8
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x728], rcx
mov rcx, qword [rax]
mov qword [rdx], rcx
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x720]
sub rsp, 0x20
call fcn.1400c72bf
mov rcx, qword [rbp + 0x650]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0xc0], rdx
cmp byte [rcx], 0
mov qword [rbp + 0xe8], rax
jne 0x140177f29
mov rcx, qword [rbp + 0xc0]
xor eax, eax
mov edx, eax
sub rdx, 1
mov rax, rcx
sub rax, rdx
mov qword [rbp + 0xb8], rax
mov rdx, rcx
xor rdx, 0xffffffffffffffff
and rdx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rcx, r8
or rdx, rcx
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
or rax, rdx
add rax, rcx
cmp rax, 0
jge 0x1401775a7
sub rsp, 0x20
call fcn.140008d37
mov rax, qword [rbp + 0xe0]
add rsp, 0x20
mov qword [rbp + 0xe8], rax
jmp 0x140177f29
mov rax, qword [rbp + 0xb8]
cmp rax, 2
jge 0x140177628
mov rax, qword [rbp + 0x488]
mov rcx, qword [rax]
mov qword [rbp + 0x700], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x708], rax
lea rcx, [rbp + 0x710]
lea rdx, [rbp + 0x700]
sub rsp, 0x20
call fcn.14001c002
mov rcx, qword [rbp + 0x548]
mov rax, qword [rbp + 0x550]
mov rdx, qword [rbp + 0x620]
add rsp, 0x20
mov r8, qword [rbp + 0x710]
mov rcx, qword [rcx]
mov qword [rdx], r8
mov qword [rax], rcx
lea rcx, [rbp + 0xa48]
sub rsp, 0x20
call fcn.14001b440
add rsp, 0x20
mov rax, qword [rbp + 0xe0]
mov rcx, qword [rbp + 0x598]
cmp byte [rcx], 1
mov qword [rbp + 0xe8], rax
jne 0x140177f29
mov rdx, qword [rbp + 0x598]
mov rcx, qword [rbp + 0x588]
sub rsp, 0x20
call fcn.1400c7030
mov rcx, qword [rbp + 0x650]
mov rax, qword [rbp + 0xe0]
add rsp, 0x20
cmp byte [rcx], 0
mov qword [rbp + 0xe8], rax
jne 0x140177f29
mov rcx, qword [rbp + 0x598]
sub rsp, 0x20
call fcn.1400c7609
mov rax, qword [rbp + 0x4a0]
add rsp, 0x20
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x6c0], xmm0
sub rsp, 0x20
lea rcx, [rbp + 0x6d0]
lea rdx, [rbp + 0x6c0]
call fcn.14001c002
mov rdx, qword [rbp + 0x558]
mov rax, qword [rbp + 0x580]
mov rcx, qword [rbp + 0x638]
add rsp, 0x20
mov r8, qword [rbp + 0x6d0]
mov qword [rbp + 0xa8], r8
mov rdx, qword [rdx]
mov qword [rbp + 0xb0], rdx
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x6b0], xmm0
sub rsp, 0x20
lea rdx, [rbp + 0x6b0]
call fcn.14001c002
mov r8, qword [rbp + 0x638]
mov rcx, qword [rbp + 0x560]
mov r11, qword [rbp + 0xa8]
mov r10, qword [rbp + 0xb0]
mov r9, qword [rbp + 0x568]
mov rax, qword [rbp + 0x570]
mov rdx, qword [rbp + 0x640]
add rsp, 0x20
mov r8, qword [r8]
mov rcx, qword [rcx]
mov qword [rbp + 0x6a0], r11
mov qword [r9], r10
mov qword [rdx], r8
mov qword [rax], rcx
sub rsp, 0x20
lea rcx, [rbp + 0x6a0]
call fcn.140088b60
add rsp, 0x20
mov cl, al
mov rax, qword [rbp + 0x650]
mov al, byte [rax]
test al, al
sete al
and al, cl
test al, 1
jne 0x140177784
jmp 0x140177ee9
mov rcx, qword [rbp + 0x4c8]
mov rax, qword [rcx]
mov qword [rbp + 0x6f0], rax
mov rax, qword [rcx + 8]
mov qword [rbp + 0x6f8], rax
sub rsp, 0x20
call fcn.140010ae7
mov rcx, qword [rbp + 0x4a0]
mov rax, qword [rbp + 0x628]
add rsp, 0x20
mov rdx, qword [rbp + 0x6f0]
mov qword [rax], rdx
mov rdx, qword [rbp + 0x6f8]
mov qword [rax + 8], rdx
mov rax, qword [rcx]
mov qword [rbp + 0x6e0], rax
mov rax, qword [rcx + 8]
mov qword [rbp + 0x6e8], rax
sub rsp, 0x20
call fcn.140010ae7
mov rax, qword [rbp + 0x578]
mov rcx, qword [rbp + 0x628]
mov rdx, qword [rbp + 0x648]
add rsp, 0x20
mov r8, qword [rbp + 0x6e0]
mov qword [rax], r8
mov r8, qword [rbp + 0x6e8]
mov qword [rax + 8], r8
sub rsp, 0x20
call fcn.1401792b0
mov rax, qword [rbp + 0x650]
add rsp, 0x20
mov al, byte [rax]
mov cl, 7
xor cl, 7
cmp al, cl
jne 0x140177f1b
mov rax, qword [rbp + 0x100]
cmp rax, 0
je 0x140177956
mov eax, dword [0x14024b4c0]
imul eax, dword [0x14024b4c4]
add eax, 0xcd92991b
xor ecx, ecx
sub ecx, 0xef7b3b3d
add eax, ecx
sub eax, 0xbec24c2e
sub eax, 0x2813b8cb
add eax, 0xbec24c2e
cmp eax, 0x662fde7c
jb 0x1401791e7
mov r8, qword [rbp + 0x100]
mov eax, dword [0x14024b4c8]
mov ecx, 0x802f9851
xor ecx, 0x3d335b18
xor eax, ecx
xor edx, edx
div dword [0x14024b4cc]
mov r9d, 0xee9b6237
xor r9d, 0xf330b514
mov ecx, 0xadae070b
xor ecx, 0x5251f8f4
xor r9d, ecx
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x1dabd723
mov r9d, 0x86a4065d
xor r9d, 0x9b0fd17e
or eax, r9d
imul eax, edx
add eax, ecx
sub eax, 0xbd92dee0
mov ecx, 0x9003de5a
xor ecx, 0x6e83601b
or eax, ecx
mov ecx, 0xe23fc8ac
xor ecx, 0xa7870d3e
movabs rdx, 0x4000000000000000
and rdx, qword [r8]
cmp rdx, 0
sete dl
mov byte [rbp + 0xa7], dl
cmp eax, ecx
jbe 0x140177886
mov al, byte [rbp + 0xa7]
test al, 1
jne 0x140177942
jmp 0x140177956
mov rcx, qword [rbp + 0x100]
sub rsp, 0x20
call fcn.14000f4df
add rsp, 0x20
mov rax, qword [rbp + 0xe0]
cmp rax, 0
je 0x1401779a9
mov rax, qword [rbp + 0xe0]
mov rax, qword [rax]
movabs rcx, 0x699aa26535ae35f2
movabs rdx, 0x299aa26535ae35f2
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x1401779a9
mov rcx, qword [rbp + 0xe0]
sub rsp, 0x20
call fcn.14000f4df
add rsp, 0x20
mov ecx, dword [0x14024b4d0]
xor ecx, 0x36b1dc65
mov edx, dword [0x14024b4d4]
mov r8d, 0x6f782b1a
xor r8d, 0x9087d4e5
mov eax, ecx
xor eax, r8d
mov r8d, edx
xor r8d, 0xffffffff
and eax, r8d
or ecx, edx
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0x5c546f7
xor edx, edx
div ecx
sub eax, 0x82176a9a
add eax, 0x6284b5cd
cmp eax, 0xf2c330b
je 0x1401791f0
mov rcx, qword [rbp + 0x260]
mov eax, dword [str.8A_ff]
xor eax, 0x430f6e3a
xor eax, dword [0x14024b4dc]
or eax, 0x1f6924f0
mov edx, 0xb77cac57
xor edx, 0xb77cac57
mov r8d, 0xff45671f
xor r8d, 0x70bac994
sub edx, r8d
sub eax, edx
or eax, 0x4bf9f04f
mov dword [rbp + 0x94], eax
sub rsp, 0x20
call fcn.14001d422
mov rcx, qword [rbp + 0x5a8]
mov eax, dword [rbp + 0x94]
add rsp, 0x20
mov rcx, qword [rcx]
mov qword [rbp + 0x98], rcx
cmp rcx, 0
setg cl
mov byte [rbp + 0xa6], cl
cmp eax, 0xea6411d7
je 0x1401791f0
mov al, byte [rbp + 0xa6]
test al, 1
jne 0x140177a93
jmp 0x140177ac6
mov rcx, qword [rbp + 0x98]
mov rax, qword [0x14025a7c0]
sub rsp, 0x20
call qword [rax]
mov rcx, qword [rbp + 0x650]
add rsp, 0x20
mov eax, 7
cmp byte [rcx], 0
mov dword [rbp + 0x90], eax
jne 0x140177efc
mov al, byte [rbp + 0x273]
test al, 1
jne 0x140177b34
jmp 0x140177ad9
mov rax, qword [rbp + 0x2b8]
mov rcx, qword [rax]
mov rdx, 0xffffffffffffffff
movabs rax, 0x4000000000000000
xor rdx, rax
mov rax, rcx
xor rax, rdx
and rax, rcx
movabs rcx, 0xaa434d81fe4197a
movabs rdx, 0xaa434d81fe4197a
xor rcx, rdx
cmp rax, rcx
jne 0x140177b34
mov rcx, qword [rbp + 0x2b8]
sub rsp, 0x20
call fcn.14000f4df
add rsp, 0x20
mov al, byte [rbp + 0x274]
test al, 1
jne 0x140177bc8
jmp 0x140177b47
mov rax, qword [rbp + 0x2f8]
mov rax, qword [rax]
xor rax, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
movabs rcx, 0x4000000000000000
xor rdx, rcx
mov rcx, 0xffffffffffffffff
movabs r8, 0x50f352ff75b68e5d
xor rcx, r8
or rax, rdx
movabs rdx, 0x50f352ff75b68e5d
or rcx, rdx
movabs rdx, 0x3bd7e7f6029dd409
movabs r8, 0xc4281809fd622bf6
xor rdx, r8
xor rax, rdx
and rax, rcx
cmp rax, 0
jne 0x140177bc8
mov rcx, qword [rbp + 0x2f8]
sub rsp, 0x20
call fcn.14000f4df
add rsp, 0x20
mov al, byte [rbp + 0x275]
test al, 1
jne 0x140177c34
jmp 0x140177bdb
mov rax, qword [rbp + 0x330]
mov rax, qword [rax]
movabs rdx, 0x4000000000000000
mov rcx, rax
xor rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0xdadac34ba02e80d9
movabs r8, 0x9adac34ba02e80d9
xor rdx, r8
or rax, rdx
and rax, rcx
cmp rax, 0
jne 0x140177c34
mov rcx, qword [rbp + 0x330]
sub rsp, 0x20
call fcn.14000f4df
add rsp, 0x20
mov al, byte [rbp + 0x276]
test al, 1
jne 0x140177cbf
jmp 0x140177c47
mov rax, qword [rbp + 0x320]
mov rax, qword [rax]
xor rax, 0xffffffffffffffff
mov rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
xor rcx, rdx
mov rdx, 0xffffffffffffffff
movabs r8, 0x737e89bf8b72b7d5
xor rdx, r8
or rax, rcx
movabs rcx, 0xdf129cfc5d4e9848
movabs r8, 0xac6c1543d63c2f9d
xor rcx, r8
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jne 0x140177cbf
mov rcx, qword [rbp + 0x320]
sub rsp, 0x20
call fcn.14000f4df
add rsp, 0x20
mov rcx, qword [rbp + 0x598]
sub rsp, 0x20
call fcn.1400c7640
mov rax, qword [rbp + 0x650]
add rsp, 0x20
mov cl, byte [rax]
mov dl, 0x19
xor dl, 0x19
mov eax, 0x2a
cmp cl, dl
mov dword [rbp + 0x90], eax
jne 0x140177efc
mov eax, dword [0x14024b4e0]
sub eax, dword [0x14024b4e4]
xor eax, 0xffffffff
mov edx, 0xe6b9c862
xor edx, 0x70669679
mov ecx, 0x4acff603
xor ecx, 0xb53009fc
xor edx, ecx
mov ecx, 0x974e3e6e
xor ecx, 0x9b2a108f
mov r8d, 0x1b0371bd
xor r8d, 0xe4fc8e42
xor ecx, r8d
or eax, edx
or ecx, 0xc642ee1
xor eax, 0xffffffff
and eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x962960be
mov edx, 0xffffffff
xor edx, 0x962960be
and eax, edx
sub eax, ecx
mov ecx, 0x986f0529
xor edx, edx
div ecx
cmp eax, 0xc4685d92
ja 0x1401791f9
mov r8d, dword [0x14024b4e8]
mov eax, dword [0x14024b4ec]
xor eax, 0x9ae75b47
or r8d, eax
mov ecx, r8d
xor ecx, 0xffffffff
mov eax, 0xcdfa9ba6
xor eax, 0x732a056
and eax, ecx
mov edx, 0xffffffff
xor edx, 0xcac83bf0
and r8d, edx
mov ecx, 0xffffffff
xor ecx, 0x3aabb694
and ecx, 0xcac83bf0
and edx, 0x3aabb694
or eax, r8d
or ecx, edx
xor eax, ecx
and eax, 0x957abcbc
imul eax, eax, 0x824a3914
cmp eax, 0x21155b0e
jb 0x1401791f9
mov al, byte [rbp + 0x277]
test al, 1
jne 0x140177e1f
jmp 0x140177ded
mov rcx, qword [rbp + 0x340]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x140177e1f
mov rcx, qword [rbp + 0x340]
sub rsp, 0x20
call fcn.14000f4df
add rsp, 0x20
mov rax, qword [rbp + 0xa48]
mov qword [rbp + 0x690], rax
mov rax, qword [rbp + 0xa50]
mov qword [rbp + 0x698], rax
lea rcx, [rbp + 0x690]
sub rsp, 0x20
call fcn.1400180fc
mov rcx, qword [rbp + 0x588]
call fcn.1400c7640
mov rcx, qword [rbp + 0x650]
add rsp, 0x20
mov eax, 0x2b
cmp byte [rcx], 0
mov dword [rbp + 0x90], eax
jne 0x140177efc
mov rax, qword [rbp + 0x4d8]
mov rcx, qword [rax]
mov qword [rbp + 0x88], rcx
mov eax, 0x2c
cmp rcx, 0
mov dword [rbp + 0x90], eax
je 0x140177efc
mov rax, qword [rbp + 0x88]
movabs rcx, 0x4000000000000000
and rcx, qword [rax]
mov eax, 0x2c
cmp rcx, 0
mov dword [rbp + 0x90], eax
jne 0x140177efc
mov rcx, qword [rbp + 0x88]
sub rsp, 0x20
call fcn.14000f4df
add rsp, 0x20
mov eax, 0x2c
mov dword [rbp + 0x90], eax
jmp 0x140177efc
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0xe8], rax
jmp 0x140177f29
mov rax, qword [rbp + 0x1f0]
mov ecx, dword [rbp + 0x90]
mov dword [rbp + 0x124], ecx
mov qword [rbp + 0x128], rax
jmp 0x1401781ce
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0xe8], rax
mov rax, qword [rbp + 0x100]
mov rcx, qword [rbp + 0xe8]
mov qword [rbp + 0x80], rcx
cmp rax, 0
je 0x140177fa3
mov rax, qword [rbp + 0x100]
mov rcx, qword [rax]
mov rdx, 0xffffffffffffffff
movabs rax, 0x4000000000000000
xor rdx, rax
mov rax, rcx
xor rax, rdx
and rax, rcx
movabs rcx, 0xcb548e4a87a6f0e
movabs rdx, 0xcb548e4a87a6f0e
xor rcx, rdx
cmp rax, rcx
jne 0x140177fa3
mov rcx, qword [rbp + 0x100]
sub rsp, 0x20
call fcn.14000f4df
add rsp, 0x20
mov rax, qword [rbp + 0x80]
cmp rax, 0
je 0x140178004
mov rax, qword [rbp + 0x80]
mov rax, qword [rax]
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
movabs rdx, 0x2d53ebf7b4c3f7e5
movabs r8, 0x6d53ebf7b4c3f7e5
xor rdx, r8
or rax, rdx
add rax, rcx
cmp rax, 0
jne 0x140178004
mov rcx, qword [rbp + 0x80]
sub rsp, 0x20
call fcn.14000f4df
add rsp, 0x20
mov rax, qword [rbp + 0x650]
mov al, byte [rax]
mov cl, 0x2e
xor cl, 0x2e
cmp al, cl
je 0x14017802d
mov rax, qword [rbp + 0x260]
mov qword [rbp + 0x258], rax
jmp case.0x140178335.12
jmp 0x140178156
mov rax, qword [rbp + 0x1f0]
mov dl, byte [rbp + 0x112]
mov r8d, 0xa62295e2
xor r8d, 0xa62295cf
mov ecx, 0x6f19b02
xor ecx, 0x6f19b0e
test dl, 1
cmovne ecx, r8d
test dl, 1
mov dword [rbp + 0x124], ecx
mov qword [rbp + 0x128], rax
jne 0x140178156
jmp 0x1401781ce
mov eax, dword [str.r_r]
mov edx, dword [0x14024b4f4]
mov ecx, edx
and ecx, eax
xor ecx, 0xffffffff
add eax, edx
add eax, 1
add eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0xba55eca1
xor edx, 0xd7ebead2
and ecx, edx
mov edx, 0xffffffff
xor edx, 0x6dbe0673
and eax, edx
sub eax, ecx
imul eax, eax, 0xdff2bbe2
mov ecx, 0x728b6702
xor ecx, 0x8bf702a3
add eax, ecx
cmp eax, 0x46c96aba
jbe 0x140179202
mov eax, dword [0x14024b4f8]
mov edx, dword [0x14024b4fc]
mov ecx, 0x2c3815f4
xor ecx, 0xad83065
xor edx, ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, edx
xor edx, 0xffffffff
and eax, edx
sub eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x8c74e6ef
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
add eax, 0x7180701e
xor ecx, ecx
sub ecx, eax
mov eax, 0x5f40a0e2
xor eax, 0x5f40a0e2
mov edx, 0xebbbfaf0
xor edx, 0xc2a568a0
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
cmp eax, 0x30887c73
je 0x140179202
jmp 0x140178156
mov rax, qword [rbp + 0x260]
mov qword [rbp + 0x258], rax
jmp case.0x140178335.12
mov rax, qword [rbp + 0x1f0]
mov ecx, dword [rax]
mov dword [rbp + 0x7c], ecx
mov edx, 0xbb96ceae
xor edx, 0xbb96ceaf
xor eax, eax
cmp ecx, edx
mov byte [rbp + 0x272], al
jl 0x1401757e1
mov edx, dword [rbp + 0x7c]
mov rcx, qword [rbp + 0x1f0]
sub rsp, 0x20
call fcn.14017051c
mov rdx, qword [rbp + 0x650]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x260]
mov r8b, byte [rdx]
mov r9b, 3
xor r9b, 3
xor edx, edx
cmp r8b, r9b
mov dword [rbp + 0x124], edx
mov qword [rbp + 0x128], rcx
mov qword [rbp + 0x258], rax
jne case.0x140178335.12
mov ecx, dword [rbp + 0x124]
mov rax, qword [rbp + 0x128]
mov dword [rbp + 0x78], ecx
test ecx, ecx
mov qword [rbp + 0x1f8], rax
je 0x140175e00
jmp 0x1401781f2
mov eax, dword [rbp + 0x78]
mov rcx, qword [rbp + 0x260]
mov rdx, qword [rbp + 0x268]
mov r8d, eax
sub r8d, 0x16
mov qword [rbp + 0x200], rdx
mov qword [rbp + 0x208], rcx
mov dword [rbp + 0x214], eax
je 0x140178249
jmp 0x1401782d4
mov rax, qword [rbp + 0x260]
mov ecx, dword [rbp + 0x238]
cmp ecx, 0x80000006
mov qword [rbp + 0x258], rax
je case.0x140178335.12
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.1400129fd
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x14025a780]
mov qword [rcx], rax
lea rax, [0x140259cd1]
mov qword [rcx + 0x10], rax
mov rax, qword [0x140259d68]
mov qword [rcx + 0x18], rax
mov rax, qword [0x140259d70]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x140259cd1]
lea r8, [0x140259d0a]
lea r9, [0x140259cea]
sub rsp, 0x30
mov qword [rsp + 0x20], 0xffffffffe0e1a0fa
call fcn.140012522
mov rax, qword [rbp + 0x260]
add rsp, 0x30
mov qword [rbp + 0x258], rax
jmp case.0x140178335.12
mov rcx, qword [rbp + 0x200]
mov rdx, qword [rbp + 0x208]
mov eax, dword [rbp + 0x214]
mov dword [rbp + 0x5c], eax
mov qword [rbp + 0x60], rdx
mov qword [rbp + 0x68], rcx
mov ecx, eax
mov qword [rbp + 0x70], rcx
sub eax, 0x15
ja case.0x140178335.1
mov rcx, qword [rbp + 0x2f8]
mov rdx, qword [rbp + 0x2b8]
mov r8, qword [rbp + 0x60]
mov rax, qword [rbp + 0x70]
lea r9, [0x14017924c]
movsxd rax, dword [r9 + rax*4]
add rax, r9
mov qword [rbp + 0x258], r8
mov qword [rbp + 0x48], rdx
mov qword [rbp + 0x50], rcx
jmp rax
mov eax, dword [0x14024b500]
mov ecx, 0xbf3debec
xor ecx, 0x4547b63f
xor eax, ecx
sub eax, dword [0x14024b504]
mov ecx, 0x97aa5526
xor ecx, 0xd36d9931
xor edx, edx
div ecx
sub eax, 0xbd450ca1
mov ecx, 0xc3ef57d4
xor ecx, 0xaa7e8067
sub eax, ecx
add eax, 0xbd450ca1
mov ecx, eax
xor ecx, 0x21314d04
mov edx, 0xffffffff
xor edx, 0x21314d04
and eax, edx
shl eax, 1
sub eax, ecx
cmp eax, 0x29ebcdd7
je 0x14017920b
mov eax, dword [0x14024b508]
and eax, dword [0x14024b50c]
add eax, 0x2c859745
mov ecx, 0x70d8deba
xor ecx, 0xf80ebdc5
xor edx, edx
div ecx
and eax, 0x37d7d4e
cmp eax, 0x24b94262
je 0x14017839b
mov al, byte [rbp + 0x253]
mov rcx, qword [rbp + 0x60]
mov rdx, qword [rbp + 0x68]
mov qword [rbp + 0x278], rdx
mov qword [rbp + 0x280], rcx
mov byte [rbp + 0x28a], al
jmp 0x1401757b9
mov rax, qword [rbp + 0x258]
mov qword [rbp + 0x40], rax
mov eax, dword [0x14024b510]
add eax, dword [0x14024b514]
mov r8d, 0xa4c593ae
xor r8d, 0x1cfd858b
mov ecx, 0x6ddcd386
xor ecx, 0x92232c79
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x13eed07f
xor r8d, 0xec112f80
xor ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xb8381625
or eax, 0xb8381625
imul eax, edx
add eax, ecx
mov ecx, 0x84fe8a0
xor ecx, 0xbf0b222
xor edx, edx
div ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0xfadbcad2
mov r8d, 0x1a39a378
xor r8d, 0xe0e269aa
mov ecx, 0xa727616d
xor ecx, 0x58d89e92
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0x814beb42
xor r8d, 0x7b902190
mov edx, eax
and edx, r8d
or eax, 0xfadbcad2
imul eax, edx
add eax, ecx
cmp eax, 0xbdc8f507
je 0x140179214
mov rcx, qword [rbp + 0x40]
mov eax, dword [0x14024b518]
xor edx, edx
div dword [0x14024b51c]
mov r9d, 0x54f7ec14
xor r9d, 0x3fcb4e9c
mov edx, 0xd678a79b
xor edx, 0x29875864
xor r9d, edx
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, 0x6b3ca288
or eax, 0x6b3ca288
imul eax, r8d
add eax, edx
mov r8d, 0x31d68f8b
xor r8d, 0x8e543622
mov edx, eax
and edx, r8d
shl edx, 1
mov r8d, 0x79f3437d
xor r8d, 0xc671fad4
add eax, r8d
sub eax, edx
sub eax, 0xe6bec708
add eax, 0xf32bd7a2
add eax, 0xe6bec708
mov dword [rbp + 0x3c], eax
sub rsp, 0x20
call fcn.14001d422
mov eax, dword [rbp + 0x3c]
add rsp, 0x20
cmp eax, 0x3226a209
je 0x1401784b7
jmp case.0x140178335.9
mov rax, qword [rbp + 0x5a8]
mov rcx, qword [rbp + 0x650]
mov dl, byte [rcx]
mov byte [rbp + 0x2f], dl
mov dl, 0x91
xor dl, 0x91
mov byte [rcx], dl
mov rax, qword [rax]
mov qword [rbp + 0x30], rax
movabs rcx, 0xd51ddb081c7fcef9
movabs rdx, 0xd51ddb081c7fcef9
xor rcx, rdx
cmp rax, rcx
jle 0x1401785ef
mov rcx, qword [rbp + 0x30]
mov rax, qword [0x14025a7c0]
sub rsp, 0x20
call qword [rax]
mov r8, qword [rbp + 0x650]
mov rcx, qword [rbp + 0x2b8]
add rsp, 0x20
mov rax, qword [rbp + 0x2f8]
mov dl, 1
cmp byte [r8], 0
mov byte [rbp + 0x29f], dl
mov qword [rbp + 0x2a0], rcx
mov qword [rbp + 0x2a8], rax
jne 0x1401786a7
mov rax, qword [rbp + 0x2f8]
mov rcx, qword [rbp + 0x2b8]
mov dl, byte [rbp + 0x2f]
mov byte [rbp + 0x29f], dl
mov qword [rbp + 0x2a0], rcx
mov qword [rbp + 0x2a8], rax
jmp 0x1401786a7
mov rax, qword [rbp + 0x308]
mov qword [rbp + 0x20], rax
sub rsp, 0x20
call fcn.140008d37
mov rax, qword [rbp + 0x20]
add rsp, 0x20
xor ecx, ecx
mov qword [rbp + 0x48], rcx
mov qword [rbp + 0x50], rax
mov rdx, qword [rbp + 0x650]
mov rcx, qword [rbp + 0x48]
mov rax, qword [rbp + 0x50]
mov dl, byte [rdx]
mov byte [rbp + 0x29f], dl
mov qword [rbp + 0x2a0], rcx
mov qword [rbp + 0x2a8], rax
jmp 0x1401786a7
mov rax, qword [rbp + 0x650]
mov rcx, qword [rbp + 0x350]
mov rdx, qword [rbp + 0x358]
mov r8, qword [rbp + 0x360]
mov byte [rax], 0
xor eax, eax
mov r9b, al
mov al, 1
mov byte [rbp - 1], r9b
mov qword [rbp], r8
mov qword [rbp + 8], rdx
mov qword [rbp + 0x10], rcx
mov byte [rbp + 0x1f], al
jmp 0x1401788f0
mov rdx, qword [rbp + 0x330]
mov r8, qword [rbp + 0x320]
mov r11, qword [rbp + 0x650]
mov al, byte [rbp + 0x29f]
mov r10, qword [rbp + 0x2a0]
mov rcx, qword [rbp + 0x2a8]
mov qword [rbp - 0x18], rcx
mov qword [rbp - 0x10], r10
mov byte [rbp - 3], al
cmp al, 0
sete r9b
mov byte [rbp - 2], r9b
mov bl, 0xf
xor bl, 0xf
mov byte [r11], bl
cmp r10, 0
mov byte [rbp - 1], r9b
mov qword [rbp], r8
mov qword [rbp + 8], rdx
mov qword [rbp + 0x10], rcx
mov byte [rbp + 0x1f], al
je 0x1401788f0
mov al, byte [rbp - 3]
mov rcx, qword [rbp - 0x18]
mov rdx, qword [rbp + 0x330]
mov r8, qword [rbp + 0x320]
mov r9b, byte [rbp - 2]
mov r11, qword [rbp - 0x10]
movabs r10, 0x4000000000000000
and r10, qword [r11]
cmp r10, 0
mov byte [rbp - 1], r9b
mov qword [rbp], r8
mov qword [rbp + 8], rdx
mov qword [rbp + 0x10], rcx
mov byte [rbp + 0x1f], al
jne 0x1401788f0
mov eax, dword [0x14024b520]
xor eax, 0x9ca295d0
mov edx, dword [0x14024b524]
xor edx, 0xb16c1a1e
mov ecx, eax
xor ecx, 0xffffffff
and ecx, edx
xor edx, 0xffffffff
and eax, edx
sub eax, ecx
mov ecx, 0x4eae1c50
xor edx, edx
div ecx
mov edx, 0x67557cb6
xor edx, 0x67557cb7
mov ecx, eax
add ecx, edx
mov edx, 0xefe4139e
xor edx, 0x101bec61
xor eax, edx
mov edx, 0x965e2c15
xor edx, 0x654e8418
or eax, edx
add eax, ecx
mov ecx, 0xca5b46e2
xor edx, edx
div ecx
mov ecx, 0xda927b60
xor ecx, 0x71eb47aa
cmp eax, ecx
jae 0x14017921d
mov rcx, qword [rbp - 0x10]
mov eax, dword [0x14024b528]
mov edx, 0xbb33be92
xor edx, 0x69a4fc66
xor eax, edx
mov r8d, dword [0x14024b52c]
xor r8d, 0xbf6dd1bd
xor edx, edx
div r8d
mov edx, eax
xor edx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xd5d1de5c
or edx, r8d
xor eax, 0xffffffff
mov r8d, 0xc640309a
xor r8d, 0x1391eec6
mov r9d, 0x86e46dc1
xor r9d, 0x791b923e
xor r8d, r9d
or eax, r8d
and edx, eax
xor edx, 0xffffffff
mov eax, edx
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x8a3993e5
and eax, r8d
xor edx, 0xffffffff
mov r8d, 0x3f29fc7a
xor r8d, 0xb5106f9f
mov r9d, 0x738102e6
xor r9d, 0x8c7efd19
xor r8d, r9d
and edx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
mov r9d, 0xffffffff
xor r9d, 0x36e14ccc
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, 0x36e14ccc
or eax, 0x36e14ccc
imul eax, r8d
add eax, edx
mov dword [rbp - 0x1c], eax
sub rsp, 0x20
call fcn.14000f4df
mov eax, dword [rbp - 0x1c]
add rsp, 0x20
cmp eax, 0xd3d3fd38
je 0x1401787c6
mov al, byte [rbp - 3]
mov rcx, qword [rbp - 0x18]
mov rdx, qword [rbp + 0x330]
mov r8, qword [rbp + 0x320]
mov r9b, byte [rbp - 2]
mov byte [rbp - 1], r9b
mov qword [rbp], r8
mov qword [rbp + 8], rdx
mov qword [rbp + 0x10], rcx
mov byte [rbp + 0x1f], al
jmp 0x1401788f0
mov cl, byte [rbp - 1]
mov rdx, qword [rbp]
mov r8, qword [rbp + 8]
mov rax, qword [rbp + 0x10]
mov r9b, byte [rbp + 0x1f]
mov byte [rbp - 0x39], r9b
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x30], r8
mov qword [rbp - 0x28], rdx
mov byte [rbp - 0x1d], cl
cmp rax, 0
je 0x1401789db
mov rcx, qword [rbp - 0x38]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x1401789db
mov eax, dword [0x14024b530]
xor eax, 0x94ff51d1
mov ecx, dword [0x14024b534]
xor ecx, 0xa5907074
imul eax, ecx
mov ecx, 0xddc1c38e
xor edx, edx
div ecx
mov ecx, 0x5d49130b
xor edx, edx
div ecx
mov ecx, 0xc7c783f2
xor edx, edx
div ecx
mov ecx, 0xe3178bea
xor ecx, 0x4da775a0
cmp eax, ecx
ja 0x140179226
mov rcx, qword [rbp - 0x38]
mov eax, dword [0x14024b538]
mov edx, 0xe2ae9760
xor edx, 0xcf76882e
xor eax, edx
xor edx, edx
div dword [0x14024b53c]
imul eax, eax, 0xc651ac18
mov r8d, 0x6451c91a
xor edx, edx
div r8d
sub eax, 0xd0c59395
mov dword [rbp - 0x40], eax
sub rsp, 0x20
call fcn.14000f4df
mov eax, dword [rbp - 0x40]
add rsp, 0x20
cmp eax, 0xc2e0f0b
jbe 0x140178983
jmp 0x1401789db
mov rax, qword [rbp - 0x30]
cmp rax, 0
je 0x140178a25
mov rax, qword [rbp - 0x30]
mov rax, qword [rax]
movabs rcx, 0x864b3d6e439d5643
movabs rdx, 0xc64b3d6e439d5643
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x140178a25
mov rcx, qword [rbp - 0x30]
sub rsp, 0x20
call fcn.14000f4df
add rsp, 0x20
mov rax, qword [rbp - 0x28]
cmp rax, 0
je 0x140178a5f
mov rcx, qword [rbp - 0x28]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x140178a5f
mov rcx, qword [rbp - 0x28]
sub rsp, 0x20
call fcn.14000f4df
add rsp, 0x20
mov rcx, qword [rbp + 0x598]
sub rsp, 0x20
call fcn.1400c7640
mov rax, qword [rbp + 0x650]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140178aa4
mov al, byte [rbp - 0x1d]
mov rcx, qword [rbp + 0x650]
mov dl, byte [rbp - 0x39]
mov byte [rcx], dl
test al, 1
jne 0x140178a9f
jmp 0x140178aa4
jmp 0x140178cbd
jmp 0x140178c63
mov eax, dword [0x14024b540]
xor edx, edx
div dword [0x14024b544]
mov r8d, eax
mov eax, r8d
xor eax, 0xffffffff
and eax, 0x7b93b605
mov edx, 0xffffffff
xor edx, 0x7b93b605
and r8d, edx
mov ecx, 0xfd65c08e
xor ecx, 0xea1812cc
mov r9d, 0x71b7405a
xor r9d, 0x8e48bfa5
xor ecx, r9d
mov r9d, 0x842ae87a
xor r9d, 0xffb95e7f
and ecx, r9d
and edx, 0x177dd242
or eax, r8d
or ecx, edx
xor eax, ecx
imul ecx, eax, 0x5da035fe
mov eax, 0x2172db91
xor eax, 0xde8d246e
mov edx, ecx
xor edx, eax
mov eax, 0x9bd79ea5
xor eax, 0xf196d93f
and eax, edx
mov edx, 0xffffffff
xor edx, 0x6a41479a
and ecx, edx
or eax, ecx
cmp eax, 0x8e6fe0c6
je 0x14017922f
mov edx, dword [rbp + 0x5c]
mov ecx, dword [0x14024b548]
mov r8d, dword [0x14024b54c]
mov eax, ecx
xor eax, 0xffffffff
mov r9d, ecx
xor r9d, 0xffffffff
or eax, r9d
and eax, r8d
mov r9d, 0x94b57794
xor r9d, 0x6b4a886b
xor eax, r9d
and r8d, r8d
xor r8d, 0xffffffff
and ecx, r8d
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x440f3fc
xor ecx, 0x1b45aaef
mov r8d, eax
xor r8d, ecx
xor r8d, 0xffffffff
and r8d, 0x1f055913
mov ecx, 0x186b286d
xor ecx, 0x186b286f
imul ecx, r8d
mov r8d, 0x564c4d5f
xor r8d, 0x4949144c
sub ecx, r8d
sub eax, ecx
mov r9d, 0xffffffff
xor r9d, 0x2bd5582d
mov r8d, eax
and r8d, r9d
mov ecx, eax
or ecx, r9d
mov r9d, 0x3c04d785
xor r9d, 0xc3fb287a
xor ecx, r9d
imul ecx, r8d
mov r9d, 0xb815cb53
xor r9d, 0x93c0937e
mov r8d, eax
and r8d, r9d
mov r9d, 0x7b562801
xor r9d, 0x5083702c
or eax, r9d
imul eax, r8d
add eax, ecx
sub eax, 0x7adcff45
mov ecx, 0x11e65f78
xor ecx, 0xaf37375a
mov r8d, 0x8fdb8b09
xor r8d, 0x8fdb8b23
cmp edx, r8d
sete dl
mov byte [rbp - 0x41], dl
cmp eax, ecx
jae 0x14017922f
mov eax, dword [rbp + 0x5c]
mov cl, byte [rbp - 0x41]
test cl, 1
mov dword [rbp - 0x48], eax
jne 0x140178c63
jmp 0x140178ea4
sub rsp, 0x20
call fcn.1401593ac
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x50], rax
mov ax, word [rax + 0x12]
mov cx, 0x84c1
xor cx, 0x84c0
cmp ax, cx
jle 0x140178cbd
mov rax, qword [rbp - 0x50]
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0xc5722261
jne 0x140178cbd
mov rax, qword [rbp + 0x650]
mov cl, 0x5e
xor cl, 0x5e
mov byte [rax], cl
sub rsp, 0x20
call fcn.1401594a0
add rsp, 0x20
mov rax, qword [rbp + 0x340]
cmp rax, 0
je 0x140178d8f
mov rax, qword [rbp + 0x340]
mov rcx, qword [rax]
movabs rdx, 0x4000000000000000
mov rax, rcx
and rax, rdx
movabs rdx, 0x83dd57b842df69e8
movabs r8, 0x7c22a847bd209617
xor rdx, r8
xor rax, rdx
movabs rdx, 0xe14d4b55b07c6610
movabs r8, 0x1eb2b4aa4f8399ef
xor rdx, r8
xor rcx, rdx
movabs rdx, 0x682af08a2a679ce4
movabs r8, 0x282af08a2a679ce4
xor rdx, r8
movabs r8, 0xb728039e127b8359
movabs r9, 0x48d7fc61ed847ca6
xor r8, r9
xor rdx, r8
or rcx, rdx
movabs rdx, 0x7a4983408dc15234
movabs r8, 0x85b67cbf723eadcb
xor rdx, r8
xor rax, rdx
xor rcx, 0xffffffffffffffff
or rax, rcx
cmp rax, 0
jne 0x140178d8f
mov rcx, qword [rbp + 0x340]
sub rsp, 0x20
call fcn.14000f4df
add rsp, 0x20
mov eax, dword [0x14024b550]
mov edx, dword [0x14024b554]
mov ecx, 0x37192581
xor ecx, 0x6080716d
xor edx, ecx
mov r8d, eax
xor r8d, 0xffffffff
mov ecx, edx
and ecx, r8d
mov r8d, 0x4cc829e
xor r8d, 0xfb337d61
xor edx, r8d
and eax, edx
or ecx, eax
sub ecx, 0x52dc41ab
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x80c3f428
mov edx, 0xffffffff
xor edx, 0x80c3f428
and ecx, edx
or eax, ecx
add eax, 0x9ac50344
add eax, 0x379fc023
sub eax, 0x9ac50344
mov ecx, 0xeccd978c
xor ecx, 0xd5891dce
cmp eax, ecx
jb 0x140179238
mov rcx, qword [rbp + 0x650]
mov eax, dword [0x14024b558]
sub eax, dword [0x14024b55c]
mov edx, 0x7e226698
xor edx, 0x7724af58
add eax, edx
or eax, 0x5bf95ff6
mov r8d, eax
xor r8d, 0xffffffff
and r8d, 0x80ffafd4
mov r9d, 0x4bba83cf
xor r9d, 0xcb452c1b
mov edx, 0x5f1fdbb7
xor edx, 0xa0e02448
xor r9d, edx
mov edx, eax
and edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0x80ffafd4
or eax, 0x80ffafd4
imul eax, r8d
add eax, edx
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x51], cl
cmp eax, 0xb464387b
je 0x140179238
mov dl, byte [rbp - 0x51]
xor ecx, ecx
mov al, 1
test dl, 1
mov dword [rbp - 0x48], ecx
mov byte [rbp - 0x52], al
jne 0x140178ea4
jmp 0x140178ed4
mov eax, dword [rbp - 0x48]
mov dword [rbp - 0x58], eax
test eax, eax
je 0x1401748b0
jmp 0x140178eb7
mov eax, dword [rbp - 0x58]
sub eax, 6
jne 0x140178f52
jmp 0x140178ec8
mov rax, qword [rbp + 0x650]
mov al, byte [rax]
mov byte [rbp - 0x52], al
mov rax, qword [rbp + 0x650]
mov cl, byte [rbp - 0x52]
mov byte [rbp - 0x59], cl
mov cl, 0xf8
xor cl, 0xf8
mov byte [rax], cl
mov rax, qword [rbp + 0xa48]
mov qword [rbp + 0x680], rax
mov rax, qword [rbp + 0xa50]
mov qword [rbp + 0x688], rax
lea rcx, [rbp + 0x680]
sub rsp, 0x20
call fcn.1400180fc
mov rcx, qword [rbp + 0x588]
call fcn.1400c7640
mov rax, qword [rbp + 0x650]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140178f4d
mov al, byte [rbp - 0x59]
mov rcx, qword [rbp + 0x650]
mov byte [rcx], al
cmp al, 0
jne 0x140178f4d
jmp 0x1401790b0
jmp 0x140178f64
mov eax, dword [rbp - 0x58]
cmp eax, 0x2b
mov dword [rbp + 0x67c], eax
jne 0x140178f90
mov rax, qword [rbp + 0x650]
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401594a0
mov rax, qword [rbp + 0x650]
add rsp, 0x20
cmp byte [rax], 0
je 0x1401790b0
jmp 0x140179111
mov eax, dword [rbp + 0x67c]
mov dword [rbp - 0x60], eax
mov eax, dword [0x14024b560]
mov ecx, 0x2b32ca02
xor ecx, 0x69e3cb6e
xor eax, ecx
mov ecx, dword [0x14024b564]
xor ecx, 0xe362943a
xor edx, edx
div ecx
add eax, 0xeca81db1
mov ecx, 0x2e2694a6
xor edx, edx
div ecx
mov ecx, 0x809f69d
xor ecx, 0x77da5b6f
imul eax, ecx
cmp eax, 0x3ae7540e
jbe 0x140179241
mov eax, dword [0x14024b568]
mov ecx, dword [0x14024b56c]
mov edx, 0xc6e65d72
xor edx, 0xeccb95a4
xor ecx, edx
or eax, ecx
mov ecx, 0x188f4ffa
xor ecx, 0x188f4ffa
mov edx, 0x6441ddf9
xor edx, 0x4fdbeb89
sub ecx, edx
add eax, ecx
mov ecx, 0x74ec34f9
xor ecx, 0x70a03680
xor edx, edx
div ecx
mov r8d, eax
mov eax, r8d
xor eax, 0xffffffff
and eax, 0x16efad07
mov edx, 0xd5f5ee96
xor edx, 0xc31a4391
mov ecx, 0xa494dca2
xor ecx, 0x5b6b235d
xor edx, ecx
and r8d, edx
mov ecx, 0xffffffff
xor ecx, 0x9e1b797b
and ecx, 0x16efad07
and edx, 0x9e1b797b
or eax, r8d
or ecx, edx
xor eax, ecx
cmp eax, 0xef4a0c09
ja 0x140179241
mov eax, dword [rbp - 0x60]
test eax, eax
je 0x1401790b0
jmp 0x140179089
mov eax, dword [rbp - 0x60]
sub eax, 2
je 0x140179111
jmp 0x14017909a
mov eax, dword [rbp - 0x60]
sub eax, 3
je 0x1401790b0
jmp 0x1401790ab
jmp 0x140179170
mov rcx, qword [rbp + 0x648]
sub rsp, 0x20
call fcn.1401793a1
mov rax, qword [rbp + 0x650]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140179111
mov rax, qword [rbp + 0x580]
mov rax, qword [rax + 8]
mov qword [rbp - 0x68], rax
cmp rax, 0
je 0x140179170
mov rax, qword [rbp - 0x68]
movabs rcx, 0x4000000000000000
and rcx, qword [rax]
cmp rcx, 0
mov qword [rbp - 0x70], rax
je 0x14017915f
jmp 0x140179170
mov rax, qword [rbp + 0x580]
mov rax, qword [rax + 8]
mov qword [rbp - 0x78], rax
cmp rax, 0
je 0x140179170
mov rax, qword [rbp - 0x78]
movabs rcx, 0x4000000000000000
and rcx, qword [rax]
movabs rdx, 0xeb344a89e4098e1b
movabs r8, 0xeb344a89e4098e1b
xor rdx, r8
cmp rcx, rdx
mov qword [rbp - 0x70], rax
jne 0x140179170
mov rcx, qword [rbp - 0x70]
sub rsp, 0x20
call fcn.14000f4df
add rsp, 0x20
lea rsp, [rbp + 0xa68]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov edx, 0xe9d2a4d0
movabs dword [0xe9c3da83d4ffffba], eax
mov esp, 0x2906ffff
mov ebp, r9d
call 0xfb17915d
sahf
invalid
invalid
invalid
mov edx, 0xe9511e9e
or al, ah
invalid
invalid
loop 0x140179213
invalid
lahf
movabs dword [0xedffffce80e99c63], eax
invalid
in eax, dx
idiv bl
add al, 0xe9
adc eax, 0xd6ffffd6
movabs al, byte [0xe3ffffdc5be99f7e]
in eax, 0x8a
mov edi, 0xffde28e9
invalid
jrcxz 0x1401791bc
mov bh, byte [rdi - 0x21d717]
dec dword [rbx]
cmp eax, 0x5de95290
or edi, dword [0x19e00e474]
invalid
sbb byte [rax + 0x2c], cl
ret
push rsp
push 0x6e93592
call 0x1761c91fa
add al, 0x36
xor al, 0x80
jmp 0x140177d71
sbb dword [rcx], ebp
cmc
jmp 0x1401780d2
sbb ch, byte [rcx - 0xe78165b]
invalid
jmp qword [rbx + 0x39]
invalid
sub ebx, dword [rcx + 0x46]
invalid
mov ecx, 0xe95fd092
push rsp
idiv edi
jmp rax
loopne 0x140179258
iretd
sub byte [rcx + 0x1c], bl
jmp 0x140178e09
fmul qword [rcx - 0x661664be]
std
invalid
pop rbp
clc
invalid