Function at 0x140152f90
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x58
mov dword [rsp + 0x44], edx
mov qword [rsp + 0x48], rcx
call fcn.14016c2bc
mov rcx, rax
add rcx, 0x50
mov qword [rsp + 0x50], rcx
mov al, byte [rax + 0x50]
mov cl, 0x55
xor cl, 0x55
cmp al, cl
jne 0x1401532c4
mov eax, dword [0x1401fc3e8]
xor eax, dword [0x1401fc3ec]
mov ecx, 0x76eb28e1
xor edx, edx
div ecx
mov ecx, 0xef312fb4
xor ecx, 0xef312fb4
mov edx, 0x77cac6d8
xor edx, 0x9ec85310
sub ecx, edx
sub eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x78b00f4
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x78b00f4
or eax, 0x78b00f4
imul eax, edx
add eax, ecx
mov ecx, 0x3322e25f
xor ecx, 0x6817130
cmp eax, ecx
jb 0x1401532ce
mov r11d, dword [0x1401fc3f0]
mov eax, dword [0x1401fc3f4]
mov ecx, 0xaedd13cd
xor ecx, 0x758d1705
xor eax, ecx
and r11d, eax
mov eax, 0x5e1b3c7f
xor eax, 0x33d942d9
or r11d, eax
mov ecx, r11d
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x91cfc1b2
mov r8d, 0x17e21755
xor r8d, 0x569c074f
mov eax, 0x4ee0458f
xor eax, 0xb11fba70
xor r8d, eax
mov eax, ecx
and eax, 0x417e101a
and r11d, r8d
mov r10d, 0x59e4f4f2
xor r10d, 0x189ae4e8
mov r9d, edx
and r9d, r10d
mov r10d, r8d
and r10d, 0x91cfc1b2
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, edx
mov edx, 0x6fa484e0
xor edx, 0x905b7b1f
xor ecx, edx
mov edx, 0xff5a1552
xor edx, 0xbe240548
or edx, r8d
and ecx, edx
or eax, ecx
imul eax, eax, 0xdc83b2f3
mov dword [rsp + 0x3c], eax
mov eax, 0x3be7a19e
xor eax, 0xaff919aa
mov dword [rsp + 0x38], eax
call fcn.14016c2bc
mov rdx, qword [rsp + 0x50]
mov ecx, dword [rsp + 0x38]
mov eax, dword [rsp + 0x3c]
cmp byte [rdx], 0
sete dl
mov byte [rsp + 0x43], dl
cmp eax, ecx
je 0x1401532ce
mov al, byte [rsp + 0x43]
test al, 1
jne 0x140153122
jmp 0x1401532c4
mov r11d, dword [0x1401fc3f8]
mov eax, dword [0x1401fc3fc]
xor eax, 0x60fb5451
imul r11d, eax
mov eax, 0x9f05eced
xor eax, 0xa3454be4
xor r11d, eax
mov eax, r11d
and eax, 0xd95286c4
mov ecx, 0x373c8838
xor ecx, 0x373c883a
imul eax, ecx
xor r11d, 0xd95286c4
add r11d, eax
mov eax, 0xe48fce83
xor eax, 0x1b70317c
mov ecx, r11d
xor ecx, eax
mov r8d, 0xffffffff
xor r8d, 0x875590f5
mov edx, 0x227b134f
xor edx, 0xe6dc1428
mov eax, 0xd22a0c21
xor eax, 0x2dd5f3de
xor edx, eax
mov eax, ecx
and eax, 0xc4a70767
and r11d, edx
mov r9d, r8d
and r9d, 0xc4a70767
mov r10d, edx
and r10d, 0x875590f5
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0xc4a70767
and ecx, edx
or eax, ecx
cmp eax, 0xfd2cb0ec
je 0x1401532d7
mov r8, qword [rsp + 0x48]
mov ecx, dword [rsp + 0x44]
mov eax, dword [0x1401fc400]
xor eax, 0xd4d5e9fe
mov r10d, dword [0x1401fc404]
mov edx, 0xc66eb8fc
xor edx, 0x39914703
mov r11d, r10d
xor r11d, edx
mov r9d, eax
and r9d, r11d
mov edx, eax
or edx, r11d
mov r11d, 0x2bc348c0
xor r11d, 0xd43cb73f
xor edx, r11d
imul edx, r9d
mov r9d, eax
and r9d, r10d
or eax, r10d
imul eax, r9d
add eax, edx
mov r9d, 0xb4d41f84
xor edx, edx
div r9d
mov r10d, 0x61918ac7
xor r10d, 0x951475e9
mov edx, 0x4ea54057
xor edx, 0xb15abfa8
xor r10d, edx
mov r9d, eax
and r9d, r10d
mov edx, eax
or edx, r10d
xor edx, 0xffffffff
imul edx, r9d
mov r9d, eax
and r9d, 0xf485ff2e
or eax, 0xf485ff2e
imul eax, r9d
add eax, edx
mov r9d, 0x6acf3a76
xor r9d, 0xe185260
xor edx, edx
div r9d
mov ecx, ecx
mov rdx, rcx
and rdx, r8
shl rdx, 1
xor rcx, r8
add rcx, rdx
mov qword [rsp + 0x30], rcx
cmp eax, 0x2ca63f11
je 0x1401531da
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x28], rax
jmp 0x1401532c4
mov rax, qword [rsp + 0x28]
add rsp, 0x58
ret
invalid
mov cl, 0xe0
outsd dx, dword [rsi]
or eax, 0xfffefae9
call qword [rbp + 0x48]
sub esp, 0x250
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x90], r9
mov qword [rbp + 0xc8], r8
mov qword [rbp + 0x98], rdx
mov qword [rbp + 0xa0], rcx
mov eax, 0x10
mov qword [rbp + 0xb0], rax
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0xb0]
mov rcx, rsp
mov qword [rbp + 0xa8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0xb0]
mov rcx, rsp
mov qword [rbp + 0xb8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xc0], rax
sub rsp, 0x20
call fcn.14016c2bc
mov r8, qword [rbp + 0xc8]
add rsp, 0x20
add rax, 0x50
mov qword [rbp + 0xd0], rax
mov al, byte [r8]
mov cl, 0xf9
xor cl, 0xf8
cmp al, cl
jne 0x1401533d8
mov rcx, qword [rbp + 0xc8]
sub rsp, 0x20
call fcn.1400bbc23
mov rcx, qword [rbp + 0xd0]
add rsp, 0x20
xor eax, eax
cmp byte [rcx], 0
mov byte [rbp + 0x8f], al
jne 0x14015457c
mov rcx, qword [rbp + 0x98]
sub rsp, 0x20
call fcn.1401429c0
add rsp, 0x20
xor eax, eax
mov byte [rbp + 0x8f], al
jmp 0x14015457c
lea rcx, [rbp + 0x1a0]
mov edx, 0x30
sub rsp, 0x20
call fcn.140139340
mov rax, qword [rbp + 0x90]
add rsp, 0x20
mov qword [rbp + 0x190], 0
lea rcx, [rbp + 0x190]
add rcx, 8
mov qword [rbp + 0x78], rcx
mov qword [rbp + 0x198], 0
mov rcx, rax
add rcx, 0x10
mov qword [rbp + 0x80], rcx
cmp qword [rax + 0x10], 0
jne 0x140153448
mov rax, qword [rbp + 0x90]
cmp qword [rax + 0x18], 0
je 0x1401535bf
mov rcx, qword [rbp + 0xc8]
lea rdx, [rbp + 0x1a0]
sub rsp, 0x20
call fcn.1400bbd31
mov rax, qword [rbp + 0x90]
mov rcx, qword [rbp + 0x80]
add rsp, 0x20
mov rax, qword [rax + 0x18]
mov qword [rbp + 0x68], rax
mov rcx, qword [rcx]
mov qword [rbp + 0x70], rcx
cmp rax, 0
je 0x1401534ab
mov rax, qword [rbp + 0x70]
mov rdx, qword [rbp + 0x68]
lea rcx, [rbp + 0x1a0]
sub rsp, 0x20
call rax
add rsp, 0x20
mov byte [rbp + 0x67], al
jmp 0x1401534c3
mov rax, qword [rbp + 0x70]
lea rcx, [rbp + 0x1a0]
sub rsp, 0x20
call rax
add rsp, 0x20
mov byte [rbp + 0x67], al
mov rax, qword [rbp + 0xd0]
mov cl, byte [rbp + 0x67]
mov byte [rbp + 0x57], cl
mov cl, byte [rax]
mov dl, 0x2f
xor dl, 0x2f
xor eax, eax
cmp cl, dl
mov qword [rbp + 0x58], rax
jne 0x140154060
mov al, byte [rbp + 0x57]
test al, 1
jne 0x1401535bf
jmp 0x1401534f5
mov rax, qword [rbp + 0x78]
mov rax, qword [rax]
mov qword [rbp + 0x48], rax
cmp rax, 0
je 0x140153572
mov rax, qword [rbp + 0x48]
mov rcx, qword [rax]
movabs rdx, 0x4000000000000000
mov rax, rcx
and rax, rdx
movabs rdx, 0x205f507ad181f0c4
movabs r8, 0xdfa0af852e7e0f3b
xor rdx, r8
xor rax, rdx
movabs rdx, 0x4000000000000000
and rcx, rdx
xor rcx, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
or rax, rcx
cmp rax, 0
jne 0x140153572
mov rcx, qword [rbp + 0x48]
sub rsp, 0x20
call fcn.14000f935
add rsp, 0x20
mov rcx, qword [rbp + 0xc8]
sub rsp, 0x20
call fcn.1400bbc23
mov rcx, qword [rbp + 0xd0]
add rsp, 0x20
xor eax, eax
cmp byte [rcx], 0
mov byte [rbp + 0x8f], al
jne 0x14015457c
mov rcx, qword [rbp + 0x98]
sub rsp, 0x20
call fcn.1401429c0
add rsp, 0x20
xor eax, eax
mov byte [rbp + 0x8f], al
jmp 0x14015457c
mov rax, qword [rbp + 0x98]
mov rax, qword [rax + 0x38]
mov qword [rbp + 0x40], rax
cmp rax, 0
jne 0x140153719
mov eax, dword [0x1401fc408]
xor eax, 0x8e68b5bd
mov edx, dword [0x1401fc40c]
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
or eax, edx
and eax, ecx
sub eax, 0xcbd41a4c
or eax, 0xf1b1fddf
mov ecx, 0x886679e5
xor ecx, 0x5ed26f23
imul eax, ecx
mov ecx, 0x3abdb58a
xor ecx, 0x19c1fe92
cmp eax, ecx
jb 0x14015460e
mov ecx, dword [0x1401fc410]
xor ecx, 0x901d0e7d
mov edx, dword [0x1401fc414]
xor edx, 0x8ee3474a
mov r8d, 0x7a65e1dc
xor r8d, 0x859a1e23
mov eax, ecx
xor eax, r8d
mov r9d, 0xca8af7be
xor r9d, 0x35750841
mov r8d, edx
xor r8d, r9d
and eax, r8d
or ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0x2e1baf79
xor edx, 0xd1e45086
xor ecx, edx
and eax, ecx
imul eax, eax, 0xaec4afd6
mov ecx, 0xf4344b38
xor edx, edx
div ecx
mov ecx, eax
mov rax, qword [rbp + 0x98]
mov r8d, ecx
xor r8d, 0xffffffff
and r8d, 0x7411c44f
mov r9d, 0xffffffff
xor r9d, 0x7411c44f
mov edx, ecx
and edx, r9d
imul edx, r8d
mov r8d, ecx
and r8d, 0x7411c44f
mov r9d, 0x8a0c4b05
xor r9d, 0xfe1d8f4a
or ecx, r9d
imul ecx, r8d
add ecx, edx
mov dword [rbp + 0x3c], ecx
mov rcx, qword [rax + 0x48]
mov qword [rbp + 0x178], rcx
mov rax, qword [rax + 0x50]
mov qword [rbp + 0x180], rax
lea rcx, [rbp + 0x190]
lea rdx, [rbp + 0x178]
sub rsp, 0x20
call fcn.1400191eb
mov eax, dword [rbp + 0x3c]
add rsp, 0x20
cmp eax, 0x5dbbf259
ja 0x14015460e
jmp 0x140153747
mov rdx, qword [rbp + 0xa8]
mov rax, qword [rbp + 0x40]
mov rcx, qword [rax + 0x48]
mov qword [rdx], rcx
mov rax, qword [rax + 0x50]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x190]
sub rsp, 0x20
call fcn.1400191eb
add rsp, 0x20
mov rax, qword [rbp + 0x78]
mov rcx, qword [rbp + 0x190]
mov qword [rbp + 0x18], rcx
mov rax, qword [rax]
mov qword [rbp + 0x20], rax
lea rcx, [rbp + 0x190]
sub rsp, 0x20
call fcn.140011315
mov rax, qword [rbp + 0xc8]
add rsp, 0x20
mov rcx, rax
add rcx, 0x18
mov qword [rbp + 0x10], rcx
mov rcx, qword [rax + 0x18]
mov qword [rbp + 0x158], rcx
mov rax, qword [rax + 0x20]
mov qword [rbp + 0x160], rax
lea rcx, [rbp + 0x168]
lea rdx, [rbp + 0x158]
sub rsp, 0x20
call fcn.14001c672
mov r9, qword [rbp + 0x18]
mov rdx, qword [rbp + 0x20]
mov r8, qword [rbp + 0xb8]
add rsp, 0x20
mov rcx, qword [rbp + 0x168]
mov rax, qword [rbp + 0x170]
mov qword [rbp + 0x138], r9
mov qword [rbp + 0x140], rdx
mov qword [r8], rcx
mov qword [r8 + 8], rax
lea rcx, [rbp + 0x148]
lea rdx, [rbp + 0x138]
sub rsp, 0x20
call fcn.1400bbe10
mov rax, qword [rbp + 0xd0]
add rsp, 0x20
mov rcx, qword [rbp + 0x148]
mov qword [rbp + 0x28], rcx
mov rcx, qword [rbp + 0x150]
mov qword [rbp + 0x30], rcx
mov cl, byte [rax]
mov dl, 0x60
xor dl, 0x60
xor eax, eax
cmp cl, dl
mov qword [rbp + 0x58], rax
jne 0x140154060
mov rax, qword [rbp + 0x30]
mov rcx, qword [rbp + 0x28]
mov rdx, qword [rbp + 0x90]
mov r8, qword [rdx + 0x20]
mov qword [rbp + 0x118], r8
mov rdx, qword [rdx + 0x28]
mov qword [rbp + 0x120], rdx
mov qword [rbp + 0x108], rcx
mov qword [rbp + 0x110], rax
lea rcx, [rbp + 0x128]
lea rdx, [rbp + 0x118]
lea r8, [rbp + 0x108]
sub rsp, 0x20
call fcn.14008e47d
mov rcx, qword [rbp + 0xd0]
mov rax, qword [rbp + 0x30]
add rsp, 0x20
mov rdx, qword [rbp + 0x128]
mov qword [rbp], rdx
mov rdx, qword [rbp + 0x130]
mov qword [rbp + 8], rdx
cmp byte [rcx], 0
mov qword [rbp + 0x58], rax
jne 0x140154060
mov ecx, dword [0x1401fc418]
mov eax, dword [0x1401fc41c]
mov edx, 0xa0f9e91b
xor edx, 0xb3657389
xor eax, edx
add ecx, eax
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov edx, 0xb4d61125
xor edx, 0x2fd6840e
mov r8d, 0xfce02ee6
xor r8d, 0x67e0bbcd
or edx, r8d
xor edx, 0xffffffff
or eax, edx
mov edx, 0x26f186da
xor edx, 0xd90e7925
xor eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x9b00952b
and ecx, edx
mov edx, 0x6de4c787
xor edx, 0x921b3878
xor eax, edx
mov edx, 0xf959ab30
xor edx, 0x6a654cf
xor ecx, edx
and eax, ecx
mov ecx, 0xdf3b3b2f
xor edx, edx
div ecx
mov ecx, eax
mov edx, 0x35cbe47f
xor edx, 0xca341b80
mov eax, ecx
xor eax, edx
mov edx, 0x18c1a901
xor edx, 0xad1032bd
mov r8d, 0x7d625b28
xor r8d, 0x829da4d7
xor edx, r8d
or eax, edx
and ecx, 0xb5d19bbc
mov edx, 0x40e54323
xor edx, 0xbf1abcdc
xor ecx, edx
and eax, ecx
xor eax, 0xffffffff
cmp eax, 0x12dfb38d
ja 0x140154617
mov rax, qword [rbp + 0x10]
mov rcx, qword [rbp + 0x90]
mov edx, dword [0x1401fc420]
xor edx, dword [0x1401fc424]
add edx, 0x7f44e24f
sub edx, 0xbf9ac31d
add edx, 0x1d3f381d
add edx, 0xbf9ac31d
or edx, 0x3e9ba435
mov dword [rbp - 0x1c], edx
mov edx, 0x7eda3ebe
xor edx, 0x95bdc4b1
mov dword [rbp - 0x20], edx
mov r8, qword [rcx + 0x30]
mov rcx, qword [rax]
mov qword [rbp + 0xe8], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xf0], rax
lea rcx, [rbp + 0xf8]
lea rdx, [rbp + 0xe8]
sub rsp, 0x20
call fcn.1400c0330
mov rdx, qword [rbp + 0xd0]
mov ecx, dword [rbp - 0x20]
mov eax, dword [rbp - 0x1c]
add rsp, 0x20
mov r8, qword [rbp + 0xf8]
mov qword [rbp - 0x18], r8
mov r8, qword [rbp + 0x100]
mov qword [rbp - 0x10], r8
cmp byte [rdx], 0
sete dl
mov byte [rbp - 1], dl
cmp eax, ecx
ja 0x14015398b
mov al, byte [rbp - 1]
test al, 1
jne 0x140153a49
jmp 0x140153fc8
lea rcx, [rbp + 0x188]
mov edx, 8
sub rsp, 0x20
call fcn.140139340
mov r10, qword [rbp]
mov r9, qword [rbp + 8]
mov r8, qword [rbp - 0x18]
mov rax, qword [rbp - 0x10]
mov rcx, qword [rbp + 0xa0]
mov rdx, qword [rbp + 0xc0]
add rsp, 0x20
mov qword [rdx], r10
mov qword [rdx + 8], r9
mov qword [rbp + 0xd8], r8
mov qword [rbp + 0xe0], rax
lea r8, [rbp + 0xd8]
sub rsp, 0x20
call fcn.14012cac0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp - 0x28], rcx
cmp byte [rax], 0
jne 0x140153f8e
mov eax, dword [0x1401fc428]
and eax, dword [0x1401fc42c]
add eax, 0x6513dcc3
mov ecx, eax
xor ecx, 0x8fd4d7e6
mov edx, 0xffffffff
xor edx, 0x8fd4d7e6
and eax, edx
shl eax, 1
sub eax, ecx
or eax, 0x11c3e934
cmp eax, 0x55988ed3
jbe 0x140154620
mov rcx, qword [rbp - 0x28]
mov eax, dword [0x1401fc430]
mov r9d, dword [0x1401fc434]
mov r8d, 0x88b9c34
xor r8d, 0xf77463cb
mov edx, eax
xor edx, r8d
mov r8d, r9d
and r8d, edx
mov r10d, r9d
xor r10d, 0xffffffff
mov edx, eax
and edx, r10d
imul edx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, edx
mov edx, 0xd16f2586
xor edx, 0xd16f2586
mov r8d, 0x819482bd
xor r8d, 0xddfe6732
sub edx, r8d
sub eax, edx
imul eax, eax, 0xb2ead90f
mov edx, 0xed9deb86
xor edx, 0x10ad0937
imul eax, edx
mov dword [rbp - 0x30], eax
sub rsp, 0x20
call fcn.140094d4f
mov rcx, qword [rbp + 0xd0]
mov eax, dword [rbp - 0x30]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x29], cl
cmp eax, 0xd8a0ba2d
jae 0x140153afb
mov al, byte [rbp - 0x29]
test al, 1
jne 0x140153bb2
jmp 0x140153f8e
mov rax, qword [rbp - 0x10]
cmp rax, 0
je 0x140153bfc
mov rax, qword [rbp - 0x10]
mov rax, qword [rax]
movabs rcx, 0xc71f5045bec1c5bd
movabs rdx, 0x871f5045bec1c5bd
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x140153bfc
mov rcx, qword [rbp - 0x10]
sub rsp, 0x20
call fcn.14000f935
add rsp, 0x20
mov eax, dword [0x1401fc438]
mov edx, dword [0x1401fc43c]
mov ecx, 0xfbaf9876
xor ecx, 0xb1bdf0e8
xor edx, ecx
mov ecx, eax
xor ecx, edx
mov r8d, 0x6b02455f
xor r8d, 0x94fdbaa0
xor edx, r8d
and eax, edx
shl eax, 1
sub eax, ecx
mov ecx, 0x40b4971b
xor ecx, 0xa197f241
xor eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0xaf2c518b
mov r8d, 0xffffffff
xor r8d, 0xaf2c518b
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xaf2c518b
mov r8d, 0x97449e76
xor r8d, 0x3868cffd
or eax, r8d
imul eax, edx
add eax, ecx
imul eax, eax, 0x71e4ed76
mov ecx, 0x91d230f
xor ecx, 0x7532ed40
cmp eax, ecx
je 0x140154629
mov eax, dword [0x1401fc440]
mov ecx, 0xf8ee5ff6
xor ecx, 0x97d95f20
xor eax, ecx
add eax, dword [0x1401fc444]
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x7f861856
and ecx, edx
or eax, 0x7f861856
xor eax, 0xffffffff
mov edx, 0xa3ea2063
xor edx, 0x5c15df9c
xor ecx, edx
xor eax, 0xffffffff
and ecx, eax
mov eax, ecx
and eax, 0x1938289c
xor ecx, 0x1938289c
or eax, ecx
mov ecx, 0xd626c669
xor edx, edx
div ecx
mov rdx, qword [rbp + 8]
mov ecx, 0xdcce90d4
xor ecx, 0x78344a4
cmp rdx, 0
sete dl
mov byte [rbp - 0x31], dl
cmp eax, ecx
ja 0x140153c93
mov al, byte [rbp - 0x31]
test al, 1
jne 0x140153d4d
jmp 0x140153d21
mov rcx, qword [rbp + 8]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x140153d4d
mov rcx, qword [rbp + 8]
sub rsp, 0x20
call fcn.14000f935
add rsp, 0x20
mov rax, qword [rbp + 0x78]
mov rax, qword [rax]
mov qword [rbp - 0x40], rax
cmp rax, 0
je 0x140153dc7
mov rax, qword [rbp - 0x40]
mov rax, qword [rax]
xor rax, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
movabs rcx, 0x4000000000000000
xor rdx, rcx
mov rcx, 0xffffffffffffffff
movabs r8, 0x1d2075b304d7ec3c
xor rcx, r8
or rax, rdx
movabs rdx, 0x1d2075b304d7ec3c
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jne 0x140153dc7
mov rcx, qword [rbp - 0x40]
sub rsp, 0x20
call fcn.14000f935
add rsp, 0x20
mov rax, qword [rbp + 0x30]
cmp rax, 0
je 0x140153f3b
mov rax, qword [rbp + 0x30]
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 0x140153f3b
mov eax, dword [0x1401fc448]
xor eax, 0xee60da46
xor edx, edx
div dword [0x1401fc44c]
mov ecx, 0x57383764
xor edx, edx
div ecx
mov ecx, 0xd8aebbe9
xor ecx, 0xe4195987
add eax, ecx
add eax, 0xfe0b046a
mov ecx, 0x6697870b
xor ecx, 0x5a206565
sub eax, ecx
mov ecx, 0x99e52179
xor ecx, 0x5bc94ac6
xor eax, ecx
cmp eax, 0x48e3723b
ja 0x140154632
mov rcx, qword [rbp + 0x30]
mov edx, dword [0x1401fc450]
mov eax, 0x7b44e8f0
xor eax, 0x4a350aec
xor edx, eax
mov r8d, dword [0x1401fc454]
mov eax, edx
xor eax, r8d
mov r9d, 0xe8302929
xor r9d, 0x17cfd6d6
xor r8d, r9d
and edx, r8d
shl edx, 1
sub edx, eax
mov r8d, 0xffffffff
xor r8d, 0x64095a67
mov eax, edx
and eax, r8d
mov r8d, edx
xor r8d, 0x64095a67
add edx, r8d
sub edx, eax
mov eax, edx
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
mov edx, 0xffffffff
xor edx, 0x8474182d
mov r8d, 0xffffffff
xor r8d, 0x8474182d
and edx, r8d
xor eax, 0xffffffff
mov r8d, 0x28d5f834
xor r8d, 0xd72a07cb
xor edx, r8d
and eax, edx
mov edx, eax
and edx, 0x27e07af9
xor edx, 0xffffffff
mov r8d, 0xcd6bdfbc
xor r8d, 0xea8ba545
add eax, r8d
add eax, 1
add eax, edx
mov dword [rbp - 0x44], eax
mov eax, 0x2afbf79
xor eax, 0xb6b3b5a8
mov dword [rbp - 0x48], eax
sub rsp, 0x20
call fcn.14000f935
mov ecx, dword [rbp - 0x48]
mov eax, dword [rbp - 0x44]
add rsp, 0x20
cmp eax, ecx
je 0x140154632
jmp 0x140153f3b
mov rcx, qword [rbp + 0xc8]
sub rsp, 0x20
call fcn.1400bbc23
mov rax, qword [rbp + 0xd0]
add rsp, 0x20
mov cl, byte [rax]
mov dl, 0xdc
xor dl, 0xdc
mov al, 1
cmp cl, dl
mov byte [rbp + 0x8f], al
jne 0x14015457c
mov rcx, qword [rbp + 0x98]
sub rsp, 0x20
call fcn.1401429c0
add rsp, 0x20
mov al, 1
mov byte [rbp + 0x8f], al
jmp 0x14015457c
mov rax, qword [rbp - 0x10]
cmp rax, 0
je 0x140153fc8
mov rcx, qword [rbp - 0x10]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x140153fc8
mov rcx, qword [rbp - 0x10]
sub rsp, 0x20
call fcn.14000f935
add rsp, 0x20
mov rax, qword [rbp + 0x30]
mov rcx, qword [rbp + 8]
cmp rcx, 0
mov qword [rbp + 0x58], rax
je 0x140154060
mov rax, qword [rbp + 0x30]
mov rcx, qword [rbp + 8]
mov rdx, qword [rcx]
movabs r8, 0x4000000000000000
mov rcx, rdx
and rcx, r8
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
movabs r9, 0x4000000000000000
xor r8, r9
or rdx, r8
xor rcx, 0xffffffffffffffff
movabs r8, 0x6d7244134409ac9c
movabs r9, 0x928dbbecbbf65363
xor r8, r9
xor rdx, r8
or rcx, rdx
cmp rcx, 0
mov qword [rbp + 0x58], rax
jne 0x140154060
mov rcx, qword [rbp + 8]
sub rsp, 0x20
call fcn.14000f935
mov rax, qword [rbp + 0x30]
add rsp, 0x20
mov qword [rbp + 0x58], rax
mov rax, qword [rbp + 0x78]
mov rcx, qword [rbp + 0x58]
mov qword [rbp - 0x58], rcx
mov rax, qword [rax]
mov qword [rbp - 0x50], rax
cmp rax, 0
je 0x140154245
mov ecx, dword [0x1401fc458]
mov edx, dword [0x1401fc45c]
mov eax, 0xfc5f0c66
xor eax, 0xc85e31a7
xor edx, eax
or ecx, ecx
xor ecx, 0xffffffff
mov eax, edx
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
or ecx, eax
xor ecx, 0xffffffff
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
or eax, edx
and eax, 0x34580f99
xor eax, 0xffffffff
mov edx, 0x1087e935
xor edx, 0x24dfe6ac
mov r8d, 0x4d508a42
xor r8d, 0x790885db
and edx, r8d
mov r8d, 0xf9947b25
xor r8d, 0x66b84da
xor edx, r8d
xor ecx, 0xffffffff
xor edx, 0xffffffff
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov ecx, eax
xor ecx, 0x899064e1
mov edx, 0xffffffff
xor edx, 0x899064e1
and eax, edx
shl eax, 1
sub eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x40dd2dc8
mov r8d, 0x7b910c86
xor r8d, 0x3b4c214e
mov ecx, 0x932fd006
xor ecx, 0x6cd02ff9
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x40dd2dc8
or eax, 0x40dd2dc8
imul eax, edx
add eax, ecx
mov ecx, 0x96ad9ad1
xor ecx, 0x383f2fa0
cmp eax, ecx
je 0x14015463b
mov rdx, qword [rbp - 0x50]
mov ecx, dword [0x1401fc460]
mov r8d, dword [0x1401fc464]
mov eax, ecx
add eax, 1
mov r9d, 0xc8de4ac7
xor r9d, 0x3721b538
xor ecx, r9d
or ecx, r8d
add ecx, eax
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x277ffcf1
mov r9d, 0xffffffff
xor r9d, 0x277ffcf1
and r8d, r9d
xor eax, 0xffffffff
mov r9d, 0xbf908169
xor r9d, 0x406f7e96
xor r8d, r9d
and eax, r8d
xor ecx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x277ffcf1
and ecx, r8d
mov r8d, 0x26404513
xor r8d, 0xd9bfbaec
xor eax, r8d
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x26872b58
xor ecx, 0x997d0a38
imul eax, ecx
add eax, 0x47517eb0
movabs rcx, 0x4000000000000000
and rcx, qword [rdx]
cmp rcx, 0
sete cl
mov byte [rbp - 0x59], cl
cmp eax, 0x97361eea
jae 0x14015463b
mov al, byte [rbp - 0x59]
test al, 1
jne 0x140154234
jmp 0x140154245
mov rcx, qword [rbp - 0x50]
sub rsp, 0x20
call fcn.14000f935
add rsp, 0x20
mov rax, qword [rbp - 0x58]
cmp rax, 0
je 0x14015427f
mov rcx, qword [rbp - 0x58]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x14015427f
mov rcx, qword [rbp - 0x58]
sub rsp, 0x20
call fcn.14000f935
add rsp, 0x20
mov rax, qword [rbp + 0xd0]
mov al, byte [rax]
mov cl, 0x5b
xor cl, 0x5b
cmp al, cl
je 0x14015442d
sub rsp, 0x20
call fcn.140139522
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x68], rax
cmp word [rax + 0x12], 1
jle 0x140154312
mov rax, qword [rbp - 0x68]
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0xc5722261
jne 0x140154312
mov rax, qword [rbp + 0xd0]
mov byte [rax], 0
sub rsp, 0x20
call fcn.140139534
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.140093060
mov rcx, qword [rbp + 0xd0]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp - 0x69], al
jne 0x14015458a
sub rsp, 0x20
call fcn.140139561
add rsp, 0x20
mov ecx, dword [0x1401fc468]
mov edx, dword [0x1401fc46c]
xor eax, eax
sub eax, edx
add ecx, eax
mov eax, 0xffffffff
xor eax, 0x5ac8f2af
add ecx, eax
add ecx, 1
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x72911e1f
mov edx, 0xffffffff
xor edx, 0x72911e1f
and ecx, edx
or eax, ecx
imul eax, eax, 0xc4f15749
mov ecx, 0xfa701a35
xor ecx, 0xbafdfc2b
cmp eax, ecx
jbe 0x140154644
mov rcx, qword [rbp + 0xd0]
mov edx, dword [0x1401fc470]
mov eax, dword [0x1401fc474]
xor eax, 0xe1092710
sub edx, eax
xor eax, eax
sub eax, 0x3903d0c
sub edx, eax
mov eax, edx
or eax, eax
xor eax, 0xffffffff
mov r8d, 0x139513ce
xor r8d, 0xb80dcc38
mov r9d, 0x97d3f838
xor r9d, 0x3c4b27ce
or r8d, r9d
mov r9d, 0xf3e6a83a
xor r9d, 0xc1957c5
xor r8d, r9d
or eax, r8d
xor eax, 0xffffffff
or edx, 0xab98dff6
xor edx, 0xffffffff
xor eax, 0xffffffff
mov r8d, 0xae3da0ff
xor r8d, 0x51c25f00
xor edx, r8d
and eax, edx
mov edx, 0xe5893ad6
xor edx, 0xe5893ad6
mov r8d, 0xc81ce7e5
xor r8d, 0x9e3659f7
sub edx, r8d
add eax, edx
mov cl, byte [rcx]
mov byte [rbp - 0x6b], cl
cmp cl, 0
sete cl
mov byte [rbp - 0x6a], cl
cmp eax, 0xa8c9a6b1
je 0x140154644
mov al, byte [rbp - 0x6b]
mov cl, byte [rbp - 0x6a]
test cl, 1
mov byte [rbp - 0x69], al
jne 0x14015442d
jmp 0x14015458a
mov rcx, qword [rbp + 0xc8]
sub rsp, 0x20
call fcn.1400bbc23
mov rax, qword [rbp + 0xd0]
add rsp, 0x20
mov cl, byte [rax]
mov dl, 0xab
xor dl, 0xab
xor eax, eax
cmp cl, dl
mov byte [rbp + 0x8f], al
jne 0x14015457c
mov eax, dword [0x1401fc478]
mov edx, dword [0x1401fc47c]
mov ecx, eax
and ecx, edx
mov r8d, 0x7aad91a5
xor r8d, 0x7aad91a7
imul ecx, r8d
xor eax, edx
add eax, ecx
sub eax, 0x93d1c723
sub eax, 0x166c24fd
add eax, 0x93d1c723
mov ecx, 0xb4914fbe
xor edx, edx
div ecx
mov ecx, 0xffffffff
xor ecx, 0xa9f9c157
mov edx, 0x3185966b
xor edx, 0x3185966b
mov r8d, 0x3c353c2d
xor r8d, 0x3c353c2c
sub edx, r8d
sub ecx, edx
sub eax, ecx
mov ecx, 0xeef1060a
xor ecx, 0xb67242c8
cmp eax, ecx
jb 0x14015464d
mov rcx, qword [rbp + 0x98]
mov eax, dword [0x1401fc480]
mov edx, dword [0x1401fc484]
xor edx, 0x696e3fc2
xor eax, edx
mov edx, eax
xor edx, 0xffffffff
xor eax, 0xffffffff
and edx, eax
mov eax, 0xdbf89a39
xor eax, 0x2e3d9458
mov r8d, 0x8b223a6e
xor r8d, 0x7ee7340f
or eax, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
xor eax, 0xffffffff
and edx, eax
mov eax, edx
xor eax, 0xffffffff
and eax, 0x9575060c
mov r8d, 0xffffffff
xor r8d, 0x9575060c
and edx, r8d
or eax, edx
sub eax, 0xc156484e
mov dword [rbp - 0x70], eax
mov eax, 0x3bb96977
xor eax, 0xaa3cc42f
mov dword [rbp - 0x74], eax
sub rsp, 0x20
call fcn.1401429c0
mov ecx, dword [rbp - 0x74]
mov eax, dword [rbp - 0x70]
add rsp, 0x20
cmp eax, ecx
jae 0x1401544d9
xor eax, eax
mov byte [rbp + 0x8f], al
jmp 0x14015457c
mov al, byte [rbp + 0x8f]
mov byte [rbp - 0x75], al
jmp 0x1401545fd
mov rax, qword [rbp + 0xd0]
mov rcx, qword [rbp + 0xc8]
mov dl, byte [rbp - 0x69]
mov byte [rbp - 0x76], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.1400bbc23
mov rcx, qword [rbp + 0xd0]
add rsp, 0x20
xor eax, eax
cmp byte [rcx], 0
mov byte [rbp - 0x75], al
jne 0x1401545fd
mov rcx, qword [rbp + 0x98]
sub rsp, 0x20
call fcn.1401429c0
mov rcx, qword [rbp + 0xd0]
add rsp, 0x20
xor eax, eax
cmp byte [rcx], 0
mov byte [rbp - 0x75], al
jne 0x1401545fd
mov rax, qword [rbp + 0xd0]
mov cl, byte [rbp - 0x76]
mov byte [rax], cl
xor eax, eax
mov byte [rbp - 0x75], al
mov al, byte [rbp - 0x75]
and al, 1
movzx eax, al
lea rsp, [rbp + 0x1d0]
pop rbp
ret
jmp 0x129f947b7
sbb byte [edi + 0x14], 0xe9
imul esi, ebx, 0xffffffff
push rsp
or al, 0xca
lodsb al, byte [rsi]
jmp 0x140153afb
hlt
mov ds, word [rdx + 0x61e99b21]
idiv bh
invalid
mov r9b, 0xe9
sbb edi, eax
invalid
clc
stc
mov ebp, ebx
jmp 0x140154162
cmp bh, byte [0x158fef1c8]
std
invalid
rcr byte [rbp - 0x7c], 0x5b
jmp 0x1401544d9