Function at 0x1400b7770
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
sub rsp, 0x258
lea rbp, [rsp + 0x80]
mov byte [rbp + 0x7f], dl
mov qword [rbp + 0x80], rcx
mov eax, 0x10
mov qword [rbp + 0xa8], rax
call fcn.1401d7280
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x88], rax
mov eax, 0x30
mov qword [rbp + 0x90], rax
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0x90]
mov rcx, rsp
mov qword [rbp + 0x98], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xa8]
mov rcx, rsp
mov qword [rbp + 0xa0], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xa8]
mov rcx, rsp
mov qword [rbp + 0xb0], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xb8], rax
sub rsp, 0x20
call fcn.1400c80db
add rsp, 0x20
mov qword [rbp + 0xd0], rax
add rax, 0x60
mov qword [rbp + 0xc0], rax
mov qword [rbp + 0x1c8], 0
lea rax, [rbp + 0x1c8]
add rax, 8
mov qword [rbp + 0xc8], rax
mov qword [rbp + 0x1d0], 0
mov word [rbp + 0x1c6], 0x1a5
lea rcx, [rbp + 0x1c6]
sub rsp, 0x20
call fcn.140062fb0
mov rdx, qword [rbp + 0xd0]
add rsp, 0x20
mov qword [rbp + 0xd8], rax
xor eax, eax
mov cl, al
xor eax, eax
cmp byte [rdx + 0x60], 0
mov byte [rbp + 0xe7], cl
mov rcx, rax
mov qword [rbp + 0xe8], rcx
mov rcx, rax
mov qword [rbp + 0xf0], rcx
mov rcx, rax
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x100], rax
jne 0x1400b8af6
mov rax, qword [rbp + 0x80]
mov rcx, qword [rbp + 0xd8]
mov rdx, qword [rcx]
mov rcx, qword [rax]
xor eax, eax
sub rax, rcx
xor ecx, ecx
sub rcx, rdx
add rax, rcx
xor ecx, ecx
mov edx, ecx
sub rdx, rax
lea rcx, [rbp + 0x1c8]
sub rsp, 0x20
call fcn.140018c10
mov rax, qword [rbp + 0xd8]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0x198], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1a0], rax
lea rcx, [rbp + 0x1c8]
lea rdx, [rbp + 0x198]
sub rsp, 0x20
call fcn.1400b9146
mov rax, qword [rbp + 0x80]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0x188], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x190], rax
lea rcx, [rbp + 0x1c8]
lea rdx, [rbp + 0x188]
sub rsp, 0x20
call fcn.1400b9146
mov rax, qword [rbp + 0xc8]
mov rdx, qword [rbp + 0xb0]
add rsp, 0x20
mov rcx, qword [rbp + 0x1c8]
mov qword [rbp + 0x58], rcx
mov rax, qword [rax]
mov qword [rbp + 0x60], rax
mov qword [rdx], rcx
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x178]
sub rsp, 0x20
call fcn.1400b9340
mov r9, qword [rbp + 0xc0]
mov rdx, qword [rbp + 0x60]
add rsp, 0x20
mov rax, qword [rbp + 0x178]
mov qword [rbp + 0x68], rax
mov rcx, qword [rbp + 0x180]
mov qword [rbp + 0x70], rcx
xor eax, eax
mov r8b, al
xor eax, eax
cmp byte [r9], 0
mov byte [rbp + 0xe7], r8b
mov qword [rbp + 0xe8], rdx
mov qword [rbp + 0xf0], rcx
mov rcx, rax
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x100], rax
jne 0x1400b8af6
mov rax, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x68]
mov qword [rbp + 0x168], rcx
mov qword [rbp + 0x170], rax
lea rcx, [rbp + 0x168]
sub rsp, 0x20
call fcn.1400b950d
mov r9, qword [rbp + 0xc0]
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 + 0xe7], r8b
mov qword [rbp + 0xe8], rdx
mov qword [rbp + 0xf0], rcx
mov rcx, rax
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x100], rax
jne 0x1400b8af6
mov r8, qword [rbp + 0x88]
mov rcx, qword [rbp + 0x50]
mov edx, 2
sub rsp, 0x20
call fcn.1400b95ba
add rsp, 0x20
test al, 1
jne 0x1400b7a9a
jmp 0x1400b7ae1
sub rsp, 0x20
call fcn.140007bb8
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 + 0xe7], r8b
mov qword [rbp + 0xe8], rdx
mov qword [rbp + 0xf0], rcx
mov rcx, rax
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x100], rax
jmp 0x1400b8af6
mov rax, qword [rbp + 0x60]
mov rcx, qword [rbp + 0x58]
mov rdx, qword [rbp + 0x88]
mov rdx, qword [rdx]
mov word [rbp + 0x1b0], dx
mov qword [rbp + 0x148], rcx
mov qword [rbp + 0x150], rax
lea rcx, [rbp + 0x158]
lea rdx, [rbp + 0x148]
sub rsp, 0x20
call fcn.1400b9340
mov r10, qword [rbp + 0xc0]
mov r8, qword [rbp + 0x60]
mov rdx, qword [rbp + 0x70]
add rsp, 0x20
mov rax, qword [rbp + 0x158]
mov qword [rbp + 0x40], rax
mov rcx, qword [rbp + 0x160]
mov qword [rbp + 0x48], rcx
xor eax, eax
mov r9b, al
xor eax, eax
cmp byte [r10], 0
mov byte [rbp + 0xe7], r9b
mov qword [rbp + 0xe8], r8
mov qword [rbp + 0xf0], rdx
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x100], rax
jne 0x1400b8af6
mov rax, qword [rbp + 0x48]
mov rcx, qword [rbp + 0x40]
mov qword [rbp + 0x138], rcx
mov qword [rbp + 0x140], rax
lea rcx, [rbp + 0x138]
sub rsp, 0x20
call fcn.1400b950d
mov r10, qword [rbp + 0xc0]
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 + 0xe7], r9b
mov qword [rbp + 0xe8], r8
mov qword [rbp + 0xf0], rdx
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x100], rax
jne 0x1400b8af6
mov rcx, qword [rbp + 0x38]
mov edx, 2
lea r8, [rbp + 0x1a8]
sub rsp, 0x20
call fcn.1400b95ba
add rsp, 0x20
test al, 1
jne 0x1400b7c1b
jmp 0x1400b7d20
mov eax, dword [0x1401dd040]
mov edx, dword [0x1401dd044]
mov ecx, eax
xor ecx, edx
xor edx, 0xffffffff
and eax, edx
shl eax, 1
sub eax, ecx
sub eax, 0x9f808360
add eax, 0x9945b684
add eax, 0x9f808360
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xeb1a4c47
mov edx, 0xffffffff
xor edx, 0xeb1a4c47
and eax, edx
sub eax, ecx
xor eax, 0xa0ba44c2
mov ecx, 0x124e9480
xor ecx, 0x6dc50fc7
cmp eax, ecx
jb 0x1400b90ec
mov eax, dword [0x1401dd048]
mov edx, dword [0x1401dd04c]
and eax, eax
xor eax, 0xffffffff
mov ecx, edx
xor ecx, 0xffffffff
mov r8d, 0x99c47266
xor r8d, 0x663b8d99
xor edx, r8d
or ecx, edx
mov edx, 0xb6059a6a
xor edx, 0x49fa6595
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0x1360462b
mov ecx, 0xbd39e9e1
xor ecx, 0x732709ae
add eax, ecx
add eax, 0x69984309
mov dword [rbp + 0x34], eax
sub rsp, 0x20
call fcn.140007bb8
mov eax, dword [rbp + 0x34]
add rsp, 0x20
cmp eax, 0xdfe3d561
jb 0x1400b7c76
mov rcx, qword [rbp + 0x48]
mov rdx, qword [rbp + 0x70]
mov r8, qword [rbp + 0x60]
xor eax, eax
mov r9b, al
xor eax, eax
mov byte [rbp + 0xe7], r9b
mov qword [rbp + 0xe8], r8
mov qword [rbp + 0xf0], rdx
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x100], rax
jmp 0x1400b8af6
mov rcx, qword [rbp + 0x1a8]
mov rax, rcx
add rax, 2
mov qword [rbp + 0x28], rax
xor rcx, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jge 0x1400b7d8b
sub rsp, 0x20
call fcn.140007bb8
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 + 0xe7], r9b
mov qword [rbp + 0xe8], r8
mov qword [rbp + 0xf0], rdx
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x100], rax
jmp 0x1400b8af6
mov rax, qword [rbp + 0x60]
mov rcx, qword [rbp + 0x58]
mov rdx, qword [rbp + 0x28]
mov word [rbp + 0x1b2], dx
mov qword [rbp + 0x118], rcx
mov qword [rbp + 0x120], rax
lea rcx, [rbp + 0x128]
lea rdx, [rbp + 0x118]
sub rsp, 0x20
call fcn.1400b9340
mov r9, qword [rbp + 0xc0]
mov r8, qword [rbp + 0x60]
mov rdx, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x48]
add rsp, 0x20
mov rax, qword [rbp + 0x128]
mov qword [rbp + 0x18], rax
mov rax, qword [rbp + 0x130]
mov qword [rbp + 0x20], rax
mov r10b, byte [r9]
mov r11b, 0x50
xor r11b, 0x50
xor r9d, r9d
cmp r10b, r11b
mov byte [rbp + 0xe7], r9b
mov qword [rbp + 0xe8], r8
mov qword [rbp + 0xf0], rdx
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x100], rax
jne 0x1400b8af6
mov rax, qword [rbp + 0x20]
mov rcx, qword [rbp + 0x18]
mov qword [rbp + 0x108], rcx
mov qword [rbp + 0x110], rax
lea rcx, [rbp + 0x108]
sub rsp, 0x20
call fcn.1400b9699
mov r10, qword [rbp + 0xc0]
mov r8, qword [rbp + 0x60]
mov rdx, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x48]
add rsp, 0x20
mov r9, rax
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x1b8], r9
xor r9d, r9d
cmp byte [r10], 0
mov byte [rbp + 0xe7], r9b
mov qword [rbp + 0xe8], r8
mov qword [rbp + 0xf0], rdx
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x100], rax
jne 0x1400b8af6
mov rcx, qword [rbp + 0x98]
mov edx, 0x30
sub rsp, 0x20
call fcn.1400b640f
mov rax, qword [rbp + 0x98]
add rsp, 0x20
mov dword [rax], 0x30
lea rcx, [rbp + 0x1b0]
sub rsp, 0x20
call fcn.1400990bc
mov r9, qword [rbp + 0xc0]
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 + 0x20]
mov qword [rbp + 0x10], r10
mov r10b, byte [r9]
mov r11b, 0xb7
xor r11b, 0xb7
xor r9d, r9d
cmp r10b, r11b
mov byte [rbp + 0xe7], r9b
mov qword [rbp + 0xe8], r8
mov qword [rbp + 0xf0], rdx
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x100], rax
jne 0x1400b8af6
mov eax, dword [0x1401dd050]
mov edx, dword [0x1401dd054]
mov ecx, eax
or ecx, edx
mov r8d, 0x79323d28
xor r8d, 0x86cdc2d7
xor ecx, r8d
or eax, edx
mov edx, 0xecd54de2
xor edx, 0x132ab21d
xor eax, edx
or ecx, eax
mov eax, 0xc2a16f74
xor eax, 0x3d5e908b
xor ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0x4c296138
xor edx, 0xb3d69ec7
xor ecx, edx
and eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xa4615c5f
mov edx, 0xffffffff
xor edx, 0xa4615c5f
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov edx, 0x59f4ddd1
xor edx, 0x6f93649e
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
or eax, 0x3667b94f
and eax, ecx
mov edx, eax
xor edx, 0x39ec67c1
mov ecx, 0xb94176f4
xor ecx, 0x46be890b
xor edx, ecx
and edx, 0x39ec67c1
mov ecx, 0x142a496e
xor ecx, 0x142a496c
imul ecx, edx
sub ecx, 0x39ec67c1
sub eax, ecx
mov ecx, 0x86bda757
xor ecx, 0x783230a3
cmp eax, ecx
je 0x1400b90f5
mov rcx, qword [rbp + 0xa0]
mov eax, dword [0x1401dd058]
xor edx, edx
div dword [0x1401dd05c]
mov rdx, qword [rbp + 0x10]
mov r8d, eax
mov rax, qword [rbp + 0x98]
imul r9d, r8d, 0x20683efb
mov r10d, r9d
xor r10d, 0xffffffff
mov r8d, 0x97317fe7
xor r8d, 0xd5ee9448
and r8d, r10d
mov r10d, 0xffffffff
xor r10d, 0x42dfebaf
and r9d, r10d
or r8d, r9d
xor r8d, 0x62c13c55
mov dword [rbp + 4], r8d
mov r8d, 0x9150ed14
xor r8d, 0x61e32dc
mov dword [rbp], r8d
mov qword [rax + 0x10], rdx
mov edx, 0x874ceaa3
xor edx, 0x874ceae3
mov dword [rax + 0x18], edx
movabs rdx, 0xa6208f26a718754e
movabs r8, 0xa6208f26a718754e
xor rdx, r8
mov qword [rax + 8], rdx
mov qword [rax + 0x20], 0
mov qword [rax + 0x28], 0
mov edx, 0x28
sub rsp, 0x20
call fcn.1400b640f
mov rcx, qword [rbp + 0x98]
mov rdx, qword [rbp + 0xa0]
add rsp, 0x20
mov rax, qword [0x1401ee848]
sub rsp, 0x20
call qword [rax]
mov rdx, qword [rbp + 0xc0]
mov ecx, dword [rbp]
add rsp, 0x20
mov r8d, eax
mov eax, dword [rbp + 4]
mov dword [rbp + 8], r8d
cmp byte [rdx], 0
sete dl
mov byte [rbp + 0xf], dl
cmp eax, ecx
ja 0x1400b8003
mov rax, qword [rbp + 0x20]
mov rcx, qword [rbp + 0x48]
mov rdx, qword [rbp + 0x70]
mov r8, qword [rbp + 0x60]
mov r10b, byte [rbp + 0xf]
xor r9d, r9d
test r10b, 1
mov byte [rbp + 0xe7], r9b
mov qword [rbp + 0xe8], r8
mov qword [rbp + 0xf0], rdx
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x100], rax
jne 0x1400b814f
jmp 0x1400b8af6
mov eax, dword [0x1401dd060]
mov edx, dword [0x1401dd064]
mov r8d, eax
xor r8d, edx
xor r8d, 0xffffffff
mov ecx, edx
and ecx, r8d
shl ecx, 1
sub ecx, edx
sub eax, ecx
sub eax, 0x1ff4cf21
mov r8d, 0xffffffff
xor r8d, 0x7abec26
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x7abec26
or eax, 0x7abec26
imul eax, edx
add eax, ecx
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x86e1a553
add ecx, eax
xor eax, eax
sub eax, ecx
cmp eax, 0xef1d6d16
je 0x1400b90fe
mov eax, dword [0x1401dd068]
mov r8d, dword [0x1401dd06c]
mov ecx, eax
xor ecx, 0xffffffff
mov edx, r8d
and edx, ecx
mov ecx, 0xa0a24cd0
xor ecx, 0x5f5db32f
mov r9d, r8d
xor r9d, ecx
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0xcd644851
mov r8d, 0xffffffff
xor r8d, 0xcd644851
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xcd644851
or eax, 0xcd644851
imul eax, edx
add eax, ecx
sub eax, 0xd7a81bd7
xor eax, 0xc6fddc85
cmp eax, 0x527772e7
je 0x1400b90fe
mov eax, dword [rbp + 8]
sub eax, 0xc0000034
je 0x1400b826b
jmp 0x1400b8258
mov eax, dword [rbp + 8]
sub eax, 0xc000003a
jne 0x1400b87d7
jmp 0x1400b826b
mov rax, qword [rbp + 0x80]
mov rax, qword [rax + 8]
mov qword [rbp - 8], rax
cmp rax, 0
je 0x1400b83f8
mov rcx, qword [rbp - 8]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x1400b83f8
mov eax, dword [0x1401dd070]
mov r8d, dword [0x1401dd074]
mov ecx, eax
xor ecx, 0xffffffff
mov edx, r8d
and edx, ecx
mov ecx, 0xee377ffc
xor ecx, 0x11c88003
mov r9d, r8d
xor r9d, ecx
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x5b022f5
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x5b022f5
or eax, 0x5b022f5
imul eax, edx
add eax, ecx
xor eax, 0x5bd86747
mov edx, eax
xor edx, 0x9975dda7
xor edx, 0xffffffff
and edx, 0x9975dda7
mov ecx, 0x1be383a3
xor ecx, 0x1be383a1
imul ecx, edx
mov edx, 0x70bbd10c
xor edx, 0xe9ce0cab
sub ecx, edx
sub eax, ecx
mov ecx, 0xa62bf924
xor ecx, 0xdb31511f
cmp eax, ecx
jb 0x1400b9107
mov rcx, qword [rbp - 8]
mov edx, dword [0x1401dd078]
xor edx, 0x15d857c2
add edx, dword [0x1401dd07c]
mov eax, 0xf4eba969
xor eax, 0x8aff2d76
xor edx, eax
mov r8d, 0xecef0e6b
xor r8d, 0x1310f194
mov eax, edx
xor eax, r8d
and eax, 0xc7a567d9
mov r8d, 0xffffffff
xor r8d, 0xc7a567d9
and edx, r8d
or eax, edx
mov r8d, eax
xor r8d, 0xffffffff
and r8d, 0x24fd186f
mov r9d, 0xffffffff
xor r9d, 0x24fd186f
mov edx, eax
and edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0x24fd186f
or eax, 0x24fd186f
imul eax, r8d
add eax, edx
mov dword [rbp - 0xc], eax
sub rsp, 0x20
call fcn.14000de03
mov eax, dword [rbp - 0xc]
add rsp, 0x20
cmp eax, 0x3fffd998
jb 0x1400b9107
jmp 0x1400b83f8
mov rax, qword [rbp + 0x20]
cmp rax, 0
je 0x1400b84aa
mov rax, qword [rbp + 0x20]
mov rax, qword [rax]
or rax, rax
movabs rcx, 0xdae7eec17b4025b4
movabs rdx, 0x2518113e84bfda4b
xor rcx, rdx
xor rax, rcx
mov rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
xor rcx, rdx
movabs rdx, 0x463e172778ceff57
movabs r8, 0x63e172778ceff57
xor rdx, r8
movabs r8, 0x1307a9f098c45e51
movabs r9, 0xecf8560f673ba1ae
xor r8, r9
xor rdx, r8
and rcx, rdx
or rax, rcx
movabs rcx, 0xff5630b7abdd9411
movabs rdx, 0xa9cf4854226bee
xor rcx, rdx
xor rax, rcx
cmp rax, 0
jne 0x1400b84aa
mov rcx, qword [rbp + 0x20]
sub rsp, 0x20
call fcn.14000de03
add rsp, 0x20
mov rax, qword [rbp + 0x48]
cmp rax, 0
je 0x1400b84e4
mov rcx, qword [rbp + 0x48]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x1400b84e4
mov rcx, qword [rbp + 0x48]
sub rsp, 0x20
call fcn.14000de03
add rsp, 0x20
mov rax, qword [rbp + 0x70]
cmp rax, 0
je 0x1400b862c
mov eax, dword [0x1401dd080]
mov edx, dword [0x1401dd084]
xor edx, 0x6c419d0c
mov r8d, eax
xor r8d, edx
mov ecx, 0x27013452
xor ecx, 0xd8fecbad
xor r8d, ecx
mov ecx, edx
and ecx, r8d
shl ecx, 1
sub ecx, edx
sub eax, ecx
imul ecx, eax, 0xc27843dc
or ecx, 0x599925cc
mov edx, 0x3cbdf1f2
xor edx, 0x678e47c2
mov eax, ecx
and eax, edx
mov edx, 0x40ed6da5
xor edx, 0x1bdedb95
or ecx, edx
add eax, ecx
cmp eax, 0xcfcffb58
jae 0x1400b9110
mov rcx, qword [rbp + 0x70]
mov eax, dword [0x1401dd088]
sub eax, dword [0x1401dd08c]
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x6ee291aa
mov r8d, 0xacfdb662
xor r8d, 0x1d5bb541
mov r9d, 0xaed7d975
xor r9d, 0x5128268a
xor r8d, r9d
or eax, edx
mov edx, 0x332455d8
xor edx, 0x828256fb
or edx, r8d
xor eax, 0xffffffff
and eax, edx
or eax, 0x77aa8eaf
mov r8d, 0xcd76884b
xor edx, edx
div r8d
mov rcx, qword [rcx]
movabs r8, 0x4000000000000000
mov rdx, rcx
xor rdx, r8
xor rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
or rcx, r8
and rcx, rdx
movabs rdx, 0x698873dbadfe8f34
movabs r8, 0x698873dbadfe8f34
xor rdx, r8
cmp rcx, rdx
sete cl
mov byte [rbp - 0xd], cl
cmp eax, 0x90fd39ed
je 0x1400b8559
mov al, byte [rbp - 0xd]
test al, 1
jne 0x1400b861b
jmp 0x1400b862c
mov rcx, qword [rbp + 0x70]
sub rsp, 0x20
call fcn.14000de03
add rsp, 0x20
mov eax, dword [0x1401dd090]
or eax, dword [0x1401dd094]
mov ecx, 0x766d72a2
xor ecx, 0x60b4a6e6
and eax, ecx
mov ecx, eax
and ecx, 0x164a0183
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x164a0183
or eax, edx
mov edx, 0xf4fdddee
xor edx, 0xb022211
xor ecx, edx
xor eax, 0xffffffff
or ecx, eax
mov edx, 0xbbf224bb
xor edx, 0x440ddb44
mov eax, ecx
xor eax, edx
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x422b1782
or ecx, 0x422b1782
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xa10bcc8
xor edx, 0xf5ef4337
xor ecx, edx
and eax, ecx
cmp eax, 0x9686ff6c
jae 0x1400b9119
mov rcx, qword [rbp + 0x60]
mov eax, dword [str.Cre]
or eax, dword [0x1401dd09c]
mov r8d, 0xbe925c21
xor edx, edx
div r8d
mov r8d, 0xbff5d0d5
xor r8d, 0xa3083a03
xor edx, edx
div r8d
mov edx, 0x8552794d
xor edx, 0x9a2f55d1
mov r8d, 0xad701bf8
xor r8d, 0x528fe407
xor edx, r8d
xor r8d, r8d
sub r8d, 1
sub edx, r8d
sub eax, edx
cmp rcx, 0
sete cl
mov byte [rbp - 0xe], cl
cmp eax, 0x3bdb383c
jae 0x1400b86b1
mov cl, byte [rbp - 0xe]
xor eax, eax
test cl, 1
mov byte [rbp - 0xf], al
jne 0x1400b90cf
jmp 0x1400b8730
mov rcx, qword [rbp + 0x60]
mov rdx, qword [rcx]
movabs rax, 0x4e3e32dfa8040258
movabs r8, 0xb1c1cd2057fbfda7
xor rax, r8
xor rdx, rax
movabs rax, 0xa68336b1a21f486
movabs r8, 0x4a68336b1a21f486
xor rax, r8
movabs r8, 0x9fdfe1f55b65fbd9
movabs r9, 0x60201e0aa49a0426
xor r8, r9
xor rax, r8
mov r8, 0xffffffffffffffff
movabs r9, 0x217b8e5976e76537
xor r8, r9
or rdx, rax
movabs rax, 0x2bd71fec7b1acaa7
movabs r9, 0xaac91b50dfdaf90
xor rax, r9
or rax, r8
xor rdx, 0xffffffffffffffff
and rdx, rax
xor eax, eax
cmp rdx, 0
mov qword [rbp - 0x18], rcx
mov cl, al
mov byte [rbp - 0x10], cl
mov byte [rbp - 0xf], al
je 0x1400b8fce
jmp 0x1400b90cf
mov rdx, qword [rbp + 0xb8]
mov ecx, dword [rbp + 8]
mov rax, qword [0x1401ece28]
mov qword [rdx], rax
mov rax, qword [0x1401ece30]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.1400a17b0
mov r10, qword [rbp + 0xc0]
mov r8, qword [rbp + 0x60]
mov rdx, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x48]
mov rax, qword [rbp + 0x20]
add rsp, 0x20
xor r9d, r9d
cmp byte [r10], 0
mov byte [rbp + 0xe7], r9b
mov qword [rbp + 0xe8], r8
mov qword [rbp + 0xf0], rdx
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x100], rax
jne 0x1400b8af6
mov al, byte [rbp + 0x7f]
xor ecx, ecx
mov byte [rbp - 0x19], cl
test al, al
je 0x1400b88a9
jmp 0x1400b885f
mov rax, qword [rbp + 0x20]
mov rcx, qword [rbp + 0x48]
mov rdx, qword [rbp + 0x70]
mov r8, qword [rbp + 0x60]
mov r9b, byte [rbp - 0x19]
mov r10b, byte [rbp + 0x7f]
sub r10b, 1
mov byte [rbp + 0xe7], r9b
mov qword [rbp + 0xe8], r8
mov qword [rbp + 0xf0], rdx
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x100], rax
je 0x1400b89cc
jmp 0x1400b8af6
mov rax, qword [rbp + 0xa0]
mov ecx, dword [rax + 0x20]
and ecx, 0x10
sub rsp, 0x20
call fcn.1400990a0
mov r9, qword [rbp + 0xc0]
mov r8, qword [rbp + 0x60]
mov rdx, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x48]
add rsp, 0x20
mov r11b, al
mov rax, qword [rbp + 0x20]
mov r10b, byte [r9]
xor r9d, r9d
test r11b, r11b
mov r11d, 7
cmovne r11d, r9d
test r10b, r10b
mov r10d, 2
cmove r10d, r11d
mov dword [rbp - 0x20], r10d
mov byte [rbp - 0x1a], r9b
test r10d, r10d
mov byte [rbp + 0xe7], r9b
mov qword [rbp + 0xe8], r8
mov qword [rbp + 0xf0], rdx
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x100], rax
je 0x1400b8af6
jmp 0x1400b8936
mov rax, qword [rbp + 0x20]
mov rcx, qword [rbp + 0x48]
mov rdx, qword [rbp + 0x70]
mov r8, qword [rbp + 0x60]
mov r9b, byte [rbp - 0x1a]
mov r10d, dword [rbp - 0x20]
sub r10d, 2
mov byte [rbp + 0xe7], r9b
mov qword [rbp + 0xe8], r8
mov qword [rbp + 0xf0], rdx
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x100], rax
je 0x1400b8af6
jmp 0x1400b8980
mov eax, dword [rbp - 0x20]
sub eax, 7
jne 0x1400b90da
jmp 0x1400b8991
mov rax, qword [rbp + 0x20]
mov rcx, qword [rbp + 0x48]
mov rdx, qword [rbp + 0x70]
mov r8, qword [rbp + 0x60]
mov r9b, 1
mov byte [rbp + 0xe7], r9b
mov qword [rbp + 0xe8], r8
mov qword [rbp + 0xf0], rdx
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x100], rax
jmp 0x1400b8af6
mov rax, qword [rbp + 0xa0]
mov ecx, dword [rax + 0x20]
and ecx, 0x10
sub rsp, 0x20
call fcn.1400990a0
mov r9, qword [rbp + 0xc0]
mov r8, qword [rbp + 0x60]
mov rdx, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x48]
add rsp, 0x20
mov r11b, al
mov rax, qword [rbp + 0x20]
mov r9b, byte [r9]
mov r10b, r11b
xor r10b, 1
test r9b, r9b
sete r9b
movzx esi, r10b
mov r10d, esi
lea esi, [r10 + r10*8]
mov r10d, 2
cmove r10d, esi
mov dword [rbp - 0x24], r10d
and r9b, r11b
test r10d, r10d
mov byte [rbp + 0xe7], r9b
mov qword [rbp + 0xe8], r8
mov qword [rbp + 0xf0], rdx
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x100], rax
je 0x1400b8af6
jmp 0x1400b8a5e
mov eax, dword [rbp - 0x24]
sub eax, 2
je 0x1400b8abb
jmp 0x1400b8a6f
mov eax, dword [rbp - 0x24]
sub eax, 9
jne 0x1400b90da
jmp 0x1400b8a80
mov rax, qword [rbp + 0x20]
mov rcx, qword [rbp + 0x48]
mov rdx, qword [rbp + 0x70]
mov r8, qword [rbp + 0x60]
xor r9d, r9d
mov byte [rbp + 0xe7], r9b
mov qword [rbp + 0xe8], r8
mov qword [rbp + 0xf0], rdx
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x100], rax
jmp 0x1400b8af6
mov rax, qword [rbp + 0x20]
mov rcx, qword [rbp + 0x48]
mov rdx, qword [rbp + 0x70]
mov r8, qword [rbp + 0x60]
xor r9d, r9d
mov byte [rbp + 0xe7], r9b
mov qword [rbp + 0xe8], r8
mov qword [rbp + 0xf0], rdx
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x100], rax
jmp 0x1400b8af6
mov rax, qword [rbp + 0x80]
mov cl, byte [rbp + 0xe7]
mov rdx, qword [rbp + 0xe8]
mov r8, qword [rbp + 0xf0]
mov r9, qword [rbp + 0xf8]
mov r10, qword [rbp + 0x100]
mov qword [rbp - 0x58], r10
mov qword [rbp - 0x50], r9
mov qword [rbp - 0x48], r8
mov qword [rbp - 0x40], rdx
mov byte [rbp - 0x31], cl
mov rax, qword [rax + 8]
mov qword [rbp - 0x30], rax
cmp rax, 0
je 0x1400b8c2c
mov eax, dword [0x1401dd0a0]
xor eax, dword [0x1401dd0a4]
mov ecx, 0xa599ba2b
xor ecx, 0x132d58df
xor eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x10642214
mov edx, 0xffffffff
xor edx, 0x10642214
and eax, edx
or ecx, eax
mov edx, 0xffffffff
xor edx, 0x9cbe317c
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0xac9f0166
xor ecx, 0xb70ad071
cmp eax, ecx
jae 0x1400b9122
mov rdx, qword [rbp - 0x30]
mov eax, dword [0x1401dd0a8]
xor eax, 0x3ab4bad8
imul eax, dword [0x1401dd0ac]
imul eax, eax, 0xbb5e5dc3
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x47f8cbf5
mov r8d, 0xfda50e82
xor r8d, 0xba5dc577
mov r9d, 0x6370d3c
xor r9d, 0xf9c8f2c3
xor r8d, r9d
and eax, r8d
sub eax, ecx
xor eax, 0x23e328f6
movabs rcx, 0x4000000000000000
and rcx, qword [rdx]
cmp rcx, 0
sete cl
mov byte [rbp - 0x59], cl
cmp eax, 0x7cad0c9
jb 0x1400b9122
mov al, byte [rbp - 0x59]
test al, 1
jne 0x1400b8c1b
jmp 0x1400b8c2c
mov rcx, qword [rbp - 0x30]
sub rsp, 0x20
call fcn.14000de03
add rsp, 0x20
mov rax, qword [rbp - 0x58]
cmp rax, 0
je 0x1400b8cfb
mov rax, qword [rbp - 0x58]
mov rcx, qword [rax]
movabs rdx, 0x658b1d5b24073707
movabs rax, 0x9a74e2a4dbf8c8f8
xor rdx, rax
mov rax, rcx
xor rax, rdx
movabs rdx, 0x45895c17db6a5c2f
movabs r8, 0xba76a3e82495a3d0
xor rdx, r8
xor rcx, rdx
and rax, rcx
movabs rcx, 0xdb5e3398ca3127df
movabs rdx, 0x9b5e3398ca3127df
xor rcx, rdx
movabs rdx, 0x6b323908ce1c3736
movabs r8, 0x94cdc6f731e3c8c9
xor rdx, r8
xor rcx, rdx
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
and rcx, rdx
or rax, rcx
xor rax, 0xffffffffffffffff
movabs rcx, 0xf2e55de55b3e0810
movabs rdx, 0xf2e55de55b3e0810
xor rcx, rdx
cmp rax, rcx
jne 0x1400b8cfb
mov rcx, qword [rbp - 0x58]
sub rsp, 0x20
call fcn.14000de03
add rsp, 0x20
mov ecx, dword [0x1401dd0b0]
mov edx, dword [0x1401dd0b4]
xor edx, 0x43734981
mov eax, ecx
and eax, edx
xor ecx, edx
or eax, ecx
mov ecx, 0x54eb8cd3
xor edx, edx
div ecx
and eax, 0x2cc63340
mov ecx, eax
add ecx, 1
mov edx, 0xb77b9bec
xor edx, 0x48846413
xor eax, edx
or eax, 0xef5d8258
add eax, ecx
cmp eax, 0x4aee85b4
ja 0x1400b912b
mov rdx, qword [rbp - 0x50]
mov eax, dword [str.d:m]
mov ecx, 0xd92587eb
xor ecx, 0x41f3b61c
xor eax, ecx
mov ecx, dword [0x1401dd0bc]
xor ecx, 0xf080716b
mov r8d, 0xf786b409
xor r8d, 0x8794bf6
xor ecx, r8d
add eax, ecx
mov ecx, 0xa1a0b2ff
xor ecx, 0xa1a0b2fe
add eax, ecx
mov ecx, 0x3b2bdfb2
xor ecx, 0x37fd7623
xor eax, ecx
mov ecx, eax
and ecx, 0x7923603e
shl ecx, 1
mov r8d, 0x10a59265
xor r8d, 0x6986f25b
add eax, r8d
sub eax, ecx
xor eax, 0x7ce938f7
mov ecx, 0x5d944fcc
xor ecx, 0x9eab77e7
cmp rdx, 0
sete dl
mov byte [rbp - 0x5a], dl
cmp eax, ecx
je 0x1400b8d47
mov al, byte [rbp - 0x5a]
test al, 1
jne 0x1400b8f07
jmp 0x1400b8de5
mov rax, qword [rbp - 0x50]
mov rax, qword [rax]
movabs rdx, 0x59bda5f8fcebd184
movabs rcx, 0x59bda5f8fcebd185
xor rdx, rcx
mov rcx, rax
add rcx, rdx
xor rax, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
or rax, rdx
add rax, rcx
cmp rax, 0
jne 0x1400b8f07
mov eax, dword [0x1401dd0c0]
and eax, dword [0x1401dd0c4]
mov ecx, eax
and ecx, 0x371b5d70
mov edx, 0x5243869f
xor edx, 0x5243869d
imul ecx, edx
xor eax, 0x371b5d70
add eax, ecx
mov ecx, 0x95e6becb
xor ecx, 0x735ee640
and eax, ecx
mov ecx, 0xf180716
xor ecx, 0x8a89cb51
mov edx, 0xaa0394ca
xor edx, 0x55fc6b35
xor ecx, edx
add eax, ecx
mov ecx, 0xa4aab5f
xor ecx, 0xa4aab5e
add eax, ecx
mov ecx, 0x3ace73d4
xor ecx, 0x3ccd2
cmp eax, ecx
jb 0x1400b9134
mov rcx, qword [rbp - 0x50]
mov eax, dword [0x1401dd0c8]
mov r8d, dword [0x1401dd0cc]
xor r8d, 0xadfd5e30
mov edx, eax
xor edx, r8d
xor r8d, 0xffffffff
and eax, r8d
shl eax, 1
sub eax, edx
mov edx, 0x434f0fc6
xor edx, 0xc84feeee
add eax, edx
add eax, 0xc57d075e
mov r8d, 0xd9f7d1e2
xor r8d, 0xe9a69ba8
xor edx, edx
div r8d
mov dword [rbp - 0x60], eax
sub rsp, 0x20
call fcn.14000de03
mov eax, dword [rbp - 0x60]
add rsp, 0x20
cmp eax, 0x299fb95a
je 0x1400b8e97
jmp 0x1400b8f07
mov rax, qword [rbp - 0x48]
cmp rax, 0
je 0x1400b8f41
mov rcx, qword [rbp - 0x48]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x1400b8f41
mov rcx, qword [rbp - 0x48]
sub rsp, 0x20
call fcn.14000de03
add rsp, 0x20
mov al, byte [rbp - 0x31]
mov rcx, qword [rbp - 0x40]
cmp rcx, 0
mov byte [rbp - 0xf], al
je 0x1400b90cf
mov al, byte [rbp - 0x31]
mov rcx, qword [rbp - 0x40]
mov rdx, qword [rcx]
or rdx, rdx
movabs r8, 0xbaf2a3d9b210a5a8
movabs r9, 0x450d5c264def5a57
xor r8, r9
xor rdx, r8
movabs r8, 0xad1e195441cd157e
movabs r9, 0xed1e195441cd157e
xor r8, r9
movabs r9, 0x5f579ad96787901e
movabs r10, 0x1f579ad96787901e
xor r9, r10
or r8, r9
xor r8, 0xffffffffffffffff
or rdx, r8
xor rdx, 0xffffffffffffffff
cmp rdx, 0
mov qword [rbp - 0x18], rcx
mov cl, al
mov byte [rbp - 0x10], cl
mov byte [rbp - 0xf], al
jne 0x1400b90cf
mov rax, qword [rbp - 0x18]
mov cl, byte [rbp - 0x10]
mov byte [rbp - 0x69], cl
mov qword [rbp - 0x68], rax
mov eax, dword [0x1401dd0d0]
mov r8d, dword [0x1401dd0d4]
mov edx, 0x4a346519
xor edx, 0xb5cb9ae6
mov ecx, eax
xor ecx, edx
mov edx, r8d
and edx, ecx
mov r9d, r8d
xor r9d, 0xffffffff
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
add eax, 0x8e727e65
mov ecx, 0x6e97a144
xor ecx, 0x82c161ee
sub eax, ecx
sub eax, 0x8e727e65
xor eax, 0xccc666cd
mov ecx, 0x92ef65fd
xor ecx, 0x4e533cb1
mov edx, 0xbeada1bc
xor edx, 0x41525e43
xor ecx, edx
add eax, ecx
mov ecx, 0xec7cf36
xor ecx, 0xec7cf37
add eax, ecx
cmp eax, 0x9146f5ac
jae 0x1400b913d
mov rcx, qword [rbp - 0x68]
mov eax, dword [0x1401dd0d8]
xor eax, 0xedb90a9b
mov edx, dword [0x1401dd0dc]
xor edx, 0xd02c21db
sub eax, edx
sub eax, 0xe07255b3
mov r8d, 0x8cc29222
xor r8d, 0x5d45d22c
xor edx, edx
div r8d
mov r8d, 0x85b857e0
xor edx, edx
div r8d
mov dword [rbp - 0x70], eax
sub rsp, 0x20
call fcn.14000de03
mov eax, dword [rbp - 0x70]
add rsp, 0x20
cmp eax, 0xd2866ec1
je 0x1400b9067
mov al, byte [rbp - 0x69]
mov byte [rbp - 0xf], al
jmp 0x1400b90cf
mov al, byte [rbp - 0xf]
cmp al, 0
setne al
mov byte [rbp - 0x71], al
mov al, byte [rbp - 0x71]
and al, 1
movzx eax, al
lea rsp, [rbp + 0x1d8]
pop rsi
pop rbp
ret
in eax, 0xe2
pop rsp
adc ch, cl
sub ebx, 0x1d27ffff
push rdi
jmp 0x1400b8003
invalid
sbb eax, 0x5e95736
out dx, eax
invalid
stc
invalid
sbb ch, byte [rbx + 0x41e9979d]
invalid
rcl byte [rdi]
js 0x1400b90f6
jmp 0x1400b8559
push rsp
jmp 0x1400b915a
push rdx
mov word [rax + 0x76], fs
jmp 0x1400b8b9b
hlt
pop rsi
movabs dword [0xeafffffd5ae9938f], eax
out dx, al
stosb byte [rdi], al
mov cl, 0xe9
and edi, edi
invalid
invalid
and al, 0x40