Function at 0x140177720
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
sub rsp, 0x218
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x108], rdx
mov qword [rbp + 0x110], rcx
mov eax, 0x10
mov qword [rbp + 0x120], rax
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x120]
mov rcx, rsp
mov qword [rbp + 0x118], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp + 0x120]
mov rcx, rsp
mov qword [rbp + 0x128], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x130], rax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov qword [rbp + 0x140], rax
add rax, 0x60
mov qword [rbp + 0x138], rax
mov cx, 0x56a2
xor cx, 0x9a43
mov dx, 0xfb59
xor dx, 0x5fa8
sub rsp, 0x20
call fcn.1400993fb
add rsp, 0x20
mov cx, ax
mov rax, qword [rbp + 0x140]
mov word [rbp + 0x14e], cx
mov al, byte [rax + 0x60]
mov cl, 0x48
xor cl, 0x48
cmp al, cl
jne 0x140178e25
mov rcx, qword [rbp + 0x108]
mov ax, word [rbp + 0x14e]
mov byte [rbp + 0xf7], al
mov edx, 1
sub rsp, 0x20
call fcn.140037690
mov r8b, byte [rbp + 0xf7]
mov rax, qword [rbp + 0x108]
add rsp, 0x20
mov rcx, rax
add rcx, 8
mov qword [rbp + 0xf8], rcx
mov rcx, qword [rax + 8]
mov rdx, qword [rax]
mov byte [rcx + rdx + 8], r8b
mov rdx, qword [rax]
mov rcx, rdx
add rcx, 1
mov qword [rbp + 0x100], rcx
xor rdx, 0xffffffffffffffff
mov rax, rcx
and rax, rdx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
movabs r8, 0x43aed1441c491c9b
movabs r9, 0xbc512ebbe3b6e364
xor r8, r9
xor rdx, r8
or rcx, rdx
and rax, rcx
xor rax, 0xffffffffffffffff
cmp rax, 0
jge 0x1401778a8
sub rsp, 0x20
call fcn.14000f24b
add rsp, 0x20
jmp 0x1401778c8
mov rcx, qword [rbp + 0x100]
mov rax, qword [rbp + 0xf8]
mov rdx, qword [rbp + 0x108]
mov qword [rdx], rcx
mov rax, qword [rax]
mov byte [rax + rcx + 8], 0
mov eax, dword [0x14027c4a8]
mov ecx, dword [0x14027c4ac]
xor ecx, 0xffffffff
mov edx, 0x318e2eb2
xor edx, 0x318e2eb2
mov r8d, 0xa06901e9
xor r8d, 0xa06901e8
sub edx, r8d
sub ecx, edx
sub eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x2f7070fe
mov edx, 0x72bbed92
xor edx, 0x5dcb9d6c
mov r8d, 0xba26ed1c
xor r8d, 0x45d912e3
xor edx, r8d
and eax, edx
sub eax, ecx
sub eax, 0x3206fc96
mov edx, 0xb6f273fa
xor edx, 0xb6f273fb
mov ecx, eax
add ecx, edx
xor eax, 0xffffffff
or eax, 0x32e4946d
add eax, ecx
cmp eax, 0x495f62bf
ja 0x140178e2f
mov rdx, qword [rbp + 0x138]
mov r8, qword [rbp + 0x110]
mov eax, dword [0x14027c4b0]
mov ecx, dword [0x14027c4b4]
mov r9d, eax
and r9d, ecx
or eax, ecx
mov ecx, eax
mov eax, r9d
lea r9d, [rax + rcx - 0x3f567f9b]
mov eax, r9d
and eax, 0x2db640b
xor r9d, 0x22db640b
mov ecx, eax
mov eax, r9d
lea eax, [rax + rcx*2]
and eax, 0x201905bb
mov ecx, 0xf699dfe7
mov r8, qword [r8]
test r8, r8
sete r8b
mov dl, byte [rdx]
test dl, dl
setne dl
mov byte [rbp + 0xf5], dl
or dl, r8b
mov byte [rbp + 0xf6], dl
cmp eax, ecx
je 0x140177949
mov al, byte [rbp + 0xf6]
test al, 1
jne 0x14017878b
jmp 0x1401779d4
mov ecx, 0x5255
mov edx, 0x3a04
sub rsp, 0x20
call fcn.1400993fb
mov rcx, qword [rbp + 0x138]
add rsp, 0x20
mov cl, byte [rcx]
cmp cl, 0
sete dl
mov byte [rbp + 0xf3], dl
cmp cl, 0
mov byte [rbp + 0xf4], al
je 0x140177a0f
mov al, byte [rbp + 0xf3]
mov cl, byte [rbp + 0xf4]
mov byte [rbp + 0xf2], cl
test al, 1
jne 0x140177a2e
jmp 0x140178769
mov rcx, qword [rbp + 0x118]
mov word [rcx], 0x3ae
sub rsp, 0x20
call fcn.140093f60
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x138]
mov qword [rbp + 0xe8], rcx
cmp byte [rax], 0
jne 0x140178769
mov rax, qword [rbp + 0xe8]
mov rcx, qword [rbp + 0x128]
mov rdx, qword [rax]
xor eax, eax
sub rax, 1
sub rdx, rax
sub rsp, 0x20
call fcn.140037460
mov rcx, qword [rbp + 0x128]
mov rdx, qword [rbp + 0xe8]
add rsp, 0x20
mov rax, qword [rcx]
mov qword [rbp + 0xc0], rax
mov rcx, qword [rcx + 8]
mov qword [rbp + 0xc8], rcx
mov rcx, qword [rdx]
mov qword [rbp + 0xd0], rcx
mov rdx, qword [rdx + 8]
mov qword [rbp + 0xd8], rdx
movabs rdx, 0xbe041667b326eb91
movabs r8, 0xbe041667b326eb91
xor rdx, r8
cmp rcx, rdx
mov qword [rbp + 0xe0], rax
jle 0x140178045
mov ecx, dword [0x14027c4b8]
mov eax, 0x906905e7
xor eax, 0x25e0a5e4
xor ecx, eax
mov edx, dword [0x14027c4bc]
mov eax, ecx
or eax, edx
xor eax, 0xffffffff
mov r8d, 0xcc9c457
xor r8d, 0xf3363ba8
xor ecx, r8d
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0xfa284d78
xor edx, edx
div ecx
sub eax, 0xe7fbe0f7
mov ecx, 0x3414f5b4
xor ecx, 0xfec1bef7
sub eax, ecx
add eax, 0xe7fbe0f7
or eax, 0x9e92496a
cmp eax, 0xf58fdc03
je 0x140178e38
mov r8, qword [rbp + 0xd0]
mov eax, dword [0x14027c4c0]
mov edx, dword [0x14027c4c4]
xor ecx, ecx
sub ecx, edx
add eax, ecx
mov ecx, 0xba52d980
xor ecx, 0xb2f1892d
imul eax, ecx
mov r9d, 0xffffffff
xor r9d, 0x90462e28
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
mov r9d, 0x522cb6bb
xor r9d, 0xadd34944
xor ecx, r9d
imul ecx, edx
mov edx, eax
and edx, 0x90462e28
or eax, 0x90462e28
imul eax, edx
add eax, ecx
mov ecx, 0xfd89e63
xor edx, edx
div ecx
mov rcx, r8
add rcx, 1
mov qword [rbp + 0xb0], rcx
mov rdx, r8
xor rdx, 0xffffffffffffffff
and rdx, 0xffffffffffffffff
mov r9, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
and r8, r9
or rdx, r8
xor rcx, 0xffffffffffffffff
movabs r8, 0x81bf0322bc557ce
movabs r9, 0xf7e40fcdd43aa831
xor r8, r9
xor rdx, r8
mov r8, 0xffffffffffffffff
movabs r9, 0x98a224d0741069e2
xor r8, r9
or rcx, rdx
movabs rdx, 0x8a0c0fc44b6f4c32
movabs r9, 0x12ae2b143f7f25d0
xor rdx, r9
or rdx, r8
xor rcx, 0xffffffffffffffff
and rcx, rdx
cmp rcx, 0
setl cl
mov byte [rbp + 0xbf], cl
cmp eax, 0x835ca629
jae 0x140177b50
mov al, byte [rbp + 0xbf]
test al, 1
jne 0x140177c67
jmp 0x140177c87
sub rsp, 0x20
call fcn.14000f24b
mov rax, qword [rbp + 0xc0]
add rsp, 0x20
mov qword [rbp + 0xe0], rax
jmp 0x140178045
mov eax, dword [0x14027c4c8]
imul eax, dword [0x14027c4cc]
imul eax, eax, 0xb4c775
mov ecx, eax
and ecx, 0x9d722ddb
mov edx, 0xb98ee4
xor edx, 0xb98ee6
imul ecx, edx
xor eax, 0x9d722ddb
add eax, ecx
or eax, 0xc2e0a38b
cmp eax, 0x2896bc3
jb 0x140178e41
mov rcx, qword [rbp + 0xb0]
mov eax, dword [0x14027c4d0]
mov r9d, dword [0x14027c4d4]
xor r9d, 0x3e9185e6
mov r8d, r9d
xor r8d, 0xffffffff
mov edx, eax
and edx, r8d
mov r8d, eax
xor r8d, r9d
add eax, r8d
sub eax, edx
imul eax, eax, 0x5e71bb2d
mov edx, 0x882449e6
xor edx, 0x5b74394d
and eax, edx
or eax, 0xf5cfe6cb
cmp rcx, 0
setl cl
mov byte [rbp + 0xaf], cl
cmp eax, 0x1d1c52d1
jbe 0x140178e41
mov al, byte [rbp + 0xaf]
test al, 1
jne 0x140177d3c
jmp 0x140177e4d
mov eax, dword [0x14027c4d8]
add eax, dword [0x14027c4dc]
mov ecx, eax
add ecx, 1
mov edx, 0x474784e6
xor edx, 0xb8b87b19
xor eax, edx
mov edx, 0x61d5b114
xor edx, 0xba22e169
or eax, edx
add eax, ecx
add eax, 0x6f7a8bce
xor eax, 0x5670f075
cmp eax, 0xcd01567
je 0x140178e4a
mov rcx, qword [rbp + 0xb0]
mov eax, dword [0x14027c4e0]
xor edx, edx
div dword [0x14027c4e4]
mov edx, eax
mov eax, edx
or eax, eax
mov r8d, 0xe69d305f
xor r8d, 0x1962cfa0
xor eax, r8d
mov r8d, 0x2f43243b
xor r8d, 0x6a431149
mov r9d, 0xe9b1aabd
xor r9d, 0xacb19fcf
or r8d, r9d
xor r8d, 0xffffffff
xor eax, 0xffffffff
xor r8d, 0xffffffff
and eax, r8d
mov r8d, 0xa75e61ad
xor r8d, 0xe25e54df
or edx, r8d
xor edx, 0xffffffff
or eax, edx
mov edx, 0xa5323847
xor edx, 0x5acdc7b8
xor eax, edx
mov edx, 0x36d4100f
xor edx, 0x5e59de33
xor eax, edx
xor eax, 0xcb031665
mov dword [rbp + 0xa8], eax
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14001a720
mov eax, dword [rbp + 0xa8]
add rsp, 0x20
cmp eax, 0xc525a463
je 0x140177d7e
mov rax, qword [rbp + 0xc0]
mov qword [rbp + 0xe0], rax
jmp 0x140178045
mov rax, qword [rbp + 0xd8]
mov rdx, qword [rbp + 0xc0]
mov rcx, qword [rbp + 0xc8]
add rcx, 8
add rcx, rdx
mov qword [rbp + 0x90], rcx
add rax, 8
mov qword [rbp + 0x98], rax
xor eax, eax
mov qword [rbp + 0xa0], rax
mov rax, qword [rbp + 0xa0]
mov qword [rbp + 0x88], rax
mov eax, dword [0x14027c4e8]
xor eax, dword [0x14027c4ec]
mov ecx, 0x3d607163
xor ecx, 0x872a3c42
sub eax, ecx
mov ecx, 0x2b0c8b63
xor edx, edx
div ecx
add eax, 0xa9c4b2ff
cmp eax, 0x8340d7
jbe 0x140178e53
mov rcx, qword [rbp + 0x88]
mov r8, qword [rbp + 0x90]
mov r9, qword [rbp + 0x98]
mov eax, dword [0x14027c4f0]
xor edx, edx
div dword [0x14027c4f4]
mov edx, eax
mov eax, edx
and eax, eax
xor eax, 0xffffffff
xor eax, 0xffffffff
mov r10d, 0xffffffff
xor r10d, 0x35d5e385
or eax, r10d
mov r10d, 0xbd486ffe
xor r10d, 0x889d8c7b
mov r11d, 0x19ef645c
xor r11d, 0x2c3a87d9
and r10d, r11d
xor r10d, 0xffffffff
and edx, r10d
mov r10d, 0x45c722c7
xor r10d, 0xba38dd38
xor edx, r10d
xor eax, 0xffffffff
mov r10d, 0x99c1585b
xor r10d, 0x663ea7a4
xor edx, r10d
or eax, edx
and eax, 0xe81d9ebe
mov r10d, 0x312aa29b
xor edx, edx
div r10d
mov rdx, qword [rbp + 0xd0]
mov r9b, byte [r9 + rcx]
mov byte [r8 + rcx], r9b
xor r8d, r8d
mov r9d, r8d
sub r9, rcx
xor r8d, r8d
sub r8, 1
add r9, r8
xor r8d, r8d
sub r8, r9
mov qword [rbp + 0x78], r8
cmp rcx, rdx
sete cl
mov byte [rbp + 0x87], cl
cmp eax, 0xdb1eb966
jae 0x140177ec4
mov rax, qword [rbp + 0x78]
mov cl, byte [rbp + 0x87]
test cl, 1
mov qword [rbp + 0xa0], rax
jne 0x140177fbe
jmp 0x140177e84
mov rcx, qword [rbp + 0xd0]
mov r8, qword [rbp + 0xc0]
mov rax, rcx
and rax, r8
mov rdx, rcx
or rdx, r8
add rax, rdx
mov rdx, rax
xor rdx, r8
mov r8, rax
xor r8, rcx
mov rcx, rdx
and rcx, r8
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
or rdx, r8
and rcx, rdx
movabs rdx, 0x180d5c3872300281
movabs r8, 0xe7f2a3c78dcffd7e
xor rdx, r8
xor rcx, rdx
cmp rcx, 0
mov qword [rbp + 0xe0], rax
jge 0x140178045
sub rsp, 0x20
call fcn.14000f24b
mov rax, qword [rbp + 0xc0]
add rsp, 0x20
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xc8]
mov dl, byte [rbp + 0xf2]
mov rcx, qword [rbp + 0xe0]
mov qword [rbp + 0x68], rcx
mov byte [rax + rcx + 8], dl
mov rdx, 0xffffffffffffffff
xor rdx, 1
xor eax, eax
sub rax, 1
sub rdx, rax
mov rax, rcx
sub rax, rdx
mov qword [rbp + 0x70], rax
mov r8, rcx
xor r8, 0xffffffffffffffff
movabs rdx, 0xf343880477cd0611
movabs r9, 0xcbc77fb8832f9ee
xor rdx, r9
and rdx, r8
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rcx, r8
or rdx, rcx
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
or rax, rdx
add rax, rcx
movabs rcx, 0x414362398100d61
movabs rdx, 0x414362398100d61
xor rcx, rdx
cmp rax, rcx
jge 0x1401780fc
sub rsp, 0x20
call fcn.14000f24b
mov rax, qword [rbp + 0x68]
add rsp, 0x20
mov qword [rbp + 0x60], rax
jmp 0x140178110
mov rax, qword [rbp + 0x70]
mov rcx, qword [rbp + 0xc8]
mov byte [rcx + rax + 8], 0
mov qword [rbp + 0x60], rax
mov rcx, qword [rbp + 0x108]
mov rdx, qword [rbp + 0x60]
mov qword [rbp + 0x58], rdx
sub rsp, 0x20
call fcn.140037690
mov rax, qword [rbp + 0x58]
add rsp, 0x20
cmp rax, 0
jle 0x1401786db
mov rdx, qword [rbp + 0x58]
movabs rcx, 0x5723aab92a945e5
movabs rax, 0x5723aab92a945e5
xor rcx, rax
movabs rax, 0x4af8f2d776db41c
movabs r8, 0x4af8f2d776db41d
xor rax, r8
sub rcx, rax
mov rax, rdx
sub rax, rcx
mov qword [rbp + 0x50], rax
mov rcx, rdx
and rcx, rcx
xor rcx, 0xffffffffffffffff
movabs r8, 0x741f8cdb8604ce31
movabs r9, 0x8be0732479fb31ce
xor r8, r9
xor rcx, r8
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
or rcx, r8
mov r8, 0xffffffffffffffff
and r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rdx, r8
xor rdx, 0xffffffffffffffff
and rcx, rdx
xor rcx, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jge 0x1401782ae
mov eax, dword [0x14027c4f8]
xor eax, 0x2f6f3793
and eax, dword [0x14027c4fc]
mov r8d, 0xffffffff
xor r8d, 0xd487c925
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov r8d, 0xd31791d
xor r8d, 0xd9b6b038
mov edx, eax
and edx, r8d
or eax, 0xd487c925
imul eax, edx
add eax, ecx
mov ecx, 0x9757f0c7
xor ecx, 0xd9e4b798
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
and eax, 0x3699b291
mov edx, 0xcae6b7db
xor edx, 0xfc7f054a
or ecx, edx
add eax, ecx
cmp eax, 0x643d9bb4
je 0x140178e5c
mov ecx, dword [0x14027c500]
xor ecx, dword [0x14027c504]
mov edx, 0xf198949c
xor edx, 0xf9cdcfd6
mov eax, ecx
and eax, edx
or ecx, 0x8555b4a
add eax, ecx
mov ecx, 0x39c2bd9
xor ecx, 0x4fd65283
or eax, ecx
xor ecx, ecx
sub ecx, 0x22007dfe
add eax, ecx
mov dword [rbp + 0x4c], eax
sub rsp, 0x20
call fcn.14000f24b
mov eax, dword [rbp + 0x4c]
add rsp, 0x20
cmp eax, 0x837edfe8
je 0x140178251
jmp 0x1401786db
mov rax, qword [rbp + 0x50]
cmp rax, 0
jge 0x1401782e0
mov rcx, qword [rbp + 0x50]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14001a720
add rsp, 0x20
jmp 0x1401786db
mov rax, qword [rbp + 0xc8]
mov rdx, qword [rbp + 0x108]
mov rcx, qword [rbp + 0xf8]
mov rcx, qword [rcx]
add rcx, 8
add rcx, qword [rdx]
mov qword [rbp + 0x30], rcx
add rax, 8
mov qword [rbp + 0x38], rax
xor eax, eax
mov qword [rbp + 0x40], rax
mov rax, qword [rbp + 0x40]
mov qword [rbp + 0x28], rax
mov eax, dword [0x14027c508]
xor edx, edx
div dword [0x14027c50c]
mov r8d, eax
mov ecx, 0x54b28ccb
xor ecx, 0xab4d7334
mov eax, r8d
xor eax, ecx
and eax, 0xa5e7a454
mov r9d, 0xffffffff
xor r9d, 0xa5e7a454
and r8d, r9d
mov ecx, 0xffffffff
xor ecx, 0x4e3b9a81
mov edx, 0xa7994fc7
xor edx, 0x27eeb93
and ecx, edx
mov edx, 0xff27a4c
xor edx, 0x41c9e0cd
and edx, r9d
or eax, r8d
or ecx, edx
xor eax, ecx
sub eax, 0xfa449031
mov ecx, eax
xor ecx, 0x67ba94b6
mov edx, 0x29106c6d
xor edx, 0x4eaaf8db
mov r8d, 0x3e233b29
xor r8d, 0xc1dcc4d6
xor edx, r8d
and eax, edx
shl eax, 1
sub eax, ecx
cmp eax, 0x9659a9c6
je 0x140178e65
mov rcx, qword [rbp + 0x28]
mov rdx, qword [rbp + 0x58]
mov r8, qword [rbp + 0x30]
mov r9, qword [rbp + 0x38]
mov eax, dword [0x14027c510]
add eax, dword [0x14027c514]
or eax, 0x1b483512
and eax, 0xebdcb45e
imul eax, eax, 0x459d0951
mov r9b, byte [r9 + rcx]
mov byte [r8 + rcx], r9b
movabs r9, 0xe35ef0a0e8bda019
movabs r8, 0xe35ef0a0e8bda018
xor r9, r8
mov r8, rcx
and r8, r9
mov r9, rcx
or r9, 1
add r8, r9
mov qword [rbp + 0x18], r8
cmp rcx, rdx
sete cl
mov byte [rbp + 0x27], cl
cmp eax, 0x1d5403a7
je 0x140178e65
mov rax, qword [rbp + 0x18]
mov cl, byte [rbp + 0x27]
test cl, 1
mov qword [rbp + 0x40], rax
jne 0x140178442
jmp 0x140178311
mov eax, dword [0x14027c518]
mov ecx, 0xefcb83a5
xor ecx, 0x721cb69
xor eax, ecx
mov ecx, dword [0x14027c51c]
add eax, 0x4c253e1c
add eax, ecx
sub eax, 0x4c253e1c
mov edx, 0xffffffff
xor edx, 0x15a8f9e9
mov ecx, eax
and ecx, edx
mov r8d, 0xc564be7f
xor r8d, 0xd0cc4796
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
imul eax, eax, 0xdb48a682
xor eax, 0xffffffff
mov edx, 0x9b07376f
xor edx, 0x69275274
mov ecx, 0xe69d41b2
xor ecx, 0x1962be4d
xor edx, ecx
mov ecx, 0xffffffff
xor ecx, 0xe3bf2125
or eax, edx
or ecx, 0xe3bf2125
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0xa9a1eb40
xor ecx, 0xe393394
cmp eax, ecx
je 0x140178e6e
mov r10, qword [rbp + 0x58]
mov eax, dword [0x14027c520]
xor edx, edx
div dword [0x14027c524]
imul eax, eax, 0x7d2331c2
sub eax, 0xb884dfd7
mov ecx, 0x9391fdb0
xor edx, edx
div ecx
mov rdx, qword [rbp + 0x108]
mov ecx, 0xc0aa51ec
xor ecx, 0x9d5e71f3
mov r11, qword [rdx]
movabs rdx, 0x520737c175bbda6d
mov r8, r11
add r8, rdx
add r8, r10
movabs rdx, 0xa24c6d77815700b9
movabs r9, 0xf04b5ab6f4ecdad4
xor rdx, r9
sub r8, rdx
mov qword [rbp + 8], r8
mov r9, r8
and r9, r11
shl r9, 1
mov rdx, r8
add rdx, r11
sub rdx, r9
movabs r9, 0xbde4289428108f36
movabs r11, 0x421bd76bd7ef70c9
xor r9, r11
mov r11, r8
xor r11, r9
mov r9, r10
and r9, r11
movabs r11, 0x7fa2d2012f229d7c
movabs rsi, 0x805d2dfed0dd6283
xor r11, rsi
xor r10, r11
and r8, r10
or r9, r8
mov r8, rdx
xor r8, r9
movabs r10, 0xf27461411719c910
movabs r11, 0xd8b9ebee8e636ef
xor r10, r11
xor r8, r10
or rdx, r9
and rdx, r8
movabs r8, 0x6f9efe8032be4586
movabs r9, 0x6f9efe8032be4586
xor r8, r9
cmp rdx, r8
setl dl
mov byte [rbp + 0x17], dl
cmp eax, ecx
jae 0x140178e6e
mov al, byte [rbp + 0x17]
test al, 1
jne 0x1401785f8
jmp 0x14017860a
sub rsp, 0x20
call fcn.14000f24b
add rsp, 0x20
jmp 0x1401786db
mov eax, dword [0x14027c528]
mov ecx, dword [0x14027c52c]
xor ecx, 0xd8f92cd4
xor eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x44aba76
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0xb56a0818
xor r8d, 0x4a95f7e7
xor ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x44aba76
or eax, 0x44aba76
imul eax, edx
add eax, ecx
add eax, 0x67d56683
sub eax, 0x61137048
mov ecx, 0x397d30d8
xor ecx, 0x2b0f71c6
cmp eax, ecx
jb 0x140178e77
mov r8, qword [rbp + 8]
mov eax, dword [0x14027c530]
mov edx, dword [0x14027c534]
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
or eax, edx
and eax, ecx
mov ecx, 0x838fbb6d
xor ecx, 0x4cc69bb7
xor edx, edx
div ecx
mov ecx, 0x65e4a21e
xor ecx, 0x99702960
xor edx, edx
div ecx
mov ecx, 0x57b0b759
xor edx, edx
div ecx
mov rdx, qword [rbp + 0x108]
mov ecx, 0x2a2867c0
xor ecx, 0x1319f25f
mov qword [rdx], r8
cmp eax, ecx
ja 0x140178e77
jmp 0x1401786db
mov rdx, qword [rbp + 0x108]
mov rax, qword [rbp + 0x110]
mov rcx, qword [rax]
mov qword [rbp + 0x188], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x190], rax
lea rcx, [rbp + 0x188]
sub rsp, 0x20
call fcn.140174600
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0xc8]
add rsp, 0x20
mov al, byte [rax]
cmp al, 0
sete cl
mov byte [rbp + 6], cl
movabs rcx, 0x4000000000000000
and rcx, qword [rdx]
cmp rcx, 0
mov byte [rbp + 7], al
jne 0x14017876e
mov rcx, qword [rbp + 0xc8]
sub rsp, 0x20
call fcn.14001d1d6
mov rax, qword [rbp + 0x138]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp + 7], al
jmp 0x14017876e
jmp 0x140178e25
mov al, byte [rbp + 6]
mov cl, byte [rbp + 7]
and al, 1
movzx eax, al
cmp cl, 0
mov qword [rbp - 8], rax
je 0x1401787a0
jmp 0x140178e25
mov cl, byte [rbp + 0xf5]
xor eax, eax
test cl, 1
mov qword [rbp - 8], rax
jne 0x140178e25
mov rax, qword [rbp + 0x110]
mov rcx, qword [rbp - 8]
mov qword [rbp - 0x18], rcx
mov rcx, rax
add rcx, 0x10
mov qword [rbp - 0x10], rcx
cmp qword [rax + 0x10], 0
je 0x140178cda
mov rax, qword [rbp - 0x18]
cmp rax, 0
je 0x1401788e3
mov cx, 0xbac0
xor cx, 0x42cf
mov dx, 0xf37d
xor dx, 0x6335
sub rsp, 0x20
call fcn.1400993fb
add rsp, 0x20
mov cx, ax
mov rax, qword [rbp + 0x138]
mov word [rbp - 0x1a], cx
cmp byte [rax], 0
jne 0x140178cbf
mov rcx, qword [rbp + 0x108]
mov ax, word [rbp - 0x1a]
mov byte [rbp - 0x29], al
mov edx, 1
sub rsp, 0x20
call fcn.140037690
mov rcx, qword [rbp + 0xf8]
mov r8b, byte [rbp - 0x29]
mov rax, qword [rbp + 0x108]
add rsp, 0x20
mov rcx, qword [rcx]
mov rdx, qword [rax]
mov byte [rcx + rdx + 8], r8b
mov rdx, qword [rax]
mov rcx, rdx
and rcx, 1
mov rax, rdx
or rax, 1
add rcx, rax
mov qword [rbp - 0x28], rcx
movabs rax, 0xa080259cee47a93d
movabs r8, 0x5f7fda6311b856c2
xor rax, r8
xor rdx, rax
mov rax, rcx
and rax, rdx
movabs r8, 0xeee0f926ea327572
movabs r9, 0x111f06d915cd8a8d
xor r8, r9
xor rax, r8
and rcx, rdx
xor rcx, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
or rax, rcx
cmp rax, 0
jge 0x1401788c6
sub rsp, 0x20
call fcn.14000f24b
add rsp, 0x20
jmp 0x1401788e3
mov rcx, qword [rbp - 0x28]
mov rax, qword [rbp + 0xf8]
mov rdx, qword [rbp + 0x108]
mov qword [rdx], rcx
mov rax, qword [rax]
mov byte [rax + rcx + 8], 0
mov ecx, 0x5255
mov edx, 0x3a04
sub rsp, 0x20
call fcn.1400993fb
mov rcx, qword [rbp + 0x138]
add rsp, 0x20
mov cl, byte [rcx]
cmp cl, 0
sete dl
mov byte [rbp - 0x2b], dl
cmp cl, 0
mov byte [rbp - 0x2a], al
je 0x140178918
mov al, byte [rbp - 0x2b]
mov cl, byte [rbp - 0x2a]
mov byte [rbp - 0x2c], cl
test al, 1
jne 0x14017892e
jmp 0x140178cbf
mov qword [rbp + 0x178], 0
lea rax, [rbp + 0x178]
add rax, 8
mov qword [rbp - 0x40], rax
mov qword [rbp + 0x180], 0
mov ax, 0x2acf
xor ax, 0x2ad0
mov word [rbp + 0x176], ax
lea rcx, [rbp + 0x176]
sub rsp, 0x20
call fcn.140093f60
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x138]
mov qword [rbp - 0x38], rcx
mov al, byte [rax]
mov cl, 0x18
xor cl, 0x18
cmp al, cl
jne 0x140178cbf
mov rax, qword [rbp - 0x38]
mov rcx, qword [rax]
xor eax, eax
sub rax, rcx
xor ecx, ecx
sub rcx, 1
add rax, rcx
xor ecx, ecx
mov edx, ecx
sub rdx, rax
lea rcx, [rbp + 0x178]
sub rsp, 0x20
call fcn.140037460
mov rax, qword [rbp - 0x38]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0x160], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x168], rax
lea rcx, [rbp + 0x178]
lea rdx, [rbp + 0x160]
sub rsp, 0x20
call fcn.14016b450
mov rax, qword [rbp - 0x40]
mov cl, byte [rbp - 0x2c]
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x58], rax
mov rdx, qword [rbp + 0x178]
mov qword [rbp - 0x50], rdx
mov byte [rax + rdx + 8], cl
movabs rax, 0x5abbdc282dfd468c
movabs rcx, 0x5abbdc282dfd468c
xor rax, rcx
movabs rcx, 0x501cda4aa9646b94
movabs r8, 0x501cda4aa9646b95
xor rcx, r8
sub rax, rcx
mov rcx, rdx
sub rcx, rax
mov qword [rbp - 0x48], rcx
mov rax, rdx
and rax, 0xffffffffffffffff
shl rax, 1
add rdx, 0xffffffffffffffff
sub rdx, rax
xor rdx, 0xffffffffffffffff
mov rax, rcx
xor rax, rdx
and rax, rcx
cmp rax, 0
jge 0x140178a92
sub rsp, 0x20
call fcn.14000f24b
mov rax, qword [rbp - 0x50]
add rsp, 0x20
mov qword [rbp - 0x60], rax
jmp 0x140178aaa
mov rax, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x58]
mov qword [rbp + 0x178], rax
mov byte [rcx + rax + 8], 0
mov qword [rbp - 0x60], rax
mov rcx, qword [rbp + 0x108]
mov rdx, qword [rbp - 0x60]
mov qword [rbp - 0x68], rdx
sub rsp, 0x20
call fcn.140037690
mov rdx, qword [rbp - 0x68]
mov rcx, qword [rbp + 0x108]
mov rax, qword [rbp - 0x58]
add rsp, 0x20
mov qword [rbp + 0x150], rdx
mov qword [rbp + 0x158], rax
lea rdx, [rbp + 0x150]
sub rsp, 0x20
call fcn.14016b450
mov rax, qword [rbp - 0x10]
mov rcx, qword [rbp + 0x130]
mov rdx, qword [rbp + 0x108]
add rsp, 0x20
mov r8, qword [rax]
mov qword [rcx], r8
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.1401769f0
mov rax, qword [rbp - 0x58]
add rsp, 0x20
mov rax, qword [rax]
movabs rdx, 0x4000000000000000
mov rcx, rax
xor rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
or rax, rdx
and rax, rcx
cmp rax, 0
jne 0x140178cc4
mov eax, dword [0x14027c538]
mov ecx, dword [0x14027c53c]
mov r8d, eax
xor r8d, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
and r8d, edx
xor eax, 0xffffffff
mov edx, 0xc5711b4b
xor edx, 0x3a8ee4b4
xor ecx, edx
and eax, ecx
or r8d, eax
xor r8d, 0xffffffff
mov ecx, 0xb68921bb
xor ecx, 0x4976de44
mov eax, r8d
xor eax, ecx
and eax, 0x250fb503
mov r9d, 0xb44965e7
xor r9d, 0x9146d0e4
mov ecx, 0x16d4de28
xor ecx, 0xe92b21d7
xor r9d, ecx
and r8d, r9d
mov ecx, 0xca641195
xor ecx, 0xae6717c7
mov edx, 0x80c7ce4f
xor edx, 0x7f3831b0
xor ecx, edx
and ecx, 0x250fb503
mov edx, 0x3c8a8c68
xor edx, 0x58898a3a
and edx, r9d
or eax, r8d
or ecx, edx
xor eax, ecx
mov ecx, 0x991e9a75
xor ecx, 0x4a3359d0
xor edx, edx
div ecx
mov edx, 0xcd2ec875
xor edx, 0xcd2ec874
mov ecx, eax
add ecx, edx
xor eax, 0xffffffff
mov edx, 0xeaff5f8c
xor edx, 0xa12a8080
or eax, edx
add eax, ecx
cmp eax, 0xbb476937
ja 0x140178e80
mov rcx, qword [rbp - 0x58]
mov eax, dword [0x14027c540]
xor eax, 0x73b13995
mov r8d, dword [0x14027c544]
and eax, eax
xor eax, 0xffffffff
mov edx, r8d
xor edx, 0xffffffff
xor r8d, 0xffffffff
or edx, r8d
and eax, edx
xor eax, 0xffffffff
or eax, eax
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xdaac9b7a
mov r8d, 0xffffffff
xor r8d, 0xdaac9b7a
and edx, r8d
or eax, edx
xor eax, 0xffffffff
add eax, 0xd30713ca
add eax, 0xb437aaa3
sub eax, 0xd30713ca
mov edx, 0xb14b5efd
xor edx, 0xc1d74aa2
or eax, edx
mov dword [rbp - 0x6c], eax
sub rsp, 0x20
call fcn.14001d1d6
mov eax, dword [rbp - 0x6c]
add rsp, 0x20
cmp eax, 0x7f2f83d1
jae 0x140178e80
jmp 0x140178cc4
jmp 0x140178e25
mov rax, qword [rbp + 0x138]
mov al, byte [rax]
cmp al, 0
je 0x140178cda
jmp 0x140178e25
mov ecx, 0x7ce
mov edx, 0x6fd8
sub rsp, 0x20
call fcn.1400993fb
add rsp, 0x20
mov cx, ax
mov rax, qword [rbp + 0x138]
mov word [rbp - 0x6e], cx
cmp byte [rax], 0
jne 0x140178e25
mov rcx, qword [rbp + 0x108]
mov ax, word [rbp - 0x6e]
mov byte [rbp - 0x79], al
mov edx, 1
sub rsp, 0x20
call fcn.140037690
mov rcx, qword [rbp + 0xf8]
mov r8b, byte [rbp - 0x79]
mov rax, qword [rbp + 0x108]
add rsp, 0x20
mov rcx, qword [rcx]
mov rdx, qword [rax]
mov byte [rcx + rdx + 8], r8b
mov rcx, qword [rax]
mov rax, rcx
add rax, 1
mov qword [rbp - 0x78], rax
mov rdx, rcx
and rdx, rdx
movabs r8, 0x98ea5d4f7aaeb3d6
movabs r9, 0x6715a2b085514c29
xor r8, r9
xor rdx, r8
xor rdx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
or rdx, r8
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
mov r9, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
or r8, r9
and rcx, r8
movabs r8, 0xf3d8b49bfcffa287
movabs r9, 0xc274b6403005d78
xor r8, r9
xor rcx, r8
xor rdx, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
or rdx, rcx
mov rcx, rax
xor rcx, rdx
xor rcx, 0xffffffffffffffff
or rax, rdx
and rax, rcx
movabs rcx, 0x1d288119a77dd3c2
movabs rdx, 0x1d288119a77dd3c2
xor rcx, rdx
cmp rax, rcx
jge 0x140178e08
sub rsp, 0x20
call fcn.14000f24b
add rsp, 0x20
jmp 0x140178e25
mov rcx, qword [rbp - 0x78]
mov rax, qword [rbp + 0xf8]
mov rdx, qword [rbp + 0x108]
mov byte [r8 - 0x75], r9b
test eax, edi
add byte [rax], al
add byte [rax - 0x75], cl
xchg ebp, eax
or byte [rcx], al
add byte [rax], al
mov qword [rdx], rcx
mov rax, qword [rax]
mov byte [rax + rcx + 8], 0
lea rsp, [rbp + 0x198]
pop rsi
pop rbp
ret
fist dword [rsi + 0x22]
invalid
cmovns edi, dword [rcx - 0x35]
jmp 0x140177b50
mov word [rdx], es
std
test eax, 0xffee7de9
call qword [rcx - 0x16426bfd]
sub ebp, edi
invalid
xchg ecx, eax
add edx, dword [rbp + rdi*4 - 0x10d417]
invalid
out dx, eax
push rdi
invalid
add byte [0x12d00ee5a], cl
invalid
cli
out dx, eax
jp 0x140178e0a
jmp 0x1401783b6
sub al, 0x64
call 0x1367977fe
invalid
mov esi, 0xe9d457e2
div edi
invalid
push rdi
int3