Function at 0x180029cf0
Capabilities:
Encode data using xor

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 7]
sub rsp, 0xa8
mov r13, qword [rbp + 0x8f]
lea rdx, [0x180000000]
mov ebx, dword [rbp + 0x67]
xor r12d, r12d
mov rdi, qword [rbp + 0x5f]
mov r14, qword [rbp + 0x5f]
mov rsi, qword [rbp + 0x5f]
lea r15d, [r12 + 0xf]
lea eax, [r15 - 0xf]
cmp eax, 0xd
ja case.0x180029d58.16
mov ecx, dword [rdx + rax*4 + 0x2a1fc]
add rcx, rdx
jmp rcx
lea r9, [rbp + 0x57]
mov dword [rbp + 0x57], r12d
mov r8d, 0x8c
lea rdx, [0x18008f048]
lea rcx, str.nstalleerd.
call fcn.1800064b0
mov eax, dword [r12]
lea rdx, [rbp + 0x57]
mov r8d, 0x8c
mov dword [rbp + 0x57], eax
xor ecx, ecx
call fcn.18002ad40
mov ebx, eax
test eax, eax
jne 0x18002a1d3
jmp 0x18002a1bc
cmp byte [r13 + 0x1b8], r12b
je 0x18002a1d0
lea rdx, [r13 + 0x50]
mov qword [rsp + 0x20], r12
xor r9d, r9d
xor r8d, r8d
mov ecx, 0x93
call fcn.180049f50
jmp 0x18002a1bc
mov eax, dword [rbp + 0x67]
lea r9, [rbp + 0x4f]
mov dword [rsp + 0x48], 0xeb
lea rcx, [rbp + 0x6f]
mov dword [rbp + 0x4f], eax
xor r8d, r8d
mov eax, dword [r12]
mov rdx, rdi
mov dword [rbp + 0x57], eax
lea rax, [rbp + 0x57]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], r14
call fcn.18004eed0
mov ebx, eax
test eax, eax
jne 0x18002a19c
mov r8d, dword [r12]
mov eax, r12d
mov dword [rbp + 0x67], eax
test r8d, r8d
je 0x180029e4c
nop dword [rax + rax]
lea rcx, [rax + rdi]
movzx eax, byte [rax + r13]
xor byte [rcx], al
mov eax, dword [rbp + 0x67]
mov r8d, dword [r12]
inc eax
mov dword [rbp + 0x67], eax
cmp eax, r8d
jb 0x180029e30
mov eax, dword [rbp + 0x5f]
lea r9, [0x180000000]
mov qword [rsp + 0x68], r12
lea rcx, [r9 + 0xa0ec4]
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x50], rdi
mov dword [rsp + 0x48], r8d
mov dword [rsp + 0x40], 5
movsxd rdx, r8d
shl rdx, 7
add rcx, rdx
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], 5
mov r9d, dword [rdx + r9 + 0xa0f04]
xor edx, edx
mov qword [rsp + 0x20], rcx
xor ecx, ecx
lea r8d, [rdx + 7]
call fcn.180032870
mov ebx, eax
mov r15d, 0x16
jmp 0x18002a1bc
test rsi, rsi
je 0x180029ecf
test r14, r14
je 0x180029ecf
test rdi, rdi
jne 0x180029f2a
mov ebx, 0x3e
mov eax, ebx
sub eax, 0x3c
je 0x18002a1e7
sub eax, 1
je 0x180029f12
cmp eax, 1
jne 0x180029f23
test rsi, rsi
je 0x180029ef6
mov rcx, rsi
call fcn.180065650
test r14, r14
je 0x180029f03
mov rcx, r14
call fcn.180065650
test rdi, rdi
je 0x180029f23
mov rcx, rdi
call fcn.180065650
jmp 0x180029f23
xor r8d, r8d
lea rdx, [rbp - 0x31]
mov ecx, 0x115
call fcn.180008250
dec ebx
cmp ebx, 0x3b
ja 0x180029ed4
lea rax, [rbp + 0x57]
mov dword [rbp + 0x5f], 0x100
mov r9, rsi
mov qword [rsp + 0x20], rax
lea r8, [rbp + 0x5f]
mov dword [rbp + 0x57], r12d
mov edx, 0x9f
lea rcx, [rbp - 0x31]
call fcn.18004e400
mov ebx, eax
test eax, eax
jne 0x18002a18b
mov dword [rbp + 0x67], 0x100
jmp 0x18002a1bc
mov qword [rsp + 0x40], r12
lea rax, [rbp + 0x57]
mov qword [rsp + 0x38], r12
mov r9d, 0x12
mov qword [rsp + 0x30], rax
xor r8d, r8d
mov qword [rsp + 0x28], rsi
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], r12
mov qword [rbp + 0x57], 0x100
call fcn.180002540
mov qword [rsp + 0x40], r12
lea rax, [rbp + 0x57]
mov qword [rsp + 0x38], r12
mov r9d, 0x12
mov qword [rsp + 0x30], rax
xor r8d, r8d
mov qword [rsp + 0x28], r14
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], r12
mov qword [rbp + 0x57], 0x100
call fcn.180002540
jmp 0x18002a1bc
mov rcx, r14
call fcn.180065650
jmp 0x18002a1bc
mov rcx, qword [SafeArrayDestroy]
xor r9d, r9d
mov eax, dword [r12]
xor r8d, r8d
mov qword [rsp + 0x50], rcx
xor ecx, ecx
mov qword [rsp + 0x48], r12
mov qword [rsp + 0x40], r12
lea edx, [r9 + 0x6e]
mov dword [rbp + 0x57], eax
lea rax, [rbp - 0x31]
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x57]
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], rax
call fcn.180018870
mov rbx, rax
test eax, eax
jne 0x18002a1d3
mov ecx, 0x100
call fcn.18006717c
mov ecx, 0x100
mov rsi, rax
call fcn.18006717c
mov ecx, 0x80
mov r14, rax
call fcn.18006717c
mov rdi, rax
jmp 0x18002a1bc
test r13, r13
jne 0x18002a091
lea r9, [rbp + 0x57]
mov dword [rbp + 0x57], r12d
mov r8d, 0x8c
lea rdx, [0x18008f048]
lea rcx, str.y_PgNQYgma
call fcn.1800064b0
lea r9, [rbp + 0x57]
mov dword [rbp + 0x57], r12d
mov r8d, 0x8c
lea rdx, [0x18008f048]
lea rcx, str.ID_sistema:
call fcn.1800064b0
lea r9, [rbp + 0x57]
mov dword [rbp + 0x57], r12d
mov r8d, 0x8c
lea rdx, [0x18008f048]
lea rcx, str.260_OOBOOFILI
call fcn.1800064b0
jmp 0x18002a1bc
mov qword [rsp + 0x40], r12
lea rax, [rbp + 0x57]
mov qword [rsp + 0x38], r12
mov r9d, 0x12
mov qword [rsp + 0x30], rax
xor r8d, r8d
mov qword [rsp + 0x28], rdi
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], r12
mov qword [rbp + 0x57], 0x80
call fcn.180002540
jmp 0x18002a1bc
mov rcx, rdi
call fcn.180065650
jmp 0x18002a1bc
mov eax, dword [r12]
lea r9, [rbp + 0x57]
xor r8d, r8d
mov dword [rbp + 0x57], eax
xor edx, edx
mov dword [rsp + 0x20], 0xc5
xor ecx, ecx
call fcn.18000efe0
mov ebx, eax
test eax, eax
jne 0x18002a1d3
movsxd rcx, dword [r12]
lea rdx, [0x180000000]
mov rax, rcx
shl rax, 7
cmp ecx, dword [rax + rdx + 0xa0ebc]
jbe case.0x180029d58.16
lea eax, [rbx + 0xb]
jmp 0x18002a1d3
lea r9, [rbp + 0x67]
mov dword [rsp + 0x20], VarCyFromDate
xor r8d, r8d
lea rdx, [rbp - 0x31]
mov rcx, r14
call fcn.18001ae20
mov ebx, eax
test eax, eax
je 0x18002a1a4
xor r8d, r8d
lea rdx, [rbp - 0x31]
mov ecx, 0x115
call fcn.180008250
mov r15d, 0x16
jmp 0x18002a1bc
xor r8d, r8d
lea rdx, [rbp - 0x31]
mov ecx, 0x115
call fcn.180008250
mov dword [rbp + 0x6f], 0x80
lea rdx, [0x180000000]
dec r15d
cmp r15d, 2
ja 0x180029d41
mov eax, dword [rbp + 0x67]
add rsp, 0xa8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov eax, SafeArrayGetDim
jmp 0x18002a1d3
mov rcx, rsi
call fcn.180065650
mov eax, ebx
jmp 0x18002a1d3