Function at 0x1401af6e0
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x370
lea rbp, [rsp + 0x80]
mov qword [rbp + 0xf0], rcx
mov eax, 0x10
mov qword [rbp + 0x138], rax
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x138]
mov rcx, rsp
mov qword [rbp + 0xf8], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x138]
mov rcx, rsp
mov qword [rbp + 0x100], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x138]
mov rcx, rsp
mov qword [rbp + 0x108], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x138]
mov rcx, rsp
mov qword [rbp + 0x110], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x138]
mov rcx, rsp
mov qword [rbp + 0x118], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x138]
mov rcx, rsp
mov qword [rbp + 0x120], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x138]
mov rcx, rsp
mov qword [rbp + 0x128], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x138]
mov rcx, rsp
mov qword [rbp + 0x130], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x138]
mov rcx, rsp
mov qword [rbp + 0x140], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x148], rax
sub rsp, 0x20
call fcn.1401bb5fb
add rsp, 0x20
mov qword [rbp + 0x158], rax
add rax, 0x60
mov qword [rbp + 0x150], rax
mov word [rbp + 0x2ee], 0x3a1
lea rcx, [rbp + 0x2ee]
sub rsp, 0x20
call fcn.140067990
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x158]
mov qword [rbp + 0x160], rcx
cmp byte [rax + 0x60], 0
jne 0x1401b0e02
mov rax, qword [rbp + 0x160]
mov rcx, qword [str._b_t__]
mov rdx, qword [rcx]
mov qword [rbp + 0x2c0], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x2c8], rcx
mov rcx, qword [rax]
mov qword [rbp + 0x2b0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x2b8], rax
lea rcx, [rbp + 0x2d0]
lea rdx, [rbp + 0x2c0]
lea r8, [rbp + 0x2b0]
sub rsp, 0x20
call fcn.1401af609
mov rax, qword [rbp + 0x150]
add rsp, 0x20
mov rcx, qword [rbp + 0x2d0]
mov qword [rbp + 0xe0], rcx
mov rcx, qword [rbp + 0x2d8]
mov qword [rbp + 0xe8], rcx
cmp byte [rax], 0
jne 0x1401b0e02
mov rcx, qword [rbp + 0xf8]
mov word [rcx], 0x32a
sub rsp, 0x20
call fcn.140067990
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x150]
mov qword [rbp + 0xd8], rcx
mov al, byte [rax]
mov cl, 0x3f
xor cl, 0x3f
cmp al, cl
jne 0x1401b0d6d
mov eax, dword [0x1401e5c90]
mov ecx, dword [0x1401e5c94]
xor ecx, 0x7bd5a2e7
xor edx, edx
div ecx
add eax, 0xae132eee
mov edx, 0x55ab8282
xor edx, 0x9cdbfd08
mov ecx, eax
and ecx, edx
mov edx, 0x91f2831e
xor edx, 0x91f2831c
imul ecx, edx
mov edx, 0x567b6ade
xor edx, 0x9f0b1554
xor eax, edx
add eax, ecx
or eax, 0xd32a7a1b
cmp eax, 0xcec194b2
je 0x1401b0f04
mov rcx, qword [rbp + 0x110]
mov r8, qword [rbp + 0x118]
mov r9, qword [rbp + 0xe0]
mov eax, dword [0x1401e5c98]
xor eax, 0x75dd26f4
imul eax, dword [0x1401e5c9c]
mov r10d, 0xeb5d93fe
xor r10d, 0x2a29507c
xor edx, edx
div r10d
mov rdx, qword [rbp + 0xe8]
mov r10d, eax
mov rax, qword [rbp + 0xd8]
or r10d, 0x703cba01
mov r11d, 0x34f221fc
xor r11d, 0xab8e18aa
xor r10d, r11d
mov dword [rbp + 0xbc], r10d
mov qword [rbp + 0x2a0], r9
mov qword [rbp + 0x2a8], rdx
mov rdx, qword [rax]
mov qword [r8], rdx
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
lea rdx, [rbp + 0x2a0]
sub rsp, 0x20
call fcn.1401af609
mov rdx, qword [rbp + 0x110]
mov rcx, qword [rbp + 0x150]
mov eax, dword [rbp + 0xbc]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rbp + 0xc0], r8
mov rdx, qword [rdx + 8]
mov qword [rbp + 0xc8], rdx
mov cl, byte [rcx]
mov dl, 0x7d
xor dl, 0x7d
cmp cl, dl
sete cl
mov byte [rbp + 0xd7], cl
cmp eax, 0xe5ca2361
jb 0x1401af963
mov al, byte [rbp + 0xd7]
test al, 1
jne 0x1401afa54
jmp 0x1401b0d6d
mov ecx, 2
mov r8d, 8
sub rsp, 0x20
mov rdx, r8
call fcn.140010380
add rsp, 0x20
mov qword [rbp + 0xa0], rax
mov ecx, 0x18
mov edx, 8
sub rsp, 0x20
call fcn.14001de30
mov rcx, qword [rbp + 0x100]
add rsp, 0x20
mov qword [rbp + 0xa8], rax
mov ax, 0x7c33
xor ax, 0x79d8
mov word [rcx], ax
sub rsp, 0x20
call fcn.140067990
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x150]
mov qword [rbp + 0xb0], rcx
cmp byte [rax], 0
jne 0x1401b0bce
mov rdx, qword [rbp + 0x120]
mov rax, qword [rbp + 0xb0]
mov rcx, qword [rax]
mov qword [rdx], rcx
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x290]
sub rsp, 0x20
call fcn.14001e153
mov rax, qword [rbp + 0xa8]
add rsp, 0x20
mov rdx, qword [rbp + 0x290]
mov rcx, qword [rbp + 0x298]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov ecx, 0x29c
sub rsp, 0x20
call fcn.140067fe0
mov rcx, qword [rbp + 0xa8]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 0x150]
mov dword [rcx + 0x10], edx
cmp byte [rax], 0
jne 0x1401b0bce
mov ecx, 0xb3f
sub rsp, 0x20
call fcn.140067fe0
mov rcx, qword [rbp + 0xa8]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 0x150]
mov dword [rcx + 0x14], edx
cmp byte [rax], 0
jne 0x1401b0bce
mov rax, qword [rbp + 0xa0]
mov rcx, qword [rbp + 0xa8]
mov qword [rax + 8], rcx
mov ecx, 0x18
mov edx, 8
sub rsp, 0x20
call fcn.14001de30
mov rcx, qword [rbp + 0x108]
add rsp, 0x20
mov qword [rbp + 0x90], rax
mov word [rcx], 0x8a1
sub rsp, 0x20
call fcn.140067990
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x150]
mov qword [rbp + 0x98], rcx
cmp byte [rax], 0
jne 0x1401b0bce
mov eax, dword [0x1401e5ca0]
or eax, dword [0x1401e5ca4]
mov ecx, 0xffffffff
xor ecx, 0xa7b66584
add eax, ecx
add eax, 1
mov ecx, 0xffffffff
xor ecx, 0xea42c790
add eax, ecx
add eax, 1
or eax, 0x7836cee9
cmp eax, 0x31c473bb
jb 0x1401b0f0d
mov eax, dword [0x1401e5ca8]
mov edx, dword [0x1401e5cac]
mov ecx, eax
add ecx, 1
mov r8d, 0x5b9d7977
xor r8d, 0xa4628688
xor eax, r8d
or eax, edx
add eax, ecx
mov ecx, 0x1e5eaed6
xor ecx, 0xe1a15129
xor eax, ecx
mov edx, 0xdd04b118
xor edx, 0x94ba8230
mov ecx, 0x23c80751
xor ecx, 0xdc37f8ae
xor edx, ecx
mov ecx, 0xffffffff
xor ecx, 0xd6b6f549
or eax, edx
or ecx, 0xd6b6f549
mov edx, 0x7d00db32
xor edx, 0x82ff24cd
xor eax, edx
and eax, ecx
imul eax, eax, 0x89bd6c05
mov ecx, 0xe4ebb2cf
xor edx, edx
div ecx
mov ecx, eax
mov rax, qword [rbp + 0x98]
mov dword [rbp + 0x88], ecx
mov ecx, 0xe0ba0cf7
xor ecx, 0x7739307
mov dword [rbp + 0x84], ecx
mov rcx, qword [rax]
mov qword [rbp + 0x270], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x278], rax
lea rcx, [rbp + 0x280]
lea rdx, [rbp + 0x270]
sub rsp, 0x20
call fcn.14001e153
mov rax, qword [rbp + 0x90]
add rsp, 0x20
mov rdx, qword [rbp + 0x280]
mov rcx, qword [rbp + 0x288]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov ecx, 0x659
sub rsp, 0x20
call fcn.140067fe0
mov r8, qword [rbp + 0x90]
mov rdx, qword [rbp + 0x150]
mov ecx, dword [rbp + 0x84]
add rsp, 0x20
mov r9d, eax
mov eax, dword [rbp + 0x88]
mov dword [r8 + 0x10], r9d
cmp byte [rdx], 0
sete dl
mov byte [rbp + 0x8f], dl
cmp eax, ecx
ja 0x1401b0f0d
mov al, byte [rbp + 0x8f]
test al, 1
jne 0x1401afd55
jmp 0x1401b0bce
mov cx, 0xb40d
xor cx, 0xb5de
sub rsp, 0x20
call fcn.140067fe0
mov rcx, qword [rbp + 0x90]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 0x150]
mov dword [rcx + 0x14], edx
mov al, byte [rax]
mov cl, 0x21
xor cl, 0x21
cmp al, cl
jne 0x1401b0bce
mov rax, qword [rbp + 0xa0]
mov rcx, qword [rbp + 0xc8]
mov rdx, qword [rbp + 0xc0]
mov r8, qword [rbp + 0x90]
mov qword [rax + 0x10], r8
mov qword [rbp + 0x260], rdx
mov qword [rbp + 0x268], rcx
movabs rcx, 0xf623d3ae38ab82e4
movabs rdx, 0xf623d3ae38ab82e6
xor rcx, rdx
mov qword [rbp + 0x250], rcx
mov qword [rbp + 0x258], rax
lea rcx, [rbp + 0x260]
lea rdx, [rbp + 0x250]
mov r8d, 1
sub rsp, 0x20
call fcn.140147f23
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x150]
mov qword [rbp + 0x78], rcx
cmp byte [rax], 0
jne 0x1401b0bce
mov word [rbp + 0x2ec], 0x355
lea rcx, [rbp + 0x2ec]
sub rsp, 0x20
call fcn.140067990
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x150]
mov qword [rbp + 0x70], rcx
mov al, byte [rax]
mov cl, 0xb6
xor cl, 0xb6
cmp al, cl
jne 0x1401b0bce
mov rax, qword [rbp + 0x70]
mov rcx, qword [rax]
mov qword [rbp + 0x230], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x238], rax
lea rcx, [rbp + 0x240]
lea rdx, [rbp + 0x230]
sub rsp, 0x20
call fcn.14001e153
mov r8, qword [rbp + 0xf0]
mov rcx, qword [rbp + 0x128]
add rsp, 0x20
mov rdx, qword [rbp + 0x240]
mov rax, qword [rbp + 0x248]
mov r8, qword [r8]
add r8, 0x18
mov qword [rbp + 0x60], r8
mov qword [rbp + 0x220], rdx
mov qword [rbp + 0x228], rax
xor edx, edx
mov r8d, 0x10
sub rsp, 0x20
call sub.msvcrt.dll_memset
mov rcx, qword [rbp + 0x60]
mov rdx, qword [rbp + 0x78]
mov rax, qword [rbp + 0x128]
add rsp, 0x20
lea r8, [rbp + 0x220]
xor r9d, r9d
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.140147b40
add rsp, 0x30
mov ecx, eax
mov rax, qword [rbp + 0x150]
mov dword [rbp + 0x6c], ecx
cmp byte [rax], 0
jne 0x1401b0bce
mov eax, dword [rbp + 0x6c]
cdqe
mov qword [rbp + 0x50], rax
mov word [rbp + 0x2ea], 0xb3c
lea rcx, [rbp + 0x2ea]
sub rsp, 0x20
call fcn.140067990
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x150]
mov qword [rbp + 0x58], rcx
cmp byte [rax], 0
jne 0x1401b0bce
mov rcx, qword [rbp + 0x130]
mov rax, qword [rbp + 0x58]
mov rdx, qword [rbp + 0xe8]
mov r8, qword [rbp + 0xe0]
mov qword [rbp + 0x210], r8
mov qword [rbp + 0x218], rdx
mov rdx, qword [rax]
mov qword [rbp + 0x200], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x208], rax
lea rdx, [rbp + 0x210]
lea r8, [rbp + 0x200]
sub rsp, 0x20
call fcn.1401af609
mov rcx, qword [rbp + 0x130]
mov rax, qword [rbp + 0x150]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp + 0x40], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x48], rcx
cmp byte [rax], 0
jne 0x1401b0bce
movabs rcx, 0x33efbf344bc86a52
movabs rax, 0x33efbf344bc86a53
xor rcx, rax
movabs rdx, 0xec2257ddfb0a30c
movabs rax, 0xec2257ddfb0a304
xor rdx, rax
movabs r8, 0xf85d3da4c6203c6c
movabs rax, 0xf85d3da4c6203c64
xor r8, rax
sub rsp, 0x20
call fcn.140010380
add rsp, 0x20
mov qword [rbp + 0x28], rax
mov ecx, 0x18
mov edx, 8
sub rsp, 0x20
call fcn.14001de30
add rsp, 0x20
mov qword [rbp + 0x30], rax
mov word [rbp + 0x2e8], 0x69d
lea rcx, [rbp + 0x2e8]
sub rsp, 0x20
call fcn.140067990
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x150]
mov qword [rbp + 0x38], rcx
cmp byte [rax], 0
jne 0x1401b0b7e
mov rax, qword [rbp + 0x38]
mov rcx, qword [rax]
mov qword [rbp + 0x1e0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1e8], rax
lea rcx, [rbp + 0x1f0]
lea rdx, [rbp + 0x1e0]
sub rsp, 0x20
call fcn.14001e153
mov rax, qword [rbp + 0x30]
add rsp, 0x20
mov rdx, qword [rbp + 0x1f0]
mov rcx, qword [rbp + 0x1f8]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov ecx, 0x926
sub rsp, 0x20
call fcn.140067fe0
mov rcx, qword [rbp + 0x30]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 0x150]
mov dword [rcx + 0x10], edx
cmp byte [rax], 0
jne 0x1401b0b7e
mov ecx, 0x628
sub rsp, 0x20
call fcn.140067fe0
mov rcx, qword [rbp + 0x30]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 0x150]
mov dword [rcx + 0x14], edx
mov al, byte [rax]
mov cl, 0x9c
xor cl, 0x9c
cmp al, cl
jne 0x1401b0b7e
mov rcx, qword [rbp + 0x140]
mov rax, qword [rbp + 0x28]
mov rdx, qword [rbp + 0x48]
mov r8, qword [rbp + 0x40]
mov r9, qword [rbp + 0x30]
mov qword [rax + 8], r9
mov qword [rcx], r8
mov qword [rcx + 8], rdx
movabs rdx, 0x3ba45e075b960ea
movabs r8, 0x3ba45e075b960eb
xor rdx, r8
mov qword [rbp + 0x1d0], rdx
mov qword [rbp + 0x1d8], rax
mov r8d, 0xfb8fd1f6
xor r8d, 0xfb8fd1f7
lea rdx, [rbp + 0x1d0]
sub rsp, 0x20
call fcn.140147f23
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x150]
mov qword [rbp + 0x20], rcx
cmp byte [rax], 0
jne 0x1401b0b7e
mov eax, dword [0x1401e5cb0]
xor eax, 0x8600dc13
mov ecx, dword [0x1401e5cb4]
sub eax, 0x5859e459
add eax, ecx
mov ecx, 0x8bcdf85d
xor ecx, 0xd3941c04
add eax, ecx
add eax, 0xe14b6488
mov ecx, 0xec0ec6fb
xor ecx, 0x49b5091c
add eax, ecx
add eax, 0x64649d48
sub eax, 0xa5bbcfe7
and eax, 0x9df8bd2b
cmp eax, 0x874444ac
ja 0x1401b0f16
mov ecx, dword [0x1401e5cb8]
mov eax, dword [0x1401e5cbc]
xor eax, 0x5a03caca
xor ecx, eax
mov eax, ecx
or eax, 0x84c4a304
xor eax, 0xffffffff
mov edx, 0xa460553e
xor edx, 0x20a4f63a
or ecx, edx
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
add eax, 0x21593722
mov ecx, 0x2f6c8614
xor ecx, 0x9e26dc02
imul eax, ecx
mov dword [rbp + 0xc], eax
mov word [rbp + 0x2e6], 0x329
lea rcx, [rbp + 0x2e6]
sub rsp, 0x20
call fcn.140067990
mov rcx, qword [rbp + 0x150]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0xc]
mov qword [rbp + 0x10], rdx
mov cl, byte [rcx]
mov dl, 0x12
xor dl, 0x12
cmp cl, dl
sete cl
mov byte [rbp + 0x1f], cl
cmp eax, 0x88853d6d
jae 0x1401b01e8
mov al, byte [rbp + 0x1f]
test al, 1
jne 0x1401b0288
jmp 0x1401b0b7e
mov ecx, dword [0x1401e5cc0]
mov r8d, dword [0x1401e5cc4]
mov eax, ecx
xor eax, 0xffffffff
mov edx, r8d
and edx, eax
mov r9d, r8d
xor r9d, 0xffffffff
mov eax, ecx
and eax, r9d
imul eax, edx
mov edx, ecx
and edx, r8d
or ecx, r8d
imul ecx, edx
add ecx, eax
mov eax, ecx
and eax, 0x80bd7402
mov edx, 0xf6a16b18
xor edx, 0x761c1f1a
xor ecx, edx
or eax, ecx
mov ecx, 0x3f74b167
xor edx, edx
div ecx
add eax, 0xa3636b93
mov ecx, 0x97ce652b
xor ecx, 0xabc0c6c1
cmp eax, ecx
je 0x1401b0f1f
mov eax, dword [0x1401e5cc8]
mov edx, dword [0x1401e5ccc]
xor edx, 0x7e6b7324
xor ecx, ecx
sub ecx, eax
mov eax, 0x9bffed56
xor eax, 0x9bffed56
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, 0x35beb7be
xor edx, edx
div ecx
mov ecx, eax
mov rax, qword [rbp + 0x10]
and ecx, 0xdc0c635f
mov edx, 0xc3d3d573
xor edx, 0x651b8b8e
xor ecx, edx
mov dword [rbp], ecx
mov rcx, qword [rax]
mov qword [rbp + 0x1b0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1b8], rax
lea rcx, [rbp + 0x1c0]
lea rdx, [rbp + 0x1b0]
sub rsp, 0x20
call fcn.14001e153
mov rdx, qword [rbp + 0xf0]
add rsp, 0x20
mov rcx, qword [rbp + 0x1c0]
mov rax, qword [rbp + 0x1c8]
mov rdx, qword [rdx]
add rdx, 0x18
mov qword [rbp - 8], rdx
mov qword [rbp + 0x1a0], rcx
mov qword [rbp + 0x1a8], rax
lea rcx, [rbp + 0x190]
xor edx, edx
mov r8d, 0x10
sub rsp, 0x20
call sub.msvcrt.dll_memset
mov rcx, qword [rbp - 8]
mov rdx, qword [rbp + 0x20]
add rsp, 0x20
lea r8, [rbp + 0x1a0]
xor eax, eax
mov r9d, eax
lea rax, [rbp + 0x190]
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.140147b40
mov rcx, qword [rbp + 0x150]
add rsp, 0x30
mov edx, eax
mov eax, dword [rbp]
mov dword [rbp + 4], edx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0xb], cl
cmp eax, 0xa4f07046
jbe 0x1401b02f2
mov al, byte [rbp + 0xb]
test al, 1
jne 0x1401b0419
jmp 0x1401b0b7e
mov rcx, qword [rbp + 0x50]
mov eax, dword [rbp + 4]
movsxd r8, eax
mov rdx, r8
add rdx, rcx
mov qword [rbp - 0x10], rdx
mov rax, rdx
xor rax, rcx
mov rcx, rdx
xor rcx, r8
xor rcx, 0xffffffffffffffff
mov r9, r8
and r9, rcx
movabs rcx, 0x576d7e5dd90b1114
movabs r10, 0x576d7e5dd90b1116
xor rcx, r10
imul rcx, r9
sub rcx, r8
sub rdx, rcx
mov rcx, rax
xor rcx, rdx
movabs r8, 0xfdad04813fae5cd5
movabs r9, 0x252fb7ec051a32a
xor r8, r9
xor rcx, r8
or rax, rdx
and rax, rcx
cmp rax, 0
jge 0x1401b04a6
sub rsp, 0x20
call fcn.1400067fe
add rsp, 0x20
jmp 0x1401b0b7e
mov rax, qword [rbp - 0x10]
movabs rcx, 0xe679badf3c6022cb
movabs rdx, 0x19864520bc6022cb
xor rcx, rdx
add rax, rcx
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x1401b05b8
mov eax, dword [0x1401e5cd0]
mov r8d, dword [0x1401e5cd4]
mov ecx, eax
xor ecx, 0xffffffff
mov edx, r8d
and edx, ecx
mov r9d, r8d
xor r9d, 0xffffffff
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xece35791
xor ecx, 0xb56a8170
xor edx, edx
div ecx
sub eax, 0x6c6d7e45
mov ecx, 0x17fbf3d5
xor ecx, 0x807c33dd
xor edx, edx
div ecx
cmp eax, 0x85888d1f
je 0x1401b0f28
mov eax, dword [0x1401e5cd8]
mov r8d, dword [0x1401e5cdc]
mov edx, r8d
xor edx, 0xffffffff
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
mov ecx, eax
add ecx, 1
mov edx, 0xcd8342e
xor edx, 0xf327cbd1
xor eax, edx
or eax, 0x236f808b
add eax, ecx
xor eax, 0x80cc0f56
mov ecx, eax
and ecx, 0x2bd24de9
shl ecx, 1
add eax, 0x2bd24de9
sub eax, ecx
mov dword [rbp - 0x14], eax
mov eax, 0xf6d29619
xor eax, 0xdc327248
mov dword [rbp - 0x18], eax
sub rsp, 0x20
call fcn.1400067fe
mov ecx, dword [rbp - 0x18]
mov eax, dword [rbp - 0x14]
add rsp, 0x20
cmp eax, ecx
jb 0x1401b0f28
jmp 0x1401b0b7e
sub rsp, 0x20
mov cx, 0xb3a
call fcn.1400676f0
mov rdx, qword [rbp - 0x10]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x150]
mov al, byte [rax]
test al, al
sete al
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x1401b05f3
jmp 0x1401b0ae5
mov eax, dword [0x1401e5ce0]
mov edx, dword [0x1401e5ce4]
xor edx, 0xaea3effb
mov r8d, eax
xor r8d, edx
mov ecx, 0xbdd65c7f
xor ecx, 0x4229a380
xor r8d, ecx
mov ecx, edx
and ecx, r8d
shl ecx, 1
sub ecx, edx
sub eax, ecx
mov ecx, 0xf2276ad5
xor edx, edx
div ecx
mov ecx, 0xee9ef46a
xor ecx, 0x4755d49b
xor eax, ecx
sub eax, 0x26464503
add eax, 0x890930f8
mov ecx, 0x8460002f
xor ecx, 0xa226452c
add eax, ecx
cmp eax, 0xffa0e736
je 0x1401b0f31
mov eax, dword [0x1401e5ce8]
xor eax, 0x8d3327ca
and eax, dword [0x1401e5cec]
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0x3349fc74
add eax, ecx
mov ecx, 0xe34af505
xor ecx, 0xb26c02b5
imul eax, ecx
sub eax, 0x8223740a
mov dword [rbp - 0x20], eax
mov ecx, 0x30
mov edx, 8
sub rsp, 0x20
call fcn.14001de30
add rsp, 0x20
mov qword [rbp - 0x28], rax
mov qword [rax], 0
mov ecx, 0xd592de83
xor ecx, 0xd592de82
mov dword [rax + 8], ecx
mov ecx, 0x855
sub rsp, 0x20
call fcn.140067fe0
mov rdx, qword [rbp - 0x28]
mov rcx, qword [rbp + 0x150]
add rsp, 0x20
mov r8d, eax
mov eax, dword [rbp - 0x20]
mov dword [rdx + 0xc], r8d
mov cl, byte [rcx]
mov dl, 6
xor dl, 6
cmp cl, dl
sete cl
mov byte [rbp - 0x19], cl
cmp eax, 0xedbb2a18
jae 0x1401b065d
mov dl, byte [rbp - 0x19]
mov cl, 1
xor eax, eax
test dl, 1
mov byte [rbp - 0x31], cl
mov qword [rbp - 0x30], rax
jne 0x1401b0720
jmp 0x1401b0aa8
mov ecx, 0x20
mov edx, 8
sub rsp, 0x20
call fcn.140013610
add rsp, 0x20
mov qword [rbp - 0x48], rax
mov ax, 0x777b
xor ax, 0x73d4
mov word [rbp + 0x18e], ax
lea rcx, [rbp + 0x18e]
sub rsp, 0x20
call fcn.140067990
mov rdx, qword [rbp + 0x150]
add rsp, 0x20
mov qword [rbp - 0x40], rax
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp - 0x31], cl
mov qword [rbp - 0x30], rax
jne 0x1401b0aa8
mov ecx, dword [0x1401e5cf0]
mov edx, dword [0x1401e5cf4]
xor edx, 0x28cbcf26
xor ecx, 0xffffffff
mov eax, 0x25d426c0
xor eax, 0xda2bd93f
xor edx, eax
mov eax, 0xffffffff
xor eax, 0x15322e61
or ecx, edx
or eax, 0x15322e61
xor ecx, 0xffffffff
and ecx, eax
mov r8d, 0xffffffff
xor r8d, 0x19ce7398
mov edx, ecx
and edx, r8d
mov eax, ecx
or eax, r8d
xor eax, 0xffffffff
imul eax, edx
mov r8d, 0x50b352e1
xor r8d, 0x497d2179
mov edx, ecx
and edx, r8d
or ecx, 0x19ce7398
imul ecx, edx
add ecx, eax
mov eax, ecx
and eax, 0xb860cf31
mov edx, 0x3c8232e2
xor edx, 0x84e2fdd3
or ecx, edx
add eax, ecx
xor eax, 0x8d94664a
mov ecx, 0x40d6e8a8
xor ecx, 0x43686c90
cmp eax, ecx
jb 0x1401b0f3a
mov eax, dword [0x1401e5cf8]
mov edx, dword [0x1401e5cfc]
mov ecx, eax
and ecx, edx
shl ecx, 1
add eax, edx
sub eax, ecx
mov ecx, 0x2d6994e6
xor ecx, 0xd8dac676
xor edx, edx
div ecx
mov rdx, qword [rbp + 0x148]
mov ecx, eax
mov rax, qword [rbp - 0x40]
sub ecx, 0x1894faf2
mov r8d, ecx
xor r8d, 0xffffffff
mov r9d, 0xd857bd98
xor r9d, 0x9672bf2d
and r8d, r9d
mov r9d, 0xffffffff
xor r9d, 0x4e2502b5
and ecx, r9d
sub ecx, r8d
mov dword [rbp - 0x50], ecx
mov rcx, qword [rax]
mov qword [rdx], rcx
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x178]
sub rsp, 0x20
call fcn.14001e153
mov rdx, qword [rbp - 0x48]
add rsp, 0x20
mov rcx, qword [rbp + 0x178]
mov rax, qword [rbp + 0x180]
mov qword [rdx + 8], rcx
mov qword [rdx + 0x10], rax
lea rcx, [rbp + 0x168]
sub rsp, 0x20
call fcn.140076fe0
mov rdx, qword [rbp - 0x28]
mov rcx, qword [rbp + 0x150]
mov eax, dword [rbp - 0x50]
add rsp, 0x20
mov r8, qword [rbp + 0x168]
mov qword [rdx + 0x10], r8
mov r8, qword [rbp + 0x170]
mov qword [rdx + 0x18], r8
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x49], cl
cmp eax, 0xc59a3b06
je 0x1401b0f3a
mov rax, qword [rbp - 0x48]
mov dl, byte [rbp - 0x49]
mov cl, 1
test dl, 1
mov byte [rbp - 0x31], cl
mov qword [rbp - 0x30], rax
jne 0x1401b0928
jmp 0x1401b0aa8
mov eax, dword [0x1401e5d00]
or eax, dword [0x1401e5d04]
sub eax, 0x58741e05
mov ecx, 0xcfc0c84e
xor ecx, 0xf5dac9d8
xor edx, edx
div ecx
mov ecx, eax
mov edx, 0x148e2e81
xor edx, 0xeb71d17e
mov eax, ecx
xor eax, edx
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x86fe6cf2
or ecx, 0x86fe6cf2
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xe935a8be
xor ecx, 0x16ca5741
xor eax, ecx
cmp eax, 0x52dfa680
jae 0x1401b0f43
mov rdx, qword [rbp - 0x28]
mov rax, qword [rbp + 0xf0]
mov r8d, dword [0x1401e5d08]
mov r9d, dword [0x1401e5d0c]
xor r9d, 0x531150b4
mov ecx, r8d
and ecx, r9d
xor ecx, 0xffffffff
xor r8d, 0xffffffff
xor r9d, 0xffffffff
or r8d, r9d
mov r9d, 0x92dcee34
xor r9d, 0x6d2311cb
xor ecx, r9d
xor r8d, 0xffffffff
or ecx, r8d
sub ecx, 0x17bc8826
mov r8d, 0x6cec81e1
xor r8d, 0x94617ebf
add ecx, r8d
add ecx, 0x17bc8826
mov r8d, 0x8265ca1e
xor r8d, 0x7d9a35e1
xor ecx, r8d
mov r9d, 0xffffffff
xor r9d, 0x1327ffc2
mov r8d, 0xdfe11874
xor r8d, 0x89d78f64
mov r10d, 0x53a8719e
xor r10d, 0xac578e61
xor r8d, r10d
or ecx, r9d
or r8d, 0x56369710
mov r9d, 0xf1476027
xor r9d, 0xeb89fd8
xor ecx, r9d
and ecx, r8d
xor ecx, 0x460ece5b
mov dword [rbp - 0x58], ecx
mov rcx, qword [0x1401f0608]
mov qword [rdx + 0x20], rcx
mov rcx, qword [0x1401f0610]
mov qword [rdx + 0x28], rcx
mov rax, qword [rax]
mov rcx, qword [rax + 0x20]
add rcx, 8
sub rsp, 0x20
call fcn.14002b470
mov rcx, qword [rbp + 0x150]
mov eax, dword [rbp - 0x58]
add rsp, 0x20
mov cl, byte [rcx]
mov byte [rbp - 0x51], cl
cmp eax, 0xfe010197
je 0x1401b0986
mov rax, qword [rbp - 0x48]
mov cl, byte [rbp - 0x51]
mov byte [rbp - 0x31], cl
mov qword [rbp - 0x30], rax
jmp 0x1401b0aa8
mov rax, qword [rbp + 0x150]
mov dl, byte [rbp - 0x31]
mov rcx, qword [rbp - 0x30]
mov byte [rbp - 0x59], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401ac86f
mov rax, qword [rbp + 0x150]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401b0ae5
mov rax, qword [rbp + 0x150]
mov cl, byte [rbp - 0x59]
mov byte [rax], cl
mov eax, dword [0x1401e5d10]
mov ecx, dword [0x1401e5d14]
xor ecx, 0xb6e3e1ac
xor edx, edx
div ecx
xor eax, 0xf69cee27
or eax, 0xe732b830
mov ecx, 0x410df075
xor edx, edx
div ecx
cmp eax, 0x53ba9e12
jae 0x1401b0f4c
mov ecx, dword [0x1401e5d18]
mov eax, dword [0x1401e5d1c]
xor eax, 0x3ece2280
imul ecx, eax
xor eax, eax
sub eax, 0x374a4723
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x9ff7058c
mov edx, 0xffffffff
xor edx, 0x9ff7058c
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x5274b02d
add ecx, eax
xor eax, eax
sub eax, ecx
cmp eax, 0xffd9f627
ja 0x1401b0b19
jmp 0x1401b0b7e
mov rax, qword [rbp + 0x48]
cmp rax, 0
je 0x1401b0bce
mov rcx, qword [rbp + 0x48]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
movabs rcx, 0xfdfbf5c8ad0be4f9
movabs rdx, 0xfdfbf5c8ad0be4f9
xor rcx, rdx
cmp rax, rcx
jne 0x1401b0bce
mov rcx, qword [rbp + 0x48]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov rax, qword [rbp + 0xc8]
cmp rax, 0
je 0x1401b0d6d
mov rax, qword [rbp + 0xc8]
mov rcx, qword [rax]
movabs rdx, 0x4000000000000000
mov rax, rcx
and rax, rdx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
movabs rdx, 0xdc846b44cd4352a8
movabs r8, 0x9c846b44cd4352a8
xor rdx, r8
movabs r8, 0xd20d3fdaaf5487ef
movabs r9, 0x2df2c02550ab7810
xor r8, r9
xor rdx, r8
or rcx, rdx
and rax, rcx
xor rax, 0xffffffffffffffff
cmp rax, 0
jne 0x1401b0d6d
mov ecx, dword [0x1401e5d20]
mov edx, dword [0x1401e5d24]
xor edx, 0x6923e42d
mov eax, ecx
xor eax, 0xffffffff
mov r9d, 0xd453f466
xor r9d, 0x2bac0b99
mov r8d, edx
xor r8d, r9d
and eax, r8d
xor ecx, 0xffffffff
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0xe82fb68d
xor ecx, 0x6a50491a
and eax, ecx
sub eax, 0xc041dd60
mov r8d, 0xffffffff
xor r8d, 0xf102b1a1
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x891813ef
xor r8d, 0x76e7ec10
xor ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xf102b1a1
or eax, 0xf102b1a1
imul eax, edx
add eax, ecx
cmp eax, 0xa7091eab
jae 0x1401b0f55
mov rcx, qword [rbp + 0xc8]
mov eax, dword [0x1401e5d28]
xor edx, edx
div dword [0x1401e5d2c]
mov r8d, eax
and r8d, 0xf1db5ea3
mov edx, 0xb5374330
xor edx, 0xb5374332
imul edx, r8d
add eax, 0xf1db5ea3
sub eax, edx
mov edx, eax
xor edx, 0xeb1d9772
mov r8d, 0x5bfb328
xor r8d, 0xfa404cd7
xor edx, r8d
and edx, 0xeb1d9772
shl edx, 1
sub edx, 0xeb1d9772
sub eax, edx
imul eax, eax, 0x1be12a98
mov dword [rbp - 0x60], eax
mov eax, 0x1895bbf8
xor eax, 0x2c5635eb
mov dword [rbp - 0x64], eax
sub rsp, 0x20
call fcn.14000e27f
mov ecx, dword [rbp - 0x64]
mov eax, dword [rbp - 0x60]
add rsp, 0x20
cmp eax, ecx
jb 0x1401b0f55
jmp 0x1401b0d6d
mov rax, qword [rbp + 0xe8]
cmp rax, 0
je 0x1401b0dec
mov rax, qword [rbp + 0xe8]
mov rcx, qword [rax]
movabs rdx, 0x4000000000000000
mov rax, rcx
and rax, rdx
xor rax, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
and rcx, rdx
xor rcx, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
movabs rdx, 0xd8b5bb134efe4f39
movabs r8, 0x274a44ecb101b0c6
xor rdx, r8
xor rcx, rdx
or rax, rcx
cmp rax, 0
jne 0x1401b0dec
mov rcx, qword [rbp + 0xe8]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov rax, qword [rbp + 0x150]
mov al, byte [rax]
mov cl, 0xf
xor cl, 0xf
cmp al, cl
je 0x1401b0efb
sub rsp, 0x20
call fcn.1401af670
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x70], rax
cmp word [rax + 0x12], 1
jle 0x1401b0efb
mov rax, qword [rbp - 0x70]
mov rax, qword [rax + 0x18]
mov eax, dword [rax + 8]
mov ecx, 0x4dccc903
xor ecx, 0x99c98085
cmp eax, ecx
jne 0x1401b0efb
mov rax, qword [rbp + 0x150]
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401af682
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.140095e90
mov rax, qword [rbp + 0x150]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401b0efb
mov eax, dword [0x1401e5d30]
xor edx, edx
div dword [0x1401e5d34]
mov ecx, 0x8f738adb
xor edx, edx
div ecx
mov ecx, 0x5211290f
xor edx, edx
div ecx
imul eax, eax, 0xf9e706b4
cmp eax, 0x21cdfc32
jae 0x1401b0f5e
mov eax, dword [0x1401e5d38]
xor eax, 0x796e7717
mov ecx, dword [0x1401e5d3c]
mov edx, 0x2bd37046
xor edx, 0xa00aeef5
xor ecx, edx
xor edx, edx
div ecx
and eax, 0x9d9a7b49
sub eax, 0x8cde79c6
and eax, 0x70254bbb
mov dword [rbp - 0x74], eax
sub rsp, 0x20
call fcn.1401af6b9
mov eax, dword [rbp - 0x74]
add rsp, 0x20
cmp eax, 0xb9ff656d
je 0x1401b0ea7
jmp 0x1401b0efb
lea rsp, [rbp + 0x2f0]
pop rbp
ret
invalid
invalid
invalid
iretd
sal ecx, 1
add eax, 0xf607e9c1
invalid
rol dl, 1
mov edi, 0xfff723e9
inc esp
invalid
invalid
cmc
invalid
loopne 0x1401b0f97
jno 0x1401b0f56
invalid
jmp 0x1401b0b19
jno 0x1401b0f4f
clc
fmul st(2), st(0)
jmp 0x1401b0cd9
invalid
add byte [rax + 0x29], cl
invalid