Function at 0x180002a32
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x88
lea rdx, [rsp + 0x42]
movabs rax, 0x1000500080060
mov qword [rdx - 2], rax
mov dword [rdx + 6], 0x600004
mov word [rdx + 0x12], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x40], 0x60
inc rax
cmp rax, 0xa
jne 0x180002a62
xor ebp, ebp
lea rsi, [rsp + 0x42]
mov word [rsi + 0x12], bp
lea rdi, [rsp + 0x30]
mov rcx, rdi
call fcn.180004d10
lea rcx, [0x180027d68]
lea rbx, [rsp + 0x2c]
mov rdx, rbx
mov r8, rdi
call fcn.18001d898
mov eax, dword [rbx]
mov dword [0x180027640], eax
movabs rax, 0x2c002c00110043
mov qword [rsi - 2], rax
mov dword [rsi + 6], 0x430037
mov word [rsi + 0x12], bp
mov eax, 1
xor byte [rsp + rax*2 + 0x40], 0x43
inc rax
cmp rax, 0xa
jne 0x180002ac5
xor ebp, ebp
lea rdi, [rsp + 0x42]
mov word [rdi + 0x12], bp
lea rbx, [rsp + 0x30]
mov rcx, rbx
mov rdx, rsi
call fcn.180004d10
lea rcx, [0x180027d68]
lea rsi, [rsp + 0x2c]
mov rdx, rsi
mov r8, rbx
call fcn.18001d898
mov eax, dword [rsi]
mov dword [0x180027644], eax
movaps xmm0, xmmword [str.X6_3_ahiT785_78]
movaps xmmword [rdi - 2], xmm0
mov word [rdi + 0xe], 0x58
mov word [rdi + 0x1e], bp
mov eax, 1
xor byte [rsp + rax*2 + 0x40], 0x58
inc rax
cmp rax, 0x10
jne 0x180002b27
xor ebp, ebp
lea rsi, [rsp + 0x42]
mov word [rsi + 0x1e], bp
lea rbx, [rsp + 0x30]
mov rcx, rbx
mov rdx, rdi
call fcn.180004d10
lea rcx, [0x180027d68]
lea rdi, [rsp + 0x2c]
mov rdx, rdi
mov r8, rbx
call fcn.18001d898
mov eax, dword [rdi]
mov dword [0x180027648], eax
movaps xmm0, xmmword [0x180021270]
movaps xmmword [rsi - 2], xmm0
movabs rax, 0x540038000b0031
mov qword [rsi + 0xe], rax
mov word [rsi + 0x2a], bp
mov eax, 1
xor byte [rsp + rax*2 + 0x40], 0x54
inc rax
cmp rax, 0x16
jne 0x180002b91
xor ebp, ebp
lea rdi, [rsp + 0x42]
mov word [rdi + 0x2a], bp
lea rbx, [rsp + 0x30]
mov rcx, rbx
mov rdx, rsi
call fcn.180004d10
lea rcx, [0x180027d68]
lea rsi, [rsp + 0x2c]
mov rdx, rsi
mov r8, rbx
call fcn.18001d898
mov eax, dword [rsi]
mov dword [0x18002764c], eax
movaps xmm0, xmmword [0x180021280]
movaps xmmword [rdi - 2], xmm0
mov dword [rdi + 0xe], 0x130020
mov word [rdi + 0x22], bp
mov eax, 1
xor byte [rsp + rax*2 + 0x40], 0x13
inc rax
cmp rax, 0x12
jne 0x180002bf4
xor ebp, ebp
lea rbx, [rsp + 0x42]
mov word [rbx + 0x22], bp
lea rsi, [rsp + 0x30]
mov rcx, rsi
mov rdx, rdi
call fcn.180004d10
lea rcx, [0x180027d68]
lea rdi, [rsp + 0x2c]
mov rdx, rdi
mov r8, rsi
call fcn.18001d898
mov eax, dword [rdi]
mov dword [0x180027650], eax
movaps xmm0, xmmword [0x180021290]
movaps xmmword [rbx - 2], xmm0
mov word [rbx + 0x1a], bp
mov eax, 1
xor byte [rsp + rax*2 + 0x40], 0xa
inc rax
cmp rax, 0xe
jne 0x180002c50
xor ebp, ebp
lea rsi, [rsp + 0x42]
mov word [rsi + 0x1a], bp
lea rdi, [rsp + 0x30]
mov rcx, rdi
mov rdx, rbx
call fcn.180004d10
lea rcx, [0x180027d68]
lea rbx, [rsp + 0x2c]
mov rdx, rbx
mov r8, rdi
call fcn.18001d898
mov eax, dword [rbx]
mov dword [0x180027654], eax
movaps xmm0, xmmword [0x1800212a0]
movaps xmmword [rsi - 2], xmm0
movabs rax, 0x5f003300000032
mov qword [rsi + 0xe], rax
mov word [rsi + 0x2a], bp
mov eax, 1
xor byte [rsp + rax*2 + 0x40], 0x5f
inc rax
cmp rax, 0x16
jne 0x180002cba
xor ebp, ebp
lea rdi, [rsp + 0x42]
mov word [rdi + 0x2a], bp
lea rbx, [rsp + 0x30]
mov rcx, rbx
mov rdx, rsi
call fcn.180004d10
lea rcx, [0x180027d68]
lea rsi, [rsp + 0x2c]
mov rdx, rsi
mov r8, rbx
call fcn.18001d898
mov eax, dword [rsi]
mov dword [0x180027658], eax
movaps xmm0, xmmword [0x1800212b0]
movaps xmmword [rdi - 2], xmm0
movabs rax, 0x6a001800350007
mov qword [rdi + 0xe], rax
mov word [rdi + 0x2a], bp
mov eax, 1
xor byte [rsp + rax*2 + 0x40], 0x6a
inc rax
cmp rax, 0x16
jne 0x180002d24
xor ebp, ebp
lea rsi, [rsp + 0x42]
mov word [rsi + 0x2a], bp
lea rbx, [rsp + 0x30]
mov rcx, rbx
mov rdx, rdi
call fcn.180004d10
lea rcx, [0x180027d68]
lea rdi, [rsp + 0x2c]
mov rdx, rdi
mov r8, rbx
call fcn.18001d898
mov eax, dword [rdi]
mov dword [0x18002765c], eax
movaps xmm0, xmmword [str.J__88]
movaps xmmword [rsi - 2], xmm0
movabs rax, 0x4a002600150027
mov qword [rsi + 0xe], rax
mov word [rsi + 0x2a], bp
mov eax, 1
xor byte [rsp + rax*2 + 0x40], 0x4a
inc rax
cmp rax, 0x16
jne 0x180002d8e
xor ebp, ebp
lea rdi, [rsp + 0x42]
mov word [rdi + 0x2a], bp
lea rbx, [rsp + 0x30]
mov rcx, rbx
mov rdx, rsi
call fcn.180004d10
lea rcx, [0x180027d68]
lea rsi, [rsp + 0x2c]
mov rdx, rsi
mov r8, rbx
call fcn.18001d898
mov eax, dword [rsi]
mov dword [0x180027660], eax
movaps xmm0, xmmword [0x1800212d0]
movaps xmmword [rdi - 2], xmm0
movabs rax, 0x1f006d00400072
mov qword [rdi + 0xe], rax
mov word [rdi + 0x2a], bp
mov eax, 1
xor byte [rsp + rax*2 + 0x40], 0x1f
inc rax
cmp rax, 0x16
jne 0x180002df8
xor ebp, ebp
lea rsi, [rsp + 0x42]
mov word [rsi + 0x2a], bp
lea rbx, [rsp + 0x30]
mov rcx, rbx
mov rdx, rdi
call fcn.180004d10
lea rcx, [0x180027d68]
lea rdi, [rsp + 0x2c]
mov rdx, rdi
mov r8, rbx
call fcn.18001d898
mov eax, dword [rdi]
mov dword [0x180027664], eax
movaps xmm0, xmmword [0x1800212e0]
movaps xmmword [rsi - 2], xmm0
mov word [rsi + 0x1a], bp
mov eax, 1
xor byte [rsp + rax*2 + 0x40], 0x24
inc rax
cmp rax, 0xe
jne 0x180002e54
xor ebp, ebp
lea rdi, [rsp + 0x42]
mov word [rdi + 0x1a], bp
lea rbx, [rsp + 0x30]
mov rcx, rbx
mov rdx, rsi
call fcn.180004d10
lea rcx, [0x180027d68]
lea rsi, [rsp + 0x2c]
mov rdx, rsi
mov r8, rbx
call fcn.18001d898
mov eax, dword [rsi]
mov dword [0x180027668], eax
movaps xmm0, xmmword [0x1800212f0]
movaps xmmword [rdi - 2], xmm0
mov word [rdi + 0x1a], bp
mov eax, 1
xor byte [rsp + rax*2 + 0x40], 0x2e
inc rax
cmp rax, 0xe
jne 0x180002eb0
xor ebp, ebp
lea rsi, [rsp + 0x42]
mov word [rsi + 0x1a], bp
lea rbx, [rsp + 0x30]
mov rcx, rbx
mov rdx, rdi
call fcn.180004d10
lea rcx, [0x180027d68]
lea rdi, [rsp + 0x2c]
mov rdx, rdi
mov r8, rbx
call fcn.18001d898
mov eax, dword [rdi]
mov dword [0x18002766c], eax
movaps xmm0, xmmword [0x180021300]
movaps xmmword [rsi - 2], xmm0
mov word [rsi + 0xe], 0x1a
mov word [rsi + 0x1e], bp
mov eax, 1
xor byte [rsp + rax*2 + 0x40], 0x1a
inc rax
cmp rax, 0x10
jne 0x180002f12
xor ebp, ebp
lea rdi, [rsp + 0x42]
mov word [rdi + 0x1e], bp
lea rbx, [rsp + 0x30]
mov rcx, rbx
mov rdx, rsi
call fcn.180004d10
lea rcx, [0x180027d68]
lea rsi, [rsp + 0x2c]
mov rdx, rsi
mov r8, rbx
call fcn.18001d898
mov eax, dword [rsi]
mov dword [0x180027670], eax
movaps xmm0, xmmword [0x180021310]
movaps xmmword [rdi - 2], xmm0
mov word [rdi + 0xe], 0x28
mov word [rdi + 0x1e], bp
mov eax, 1
xor byte [rsp + rax*2 + 0x40], 0x28
inc rax
cmp rax, 0x10
jne 0x180002f74
xor ebp, ebp
lea rsi, [rsp + 0x42]
mov word [rsi + 0x1e], bp
lea rbx, [rsp + 0x30]
mov rcx, rbx
mov rdx, rdi
call fcn.180004d10
lea rcx, [0x180027d68]
lea rdi, [rsp + 0x2c]
mov rdx, rdi
mov r8, rbx
call fcn.18001d898
mov eax, dword [rdi]
mov dword [0x180027674], eax
movaps xmm0, xmmword [0x180021320]
movaps xmmword [rsi - 2], xmm0
mov word [rsi + 0x1a], bp
mov eax, 1
xor byte [rsp + rax*2 + 0x40], 0x4a
inc rax
cmp rax, 0xe
jne 0x180002fd0
xor ebp, ebp
lea rdi, [rsp + 0x42]
mov word [rdi + 0x1a], bp
lea rbx, [rsp + 0x30]
mov rcx, rbx
mov rdx, rsi
call fcn.180004d10
lea rcx, [0x180027d68]
lea rsi, [rsp + 0x2c]
mov rdx, rsi
mov r8, rbx
call fcn.18001d898
mov eax, dword [rsi]
mov dword [0x180027678], eax
movaps xmm0, xmmword [0x180021330]
movaps xmmword [rdi - 2], xmm0
mov word [rdi + 0x1a], bp
mov eax, 1
xor byte [rsp + rax*2 + 0x40], 0x6c
inc rax
cmp rax, 0xe
jne 0x18000302c
xor ebp, ebp
lea rsi, [rsp + 0x42]
mov word [rsi + 0x1a], bp
lea rbx, [rsp + 0x30]
mov rcx, rbx
mov rdx, rdi
call fcn.180004d10
lea rcx, [0x180027d68]
lea rdi, [rsp + 0x2c]
mov rdx, rdi
mov r8, rbx
call fcn.18001d898
mov eax, dword [rdi]
mov dword [0x18002767c], eax
movaps xmm0, xmmword [0x180021340]
movaps xmmword [rsi - 2], xmm0
movaps xmm0, xmmword [0x180021350]
movaps xmmword [rsi + 0xe], xmm0
mov word [rsi + 0x1e], 0x52
mov word [rsi + 0x3e], bp
mov eax, 1
xor byte [rsp + rax*2 + 0x40], 0x52
inc rax
cmp rax, 0x20
jne 0x180003099
xor ebp, ebp
lea rdi, [rsp + 0x42]
mov word [rdi + 0x3e], bp
lea rbx, [rsp + 0x30]
mov rcx, rbx
mov rdx, rsi
call fcn.180004d10
lea rcx, [0x180027d68]
lea rsi, [rsp + 0x2c]
mov rdx, rsi
mov r8, rbx
call fcn.18001d898
mov eax, dword [rsi]
mov dword [0x180027680], eax
movaps xmm0, xmmword [0x180021360]
movaps xmmword [rdi - 2], xmm0
movaps xmm0, xmmword [0x180021370]
movaps xmmword [rdi + 0xe], xmm0
mov word [rdi + 0x1e], pe_nt_image_headers64
mov word [rdi + 0x3e], bp
mov eax, 1
xor byte [rsp + rax*2 + 0x40], 0x78
inc rax
cmp rax, 0x20
jne 0x180003106
xor ebp, ebp
lea rsi, [rsp + 0x42]
mov word [rsi + 0x3e], bp
lea rbx, [rsp + 0x30]
mov rcx, rbx
mov rdx, rdi
call fcn.180004d10
lea rcx, [0x180027d68]
lea rdi, [rsp + 0x2c]
mov rdx, rdi
mov r8, rbx
call fcn.18001d898
mov eax, dword [rdi]
mov dword [0x180027684], eax
movaps xmm0, xmmword [0x180021380]
movaps xmmword [rsi - 2], xmm0
mov dword [rsi + 0xe], 0x520061
mov word [rsi + 0x12], 0x3e
mov word [rsi + 0x26], bp
mov eax, 1
xor byte [rsp + rax*2 + 0x40], 0x3e
inc rax
cmp rax, 0x14
jne 0x18000316f
xor ebp, ebp
lea rdi, [rsp + 0x42]
mov word [rdi + 0x26], bp
lea rbx, [rsp + 0x30]
mov rcx, rbx
mov rdx, rsi
call fcn.180004d10
lea rcx, [0x180027d68]
lea rsi, [rsp + 0x2c]
mov rdx, rsi
mov r8, rbx
call fcn.18001d898
mov eax, dword [rsi]
mov dword [0x180027688], eax
movaps xmm0, xmmword [0x180021390]
movaps xmmword [rdi - 2], xmm0
mov dword [rdi + 0xe], 0x490064
mov word [rdi + 0x12], 0x3b
mov word [rdi + 0x26], bp
mov eax, 1
xor byte [rsp + rax*2 + 0x40], 0x3b
inc rax
cmp rax, 0x14
jne 0x1800031d8
xor ebp, ebp
lea rsi, [rsp + 0x42]
mov word [rsi + 0x26], bp
lea rbx, [rsp + 0x30]
mov rcx, rbx
mov rdx, rdi
call fcn.180004d10
lea rcx, [0x180027d68]
lea rdi, [rsp + 0x2c]
mov rdx, rdi
mov r8, rbx
call fcn.18001d898
mov eax, dword [rdi]
mov dword [0x18002768c], eax
movaps xmm0, xmmword [0x1800213a0]
movaps xmmword [rsi - 2], xmm0
mov word [rsi + 0x1a], bp
mov eax, 1
xor byte [rsp + rax*2 + 0x40], 0x2f
inc rax
cmp rax, 0xe
jne 0x180003234
xor ebp, ebp
lea rdi, [rsp + 0x42]
mov word [rdi + 0x1a], bp
lea rbx, [rsp + 0x30]
mov rcx, rbx
mov rdx, rsi
call fcn.180004d10
lea rcx, [0x180027d68]
lea rsi, [rsp + 0x2c]
mov rdx, rsi
mov r8, rbx
call fcn.18001d898
mov eax, dword [rsi]
mov dword [0x180027690], eax
movaps xmm0, xmmword [0x1800213b0]
movaps xmmword [rdi - 2], xmm0
mov word [rdi + 0x1a], bp
mov eax, 1
xor byte [rsp + rax*2 + 0x40], 0x3e
inc rax
cmp rax, 0xe
jne 0x180003290
mov word [rsp + 0x5c], 0
lea rsi, [rsp + 0x30]
mov rcx, rsi
mov rdx, rdi
call fcn.180004d10
lea rcx, [0x180027d68]
lea rdi, [rsp + 0x2c]
mov rdx, rdi
mov r8, rsi
call fcn.18001d898
mov eax, dword [rdi]
mov dword [0x180027694], eax
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
ret