Function at 0x140003bc0
Capabilities:
Create service
Persist via windows service

Disassembly:
mov r11, rsp
push rsi
push rdi
push r12
sub rsp, 0x230
mov qword [rsp + 0x98], 0xfffffffffffffffe
mov qword [r11 + 0x18], rbx
mov qword [r11 + 0x20], rbp
mov rax, qword [0x140048dc0]
xor rax, rsp
mov qword [rsp + 0x220], rax
mov rbx, rdx
mov rbp, rcx
mov qword [r11 - 0x178], rdx
cmp byte [rcx + 0x54], 0
jne 0x140003c30
cmp qword [rdx + 0x20], 0x10
jb 0x140003c17
mov rcx, qword [rdx + 8]
call fcn.1400062d4
mov qword [rbx + 0x20], 0xf
xor edi, edi
mov qword [rbx + 0x18], rdi
mov byte [rbx + 8], dil
xor al, al
jmp 0x140003e7e
cmp qword [rdx + 0x18], 0
jne 0x140003c60
cmp qword [rdx + 0x20], 0x10
jb 0x140003c47
mov rcx, qword [rdx + 8]
call fcn.1400062d4
mov qword [rbx + 0x20], 0xf
xor edi, edi
mov qword [rbx + 0x18], rdi
mov byte [rbx + 8], dil
xor al, al
jmp 0x140003e7e
mov qword [rsp + 0x90], 0xf
xor edi, edi
mov qword [rsp + 0x88], rdi
mov byte [rsp + 0x78], dil
lea r8d, [rdi + 0x1a]
lea rdx, str.Protexis_Licensing_Service
lea rcx, [rsp + 0x70]
call fcn.140002a30
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0xa0]
call fcn.140031560
nop
cmp qword [rbx + 0x20], 0x10
jb 0x140003cb3
lea rsi, [rbx + 8]
mov rcx, qword [rsi]
jmp 0x140003cba
lea rsi, [rbx + 8]
mov rcx, rsi
lea rdx, [rsp + 0xe0]
call qword [sym.imp.KERNEL32.dll_FindFirstFileA]
cmp rax, 0xffffffffffffffff
jne 0x140003d27
cmp qword [rsp + 0xc0], 0x10
jb 0x140003ce6
mov rcx, qword [rsp + 0xa8]
call fcn.1400062d4
mov qword [rsp + 0xc0], 0xf
mov qword [rsp + 0xb8], rdi
mov byte [rsp + 0xa8], 0
cmp qword [rbx + 0x20], 0x10
jb 0x140003d11
mov rcx, qword [rsi]
call fcn.1400062d4
mov qword [rbx + 0x20], 0xf
mov qword [rbx + 0x18], rdi
mov byte [rsi], 0
xor al, al
jmp 0x140003e7e
xor edx, edx
xor ecx, ecx
lea r8d, [rdx + 2]
call qword [sym.imp.ADVAPI32.dll_OpenSCManagerA]
mov r12, rax
test rax, rax
jne 0x140003d96
xor r8d, r8d
mov edx, 0xc0000019
lea rcx, [rsp + 0xa0]
call fcn.140031a80
nop
cmp qword [rsp + 0xc0], 0x10
jb 0x140003d6b
mov rcx, qword [rsp + 0xa8]
call fcn.1400062d4
mov qword [rsp + 0xc0], 0xf
mov qword [rsp + 0xb8], rdi
mov byte [rsp + 0xa8], 0
mov rcx, rbx
call fcn.140001260
xor al, al
jmp 0x140003e7e
cmp qword [rbx + 0x20], 0x10
jb 0x140003da0
mov rsi, qword [rsi]
cmp qword [rbp + 0x48], 0x10
jb 0x140003dad
mov r8, qword [rbp + 0x30]
jmp 0x140003db1
lea r8, [rbp + 0x30]
cmp qword [rbp + 0x20], 0x10
jb 0x140003dbe
mov rdx, qword [rbp + 8]
jmp 0x140003dc2
lea rdx, [rbp + 8]
mov qword [rsp + 0x60], rdi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], 1
mov dword [rsp + 0x28], 2
mov dword [rsp + 0x20], 0x10
mov r9d, 0xf01ff
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_CreateServiceA]
mov rbp, rax
test rax, rax
je 0x140003e14
mov sil, 1
jmp 0x140003e2c
xor r8d, r8d
mov edx, 0xc0000023
lea rcx, [rsp + 0xa0]
call fcn.140031a80
xor sil, sil
mov rcx, rbp
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov rcx, r12
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
nop
cmp qword [rsp + 0xc0], 0x10
jb 0x140003e57
mov rcx, qword [rsp + 0xa8]
call fcn.1400062d4
mov qword [rsp + 0xc0], 0xf
mov qword [rsp + 0xb8], rdi
mov byte [rsp + 0xa8], 0
mov rcx, rbx
call fcn.140001260
mov al, sil
mov rcx, qword [rsp + 0x220]
xor rcx, rsp
call fcn.1400144f0
lea r11, [rsp + 0x230]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsp, r11
pop r12
pop rdi
pop rsi
ret