Function at 0x140162ce0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
push rdi
sub rsp, 0x440
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x248], r8
mov qword [rbp + 0x1d8], rdx
mov qword [rbp + 0x1e0], rcx
mov eax, 0x10
mov qword [rbp + 0x228], rax
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x228]
mov rcx, rsp
mov qword [rbp + 0x1e8], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x228]
mov rcx, rsp
mov qword [rbp + 0x250], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x228]
mov rcx, rsp
mov qword [rbp + 0x1f0], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x228]
mov rcx, rsp
mov qword [rbp + 0x1f8], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x228]
mov rcx, rsp
mov qword [rbp + 0x200], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x228]
mov rcx, rsp
mov qword [rbp + 0x208], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x228]
mov rcx, rsp
mov qword [rbp + 0x210], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x228]
mov rcx, rsp
mov qword [rbp + 0x218], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x228]
mov rcx, rsp
mov qword [rbp + 0x220], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x228]
mov rcx, rsp
mov qword [rbp + 0x230], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x238], rax
sub rsp, 0x20
call fcn.140167250
add rsp, 0x20
mov qword [rbp + 0x268], rax
add rax, 0x60
mov qword [rbp + 0x240], rax
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.140016330
mov r8, qword [rbp + 0x248]
mov rdx, qword [rbp + 0x250]
add rsp, 0x20
mov rcx, rax
mov qword [rbp + 0x258], rcx
lea rax, [0x1401f9fa0]
mov qword [rcx], rax
add rcx, 0x10
mov qword [rbp + 0x260], rcx
mov rax, qword [r8]
mov qword [rdx], rax
mov rax, qword [r8 + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140139160
mov rax, qword [rbp + 0x268]
add rsp, 0x20
mov dl, byte [rax + 0x60]
mov r8b, 0xbd
xor r8b, 0xbd
mov cl, 1
xor eax, eax
cmp dl, r8b
mov byte [rbp + 0x277], cl
mov qword [rbp + 0x278], rax
jne 0x140164fb6
mov rcx, qword [rbp + 0x1d8]
mov rax, qword [rbp + 0x260]
mov rdx, qword [rbp + 0x248]
mov qword [rdx], 0
mov qword [rdx + 8], 0
mov rax, qword [rax]
test rax, rax
sete al
mov cl, byte [rcx + 4]
mov byte [rbp + 0x1d7], cl
sub cl, 1
sete cl
and al, cl
test al, 1
jne 0x140162f13
jmp 0x140163033
mov rax, qword [rbp + 0x1d8]
mov rcx, qword [rax + 0x30]
mov qword [rbp + 0x390], rcx
mov rax, qword [rax + 0x38]
mov qword [rbp + 0x398], rax
lea rcx, [rbp + 0x3a0]
lea rdx, [rbp + 0x390]
sub rsp, 0x20
call fcn.14015b260
mov rdx, qword [rbp + 0x240]
add rsp, 0x20
mov rax, qword [rbp + 0x3a0]
mov qword [rbp + 0x1c0], rax
mov rax, qword [rbp + 0x3a8]
mov qword [rbp + 0x1c8], rax
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x277], cl
mov qword [rbp + 0x278], rax
jne 0x140164fb6
mov rax, qword [rbp + 0x1c8]
mov rcx, qword [rbp + 0x1c0]
mov rdx, qword [rbp + 0x1e0]
mov r8, qword [rbp + 0x1d8]
mov r8d, dword [r8 + 0xc]
mov r9, qword [rdx]
mov qword [rbp + 0x380], r9
mov rdx, qword [rdx + 8]
mov qword [rbp + 0x388], rdx
mov qword [rbp + 0x370], rcx
mov qword [rbp + 0x378], rax
lea rcx, [rbp + 0x380]
lea rdx, [rbp + 0x370]
sub rsp, 0x20
call fcn.14014f620
mov rdx, qword [rbp + 0x240]
add rsp, 0x20
mov qword [rbp + 0x1b8], rax
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x277], cl
mov qword [rbp + 0x278], rax
jne 0x140164fb6
mov rax, qword [rbp + 0x1b8]
mov rcx, qword [rbp + 0x1d8]
mov ecx, dword [rcx]
mov dword [rax + 0x20], ecx
xor ecx, ecx
mov byte [rbp + 0x277], cl
mov qword [rbp + 0x278], rax
jmp 0x140164fb6
mov al, byte [rbp + 0x1d7]
mov cl, 0xf4
xor cl, 0xf4
cmp al, cl
jne 0x140164f26
mov rcx, qword [rbp + 0x1e8]
mov rax, qword [rbp + 0x1d8]
mov rdx, qword [rbp + 0x1e0]
mov r8, qword [rdx]
mov qword [rcx], r8
mov rdx, qword [rdx + 8]
mov qword [rcx + 8], rdx
mov rcx, qword [rax + 0x10]
mov qword [rbp + 0x3b0], rcx
mov rax, qword [rax + 0x18]
mov qword [rbp + 0x3b8], rax
sub rsp, 0x20
call fcn.140167250
mov rdx, qword [rbp + 0x1e8]
mov rcx, qword [rbp + 0x1f0]
add rsp, 0x20
lea r8, [rbp + 0x3b0]
sub rsp, 0x20
call fcn.14009a0b8
mov rax, qword [rbp + 0x1f0]
mov rdx, qword [rbp + 0x240]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0x190], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x198], rax
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x1a7], cl
mov rcx, rax
mov qword [rbp + 0x1a8], rcx
mov qword [rbp + 0x1b0], rax
jne 0x140164dda
mov rax, qword [rbp + 0x1d8]
mov rcx, qword [rax + 0x30]
mov qword [rbp + 0x350], rcx
mov rax, qword [rax + 0x38]
mov qword [rbp + 0x358], rax
lea rcx, [rbp + 0x360]
lea rdx, [rbp + 0x350]
sub rsp, 0x20
call fcn.14015b260
mov rdx, qword [rbp + 0x240]
add rsp, 0x20
mov rax, qword [rbp + 0x360]
mov qword [rbp + 0x180], rax
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0x188], rax
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x1a7], cl
mov rcx, rax
mov qword [rbp + 0x1a8], rcx
mov qword [rbp + 0x1b0], rax
jne 0x140164dda
mov rdx, qword [rbp + 0x200]
mov rcx, qword [rbp + 0x1f8]
mov rax, qword [rbp + 0x188]
mov r8, qword [rbp + 0x180]
mov r9, qword [rbp + 0x198]
mov r10, qword [rbp + 0x190]
mov qword [rcx], r10
mov qword [rcx + 8], r9
mov qword [rdx], r8
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14013d110
mov r8, qword [rbp + 0x240]
add rsp, 0x20
mov rcx, rax
mov qword [rbp + 0x178], rcx
mov dl, 1
xor eax, eax
cmp byte [r8], 0
mov byte [rbp + 0x1a7], dl
mov qword [rbp + 0x1a8], rcx
mov qword [rbp + 0x1b0], rax
jne 0x140164dda
mov eax, dword [0x1401fb448]
xor eax, dword [0x1401fb44c]
mov ecx, eax
and ecx, 0xe6d1132
shl ecx, 1
add eax, 0xe6d1132
sub eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, eax
xor edx, 0xffffffff
and ecx, edx
mov edx, 0xffffffff
xor edx, 0xab82d56b
mov r8d, 0xffffffff
xor r8d, 0xab82d56b
and edx, r8d
mov r8d, 0x2b438496
xor r8d, 0xd4bc7b69
xor ecx, r8d
mov r8d, 0x40cc9edf
xor r8d, 0xbf336120
xor edx, r8d
and ecx, edx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xab82d56b
and eax, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
and ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0xc31ff067
mov edx, 0xffffffff
xor edx, 0xc31ff067
and ecx, edx
or eax, ecx
mov ecx, 0xcc4adc86
xor ecx, 0x91a3e6c0
cmp eax, ecx
jb 0x1401651d3
mov rax, qword [rbp + 0x178]
mov rcx, qword [rbp + 0x1d8]
mov edx, dword [0x1401fb450]
xor edx, dword [0x1401fb454]
mov r9d, edx
xor r9d, 0xffffffff
and r9d, 0xd28268ed
mov r10d, 0xffffffff
xor r10d, 0xd28268ed
mov r8d, edx
and r8d, r10d
imul r8d, r9d
mov r9d, edx
and r9d, 0xd28268ed
or edx, 0xd28268ed
imul edx, r9d
add edx, r8d
and edx, 0x70d2834f
mov r10d, 0xffffffff
xor r10d, 0xba8aae2
mov r9d, edx
and r9d, r10d
mov r8d, edx
or r8d, r10d
mov r10d, 0x7bca1e66
xor r10d, 0x8435e199
xor r8d, r10d
imul r8d, r9d
mov r9d, edx
and r9d, 0xba8aae2
or edx, 0xba8aae2
imul edx, r9d
add edx, r8d
mov dword [rbp + 0x170], edx
mov ecx, dword [rcx]
mov dword [rax + 0x20], ecx
lea rcx, [rbp + 0x340]
xor eax, eax
mov edx, eax
sub rsp, 0x20
call fcn.14002982d
mov rcx, qword [rbp + 0x258]
add rsp, 0x20
mov rdx, qword [rbp + 0x340]
mov rax, qword [rbp + 0x348]
add rcx, 0x20
mov qword [rbp + 0x168], rcx
mov qword [rbp + 0x330], rdx
mov qword [rbp + 0x338], rax
lea rdx, [rbp + 0x330]
sub rsp, 0x20
call fcn.140162440
mov rcx, qword [rbp + 0x240]
mov eax, dword [rbp + 0x170]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x177], cl
cmp eax, 0x11a9a039
je 0x1401651d3
mov rcx, qword [rbp + 0x178]
mov r8b, byte [rbp + 0x177]
mov dl, 1
xor eax, eax
test r8b, 1
mov byte [rbp + 0x1a7], dl
mov qword [rbp + 0x1a8], rcx
mov qword [rbp + 0x1b0], rax
jne 0x1401633f5
jmp 0x140164dda
mov rax, qword [rbp + 0x210]
mov rdx, qword [rbp + 0x220]
mov r8, qword [rbp + 0x258]
mov rcx, qword [rbp + 0x260]
mov rcx, qword [rcx]
add r8, 0x18
mov qword [rbp + 0x130], r8
add rdx, 8
mov qword [rbp + 0x138], rdx
lea rdx, [rbp + 0x2e0]
add rdx, 8
mov qword [rbp + 0x140], rdx
lea rdx, [rbp + 0x320]
add rdx, 8
mov qword [rbp + 0x148], rdx
add rax, 8
mov qword [rbp + 0x150], rax
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rbp + 0x158], rax
xor eax, eax
mov qword [rbp + 0x160], rax
mov rcx, qword [rbp + 0x158]
mov rax, qword [rbp + 0x160]
mov qword [rbp + 0x128], rax
cmp rax, rcx
je 0x140163c92
mov rax, qword [rbp + 0x128]
mov rcx, qword [rbp + 0x260]
mov rcx, qword [rcx]
mov qword [rbp + 0x120], rcx
cmp rax, rcx
jl 0x1401634d5
mov rcx, qword [rbp + 0x128]
mov rdx, qword [rbp + 0x120]
add rdx, 0xffffffffffffffff
sub rsp, 0x20
call fcn.140016582
add rsp, 0x20
jmp 0x140164db4
mov rcx, qword [rbp + 0x128]
mov rax, qword [rbp + 0x130]
mov rax, qword [rax]
lea rdx, [rax + rcx*8 + 8]
mov qword [rbp + 0x110], rdx
mov rax, qword [rax + rcx*8 + 8]
mov al, byte [rax + 4]
mov byte [rbp + 0x11f], al
test al, al
je 0x140163520
jmp 0x14016350d
mov al, byte [rbp + 0x11f]
sub al, 1
je 0x1401638d6
jmp 0x140163bbc
mov ecx, dword [0x1401fb458]
mov edx, dword [0x1401fb45c]
xor edx, 0xd40b0a2c
mov eax, ecx
xor eax, edx
xor eax, 0xffffffff
or ecx, edx
and ecx, eax
mov edx, 0x7dc527d3
xor edx, 0x823ad82c
mov eax, ecx
xor eax, edx
mov edx, 0xffffffff
xor edx, 0x12b1b611
or eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x12b1b611
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xdd32dc53
xor ecx, 0x7fa5b098
sub eax, ecx
mov ecx, 0x153004f8
xor ecx, 0x9879493c
sub eax, ecx
cmp eax, 0x81096ea0
jb 0x1401651dc
mov ecx, dword [0x1401fb460]
xor ecx, 0xc094de7e
mov edx, dword [0x1401fb464]
mov eax, ecx
and eax, edx
xor ecx, edx
or eax, ecx
mov r8d, 0xa3541783
xor r8d, 0x8c49c8c6
mov ecx, 0xb171329e
xor ecx, 0x4e8ecd61
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0xcc139a7e
xor r8d, 0x33ec6581
xor ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x2f1ddf45
or eax, 0x2f1ddf45
imul eax, edx
add eax, ecx
and eax, 0xbd5948af
xor eax, 0xb618b61b
mov dword [rbp + 0x108], eax
mov ecx, 0x68
mov edx, 8
sub rsp, 0x20
call fcn.140016330
mov rdx, qword [rbp + 0x110]
mov rcx, qword [rbp + 0x178]
add rsp, 0x20
mov qword [rbp + 0x100], rax
mov rdx, qword [rdx]
mov edx, dword [rdx]
mov dword [rax + 0x20], edx
mov byte [rax], 0
sub rsp, 0x20
xor eax, eax
mov dl, al
call fcn.14013e400
mov rcx, qword [rbp + 0x240]
add rsp, 0x20
mov eax, dword [rbp + 0x108]
mov cl, byte [rcx]
mov dl, 0xe1
xor dl, 0xe1
cmp cl, dl
sete cl
mov byte [rbp + 0x10f], cl
cmp eax, 0x92984942
jb 0x140163596
mov rcx, qword [rbp + 0x178]
mov r8b, byte [rbp + 0x10f]
mov dl, 1
xor eax, eax
test r8b, 1
mov byte [rbp + 0x1a7], dl
mov qword [rbp + 0x1a8], rcx
mov qword [rbp + 0x1b0], rax
jne 0x1401636b1
jmp 0x140164dda
mov r8, qword [rbp + 0x178]
mov rdx, qword [rbp + 0x208]
mov rax, qword [rbp + 0x110]
mov rcx, qword [rbp + 0x100]
mov qword [rcx + 0x38], r8
mov qword [rcx + 0x40], 0
mov rax, qword [rax]
mov rcx, qword [rax + 0x30]
mov qword [rdx], rcx
mov rax, qword [rax + 0x38]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x320]
sub rsp, 0x20
call fcn.14015b260
mov rdx, qword [rbp + 0x148]
mov rax, qword [rbp + 0x240]
mov rcx, qword [rbp + 0x178]
add rsp, 0x20
mov r8, qword [rbp + 0x320]
mov qword [rbp + 0xf0], r8
mov rdx, qword [rdx]
mov qword [rbp + 0xf8], rdx
mov r8b, byte [rax]
mov r9b, 0xae
xor r9b, 0xae
mov dl, 1
xor eax, eax
cmp r8b, r9b
mov byte [rbp + 0x1a7], dl
mov qword [rbp + 0x1a8], rcx
mov qword [rbp + 0x1b0], rax
jne 0x140164dda
mov rdx, qword [rbp + 0x100]
mov rax, qword [rbp + 0x110]
mov rcx, qword [rbp + 0x210]
mov r8, qword [rbp + 0xf8]
mov r9, qword [rbp + 0xf0]
mov qword [rdx + 0x58], r9
mov qword [rdx + 0x60], r8
mov rax, qword [rax]
mov rdx, qword [rax + 0x10]
mov qword [rbp + 0x310], rdx
mov rax, qword [rax + 0x18]
mov qword [rbp + 0x318], rax
lea rdx, [rbp + 0x310]
sub rsp, 0x20
call fcn.140020190
mov r8, qword [rbp + 0x210]
mov rdx, qword [rbp + 0x150]
mov rcx, qword [rbp + 0x110]
mov rax, qword [rbp + 0x100]
add rsp, 0x20
mov r8, qword [r8]
mov rdx, qword [rdx]
mov qword [rax + 0x28], r8
mov qword [rax + 0x30], rdx
mov rcx, qword [rcx]
mov ecx, dword [rcx + 0xc]
mov dword [rax + 0x24], ecx
mov ecx, 0x20
sub rsp, 0x20
call fcn.140059870
mov r8, qword [rbp + 0x240]
mov rcx, qword [rbp + 0x178]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x100]
mov qword [rax + 8], rdx
mov dl, 1
xor eax, eax
cmp byte [r8], 0
mov byte [rbp + 0x1a7], dl
mov qword [rbp + 0x1a8], rcx
mov qword [rbp + 0x1b0], rax
jne 0x140164dda
mov rdx, qword [rbp + 0x218]
mov rax, qword [rbp + 0x110]
mov rax, qword [rax]
mov rcx, qword [rax + 0x20]
mov qword [rdx], rcx
mov rax, qword [rax + 0x28]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x300]
sub rsp, 0x20
call fcn.14013b830
mov rax, qword [rbp + 0x100]
mov r8, qword [rbp + 0x240]
mov rcx, qword [rbp + 0x178]
add rsp, 0x20
mov rdx, qword [rbp + 0x300]
mov qword [rax + 0x48], rdx
mov rdx, qword [rbp + 0x308]
mov qword [rax + 0x50], rdx
mov dl, 1
xor eax, eax
cmp byte [r8], 0
mov byte [rbp + 0x1a7], dl
mov qword [rbp + 0x1a8], rcx
mov qword [rbp + 0x1b0], rax
jne 0x140164dda
mov rax, qword [rbp + 0x100]
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], 0
mov qword [rbp + 0xe8], rax
jmp 0x140163c39
mov eax, dword [0x1401fb468]
xor eax, dword [0x1401fb46c]
mov ecx, 0x9d8681fc
xor ecx, 0x41b888ed
xor edx, edx
div ecx
mov ecx, 0xbb328601
xor ecx, 0xc8ae293c
xor eax, ecx
mov ecx, 0x44583c7b
xor edx, edx
div ecx
mov ecx, 0x3bf6cc4d
xor ecx, 0x8c2b3941
cmp eax, ecx
jae 0x1401651e5
mov eax, dword [0x1401fb470]
xor edx, edx
div dword [0x1401fb474]
add eax, 0x4552dcdc
mov ecx, 0x7abbe8c3
xor ecx, 0x7abbe8c3
mov edx, 0xf5782097
xor edx, 0x8e679e22
sub ecx, edx
add eax, ecx
add eax, 0x7cb8e9ba
sub eax, 0x1a66d918
sub eax, 0x7cb8e9ba
mov dword [rbp + 0xe0], eax
mov ecx, 0x68
mov edx, 8
sub rsp, 0x20
call fcn.140016330
mov rdx, qword [rbp + 0x110]
mov rcx, qword [rbp + 0x178]
add rsp, 0x20
mov qword [rbp + 0xd8], rax
mov rdx, qword [rdx]
mov edx, dword [rdx]
mov dword [rax + 0x20], edx
mov dl, 0x72
xor dl, 0x73
mov byte [rax], dl
sub rsp, 0x20
xor eax, eax
mov dl, al
call fcn.14013e400
mov rcx, qword [rbp + 0x240]
add rsp, 0x20
mov eax, dword [rbp + 0xe0]
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0xe7], cl
cmp eax, 0x4c9a1320
je 0x1401651e5
mov rcx, qword [rbp + 0x178]
mov r8b, byte [rbp + 0xe7]
mov dl, 1
xor eax, eax
test r8b, 1
mov byte [rbp + 0x1a7], dl
mov qword [rbp + 0x1a8], rcx
mov qword [rbp + 0x1b0], rax
jne 0x140163a01
jmp 0x140164dda
mov r8, qword [rbp + 0x178]
mov rcx, qword [rbp + 0x220]
mov rax, qword [rbp + 0x110]
mov rdx, qword [rbp + 0xd8]
mov qword [rdx + 0x38], r8
mov qword [rdx + 0x40], 0
mov rax, qword [rax]
mov rdx, qword [rax + 0x30]
mov qword [rbp + 0x2f0], rdx
mov rax, qword [rax + 0x38]
mov qword [rbp + 0x2f8], rax
lea rdx, [rbp + 0x2f0]
sub rsp, 0x20
call fcn.14015b260
mov rdx, qword [rbp + 0x220]
mov rax, qword [rbp + 0x138]
mov r8, qword [rbp + 0x240]
mov rcx, qword [rbp + 0x178]
add rsp, 0x20
mov rdx, qword [rdx]
mov qword [rbp + 0xc8], rdx
mov rax, qword [rax]
mov qword [rbp + 0xd0], rax
mov dl, 1
xor eax, eax
cmp byte [r8], 0
mov byte [rbp + 0x1a7], dl
mov qword [rbp + 0x1a8], rcx
mov qword [rbp + 0x1b0], rax
jne 0x140164dda
mov rcx, qword [rbp + 0xd8]
mov rax, qword [rbp + 0x110]
mov rdx, qword [rbp + 0xd0]
mov r8, qword [rbp + 0xc8]
mov qword [rcx + 0x58], r8
mov qword [rcx + 0x60], rdx
mov rax, qword [rax]
mov rcx, qword [rax + 0x10]
mov qword [rbp + 0x2d0], rcx
mov rax, qword [rax + 0x18]
mov qword [rbp + 0x2d8], rax
lea rcx, [rbp + 0x2e0]
lea rdx, [rbp + 0x2d0]
sub rsp, 0x20
call fcn.140020190
mov r8, qword [rbp + 0x140]
mov rax, qword [rbp + 0x110]
mov rcx, qword [rbp + 0x230]
mov rdx, qword [rbp + 0xd8]
add rsp, 0x20
mov r9, qword [rbp + 0x2e0]
mov r8, qword [r8]
mov qword [rdx + 0x28], r9
mov qword [rdx + 0x30], r8
mov rax, qword [rax]
mov r8d, dword [rax + 0xc]
mov dword [rdx + 0x24], r8d
mov rdx, qword [rax + 0x20]
mov qword [rbp + 0x2c0], rdx
mov rax, qword [rax + 0x28]
mov qword [rbp + 0x2c8], rax
lea rdx, [rbp + 0x2c0]
sub rsp, 0x20
call fcn.14013b830
mov rax, qword [rbp + 0x230]
mov r9, qword [rbp + 0x240]
mov r8, qword [rbp + 0xd8]
mov rcx, qword [rbp + 0x178]
add rsp, 0x20
mov rdx, qword [rax]
mov qword [r8 + 0x48], rdx
mov rax, qword [rax + 8]
mov qword [r8 + 0x50], rax
mov dl, 1
xor eax, eax
cmp byte [r9], 0
mov qword [rbp + 0xe8], r8
mov byte [rbp + 0x1a7], dl
mov qword [rbp + 0x1a8], rcx
mov qword [rbp + 0x1b0], rax
je 0x140163c39
jmp 0x140164dda
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.140016330
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x1402085d0]
mov qword [rcx], rax
lea rax, [0x140207c78]
mov qword [rcx + 0x10], rax
mov rax, qword [0x140207d28]
mov qword [rcx + 0x18], rax
mov rax, qword [str.h__]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x140207c78]
lea r8, [0x140207d10]
lea r9, [0x140207c93]
sub rsp, 0x30
mov qword [rsp + 0x20], 0x6ecd98e0
call fcn.140016090
add rsp, 0x30
jmp 0x140164db4
mov rcx, qword [rbp + 0x168]
mov rdx, qword [rbp + 0xe8]
sub rsp, 0x20
call fcn.1400366c0
mov rax, qword [rbp + 0x128]
add rsp, 0x20
movabs rcx, 0x4f743ecdb6808298
movabs rdx, 0x7addcb43e3f967cf
xor rcx, rdx
add rax, rcx
add rax, 1
movabs rcx, 0x35a9f58e5579e557
sub rax, rcx
mov qword [rbp + 0x160], rax
jmp 0x140163472
mov rax, qword [rbp + 0x258]
mov rcx, qword [rbp + 0x168]
mov rdx, rax
add rdx, 0x30
mov qword [rbp + 0xa0], rdx
mov qword [rax + 0x30], 0
mov rcx, qword [rcx]
mov rdx, rax
add rdx, 0x38
mov qword [rbp + 0xa8], rdx
add rax, 0x28
mov qword [rbp + 0xb0], rax
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rbp + 0xb8], rax
xor eax, eax
mov qword [rbp + 0xc0], rax
mov rax, qword [rbp + 0xc0]
mov qword [rbp + 0x98], rax
mov eax, dword [0x1401fb478]
xor eax, dword [0x1401fb47c]
mov ecx, 0x8bef4660
xor ecx, 0xb93e08bc
xor edx, edx
div ecx
xor ecx, ecx
sub ecx, 0x2e517c7d
add eax, ecx
mov ecx, 0x54c881d5
xor ecx, 0x623a95db
imul eax, ecx
cmp eax, 0x83df071b
jb 0x1401651ee
mov rcx, qword [rbp + 0x98]
mov eax, dword [0x1401fb480]
xor eax, 0xbcbcdea4
xor edx, edx
div dword [0x1401fb484]
mov edx, eax
mov r8d, 0xc509b39
xor r8d, 0xf3af64c6
mov eax, edx
xor eax, r8d
mov r8d, 0x63724c1b
xor r8d, 0x3881cf6c
mov r9d, 0x251293d4
xor r9d, 0xdaed6c2b
xor r8d, r9d
and eax, r8d
xor edx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x5bf38377
and edx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
mov r8d, 0x3a5d733a
xor r8d, 0x419c9cf1
xor edx, edx
div r8d
mov r8d, 0xa2709495
xor edx, edx
div r8d
mov rdx, qword [rbp + 0xb8]
cmp rcx, rdx
sete cl
mov byte [rbp + 0x97], cl
cmp eax, 0x2555cd8
je 0x1401651ee
mov al, byte [rbp + 0x97]
test al, 1
jne 0x140163dee
jmp 0x140163e2c
mov rax, qword [rbp + 0x178]
mov rcx, qword [rbp + 0x240]
mov r8b, byte [rcx]
mov r9b, 0x3f
xor r9b, 0x3f
mov dl, 1
xor ecx, ecx
cmp r8b, r9b
mov byte [rbp + 0x1a7], dl
mov qword [rbp + 0x1a8], rcx
mov qword [rbp + 0x1b0], rax
je 0x140164aa1
jmp 0x140164dda
mov rax, qword [rbp + 0xa0]
mov rcx, qword [rbp + 0x98]
mov qword [rax], rcx
movabs rdx, 0x7f73fb3fbcc4333c
movabs rax, 0x7f73fb3fbcc4332c
xor rdx, rax
lea rcx, [rbp + 0x2b0]
sub rsp, 0x20
call fcn.140135f2d
mov rcx, qword [rbp + 0x258]
call fcn.1401625a0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x240]
mov qword [rbp + 0x88], rcx
cmp byte [rax], 0
jne 0x140164a6b
mov rcx, qword [rbp + 0x88]
mov rdx, qword [rbp + 0x260]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rbp + 0x80], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x140163ee0
mov rcx, qword [rbp + 0x88]
mov rdx, qword [rbp + 0x80]
add rdx, 0xffffffffffffffff
sub rsp, 0x20
call fcn.140016582
add rsp, 0x20
jmp 0x140164a6b
mov rcx, qword [rbp + 0xa8]
mov rdx, qword [rbp + 0x88]
mov rax, qword [rbp + 0x130]
mov rax, qword [rax]
mov rdx, qword [rax + rdx*8 + 8]
sub rsp, 0x20
call fcn.1400e1c40
mov rax, qword [rbp + 0x240]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140164a6b
mov rcx, qword [rbp + 0x1d8]
mov rax, qword [rbp + 0xa8]
mov rax, qword [rax]
mov eax, dword [rax + 8]
cmp eax, dword [rcx]
jne 0x1401640a8
mov rdx, qword [rbp + 0x168]
mov rax, qword [rbp + 0xa0]
mov rcx, qword [rax]
mov qword [rbp + 0x70], rcx
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rbp + 0x78], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x14016405d
mov ecx, dword [0x1401fb488]
mov edx, dword [0x1401fb48c]
xor edx, 0xd655d339
mov eax, 0xc6a5f57a
xor eax, 0x395a0a85
xor edx, eax
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0xbb6c47fe
xor ecx, 0x5c293230
and eax, ecx
mov ecx, 0xd0f7b5b
xor ecx, 0xb5e294be
sub eax, ecx
add eax, 0xa68aaf57
cmp eax, 0x437a61dd
je 0x1401651f7
mov rcx, qword [rbp + 0x70]
mov rdx, qword [rbp + 0x78]
mov eax, dword [0x1401fb490]
mov r9d, dword [0x1401fb494]
mov r8d, eax
and r8d, r9d
xor r8d, 0xffffffff
and eax, r9d
mov r9d, 0x640e663a
xor r9d, 0x9bf199c5
xor eax, r9d
xor r8d, 0xffffffff
mov r9d, 0xb5009922
xor r9d, 0x4aff66dd
xor eax, r9d
or r8d, eax
or r8d, 0x769aa9b7
mov eax, 0x4d56e15c
xor eax, 0x2fd43e19
sub r8d, eax
mov r9d, 0x54a55f8a
xor r9d, 0xce37171e
mov eax, 0x75cb6f8f
xor eax, 0x8a349070
xor r9d, eax
mov eax, r8d
xor eax, r9d
and eax, r8d
mov dword [rbp + 0x6c], eax
add rdx, 0xffffffffffffffff
sub rsp, 0x20
call fcn.140016582
mov eax, dword [rbp + 0x6c]
add rsp, 0x20
cmp eax, 0xfa33385a
ja 0x140163fb6
jmp 0x140164a6b
mov rdx, qword [rbp + 0x178]
mov rcx, qword [rbp + 0x70]
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax]
mov rcx, qword [rax + rcx*8 + 8]
add rcx, 0x40
sub rsp, 0x20
xor eax, eax
mov r8b, al
call fcn.14013d780
mov rax, qword [rbp + 0x240]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xc9
xor cl, 0xc9
cmp al, cl
je 0x14016452a
jmp 0x140164a6b
mov rax, qword [rbp + 0xa0]
mov rax, qword [rax]
mov qword [rbp + 0x58], rax
cmp rax, 0
mov qword [rbp + 0x60], rax
jl 0x14016436f
mov eax, dword [0x1401fb498]
xor eax, 0xe7fcec9d
xor eax, dword [0x1401fb49c]
add eax, 0x55b43514
mov ecx, eax
and ecx, 0x3aaaa310
xor ecx, 0xffffffff
mov edx, 0xe2af6b38
xor edx, 0xd805c828
add eax, edx
add eax, 1
add eax, ecx
or eax, 0x878b1b07
mov ecx, 0x4385f13e
xor ecx, 0x458856d8
cmp eax, ecx
jbe 0x140165200
mov r8, qword [rbp + 0x168]
mov eax, dword [0x1401fb4a0]
mov ecx, dword [0x1401fb4a4]
mov edx, 0x6b2030e0
xor edx, 0x94dfcf1f
xor ecx, edx
add eax, ecx
add eax, 1
mov ecx, 0xba488956
xor edx, edx
div ecx
mov ecx, 0xbccc5c5b
xor ecx, 0xc81a4876
and ecx, eax
mov edx, 0xc135c548
xor edx, 0x3eca3ab7
xor ecx, edx
add eax, 0x74d6142d
add eax, 1
add eax, ecx
mov ecx, 0x6f8a0359
xor ecx, 0x25ba1b21
xor edx, edx
div ecx
mov rdx, qword [rbp + 0x58]
mov ecx, 0xb481167d
xor ecx, 0xe7adf6cd
mov r8, qword [r8]
mov qword [rbp + 0x48], r8
cmp rdx, r8
setl dl
mov byte [rbp + 0x57], dl
cmp eax, ecx
je 0x140165200
mov rax, qword [rbp + 0x58]
mov rcx, qword [rbp + 0x48]
mov dl, byte [rbp + 0x57]
test dl, 1
mov qword [rbp + 0x38], rcx
mov qword [rbp + 0x40], rax
jne 0x1401641b8
jmp 0x140164385
movabs rdx, 0x5023ba4fbbac06a4
movabs rax, 0x5023ba4fbbac06b4
xor rdx, rax
lea rcx, [rbp + 0x2a0]
sub rsp, 0x20
call fcn.140135f2d
mov rcx, qword [rbp + 0x258]
call fcn.140162820
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x240]
mov qword [rbp + 0x30], rcx
cmp byte [rax], 0
jne 0x1401643c2
mov rax, qword [rbp + 0x30]
movabs rcx, 0xf5dd0e56014b8fcc
movabs rdx, 0xf5dd0e56014b8fcc
xor rcx, rdx
cmp rax, rcx
mov qword [rbp + 0x60], rax
jl 0x14016436f
mov eax, dword [0x1401fb4a8]
mov r8d, dword [0x1401fb4ac]
mov edx, 0x1ee1d9fb
xor edx, 0xe11e2604
mov ecx, eax
xor ecx, edx
mov edx, r8d
and edx, ecx
mov r9d, r8d
xor r9d, 0xffffffff
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0x4f199e7e
xor ecx, 0xb430a961
imul eax, ecx
and eax, eax
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xdbe40d9a
mov edx, 0xffffffff
xor edx, 0xdbe40d9a
or ecx, edx
mov edx, 0x69799ef7
xor edx, 0x96866108
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
add eax, 0xe15d6646
cmp eax, 0xd7dc8847
jbe 0x140165209
mov rcx, qword [rbp + 0x30]
mov eax, dword [0x1401fb4b0]
mov r8d, dword [0x1401fb4b4]
xor r8d, 0x2fed443d
xor edx, edx
div r8d
mov rdx, qword [rbp + 0x168]
mov r8d, eax
add r8d, 0x54e78eef
mov eax, r8d
xor eax, 0xffffffff
xor r8d, 0xffffffff
or eax, r8d
mov r8d, 0x117b2513
xor r8d, 0xe7eba0b
mov r9d, 0x3d6698ae
xor r9d, 0xc2996751
xor r8d, r9d
mov r9d, 0xffffffff
xor r9d, 0x1f059f18
or r8d, r9d
and eax, r8d
xor eax, 0xffffffff
xor r8d, r8d
sub r8d, 0x7b41254c
add eax, r8d
mov rdx, qword [rdx]
mov qword [rbp + 0x20], rdx
cmp rcx, rdx
setl cl
mov byte [rbp + 0x2f], cl
cmp eax, 0x78e5f246
jb 0x140165209
mov rax, qword [rbp + 0x30]
mov rcx, qword [rbp + 0x20]
mov dl, byte [rbp + 0x2f]
test dl, 1
mov qword [rbp + 0x38], rcx
mov qword [rbp + 0x40], rax
jne 0x1401643c7
jmp 0x140164385
mov rcx, qword [rbp + 0x168]
mov rax, qword [rbp + 0x60]
mov rcx, qword [rcx]
mov qword [rbp + 0x38], rcx
mov qword [rbp + 0x40], rax
mov rdx, qword [rbp + 0x38]
mov rcx, qword [rbp + 0x40]
movabs r8, 0x9826403219ca6921
movabs rax, 0x67d9bfcde63596de
xor r8, rax
mov rax, rdx
and rax, r8
shl rax, 1
xor rdx, 0xffffffffffffffff
add rdx, rax
sub rsp, 0x20
call fcn.140016582
add rsp, 0x20
jmp 0x140164a6b
mov eax, dword [0x1401fb4b8]
xor edx, edx
div dword [0x1401fb4bc]
mov ecx, eax
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xc5a643ac
or eax, edx
mov edx, 0xffffffff
xor edx, 0xc5a643ac
mov r8d, 0x1b197ce7
xor r8d, 0xdebf3f4b
mov r9d, 0xccb6a193
xor r9d, 0x33495e6c
xor r8d, r9d
or edx, r8d
mov r8d, 0x6565cba3
xor r8d, 0x9a9a345c
xor ecx, r8d
mov r8d, 0xef44fa14
xor r8d, 0x10bb05eb
xor edx, r8d
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov edx, 0x9474f6ce
xor edx, 0x540ffa18
mov ecx, eax
and ecx, edx
shl ecx, 1
add eax, 0xc07b0cd6
sub eax, ecx
add eax, 0x7389f8da
mov ecx, 0x7056624
xor ecx, 0xb3290861
cmp eax, ecx
jae 0x140165212
mov rdx, qword [rbp + 0x30]
mov rcx, qword [rbp + 0xa0]
mov rax, qword [rbp + 0xb0]
mov r8d, dword [0x1401fb4c0]
xor r8d, 0x5eeb74f9
mov r9d, dword [0x1401fb4c4]
xor r9d, 0x56aa026e
imul r8d, r9d
or r8d, 0xda27882b
or r8d, 0xa65b053c
mov r9d, r8d
xor r9d, 0xffffffff
and r9d, 0xc61f98e5
mov r10d, 0xffffffff
xor r10d, 0xc61f98e5
and r8d, r10d
sub r8d, r9d
mov dword [rbp + 0x18], r8d
mov rax, qword [rax]
mov rcx, qword [rcx]
mov rcx, qword [rax + rcx*8 + 8]
add rcx, 0x40
mov rdx, qword [rax + rdx*8 + 8]
sub rsp, 0x20
xor eax, eax
mov r8b, al
call fcn.14013d780
mov rcx, qword [rbp + 0x240]
mov eax, dword [rbp + 0x18]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x1f], cl
cmp eax, 0xd4a89d74
je 0x140165212
mov al, byte [rbp + 0x1f]
test al, 1
jne 0x14016452a
jmp 0x140164db4
mov eax, dword [0x1401fb4c8]
add eax, dword [0x1401fb4cc]
mov ecx, 0x4d248841
xor ecx, 0xf16fce32
or eax, ecx
mov ecx, 0x9512e702
xor edx, edx
div ecx
add eax, 0x9a24bd13
mov ecx, 0x3fd0cc27
xor ecx, 0x3cfa4da6
cmp eax, ecx
jbe 0x14016521b
mov r8, qword [rbp + 0x168]
mov rcx, qword [rbp + 0xa0]
mov eax, dword [0x1401fb4d0]
mov edx, dword [0x1401fb4d4]
sub eax, edx
mov edx, eax
imul rdx, rdx, 0x46d99ad
shr rdx, 0x20
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 0x1f
add eax, 0x5291e2a9
mov rdx, qword [rcx]
mov qword [rbp], rdx
test rdx, rdx
setns cl
mov r8, qword [r8]
mov qword [rbp + 8], r8
sub rdx, r8
setl dl
and cl, dl
mov byte [rbp + 0x17], cl
cmp eax, 0x4c9f85b2
je 0x14016521b
mov al, byte [rbp + 0x17]
test al, 1
jne 0x140164712
jmp 0x1401645d5
mov eax, dword [0x1401fb4d8]
mov ecx, dword [0x1401fb4dc]
xor ecx, 0x9424137d
add eax, ecx
mov edx, eax
xor edx, 0xdddeba78
mov ecx, 0x4f757564
xor ecx, 0xb08a8a9b
xor edx, ecx
mov ecx, 0x2f38febf
xor ecx, 0xf2e644c7
and ecx, edx
shl ecx, 1
mov edx, 0x681b31a1
xor edx, 0xb5c58bd9
sub ecx, edx
sub eax, ecx
sub eax, 0x77ae9898
mov ecx, 0xa9102d51
xor ecx, 0x95993780
xor edx, edx
div ecx
cmp eax, 0x6550357c
je 0x140165224
mov rcx, qword [rbp]
mov eax, dword [0x1401fb4e0]
imul eax, dword [0x1401fb4e4]
mov r8d, 0x809bb21c
xor edx, edx
div r8d
mov rdx, qword [rbp + 8]
mov edi, eax
mov eax, 0x785512d7
xor eax, 0x87aaed28
mov r8d, edi
xor r8d, eax
mov r9d, 0xffffffff
xor r9d, 0x3fd0c6a4
mov r10d, 0xffffffff
xor r10d, 0x32222fbb
mov eax, r8d
and eax, 0x32222fbb
and edi, r10d
mov r11d, r9d
and r11d, 0x32222fbb
mov esi, r10d
and esi, 0x3fd0c6a4
or eax, edi
or r11d, esi
xor eax, r11d
or r8d, r9d
xor r8d, 0xffffffff
mov r9d, 0x343bc30e
xor r9d, 0x619ecb5
or r9d, r10d
and r8d, r9d
or eax, r8d
mov r8d, eax
xor r8d, 0x11697f39
mov r9d, 0xffffffff
xor r9d, 0x11697f39
and eax, r9d
shl eax, 1
sub eax, r8d
mov dword [rbp - 4], eax
add rdx, 0xffffffffffffffff
sub rsp, 0x20
call fcn.140016582
mov eax, dword [rbp - 4]
add rsp, 0x20
cmp eax, 0xa4a39db3
je 0x140165224
jmp 0x140164a6b
mov eax, dword [0x1401fb4e8]
xor eax, 0x32b9262c
mov r8d, dword [0x1401fb4ec]
mov ecx, 0x62a54b59
xor ecx, 0x9d5ab4a6
mov r9d, r8d
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, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xd3a29bbf
xor ecx, 0xe09fb39e
or eax, ecx
imul eax, eax, 0xaa47eeeb
and eax, 0x56e37fe9
cmp eax, 0x3e03d2a6
jae 0x14016522d
mov rcx, qword [rbp]
mov rax, qword [rbp + 0xb0]
mov edx, dword [0x1401fb4f0]
xor edx, dword [0x1401fb4f4]
add edx, 0x2361a776
or edx, edx
xor edx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x57829492
mov r9d, 0x9e811b26
xor r9d, 0xc9038fb4
mov r10d, 0x46b5deb9
xor r10d, 0xb94a2146
xor r9d, r10d
and r8d, r9d
or edx, r8d
xor edx, 0xffffffff
mov r8d, 0x52bc50f8
xor r8d, 0x90957973
and edx, r8d
mov dword [rbp - 0xc], edx
mov rax, qword [rax]
mov rcx, qword [rax + rcx*8 + 8]
mov qword [rbp - 0x18], rcx
mov rax, qword [rcx + 0x28]
movabs rdx, 0x52a4701b4d036aee
movabs r8, 0x52a4701b4d036aee
xor rdx, r8
cmp rax, rdx
sete al
mov byte [rbp - 0xd], al
sub rsp, 0x20
call fcn.14013da0f
mov rcx, qword [rbp + 0x240]
mov eax, dword [rbp - 0xc]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp - 5], cl
cmp eax, 0xebe4cf36
je 0x140164775
mov al, byte [rbp - 0xd]
test al, 1
jne 0x140164848
jmp 0x14016488f
mov al, byte [rbp - 5]
test al, 1
jne 0x140164858
jmp 0x140164a6b
mov rdx, qword [rbp - 0x18]
mov rcx, qword [rbp + 0xa0]
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax]
mov rcx, qword [rcx]
mov rax, qword [rax + rcx*8 + 8]
mov rcx, qword [rax + 0x40]
add rcx, 0x10
sub rsp, 0x20
call fcn.1400366c0
add rsp, 0x20
jmp 0x140164a70
mov eax, dword [0x1401fb4f8]
mov ecx, dword [0x1401fb4fc]
xor ecx, 0xd9b598de
or eax, ecx
imul eax, eax, 0xa680af13
add eax, 0x4eb8c445
mov ecx, 0x41b7056
xor ecx, 0x9e7cb33
add eax, ecx
mov ecx, 0x2c9f2857
xor ecx, 0x74e10ea3
cmp eax, ecx
jb 0x140165236
mov eax, dword [0x1401fb500]
mov edx, dword [0x1401fb504]
mov ecx, eax
xor ecx, 0xffffffff
and ecx, edx
mov r8d, 0x6b596dec
xor r8d, 0x94a69213
xor edx, r8d
and eax, edx
sub eax, ecx
xor eax, 0xb0e78e71
mov ecx, 0x33096f3a
xor edx, edx
div ecx
or eax, 0xc8c93a82
cmp eax, 0x8591f046
je 0x140165236
mov al, byte [rbp - 5]
test al, 1
jne 0x140164923
jmp 0x140164a6b
mov eax, dword [0x1401fb508]
mov edx, dword [0x1401fb50c]
mov ecx, eax
and ecx, edx
or eax, edx
add ecx, eax
mov edx, ecx
xor edx, 0xffffffff
mov eax, 0x6e9b52e9
xor eax, 0x1a15a093
and eax, edx
mov edx, 0xffffffff
xor edx, 0x748ef27a
and ecx, edx
or eax, ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0xdcbcbf8
add eax, ecx
mov ecx, 0xe22d833e
xor edx, edx
div ecx
mov ecx, 0xf0434e4d
xor ecx, 0xe7230ad8
cmp eax, ecx
jae 0x14016523f
mov r8, qword [rbp - 0x18]
mov rcx, qword [rbp + 0xa0]
mov rax, qword [rbp + 0xb0]
mov r9d, dword [0x1401fb510]
xor r9d, dword [0x1401fb514]
mov r10d, 0xdb1364dc
xor r10d, 0xa8002ff5
mov edx, r9d
and edx, r10d
mov r10d, 0xadf7c568
xor r10d, 0x52083a97
xor edx, r10d
mov r10d, 0x7bfd1186
xor r10d, 0x8402ee79
xor r9d, r10d
mov r10d, 0xffffffff
xor r10d, 0x73134b29
or r9d, r10d
and edx, r9d
xor edx, 0xffffffff
sub edx, 0xb890061f
add edx, 0x4fb9d084
mov dword [rbp - 0x20], edx
mov rax, qword [rax]
mov rcx, qword [rcx]
mov rax, qword [rax + rcx*8 + 8]
mov rcx, qword [rax + 0x40]
mov rcx, qword [rcx + 8]
mov rdx, qword [rax + 0x28]
mov qword [rbp + 0x290], rdx
mov rax, qword [rax + 0x30]
mov qword [rbp + 0x298], rax
lea rdx, [rbp + 0x290]
sub rsp, 0x20
call fcn.14005b8d0
mov rcx, qword [rbp + 0x240]
mov eax, dword [rbp - 0x20]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0xe1
xor dl, 0xe1
cmp cl, dl
sete cl
mov byte [rbp - 0x19], cl
cmp eax, 0x84bb67a9
jb 0x140164982
mov al, byte [rbp - 0x19]
test al, 1
jne 0x140164a70
jmp 0x140164db4
jmp 0x140164db4
mov rax, qword [rbp + 0x98]
movabs rcx, 0x13db590542b5b47a
sub rax, rcx
add rax, 1
movabs rcx, 0x13db590542b5b47a
add rax, rcx
mov qword [rbp + 0xc0], rax
jmp 0x140163ceb
mov rax, qword [rbp + 0x198]
cmp rax, 0
je 0x140164afa
mov rcx, qword [rbp + 0x198]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
movabs rcx, 0xb03abba5ab300a49
movabs rdx, 0xb03abba5ab300a49
xor rcx, rdx
cmp rax, rcx
jne 0x140164afa
mov rcx, qword [rbp + 0x198]
sub rsp, 0x20
call fcn.140011305
add rsp, 0x20
mov eax, dword [0x1401fb518]
xor eax, 0x801c8556
mov ecx, dword [0x1401fb51c]
xor ecx, 0x77c29f06
sub eax, ecx
mov ecx, 0xa6fa4c06
xor ecx, 0xb5b7e269
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0x1cce8cf1
mov edx, 0x694fd2c4
xor edx, 0x855eeac2
mov eax, ecx
and eax, edx
xor eax, 0xffffffff
and ecx, 0xec113806
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
cmp eax, 0x7dce2b79
ja 0x140165248
mov eax, dword [0x1401fb520]
xor eax, dword [0x1401fb524]
mov ecx, 0x61ac4297
xor edx, edx
div ecx
mov ecx, eax
and ecx, 0x5b0df0d4
shl ecx, 1
add eax, 0x5b0df0d4
sub eax, ecx
add eax, 0xb93fb624
sub eax, 0x146a2983
sub eax, 0xb93fb624
mov dword [rbp - 0x28], eax
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call fcn.14013ce00
mov rcx, qword [rbp + 0x240]
mov eax, dword [rbp - 0x28]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x21], cl
cmp eax, 0x43613208
jb 0x140165248
mov rax, qword [rbp + 0x178]
mov dl, byte [rbp - 0x21]
mov cl, 1
test dl, 1
mov byte [rbp + 0x277], cl
mov qword [rbp + 0x278], rax
jne 0x140164be7
jmp 0x140164fb6
mov rax, qword [rbp + 0x248]
mov rcx, qword [rax]
mov qword [rbp + 0x280], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x288], rax
lea rcx, [rbp + 0x280]
sub rsp, 0x20
call fcn.140138b00
mov rcx, qword [rbp + 0x240]
mov rax, qword [rbp + 0x178]
add rsp, 0x20
cmp byte [rcx], 0
mov qword [rbp - 0x30], rax
jne 0x1401651c4
mov rcx, qword [rbp + 0x1d8]
sub rsp, 0x20
call fcn.1400e1880
mov rcx, qword [rbp + 0x240]
mov rax, qword [rbp + 0x178]
add rsp, 0x20
cmp byte [rcx], 0
mov qword [rbp - 0x30], rax
jne 0x1401651c4
mov rax, qword [rbp + 0x1e0]
mov rax, qword [rax + 8]
mov qword [rbp - 0x38], rax
cmp rax, 0
je 0x140164d90
mov rcx, qword [rbp - 0x38]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x140164d90
mov eax, dword [0x1401fb528]
mov r8d, dword [0x1401fb52c]
mov ecx, 0x3bfa9064
xor ecx, 0xc4056f9b
mov r9d, r8d
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, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x49965c2a
mov r8d, 0xffffffff
xor r8d, 0x49965c2a
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x49965c2a
mov r8d, 0xd17aabe4
xor r8d, 0x98ecf7ce
or eax, r8d
imul eax, edx
add eax, ecx
and eax, 0x2067ee50
mov ecx, 0x49855521
xor edx, edx
div ecx
mov ecx, 0xbba31818
xor ecx, 0xf44ea779
cmp eax, ecx
jae 0x140165251
mov rcx, qword [rbp - 0x38]
mov edx, dword [str._reN_]
sub edx, dword [0x1401fb534]
mov r8d, 0x8f307fa
xor r8d, 0xa5132dfd
mov eax, edx
and eax, r8d
mov r8d, 0x6b778793
xor r8d, 0xc697ad94
xor edx, r8d
or eax, edx
or eax, 0x6322c828
imul eax, eax, 0x7cc47f9
mov dword [rbp - 0x3c], eax
sub rsp, 0x20
call fcn.140011305
mov eax, dword [rbp - 0x3c]
add rsp, 0x20
cmp eax, 0xe6d1fcb4
jae 0x140164d2e
jmp 0x140164d90
mov rcx, qword [rbp + 0x258]
sub rsp, 0x20
call fcn.140162cb4
mov rax, qword [rbp + 0x178]
add rsp, 0x20
mov qword [rbp - 0x30], rax
jmp 0x1401651c4
mov rcx, qword [rbp + 0x178]
mov rax, qword [rbp + 0x240]
mov dl, byte [rax]
xor eax, eax
mov byte [rbp + 0x1a7], dl
mov qword [rbp + 0x1a8], rcx
mov qword [rbp + 0x1b0], rax
mov rax, qword [rbp + 0x198]
mov rcx, qword [rbp + 0x240]
mov dl, byte [rbp + 0x1a7]
mov r8, qword [rbp + 0x1a8]
mov r9, qword [rbp + 0x1b0]
mov qword [rbp - 0x50], r9
mov qword [rbp - 0x48], r8
mov byte [rbp - 0x3d], dl
mov byte [rcx], 0
cmp rax, 0
je 0x140164ed3
mov rcx, qword [rbp + 0x198]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x140164ed3
mov eax, dword [0x1401fb538]
and eax, dword [0x1401fb53c]
xor eax, 0xfba271f6
mov ecx, 0x22d47619
xor ecx, 0xe4ebee8b
imul eax, ecx
mov ecx, 0x1ece38cb
xor ecx, 0xf9160bb1
xor edx, edx
div ecx
mov ecx, 0x26ab916e
xor ecx, 0x24c3fa98
cmp eax, ecx
je 0x14016525a
mov rcx, qword [rbp + 0x198]
mov eax, dword [0x1401fb540]
sub eax, dword [0x1401fb544]
mov edx, 0x5c9bc273
xor edx, 0xaabf6160
imul eax, edx
add eax, 0x87e50b35
mov edx, 0x8ebff6b9
xor edx, 0xd82da622
sub eax, edx
add eax, 0x5326acc3
add eax, 0x5692509b
mov dword [rbp - 0x54], eax
sub rsp, 0x20
call fcn.140011305
mov eax, dword [rbp - 0x54]
add rsp, 0x20
cmp eax, 0x6327074c
jb 0x14016525a
jmp 0x140164ed3
mov rcx, qword [rbp - 0x48]
sub rsp, 0x20
call fcn.14013ce00
mov rcx, qword [rbp + 0x240]
mov al, byte [rbp - 0x3d]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0xe2
xor dl, 0xe2
mov r8b, 1
mov byte [rbp - 0x56], r8b
cmp cl, dl
mov byte [rbp - 0x55], al
je 0x140164f0d
mov al, byte [rbp - 0x56]
mov byte [rbp - 0x55], al
mov rax, qword [rbp - 0x50]
mov cl, byte [rbp - 0x55]
mov byte [rbp + 0x277], cl
mov qword [rbp + 0x278], rax
jmp 0x140164fb6
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.140016330
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x1402085d0]
mov qword [rcx], rax
lea rax, [0x140207c78]
mov qword [rcx + 0x10], rax
mov rax, qword [0x140207d28]
mov qword [rcx + 0x18], rax
mov rax, qword [str.h__]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x140207c78]
lea r8, [0x140207d10]
lea r9, [0x140207c93]
sub rsp, 0x30
mov qword [rsp + 0x20], 0xffffffffc5c75e63
call fcn.140016090
mov rax, qword [rbp + 0x240]
add rsp, 0x30
mov cl, byte [rax]
xor eax, eax
mov byte [rbp + 0x277], cl
mov qword [rbp + 0x278], rax
mov rdx, qword [rbp + 0x240]
mov rcx, qword [rbp + 0x238]
mov rax, qword [rbp + 0x248]
mov r8b, byte [rbp + 0x277]
mov r9, qword [rbp + 0x278]
mov qword [rbp - 0x60], r9
mov byte [rbp - 0x61], r8b
mov r8b, 0xf4
xor r8b, 0xf4
mov byte [rdx], r8b
mov rdx, qword [rax]
mov qword [rcx], rdx
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.140138b00
mov rcx, qword [rbp + 0x240]
mov rax, qword [rbp - 0x60]
add rsp, 0x20
cmp byte [rcx], 0
mov qword [rbp - 0x30], rax
jne 0x1401651c4
mov rcx, qword [rbp + 0x1d8]
sub rsp, 0x20
call fcn.1400e1880
mov rcx, qword [rbp + 0x240]
mov rax, qword [rbp - 0x60]
add rsp, 0x20
cmp byte [rcx], 0
mov qword [rbp - 0x30], rax
jne 0x1401651c4
mov rax, qword [rbp + 0x1e0]
mov rax, qword [rax + 8]
mov qword [rbp - 0x70], rax
cmp rax, 0
je 0x140165184
mov rax, qword [rbp - 0x70]
mov rax, qword [rax]
movabs rcx, 0x65ba07be971335c
movabs rdx, 0x465ba07be971335c
xor rcx, rdx
and rax, rcx
movabs rcx, 0xb4a2958b28002c09
movabs rdx, 0xb4a2958b28002c09
xor rcx, rdx
cmp rax, rcx
jne 0x140165184
mov eax, dword [0x1401fb548]
or eax, dword [0x1401fb54c]
imul eax, eax, 0x54e6dca7
mov ecx, 0x7691d2b
xor ecx, 0x1ff6378f
or eax, ecx
add eax, 0xda50946
cmp eax, 0x1c6c32ac
jb 0x140165263
mov rcx, qword [rbp - 0x70]
mov edx, dword [0x1401fb550]
mov r9d, dword [0x1401fb554]
mov r8d, 0x2dc26d0
xor r8d, 0xfd23d92f
mov eax, edx
xor eax, r8d
mov r8d, edx
xor r8d, 0xffffffff
or eax, r8d
xor eax, 0xffffffff
mov r8d, r9d
xor r8d, 0xffffffff
or eax, r8d
mov r8d, r9d
xor r8d, 0xffffffff
xor r9d, 0xffffffff
or r8d, r9d
mov r9d, 0xa497ef0f
xor r9d, 0x5b6810f0
xor edx, r9d
xor r8d, 0xffffffff
or edx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
or eax, edx
xor eax, 0x54183df1
mov edx, eax
and edx, 0xd398f8fc
shl edx, 1
mov r8d, 0x7619efd5
xor r8d, 0xa5811729
add eax, r8d
sub eax, edx
and eax, 0xc7326c98
mov dword [rbp - 0x74], eax
sub rsp, 0x20
call fcn.140011305
mov eax, dword [rbp - 0x74]
add rsp, 0x20
cmp eax, 0xa44b0d8d
jae 0x140165263
jmp 0x140165184
mov rcx, qword [rbp + 0x258]
sub rsp, 0x20
call fcn.140162cb4
mov rcx, qword [rbp + 0x240]
mov rax, qword [rbp - 0x60]
add rsp, 0x20
cmp byte [rcx], 0
mov qword [rbp - 0x30], rax
add al, byte [rax]
add byte [rax - 0x75], cl
movabs al, byte [0x4800398020c48348]
mov dword [rbp - 0x30], eax
jne 0x1401651c4
mov rax, qword [rbp - 0x60]
mov rcx, qword [rbp + 0x240]
mov dl, byte [rbp - 0x61]
mov byte [rcx], dl
mov qword [rbp - 0x30], rax
mov rax, qword [rbp - 0x30]
lea rsp, [rbp + 0x3c0]
pop rdi
pop rsi
pop rbp
ret
adc dword [rbp - 0x44161d0d], edi
loopne 0x1401651da
invalid
jmp rsp
in al, 0x1d
movabs dword [0xa46affffe3b1e997], eax
push 0xffffffffffffffa4
imul ebp, dword [rdi], 0xffffffe9
sub al, 0xe7
invalid
invalid
pop rdx
adc byte [rdi], cl
invalid
invalid
invalid
xchg edx, eax
sti
jp 0x140165198
jmp 0x140164471
and byte [rbx - 0x50], 0x29
jmp 0x140164564
movabs byte [0xfffff40fe9ff9480], al
mov ds, word [rdi + rax - 0xac016fd]
invalid
xchg esp, eax
fisttp dword [rax - 0x17]
invalid
ficom dword [rbx + 0x3ae9c433]
idiv edi
inc dword [rdx - 0x4a]
or al, 0x85
jmp 0x140164b58
mov sil, 0xc
test ecx, ebp
invalid
invalid
lea ecx, [rdx - 0x2b16469b]
cli
invalid
push rbx
invalid
nop
jge 0x14016524f
out 0xe9, eax
invalid