Function at 0x140002938
Capabilities:
Check for time delay via gettickcount
Query service configuration
Query service status
Read file on windows
Start service
Write file on windows

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r12
push rbp
push r14
push r15
lea rbp, [rax - 0x1188]
mov eax, 0x1270
call fcn.140029c30
sub rsp, rax
mov rax, qword [0x1400397a8]
xor rax, rsp
mov qword [rbp + 0x1160], rax
xor edx, edx
xor ecx, ecx
mov r8d, 0xf003f
call qword [sym.imp.ADVAPI32.dll_OpenSCManagerA]
mov qword [0x1400415c0], rax
test rax, rax
je 0x1400029c0
mov r8d, 0xf01ff
lea rdx, str.HoudiniLicenseServer
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenServiceA]
mov qword [0x1400415b8], rax
test rax, rax
jne 0x140002a20
mov rcx, qword [0x1400415c0]
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov ebx, 0x1000
lea r8, str.Could_not_get_service_path._r_n
mov edx, ebx
lea rcx, [rsp + 0x60]
call fcn.140001010
mov rcx, qword [0x140040998]
lea r8, [rsp + 0x60]
mov edi, 0x3ea
mov edx, edi
call qword [sym.imp.USER32.dll_SetDlgItemTextA]
call fcn.140002e10
lea r9, [rsp + 0x60]
mov rdx, rbx
lea rcx, [rsp + 0x60]
test eax, eax
je 0x140002ad5
lea r8, str._sHoudiniLicenseServer_service_failed_to_stop._Maybe_its_already_stopped..._Error__d__r_n
mov dword [rsp + 0x20], eax
call fcn.140001010
jmp 0x140002ae1
lea r9, [rsp + 0x30]
xor r8d, r8d
xor edx, edx
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_QueryServiceConfigA]
test eax, eax
jne 0x140002a97
mov ecx, dword [rsp + 0x30]
call fcn.14001c158
mov r8d, dword [rsp + 0x30]
lea r9, [rsp + 0x30]
mov rcx, qword [0x1400415b8]
mov rdx, rax
mov rbx, rax
call qword [sym.imp.ADVAPI32.dll_QueryServiceConfigA]
test eax, eax
jne 0x140002a7a
mov rcx, qword [0x1400415c0]
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov rcx, qword [0x1400415b8]
jmp 0x1400029ba
mov r8, qword [rbx + 0x10]
lea rcx, [rbp + 0xf60]
mov edx, 0x200
call fcn.14001c160
mov rcx, rbx
call fcn.14001c1c0
mov rcx, qword [0x1400415c0]
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov rcx, qword [0x1400415b8]
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov ebx, 0x1000
lea r9, [rbp + 0xf60]
mov edx, ebx
lea r8, str.Found_service_at__s._r_n
lea rcx, [rsp + 0x60]
call fcn.140001010
jmp 0x1400029d8
lea r8, str._sHoudiniLicenseServer_service_stopped._r_n
call fcn.140001010
mov rcx, qword [0x140040998]
lea r8, [rsp + 0x60]
mov edx, edi
call qword [sym.imp.USER32.dll_SetDlgItemTextA]
lea r8, [0x140035680]
lea rdx, [rbp + 0xf60]
lea rcx, [rsp + 0x30]
call fcn.14001bda8
test eax, eax
jne 0x140002c60
mov rcx, qword [rsp + 0x30]
lea r8d, [rax + 2]
xor edx, edx
call fcn.14001ba10
mov rcx, qword [rsp + 0x30]
call fcn.14001b718
mov rcx, qword [rsp + 0x30]
xor r8d, r8d
xor edx, edx
movsxd r14, eax
call fcn.14001ba10
mov rsi, qword [rsp + 0x30]
test rsi, rsi
je 0x140002c60
mov rcx, r14
call fcn.14001c158
mov r9, rsi
mov r8d, 1
mov rdx, r14
mov rcx, rax
mov r15, rax
call fcn.14001c090
mov rcx, rsi
call fcn.14001b7a4
test r15, r15
je 0x140002c60
lea r9, [rsp + 0x60]
mov rdx, rbx
lea r8, str._sPatching_the_public_keys_in_sesinetd.exe..._r_n
lea rcx, [rsp + 0x60]
call fcn.140001010
mov rcx, qword [0x140040998]
lea r8, [rsp + 0x60]
mov edx, edi
call qword [sym.imp.USER32.dll_SetDlgItemTextA]
mov edx, r14d
mov rcx, r15
call fcn.1400022d8
lea r9, [rsp + 0x60]
mov rdx, rbx
lea rcx, [rsp + 0x60]
test eax, eax
je 0x140002c57
lea r8, str._sSuccessfully_patched__d_keys__r_n
mov dword [rsp + 0x20], eax
call fcn.140001010
mov rcx, qword [0x140040998]
lea r8, [rsp + 0x60]
mov edx, edi
call qword [sym.imp.USER32.dll_SetDlgItemTextA]
lea r8, [0x140035684]
lea rdx, [rbp + 0xf60]
lea rcx, [rsp + 0x30]
call fcn.14001bda8
test eax, eax
je 0x140002c11
or esi, 0xffffffff
jmp 0x140002c33
mov r9, qword [rsp + 0x30]
mov r8, r14
mov edx, 1
mov rcx, r15
call fcn.14001bc68
mov rcx, qword [rsp + 0x30]
mov rsi, rax
call fcn.14001b7a4
lea r9, [rsp + 0x60]
mov rdx, rbx
lea rcx, [rsp + 0x60]
cmp esi, r14d
jne 0x140002c4e
lea r8, str._sSuccessfully_wrote_patched_patched_file._r_n
jmp 0x140002c74
lea r8, str._sFailed_to_write_patched_file_correctly...._r_n
jmp 0x140002c74
lea r8, str._sFound_no_keys_to_patch._This_is_probably_already_patched_fully..._r_n
jmp 0x140002c74
lea r9, [rsp + 0x60]
mov rdx, rbx
lea r8, str._sReading_sesinetd.exe_failed._Something_is_wrong._r_n
lea rcx, [rsp + 0x60]
call fcn.140001010
mov rcx, qword [0x140040998]
lea r8, [rsp + 0x60]
mov edx, edi
call qword [sym.imp.USER32.dll_SetDlgItemTextA]
xor edx, edx
xor ecx, ecx
mov r8d, 0xf003f
call qword [sym.imp.ADVAPI32.dll_OpenSCManagerA]
mov qword [0x1400415c0], rax
test rax, rax
je 0x140002cd8
mov r8d, 0x10
lea rdx, str.HoudiniLicenseServer
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenServiceA]
mov qword [0x1400415b8], rax
test rax, rax
jne 0x140002d35
mov rcx, qword [0x1400415c0]
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
lea r8, str._sFailed_to_restart_HoudiniLicenseServer._Try_rebooting._r_n
lea r9, [rsp + 0x60]
mov rdx, rbx
lea rcx, [rsp + 0x60]
call fcn.140001010
mov rcx, qword [0x140040998]
lea r8, [rsp + 0x60]
mov edx, edi
call qword [sym.imp.USER32.dll_SetDlgItemTextA]
mov rcx, qword [rbp + 0x1160]
xor rcx, rsp
call fcn.140012470
lea r11, [rsp + 0x1270]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
xor r8d, r8d
xor edx, edx
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_StartServiceA]
mov rcx, qword [0x1400415b8]
test eax, eax
jne 0x140002d59
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
jmp 0x140002ccb
lea rdx, [rsp + 0x38]
call qword [sym.imp.ADVAPI32.dll_QueryServiceStatus]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
cmp dword [rsp + 0x3c], 2
mov r14d, eax
mov esi, dword [rsp + 0x4c]
jne 0x140002dea
mov r15d, 0x3e8
mov r12d, 0x2710
mov eax, 0xcccccccd
mul dword [rsp + 0x50]
shr edx, 3
cmp edx, r15d
jae 0x140002d9a
mov edx, r15d
jmp 0x140002da1
cmp edx, r12d
cmova edx, r12d
mov ecx, edx
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rcx, qword [0x1400415b8]
lea rdx, [rsp + 0x38]
call qword [sym.imp.ADVAPI32.dll_QueryServiceStatus]
test eax, eax
je 0x140002dea
cmp dword [rsp + 0x4c], esi
jbe 0x140002dd4
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, dword [rsp + 0x4c]
mov r14d, eax
jmp 0x140002de3
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, r14d
cmp eax, dword [rsp + 0x50]
ja 0x140002dea
cmp dword [rsp + 0x3c], 2
je 0x140002d84
mov rcx, qword [0x1400415b8]
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov rcx, qword [0x1400415c0]
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
lea r8, str._sSuccessfully_restarted_HoudiniLicenseServer_r_n
jmp 0x140002cdf