Function at 0x140125800
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
sub rsp, 0x178
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x28], rcx
mov qword [rbp + 8], rcx
mov eax, 0x20
mov qword [rbp + 0x10], rax
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0x10]
mov rcx, rsp
mov qword [rbp + 0x18], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x20], rax
sub rsp, 0x20
call fcn.14014e5aa
mov rcx, qword [rbp + 0x28]
add rsp, 0x20
mov qword [rbp + 0x38], rax
add rax, 0x60
mov qword [rbp + 0x30], rax
mov qword [rcx], 0
mov qword [rcx + 8], 0
mov ax, 0xe95a
xor ax, 0xe8b6
mov word [rbp + 0xf6], ax
lea rcx, [rbp + 0xf6]
sub rsp, 0x20
call fcn.140062fb0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x38]
mov qword [rbp + 0x40], rcx
cmp byte [rax + 0x60], 0
jne 0x140126482
lea rcx, [rbp + 0xe0]
mov edx, 0x10
sub rsp, 0x20
call fcn.140125707
mov rax, qword [rbp + 0x40]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0xa0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xa8], rax
lea rcx, [rbp + 0xe0]
mov rdx, 0xffffffff80000002
lea r8, [rbp + 0xa0]
mov r9d, 0x20019
sub rsp, 0x20
call fcn.1400cf6e6
mov rax, qword [rbp + 0x30]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140126482
mov rax, qword [rbp + 0xe0]
mov qword [rbp], rax
cmp byte [rbp + 0xe8], 0
jne 0x140125965
sub rsp, 0x20
call fcn.140082880
add rsp, 0x20
mov rax, qword [rbp + 0x30]
mov al, byte [rax]
mov cl, 0x55
xor cl, 0x55
cmp al, cl
jne 0x140126482
mov rax, qword [rbp + 0x28]
mov rcx, qword [0x1401edee8]
mov qword [rax], rcx
mov rcx, qword [0x1401edef0]
mov qword [rax + 8], rcx
jmp 0x1401264f4
lea rcx, [rbp + 0xc0]
mov edx, 0x18
sub rsp, 0x20
call fcn.140125707
mov rcx, qword [rbp + 0x18]
add rsp, 0x20
mov edx, 0x18
sub rsp, 0x20
call fcn.140125707
add rsp, 0x20
mov qword [rbp + 0xb0], 0
lea rax, [rbp + 0xb0]
add rax, 8
mov qword [rbp - 0x10], rax
mov qword [rbp + 0xb8], 0
mov word [rbp + 0x9e], 0x16
lea rcx, [rbp + 0x9e]
sub rsp, 0x20
call fcn.140062fb0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x30]
mov qword [rbp - 8], rcx
cmp byte [rax], 0
jne 0x140126004
mov eax, dword [0x1401e0008]
xor eax, 0x4c1baa26
mov ecx, dword [0x1401e000c]
xor ecx, 0xffffffff
add eax, ecx
mov ecx, 0xf4a0aa40
xor ecx, 0xf4a0aa41
add eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xc27c98c4
add eax, ecx
add eax, 1
mov r8d, 0xfe02254
xor r8d, 0x1e9a2989
mov ecx, 0x713f7518
xor ecx, 0x8ec08ae7
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, 0x117a0bdd
or eax, 0x117a0bdd
imul eax, edx
add eax, ecx
xor eax, 0xbbe6cc6c
mov ecx, 0x2ff86fa2
xor ecx, 0xa8f819c7
cmp eax, ecx
jb 0x140126502
mov rax, qword [rbp - 8]
mov esi, dword [0x1401e0010]
mov ecx, dword [0x1401e0014]
xor ecx, 0x64ffe875
and esi, ecx
and esi, 0x7b7f509c
xor esi, 0x3506791c
mov edx, esi
xor edx, 0xffffffff
mov r9d, 0x147f9ed9
xor r9d, 0xede17966
mov ecx, 0x28d32a80
xor ecx, 0xd72cd57f
xor r9d, ecx
mov r8d, 0x348d10b3
xor r8d, 0x12f3f4ec
mov ecx, 0xcf80cf31
xor ecx, 0x307f30ce
xor r8d, ecx
mov ecx, edx
and ecx, 0x267ee45f
and esi, r8d
mov r11d, 0xfc9881bf
xor r11d, 0xdae665e0
mov r10d, r9d
and r10d, r11d
mov r11d, r8d
and r11d, 0xf99ee7bf
or ecx, esi
or r10d, r11d
xor ecx, r10d
or edx, r9d
xor edx, 0xffffffff
or r8d, 0x267ee45f
and edx, r8d
or ecx, edx
mov dword [rbp - 0x18], ecx
mov rcx, qword [rax]
mov qword [rbp + 0x78], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x80], rax
lea rcx, [rbp + 0x88]
lea rdx, [rbp + 0x78]
sub rsp, 0x20
call fcn.14001b4f8
mov rcx, qword [rbp + 0x20]
add rsp, 0x20
mov rax, qword [rbp + 0x88]
mov qword [rbp - 0x28], rax
mov rax, qword [rbp + 0x90]
mov qword [rbp - 0x20], rax
mov edx, 0x18
sub rsp, 0x20
call fcn.140125707
mov r8, qword [rbp - 0x28]
mov rax, qword [rbp - 0x20]
mov rcx, qword [rbp + 0x20]
mov rdx, qword [rbp]
add rsp, 0x20
mov qword [rbp + 0x68], r8
mov qword [rbp + 0x70], rax
lea r8, [rbp + 0x68]
sub rsp, 0x20
call fcn.1400d0960
mov rcx, qword [rbp + 0x30]
mov eax, dword [rbp - 0x18]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x11], cl
cmp eax, 0xec9cbfd3
jb 0x140126502
mov al, byte [rbp - 0x11]
test al, 1
jne 0x140125bc0
jmp 0x140126004
mov rax, qword [rbp + 0x18]
mov rcx, qword [rbp + 0x20]
mov rdx, qword [rcx + 0x10]
mov qword [rbp + 0xd0], rdx
movups xmm0, xmmword [rcx]
movaps xmmword [rbp + 0xc0], xmm0
mov rdx, qword [rcx + 0x10]
mov qword [rax + 0x10], rdx
movups xmm0, xmmword [rcx]
movups xmmword [rax], xmm0
sub rsp, 0x20
lea rcx, [rbp + 0xc0]
call fcn.14005fcd8
mov rcx, qword [rbp + 0x18]
mov rax, qword [rbp + 0x30]
add rsp, 0x20
mov cl, byte [rcx + 0x10]
test cl, cl
sete cl
mov byte [rbp - 0x2a], cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp - 0x29], al
or al, cl
test al, 1
jne 0x140125d88
mov eax, dword [0x1401e0018]
xor eax, 0x41797437
mov r8d, dword [0x1401e001c]
mov ecx, eax
xor ecx, 0xffffffff
mov edx, r8d
and edx, ecx
mov ecx, 0x7ff8b6c5
xor ecx, 0x8007493a
mov r9d, r8d
xor r9d, ecx
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x80df65ea
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0xe011b7b5
xor r8d, 0x1fee484a
xor ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x80df65ea
or eax, 0x80df65ea
imul eax, edx
add eax, ecx
mov ecx, 0x3bc05a27
xor edx, edx
div ecx
or eax, 0x16ba9ea2
cmp eax, 0xe6d490fd
ja 0x14012650b
mov eax, dword [0x1401e0020]
mov ecx, dword [0x1401e0024]
xor ecx, 0xa4d4a93b
xor edx, edx
div ecx
mov ecx, eax
mov rax, qword [rbp + 0x18]
mov r8d, 0x53e0794e
xor r8d, 0xedb671f1
mov edx, ecx
xor edx, r8d
mov r8d, 0x688b77cb
xor r8d, 0xd6dd7f74
mov r9d, 0xc43d476f
xor r9d, 0x3bc2b890
xor r8d, r9d
and ecx, r8d
shl ecx, 1
sub ecx, edx
mov edx, 0x6be1549f
xor edx, 0x733ea97a
and edx, ecx
xor edx, 0xffffffff
add ecx, 0x18dffde5
add ecx, 1
add ecx, edx
mov edx, 0x2354cb0a
xor edx, 0x24a402bc
and ecx, edx
mov dword [rbp - 0x30], ecx
mov rcx, qword [rax]
mov qword [rbp + 0x58], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x60], rax
lea rcx, [rbp + 0xb0]
lea rdx, [rbp + 0x58]
sub rsp, 0x20
call fcn.14001850a
mov rcx, qword [rbp + 0x30]
mov eax, dword [rbp - 0x30]
add rsp, 0x20
cmp byte [rcx], 0
setne cl
mov byte [rbp - 0x2b], cl
cmp eax, 0x2dec816b
jae 0x140125cbd
mov al, byte [rbp - 0x2b]
mov byte [rbp - 0x31], al
jmp 0x140125de1
mov al, byte [rbp - 0x29]
test al, 1
jne 0x140126004
jmp 0x140125d98
lea rcx, [rbp + 0x48]
sub rsp, 0x20
call fcn.140082b5d
mov rax, qword [rbp + 0x30]
add rsp, 0x20
mov rcx, qword [rbp + 0x48]
mov qword [rbp - 0x48], rcx
mov rcx, qword [rbp + 0x50]
mov qword [rbp - 0x40], rcx
cmp byte [rax], 0
jne 0x140126004
mov rax, qword [rbp - 0x10]
mov rcx, qword [rbp - 0x40]
mov rdx, qword [rbp - 0x48]
mov qword [rbp + 0xb0], rdx
mov qword [rax], rcx
xor eax, eax
mov byte [rbp - 0x31], al
mov al, byte [rbp - 0x31]
mov byte [rbp - 0x49], al
mov ecx, dword [0x1401e0028]
xor ecx, 0xa8818643
mov edx, dword [0x1401e002c]
mov r8d, ecx
xor r8d, 0xffffffff
mov eax, edx
and eax, r8d
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
mov ecx, 0xcd2b060b
xor ecx, 0x66970a2d
and eax, ecx
mov ecx, 0x66998ee
xor edx, edx
div ecx
mov ecx, 0xcfc85beb
xor ecx, 0x3037a414
mov edx, eax
xor edx, ecx
and edx, 0xcf3f05d4
mov r8d, 0xffffffff
xor r8d, 0xcf3f05d4
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xcf3f05d4
or eax, 0xcf3f05d4
imul eax, edx
add eax, ecx
cmp eax, 0x6487400
jbe 0x140126514
mov dl, byte [rbp - 0x2a]
mov cl, byte [rbp - 0x49]
mov r8d, dword [0x1401e0030]
mov eax, dword [0x1401e0034]
mov r9d, r8d
not r9d
or r9d, eax
mov eax, r8d
mov r8d, r9d
lea eax, [rax + r8 + 1]
xor eax, 0x75a4d9c6
mov r8d, 0xc6b6b259
imul rax, r8
shr rax, 0x3d
or cl, dl
mov byte [rbp - 0x4a], cl
cmp eax, 0x357c2881
ja 0x140125e69
mov al, byte [rbp - 0x4a]
test al, 1
jne 0x140126015
jmp 0x140125ec3
mov rax, qword [rbp + 0x28]
mov rcx, qword [rbp + 0xb0]
mov qword [rax], rcx
mov rcx, qword [rbp + 0xb8]
mov qword [rax + 8], rcx
lea rcx, [rbp + 0xb0]
sub rsp, 0x20
call fcn.14000fb15
mov rax, qword [rbp - 0x10]
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x58], rax
cmp rax, 0
je 0x140125fa1
mov rax, qword [rbp - 0x58]
mov rcx, qword [rax]
movabs rdx, 0xe33cbb7ffa5f1127
movabs rax, 0xa33cbb7ffa5f1127
xor rdx, rax
mov rax, rcx
and rax, rdx
movabs rdx, 0x3ccb97ee810f78a2
movabs r8, 0xc33468117ef0875d
xor rdx, r8
xor rax, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0xa9c189f25ef3479f
movabs r8, 0xe9c189f25ef3479f
xor rdx, r8
movabs r8, 0x34321d8b7a76435c
movabs r9, 0xcbcde2748589bca3
xor r8, r9
xor rdx, r8
or rcx, rdx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
or rax, rcx
cmp rax, 0
jne 0x140125fa1
mov rcx, qword [rbp - 0x58]
sub rsp, 0x20
call fcn.14000de03
add rsp, 0x20
mov rcx, qword [rbp + 0x18]
sub rsp, 0x20
call fcn.14005fcf0
mov rax, qword [rbp + 0x30]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140126010
lea rcx, [rbp + 0xc0]
sub rsp, 0x20
call fcn.14005fcf0
mov rax, qword [rbp + 0x30]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140126010
mov rcx, qword [rbp]
sub rsp, 0x20
call fcn.1400d0041
mov rax, qword [rbp + 0x30]
add rsp, 0x20
mov al, byte [rax]
cmp al, 0
je 0x1401264f4
jmp 0x140126482
mov rax, qword [rbp + 0x30]
mov byte [rax], 0
jmp 0x140126420
jmp 0x140126452
mov al, byte [rbp - 0x49]
test al, 1
jne 0x1401261fc
mov rax, qword [rbp - 0x10]
mov rcx, qword [rbp + 0x28]
mov rdx, qword [0x1401edee8]
mov qword [rcx], rdx
mov rdx, qword [0x1401edef0]
mov qword [rcx + 8], rdx
mov rax, qword [rax]
mov qword [rbp - 0x60], rax
cmp rax, 0
je 0x140126090
mov rcx, qword [rbp - 0x60]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
movabs rcx, 0x1aef4cb29cc10023
movabs rdx, 0x1aef4cb29cc10023
xor rcx, rdx
cmp rax, rcx
jne 0x140126090
mov rcx, qword [rbp - 0x60]
sub rsp, 0x20
call fcn.14000de03
add rsp, 0x20
mov rcx, qword [rbp + 0x18]
sub rsp, 0x20
call fcn.14005fcf0
mov rax, qword [rbp + 0x30]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140126452
mov eax, dword [0x1401e0038]
and eax, dword [0x1401e003c]
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0x6255c72e
add eax, ecx
mov ecx, 0xa2ef2d12
xor edx, edx
div ecx
imul eax, eax, 0x6839771
cmp eax, 0x200d2743
je 0x14012651d
mov r11d, dword [0x1401e0040]
mov r10d, dword [0x1401e0044]
mov eax, 0xaa4069d3
xor eax, 0x4b33dcaa
xor r10d, eax
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, r10d
xor r8d, 0xffffffff
mov edx, 0x8cd48328
xor edx, 0xa542be8c
mov eax, 0xeed3a13e
xor eax, 0x112c5ec1
xor edx, eax
mov eax, ecx
and eax, 0x29963da4
and r11d, edx
mov esi, 0x8f57e89c
xor esi, 0xa6c1d538
mov r9d, r8d
and r9d, esi
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0x29963da4
and ecx, edx
or eax, ecx
mov ecx, 0x84ae2e8f
xor ecx, 0x4ad42784
add eax, ecx
sub eax, 0x9a3230b1
mov ecx, 0xef486102
xor ecx, 0x21326809
sub eax, ecx
mov ecx, eax
xor ecx, 0x603c32db
xor ecx, 0xffffffff
or eax, 0x603c32db
and eax, ecx
mov ecx, 0x947efaa7
xor ecx, 0xa444a500
and eax, ecx
mov dword [rbp - 0x68], eax
lea rcx, [rbp + 0xc0]
sub rsp, 0x20
call fcn.14005fcf0
mov rcx, qword [rbp + 0x30]
mov eax, dword [rbp - 0x68]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x61], cl
cmp eax, 0x2a564f00
ja 0x1401260e3
mov al, byte [rbp - 0x61]
test al, 1
jne 0x1401261d9
jmp 0x140126452
mov rcx, qword [rbp]
sub rsp, 0x20
call fcn.1400d0041
mov rax, qword [rbp + 0x30]
add rsp, 0x20
cmp byte [rax], 0
je 0x1401264f4
jmp 0x140126482
mov eax, dword [0x1401e0048]
mov ecx, dword [0x1401e004c]
xor ecx, 0xde2db68
xor ecx, 0xffffffff
add eax, ecx
add eax, 1
mov ecx, 0x3abce574
xor ecx, 0x959ef36c
imul eax, ecx
imul r8d, eax, 0x805add4f
mov eax, r8d
xor eax, 0xffffffff
and eax, 0x9c640f80
mov r9d, 0xa643b684
xor r9d, 0x3a27b904
mov ecx, 0x1d6d6a9
xor ecx, 0xfe292956
xor r9d, ecx
and r8d, r9d
mov ecx, 0xffffffff
xor ecx, 0xec02b192
and ecx, 0x9c640f80
mov edx, 0x65677b90
xor edx, 0x8965ca02
and edx, r9d
or eax, r8d
or ecx, edx
xor eax, ecx
cmp eax, 0xaed81ef4
jae 0x140126526
mov r8, qword [rbp + 0x30]
mov rdx, qword [rbp - 0x10]
mov eax, dword [0x1401e0050]
mov ecx, 0xfe8e195c
xor ecx, 0x1d11ce25
xor eax, ecx
mov ecx, dword [0x1401e0054]
mov r9d, 0x1de95b2f
xor r9d, 0xf04a8f4a
xor ecx, r9d
sub eax, ecx
mov r9d, 0x983b4cf4
xor r9d, 0x67c4b30b
mov ecx, eax
xor ecx, r9d
mov r9d, 0xffffffff
xor r9d, 0xc0ac5339
or ecx, r9d
mov r9d, 0x5ae2fa9a
xor r9d, 0xa51d0565
xor eax, r9d
mov r9d, 0x47e67d19
xor r9d, 0x874a2e20
mov r10d, 0xf79fc303
xor r10d, 0x8603cfc
xor r9d, r10d
or eax, r9d
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov r9d, ecx
xor r9d, 0xffffffff
and eax, r9d
mov r9d, 0x529126de
or r9d, 0x529126de
xor r9d, 0xffffffff
xor eax, 0xffffffff
mov r10d, 0x70ad3cff
xor r10d, 0x8f52c300
xor r9d, r10d
and eax, r9d
mov r9d, 0x811fa8b4
xor r9d, 0x7ee0574b
xor ecx, r9d
mov r9d, 0xffffffff
xor r9d, 0x529126de
and ecx, r9d
or eax, ecx
xor eax, 0xffffffff
mov r10d, 0xdcdc308b
xor r10d, 0x7dd1718b
mov ecx, 0x377fef5e
xor ecx, 0xc88010a1
xor r10d, ecx
mov r9d, eax
and r9d, r10d
mov ecx, eax
or ecx, r10d
mov r10d, 0xa602aa6b
xor r10d, 0x59fd5594
xor ecx, r10d
imul ecx, r9d
mov r9d, eax
and r9d, 0xa10d4100
or eax, 0xa10d4100
imul eax, r9d
add eax, ecx
mov ecx, 0x9a3233e1
xor ecx, 0x2af3970c
mov rdx, qword [rdx]
mov qword [rbp - 0x78], rdx
mov byte [r8], 0
cmp rdx, 0
sete dl
mov byte [rbp - 0x69], dl
cmp eax, ecx
ja 0x140126526
mov al, byte [rbp - 0x69]
test al, 1
jne 0x140126420
jmp 0x1401263f4
mov rcx, qword [rbp - 0x78]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x140126420
mov rcx, qword [rbp - 0x78]
sub rsp, 0x20
call fcn.14000de03
add rsp, 0x20
mov rcx, qword [rbp + 0x18]
sub rsp, 0x20
call fcn.14005fcf0
mov rax, qword [rbp + 0x30]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140126452
lea rcx, [rbp + 0xc0]
sub rsp, 0x20
call fcn.14005fcf0
add rsp, 0x20
mov rax, qword [rbp + 0x30]
mov rcx, qword [rbp]
mov dl, 0x82
xor dl, 0x82
mov byte [rax], dl
sub rsp, 0x20
call fcn.1400d0041
mov rax, qword [rbp + 0x30]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140126482
mov rax, qword [rbp + 0x30]
mov byte [rax], 1
sub rsp, 0x20
call fcn.140125792
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x80], rax
cmp word [rax + 0x12], 1
jle 0x1401264f4
mov rax, qword [rbp - 0x80]
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0xd4054986
jne 0x1401264f4
mov rax, qword [rbp + 0x30]
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401257a4
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.14009428e
mov rax, qword [rbp + 0x30]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401264f4
sub rsp, 0x20
call fcn.1401257d1
add rsp, 0x20
mov rax, qword [rbp + 8]
lea rsp, [rbp + 0xf8]
pop rsi
pop rbp
ret
pop rbx
mov edx, 0x67e983cb
cmc
invalid
invalid
test byte [rdi], al
mov al, 0xe9
stc
invalid
xor byte [rdi - 0x42166a86], ch
sti
invalid
sahf
or byte [r15 - 0x2a917], bl
call qword [rax - 0x137eb7ab]
push rbp
sub rsp, 0x230