Function at 0x1400cdc90
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
push rbx
sub rsp, 0x280
lea rbp, [rsp + 0x80]
mov byte [rbp + 0x7f], dl
mov qword [rbp + 0x80], rcx
mov eax, 0x10
mov qword [rbp + 0xb0], rax
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0xb0]
mov rcx, rsp
mov qword [rbp + 0x88], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0xb0]
mov rcx, rsp
mov qword [rbp + 0x90], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0xb0]
mov rcx, rsp
mov qword [rbp + 0x98], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0xb0]
mov rcx, rsp
mov qword [rbp + 0xa0], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0xb0]
mov rcx, rsp
mov qword [rbp + 0xa8], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0xb0]
mov rcx, rsp
mov qword [rbp + 0xb8], rcx
call fcn.140215890
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xc0], rax
sub rsp, 0x20
call fcn.1400e0976
add rsp, 0x20
mov qword [rbp + 0xd8], rax
add rax, 0x50
mov qword [rbp + 0xc8], rax
mov qword [rbp + 0x1f0], 0
lea rax, [rbp + 0x1f0]
add rax, 8
mov qword [rbp + 0xd0], rax
mov qword [rbp + 0x1f8], 0
mov ax, 0x3cd6
xor ax, 0x3f9f
mov word [rbp + 0x1ee], ax
lea rcx, [rbp + 0x1ee]
sub rsp, 0x20
call fcn.14006cf90
mov rdx, qword [rbp + 0xd8]
add rsp, 0x20
mov qword [rbp + 0xe0], rax
xor eax, eax
mov cl, al
xor eax, eax
cmp byte [rdx + 0x50], 0
mov byte [rbp + 0xef], cl
mov rcx, rax
mov qword [rbp + 0xf0], rcx
mov rcx, rax
mov qword [rbp + 0xf8], rcx
mov rcx, rax
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rax
jne 0x1400cf24e
mov rcx, qword [rbp + 0x80]
mov rax, qword [rbp + 0xe0]
mov rax, qword [rax]
mov rdx, qword [rcx]
movabs rcx, 0x4d6589800d70421d
add rdx, rcx
add rdx, rax
movabs rax, 0x4d6589800d70421d
sub rdx, rax
lea rcx, [rbp + 0x1f0]
sub rsp, 0x20
call fcn.14001efd0
mov rax, qword [rbp + 0xe0]
mov rdx, qword [rbp + 0x98]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rdx], rcx
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x1f0]
sub rsp, 0x20
call fcn.1400ccb50
mov rax, qword [rbp + 0x80]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0x170], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x178], rax
lea rcx, [rbp + 0x1f0]
lea rdx, [rbp + 0x170]
sub rsp, 0x20
call fcn.1400ccb50
mov rax, qword [rbp + 0xd0]
mov rdx, qword [rbp + 0xa8]
mov rcx, qword [rbp + 0xa0]
add rsp, 0x20
mov r8, qword [rbp + 0x1f0]
mov qword [rbp + 0x58], r8
mov rax, qword [rax]
mov qword [rbp + 0x60], rax
mov qword [rdx], r8
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.1400cd0c0
mov rax, qword [rbp + 0xa0]
mov r9, qword [rbp + 0xc8]
mov rdx, qword [rbp + 0x60]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0x68], rcx
mov rcx, qword [rax + 8]
mov qword [rbp + 0x70], rcx
xor eax, eax
mov r8b, al
xor eax, eax
cmp byte [r9], 0
mov byte [rbp + 0xef], r8b
mov qword [rbp + 0xf0], rdx
mov qword [rbp + 0xf8], rcx
mov rcx, rax
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rax
jne 0x1400cf24e
mov rax, qword [rbp + 0x70]
mov rcx, qword [rbp + 0xb8]
mov rdx, qword [rbp + 0x68]
mov qword [rcx], rdx
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.1400cd232
mov r9, qword [rbp + 0xc8]
mov rdx, qword [rbp + 0x60]
mov rcx, qword [rbp + 0x70]
add rsp, 0x20
mov qword [rbp + 0x50], rax
xor eax, eax
mov r8b, al
xor eax, eax
cmp byte [r9], 0
mov byte [rbp + 0xef], r8b
mov qword [rbp + 0xf0], rdx
mov qword [rbp + 0xf8], rcx
mov rcx, rax
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rax
jne 0x1400cf24e
mov r8, qword [rbp + 0x88]
mov rcx, qword [rbp + 0x50]
movabs rdx, 0xb2a5fff249a24baa
movabs rax, 0xb2a5fff249a24ba8
xor rdx, rax
sub rsp, 0x20
call fcn.1400cd2d0
add rsp, 0x20
test al, 1
jne 0x1400cdffb
jmp 0x1400ce042
sub rsp, 0x20
call fcn.140008bc6
mov rdx, qword [rbp + 0x60]
mov rcx, qword [rbp + 0x70]
add rsp, 0x20
xor eax, eax
mov r8b, al
xor eax, eax
mov byte [rbp + 0xef], r8b
mov qword [rbp + 0xf0], rdx
mov qword [rbp + 0xf8], rcx
mov rcx, rax
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rax
jmp 0x1400cf24e
mov rax, qword [rbp + 0x60]
mov rcx, qword [rbp + 0x58]
mov rdx, qword [rbp + 0x88]
mov rdx, qword [rdx]
mov word [rbp + 0x1d8], dx
mov qword [rbp + 0x150], rcx
mov qword [rbp + 0x158], rax
lea rcx, [rbp + 0x160]
lea rdx, [rbp + 0x150]
sub rsp, 0x20
call fcn.1400cd0c0
mov r10, qword [rbp + 0xc8]
mov r8, qword [rbp + 0x60]
mov rdx, qword [rbp + 0x70]
add rsp, 0x20
mov rax, qword [rbp + 0x160]
mov qword [rbp + 0x40], rax
mov rcx, qword [rbp + 0x168]
mov qword [rbp + 0x48], rcx
xor eax, eax
mov r9b, al
xor eax, eax
cmp byte [r10], 0
mov byte [rbp + 0xef], r9b
mov qword [rbp + 0xf0], r8
mov qword [rbp + 0xf8], rdx
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rax
jne 0x1400cf24e
mov rax, qword [rbp + 0x48]
mov rcx, qword [rbp + 0x40]
mov qword [rbp + 0x140], rcx
mov qword [rbp + 0x148], rax
lea rcx, [rbp + 0x140]
sub rsp, 0x20
call fcn.1400cd232
mov r10, qword [rbp + 0xc8]
mov r8, qword [rbp + 0x60]
mov rdx, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x48]
add rsp, 0x20
mov qword [rbp + 0x38], rax
xor eax, eax
mov r9b, al
xor eax, eax
cmp byte [r10], 0
mov byte [rbp + 0xef], r9b
mov qword [rbp + 0xf0], r8
mov qword [rbp + 0xf8], rdx
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rax
jne 0x1400cf24e
mov r8, qword [rbp + 0x90]
mov rcx, qword [rbp + 0x38]
mov edx, 2
sub rsp, 0x20
call fcn.1400cd2d0
add rsp, 0x20
test al, 1
jne 0x1400ce17c
jmp 0x1400ce1c4
sub rsp, 0x20
call fcn.140008bc6
mov r8, qword [rbp + 0x60]
mov rdx, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x48]
add rsp, 0x20
xor eax, eax
mov r9b, al
xor eax, eax
mov byte [rbp + 0xef], r9b
mov qword [rbp + 0xf0], r8
mov qword [rbp + 0xf8], rdx
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rax
jmp 0x1400cf24e
mov rax, qword [rbp + 0x90]
mov rdx, qword [rax]
mov rax, 0xffffffffffffffff
xor rax, 2
xor ecx, ecx
sub rcx, 1
sub rax, rcx
mov rcx, rdx
sub rcx, rax
mov qword [rbp + 0x30], rcx
movabs rax, 0x77012f9b2138a1c4
movabs r8, 0x88fed064dec75e3b
xor rax, r8
xor rdx, rax
mov rax, rcx
xor rax, 0xffffffffffffffff
movabs r9, 0x57ef19b2a094d8a6
movabs r8, 0xa810e64d5f6b2759
xor r9, r8
mov r8, rdx
xor r8, r9
or rax, r8
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
or rcx, rdx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
or rax, rcx
cmp rax, 0
jge 0x1400ce295
sub rsp, 0x20
call fcn.140008bc6
mov r8, qword [rbp + 0x60]
mov rdx, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x48]
add rsp, 0x20
xor eax, eax
mov r9b, al
xor eax, eax
mov byte [rbp + 0xef], r9b
mov qword [rbp + 0xf0], r8
mov qword [rbp + 0xf8], rdx
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rax
jmp 0x1400cf24e
mov rax, qword [rbp + 0x60]
mov rdx, qword [rbp + 0xc0]
mov rcx, qword [rbp + 0x58]
mov r8, qword [rbp + 0x30]
mov word [rbp + 0x1da], r8w
mov qword [rdx], rcx
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x130]
sub rsp, 0x20
call fcn.1400cd0c0
mov r9, qword [rbp + 0xc8]
mov r8, qword [rbp + 0x60]
mov rdx, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x48]
add rsp, 0x20
mov rax, qword [rbp + 0x130]
mov qword [rbp + 0x20], rax
mov rax, qword [rbp + 0x138]
mov qword [rbp + 0x28], rax
mov r10b, byte [r9]
mov r11b, 0x6d
xor r11b, 0x6d
xor r9d, r9d
cmp r10b, r11b
mov byte [rbp + 0xef], r9b
mov qword [rbp + 0xf0], r8
mov qword [rbp + 0xf8], rdx
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rax
jne 0x1400cf24e
mov rax, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x20]
mov qword [rbp + 0x120], rcx
mov qword [rbp + 0x128], rax
lea rcx, [rbp + 0x120]
sub rsp, 0x20
call fcn.1400cd5f6
mov r9, qword [rbp + 0xc8]
mov r8, qword [rbp + 0x60]
mov rdx, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x48]
add rsp, 0x20
mov r10, rax
mov rax, qword [rbp + 0x28]
mov qword [rbp + 0x1e0], r10
mov r10b, byte [r9]
mov r11b, 0xf2
xor r11b, 0xf2
xor r9d, r9d
cmp r10b, r11b
mov byte [rbp + 0xef], r9b
mov qword [rbp + 0xf0], r8
mov qword [rbp + 0xf8], rdx
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rax
jne 0x1400cf24e
mov eax, dword [0x14021c2e0]
mov ecx, dword [0x14021c2e4]
mov edx, 0xe90351e3
xor edx, 0x73fc2b42
xor ecx, edx
sub eax, ecx
add eax, 0x53b0ccc2
mov ecx, 0x191e1e13
xor edx, edx
div ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
mov edx, 0x6c23ff3b
xor edx, 0x7d416f72
or eax, edx
add eax, ecx
mov ecx, 0xce9f11f4
xor ecx, 0x9501d40c
cmp eax, ecx
jae 0x1400cf5c1
mov ecx, dword [0x14021c2e8]
mov eax, dword [0x14021c2ec]
xor eax, 0x9f3c70b1
add ecx, 0x430be1c9
sub ecx, eax
mov eax, 0xd74f951b
xor eax, 0x944474d2
sub ecx, eax
sub ecx, 0x62fb5d85
mov edx, 0xffffffff
xor edx, 0x64d33c18
mov eax, ecx
xor eax, edx
and eax, ecx
imul eax, eax, 0x6cbca9b0
mov dword [rbp + 0xc], eax
mov eax, 0xb3db1663
xor eax, 0x3df0e242
mov dword [rbp + 8], eax
lea rcx, [rbp + 0x1a8]
mov edx, 0x30
sub rsp, 0x20
call fcn.1400c9ca0
add rsp, 0x20
mov eax, 0x6687530f
xor eax, 0x6687533f
mov dword [rbp + 0x1a8], eax
lea rcx, [rbp + 0x1d8]
sub rsp, 0x20
call fcn.1400aa810
mov rdx, qword [rbp + 0xc8]
mov ecx, dword [rbp + 8]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp + 0xc]
mov qword [rbp + 0x10], r8
cmp byte [rdx], 0
sete dl
mov byte [rbp + 0x1f], dl
cmp eax, ecx
jb 0x1400ce404
mov rax, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x48]
mov rdx, qword [rbp + 0x70]
mov r8, qword [rbp + 0x60]
mov r10b, byte [rbp + 0x1f]
xor r9d, r9d
test r10b, 1
mov byte [rbp + 0xef], r9b
mov qword [rbp + 0xf0], r8
mov qword [rbp + 0xf8], rdx
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rax
jne 0x1400ce501
jmp 0x1400cf24e
mov rax, qword [rbp + 0x10]
mov qword [rbp + 0x1b8], rax
mov eax, 0x8bf889c9
xor eax, 0x8bf88989
mov dword [rbp + 0x1c0], eax
mov qword [rbp + 0x1b0], 0
mov qword [rbp + 0x1c8], 0
mov qword [rbp + 0x1d0], 0
lea rcx, [rbp + 0x180]
mov edx, 0x28
sub rsp, 0x20
call fcn.1400c9ca0
add rsp, 0x20
lea rcx, [rbp + 0x1a8]
lea rdx, [rbp + 0x180]
mov rax, qword [0x14022db50]
sub rsp, 0x20
call qword [rax]
mov r10, qword [rbp + 0xc8]
mov r8, qword [rbp + 0x60]
mov rdx, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x48]
add rsp, 0x20
mov r9d, eax
mov rax, qword [rbp + 0x28]
mov dword [rbp + 4], r9d
xor r9d, r9d
cmp byte [r10], 0
mov byte [rbp + 0xef], r9b
mov qword [rbp + 0xf0], r8
mov qword [rbp + 0xf8], rdx
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rax
jne 0x1400cf24e
mov eax, dword [rbp + 4]
sub eax, 0xc0000034
je 0x1400ce5e9
jmp 0x1400ce5d6
mov eax, dword [rbp + 4]
sub eax, 0xc000003a
jne 0x1400cee24
jmp 0x1400ce5e9
mov rax, qword [rbp + 0x80]
mov rax, qword [rax + 8]
mov qword [rbp - 8], rax
cmp rax, 0
je 0x1400ce6f3
mov ecx, dword [0x14021c2f0]
sub ecx, dword [0x14021c2f4]
sub ecx, 0x53801989
mov eax, 0xa9e37f35
xor eax, 0x7a60b42f
imul ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x6867f422
mov edx, 0x5a36003e
xor edx, 0x3251f41c
mov r8d, 0xdc388d0f
xor r8d, 0x23c772f0
xor edx, r8d
and ecx, edx
or eax, ecx
mov ecx, 0x5861862c
xor ecx, 0x2bb139d4
cmp eax, ecx
je 0x1400cf5ca
mov eax, dword [0x14021c2f8]
xor edx, edx
div dword [0x14021c2fc]
sub eax, 0xfc843b76
or eax, 0x4afd337b
mov ecx, 0x831d0af6
xor edx, edx
div ecx
mov rdx, qword [rbp - 8]
mov ecx, 0xdffc1d92
xor ecx, 0xf7161df5
mov rdx, qword [rdx]
movabs r8, 0xc5d3bee1d13377d
movabs r9, 0x4c5d3bee1d13377d
xor r8, r9
and rdx, r8
movabs r8, 0xe0b64625451fc658
movabs r9, 0xe0b64625451fc658
xor r8, r9
cmp rdx, r8
sete dl
mov byte [rbp - 9], dl
cmp eax, ecx
je 0x1400ce65d
mov al, byte [rbp - 9]
test al, 1
jne 0x1400ce6e2
jmp 0x1400ce6f3
mov rcx, qword [rbp - 8]
sub rsp, 0x20
call fcn.140010918
add rsp, 0x20
mov eax, dword [0x14021c300]
xor eax, 0xb782ab13
mov edx, dword [0x14021c304]
mov ecx, edx
and ecx, eax
xor ecx, 0xffffffff
add eax, edx
mov edx, 0xe333cc14
xor edx, 0xe333cc15
add eax, edx
add eax, ecx
mov ecx, 0xb9a99143
xor edx, edx
div ecx
mov ecx, eax
sub ecx, 0xd4f7fc37
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x342d16f9
mov r8d, 0xffffffff
xor r8d, 0x342d16f9
and edx, r8d
mov r8d, 0x6b4576c9
xor r8d, 0x94ba8936
xor eax, r8d
mov r8d, 0x854f9fc4
xor r8d, 0x7ab0603b
xor edx, r8d
and eax, edx
or ecx, 0x342d16f9
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0x5b0a0ace
xor edx, 0xa4f5f531
xor ecx, edx
and eax, ecx
cmp eax, 0x21a343ac
ja 0x1400cf5d3
mov rcx, qword [rbp + 0x28]
mov eax, dword [0x14021c308]
mov edx, 0xe8921964
xor edx, 0x739e1462
xor eax, edx
mov r8d, dword [str.K_bH7]
xor r8d, 0xfc9b2651
xor edx, edx
div r8d
mov edx, eax
or edx, 0x4b1af318
mov eax, edx
and eax, eax
xor eax, 0xffffffff
mov r8d, 0xece0409b
xor r8d, 0x131fbf64
xor eax, r8d
mov r8d, 0xffffffff
xor r8d, 0x5f15517b
or eax, r8d
mov r8d, 0xffffffff
xor r8d, 0x5f15517b
mov r9d, 0x20a2f5b7
xor r9d, 0x7fb7a4cc
mov r10d, 0xaa0e39e6
xor r10d, 0x55f1c619
xor r9d, r10d
or r8d, r9d
and edx, r8d
xor edx, 0xffffffff
and eax, edx
xor eax, 0xffffffff
mov edx, 0x7ceeb74c
xor edx, 0x831148b3
xor eax, edx
mov r8d, 0xffffffff
xor r8d, 0x41b67ef4
mov edx, 0xedadc616
xor edx, 0xc9d248ea
mov r9d, 0xcbd9c93f
xor r9d, 0x342636c0
xor edx, r9d
or eax, r8d
or edx, 0x247f8efc
xor eax, 0xffffffff
and eax, edx
cmp rcx, 0
sete cl
mov byte [rbp - 0xa], cl
cmp eax, 0xedb3f985
jae 0x1400cf5d3
mov al, byte [rbp - 0xa]
test al, 1
jne 0x1400cea22
jmp 0x1400ce890
mov rax, qword [rbp + 0x28]
mov rax, qword [rax]
movabs rcx, 0x1c63e93038de84ce
movabs rdx, 0x5c63e93038de84ce
xor rcx, rdx
and rax, rcx
movabs rcx, 0x3f149215b336cb0b
movabs rdx, 0x3f149215b336cb0b
xor rcx, rdx
cmp rax, rcx
jne 0x1400cea22
mov eax, dword [0x14021c310]
xor eax, dword [0x14021c314]
sub eax, 0x297bb588
imul eax, eax, 0x683a4e46
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x5df01607
mov edx, 0xffffffff
xor edx, 0x9c277311
or eax, ecx
mov ecx, 0xb85d9409
xor ecx, 0x247ae718
or ecx, edx
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0xe748df0
xor ecx, 0xcc2adc47
cmp eax, ecx
ja 0x1400cf5dc
mov rcx, qword [rbp + 0x28]
mov esi, dword [0x14021c318]
xor esi, 0x57edec63
mov r11d, dword [0x14021c31c]
mov edx, esi
xor edx, 0xffffffff
mov r9d, r11d
xor r9d, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x637c942e
mov eax, edx
and eax, 0x637c942e
and esi, r8d
mov r10d, r9d
and r10d, 0x637c942e
and r11d, r8d
or eax, esi
or r10d, r11d
xor eax, r10d
or edx, r9d
mov r9d, 0xc34bfddd
xor r9d, 0x3cb40222
xor edx, r9d
or r8d, 0x637c942e
and edx, r8d
or eax, edx
xor eax, 0xb06b992f
mov r8d, 0xed336b73
xor edx, edx
div r8d
mov esi, eax
mov edx, esi
xor edx, 0xffffffff
mov r9d, 0xffffffff
xor r9d, 0x9ba2fb0c
mov r8d, 0xffffffff
xor r8d, 0x168048ee
mov eax, edx
and eax, 0x168048ee
and esi, r8d
mov r10d, r9d
and r10d, 0x168048ee
mov r11d, r8d
and r11d, 0x9ba2fb0c
or eax, esi
or r10d, r11d
xor eax, r10d
or edx, r9d
xor edx, 0xffffffff
or r8d, 0x168048ee
and edx, r8d
or eax, edx
mov dword [rbp - 0x10], eax
sub rsp, 0x20
call fcn.140010918
mov eax, dword [rbp - 0x10]
add rsp, 0x20
cmp eax, 0xd658b9f6
jae 0x1400ce928
jmp 0x1400cea22
mov eax, dword [0x14021c320]
xor eax, 0xbe4142cd
mov r8d, dword [0x14021c324]
xor r8d, 0x4f032789
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x4969be54
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x4969be54
mov r8d, 0x1ab16542
xor r8d, 0x53d8db16
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0x553105c1
xor ecx, 0x8c1eb934
and eax, ecx
and eax, 0xb0c66e1d
cmp eax, 0x14f8da70
jbe 0x1400cf5e5
mov rcx, qword [rbp + 0x48]
mov eax, dword [0x14021c328]
imul eax, dword [0x14021c32c]
mov edx, 0xab61576b
xor edx, 0xab61576b
sub edx, eax
xor eax, eax
sub eax, 0x9b775e81
add edx, eax
xor eax, eax
sub eax, edx
mov edx, eax
xor edx, 0xffffffff
mov r8d, 0xd8da7689
xor r8d, 0xd121a9d2
and r8d, edx
mov r9d, 0xffffffff
xor r9d, 0x9fbdf5b
mov edx, eax
and edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0x9fbdf5b
mov r9d, 0xfddf34d2
xor r9d, 0xf424eb89
or eax, r9d
imul eax, r8d
add eax, edx
mov edx, 0xffffffff
xor edx, 0xad29d441
add eax, edx
add eax, 1
cmp rcx, 0
sete cl
mov byte [rbp - 0x11], cl
cmp eax, 0x594f7cc2
jb 0x1400ceab6
mov al, byte [rbp - 0x11]
test al, 1
jne 0x1400cec97
jmp 0x1400ceb61
mov rax, qword [rbp + 0x48]
mov rax, qword [rax]
or rax, rax
movabs rcx, 0x8abecd476bc98f62
movabs rdx, 0x754132b89436709d
xor rcx, rdx
xor rax, rcx
mov rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
xor rcx, rdx
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
and rcx, rdx
or rax, rcx
xor rax, 0xffffffffffffffff
movabs rcx, 0xbc478e792a186279
movabs rdx, 0xbc478e792a186279
xor rcx, rdx
cmp rax, rcx
jne 0x1400cec97
mov eax, dword [0x14021c330]
imul eax, dword [0x14021c334]
imul ecx, eax, 0x9d21fd58
add ecx, 0x9dfaba92
mov edx, 0xffffffff
xor edx, 0x55022da7
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0x84347b27
xor ecx, 0xe71f2831
cmp eax, ecx
jae 0x1400cf5ee
mov rcx, qword [rbp + 0x48]
mov eax, dword [0x14021c338]
and eax, dword [0x14021c33c]
or eax, 0x871f5444
mov r8d, 0xd142dd43
xor r8d, 0x7268e8da
xor edx, edx
div r8d
mov r8d, eax
xor r8d, 0xffffffff
and r8d, 0xe25ef99b
mov r9d, 0xffffffff
xor r9d, 0xe25ef99b
mov edx, eax
and edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0xe25ef99b
or eax, 0xe25ef99b
imul eax, r8d
add eax, edx
mov dword [rbp - 0x18], eax
sub rsp, 0x20
call fcn.140010918
mov eax, dword [rbp - 0x18]
add rsp, 0x20
cmp eax, 0xb468a2b0
je 0x1400cec14
jmp 0x1400cec97
mov rax, qword [rbp + 0x70]
cmp rax, 0
je 0x1400ced27
mov rax, qword [rbp + 0x70]
mov rax, qword [rax]
xor rax, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
movabs rcx, 0x4000000000000000
xor rdx, rcx
movabs rcx, 0xdbb99b5b7e3103e7
movabs r8, 0xfc7cd350109bceed
xor rcx, r8
movabs r8, 0x9ef7f6b93cc24c91
movabs r9, 0x61080946c33db36e
xor r8, r9
xor rcx, r8
or rax, rdx
movabs rdx, 0x27c5480b6eaacd0a
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jne 0x1400ced27
mov rcx, qword [rbp + 0x70]
sub rsp, 0x20
call fcn.140010918
add rsp, 0x20
mov eax, dword [0x14021c340]
sub eax, dword [0x14021c344]
xor ecx, ecx
sub ecx, 0x218557be
add eax, ecx
xor eax, 0xa6068b39
mov ecx, 0x1ccee5e9
xor edx, edx
div ecx
cmp eax, 0x3256d4e5
je 0x1400cf5f7
mov rdx, qword [rbp + 0x60]
mov eax, dword [0x14021c348]
xor eax, 0xbb770055
and eax, dword [0x14021c34c]
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xc5702197
mov ecx, 0xffffffff
xor ecx, 0xad5ff21a
or eax, r8d
or ecx, 0xad5ff21a
mov r8d, 0xfc35bd22
xor r8d, 0x3ca42dd
xor eax, r8d
and eax, ecx
xor eax, 0xd537b26d
mov ecx, 0x4a9de8cc
xor ecx, 0x3f83198b
sub eax, ecx
mov ecx, 0x5221a1d4
xor ecx, 0xdffe67f4
cmp rdx, 0
sete dl
mov byte [rbp - 0x19], dl
cmp eax, ecx
jae 0x1400cf5f7
mov cl, byte [rbp - 0x19]
xor eax, eax
test cl, 1
mov byte [rbp - 0x1a], al
jne 0x1400cf5a3
jmp 0x1400cede6
mov rcx, qword [rbp + 0x60]
mov rdx, qword [rcx]
movabs rax, 0x35ba254f0d0e975
movabs r8, 0x435ba254f0d0e975
xor rax, r8
and rdx, rax
xor eax, eax
cmp rdx, 0
mov qword [rbp - 0x28], rcx
mov cl, al
mov byte [rbp - 0x1b], cl
mov byte [rbp - 0x1a], al
je 0x1400cf586
jmp 0x1400cf5a3
mov ecx, dword [rbp + 4]
mov rax, qword [0x14022bf88]
mov qword [rbp + 0x110], rax
mov rax, qword [0x14022bf90]
mov qword [rbp + 0x118], rax
lea rdx, [rbp + 0x110]
sub rsp, 0x20
call fcn.1400b209f
mov r9, qword [rbp + 0xc8]
mov r8, qword [rbp + 0x60]
mov rdx, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x48]
mov rax, qword [rbp + 0x28]
add rsp, 0x20
mov r10b, byte [r9]
mov r11b, 0xfa
xor r11b, 0xfa
xor r9d, r9d
cmp r10b, r11b
mov byte [rbp + 0xef], r9b
mov qword [rbp + 0xf0], r8
mov qword [rbp + 0xf8], rdx
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rax
jne 0x1400cf24e
mov eax, dword [0x14021c350]
xor edx, edx
div dword [0x14021c354]
mov edx, 0xffffffff
xor edx, 0x50790e93
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x50790e93
add eax, edx
sub eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0x75d7c5e2
xor edx, 0x7246abd5
and edx, ecx
mov r8d, 0xffffffff
xor r8d, 0x7916e37
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0x8a64d656
xor r8d, 0x8df5b861
mov edx, eax
and edx, r8d
mov r8d, 0x54def170
xor r8d, 0x534f9f47
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, eax
and ecx, 0xc794003b
shl ecx, 1
mov edx, 0x5174b525
xor edx, 0x96e0b51e
add eax, edx
sub eax, ecx
mov ecx, 0xb9ae969
xor ecx, 0xf6382432
cmp eax, ecx
ja 0x1400cf600
mov al, byte [rbp + 0x7f]
mov ecx, dword [0x14021c358]
mov edx, 0xd6340af1
xor edx, 0x42bf4e8c
xor ecx, edx
mov r8d, dword [0x14021c35c]
xor ecx, 0xffffffff
xor r8d, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xc6a27bab
or ecx, r8d
or edx, 0xc6a27bab
mov r8d, 0xcec00ede
xor r8d, 0x313ff121
xor ecx, r8d
and ecx, edx
mov edx, 0xe8855a25
xor edx, 0x42874134
xor ecx, edx
sub ecx, 0x5586350e
mov edx, 0xfbab6157
xor edx, 0xfbab6157
mov r8d, 0x6d7ea4a1
xor r8d, 0x52b55b6a
sub edx, r8d
add ecx, edx
mov dword [rbp - 0x30], ecx
cmp al, 0
sete al
mov byte [rbp - 0x31], al
mov ecx, dword [rbp + 0x1a0]
or ecx, ecx
xor ecx, 0xffffffff
mov eax, 0xffffffff
xor eax, 0x10
mov edx, 0xffffffff
xor edx, 0x10
and eax, edx
or ecx, eax
xor ecx, 0xffffffff
sub rsp, 0x20
call fcn.1400aa6a0
mov rcx, qword [rbp + 0xc8]
add rsp, 0x20
mov dl, al
mov eax, dword [rbp - 0x30]
mov byte [rbp - 0x2a], dl
mov cl, byte [rcx]
mov dl, 0xbb
xor dl, 0xbb
cmp cl, dl
sete cl
mov byte [rbp - 0x29], cl
cmp eax, 0x3553215f
jae 0x1400cef4b
mov al, byte [rbp - 0x31]
test al, 1
jne 0x1400cf038
jmp 0x1400cf13e
mov rax, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x48]
mov rdx, qword [rbp + 0x70]
mov r8, qword [rbp + 0x60]
mov r10b, byte [rbp - 0x29]
mov r11b, byte [rbp - 0x2a]
xor r9d, r9d
test r11b, 1
mov r11d, 7
cmovne r11d, r9d
test r10b, 1
mov r10d, 2
cmovne r10d, r11d
mov dword [rbp - 0x38], r10d
mov byte [rbp - 0x32], r9b
test r10d, r10d
mov byte [rbp + 0xef], r9b
mov qword [rbp + 0xf0], r8
mov qword [rbp + 0xf8], rdx
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rax
je 0x1400cf24e
jmp 0x1400cf0a8
mov rax, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x48]
mov rdx, qword [rbp + 0x70]
mov r8, qword [rbp + 0x60]
mov r9b, byte [rbp - 0x32]
mov r10d, dword [rbp - 0x38]
sub r10d, 2
mov byte [rbp + 0xef], r9b
mov qword [rbp + 0xf0], r8
mov qword [rbp + 0xf8], rdx
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rax
je 0x1400cf24e
jmp 0x1400cf0f2
mov eax, dword [rbp - 0x38]
sub eax, 7
jne 0x1400cf5ae
jmp 0x1400cf103
mov rax, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x48]
mov rdx, qword [rbp + 0x70]
mov r8, qword [rbp + 0x60]
mov r9b, 1
mov byte [rbp + 0xef], r9b
mov qword [rbp + 0xf0], r8
mov qword [rbp + 0xf8], rdx
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rax
jmp 0x1400cf24e
mov rax, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x48]
mov rdx, qword [rbp + 0x70]
mov r8, qword [rbp + 0x60]
mov bl, byte [rbp - 0x2a]
mov r10b, byte [rbp - 0x29]
mov r9b, bl
not r9b
movzx r11d, r9b
and r11d, 1
mov r9d, r11d
lea r11d, [r9 + r9*8]
and r10b, 1
mov r9b, r10b
and r9b, bl
test r10b, r10b
mov r10d, 2
cmovne r10d, r11d
mov dword [rbp - 0x3c], r10d
test r10d, r10d
mov byte [rbp + 0xef], r9b
mov qword [rbp + 0xf0], r8
mov qword [rbp + 0xf8], rdx
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rax
je 0x1400cf24e
jmp 0x1400cf1b6
mov eax, dword [rbp - 0x3c]
sub eax, 2
je 0x1400cf213
jmp 0x1400cf1c7
mov eax, dword [rbp - 0x3c]
sub eax, 9
jne 0x1400cf5ae
jmp 0x1400cf1d8
mov rax, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x48]
mov rdx, qword [rbp + 0x70]
mov r8, qword [rbp + 0x60]
xor r9d, r9d
mov byte [rbp + 0xef], r9b
mov qword [rbp + 0xf0], r8
mov qword [rbp + 0xf8], rdx
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rax
jmp 0x1400cf24e
mov rax, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x48]
mov rdx, qword [rbp + 0x70]
mov r8, qword [rbp + 0x60]
xor r9d, r9d
mov byte [rbp + 0xef], r9b
mov qword [rbp + 0xf0], r8
mov qword [rbp + 0xf8], rdx
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rax
jmp 0x1400cf24e
mov rax, qword [rbp + 0x80]
mov cl, byte [rbp + 0xef]
mov rdx, qword [rbp + 0xf0]
mov r8, qword [rbp + 0xf8]
mov r9, qword [rbp + 0x100]
mov r10, qword [rbp + 0x108]
mov qword [rbp - 0x70], r10
mov qword [rbp - 0x68], r9
mov qword [rbp - 0x60], r8
mov qword [rbp - 0x58], rdx
mov byte [rbp - 0x49], cl
mov rax, qword [rax + 8]
mov qword [rbp - 0x48], rax
cmp rax, 0
je 0x1400cf2db
mov rax, qword [rbp - 0x48]
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 0x1400cf2db
mov rcx, qword [rbp - 0x48]
sub rsp, 0x20
call fcn.140010918
add rsp, 0x20
mov rax, qword [rbp - 0x70]
cmp rax, 0
je 0x1400cf349
mov rax, qword [rbp - 0x70]
mov rax, qword [rax]
movabs rdx, 0x1e26cf95f861b459
movabs rcx, 0x5e26cf95f861b459
xor rdx, rcx
mov rcx, rax
xor rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0x17868e632a05203d
movabs r8, 0x57868e632a05203d
xor rdx, r8
or rax, rdx
and rax, rcx
cmp rax, 0
jne 0x1400cf349
mov rcx, qword [rbp - 0x70]
sub rsp, 0x20
call fcn.140010918
add rsp, 0x20
mov rax, qword [rbp - 0x68]
cmp rax, 0
je 0x1400cf453
mov eax, dword [0x14021c360]
imul eax, dword [0x14021c364]
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x1fc784dd
mov edx, 0x7670215a
xor edx, 0x69b7a587
mov r8d, 0x221b14a4
xor r8d, 0xdde4eb5b
xor edx, r8d
and eax, edx
sub eax, ecx
imul eax, eax, 0xe7f5f943
mov ecx, 0x35d9d0fb
xor edx, edx
div ecx
mov ecx, 0xc34f83a9
xor ecx, 0xdbc7a9d7
cmp eax, ecx
je 0x1400cf609
mov rcx, qword [rbp - 0x68]
mov eax, dword [0x14021c368]
mov edx, 0x49666221
xor edx, 0x23c6a519
xor eax, edx
sub eax, dword [0x14021c36c]
mov edx, eax
xor edx, 0xa18a5af2
xor edx, 0xffffffff
or eax, 0xa18a5af2
and eax, edx
sub eax, 0x4b0c9c3b
sub eax, 0x7ee91f7
mov rcx, qword [rcx]
mov rdx, rcx
add rdx, 1
movabs r8, 0x5af1a29fd11a5911
movabs r9, 0xa50e5d602ee5a6ee
xor r8, r9
xor rcx, r8
movabs r8, 0x4000000000000000
or rcx, r8
add rcx, rdx
cmp rcx, 0
sete cl
mov byte [rbp - 0x71], cl
cmp eax, 0x53fe59af
jae 0x1400cf609
mov al, byte [rbp - 0x71]
test al, 1
jne 0x1400cf442
jmp 0x1400cf453
mov rcx, qword [rbp - 0x68]
sub rsp, 0x20
call fcn.140010918
add rsp, 0x20
mov eax, dword [0x14021c370]
mov ecx, 0x29c94c06
xor ecx, 0x2039b945
xor eax, ecx
mov edx, dword [0x14021c374]
mov r8d, eax
xor r8d, edx
xor r8d, 0xffffffff
mov ecx, edx
and ecx, r8d
shl ecx, 1
sub ecx, edx
sub eax, ecx
add eax, 0xf8e084d8
mov ecx, 0xc38cd2d6
xor ecx, 0xf0419071
xor edx, edx
div ecx
mov ecx, 0x267c0e91
xor ecx, 0x2be7b13a
add eax, ecx
mov ecx, 0x6d19c8f2
xor ecx, 0xfabc3415
cmp eax, ecx
jae 0x1400cf612
mov rcx, qword [rbp - 0x60]
mov eax, dword [0x14021c378]
xor edx, edx
div dword [0x14021c37c]
mov r8d, 0xba86ed35
xor edx, edx
div r8d
mov r8d, 0x3fd9e91f
xor r8d, 0xa597b0a5
xor edx, edx
div r8d
mov r8d, 0x436358f1
xor r8d, 0x102f687f
xor edx, edx
div r8d
cmp rcx, 0
sete cl
mov byte [rbp - 0x72], cl
cmp eax, 0xedb3d7fc
jae 0x1400cf4b6
mov al, byte [rbp - 0x72]
test al, 1
jne 0x1400cf548
jmp 0x1400cf51c
mov rcx, qword [rbp - 0x60]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x1400cf548
mov rcx, qword [rbp - 0x60]
sub rsp, 0x20
call fcn.140010918
add rsp, 0x20
mov al, byte [rbp - 0x49]
mov rcx, qword [rbp - 0x58]
cmp rcx, 0
mov byte [rbp - 0x1a], al
je 0x1400cf5a3
mov al, byte [rbp - 0x49]
mov rcx, qword [rbp - 0x58]
movabs rdx, 0x4000000000000000
and rdx, qword [rcx]
cmp rdx, 0
mov qword [rbp - 0x28], rcx
mov cl, al
mov byte [rbp - 0x1b], cl
mov byte [rbp - 0x1a], al
jne 0x1400cf5a3
in eax, 0x88
out 0xf, al
test dword [0x1880cf587], ebx
mov ecx, dword [rbp - 0x28]
mov rcx, qword [rbp - 0x28]
mov al, byte [rbp - 0x1b]
mov byte [rbp - 0x73], al
sub rsp, 0x20
call fcn.140010918
mov al, byte [rbp - 0x73]
add rsp, 0x20
mov byte [rbp - 0x1a], al
mov al, byte [rbp - 0x1a]
cmp al, 0
setne al
mov byte [rbp - 0x74], al
mov al, byte [rbp - 0x74]
and al, 1
movzx eax, al
lea rsp, [rbp + 0x200]
pop rbx
pop rsi
pop rbp
ret
sbb al, 0xb5
invalid
shl byte [rcx], 1
xchg ecx, eax
mov edx, 0xfff08ae9
push rdi
invalid
test esi, 0xbbe90d81
int1
invalid
mov ah, 0xe4
jae 0x1400cf63c
jmp 0x1400ce928
sahf
js 0x1400cf57c
jmp 0x1400ceab6
mov ecx, 0xe99b9c70
sbb eax, 0xfafffff6
cli
xchg edi, eax
adc ecx, ebp
push rsi
idiv edi
jmp [rcx]
sub dword [rax + 0x42e98828], ecx
stc
invalid
invalid
movsb byte [rdi], byte [rsi]
cmp al, 0x40
jrcxz 0x1400cf600
wait
invalid
mov ecx, 0x3f06f4e8
xor ecx, 0x7aad5eb1
imul eax, ecx
mov ecx, 0x81246926
xor ecx, 0x146abcb7
mov edx, 0xa8d40fc9
xor edx, 0x572bf036
xor ecx, edx
add eax, ecx
add eax, 1
mov ecx, 0x68048f39
xor ecx, 0x6b78e33
xor edx, edx
div ecx
mov ecx, 0x4b616336
xor ecx, 0x98fb4e69
cmp eax, ecx
ja 0x1400cf7ad
mov eax, dword [0x14021c388]
xor eax, 0xf6331b0d
mov ecx, dword [0x14021c38c]
xor edx, edx
div ecx
or eax, 0x17c0cfa6
imul eax, eax, 0xf944b9cf
or eax, 0x82bbb582
mov dword [rbp - 0x20], eax
mov eax, 0x10
call fcn.140215890
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x28], rax
sub rsp, 0x20
call fcn.1400e0976
mov rcx, qword [rbp - 8]
add rsp, 0x20
mov rax, qword [rbp - 0x28]
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rdx, qword [rcx + 8]
mov qword [rax + 8], rdx
sub rsp, 0x20
call fcn.1400123e0
mov rcx, qword [rbp - 0x28]
add rsp, 0x20
mov dl, 0xd9
xor dl, 0xd8
sub rsp, 0x20
call fcn.1400cdc90
mov rcx, qword [rbp - 8]
add rsp, 0x20
mov dl, al
mov eax, dword [rbp - 0x20]
mov byte [rbp - 0x19], dl
mov rcx, qword [rcx + 8]
mov qword [rbp - 0x18], rcx
cmp rcx, 0
sete cl
mov byte [rbp - 9], cl
cmp eax, 0xad9fde47
ja 0x1400cf7ad
mov al, byte [rbp - 9]
test al, 1
jne 0x1400cf7a0
jmp 0x1400cf744
mov rax, qword [rbp - 0x18]
mov rcx, qword [rax]
movabs rdx, 0xf7d85423e7e772a4
movabs rax, 0xb7d85423e7e772a4
xor rdx, rax
movabs rax, 0xd06c7052ef1a5ea9
movabs r8, 0x2f938fad10e5a156
xor rax, r8
xor rdx, rax
mov rax, rcx
xor rax, rdx
and rax, rcx
cmp rax, 0
jne 0x1400cf7a0
mov rcx, qword [rbp - 0x18]
sub rsp, 0x20
call fcn.140010918
add rsp, 0x20
mov al, byte [rbp - 0x19]
and al, 1
movzx eax, al
mov rsp, rbp
pop rbp
ret
insb byte [rdi], dx
or byte [rsp + riz*2 - 0x17], ch
sar esi, cl
invalid