Function at 0x140197c98
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x130
movabs r13, 0xa6872f8d68e8e6b6
mov qword [rsp + 0x170], r13
movabs rbx, 0x30417d64f5f401a9
xor r12d, r12d
mov edi, r12d
movabs rax, 0xc77b2f1bdbcddb62
movabs r11, 0xe063d06593cd2649
mov r14, qword [0x14033e070]
imul r14, rax
not r14
movabs rdx, 0x1f9c2f9a680afd95
mov rax, qword [0x14033e060]
xor rax, rdx
and r14, rax
ror r14, 0xa
shr r14, 8
movabs rax, 0x78e035dac4ac6428
mov r8, qword [0x14033e070]
imul r8, rax
add r8, rbx
movabs rax, 0xd35c4fedffffffff
xor r8, rax
shr r8, 0x1f
not r8
movabs r9, 0xcfbe829b0a0bfe57
lea rcx, [r8 + r9]
movabs r15, 0xaaaaaaaaaaaaaaab
mov rax, r15
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea rsi, [0x14033e060]
movzx eax, r8b
movzx ecx, byte [rsi + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x43
and ecx, 0x8000003f
jge 0x140197d8d
dec ecx
or ecx, 0xffffffc0
inc ecx
mov rax, r8
ror rax, cl
not rax
movabs rcx, 0x3c20df74d9cc59bc
mov rdx, rax
imul rdx, rcx
mov qword [rsp + 0x178], rdx
lea r10, [rdx + r9]
mov r9, r8
imul r9, r14
sub r9, r10
xor r9, r13
mov cl, r10b
xor cl, 0xfc
and cl, 0xf
rol r9, cl
movabs rcx, 0x86c2fb140770f91c
imul rax, rcx
movabs rcx, 0x6ba0b6375bd53e6f
add rax, rcx
xor r9, rax
mov rax, r10
mov r13, qword [0x14033e078]
sub rax, r13
xor r9, rax
xor r9, r11
mov rax, r9
and eax, 1
je 0x1401980d1
sub rax, 1
je 0x140197fdb
sub rax, 1
je 0x140197f14
cmp rax, 1
jne 0x140198151
mov rcx, r10
imul rcx, r8
movabs rax, 0xf21988529c3d6015
add rax, r9
xor rcx, rax
ror rcx, 0x30
shr rcx, 0xc
not rcx
mov qword [rsp + 0x170], rcx
movabs rdx, 0x8357278bd658
add rdx, qword [0x14033e088]
movabs rax, 0xcf3c07e3669b0885
xor rdx, rax
movzx eax, cl
movzx ecx, r9b
imul ecx, eax
and cl, 0x3f
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db97f6b3aab
sub rax, r8
mov r8, rdx
xor r8, rax
mov rcx, r8
imul rcx, rbx
mov eax, 0xaeb0e841
add rcx, rax
mov rax, r15
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [rsi + rcx*8]
and cl, 0xf
movabs rbx, 0x9c1ec4daf0ccdc46
sub rbx, qword [rsp + 0x170]
shr rbx, cl
movabs rax, 0xcfc6a723664096e5
mov rcx, qword [rsp + 0x178]
add rcx, rax
mov rax, r15
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r9
imul rax, qword [rsi + rcx*8]
imul rax, r9
sub rax, r14
xor rbx, rax
jmp 0x140198151
movabs rcx, 0xaaaaaa1aaea9157f
mov r8, r9
xor r8, rcx
movabs rcx, 0x1206ed6ca4c933
imul r8, rcx
movabs rcx, 0xffff7e8a88b927a3
imul rdx, rcx
movabs rcx, 0x3f4f27aadcf454be
add r8, rcx
add r8, rdx
movabs rax, 0x277cd7be7c79c21f
mov rcx, r8
xor rcx, rax
mov rax, r15
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, r8
not r10
imul r10, qword [rsi + rcx*8]
xor r10, 0xfffffffffbfcc3af
lea ecx, [r9 - 3]
mov r13b, 0x3f
and cl, r13b
rol r10, cl
movabs rax, 0x5062610000000000
imul r10, rax
mov rcx, r10
ror rcx, 0x14
not rcx
movabs rax, 0x9b2de6b2ce5500e0
imul rcx, rax
mov rax, r8
sub rax, r10
lea rdx, [rcx + rax*4]
mov cl, r14b
and cl, r13b
ror rdx, cl
mov rax, rbx
mov rbx, rdx
imul rbx, rax
jmp 0x140198151
movabs rax, 0x9b6a0f0513fd2853
imul r9, rax
movabs rax, 0xd79435e50d79435f
mul r9
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r9b
sub cl, dl
movabs rdx, 0x5978d07297171949
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov cl, r10b
mov r13b, 0x3f
and cl, r13b
rol r11, cl
movabs rcx, 0xcfbe829b0a0bfe57
add rcx, r9
mov rax, r15
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xfffffd64f5f401a9
mov rax, qword [rsi + rcx*8]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7f26d6352
or r11, rax
mov rbx, qword [0x14033e070]
movabs rax, 0xa6872f8d68e8e6b6
imul rbx, rax
sub rbx, r10
mov rax, r14
sub rax, r11
xor rbx, rax
movabs rax, 0xc7a7c6a6a365635f
xor rbx, rax
mov rax, r9
imul rax, r10
imul rax, rbx
mov rdi, r8
sub rdi, rax
movabs rax, 0x78958946c372f45
add rdi, rax
xor rdi, r14
movzx eax, r8b
imul ecx, eax, 0xfa
and cl, r13b
rol rdi, cl
not rdi
jmp 0x140198151
mov rcx, r9
imul rcx, qword [0x14033e080]
and rcx, r13
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 9
imul r11, r10
mov rdi, r14
not rdi
imul rdi, r8
movabs rax, 0x7cd8a7de7e9432be
imul rdi, rax
imul r14, qword [0x14033e060], 0xfffffffffbc7dbdc
mov rdx, qword [0x14033e068]
sub r14, rdx
mov al, dil
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140198139
dec ecx
or ecx, 0xffffffc0
inc ecx
ror r14, cl
movabs rax, 0xcfbe829b0a0bfe57
add r14, rax
add r14, qword [rsp + 0x178]
movabs rax, 0xff055d7b8edf3873
mov rcx, qword [rsp + 0x170]
xor rcx, rax
mov rax, r15
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r11, rdi
imul r11, qword [rsi + rcx*8]
not r10
imul r10, r9
imul r10, r14
imul r10, rbx
movabs rcx, 0xf5ed7e87896c72af
xor rcx, r8
not rcx
xor rcx, r10
sub rcx, r11
call fcn.140177354
mov qword [0x14034c9d8], rax
mov dword [rsp + 0x178], r12d
mov dword [rsp + 0x178], 0xec50f9bb
mov eax, 0xdcb80b74
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
xor eax, 0x7b86e556
sub eax, dword [0x14033e048]
mov rdx, qword [0x14033e040]
lea ecx, [rdx - 0x4e3c3b34]
add ecx, eax
xor ecx, 0x2b256c88
add ecx, 0x73d1cf41
xor ecx, 0xa10dec1
mov r8d, dword [0x14033e030]
xor r8d, 0x20271687
sub r8d, ecx
mov eax, dword [0x14033e038]
xor eax, 0xdfd8e978
sub r8d, eax
sub r8d, edx
add r8d, 0x255ae6c
xor r8d, 0x40bb6e48
mov dword [rsp + 0x178], r8d
movsxd rax, r8d
mov qword [rsp + 0xb0], rax
mov dword [rsp + 0x170], r12d
mov dword [rsp + 0x170], 0x88b298dc
mov eax, 0xb448d5d3
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
xor eax, 0x80fe61a8
sub eax, dword [0x14033e048]
mov rdx, qword [0x14033e040]
add eax, 0x79123c2f
add eax, edx
xor eax, 0x3149276a
add eax, 0x727aeec7
xor eax, 0xb0c20410
mov ecx, dword [0x14033e030]
xor ecx, 0x203c9e59
sub ecx, eax
mov eax, dword [0x14033e038]
xor eax, 0xdfc361a6
sub ecx, eax
sub ecx, edx
add ecx, 0x673c0e49
xor ecx, 0x41966b6
mov dword [rsp + 0x170], ecx
movsxd rax, ecx
mov qword [rsp + 0x88], rax
mov dword [rsp + 0x20], 0x3b60ccae
mov dword [rsp + 0x24], 0x951ef479
mov dword [rsp + 0x28], 0x43071237
mov dword [rsp + 0x2c], 0x5ab5edeb
mov dword [rsp + 0x30], 0x860522a
mov dword [rsp + 0x34], 0x20cc4f5e
mov dword [rsp + 0x38], 0xbc0fe100
mov dword [rsp + 0x3c], 0xf04ea162
mov dword [rsp + 0x40], 0xcd7b251c
mov r13, r12
movabs rcx, 0x13cce94adbce3bb0
mov r12, rdx
xor edx, edx
mov rax, r13
div rcx
lea r15d, [rdx + 0x37]
movzx r14d, r15w
ror r14w, 8
movzx esi, r14w
shr si, 0xa
movzx eax, r14w
shl ax, 6
or si, ax
movzx edi, si
ror di, 8
movzx r9d, r14w
shr r9w, 0xd
movzx eax, r14w
shl ax, 3
or r9w, ax
movzx edx, r14w
shl dx, 0xd
movzx eax, r14w
shr ax, 3
or dx, ax
movzx r11d, dx
ror r11w, 8
movzx r8d, r14w
shr r8w, 0xc
movzx eax, r14w
shl ax, 4
or r8w, ax
movzx ebx, r14w
not bx
movzx ecx, r14w
ror cx, 1
movzx r10d, word [rsp + r13*2 + 0x20]
sub r10w, si
mov eax, 0x6afe
add r10w, ax
mov eax, 0x9204
sub ax, si
xor r10w, ax
sub r10w, word [0x14033e058]
sub r10w, word [0x14033e050]
add r10w, di
add r10w, r14w
sub r10w, cx
mov eax, 0x6fc1
add r10w, ax
lea eax, [r14 + rsi]
mov ecx, 0x2d07
add ax, cx
xor r10w, ax
sub r10w, dx
sub r10w, r9w
sub r10w, r14w
sub r10w, word [0x14033e048]
sub r10w, 0x50
add r10w, r12w
add r10w, r11w
add r10w, si
movzx eax, r8w
sub ax, r9w
add ax, si
add ax, r14w
xor r10w, ax
movzx eax, r14w
sub ax, r8w
xor ax, r14w
sub r10w, ax
sub r10w, r11w
add r10w, r14w
mov eax, 0x4230
add r10w, ax
movzx eax, r14w
ror ax, 7
mov ecx, 0x4050
sub r11w, cx
add ax, r11w
xor r10w, ax
mov edx, 0x9d7
add edx, r14d
add dx, dx
sub dx, r10w
mov eax, 0x7100
add eax, r14d
mov ecx, 0x2440
xor ax, cx
sub dx, ax
movzx eax, bx
xor ax, word [0x14033e038]
sub dx, ax
movzx eax, r14w
xor ax, word [0x14033e030]
add dx, ax
sub dx, r12w
sub dx, di
sub dx, si
sub dx, r15w
movzx eax, r14w
movzx ecx, bx
imul ecx, eax
xor cx, dx
mov word [rsp + r13*2 + 0x20], cx
inc r13
cmp r13, 0x12
movabs rcx, 0x13cce94adbce3bb0
jb 0x140198325
lea rax, [rsp + 0x20]
mov qword [rsp + 0x110], rax
mov qword [rsp + 0x118], 0x24
xorps xmm0, xmm0
movups xmmword [rsp + 0xd0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rsp + 0xe0], xmm1
lea rax, [rsp + 0x20]
or r8, 0xffffffffffffffff
xor r12d, r12d
inc r8
cmp word [rax + r8*2], r12w
jne 0x14019851f
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0xd0]
call fcn.140052fb8
nop
mov dword [rsp + 0x44], 0x3b74cc93
mov dword [rsp + 0x48], 0x956ef455
mov dword [rsp + 0x4c], 0x6af4121f
mov dword [rsp + 0x50], 0x5b0cf234
mov dword [rsp + 0x54], 0x8733781
mov dword [rsp + 0x58], 0x1e4d4f3b
mov dword [rsp + 0x5c], 0xbbf5df9d
mov dword [rsp + 0x60], 0xefbba4eb
mov dword [rsp + 0x64], 0xce0f28fa
mov dword [rsp + 0x68], 0x1b862a59
mov dword [rsp + 0x6c], 0xcb9f4415
mov eax, 0x657c
mov word [rsp + 0x70], ax
mov qword [rsp + 0x180], r12
mov r13d, 0x6afe
xor edx, edx
mov rax, r12
movabs rcx, 0x13cce94adbce3bb0
div rcx
lea r15d, [rdx + 0x37]
movzx r14d, r15w
ror r14w, 8
movzx esi, r14w
shr si, 0xa
movzx eax, r14w
shl ax, 6
or si, ax
movzx edi, si
ror di, 8
movzx r9d, r14w
shr r9w, 0xd
movzx eax, r14w
shl ax, 3
or r9w, ax
movzx edx, r14w
shl dx, 0xd
movzx eax, r14w
shr ax, 3
or dx, ax
movzx r11d, dx
ror r11w, 8
movzx r8d, r14w
shr r8w, 0xc
movzx eax, r14w
shl ax, 4
or r8w, ax
movzx ebx, r14w
not bx
movzx ecx, r14w
ror cx, 1
movzx r10d, word [rsp + r12*2 + 0x44]
sub r10w, si
add r10w, r13w
mov eax, 0x9204
sub ax, si
xor r10w, ax
sub r10w, word [0x14033e058]
sub r10w, word [0x14033e050]
add r10w, di
add r10w, r14w
sub r10w, cx
mov eax, 0x6fc1
add r10w, ax
lea eax, [r14 + rsi]
mov ecx, 0x2d07
add ax, cx
xor r10w, ax
sub r10w, dx
sub r10w, r9w
sub r10w, r14w
sub r10w, word [0x14033e048]
sub r10w, 0x50
add r10w, r11w
mov rcx, qword [0x14033e040]
add r10w, si
add r10w, cx
movzx eax, r8w
sub ax, r9w
add ax, si
add ax, r14w
xor r10w, ax
movzx eax, r14w
sub ax, r8w
xor ax, r14w
sub r10w, ax
sub r10w, r11w
add r10w, r14w
mov eax, 0x4230
add r10w, ax
movzx eax, r14w
ror ax, 7
mov edx, 0x4050
sub r11w, dx
add ax, r11w
xor r10w, ax
mov edx, 0x9d7
add edx, r14d
add dx, dx
sub dx, r10w
mov eax, 0x7100
add eax, r14d
mov r8d, 0x2440
xor ax, r8w
sub dx, ax
movzx eax, bx
xor ax, word [0x14033e038]
sub dx, ax
movzx eax, r14w
xor ax, word [0x14033e030]
add dx, ax
sub dx, di
sub dx, si
sub dx, cx
sub dx, r15w
movzx eax, r14w
movzx ecx, bx
imul ecx, eax
xor cx, dx
mov word [rsp + r12*2 + 0x44], cx
inc r12
cmp r12, 0x17
jb 0x1401985ac
lea rax, [rsp + 0x44]
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x128], 0x2e
xorps xmm0, xmm0
movups xmmword [rsp + 0xf0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rsp + 0x100], xmm1
lea rcx, [rsp + 0x44]
xor r12d, r12d
mov r13b, 0x3f
or rax, 0xffffffffffffffff
inc rax
cmp word [rcx + rax*2], r12w
jne 0x1401987ac
mov r8, rax
lea rdx, [rsp + 0x44]
lea rcx, [rsp + 0xf0]
call fcn.140052fb8
nop
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x98], xmm0
mov qword [rsp + 0xa8], r12
lea rax, [rsp + 0x110]
mov qword [rsp + 0x180], rax
lea rax, [rsp + 0xd0]
mov qword [rsp + 0x188], rax
lea r9, [rsp + 0x180]
lea r8, [rsp + 0x188]
mov esi, 2
mov edx, esi
lea rcx, [rsp + 0x98]
call fcn.1400c2160
nop
mov r9, qword [rsp + 0xb0]
mov r8, qword [rsp + 0x88]
lea rdx, [rsp + 0x98]
lea rcx, [rsp + 0x78]
call fcn.1401ab84c
nop
mov rbx, qword [rsp + 0x98]
test rbx, rbx
je 0x1401988cb
mov rdi, qword [rsp + 0xa0]
cmp rbx, rdi
je 0x14019887b
mov rcx, rbx
call fcn.140052e0c
add rbx, 0x20
cmp rbx, rdi
jne 0x140198862
mov rbx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0xa8]
sub rdx, rbx
and rdx, 0xffffffffffffffe0
mov rax, rbx
cmp rdx, 0x1000
jb 0x1401988af
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140199f6c
mov rcx, rbx
call fcn.140292e54
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x98], xmm0
mov qword [rsp + 0xa8], r12
lea r9, [fcn.14003bb88]
mov r8, rsi
mov edx, 0x20
lea rcx, [rsp + 0xd0]
call fcn.140292eec
nop
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x44], xmm0
movups xmmword [rsp + 0x54], xmm0
mov qword [rsp + 0x64], rax
mov dword [rsp + 0x6c], eax
mov word [rsp + 0x70], ax
movups xmmword [rsp + 0x20], xmm0
movups xmmword [rsp + 0x30], xmm0
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x170], r12d
mov dword [rsp + 0x178], r12d
cmp byte [rsp + 0x78], r12b
jne 0x1401989be
mov dword [rsp + 0x170], r12d
mov dword [rsp + 0x170], 0x34bb4272
mov eax, 0xe1223f76
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
xor eax, 0xa422f75c
sub eax, dword [0x14033e048]
mov rdx, qword [0x14033e040]
lea ecx, [rdx + 0x280a8445]
add ecx, eax
xor ecx, 0x58c102be
add ecx, 0x6974d663
xor ecx, 0x2a102f62
mov r8d, dword [0x14033e030]
xor r8d, 0x20c7070d
sub r8d, ecx
mov eax, dword [0x14033e038]
xor eax, 0xdf38f8f2
sub r8d, eax
sub r8d, edx
sub r8d, 0x455eccb0
xor r8d, 0xa8d1424a
mov dword [rsp + 0x170], r8d
movsxd rbx, r8d
jmp 0x140199f3d
movabs rax, 0x8822a60a59faf198
mov qword [rsp + 0x180], rax
movabs rdi, 0xf2490ee7674a2d05
mov rbx, r12
movabs rax, 0x6743f849a7ecf3a8
movabs r11, 0xe63c5ff624cd2d2c
mov r15, qword [0x14033e070]
imul r15, rax
not r15
movabs rcx, 0xe63c5ff627de8240
mov rax, qword [0x14033e060]
xor rax, rcx
and r15, rax
ror r15, 0xa
shr r15, 8
movabs rax, 0xa46ce30a17186a18
mov r9, qword [0x14033e080]
imul r9, rax
movabs r8, 0xdb6f11898b5d2fb
sub r9, r8
movabs rax, 0x80cf3fd8ffffffff
xor r9, rax
shr r9, 0x1f
not r9
lea rcx, [r9 + r8]
movabs rsi, 0xaaaaaaaaaaaaaaab
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r9b
lea r14, [0x14033e060]
movzx ecx, byte [r14 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x6f
mov edx, 0x8000003f
and ecx, edx
jge 0x140198a9f
dec ecx
or ecx, 0xffffffc0
inc ecx
mov rax, r9
ror rax, cl
not rax
mov qword [rsp + 0x188], rax
movabs rcx, 0x68c4e1c1a6b42290
imul rax, rcx
mov qword [rsp + 0x178], rax
lea r10, [rax + r8]
mov r8, r9
imul r8, r15
sub r8, r10
movabs rax, 0x8822a60a59faf198
xor r8, rax
movzx ecx, r10b
mov dword [rsp + 0x170], ecx
and ecx, 0xf
and ecx, edx
jge 0x140198afa
dec ecx
or ecx, 0xffffffc0
inc ecx
rol r8, cl
mov rax, r10
sub rax, qword [0x14033e078]
xor r8, rax
movabs rcx, 0x15132cffd937fcd0
mov rax, qword [rsp + 0x188]
imul rax, rcx
movabs rcx, 0x30af6f41eb313de7
add rax, rcx
xor r8, rax
xor r8, r11
mov rax, r8
and eax, 1
je 0x140198e18
sub rax, 1
je 0x140198d17
sub rax, 1
je 0x140198c4b
cmp rax, 1
jne 0x140198e9b
mov rcx, r10
imul rcx, r9
movabs rax, 0x4181899810da3425
add rax, r8
xor rcx, rax
ror rcx, 0x30
shr rcx, 0xc
not rcx
mov qword [rsp + 0x180], rcx
movabs rdx, 0x83572fe8c47c
add rdx, qword [0x14033e088]
movabs rax, 0xd347460fc463605
xor rdx, rax
movzx eax, r8b
movzx ecx, cl
imul ecx, eax
and cl, r13b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db977082887
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
imul rcx, rdi
mov eax, 0xa6d3fa6d
add rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r14 + rcx*8]
and cl, 0xf
movabs rdi, 0xbfea970867cd2b52
sub rdi, qword [rsp + 0x180]
shr rdi, cl
movabs rax, 0xdbf15a0ed0d5d9d
mov rcx, qword [rsp + 0x178]
add rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r8
imul rax, qword [r14 + rcx*8]
imul rax, r8
sub rax, r15
xor rdi, rax
jmp 0x140198e9b
movabs rcx, 0xaaaaaa1aa6ca0753
mov r9, r8
xor r9, rcx
movabs rcx, 0x1206ed64c7db1f
imul r9, rcx
movabs rdx, 0xffff7e8a80da358f
mov rcx, qword [rsp + 0x178]
imul rcx, rdx
movabs rdx, 0x77a59284771eac1
add r9, rdx
add r9, rcx
movabs rax, 0x277cd7be741ad033
mov rcx, r9
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, r9
not r10
imul r10, qword [r14 + rcx*8]
xor r10, 0xfffffffff39fd183
lea ecx, [r8 + 0x11]
and cl, r13b
rol r10, cl
movabs rax, 0x344021c480000000
imul r10, rax
mov rcx, r10
ror rcx, 0x16
not rcx
movabs rax, 0x9b2de6b2efd94850
imul rcx, rax
mov rax, r9
sub rax, r10
lea rdx, [rcx + rax*4]
mov cl, r15b
and cl, r13b
ror rdx, cl
mov rax, rdi
mov rdi, rdx
imul rdi, rax
jmp 0x140198e9b
movabs rax, 0x245ff7dff7efd25d
imul r8, rax
movabs rax, 0xd79435e50d79435f
mul r8
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r8b
sub cl, dl
movabs rdx, 0x77dd59f5a6050e67
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov eax, dword [rsp + 0x170]
and eax, 0x8000003f
jge 0x140198d6c
dec eax
or eax, 0xffffffc0
inc eax
mov cl, al
rol r11, cl
movabs rcx, 0xdb6f11898b5d2fb
add rcx, r8
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xee7674a2d05
mov rax, qword [r14 + rcx*8]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7fa0e717e
or r11, rax
mov rdi, qword [0x14033e070]
movabs rax, 0x8822a60a59faf198
imul rdi, rax
sub rdi, r10
mov rax, r15
sub rax, r11
xor rdi, rax
movabs rax, 0xc7a7c6a6ab067173
xor rdi, rax
mov rax, r8
imul rax, r10
imul rax, rdi
mov rbx, r9
sub rbx, rax
movabs rax, 0x789589464543d69
add rbx, rax
xor rbx, r15
movzx eax, r9b
imul ecx, eax, 0x16
and cl, r13b
rol rbx, cl
not rbx
jmp 0x140198e9b
mov rcx, qword [0x14033e080]
imul rcx, r8
and rcx, qword [0x14033e080]
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x2c
imul r11, r10
mov rbx, r15
not rbx
imul rbx, r9
movabs rax, 0x7cd8a7de76f72092
imul rbx, rax
imul r15, qword [0x14033e060], 0x313af6c
mov rdx, qword [0x14033e068]
sub r15, rdx
mov al, bl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140198e83
dec ecx
or ecx, 0xffffffc0
inc ecx
ror r15, cl
movabs rax, 0xdb6f11898b5d2fb
add r15, rax
add r15, qword [rsp + 0x178]
movabs rax, 0xff055d7b86bc2a5f
mov rcx, qword [rsp + 0x180]
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
xor r11, rbx
imul r11, qword [r14 + rcx*8]
not r10
imul r10, r8
imul r10, r15
imul r10, rdi
movabs rcx, 0xf5ed7e87810f6083
xor rcx, r9
not rcx
xor rcx, r10
sub rcx, r11
call fcn.140177060
mov qword [0x14034c9c8], rax
movabs rdi, 0x3e1665cb7a522969
movabs r15, 0x643ee7cc65672744
mov rbx, r12
movabs rax, 0x3c08069957665368
movabs r10, 0xb5805b34eeae65c4
mov rcx, qword [0x14033e070]
imul rcx, rax
not rcx
movabs r8, 0x4a7fa4cb1c8cdd30
mov rax, qword [0x14033e060]
xor rax, r8
and rcx, rax
ror rcx, 0x22
shr rcx, 8
mov qword [rsp + 0x178], rcx
movabs rax, 0x3f33ef2f576e4ad8
mov r11, qword [0x14033e070]
imul r11, rax
add r11, rdi
movabs rax, 0x29ed479880000000
xor r11, rax
shr r11, 0x1f
not r11
movabs r9, 0xc1e99a3485add697
lea rcx, [r11 + r9]
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [r14 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x6b
mov eax, 0x8000003f
and ecx, eax
jge 0x140198fcd
dec ecx
or ecx, 0xffffffc0
inc ecx
mov rdx, r11
ror rdx, cl
not rdx
mov qword [rsp + 0x188], rdx
movabs r8, 0x77df2399a365ded0
mov rcx, rdx
imul rcx, r8
mov qword [rsp + 0x180], rcx
lea r8, [rcx + r9]
mov r9, r11
mov rdx, qword [rsp + 0x178]
imul r9, rdx
sub r9, r8
xor r9, r15
movzx ecx, r8b
mov dword [rsp + 0x170], ecx
xor ecx, 4
and ecx, 0xf
and ecx, eax
jge 0x14019902c
dec ecx
or ecx, 0xffffffc0
inc ecx
rol r9, cl
movabs rcx, 0xceddd6efd417b350
mov rax, qword [rsp + 0x188]
imul rax, rcx
movabs rcx, 0x778f05ca1f6cd11
sub rax, rcx
xor r9, rax
mov rax, r8
sub rax, qword [0x14033e078]
xor r9, rax
xor r9, r10
mov rax, r9
and eax, 1
je 0x14019934f
sub rax, 1
je 0x140199249
sub rax, 1
je 0x140199179
cmp rax, 1
jne 0x1401993ea
mov r15, r8
imul r15, r11
movabs rax, 0x75a8471fff61c3ad
add rax, r9
xor r15, rax
ror r15, 0x18
shr r15, 0xc
not r15
movabs rcx, 0x83573f564b80
mov rdx, qword [0x14033e088]
add rdx, rcx
movabs rax, 0xc16b1f4cf1e0bd6d
xor rdx, rax
movzx eax, r9b
movzx ecx, r15b
imul ecx, eax
and cl, r13b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db967b6a783
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
imul rcx, rdi
mov eax, 0xb66d7569
add rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov cl, byte [r14 + rcx*8]
and cl, 0xf
movabs rdi, 0xc28ab4659696f186
sub rdi, r15
shr rdi, cl
movabs rax, 0xc1f1bebcca96dc3d
mov rcx, qword [rsp + 0x180]
add rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r9
imul rax, qword [r14 + rcx*8]
imul rax, r9
sub rax, qword [rsp + 0x178]
xor rdi, rax
jmp 0x1401993ea
movabs rcx, 0xaaaaaa1ab6748857
mov r11, r9
xor r11, rcx
movabs rcx, 0x1206ed7479541b
imul r11, rcx
movabs rcx, 0xffff7e8a9064ba8b
mov rdx, qword [rsp + 0x180]
imul rdx, rcx
movabs rcx, 0x49e23a95a6f51899
add r11, rcx
add r11, rdx
movabs rax, 0x277cd7be64a45f37
mov rcx, r11
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r11
not r8
imul r8, qword [r14 + rcx*8]
xor r8, 0xffffffffe3215e87
lea ecx, [r9 + 0x15]
and cl, r13b
rol r8, cl
movabs rax, 0x7052190600000000
imul r8, rax
mov rcx, r8
ror rcx, 0xe
not rcx
movabs rax, 0x9b2de6b2ad237440
imul rcx, rax
mov rax, r11
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, byte [rsp + 0x178]
and cl, r13b
ror rdx, cl
mov rax, rdi
mov rdi, rdx
imul rdi, rax
jmp 0x1401993ea
movabs rax, 0x8a2d649af4a16bb3
imul r9, rax
movabs rax, 0xd79435e50d79435f
mul r9
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r9b
sub cl, dl
movabs rdx, 0x9bc118339a98d8bb
shl rdx, cl
mov rax, r10
mov r10, rdx
xor r10, rax
mov eax, dword [rsp + 0x170]
and eax, 0x8000003f
jge 0x14019929e
dec eax
or eax, 0xffffffc0
inc eax
mov cl, al
rol r10, cl
movabs rcx, 0xc1e99a3485add697
add rcx, r9
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xffffe5cb7a522969
mov rax, qword [r14 + rcx*8]
imul rax, rdx
xor r10, rax
movabs rax, 0xffffc7a7eab0fe7a
or r10, rax
mov rdi, qword [0x14033e070]
imul rdi, r15
sub rdi, r8
mov rax, qword [rsp + 0x178]
sub rax, r10
xor rdi, rax
movabs rax, 0xc7a7c6a6bbb8fe77
xor rdi, rax
mov rax, r9
imul rax, r8
imul rax, rdi
mov rbx, r11
sub rbx, rax
movabs rax, 0x789589474eab26d
add rbx, rax
xor rbx, qword [rsp + 0x178]
mov al, r11b
shl al, 3
lea ecx, [rax + r11]
add cl, cl
and cl, r13b
rol rbx, cl
not rbx
jmp 0x1401993ea
mov rcx, r9
imul rcx, qword [0x14033e080]
and rcx, qword [0x14033e060]
mov rax, r10
mov r10, rcx
xor r10, rax
ror r10, 4
imul r10, r8
mov rbx, rdx
not rbx
imul rbx, r11
movabs rax, 0x7cd8a7de6649af96
imul rbx, rax
imul rax, qword [0x14033e060], 0xfffffffff222b8f4
mov rdx, qword [0x14033e068]
sub rax, rdx
mov qword [rsp + 0x170], rax
mov al, bl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x1401993c2
dec ecx
or ecx, 0xffffffc0
inc ecx
mov rax, qword [rsp + 0x170]
ror rax, cl
movabs rcx, 0xc1e99a3485add697
add rax, rcx
add rax, qword [rsp + 0x180]
mov qword [rsp + 0x178], rax
movabs rax, 0xff055d7b9602a55b
xor r15, rax
mov rax, rsi
mul r15
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub r15, rax
xor r10, rbx
imul r10, qword [r14 + r15*8]
not r8
imul r8, r9
imul r8, qword [rsp + 0x178]
imul r8, rdi
movabs rcx, 0xf5ed7e8791b1ef87
xor rcx, r11
not rcx
xor rcx, r8
sub rcx, r10
call fcn.1401777d4
mov qword [0x14034c990], rax
mov dword [rsp + 0x170], r12d
mov dword [rsp + 0x170], 0x17bde6ff
mov eax, 0x509da839
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
xor eax, 0x882b441e
sub eax, dword [0x14033e048]
mov rdx, qword [0x14033e040]
lea ecx, [rdx - 0x29a5779a]
add ecx, eax
xor ecx, 0xfa542da0
add ecx, 0x1701f3cd
xor ecx, 0xa82b0a98
mov r8d, dword [0x14033e030]
xor r8d, 0x187862d1
sub r8d, ecx
mov eax, dword [0x14033e038]
xor eax, 0xe7879d2e
sub r8d, eax
sub r8d, edx
add r8d, 0x16b143ad
xor r8d, 0xed72ee8e
mov dword [rsp + 0x170], r8d
cmp dword [0x14033e090], r8d
setne al
mov dword [rsp + 0x170], r12d
test al, al
je 0x140199577
mov dword [rsp + 0x170], r12d
mov dword [rsp + 0x170], 0xd1f4f646
mov eax, 0x25e4b3dc
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
xor eax, 0x957ebfb0
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0x80c7a62c
add eax, ecx
xor eax, 0x875369a2
add eax, 0x26d4caf8
xor eax, 0xc2f9f74a
lea edx, [rcx + 0x617a6514]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xd7922520
sub edx, eax
mov ecx, dword [0x14033e030]
xor ecx, 0x286ddadf
add ecx, 0x318db139
add ecx, edx
xor ecx, 0xa8b96e0
mov dword [rsp + 0x170], ecx
movsxd rbx, ecx
jmp 0x140199f3d
mov byte [rsp + 0x178], 4
mov byte [rsp + 0x179], 0x13
mov byte [rsp + 0x17a], 0x98
mov byte [rsp + 0x17b], 0xfe
mov byte [rsp + 0x17c], 0x22
mov byte [rsp + 0x17d], 0x42
lea r11, [rsp + 0x178]
mov qword [rsp + 0x170], r11
mov r15, r12
mov qword [rsp + 0xb8], r12
cmp r15, 6
jae 0x1401997d9
xor edx, edx
mov rax, r15
movabs rcx, 0x13cce94adbce3bb0
div rcx
add dl, 0x37
mov byte [rsp + 0x170], dl
mov r14b, dl
sar r14b, 7
or r14b, dl
mov byte [rsp + 0x170], r14b
mov sil, r14b
shl sil, 6
mov al, r14b
sar al, 2
or sil, al
mov byte [rsp + 0x170], sil
mov byte [rsp + 0x170], sil
mov byte [rsp + 0x170], sil
mov cl, r14b
ror cl, 1
mov byte [rsp + 0x170], cl
mov byte [rsp + 0x170], sil
mov dil, r14b
sar dil, 3
mov al, r14b
shl al, 5
or dil, al
mov byte [rsp + 0x170], dil
mov byte [rsp + 0x170], sil
mov byte [rsp + 0x170], dil
mov r9b, r14b
sar r9b, 5
mov al, r14b
shl al, 3
or r9b, al
mov byte [rsp + 0x170], r9b
mov byte [rsp + 0x170], sil
mov byte [rsp + 0x170], r9b
mov r8b, r14b
sar r8b, 4
mov al, r14b
shl al, 4
or r8b, al
mov byte [rsp + 0x170], r8b
mov byte [rsp + 0x170], dil
mov byte [rsp + 0x170], r8b
mov dl, r14b
ror dl, 7
mov byte [rsp + 0x170], dl
mov byte [rsp + 0x170], dil
mov bl, r14b
sar bl, 7
or bl, r14b
mov byte [rsp + 0x170], bl
mov r10b, r14b
not r10b
mov r11b, byte [r15 + r11]
sub r11b, sil
sub r11b, 2
mov eax, 4
sub al, sil
xor r11b, al
sub r11b, byte [0x14033e050]
sub r11b, byte [0x14033e058]
sub r11b, cl
add r11b, r14b
add r11b, sil
sub r11b, r13b
lea eax, [rsi + 7]
add al, r14b
xor r11b, al
sub r11b, byte [0x14033e048]
sub r11b, r9b
sub r11b, dil
sub r11b, r14b
mov rcx, qword [0x14033e040]
sub r11b, 0x50
add r11b, cl
add r11b, sil
add r11b, dil
mov al, r8b
sub al, r9b
add al, sil
add al, r14b
xor r11b, al
mov al, r14b
sub al, r8b
xor al, r14b
sub r11b, al
sub r11b, dil
add r11b, 0x30
add r11b, r14b
sub dil, 0x50
add dil, dl
xor r11b, dil
mov al, r14b
add al, al
sub r11b, al
add sil, sil
add r11b, sil
add cl, 0x51
add r11b, cl
not r11b
mov al, r10b
xor al, byte [0x14033e038]
sub r11b, al
mov al, r14b
xor al, byte [0x14033e030]
add r11b, al
mov al, r14b
xor al, 0x40
sub r11b, al
sub r11b, bl
movsx eax, r14b
movsx ecx, r10b
imul ecx, eax
xor r11b, cl
mov byte [rsp + 0x170], r11b
lea rax, [rsp + 0x178]
mov byte [r15 + rax], r11b
inc r15
mov qword [rsp + 0xb8], r15
lea r11, [rsp + 0x178]
jmp 0x1401995c2
mov qword [rsp + 0x88], r11
mov qword [rsp + 0x90], 6
mov rdx, qword [rsp + 0x88]
lea rcx, [rsp + 0x78]
call fcn.140173f4c
mov qword [rsp + 0x170], rax
mov qword [rsp + 0x170], r12
lea rdx, [rsp + 0x170]
mov rcx, rax
call fcn.140179680
mov rbx, qword [rsp + 0x170]
mov qword [rsp + 0x170], rbx
mov rcx, qword [rsp + 0x88]
test rcx, rcx
je 0x14019986a
mov rax, r12
mov qword [rsp + 0xc0], rax
cmp rax, qword [rsp + 0x90]
jae 0x14019986a
mov byte [rax + rcx], r12b
inc rax
mov qword [rsp + 0xc0], rax
mov rcx, qword [rsp + 0x88]
jmp 0x140199847
mov dl, byte [rsp + 0x78]
lea rcx, [rsp + 0x80]
call fcn.140182e0c
mov rax, rbx
jmp 0x140199f59
mov dword [rsp + 0x170], r12d
mov dl, byte [rsp + 0x78]
lea rcx, [rsp + 0x80]
call fcn.140182e0c
mov rax, rbx
add rsp, 0x130
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
call fcn.140299204
nop
int3