Function at 0x1000431ac
Capabilities:
Start http server

Disassembly:
mov rax, rsp
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x100
mov qword [rsp + 0x78], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov rbp, rcx
lea r15, [0x100153eb8]
mov edi, 1
lea r14, [0x10001e5a0]
mov rcx, qword [0x100153eb8]
cmp rcx, r15
je 0x100043207
test byte [rcx + 0x1c], dil
je 0x100043207
mov edx, 0xa7
mov r8, r14
mov rcx, qword [rcx + 0x10]
call fcn.100034784
lea rax, [0x100020050]
mov qword [rsp + 0x30], rax
xor r12d, r12d
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x48], r12
mov byte [rsp + 0x50], r12b
lea r13d, [r12 + 2]
mov dword [rsp + 0x54], r13d
lea rax, [0x10001ffe8]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], r12
mov dword [rsp + 0x70], r12d
lea rcx, [0x100152100]
mov rax, qword [0x100152100]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x150], rax
mov word [rsp + 0x148], di
mov word [rsp + 0x14a], r12w
mov qword [rsp + 0x158], r12
lea rdx, [rsp + 0x158]
lea rcx, [0x10001f290]
call sub.ADVAPI32.dll_ConvertStringSidToSidW
mov r11d, eax
mov ecx, eax
neg ecx
sbb edi, edi
not edi
mov eax, 0x538
and edi, eax
lea r8d, [r12 + 5]
mov rcx, qword [0x100153eb8]
cmp rcx, r15
je 0x1000432ed
test byte [rcx + 0x1c], r13b
je 0x1000432ed
movzx edx, byte [rcx + 0x19]
mov eax, r13d
cmp edi, r12d
cmove eax, r8d
cmp edx, eax
jl 0x1000432ed
mov edx, 0xa8
mov dword [rsp + 0x20], r11d
mov r9d, edi
mov r8, r14
mov rcx, qword [rcx + 0x10]
call fcn.10003be4c
mov esi, 0xc00d37e3
cmp edi, r12d
jne 0x10004360a
mov rbx, qword [rsp + 0x158]
lea rax, [0x10001ff78]
mov qword [rsp + 0x80], rax
mov byte [rsp + 0xcc], r12b
mov dword [rsp + 0xd0], 7
lea rdi, [0x100152100]
mov rcx, rdi
mov rax, qword [0x100152100]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0xd8], rax
mov rcx, rdi
mov rax, qword [0x100152100]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0xe0], rax
mov rcx, rdi
mov rax, qword [0x100152100]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0xe8], rax
mov rcx, rdi
mov rax, qword [0x100152100]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0xf0], rax
xor r8d, r8d
mov rdx, rbx
lea rcx, [rsp + 0x80]
call fcn.100039fdc
cmp al, r12b
jne 0x1000433ae
call fcn.10004f774
nop
mov r9b, 3
mov r8d, 0xf003f
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0x40]
call fcn.10003a384
movzx ebx, al
lea rcx, [rsp + 0x80]
call fcn.100039f38
mov r11d, ebx
neg r11d
sbb edi, edi
not edi
and edi, 0x538
mov rcx, qword [0x100153eb8]
cmp rcx, r15
je 0x10004342b
test byte [rcx + 0x1c], r13b
je 0x10004342b
movzx edx, byte [rcx + 0x19]
mov eax, r13d
cmp edi, r12d
mov r8d, 5
cmove eax, r8d
cmp edx, eax
jl 0x10004342b
mov edx, 0xa9
mov dword [rsp + 0x20], ebx
mov r9d, edi
mov r8, r14
mov rcx, qword [rcx + 0x10]
call fcn.10003be4c
mov rcx, qword [rsp + 0x158]
call qword [sym.imp.KERNEL32.dll_LocalFree]
mov qword [rsp + 0x158], r12
mov esi, 0xc00d37e3
cmp edi, r12d
jne 0x10004360a
xor r8d, r8d
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x30]
call fcn.10003ac50
mov r8d, 4
lea rdx, [rsp + 0x150]
lea rcx, [rsp + 0x30]
call fcn.10003abbc
cmp al, r12b
mov eax, 0x538
cmove edi, eax
mov rcx, qword [0x100153eb8]
cmp rcx, r15
je 0x1000434c2
test byte [rcx + 0x1c], r13b
je 0x1000434c9
movzx edx, byte [rcx + 0x19]
mov eax, r13d
cmp edi, r12d
mov ebx, 5
cmove eax, ebx
cmp edx, eax
jl 0x1000434ce
mov edx, 0xaa
mov r9d, edi
mov r8, r14
mov rcx, qword [rcx + 0x10]
call fcn.100036510
jmp 0x1000434ce
mov ebx, 5
jmp 0x1000434ce
mov ebx, 5
cmp edi, r12d
jne 0x10004360a
xor r8d, r8d
mov edx, r13d
mov ecx, dword [rsp + 0x148]
call qword [sym.imp.HTTPAPI.dll_HttpInitialize]
mov edi, eax
mov rcx, qword [0x100153eb8]
cmp rcx, r15
je 0x100043525
test byte [rcx + 0x1c], r13b
je 0x100043525
movzx r8d, byte [rcx + 0x19]
mov edx, r13d
cmp eax, r12d
cmove edx, ebx
cmp r8d, edx
jl 0x100043525
mov edx, 0xab
mov r9d, eax
mov r8, r14
mov rcx, qword [rcx + 0x10]
call fcn.100036510
mov esi, 0xc00d37e4
cmp edi, r12d
jne 0x10004360a
mov rbx, qword [rsp + 0x150]
mov edi, 1
mov ecx, edi
sub ecx, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
or eax, ecx
jge 0x100043563
xor edx, edx
lea rcx, [rsp + 0x150]
call fcn.100036160
mov rbx, qword [rsp + 0x150]
mov rdx, rbx
lea rcx, [0x10001f138]
call fcn.100042fb0
cmp eax, r12d
jne 0x1000435a9
mov ecx, edi
sub ecx, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
or eax, ecx
jge 0x10004359a
xor edx, edx
lea rcx, [rsp + 0x150]
call fcn.100036160
mov rbx, qword [rsp + 0x150]
mov rdx, rbx
lea rcx, [0x10001f310]
call fcn.100042fb0
xor edx, edx
mov ecx, r13d
call qword [sym.imp.HTTPAPI.dll_HttpTerminate]
mov edi, eax
mov r10, qword [0x100153eb8]
cmp r10, r15
je 0x1000435fc
test byte [r10 + 0x1c], r13b
je 0x1000435fc
movzx edx, byte [r10 + 0x19]
mov eax, r13d
cmp edi, r12d
mov r8d, 5
cmove eax, r8d
cmp edx, eax
jl 0x1000435fc
mov edx, 0xac
mov r9d, edi
mov r8, r14
mov rcx, qword [r10 + 0x10]
call fcn.100036510
mov r10, qword [0x100153eb8]
mov esi, 0xc00d37e6
cmp edi, r12d
je 0x1000436e3
lea rcx, [0x100152100]
mov rax, qword [0x100152100]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x148], rax
mov r8d, edi
lea rdx, [0x10001ea50]
lea rcx, [rsp + 0x148]
call fcn.100039dd4
mov edx, 1
mov qword [rsp + 0x28], r12
mov rbx, qword [rsp + 0x148]
mov qword [rsp + 0x20], rbx
mov r9, qword [rbp + 0x28]
mov r8d, esi
mov rcx, rbp
call fcn.100036d2c
mov r8d, edi
mov edx, esi
mov rcx, qword [0x100158688]
call fcn.100048d2c
mov rcx, qword [0x100153eb8]
cmp rcx, r15
je 0x1000436a7
test byte [rcx + 0x1c], r13b
je 0x1000436a7
cmp byte [rcx + 0x19], r13b
jb 0x1000436a7
mov edx, 0xad
mov dword [rsp + 0x20], edi
mov r9, qword [rbp + 0x28]
mov r8, r14
mov rcx, qword [rcx + 0x10]
call fcn.10003b678
nop
lea rdx, [rbx - 0x18]
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
dec eax
cmp eax, r12d
jg 0x1000436d4
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov rbx, qword [rsp + 0x150]
mov r10, qword [0x100153eb8]
jmp 0x1000436e3
mov rbx, qword [rsp + 0x150]
mov r10, qword [0x100153eb8]
cmp r10, r15
je 0x100043719
test byte [r10 + 0x1c], 1
je 0x100043719
movzx edx, byte [r10 + 0x19]
mov eax, edi
neg eax
sbb ecx, ecx
and ecx, 0xfffffffd
add ecx, 5
cmp edx, ecx
jl 0x100043719
mov edx, 0xae
mov r9d, edi
mov r8, r14
mov rcx, qword [r10 + 0x10]
call fcn.100036510
nop
lea rdx, [rbx - 0x18]
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
dec eax
cmp eax, r12d
jg 0x100043736
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
lea rcx, [rsp + 0x40]
call fcn.10003a2f8
nop
lea rax, [0x100020050]
mov qword [rsp + 0x30], rax
lea rcx, [rsp + 0x30]
call fcn.10003b0ac
mov eax, edi
mov rbx, qword [rsp + 0x140]
add rsp, 0x100
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret