Function at 0x140145730
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
sub rsp, 0x308
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x1b0], rdx
mov qword [rbp + 0x1e8], rcx
mov eax, 0x10
mov qword [rbp + 0x1d0], rax
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x1d0]
mov rcx, rsp
mov qword [rbp + 0x1b8], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x1d0]
mov rcx, rsp
mov qword [rbp + 0x1c0], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x1d0]
mov rcx, rsp
mov qword [rbp + 0x1c8], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x1d0]
mov rcx, rsp
mov qword [rbp + 0x1d8], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x1e0], rax
sub rsp, 0x20
call fcn.140149380
mov rcx, qword [rbp + 0x1e8]
add rsp, 0x20
mov qword [rbp + 0x1f8], rax
add rax, 0x50
mov qword [rbp + 0x1f0], rax
sub rsp, 0x20
mov edx, 1
call fcn.140145040
mov rcx, qword [rbp + 0x1f8]
add rsp, 0x20
mov rdx, rax
mov qword [rbp + 0x200], rdx
mov cl, byte [rcx + 0x50]
test cl, cl
setne cl
test rax, rax
sete al
or cl, al
xor eax, eax
test cl, 1
mov byte [rbp + 0x20f], al
jne 0x140146ec9
mov rax, qword [rbp + 0x1e0]
mov rdx, qword [rbp + 0x1e8]
mov rcx, qword [rbp + 0x200]
movsxd r8, dword [rcx + 4]
mov qword [rbp + 0x170], r8
movsxd rcx, dword [rcx]
lea r8, [rbp + 0x278]
add r8, 8
mov qword [rbp + 0x178], r8
add rcx, rdx
mov qword [rbp + 0x180], rcx
lea rcx, [rbp + 0x268]
add rcx, 8
mov qword [rbp + 0x188], rcx
lea rcx, [rbp + 0x228]
add rcx, 8
mov qword [rbp + 0x190], rcx
lea rcx, [rbp + 0x210]
add rcx, 8
mov qword [rbp + 0x198], rcx
add rax, 8
mov qword [rbp + 0x1a0], rax
xor eax, eax
mov qword [rbp + 0x1a8], rax
mov rcx, qword [rbp + 0x170]
mov rax, qword [rbp + 0x1a8]
mov qword [rbp + 0x168], rax
cmp rax, rcx
jae 0x140146dec
mov rcx, qword [rbp + 0x168]
mov rax, qword [rbp + 0x180]
mov rdx, qword [rbp + 0x178]
mov qword [rbp + 0x278], 0
mov qword [rdx], 0
add rax, rcx
mov qword [rbp + 0x158], rax
mov eax, dword [rax]
mov dword [rbp + 0x160], eax
mov ecx, 0xa3312092
xor ecx, 0xa3312092
cmp eax, ecx
sete al
mov byte [rbp + 0x167], al
test al, 1
jne 0x14014593e
jmp 0x14014595b
mov rax, qword [rbp + 0x158]
mov eax, dword [rax + 0x10]
mov ecx, 0x31190128
xor ecx, 0x31190128
cmp eax, ecx
je 0x140146dec
mov rdx, qword [rbp + 0x1e8]
mov rax, qword [rbp + 0x158]
movsxd r8, dword [rax + 0xc]
mov rcx, r8
add rcx, rdx
mov qword [rbp + 0x150], rcx
mov rax, rcx
xor rax, rdx
mov r9, rcx
xor r9, r8
movabs rdx, 0x725cbdf3c072ca72
movabs r10, 0x8da3420c3f8d358d
xor rdx, r10
xor r9, rdx
mov rdx, r8
and rdx, r9
shl rdx, 1
sub rdx, r8
sub rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x1401459dd
sub rsp, 0x20
call fcn.140007e9d
mov rax, qword [rbp + 0x168]
add rsp, 0x20
mov qword [rbp + 0x148], rax
jmp 0x140146c03
mov rcx, qword [rbp + 0x150]
mov eax, dword [rbp + 0x160]
mov r8b, byte [rbp + 0x167]
mov rdx, qword [rbp + 0x158]
mov edx, dword [rdx + 0x10]
movsxd r9, edx
mov qword [rbp + 0x120], r9
test r8b, 1
cmovne eax, edx
cdqe
mov qword [rbp + 0x128], rax
mov rax, qword [0x140269618]
sub rsp, 0x20
call qword [rax]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1b0]
mov qword [rbp + 0x130], rcx
mov rcx, qword [0x140268930]
mov qword [rbp + 0x278], rcx
mov rcx, qword [0x140268938]
mov qword [rbp + 0x280], rcx
mov rcx, qword [rax]
mov qword [rbp + 0x138], rcx
movabs rdx, 0xc1fb36668e590a3
movabs rax, 0xc1fb36668e590a3
xor rdx, rax
xor eax, eax
cmp rcx, rdx
mov byte [rbp + 0x147], al
je 0x140145f41
mov rax, qword [rbp + 0x138]
cmp rax, 1
jge 0x140145aa3
xor eax, eax
mov byte [rbp + 0x11f], al
jmp 0x140145f35
mov rcx, qword [rbp + 0x138]
mov rax, qword [rbp + 0x188]
mov qword [rbp + 0x268], 0
mov qword [rax], 0
movabs rax, 0x85e3b795462e384e
movabs rdx, 0x85e3b795462e384e
xor rax, rdx
sub rax, rcx
xor ecx, ecx
sub rcx, 1
add rax, rcx
xor ecx, ecx
mov edx, ecx
sub rdx, rax
lea rcx, [rbp + 0x268]
sub rsp, 0x20
call fcn.14001bb40
add rsp, 0x20
lea rcx, [rbp + 0x268]
lea rdx, [0x140268940]
sub rsp, 0x20
call fcn.140146f30
mov rax, qword [rbp + 0x1b0]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0x258], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x260], rax
lea rcx, [rbp + 0x268]
lea rdx, [rbp + 0x258]
sub rsp, 0x20
call fcn.140146f30
add rsp, 0x20
mov rax, qword [rbp + 0x268]
mov qword [rbp + 0x248], rax
mov rax, qword [rbp + 0x270]
mov qword [rbp + 0x250], rax
lea rcx, [rbp + 0x278]
lea rdx, [rbp + 0x248]
sub rsp, 0x20
call fcn.140014570
add rsp, 0x20
mov word [rbp + 0x246], 0x55d
lea rcx, [rbp + 0x246]
sub rsp, 0x20
call fcn.140067800
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1f0]
mov qword [rbp + 0x110], rcx
mov al, byte [rax]
mov cl, 0x37
xor cl, 0x37
cmp al, cl
jne 0x140145f22
mov rcx, qword [rbp + 0x1b8]
mov rax, qword [rbp + 0x110]
mov rdx, qword [rax]
mov qword [rcx], rdx
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.1401471c2
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1f0]
mov qword [rbp + 0x108], rcx
cmp byte [rax], 0
jne 0x140145f22
mov eax, dword [0x140258df8]
xor eax, 0x9b2b9c53
mov edx, dword [0x140258dfc]
mov ecx, 0xb79574d9
xor ecx, 0xfe2c79e8
xor edx, ecx
mov ecx, 0x872d26a7
xor ecx, 0x872d26a7
sub ecx, edx
add eax, ecx
and eax, 0x7b8e0a9b
mov ecx, 0xe235023f
xor ecx, 0x5d62a832
or eax, ecx
mov ecx, 0x77cb9273
xor ecx, 0x88346d8c
mov edx, eax
xor edx, ecx
and edx, 0xbf9dc298
mov r8d, 0xffffffff
xor r8d, 0xbf9dc298
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xbf9dc298
mov r8d, 0x54381b40
xor r8d, 0xeba5d9d8
or eax, r8d
imul eax, edx
add eax, ecx
cmp eax, 0xd5894b7f
je 0x140146ede
mov rdx, qword [rbp + 0x108]
mov rcx, qword [rbp + 0x130]
mov r8d, dword [0x140258e00]
imul r8d, dword [0x140258e04]
mov eax, r8d
xor eax, 0xffffffff
mov r9d, 0x463e2cc8
xor r9d, 0xb0ef4aec
mov r10d, 0x1a4c9c59
xor r10d, 0xe5b363a6
xor r9d, r10d
and eax, r9d
xor r8d, 0xffffffff
mov r9d, 0xffffffff
xor r9d, 0xf6d16624
and r8d, r9d
or eax, r8d
xor eax, 0xffffffff
sub eax, 0x8687ceb2
mov r9d, 0x905439fa
xor r9d, 0x7c973181
mov r8d, eax
and r8d, r9d
shl r8d, 1
xor eax, 0xecc3087b
add eax, r8d
mov dword [rbp + 0xf4], eax
mov eax, 0x485e61c3
xor eax, 0x69fe23d6
mov dword [rbp + 0xf0], eax
mov rax, qword [0x140269600]
sub rsp, 0x20
call qword [rax]
mov ecx, dword [rbp + 0xf0]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0xf4]
mov qword [rbp + 0xf8], rdx
cmp rdx, 0
sete dl
mov byte [rbp + 0x107], dl
cmp eax, ecx
jbe 0x140145c9b
mov al, byte [rbp + 0x107]
test al, 1
jne 0x140145df8
jmp 0x140145d81
mov rax, qword [rbp + 0x1f0]
cmp byte [rax], 0
jne 0x140145df3
mov rcx, qword [rbp + 0xf8]
mov rax, qword [rbp + 0x178]
mov r8, qword [rbp + 0x278]
mov rax, qword [rax]
add rax, 8
lea rdx, [0x140268970]
cmp r8, 0
cmove rax, rdx
mov qword [rbp + 0x238], rax
lea rdx, [rbp + 0x238]
mov r8d, 8
sub rsp, 0x20
call fcn.140145244
mov rax, qword [rbp + 0x1f0]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x9c
xor cl, 0x9c
cmp al, cl
je 0x140145df8
jmp 0x140145f22
mov ax, 0x84c8
xor ax, 0x8ec8
mov word [rbp + 0x244], ax
lea rcx, [rbp + 0x244]
sub rsp, 0x20
call fcn.140067800
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1f0]
mov qword [rbp + 0xe8], rcx
cmp byte [rax], 0
jne 0x140145f22
mov rcx, qword [rbp + 0x1c0]
mov rax, qword [rbp + 0xe8]
mov rdx, qword [rax]
mov qword [rcx], rdx
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.1401471c2
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1f0]
mov qword [rbp + 0xe0], rcx
cmp byte [rax], 0
jne 0x140145f22
mov rdx, qword [rbp + 0xe0]
mov rcx, qword [rbp + 0x130]
mov rax, qword [0x140269600]
sub rsp, 0x20
call qword [rax]
add rsp, 0x20
mov qword [rbp + 0xd8], rax
cmp rax, 0
je 0x140145f15
mov rax, qword [rbp + 0x1f0]
cmp byte [rax], 0
jne 0x140145f10
mov rdx, qword [rbp + 0x1c8]
mov rcx, qword [rbp + 0xd8]
mov rax, qword [rbp + 0x178]
mov r9, qword [rbp + 0x278]
mov rax, qword [rax]
add rax, 8
lea r8, [0x140268970]
cmp r9, 0
cmove rax, r8
mov qword [rdx], rax
mov r8d, 8
sub rsp, 0x20
call fcn.140145244
mov rax, qword [rbp + 0x1f0]
add rsp, 0x20
cmp byte [rax], 0
je 0x140145f15
jmp 0x140145f22
mov al, 1
mov byte [rbp + 0x11f], al
jmp 0x140145f35
mov rax, qword [rbp + 0x168]
mov qword [rbp + 0x148], rax
jmp 0x140146c03
mov al, byte [rbp + 0x11f]
mov byte [rbp + 0x147], al
mov rcx, qword [rbp + 0x128]
mov rdx, qword [rbp + 0x1e8]
mov r8, qword [rbp + 0x120]
mov al, byte [rbp + 0x147]
mov r9, rdx
xor r9, 0xffffffffffffffff
xor r10d, r10d
sub r10, 1
sub r9, r10
sub r8, r9
mov qword [rbp + 0xb8], r8
xor rdx, 0xffffffffffffffff
xor r8d, r8d
sub r8, 1
sub rdx, r8
sub rcx, rdx
mov qword [rbp + 0xc0], rcx
cmp al, 0
sete al
mov byte [rbp + 0xcf], al
xor eax, eax
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0xb0], rax
mov eax, dword [0x140258e08]
mov ecx, dword [0x140258e0c]
xor ecx, 0x2c6ca07e
xor edx, edx
div ecx
mov ecx, eax
mov eax, 0x1efd3d0a
xor eax, 0xe102c2f5
xor ecx, eax
mov edx, 0xffffffff
xor edx, 0x3aa0b195
mov eax, 0xffffffff
xor eax, 0x9dd5d2e9
or ecx, edx
or eax, 0x9dd5d2e9
mov edx, 0x5f902114
xor edx, 0xa06fdeeb
xor ecx, edx
and ecx, eax
add ecx, 0x2dd9c7a3
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0x97c13be0
xor edx, 0x5956b989
mov r8d, 0xe9227b59
xor r8d, 0x16dd84a6
xor edx, r8d
or eax, edx
and ecx, 0xce978269
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x17c7a7db
xor ecx, 0x792512ba
cmp eax, ecx
ja 0x140146ee7
mov r8, qword [rbp + 0xb0]
mov rcx, qword [rbp + 0xc0]
mov rdx, qword [rbp + 0xb8]
mov r11d, dword [0x140258e10]
mov eax, dword [0x140258e14]
xor eax, 0xc39014b7
sub r11d, eax
mov r9d, r11d
xor r9d, 0xffffffff
mov eax, 0x65310ed7
xor eax, 0xd59a606f
and eax, r9d
mov r10d, 0xffffffff
xor r10d, 0xb0ab6eb8
and r11d, r10d
mov r9d, 0xa73e0767
xor r9d, 0x8e02bbb8
mov esi, 0x2f9de4f0
xor esi, 0xd0621b0f
xor r9d, esi
mov esi, 0x7567ea6e
xor esi, 0xc5cc84d6
and r9d, esi
and r10d, 0x293cbcdf
or eax, r11d
or r9d, r10d
xor eax, r9d
imul r9d, eax, 0x93e85768
mov eax, r9d
or eax, eax
mov r10d, 0x57afd4be
xor r10d, 0xa8502b41
xor eax, r10d
mov r10d, 0x6386b2cc
or r10d, 0x6386b2cc
xor r10d, 0xffffffff
xor eax, 0xffffffff
xor r10d, 0xffffffff
and eax, r10d
xor r9d, 0xffffffff
mov r10d, 0xffffffff
xor r10d, 0x6386b2cc
and r9d, r10d
mov r10d, 0xfbcd3403
xor r10d, 0x432cbfc
xor eax, r10d
mov r10d, 0xcb1630e6
xor r10d, 0x34e9cf19
xor r9d, r10d
and eax, r9d
xor r9d, r9d
sub r9, r8
sub rdx, r9
mov qword [rbp + 0x98], rdx
xor edx, edx
sub rdx, rcx
movabs rcx, 0x30a8eb04ddc29bdb
movabs r9, 0x30a8eb04ddc29bdb
xor rcx, r9
sub rcx, r8
add rdx, rcx
xor ecx, ecx
sub rcx, rdx
mov qword [rbp + 0xa0], rcx
cmp qword [rcx], 0x7fffffff
seta cl
mov byte [rbp + 0xaf], cl
cmp eax, 0x2263f92a
jbe 0x14014604c
mov al, byte [rbp + 0xaf]
test al, 1
jne 0x1401461ad
jmp 0x140146203
mov rcx, qword [rbp + 0x150]
mov rax, qword [0x140269618]
sub rsp, 0x20
call qword [rax]
mov rdx, qword [rbp + 0xa0]
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x140269600]
mov rax, qword [rax]
mov rdx, qword [rdx]
and rdx, 0xffff
sub rsp, 0x20
call rax
mov rcx, qword [rbp + 0x98]
add rsp, 0x20
mov qword [rcx], rax
mov qword [rbp + 0x90], rax
jmp 0x140146214
mov rax, qword [rbp + 0x98]
mov rax, qword [rax]
mov qword [rbp + 0x90], rax
mov rax, qword [rbp + 0x90]
mov qword [rbp + 0x88], rax
cmp rax, 0
je 0x140146bde
mov rax, qword [rbp + 0x88]
mov rcx, qword [rbp + 0xa0]
cmp rax, qword [rcx]
jne 0x140146a78
mov r8, qword [rbp + 0x1e8]
mov rcx, qword [rbp + 0x88]
shl rcx, 0x20
sar rcx, 0x20
mov rdx, rcx
add rdx, r8
mov qword [rbp + 0x80], rdx
mov rax, rdx
xor rax, r8
xor rdx, rcx
mov rcx, rax
xor rcx, rdx
xor rcx, 0xffffffffffffffff
or rax, rdx
and rax, rcx
cmp rax, 0
jge 0x1401462a9
sub rsp, 0x20
call fcn.140007e9d
mov rax, qword [rbp + 0x168]
add rsp, 0x20
mov qword [rbp + 0x148], rax
jmp 0x140146c03
mov rcx, qword [rbp + 0x130]
mov rdx, qword [rbp + 0x80]
add rdx, 2
mov qword [rbp + 0x70], rdx
mov rax, qword [0x140269600]
sub rsp, 0x20
call qword [rax]
add rsp, 0x20
mov qword [rbp + 0x78], rax
cmp rax, 0
jge 0x1401462fe
sub rsp, 0x20
call fcn.14000b3d7
mov rax, qword [rbp + 0x168]
add rsp, 0x20
mov qword [rbp + 0x148], rax
jmp 0x140146c03
mov eax, dword [0x140258e18]
xor edx, edx
div dword [0x140258e1c]
mov ecx, 0x8d237c37
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xc735c6de
mov edx, 0xffffffff
xor edx, 0xc735c6de
and eax, edx
sub eax, ecx
and eax, eax
xor eax, 0xffffffff
mov ecx, 0x2b9c44d5
xor ecx, 0x3ec87e27
mov edx, 0x418cc06e
xor edx, 0xbe733f91
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0x15543af2
or ecx, edx
xor eax, 0xffffffff
mov edx, 0x3f23cf1d
xor edx, 0xc0dc30e2
xor ecx, edx
or eax, ecx
cmp eax, 0xbfede671
jae 0x140146ef0
mov rcx, qword [rbp + 0x98]
mov rdx, qword [rbp + 0x78]
mov eax, dword [0x140258e20]
sub eax, dword [0x140258e24]
mov r8d, 0x78da15c0
xor r8d, 0x176d5890
mov r9d, 0xcc0f5223
xor r9d, 0x33f0addc
xor r8d, r9d
mov r9d, 0xc3518a42
xor r9d, 0xc3518a42
mov r10d, 0x1cf1da6b
xor r10d, 0x1cf1da6a
sub r9d, r10d
sub r8d, r9d
sub eax, r8d
mov r9d, 0x1e2bcfa6
xor r9d, 0x3bb655c
mov r8d, eax
xor r8d, r9d
mov r9d, 0x217dcdb9
xor r9d, 0xde823246
xor r8d, r9d
or eax, 0x1d90aafa
and eax, r8d
or eax, 0x54f4d91b
mov qword [rcx], rdx
cmp qword [rbp + 0x278], 0
sete cl
mov byte [rbp + 0x6f], cl
cmp eax, 0xe8e9901
jb 0x140146376
mov al, byte [rbp + 0x6f]
test al, 1
jne 0x140146a78
jmp 0x140146429
mov al, byte [rbp + 0xcf]
test al, 1
jne 0x14014643c
jmp 0x140146447
xor eax, eax
mov qword [rbp + 0x60], rax
jmp 0x1401468fa
mov rcx, qword [rbp + 0x1d8]
mov word [rcx], 0x155
sub rsp, 0x20
call fcn.140067800
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1f0]
mov qword [rbp + 0x50], rcx
mov cl, byte [rax]
mov dl, 7
xor dl, 7
xor eax, eax
cmp cl, dl
mov qword [rbp + 0x58], rax
jne 0x14014675e
sub rsp, 0x20
call fcn.140149380
mov rcx, qword [rbp + 0x70]
call fcn.1401494a0
mov rcx, qword [rbp + 0x70]
add rsp, 0x20
mov qword [rbp + 0x40], rax
sub rsp, 0x20
call fcn.1401494a0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x40]
mov qword [rbp + 0x48], rcx
cmp rax, 0
jl 0x1401464f4
mov rcx, qword [rbp + 0x70]
sub rsp, 0x20
call fcn.1401494a0
mov rdx, qword [rbp + 0x70]
add rsp, 0x20
mov r8, rax
lea rcx, [rbp + 0x228]
sub rsp, 0x20
call fcn.1400a8d60
add rsp, 0x20
jmp 0x140146533
mov rcx, qword [rbp + 0x48]
movabs rdx, 0x4861d62c1f1938c9
movabs rax, 0x4861d62c1f1938c9
xor rdx, rax
movabs r8, 0xaa6c40e61c379234
movabs rax, 0xd593bf19e3c86dcb
xor r8, rax
sub rsp, 0x20
call fcn.14000cee2
add rsp, 0x20
mov rcx, qword [rbp + 0x1f0]
mov rax, qword [rbp + 0x190]
mov rdx, qword [rbp + 0x228]
mov qword [rbp + 0x30], rdx
mov rax, qword [rax]
mov qword [rbp + 0x38], rax
mov cl, byte [rcx]
mov dl, 0xff
xor dl, 0xff
cmp cl, dl
mov qword [rbp + 0x58], rax
jne 0x14014675e
mov rcx, qword [rbp + 0x30]
mov rdx, qword [rbp + 0x50]
mov rax, qword [rdx]
mov rdx, qword [rdx + 8]
mov qword [rbp + 0x28], rdx
cmp rax, rcx
je 0x140146587
jmp 0x14014676b
mov rax, qword [rbp + 0x30]
cmp rax, 0
je 0x140146622
mov rcx, qword [rbp + 0x30]
mov rax, qword [rbp + 0x38]
mov rdx, qword [rbp + 0x28]
add rdx, 8
mov qword [rbp + 8], rdx
add rax, 8
mov qword [rbp + 0x10], rax
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rbp + 0x18], rax
xor eax, eax
mov qword [rbp + 0x20], rax
mov rcx, qword [rbp + 0x18]
mov rax, qword [rbp + 0x20]
mov qword [rbp], rax
cmp rax, rcx
je 0x140146622
mov r8, qword [rbp]
mov rax, qword [rbp + 0x10]
mov rcx, qword [rbp + 8]
mov cl, byte [rcx + r8]
mov dl, byte [rax + r8]
mov rax, r8
and rax, 1
movabs r9, 0x757fa5015e9be3ce
movabs r10, 0x757fa5015e9be3cf
xor r9, r10
or r8, r9
add rax, r8
cmp cl, dl
mov qword [rbp + 0x20], rax
je 0x1401465c4
jmp 0x14014676b
mov eax, dword [0x140258e28]
mov edx, dword [0x140258e2c]
mov r8d, eax
and r8d, edx
mov ecx, 0x82eb4b67
xor ecx, 0x82eb4b65
imul ecx, r8d
add eax, edx
sub eax, ecx
add eax, 0xc2ebed68
sub eax, 0xadff0142
add eax, 0x7400853d
mov ecx, 0x5c1a66c2
xor ecx, 0xf1e56780
add eax, ecx
sub eax, 0x7fdb5f7c
mov ecx, 0x3dbfcddb
xor ecx, 0x208e47bc
cmp eax, ecx
jb 0x140146ef9
mov rcx, qword [rbp + 0x78]
mov rax, qword [rbp + 0x178]
mov edx, dword [0x140258e30]
sub edx, dword [0x140258e34]
sub edx, 0x57c38729
add edx, 0x46f6d41f
add edx, 0x57c38729
mov r10d, 0xffffffff
xor r10d, 0xae5dad54
mov r9d, edx
and r9d, r10d
mov r8d, edx
or r8d, r10d
xor r8d, 0xffffffff
imul r8d, r9d
mov r9d, edx
and r9d, 0xae5dad54
mov r10d, 0x7c9f365f
xor r10d, 0xd2c29b0b
or edx, r10d
imul edx, r9d
add edx, r8d
xor edx, 0xb6017c7d
mov dword [rbp - 8], edx
mov edx, 0x129a469b
xor edx, 0x6a18e067
mov dword [rbp - 0xc], edx
mov r8, qword [rbp + 0x278]
mov rdx, qword [rax]
add rdx, 8
lea rax, [0x140268970]
cmp r8, 0
cmove rdx, rax
sub rsp, 0x20
call fcn.140145349
mov rdx, qword [rbp + 0x1f0]
mov ecx, dword [rbp - 0xc]
mov eax, dword [rbp - 8]
add rsp, 0x20
cmp byte [rdx], 0
sete dl
mov byte [rbp - 1], dl
cmp eax, ecx
je 0x14014667b
mov rax, qword [rbp + 0x38]
mov cl, byte [rbp - 1]
test cl, 1
mov qword [rbp + 0x58], rax
jne 0x14014676b
jmp 0x14014675e
mov rax, qword [rbp + 0x58]
mov qword [rbp - 0x18], rax
jmp 0x140146992
mov word [rbp + 0x226], 0x4f4
lea rcx, [rbp + 0x226]
sub rsp, 0x20
call fcn.140067800
mov rcx, qword [rbp + 0x1f0]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x38]
mov qword [rbp - 0x20], rdx
mov cl, byte [rcx]
mov dl, 0x21
xor dl, 0x21
cmp cl, dl
mov qword [rbp + 0x60], rax
jne 0x1401468fa
mov rax, qword [rbp - 0x20]
mov rcx, qword [rax]
mov qword [rbp - 0x30], rcx
mov rax, qword [rax + 8]
mov qword [rbp - 0x38], rax
sub rsp, 0x20
call fcn.140149380
mov rcx, qword [rbp - 0x38]
mov r8, qword [rbp - 0x30]
add rsp, 0x20
add rcx, 8
lea rdx, [0x140268970]
cmp r8, 0
cmove rcx, rdx
mov qword [rbp - 0x28], rcx
cmp byte [rax + 0x50], 0
jne 0x140146844
mov rax, qword [rbp - 0x30]
cmp rax, 0
jge 0x140146828
mov rcx, qword [rbp - 0x30]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14000cee2
add rsp, 0x20
jmp 0x140146844
mov r8, qword [rbp - 0x30]
mov rdx, qword [rbp - 0x28]
lea rcx, [rbp + 0x210]
sub rsp, 0x20
call fcn.1400a8d60
add rsp, 0x20
mov rax, qword [rbp + 0x1f0]
mov rcx, qword [rbp + 0x198]
mov rdx, qword [rbp + 0x210]
mov qword [rbp - 0x48], rdx
mov rcx, qword [rcx]
mov qword [rbp - 0x40], rcx
cmp byte [rax], 0
jne 0x140146907
mov rcx, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x1a0]
mov rdx, qword [rbp - 0x40]
mov r8, qword [rbp - 0x48]
mov qword [rcx], r8
mov qword [rax], rdx
sub rsp, 0x20
call fcn.1401471c2
mov rdx, qword [rbp + 0x70]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1f0]
mov al, byte [rax]
test al, al
sete al
sub rcx, rdx
sete cl
and al, cl
test al, 1
jne 0x1401468c0
jmp 0x140146907
mov rcx, qword [rbp + 0x78]
mov rax, qword [rbp + 0x178]
mov r8, qword [rbp + 0x278]
mov rdx, qword [rax]
add rdx, 8
lea rax, [0x140268970]
cmp r8, 0
cmove rdx, rax
sub rsp, 0x20
call fcn.140145349
add rsp, 0x20
jmp 0x140146907
mov rax, qword [rbp + 0x60]
mov qword [rbp - 0x18], rax
jmp 0x140146992
mov rax, qword [rbp + 0x38]
mov rcx, qword [rbp - 0x40]
cmp rcx, 0
mov qword [rbp - 0x18], rax
je 0x140146992
mov rax, qword [rbp + 0x38]
mov rcx, qword [rbp - 0x40]
mov rcx, qword [rcx]
xor rcx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
xor r8, rdx
mov rdx, 0xffffffffffffffff
movabs r9, 0x4fa41b0fa0068194
xor rdx, r9
or rcx, r8
movabs r8, 0x4fa41b0fa0068194
or rdx, r8
xor rcx, 0xffffffffffffffff
and rcx, rdx
cmp rcx, 0
mov qword [rbp - 0x18], rax
jne 0x140146992
mov rcx, qword [rbp - 0x40]
sub rsp, 0x20
call fcn.14000e9f6
mov rax, qword [rbp + 0x38]
add rsp, 0x20
mov qword [rbp - 0x18], rax
mov rax, qword [rbp - 0x18]
mov qword [rbp - 0x50], rax
mov eax, dword [0x140258e38]
xor eax, dword [0x140258e3c]
mov ecx, 0xb588733f
xor ecx, 0x5f873973
add eax, ecx
mov ecx, 0xd1817581
xor edx, edx
div ecx
mov ecx, 0xa79d26a9
xor ecx, 0xd0cacfb
imul eax, ecx
mov ecx, 0x3fd185f8
xor ecx, 0x32438100
cmp eax, ecx
je 0x140146f02
mov rcx, qword [rbp - 0x50]
mov eax, dword [0x140258e40]
xor eax, 0x9154e235
xor edx, edx
div dword [0x140258e44]
and eax, 0xff0b816
sub eax, 0xf516196d
mov r8d, 0x81bbbc15
xor edx, edx
div r8d
cmp rcx, 0
sete cl
mov byte [rbp - 0x51], cl
cmp eax, 0xa6a583e9
ja 0x140146f02
mov al, byte [rbp - 0x51]
test al, 1
jne 0x140146a5a
jmp 0x140146a2e
mov rcx, qword [rbp - 0x50]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x140146a5a
mov rcx, qword [rbp - 0x50]
sub rsp, 0x20
call fcn.14000e9f6
add rsp, 0x20
mov rax, qword [rbp + 0x168]
mov rcx, qword [rbp + 0x1f0]
cmp byte [rcx], 0
mov qword [rbp + 0x148], rax
jne 0x140146c03
mov ecx, dword [0x140258e48]
xor ecx, 0x771e149c
mov edx, dword [0x140258e4c]
mov eax, ecx
xor eax, 0xffffffff
and eax, edx
mov r8d, 0x84c913ec
xor r8d, 0x7b36ec13
xor edx, r8d
and ecx, edx
sub ecx, eax
mov eax, 0xffffffff
xor eax, 0x9d91ea2e
add ecx, eax
mov eax, 0x5d27f36f
xor eax, 0x5d27f36e
add ecx, eax
mov eax, ecx
or eax, eax
mov edx, 0x5937608a
xor edx, 0xa6c89f75
xor eax, edx
mov edx, 0x54a2ad4d
or edx, 0x54a2ad4d
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x54a2ad4d
and ecx, edx
or eax, ecx
mov ecx, 0x9c7d5287
xor ecx, 0x6382ad78
xor eax, ecx
mov ecx, 0xaf5214ee
xor ecx, 0x3696f4bb
sub eax, ecx
cmp eax, 0xfa08a4e4
je 0x140146f0b
mov rcx, qword [rbp + 0xb0]
mov eax, dword [0x140258e50]
xor eax, 0x2b6998e4
add eax, dword [0x140258e54]
mov edx, 0xab4e7039
xor edx, 0xa3e8b728
add eax, edx
mov r8d, 0xdf4ac159
xor edx, edx
div r8d
add eax, 0x64c991f3
add eax, 0xc473087d
sub eax, 0x64c991f3
movabs rdx, 0x90fac11d1baebc58
movabs r8, 0x90fac11d1baebc58
xor rdx, r8
sub rdx, rcx
movabs rcx, 0xfa27693f9a8c9b64
movabs r8, 0xfa27693f9a8c9b64
xor rcx, r8
movabs r8, 0xaa11541a58cc8574
movabs r9, 0xaa11541a58cc857c
xor r8, r9
sub rcx, r8
add rdx, rcx
movabs rcx, 0x33112f672e5353c2
movabs r8, 0x33112f672e5353c2
xor rcx, r8
sub rcx, rdx
mov qword [rbp - 0x60], rcx
cmp eax, 0x216859f5
jb 0x140146f0b
mov rax, qword [rbp - 0x60]
mov qword [rbp + 0xd0], rax
jmp 0x140145fa3
mov rax, qword [rbp + 0x168]
mov rcx, 0xffffffffffffffff
xor rcx, 0x14
xor edx, edx
sub rdx, 1
sub rcx, rdx
sub rax, rcx
mov qword [rbp + 0x148], rax
mov rax, qword [rbp + 0x178]
mov rcx, qword [rbp + 0x148]
mov qword [rbp - 0x70], rcx
mov rax, qword [rax]
mov qword [rbp - 0x68], rax
cmp rax, 0
je 0x140146e9d
mov r8d, dword [0x140258e58]
xor r8d, dword [0x140258e5c]
mov eax, 0x87be8b0a
xor eax, 0xdc689511
imul r8d, eax
mov ecx, 0x28abc6c6
xor ecx, 0xd7543939
mov eax, r8d
xor eax, ecx
and eax, 0xcf3caac7
mov edx, 0xffffffff
xor edx, 0xcf3caac7
and r8d, edx
mov ecx, 0xffffffff
xor ecx, 0x38a96af3
mov r9d, 0x5d78717
xor r9d, 0xcaeb2dd0
and ecx, r9d
and edx, 0x38a96af3
or eax, r8d
or ecx, edx
xor eax, ecx
mov ecx, 0x98bbbda6
xor ecx, 0x536976ca
xor eax, ecx
cmp eax, 0x57c2c0ab
je 0x140146f14
mov rcx, qword [rbp - 0x68]
mov r9d, dword [0x140258e60]
xor r9d, 0x58068bc3
mov r8d, dword [0x140258e64]
xor r8d, 0xe39b67b9
mov edx, r9d
xor edx, 0xffffffff
mov eax, 0xee259c49
xor eax, 0x1ee4124
and eax, edx
mov r10d, 0xffffffff
xor r10d, 0xefcbdd6d
and r9d, r10d
mov r11d, 0xb9616a98
xor r11d, 0x469e9567
mov edx, r8d
xor edx, r11d
mov r11d, 0x2a9e3402
xor r11d, 0xc555e96f
and edx, r11d
and r8d, r10d
or eax, r9d
or edx, r8d
xor eax, edx
mov edx, eax
xor edx, 0xe5f4f24f
mov r8d, 0xffffffff
xor r8d, 0xe5f4f24f
and eax, r8d
shl eax, 1
sub eax, edx
add eax, 0x1459ae6f
mov r9d, 0xffffffff
xor r9d, 0x4ecbf91
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, 0x4ecbf91
or eax, 0x4ecbf91
imul eax, r8d
add eax, edx
mov rdx, qword [rcx]
mov rcx, rdx
xor rcx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
movabs r9, 0x4000000000000000
xor r8, r9
or rcx, r8
movabs r8, 0x47493030c09171
movabs r9, 0x4047493030c09171
xor r8, r9
and rdx, r8
xor rdx, 0xffffffffffffffff
and rcx, rdx
xor rcx, 0xffffffffffffffff
cmp rcx, 0
sete cl
mov byte [rbp - 0x71], cl
cmp eax, 0x45559db7
jae 0x140146f14
mov al, byte [rbp - 0x71]
test al, 1
jne 0x140146dd6
jmp 0x140146e9d
mov rcx, qword [rbp - 0x68]
sub rsp, 0x20
call fcn.14000e9f6
add rsp, 0x20
jmp 0x140146e9d
mov eax, dword [0x140258e68]
or eax, dword [0x140258e6c]
xor eax, 0x6cae19c1
mov ecx, 0x53ef836a
xor ecx, 0x8cb0912e
xor edx, edx
div ecx
mov r8d, 0x838a4605
xor r8d, 0x8d586d00
mov ecx, 0x53d1a249
xor ecx, 0xac2e5db6
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xed22b05
or eax, 0xed22b05
imul eax, edx
add eax, ecx
cmp eax, 0x47456e51
ja 0x140146f1d
mov ecx, dword [0x140258e70]
mov edx, dword [0x140258e74]
mov eax, ecx
and eax, edx
shl eax, 1
xor ecx, edx
add ecx, eax
and ecx, 0x21c33a7d
mov eax, ecx
and eax, 0x23cdf6c5
xor ecx, 0x23cdf6c5
or eax, ecx
xor eax, 0x4207dbca
cmp eax, 0x87a506b5
jae 0x140146e54
mov al, 1
mov byte [rbp + 0x20f], al
jmp 0x140146ec9
mov rcx, qword [rbp - 0x70]
mov rax, qword [rbp + 0x1f0]
mov dl, byte [rax]
mov r8b, 0xb4
xor r8b, 0xb4
xor eax, eax
cmp dl, r8b
mov qword [rbp + 0x1a8], rcx
mov byte [rbp + 0x20f], al
je 0x1401458c4
mov al, byte [rbp + 0x20f]
and al, 1
movzx eax, al
lea rsp, [rbp + 0x288]
pop rsi
pop rbp
ret
add dword [rcx - 0x5a], eax
xchg edx, eax
jmp 0x140145c9b
mov edi, edx
ret
movsq qword [rdi], qword [rsi]
or edi, dword [rax - 0xb8217]
invalid
jns 0x140146f4a
add dword [rcx + rbp*8 - 0x887], eax
rol byte [rdx - 0x2d16b40e], 0xfa
invalid
invalid
invalid
adc dh, ah
invalid
ja 0x140146f12
retf