Function at 0x140470da0
Capabilities:
Encode data using xor

Disassembly:
mov eax, dword [0x1406974d0]
lea r8d, [rax - 1]
imul r8d, eax
and r8d, 1
xor eax, eax
sub eax, dword [0x14067aa2c]
mov r9d, eax
xor r9d, 0x39395b83
and eax, 0x39395b83
add eax, eax
mov r10d, r9d
xor r10d, eax
and eax, r9d
lea eax, [r10 + rax*2]
add eax, r8d
jne 0x140470e00
mov eax, dword [0x1406974d0]
mov r8d, dword [0x14067aa2c]
add r8d, eax
add r8d, 0x1ecc0736
imul r8d, eax
test r8b, 1
je 0x140470e0d
nop
mov eax, dword [0x1406974d4]
cmp eax, 0x1d
jge 0x140470e00
jmp 0x140470ddd
test ecx, ecx
je 0x140470e59
mov eax, 0xc6c6a47d
add eax, dword [0x14067aa2c]
cmp edx, eax
jne 0x140470e8c
movzx eax, byte [0x14067a5de]
cmp al, 0xb0
je 0x14047102f
mov cl, 0x43
nop word cs:[rax + rax]
mov al, 0x34
lock cmpxchg byte [0x14067a5de], cl
je 0x140470eec
cmp al, 0xb0
jne 0x140470e40
jmp 0x14047102f
test edx, edx
je 0x140470ebf
movzx eax, byte [0x14067a5cd]
cmp al, 0xa5
je 0x140470e84
mov cl, 0xc1
nop word [rax + rax]
mov al, 0x72
lock cmpxchg byte [0x14067a5cd], cl
je 0x1404710fc
cmp al, 0xa5
jne 0x140470e70
lea rax, [0x14067a5c0]
ret
movzx eax, byte [0x14067a591]
cmp al, 0xce
je 0x1404710df
mov cl, 0xff
nop dword [rax]
mov al, 0xdc
lock cmpxchg byte [0x14067a591], cl
je 0x140470f1c
movzx edx, byte [0x14067aa28]
add dl, 0x6f
cmp al, dl
jne 0x140470ea0
jmp 0x1404710df
movzx eax, byte [0x14067a46c]
cmp al, 0x23
je 0x140470ee4
mov cl, 0x1f
nop dword [rax]
mov al, 0x14
lock cmpxchg byte [0x14067a46c], cl
je 0x14047114c
cmp al, 0x23
jne 0x140470ed0
lea rax, [0x14067a460]
ret
xor eax, eax
lea rcx, [0x14067a5d0]
lea rdx, [0x14055bfb0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
lea r8d, [rax + 1]
cmp r8d, 0xd
jg 0x140470fbf
inc rax
jmp 0x140470f00
xor ecx, ecx
lea r8, [0x14067a580]
lea r9, [0x14055bf60]
xor r10d, r10d
jmp 0x140470f5a
mov eax, dword [0x14067aa2c]
add r10d, eax
add r10d, 0xc6c6a47e
cmp r10d, 0x11
jge 0x140471097
mov edx, dword [0x1406974d0]
lea eax, [rdx - 1]
imul eax, edx
mov edx, dword [0x14067aa2c]
mov r11d, edx
xor r11d, 0xc6c6a47f
and edx, 0x46c6a47f
lea r11d, [r11 + rdx*2]
xor edx, edx
div r11d
movsxd r11, r10d
test edx, edx
jne 0x140470fa9
nop dword [rax]
movzx eax, byte [r11 + r9]
mov edx, eax
xor dl, al
not dl
and dl, byte [r11 + r8]
xor dl, al
mov byte [r11 + r8], dl
test cl, cl
je 0x140470f40
movzx eax, byte [r11 + r8]
movzx edx, byte [r11 + r9]
sub al, dl
mul dl
xor al, dl
mov byte [r11 + r8], al
jmp 0x140470f90
mov eax, dword [0x1406974d0]
mov eax, 0xc6c6a47e
lea rcx, [fcn.140470da0]
add ecx, ecx
add ecx, 0x1c40
mov edx, ecx
not edx
nop dword [rax]
mov r8d, dword [0x14067aa2c]
add r8d, eax
mov r9d, edx
and r9d, r8d
not r8d
mov r10d, ecx
and r10d, r8d
or r10d, r9d
xor r8d, edx
not r8d
and r8d, edx
mov r9d, r8d
xor r9d, r8d
not r9d
and r9d, r10d
and r10d, r8d
xor r9d, r8d
or r9d, r10d
cmp r9d, 0xffffffff
jne 0x140470fe0
movzx eax, byte [0x14067aa28]
add al, 0x51
xchg byte [0x14067a5de], al
lea rax, [fcn.140470da0]
lea ecx, [rax + rax]
add ecx, 0x1c60
mov eax, ecx
not eax
and eax, ecx
nop word cs:[rax + rax]
mov ecx, dword [0x14067aa2c]
mov edx, ecx
not edx
mov r8d, ecx
xor r8d, 0x39395b82
mov r9d, edx
and r9d, 0xc6c6a47d
or r8d, r9d
not r8d
or r8d, r9d
xor ecx, 0x46c6a47d
and edx, 0x39395b82
or edx, ecx
not edx
lea ecx, [r8 + rdx*2]
cmp eax, ecx
jne 0x140471050
lea rax, [0x14067a5d0]
ret
mov eax, 0xc6c6a47d
nop dword [rax]
mov ecx, dword [0x1406974d0]
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
je 0x1404710cc
mov ecx, dword [0x1406974d0]
lea edx, [rcx + 1]
imul edx, ecx
and edx, 1
mov ecx, dword [0x14067aa2c]
add ecx, eax
cmp edx, ecx
jne 0x1404710a0
mov ecx, dword [0x1406974d4]
cmp ecx, 9
jg 0x1404710b1
mov al, 0xce
xchg byte [0x14067a591], al
mov eax, dword [0x1406974d4]
xor eax, eax
nop word [rax + rax]
test al, al
jne 0x1404710f0
lea rax, [0x14067a580]
ret
xor eax, eax
lea rcx, [0x14067a5c0]
lea rdx, [0x14055bfa0]
nop dword [rax]
movzx r8d, byte [rax + rcx]
movzx r9d, byte [rax + rdx]
mov r10d, r8d
xor r10b, r9b
and r8b, r9b
add r8b, r8b
add r8b, r10b
mov byte [rax + rcx], r8b
lea r8d, [rax + 1]
cmp r8d, 0xc
jg 0x14047113c
inc rax
jmp 0x140471110
mov al, 0xa5
xchg byte [0x14067a5cd], al
lea rax, [0x14067a5c0]
ret
xor edx, edx
lea rax, [0x14067a460]
lea rcx, [0x14055be50]
nop dword [rax]
movsxd rdx, edx
movzx r8d, byte [rdx + rcx]
add byte [rdx + rax], r8b
mov r8d, edx
and r8d, 0x7fffffff
xor r8d, 0x7ffffffe
and r8d, edx
xor edx, 1
add r8d, r8d
mov r9d, edx
xor r9d, r8d
and r8d, edx
lea edx, [r9 + r8*2]
cmp edx, 0xc
jl 0x140471160
mov al, 0x23
xchg byte [0x14067a46c], al
lea rax, [0x14067a460]
ret