Function at 0x1401b20d0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x418
lea rbp, [rsp + 0x80]
mov byte [rbp + 0x387], r8b
mov qword [rbp + 0x388], rdx
mov qword [rbp + 0x390], rcx
mov eax, dword [0x1401e0910]
mov ecx, dword [0x1401e0914]
xor ecx, 0xeab382b7
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
mov edx, 0x2eee20b
xor edx, 0xfd111df4
xor eax, edx
mov edx, 0xffffffff
xor edx, 0xc2ddfeb6
or eax, edx
mov edx, 0xc2ddfeb6
and edx, 0xc2ddfeb6
xor edx, 0xffffffff
and ecx, edx
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x345cd1bf
mov ecx, 0xffffffff
xor ecx, 0x88768c84
or eax, edx
or ecx, 0x88768c84
xor eax, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x64620f71
mov ecx, 0xffffffff
xor ecx, 0x1bc90936
or eax, edx
or ecx, 0x1bc90936
mov edx, 0xe33a3104
xor edx, 0x1cc5cefb
xor eax, edx
and eax, ecx
mov ecx, 0xbfdbc645
xor ecx, 0x987072c1
cmp eax, ecx
je 0x1401b46b5
mov eax, dword [0x1401e0918]
mov r8d, dword [0x1401e091c]
mov ecx, eax
not ecx
mov edx, r8d
and edx, ecx
mov r9d, r8d
not r9d
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
imul rax, rax, 0x45b71499
shr rax, 0x3c
and eax, 0xfffffffe
add eax, 0xc19da866
mov dword [rbp + 0x37c], eax
mov eax, 0xc8a4e3a5
mov dword [rbp + 0x378], eax
mov eax, 0x10
mov qword [rbp + 0x328], rax
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x340], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x348], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x350], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x1b8], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x1c0], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x1c8], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x1d0], rax
mov eax, 0x20
mov qword [rbp + 0x2a0], rax
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x1d8], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x1e0], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x1e8], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x1f0], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x1f8], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x2a0]
mov rcx, rsp
mov qword [rbp + 0x200], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x2a0]
mov rcx, rsp
mov qword [rbp + 0x208], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x210], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x2a0]
mov rcx, rsp
mov qword [rbp + 0x218], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x220], rax
mov eax, 0x30
mov qword [rbp + 0x2f8], rax
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x228], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x230], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x238], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x240], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x248], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x2a0]
mov rcx, rsp
mov qword [rbp + 0x250], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x258], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x260], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x268], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x270], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x278], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x280], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x2a0]
mov rcx, rsp
mov qword [rbp + 0x288], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x2a0]
mov rcx, rsp
mov qword [rbp + 0x290], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x298], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x2a0]
mov rcx, rsp
mov qword [rbp + 0x2a8], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x2f8]
mov rcx, rsp
mov qword [rbp + 0x2b0], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x2b8], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x2c0], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x2c8], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x2d0], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x2d8], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x2e0], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x2e8], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x2f0], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x2f8]
mov rcx, rsp
mov qword [rbp + 0x300], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x308], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x310], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x318], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x320], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x328]
mov rcx, rsp
mov qword [rbp + 0x330], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x338], rax
sub rsp, 0x20
call fcn.1401c69c0
mov r8, qword [rbp + 0x340]
mov rdx, qword [rbp + 0x348]
mov rcx, qword [rbp + 0x388]
add rsp, 0x20
mov r9, rax
mov rax, qword [rbp + 0x350]
mov qword [rbp + 0x370], r9
add r9, 0x60
mov qword [rbp + 0x358], r9
mov qword [r8], 0
mov r9, r8
add r9, 8
mov qword [rbp + 0x360], r9
mov qword [r8 + 8], 0
mov qword [rdx], 0
mov r8, rdx
add r8, 8
mov qword [rbp + 0x368], r8
mov qword [rdx + 8], 0
mov edx, 0x23bfe674
xor edx, 0xdc40198b
mov dword [rax], edx
sub rsp, 0x20
call fcn.1400c9ccc
mov rdx, qword [rbp + 0x370]
mov ecx, dword [rbp + 0x378]
add rsp, 0x20
mov r8d, eax
mov eax, dword [rbp + 0x37c]
mov dword [rbp + 0x380], r8d
mov dl, byte [rdx + 0x60]
mov r8b, 0x2d
xor r8b, 0x2d
cmp dl, r8b
sete dl
mov byte [rbp + 0x386], dl
cmp eax, ecx
je 0x1401b46b5
mov al, byte [rbp + 0x386]
test al, 1
jne 0x1401b27c7
jmp 0x1401b44f6
mov eax, dword [rbp + 0x380]
movsxd rdx, eax
mov qword [rbp + 0x1a8], rdx
mov rax, rdx
add rax, 1
mov qword [rbp + 0x1b0], rax
xor rdx, 0xffffffffffffffff
mov rcx, rax
xor rcx, rdx
movabs r8, 0x9a27f72b380a10ca
movabs r9, 0x65d808d4c7f5ef35
xor r8, r9
xor rcx, r8
or rax, rdx
and rax, rcx
cmp rax, 0
jge 0x1401b282b
sub rsp, 0x20
call fcn.1400077a3
add rsp, 0x20
jmp 0x1401b4498
mov rax, qword [rbp + 0x1a8]
movabs rcx, 0x4d87ed90dea991c5
movabs rdx, 0xb278126f5ea991c4
xor rcx, rdx
add rax, rcx
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x1401b2871
sub rsp, 0x20
call fcn.1400077a3
add rsp, 0x20
jmp 0x1401b4498
mov eax, dword [rbp + 0x380]
mov rcx, qword [rbp + 0x1b0]
mov dword [rbp + 0x1a4], ecx
cmp eax, 0xffffffff
jge 0x1401b28b4
mov rcx, qword [rbp + 0x1b0]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14000d167
add rsp, 0x20
jmp 0x1401b4498
mov rcx, qword [rbp + 0x1b8]
mov rdx, qword [rbp + 0x1b0]
sub rsp, 0x20
call fcn.140096f70
mov rcx, qword [rbp + 0x1b8]
mov rax, qword [rbp + 0x358]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp + 0x190], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x198], rcx
mov al, byte [rax]
mov cl, 0x94
xor cl, 0x94
cmp al, cl
jne 0x1401b4498
mov rsi, qword [rbp + 0x2b8]
mov rdi, qword [rbp + 0x2f0]
mov rbx, qword [rbp + 0x298]
mov r14, qword [rbp + 0x2e0]
mov r15, qword [rbp + 0x2d0]
mov r12, qword [rbp + 0x2a8]
mov r13, qword [rbp + 0x308]
mov rdx, qword [rbp + 0x1c0]
mov rcx, qword [rbp + 0x348]
mov rax, qword [rbp + 0x198]
mov r8, qword [rbp + 0x190]
mov qword [rdx], r8
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140014bff
mov rax, qword [rbp + 0x1e0]
mov rdx, qword [rbp + 0x1f8]
mov rcx, qword [rbp + 0x1f0]
mov r11, qword [rbp + 0x218]
mov r10b, byte [rbp + 0x387]
mov r9, qword [rbp + 0x240]
mov r8, qword [rbp + 0x250]
add rsp, 0x20
add rax, 8
mov qword [rbp + 0xb8], rax
mov rax, qword [rbp + 0x1d8]
add rdx, 8
mov qword [rbp + 0xc0], rdx
add rcx, 8
mov qword [rbp + 0xc8], rcx
mov rcx, rax
add rcx, 8
mov qword [rbp + 0xd0], rcx
add rax, 0x10
mov qword [rbp + 0xd8], rax
mov al, r10b
and al, 4
mov cl, 0xf3
xor cl, 0xc
xor al, cl
mov cl, r10b
xor cl, 0xff
mov dl, 0xff
xor dl, 4
or cl, dl
mov rdx, qword [rbp + 0x210]
xor al, 0xff
xor cl, 0xff
or al, cl
mov cl, 0x57
xor cl, 0x57
cmp al, cl
mov rcx, qword [rbp + 0x268]
sete al
mov byte [rbp + 0xe7], al
mov rax, qword [rbp + 0x318]
add rax, 8
mov qword [rbp + 0xe8], rax
mov rax, qword [rbp + 0x330]
add rax, 8
mov qword [rbp + 0xf0], rax
mov rax, r13
add rax, 8
mov qword [rbp + 0xf8], rax
mov rax, qword [rbp + 0x228]
add r13, 0x18
mov qword [rbp + 0x100], r13
add r12, 8
mov qword [rbp + 0x108], r12
mov r12b, r10b
and r12b, 2
cmp r12b, 0
sete r12b
mov byte [rbp + 0x117], r12b
add r15, 8
mov qword [rbp + 0x118], r15
add r14, 8
mov qword [rbp + 0x120], r14
add rbx, 0x10
mov qword [rbp + 0x128], rbx
add rdi, 8
mov qword [rbp + 0x130], rdi
mov rdi, rsi
add rdi, 8
mov qword [rbp + 0x138], rdi
add rsi, 0x18
mov qword [rbp + 0x140], rsi
add r11, 8
mov qword [rbp + 0x148], r11
mov r11b, r10b
xor r11b, 1
xor r11b, 0xff
or r10b, 1
and r10b, r11b
mov r11b, 0x86
xor r11b, 0x86
cmp r10b, r11b
sete r10b
mov byte [rbp + 0x157], r10b
add r9, 8
mov qword [rbp + 0x158], r9
add r8, 8
mov qword [rbp + 0x160], r8
add rdx, 0x10
mov qword [rbp + 0x168], rdx
add rcx, 8
mov qword [rbp + 0x170], rcx
mov rcx, rax
add rcx, 8
mov qword [rbp + 0x178], rcx
add rax, 0x18
mov qword [rbp + 0x180], rax
xor eax, eax
mov dword [rbp + 0x18c], eax
mov rcx, qword [rbp + 0x1d0]
mov rax, qword [rbp + 0x348]
mov rdx, qword [rbp + 0x1c8]
mov r8d, dword [rbp + 0x1a4]
mov r9d, dword [rbp + 0x18c]
mov dword [rbp + 0xac], r9d
mov dword [rdx], r8d
mov rdx, qword [rax]
mov qword [rcx], rdx
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.1401b4721
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x358]
mov qword [rbp + 0xb0], rcx
cmp byte [rax], 0
jne 0x1401b4498
mov eax, dword [0x1401e0920]
and eax, dword [0x1401e0924]
mov ecx, 0xc45b615a
xor ecx, 0x3ba49ea5
mov edx, eax
xor edx, ecx
and edx, 0x61c3a92b
mov r8d, 0xffffffff
xor r8d, 0x61c3a92b
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x61c3a92b
or eax, 0x61c3a92b
imul eax, edx
add eax, ecx
mov ecx, 0xccc30cc9
xor ecx, 0xb943032c
xor edx, edx
div ecx
mov ecx, 0x476a76c7
xor ecx, 0x59b50620
xor edx, edx
div ecx
cmp eax, 0x355ea30d
jae 0x1401b46be
mov rax, qword [rbp + 0x350]
mov r9, qword [rbp + 0x1c8]
mov r8, qword [rbp + 0xb0]
mov edx, dword [rbp + 0xac]
mov rcx, qword [rbp + 0x388]
mov esi, dword [0x1401e0928]
mov edi, dword [0x1401e092c]
mov r10d, esi
xor r10d, 0xffffffff
mov r11d, edi
and r11d, r10d
mov ebx, edi
xor ebx, 0xffffffff
mov r10d, esi
and r10d, ebx
imul r10d, r11d
mov r11d, esi
and r11d, edi
or esi, edi
imul esi, r11d
add esi, r10d
mov r10d, 0x192ac6f5
xor r10d, 0xe646cac1
or esi, r10d
mov r10d, 0x8a5b6ec7
xor r10d, 0x8cd3411b
mov r11d, esi
xor r11d, r10d
mov r10d, 0xb298f850
xor r10d, 0xb410d78c
mov edi, 0x710c257e
xor edi, 0x8ef3da81
xor r10d, edi
and esi, r10d
mov r10d, 0xef4da549
xor r10d, 0xef4da54b
imul r10d, esi
sub r10d, r11d
mov edi, 0xffffffff
xor edi, 0xcd2af58a
mov esi, r10d
and esi, edi
mov r11d, r10d
or r11d, edi
xor r11d, 0xffffffff
imul r11d, esi
mov esi, r10d
and esi, 0xcd2af58a
or r10d, 0xcd2af58a
imul r10d, esi
add r10d, r11d
mov dword [rbp + 0xa0], r10d
xor r10d, r10d
sub rsp, 0x40
mov qword [rsp + 0x20], 0
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x38], 0
call fcn.14009abb0
mov rcx, qword [rbp + 0x358]
add rsp, 0x40
mov edx, eax
mov eax, dword [rbp + 0xa0]
mov dword [rbp + 0xa4], edx
mov cl, byte [rcx]
mov dl, 0x86
xor dl, 0x86
cmp cl, dl
sete cl
mov byte [rbp + 0xab], cl
cmp eax, 0x8b23bbf1
je 0x1401b2c0e
mov al, byte [rbp + 0xab]
test al, 1
jne 0x1401b2d6d
jmp 0x1401b4498
mov ecx, dword [0x1401e0930]
mov edx, dword [0x1401e0934]
mov eax, 0x7126742e
xor eax, 0x61c2944c
xor edx, eax
xor edx, 0xffffffff
mov eax, ecx
xor eax, edx
and eax, ecx
sub eax, 0xc40f73eb
or eax, 0xefb2c0e9
mov ecx, 0x2ee3e6f8
xor ecx, 0x9da5a8e6
or eax, ecx
mov ecx, 0x759f305f
xor ecx, 0xbea28fed
cmp eax, ecx
je 0x1401b46c7
mov ecx, dword [0x1401e0938]
xor ecx, 0x7afb61a3
or ecx, dword [0x1401e093c]
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xec7d9ee9
xor edx, 0x69340717
mov r8d, 0x5cfa316
xor r8d, 0xfa305ce9
xor edx, r8d
or eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x854999fe
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov ecx, eax
and ecx, 0x2e98a68d
shl ecx, 1
add eax, 0x2e98a68d
sub eax, ecx
mov ecx, 0x167772a0
xor ecx, 0x136a48d7
imul eax, ecx
cmp eax, 0xed25580f
ja 0x1401b46c7
mov eax, dword [rbp + 0xa4]
test eax, eax
je 0x1401b2e55
jmp 0x1401b2e3f
mov eax, dword [rbp + 0xa4]
sub eax, 0x103
je 0x1401b4498
jmp 0x1401b436b
mov rcx, qword [rbp + 0x1d8]
mov edx, 0x18
sub rsp, 0x20
call fcn.1401b4760
mov rcx, qword [rbp + 0x1d8]
add rsp, 0x20
movabs rdx, 0xe295d2d24d0033d6
movabs rax, 0xe295d2d24d0033ce
xor rdx, rax
sub rsp, 0x20
call fcn.1401b4760
mov rax, qword [rbp + 0x348]
mov rdx, qword [rbp + 0x1e8]
mov rcx, qword [rbp + 0x1e0]
add rsp, 0x20
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.1401b4920
mov r8, qword [rbp + 0x1e0]
mov rdx, qword [rbp + 0xb8]
mov rcx, qword [rbp + 0x358]
mov eax, dword [rbp + 0xac]
add rsp, 0x20
mov r8, qword [r8]
mov qword [rbp + 0x88], r8
mov rdx, qword [rdx]
mov qword [rbp + 0x90], rdx
cmp byte [rcx], 0
mov dword [rbp + 0x9c], eax
jne 0x1401b42ff
mov rcx, qword [rbp + 0x1f0]
mov rdx, qword [rbp + 0x1f8]
mov rax, qword [rbp + 0xc0]
mov r8, qword [rbp + 0x90]
mov r9, qword [rbp + 0x88]
mov qword [rdx], r9
mov qword [rax], r8
sub rsp, 0x20
call fcn.1401b4ba9
mov r8, qword [rbp + 0x1f0]
mov rdx, qword [rbp + 0xc8]
mov rcx, qword [rbp + 0x358]
mov eax, dword [rbp + 0xac]
add rsp, 0x20
mov r8, qword [r8]
mov qword [rbp + 0x78], r8
mov rdx, qword [rdx]
mov qword [rbp + 0x80], rdx
mov cl, byte [rcx]
mov dl, 0xf5
xor dl, 0xf5
cmp cl, dl
mov dword [rbp + 0x9c], eax
jne 0x1401b42ff
mov eax, dword [0x1401e0940]
xor eax, 0x76cb7f69
xor eax, dword [0x1401e0944]
mov edx, 0x9f219786
xor edx, 0x60de6879
mov ecx, eax
xor ecx, edx
mov edx, 0xee581ba6
xor edx, 0x90237f60
and edx, ecx
mov r8d, 0xe450c752
xor r8d, 0x9a2ba394
mov ecx, 0xe7aca55b
xor ecx, 0x18535aa4
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0x9f7a4626
xor r8d, 0xe10122e0
mov edx, eax
and edx, r8d
or eax, 0x7e7b64c6
imul eax, edx
add eax, ecx
imul eax, eax, 0xa897fc20
xor eax, 0xd9448807
mov ecx, 0xc0934bc5
xor ecx, 0xc6d78f05
cmp eax, ecx
je 0x1401b46d0
mov rcx, qword [rbp + 0x340]
mov r8, qword [rbp + 0xd8]
mov r9, qword [rbp + 0x350]
mov r10, qword [rbp + 0xd0]
mov r11, qword [rbp + 0x80]
mov rsi, qword [rbp + 0x78]
mov eax, dword [0x1401e0948]
xor eax, 0x3ecbea18
sub eax, dword [0x1401e094c]
xor eax, 0xa1ea51f4
mov edi, 0xd932c3ef
xor edx, edx
div edi
mov rdx, qword [rbp + 0x200]
mov edi, eax
mov rax, qword [rbp + 0x1d8]
add edi, 0xd5a341df
mov dword [rbp + 0x74], edi
mov qword [rax], rsi
mov qword [r10], r11
mov r9d, dword [r9]
mov dword [rbp + 0x70], r9d
mov dword [r8], r9d
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140014bff
mov eax, dword [rbp + 0x74]
add rsp, 0x20
cmp eax, 0x194a52de
jbe 0x1401b3008
mov eax, dword [rbp + 0x70]
sub eax, 1
je 0x1401b3563
jmp 0x1401b30b1
mov eax, dword [rbp + 0x70]
sub eax, 3
je 0x1401b30d3
jmp 0x1401b30c2
mov eax, dword [rbp + 0x70]
sub eax, 4
je 0x1401b3a5f
jmp 0x1401b3e63
mov rcx, qword [rbp + 0x208]
mov edx, 0x18
sub rsp, 0x20
call fcn.1401b4760
mov rcx, qword [rbp + 0x210]
add rsp, 0x20
mov edx, 0x18
sub rsp, 0x20
call fcn.1401b4760
mov rdx, qword [rbp + 0x218]
mov rcx, qword [rbp + 0x148]
mov al, byte [rbp + 0x157]
add rsp, 0x20
mov qword [rdx], 0
mov qword [rcx], 0
test al, 1
jne 0x1401b3134
jmp 0x1401b3200
mov ecx, dword [0x1401e0950]
xor ecx, 0xf52089fe
mov edx, dword [0x1401e0954]
mov eax, ecx
xor eax, edx
xor edx, 0xffffffff
and ecx, edx
shl ecx, 1
sub ecx, eax
mov eax, 0x4deb8850
xor eax, 0xb7e63136
imul ecx, eax
mov eax, ecx
and eax, 0xa79ae401
xor ecx, 0xa79ae401
or eax, ecx
mov ecx, 0x5c9b31fb
xor edx, edx
div ecx
cmp eax, 0x63935fb0
jae 0x1401b46d9
mov rcx, qword [rbp + 0x238]
mov eax, dword [0x1401e0958]
mov edx, 0x45df1c90
xor edx, 0x495d81b4
xor eax, edx
xor eax, dword [0x1401e095c]
or eax, 0xc72c5791
mov r8d, 0x7da3439
xor edx, edx
div r8d
mov edx, eax
mov rax, qword [rbp + 0x218]
sub edx, 0xc0eb2008
sub edx, 0xfde09d3b
add edx, 0xc0eb2008
mov dword [rbp + 0x6c], edx
mov rdx, qword [rax]
mov qword [rcx], rdx
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.140025b50
mov eax, dword [rbp + 0x6c]
add rsp, 0x20
cmp eax, 0xfd1e9d9
je 0x1401b46d9
jmp 0x1401b353e
mov rcx, qword [rbp + 0x240]
mov rdx, qword [rbp + 0x248]
mov rax, qword [rbp + 0x340]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001d024
mov rdx, qword [rbp + 0x240]
mov rax, qword [rbp + 0x158]
mov rcx, qword [rbp + 0x220]
add rsp, 0x20
mov rdx, qword [rdx]
mov qword [rbp + 0x58], rdx
mov rax, qword [rax]
mov qword [rbp + 0x60], rax
mov edx, 0x18
sub rsp, 0x20
call fcn.1401b4760
mov r10, qword [rbp + 0x58]
mov r9, qword [rbp + 0x60]
mov rax, qword [rbp + 0x160]
mov rcx, qword [rbp + 0x220]
mov rdx, qword [rbp + 0x388]
mov r8, qword [rbp + 0x250]
add rsp, 0x20
mov qword [r8], r10
mov qword [rax], r9
sub rsp, 0x20
call fcn.1400caac9
mov rax, qword [rbp + 0x358]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401b34e7
mov rdx, qword [rbp + 0x258]
mov rcx, qword [rbp + 0x210]
mov rax, qword [rbp + 0x220]
mov r8, qword [rbp + 0x208]
mov r9, qword [rax + 0x10]
mov qword [r8 + 0x10], r9
movups xmm0, xmmword [rax]
movups xmmword [r8], xmm0
mov r8, qword [rax + 0x10]
mov qword [rdx + 0x10], r8
movups xmm0, xmmword [rax]
movups xmmword [rdx], xmm0
sub rsp, 0x20
call fcn.14005d3d6
mov rcx, qword [rbp + 0x168]
mov rax, qword [rbp + 0x358]
add rsp, 0x20
mov cl, byte [rcx]
test cl, cl
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x57], al
or al, cl
test al, 1
jne 0x1401b3320
jmp 0x1401b3391
mov al, byte [rbp + 0x57]
test al, 1
jne 0x1401b34e7
jmp 0x1401b3330
mov rcx, qword [rbp + 0x268]
sub rsp, 0x20
call fcn.14007cbe2
mov rdx, qword [rbp + 0x268]
mov rcx, qword [rbp + 0x170]
mov rax, qword [rbp + 0x358]
add rsp, 0x20
mov rdx, qword [rdx]
mov qword [rbp + 0x40], rdx
mov rcx, qword [rcx]
mov qword [rbp + 0x48], rcx
cmp byte [rax], 0
jne 0x1401b34e7
mov rax, qword [rbp + 0x148]
mov rcx, qword [rbp + 0x48]
mov rdx, qword [rbp + 0x218]
mov r8, qword [rbp + 0x40]
mov qword [rdx], r8
mov qword [rax], rcx
jmp 0x1401b33d7
mov rdx, qword [rbp + 0x260]
mov rcx, qword [rbp + 0x218]
mov rax, qword [rbp + 0x210]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14002fc64
mov rax, qword [rbp + 0x358]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x4b
xor cl, 0x4b
cmp al, cl
jne 0x1401b34e7
mov rax, qword [rbp + 0x168]
mov al, byte [rax]
mov cl, 0xc
xor cl, 0xc
cmp al, cl
jne 0x1401b341b
mov rcx, qword [rbp + 0x270]
mov rax, qword [rbp + 0x218]
mov rdx, qword [rax]
mov qword [rcx], rdx
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.140025b50
add rsp, 0x20
jmp 0x1401b353e
mov rax, qword [rbp + 0x230]
mov rcx, qword [rbp + 0x340]
mov rdx, qword [rbp + 0x228]
mov byte [rdx], 0
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rdx, qword [rcx + 8]
mov qword [rax + 8], rdx
sub rsp, 0x20
call fcn.140010510
mov r9, qword [rbp + 0x230]
mov r8, qword [rbp + 0x178]
mov rax, qword [rbp + 0x218]
mov rdx, qword [rbp + 0x280]
mov rcx, qword [rbp + 0x278]
add rsp, 0x20
mov r10, qword [r9]
mov qword [r8], r10
mov r9, qword [r9 + 8]
mov qword [r8 + 8], r9
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140045c40
mov rdx, qword [rbp + 0x278]
mov rcx, qword [rbp + 0x180]
mov rax, qword [rbp + 0x358]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rcx], r8
mov rdx, qword [rdx + 8]
mov qword [rcx + 8], rdx
mov al, byte [rax]
mov cl, 0x38
xor cl, 0x38
cmp al, cl
jne 0x1401b34e7
mov rdx, qword [rbp + 0x228]
mov rcx, qword [rbp + 0x390]
sub rsp, 0x20
call fcn.14002fd00
add rsp, 0x20
mov rcx, qword [rbp + 0x288]
mov rax, qword [rbp + 0x218]
mov rdx, qword [rax]
mov qword [rcx], rdx
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.140025b50
mov rcx, qword [rbp + 0x210]
call fcn.14005d2f0
mov rcx, qword [rbp + 0x208]
call fcn.14005d2f0
mov rax, qword [rbp + 0x358]
add rsp, 0x20
mov al, byte [rax]
cmp al, 0
je 0x1401b3e63
jmp 0x1401b3e79
mov rcx, qword [rbp + 0x210]
sub rsp, 0x20
call fcn.14005d2f0
mov rcx, qword [rbp + 0x208]
call fcn.14005d2f0
add rsp, 0x20
jmp 0x1401b4164
mov rcx, qword [rbp + 0x290]
mov edx, 0x18
sub rsp, 0x20
call fcn.1401b4760
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov edx, 0x18
sub rsp, 0x20
call fcn.1401b4760
mov rdx, qword [rbp + 0x2a8]
mov rcx, qword [rbp + 0x108]
mov al, byte [rbp + 0x117]
add rsp, 0x20
mov qword [rdx], 0
mov qword [rcx], 0
test al, 1
jne 0x1401b35c4
jmp 0x1401b3617
mov rcx, qword [rbp + 0x298]
sub rsp, 0x20
call fcn.14005cf66
mov rax, qword [rbp + 0x358]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xbe
xor cl, 0xbe
cmp al, cl
jne 0x1401b3a55
mov rcx, qword [rbp + 0x290]
sub rsp, 0x20
call fcn.14005cf66
mov rax, qword [rbp + 0x358]
add rsp, 0x20
cmp byte [rax], 0
je 0x1401b3a5a
jmp 0x1401b3a55
mov rcx, qword [rbp + 0x2d0]
mov rdx, qword [rbp + 0x2d8]
mov rax, qword [rbp + 0x340]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001d024
mov rdx, qword [rbp + 0x2d0]
mov rax, qword [rbp + 0x118]
mov rcx, qword [rbp + 0x2b0]
add rsp, 0x20
mov rdx, qword [rdx]
mov qword [rbp + 0x28], rdx
mov rax, qword [rax]
mov qword [rbp + 0x30], rax
movabs rdx, 0x159164e10d8a26a9
movabs rax, 0x159164e10d8a26b1
xor rdx, rax
sub rsp, 0x20
call fcn.1401b4760
mov r10, qword [rbp + 0x28]
mov r9, qword [rbp + 0x30]
mov rax, qword [rbp + 0x120]
mov rcx, qword [rbp + 0x2b0]
mov rdx, qword [rbp + 0x388]
mov r8, qword [rbp + 0x2e0]
add rsp, 0x20
mov qword [r8], r10
mov qword [rax], r9
sub rsp, 0x20
call fcn.1400c9030
mov rax, qword [rbp + 0x358]
add rsp, 0x20
mov cl, byte [rax]
mov dl, 0xa6
xor dl, 0xa6
mov al, 1
cmp cl, dl
mov byte [rbp + 0x3f], al
jne 0x1401b3975
mov rcx, qword [rbp + 0x290]
mov rax, qword [rbp + 0x298]
mov rdx, qword [rbp + 0x2b0]
mov r8, qword [rdx + 0x10]
mov qword [rcx + 0x10], r8
movups xmm0, xmmword [rdx]
movups xmmword [rcx], xmm0
mov r8, qword [rdx + 0x10]
mov qword [rax + 0x10], r8
movups xmm0, xmmword [rdx]
movups xmmword [rax], xmm0
sub rsp, 0x20
call fcn.14005cf3f
mov rcx, qword [rbp + 0x128]
mov rax, qword [rbp + 0x358]
add rsp, 0x20
mov cl, byte [rcx]
test cl, cl
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x27], al
or al, cl
test al, 1
jne 0x1401b374c
jmp 0x1401b37c8
mov cl, byte [rbp + 0x27]
mov al, 1
test cl, 1
mov byte [rbp + 0x3f], al
jne 0x1401b3975
jmp 0x1401b3762
mov rcx, qword [rbp + 0x2f0]
sub rsp, 0x20
call fcn.14007c8e0
mov rdx, qword [rbp + 0x2f0]
mov rax, qword [rbp + 0x130]
mov rcx, qword [rbp + 0x358]
add rsp, 0x20
mov rdx, qword [rdx]
mov qword [rbp + 0x10], rdx
mov rax, qword [rax]
mov qword [rbp + 0x18], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x3f], al
jne 0x1401b3975
mov rax, qword [rbp + 0x108]
mov rcx, qword [rbp + 0x18]
mov rdx, qword [rbp + 0x2a8]
mov r8, qword [rbp + 0x10]
mov qword [rdx], r8
mov qword [rax], rcx
jmp 0x1401b3813
mov rdx, qword [rbp + 0x2e8]
mov rcx, qword [rbp + 0x2a8]
mov rax, qword [rbp + 0x298]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001976a
mov rax, qword [rbp + 0x358]
add rsp, 0x20
mov cl, byte [rax]
mov dl, 0x59
xor dl, 0x59
mov al, 1
cmp cl, dl
mov byte [rbp + 0x3f], al
jne 0x1401b3975
mov rax, qword [rbp + 0x128]
mov al, byte [rax]
mov cl, 0x4a
xor cl, 0x4a
cmp al, cl
jne 0x1401b38ba
mov rax, qword [rbp + 0x108]
mov rax, qword [rax]
mov qword [rbp + 8], rax
cmp rax, 0
je 0x1401b386d
mov rcx, qword [rbp + 8]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x1401b386d
mov rcx, qword [rbp + 8]
sub rsp, 0x20
call fcn.14000eb2e
add rsp, 0x20
mov rcx, qword [rbp + 0x298]
sub rsp, 0x20
call fcn.14005cf66
mov rax, qword [rbp + 0x358]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401b3a55
mov rcx, qword [rbp + 0x290]
sub rsp, 0x20
call fcn.14005cf66
mov rax, qword [rbp + 0x358]
add rsp, 0x20
cmp byte [rax], 0
je 0x1401b3a5a
jmp 0x1401b3a55
mov rdx, qword [rbp + 0x2b8]
mov rax, qword [rbp + 0x2c0]
mov rcx, qword [rbp + 0x340]
mov byte [rdx], 1
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rdx, qword [rcx + 8]
mov qword [rax + 8], rdx
sub rsp, 0x20
call fcn.140010510
mov r8, qword [rbp + 0x2c0]
mov rdx, qword [rbp + 0x138]
mov rcx, qword [rbp + 0x2a8]
mov rax, qword [rbp + 0x2c8]
add rsp, 0x20
mov r9, qword [r8]
mov qword [rdx], r9
mov r8, qword [r8 + 8]
mov qword [rdx + 8], r8
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rdx, qword [rcx + 8]
mov qword [rax + 8], rdx
sub rsp, 0x20
call fcn.140010510
mov r8, qword [rbp + 0x2c8]
mov rax, qword [rbp + 0x140]
mov rcx, qword [rbp + 0x390]
mov rdx, qword [rbp + 0x2b8]
add rsp, 0x20
mov r9, qword [r8]
mov qword [rax], r9
mov r8, qword [r8 + 8]
mov qword [rax + 8], r8
sub rsp, 0x20
call fcn.14002fd00
mov rax, qword [rbp + 0x358]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp + 0x3f], al
mov rax, qword [rbp + 0x108]
mov rcx, qword [rbp + 0x358]
mov dl, byte [rbp + 0x3f]
mov byte [rbp - 2], dl
cmp dl, 0
sete dl
mov byte [rbp - 1], dl
mov dl, 0xd
xor dl, 0xd
mov byte [rcx], dl
mov rax, qword [rax]
mov qword [rbp], rax
cmp rax, 0
je 0x1401b39ec
mov rcx, qword [rbp]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
movabs rcx, 0xfd140dfff46ec7d4
movabs rdx, 0xfd140dfff46ec7d4
xor rcx, rdx
cmp rax, rcx
jne 0x1401b39ec
mov rcx, qword [rbp]
sub rsp, 0x20
call fcn.14000eb2e
add rsp, 0x20
mov rcx, qword [rbp + 0x298]
sub rsp, 0x20
call fcn.14005cf66
mov rax, qword [rbp + 0x358]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401b3a55
mov rcx, qword [rbp + 0x290]
sub rsp, 0x20
call fcn.14005cf66
mov rax, qword [rbp + 0x358]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401b3a55
mov al, byte [rbp - 1]
mov rcx, qword [rbp + 0x358]
mov dl, byte [rbp - 2]
mov byte [rcx], dl
test al, 1
jne 0x1401b3a50
jmp 0x1401b3a55
jmp 0x1401b3e63
jmp 0x1401b3e79
jmp 0x1401b4164
mov eax, dword [0x1401e0960]
mov ecx, dword [0x1401e0964]
mov edx, 0xddbc082
xor edx, 0x7f03a053
sub eax, edx
sub eax, ecx
add eax, 0x72d860d1
mov r8d, 0xffffffff
xor r8d, 0xbe1589fe
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov r8d, 0xd965104d
xor r8d, 0x677099b3
mov edx, eax
and edx, r8d
or eax, 0xbe1589fe
imul eax, edx
add eax, ecx
or eax, 0x9b454ba7
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0x462193ef
xor edx, 0x34241bb
and edx, ecx
mov r8d, 0xffffffff
xor r8d, 0x4563d254
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x4563d254
mov r8d, 0x3ac0b688
xor r8d, 0x7fa364dc
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0x678e4fad
xor ecx, 0xcb92113d
cmp eax, ecx
jbe 0x1401b46e2
mov eax, dword [0x1401e0968]
xor eax, 0xc89cf9f5
and eax, dword [0x1401e096c]
mov ecx, 0xc034bab3
xor edx, edx
div ecx
mov r8d, 0xffffffff
xor r8d, 0x3ecaf386
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0xb3303021
xor r8d, 0x4ccfcfde
xor ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x3ecaf386
mov r8d, 0x49e01764
xor r8d, 0x772ae4e2
or eax, r8d
imul eax, edx
add eax, ecx
sub eax, 0xb643393
cmp eax, 0xe0331700
ja 0x1401b46e2
mov al, byte [rbp + 0xe7]
test al, 1
jne 0x1401b3b98
jmp 0x1401b3c8b
mov ecx, dword [0x1401e0970]
xor ecx, 0x44a3f2fe
mov eax, dword [0x1401e0974]
xor eax, 0x8ce1e748
imul ecx, eax
mov eax, ecx
or eax, 0x149cad3e
xor eax, 0xffffffff
or ecx, 0x149cad3e
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
or eax, eax
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x933b4e74
mov edx, 0xffffffff
xor edx, 0x933b4e74
and ecx, edx
mov edx, 0x502dde4e
xor edx, 0xafd221b1
xor eax, edx
xor ecx, 0xffffffff
and eax, ecx
and eax, 0xbca6565a
mov ecx, 0xfec91a1a
xor ecx, 0xbfe09d2f
cmp eax, ecx
jbe 0x1401b46eb
mov eax, dword [0x1401e0978]
mov ecx, dword [0x1401e097c]
add eax, 0xd48e9de8
add eax, ecx
sub eax, 0xd48e9de8
mov edx, eax
xor edx, 0xffffffff
and edx, 0x401a2562
mov r8d, 0xffffffff
xor r8d, 0x401a2562
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x401a2562
or eax, 0x401a2562
imul eax, edx
add eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xf50e5d5
mov edx, 0xffffffff
xor edx, 0xf50e5d5
and eax, edx
sub eax, ecx
imul eax, eax, 0x1cf1d9e2
cmp eax, 0x512eafb3
je 0x1401b46eb
jmp 0x1401b4164
mov rcx, qword [rbp + 0x318]
mov rdx, qword [rbp + 0x320]
mov rax, qword [rbp + 0x340]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001d024
mov rdx, qword [rbp + 0x318]
mov rax, qword [rbp + 0xe8]
mov rcx, qword [rbp + 0x300]
add rsp, 0x20
mov rdx, qword [rdx]
mov qword [rbp - 0x20], rdx
mov rax, qword [rax]
mov qword [rbp - 0x18], rax
mov edx, 8
sub rsp, 0x20
call fcn.1401b4760
mov r9, qword [rbp - 0x20]
mov r8, qword [rbp - 0x18]
mov rax, qword [rbp + 0xf0]
mov rcx, qword [rbp + 0x388]
mov rdx, qword [rbp + 0x330]
add rsp, 0x20
mov qword [rdx], r9
mov qword [rax], r8
sub rsp, 0x20
call fcn.1400c8030
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x358]
mov qword [rbp - 0x10], rcx
cmp byte [rax], 0
jne 0x1401b3e5e
mov rax, qword [rbp - 0x10]
movabs rcx, 0x59ed7f7ff0d0be91
movabs rdx, 0x59ed7f7ef0d0be91
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x1401b3d87
sub rsp, 0x20
call fcn.14007c813
add rsp, 0x20
mov rax, qword [rbp + 0x358]
mov al, byte [rax]
mov cl, 0x85
xor cl, 0x85
cmp al, cl
je 0x1401b4164
jmp 0x1401b3e79
mov rax, qword [rbp + 0x310]
mov rcx, qword [rbp + 0x340]
mov rdx, qword [rbp + 0x308]
mov byte [rdx], 2
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rdx, qword [rcx + 8]
mov qword [rax + 8], rdx
sub rsp, 0x20
call fcn.140010510
mov rcx, qword [rbp + 0x310]
mov rax, qword [rbp + 0xf8]
mov rdx, qword [rbp - 0x10]
add rsp, 0x20
mov r8, qword [rcx]
mov qword [rax], r8
mov rcx, qword [rcx + 8]
mov qword [rax + 8], rcx
movabs rcx, 0x84273d2055d840b0
movabs rax, 0x84273d2055d84090
xor rcx, rax
shl rdx, cl
mov rcx, qword [rbp + 0x338]
sar rdx, 0x20
mov r8d, 1
sub rsp, 0x20
call fcn.1400455d0
mov rdx, qword [rbp + 0x338]
mov rcx, qword [rbp + 0x100]
mov rax, qword [rbp + 0x358]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rcx], r8
mov rdx, qword [rdx + 8]
mov qword [rcx + 8], rdx
cmp byte [rax], 0
jne 0x1401b3e5e
mov rdx, qword [rbp + 0x308]
mov rcx, qword [rbp + 0x390]
sub rsp, 0x20
call fcn.14002fd00
add rsp, 0x20
jmp 0x1401b3e63
jmp 0x1401b3e79
mov rax, qword [rbp + 0x358]
mov al, byte [rax]
mov cl, 0x5d
xor cl, 0x5d
cmp al, cl
je 0x1401b4164
mov eax, dword [0x1401e0980]
mov r8d, dword [0x1401e0984]
xor r8d, 0x8bcccd6
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
mov r9d, 0x5f7e7d08
xor r9d, 0xa08182f7
xor ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0x4c4767f9
xor edx, edx
div ecx
mov ecx, 0x387f754f
xor edx, edx
div ecx
mov ecx, eax
add ecx, 1
mov edx, 0x21e2c79b
xor edx, 0xde1d3864
xor eax, edx
or eax, 0xd8fe9150
add eax, ecx
cmp eax, 0xa8d8ebca
ja 0x1401b46f4
mov ecx, dword [0x1401e0988]
mov eax, dword [0x1401e098c]
add ecx, 0xdb682876
sub ecx, eax
sub ecx, 0xdb682876
mov edx, 0x5e0149c9
xor edx, 0xa1feb636
mov eax, ecx
xor eax, edx
mov r8d, 0x4569c733
xor r8d, 0xba9638cc
mov edx, ecx
xor edx, r8d
or eax, edx
and eax, 0xa0c3e58a
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xa0c3e58a
mov r8d, 0xffffffff
xor r8d, 0xa0c3e58a
or edx, r8d
mov r8d, 0xd0409c40
xor r8d, 0x2fbf63bf
xor ecx, r8d
xor edx, 0xffffffff
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
add eax, 0xe184ebd6
add eax, 0xcad14629
mov ecx, 0xbd73ae82
xor ecx, 0x5cf74554
sub eax, ecx
xor eax, 0xbafd8082
mov dword [rbp - 0x34], eax
mov eax, 0x98613d9f
xor eax, 0xb1b47710
mov dword [rbp - 0x38], eax
sub rsp, 0x20
call fcn.1401b4ca1
mov ecx, dword [rbp - 0x38]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x34]
mov rdx, qword [rdx]
mov qword [rbp - 0x30], rdx
mov dx, word [rdx + 0x12]
mov r8w, 0xa50c
xor r8w, 0xa50d
cmp dx, r8w
setg dl
mov byte [rbp - 0x21], dl
cmp eax, ecx
jb 0x1401b3ef4
mov al, byte [rbp - 0x21]
test al, 1
jne 0x1401b3feb
jmp 0x1401b4148
mov eax, dword [0x1401e0990]
add eax, dword [0x1401e0994]
mov ecx, 0xa40b24bb
xor ecx, 0xdeb14f5e
imul eax, ecx
mov ecx, 0x861ad07f
xor edx, edx
div ecx
mov ecx, eax
and ecx, 0x5583610a
shl ecx, 1
mov edx, 0x4c46d05e
xor edx, 0x19c5b154
add eax, edx
sub eax, ecx
cmp eax, 0x8367ffc
je 0x1401b46fd
mov rcx, qword [rbp - 0x30]
mov esi, dword [0x1401e0998]
xor esi, dword [0x1401e099c]
mov edx, esi
xor edx, 0xffffffff
mov r9d, 0xffffffff
xor r9d, 0x83441d2a
mov r8d, 0xffffffff
xor r8d, 0xdf3d4efe
mov eax, edx
and eax, 0xdf3d4efe
and esi, r8d
mov r10d, r9d
and r10d, 0xdf3d4efe
mov r11d, 0x9a3200c6
xor r11d, 0x19761dec
and r11d, r8d
or eax, esi
or r10d, r11d
xor eax, r10d
or edx, r9d
xor edx, 0xffffffff
or r8d, 0xdf3d4efe
and edx, r8d
or eax, edx
mov r8d, 0xc8f1a919
xor r8d, 0xc6dabf4
xor edx, edx
div r8d
mov edx, 0xffffffff
xor edx, 0x1d81a9d0
add eax, edx
mov edx, 0x2c1f5e8f
xor edx, 0x2c1f5e8e
add eax, edx
mov rcx, qword [rcx + 0x18]
cmp dword [rcx + 8], 0xd4054986
sete cl
mov byte [rbp - 0x39], cl
cmp eax, 0xec38374e
jae 0x1401b4033
mov al, byte [rbp - 0x39]
test al, 1
jne 0x1401b40f8
jmp 0x1401b4148
mov rax, qword [rbp + 0x358]
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401b4cb3
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.14008f410
mov rcx, qword [rbp + 0x358]
mov eax, dword [rbp + 0xac]
add rsp, 0x20
cmp byte [rcx], 0
mov dword [rbp + 0x9c], eax
jne 0x1401b42ff
sub rsp, 0x20
call fcn.1401b4ce8
add rsp, 0x20
mov eax, dword [rbp + 0xac]
mov rcx, qword [rbp + 0x358]
cmp byte [rcx], 0
mov dword [rbp + 0x9c], eax
jne 0x1401b42ff
mov eax, dword [rbp + 0xac]
mov rcx, qword [rbp + 0x350]
mov dword [rcx], 0xffffffff
movsxd rcx, eax
mov qword [rbp - 0x50], rcx
mov rax, rcx
and rax, 1
mov rdx, rcx
or rdx, 1
add rax, rdx
mov qword [rbp - 0x48], rax
xor rcx, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jge 0x1401b41c2
sub rsp, 0x20
call fcn.1400077a3
mov eax, dword [rbp + 0xac]
add rsp, 0x20
mov dword [rbp + 0x9c], eax
jmp 0x1401b42ff
mov rax, qword [rbp - 0x50]
add rax, 0xffffffff80000001
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x1401b42f5
mov eax, dword [0x1401e09a0]
and eax, dword [0x1401e09a4]
mov r8d, 0x50c70e32
xor r8d, 0x812297f2
mov ecx, 0x67c45438
xor ecx, 0x983babc7
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, 0xd1e599c0
or eax, 0xd1e599c0
imul eax, edx
add eax, ecx
mov ecx, 0xe73f27d2
xor edx, edx
div ecx
mov ecx, 0xe7e1d744
xor ecx, 0x207209c0
or eax, ecx
cmp eax, 0x2205ea79
je 0x1401b4706
mov ecx, dword [0x1401e09a8]
xor ecx, dword [0x1401e09ac]
and ecx, 0x9d06e4ad
mov eax, ecx
and eax, 0x97a0ae24
xor eax, 0xffffffff
and ecx, 0x97a0ae24
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0x3dd9c972
xor edx, 0xc226368d
xor ecx, edx
or eax, ecx
mov ecx, 0x526637f4
xor ecx, 0xad99c80b
mov edx, eax
xor edx, ecx
and edx, 0x818a14eb
mov r8d, 0xffffffff
xor r8d, 0x818a14eb
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0xdd70c809
xor r8d, 0x5cfadce2
mov edx, eax
and edx, r8d
or eax, 0x818a14eb
imul eax, edx
add eax, ecx
mov dword [rbp - 0x54], eax
sub rsp, 0x20
call fcn.1400077a3
mov eax, dword [rbp - 0x54]
add rsp, 0x20
cmp eax, 0xf21f3969
je 0x1401b4706
mov eax, dword [rbp + 0xac]
mov dword [rbp + 0x9c], eax
jmp 0x1401b42ff
mov rax, qword [rbp - 0x48]
mov dword [rbp + 0x9c], eax
mov rax, qword [rbp + 0x90]
mov ecx, dword [rbp + 0x9c]
mov dword [rbp - 0x58], ecx
cmp rax, 0
je 0x1401b434b
mov rcx, qword [rbp + 0x90]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x1401b434b
mov rcx, qword [rbp + 0x90]
sub rsp, 0x20
call fcn.14000eb2e
add rsp, 0x20
mov eax, dword [rbp - 0x58]
mov rcx, qword [rbp + 0x358]
mov cl, byte [rcx]
cmp cl, 0
mov dword [rbp + 0x18c], eax
je 0x1401b2b3b
jmp 0x1401b4498
mov eax, dword [0x1401e09b0]
xor eax, 0xa2626513
mov ecx, dword [0x1401e09b4]
mov edx, 0xcbcc24dd
xor edx, 0xebad9bb7
xor ecx, edx
xor edx, edx
div ecx
mov ecx, 0xde804caf
xor ecx, 0x5842503a
mov edx, 0x35c561a
xor edx, 0xfca3a9e5
xor ecx, edx
mov edx, 0xac3299e5
xor edx, 0xac3299e5
mov r8d, 0x7f001304
xor r8d, 0x7f001305
sub edx, r8d
sub ecx, edx
sub eax, ecx
add eax, 0x87631e81
mov ecx, 0xf5ceab76
xor ecx, 0x5ab42c9
or eax, ecx
cmp eax, 0x4bb4aaf9
je 0x1401b470f
mov ecx, dword [rbp + 0xa4]
mov eax, dword [0x1401e09b8]
mov r9d, dword [0x1401e09bc]
mov r8d, 0xbe899f53
xor r8d, 0x417660ac
mov edx, eax
xor edx, r8d
mov r8d, r9d
and r8d, edx
mov r10d, r9d
xor r10d, 0xffffffff
mov edx, eax
and edx, r10d
imul edx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, edx
mov edx, eax
xor edx, 0xffffffff
xor eax, 0xffffffff
and edx, eax
mov eax, 0x82d471d2
or eax, 0x82d471d2
xor eax, 0xffffffff
xor edx, 0xffffffff
xor eax, 0xffffffff
and edx, eax
mov eax, edx
and eax, 0xc1914fb8
mov r8d, 0x672ad557
xor r8d, 0xa6bb9aef
xor edx, r8d
or eax, edx
add eax, 0xe47e399e
mov dword [rbp - 0x5c], eax
mov eax, 0x6be8fe2c
xor eax, 0x9957182a
mov dword [rbp - 0x60], eax
sub rsp, 0x20
call fcn.1400c9b25
mov ecx, dword [rbp - 0x60]
mov eax, dword [rbp - 0x5c]
add rsp, 0x20
cmp eax, ecx
je 0x1401b470f
jmp 0x1401b4498
mov rax, qword [rbp + 0x368]
mov rax, qword [rax]
mov qword [rbp - 0x68], rax
cmp rax, 0
je 0x1401b44f6
mov rax, qword [rbp - 0x68]
mov rax, qword [rax]
movabs rdx, 0x4000000000000000
mov rcx, rax
xor rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
or rax, rdx
and rax, rcx
cmp rax, 0
jne 0x1401b44f6
mov rcx, qword [rbp - 0x68]
sub rsp, 0x20
call fcn.14000eb2e
add rsp, 0x20
mov eax, dword [0x1401e09c0]
xor edx, edx
div dword [0x1401e09c4]
mov ecx, 0x213cf865
xor ecx, 0x59d1f63
xor edx, edx
div ecx
mov r11d, eax
mov eax, 0xee5411cf
xor eax, 0xeebba2a1
sub r11d, eax
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xc508c97d
mov edx, 0xffffffff
xor edx, 0x2c3c0efd
mov eax, ecx
and eax, 0x2c3c0efd
and r11d, edx
mov r9d, r8d
and r9d, 0x2c3c0efd
mov r10d, edx
and r10d, 0xc508c97d
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0x2c3c0efd
and ecx, edx
or eax, ecx
cmp eax, 0xb8ffd509
je 0x1401b4718
mov rcx, qword [rbp + 0x360]
mov eax, dword [0x1401e09c8]
xor eax, 0x2b90c1a3
mov r9d, dword [0x1401e09cc]
mov edx, 0x23b12ac9
xor edx, 0x9a60fd9
xor r9d, edx
mov r10d, r9d
xor r10d, 0xffffffff
mov r8d, eax
and r8d, r10d
mov edx, eax
or edx, r10d
mov r10d, 0x322886a3
xor r10d, 0xcdd7795c
xor edx, r10d
imul edx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, edx
mov r8d, eax
xor r8d, 0xacb82790
xor r8d, 0xffffffff
mov edx, 0x3459bee2
xor edx, 0x98e19972
and edx, r8d
shl edx, 1
mov r8d, 0xa52cbe44
xor r8d, 0x99499d4
sub edx, r8d
sub eax, edx
mov edx, eax
and edx, 0x439ff051
shl edx, 1
add eax, 0x439ff051
sub eax, edx
mov edx, 0x64d2e435
xor edx, 0xad0d2630
or eax, edx
mov rcx, qword [rcx]
mov qword [rbp - 0x78], rcx
cmp rcx, 0
sete cl
mov byte [rbp - 0x69], cl
cmp eax, 0x392488d3
jbe 0x1401b4718
mov al, byte [rbp - 0x69]
test al, 1
jne 0x1401b46a1
jmp 0x1401b465b
mov rax, qword [rbp - 0x78]
mov rax, qword [rax]
movabs rdx, 0x4000000000000000
mov rcx, rax
xor rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
or rax, rdx
and rax, rcx
cmp rax, 0
jne 0x1401b46a1
mov rcx, qword [rbp - 0x78]
sub rsp, 0x20
call fcn.14000eb2e
add rsp, 0x20
lea rsp, [rbp + 0x398]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
bswap esi
push rax
sti
jmp 0x1401b21ba
pop rax
xchg ebx, eax
invalid
invalid
invalid
in eax, dx
movabs eax, dword [0xa9ffffeaa2e91c6e]
invalid
test eax, 0xe9f32607
sub esp, esi
invalid
fucomi st(6)
push rdx
jmp 0x1401b3c11
int3
and dword [rax + 0x2de945af], ecx
stc
invalid
call [rcx + 0x3ae9a958]
sti
invalid
invalid
mov dword [rdx + 0x12], 0xfe62e9bf
invalid