Function at 0x180006bc0
Capabilities:
Create thread
Initialize winsock library
Resolve dns

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov word [rsp + 8], cx
push rdi
sub rsp, 0x280
movzx eax, byte [0x18000b0f0]
test eax, eax
je 0x180006bf3
lea rax, str.WebServer_is_already_running.
jmp 0x180006fcf
movzx eax, word [rsp + 0x290]
test eax, eax
jne 0x180006c0c
mov eax, 0x1f90
mov word [rsp + 0x290], ax
cmp qword [rsp + 0x298], 0
je 0x180006c30
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x298]
movzx eax, word [rcx + rax]
test eax, eax
jne 0x180006c3c
lea rax, str.No_static_resource_directory_is_specified.
jmp 0x180006fcf
mov rcx, qword [rsp + 0x298]
call fcn.180001b90
movzx eax, al
test eax, eax
jne 0x180006c5c
lea rax, str.Could_not_set_static_resource_directory._Make_sure_path_is_valid.
jmp 0x180006fcf
mov rcx, qword [rsp + 0x298]
call fcn.1800031c0
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
inc eax
mov r8d, eax
mov rdx, qword [rsp + 0x298]
lea rcx, [0x18000b0b8]
call fcn.180001980
nop
cmp qword [rsp + 0x2a0], 0
jne 0x180006caf
cmp qword [rsp + 0x2a8], 0
jne 0x180006caf
lea rax, str.No_request_handlers_were_specified__neither_HTTP_POST_request_handler_nor_WebSocket_request_handler_._At_least_one_of_them_must_be_specified.
jmp 0x180006fcf
cmp qword [rsp + 0x2a0], 0
je 0x180006ccc
mov edx, 0x20000
lea rcx, [0x18000b0c8]
call fcn.180001450
nop
mov rax, qword [rsp + 0x2a0]
mov qword [0x18000b018], rax
mov rax, qword [rsp + 0x2a8]
mov qword [0x18000b020], rax
lea rdx, [rsp + 0xe0]
mov cx, 0x202
call sub.WS2_32.dll_WSAStartup
test eax, eax
je 0x180006d0b
lea rax, str.Failed_to_initialize_Windows_sockets.
jmp 0x180006fcf
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x48], 0xffffffffffffffff
mov byte [rsp + 0x31], 0
mov byte [rsp + 0x30], 0
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x31]
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x88]
call fcn.180006a20
mov r8d, 0x30
xor edx, edx
lea rcx, [rsp + 0xa8]
call fcn.1800028f0
mov dword [rsp + 0xac], 2
mov dword [rsp + 0xb0], 1
mov dword [rsp + 0xb4], 6
lea rax, [rsp + 0x68]
mov rdi, rax
xor eax, eax
mov ecx, 8
rep stosb byte [rdi], al
movzx eax, word [rsp + 0x290]
mov r8d, eax
lea rdx, [0x1800099f4]
lea rcx, [rsp + 0x68]
call fcn.180003150
nop
lea r9, [rsp + 0x40]
lea r8, [rsp + 0xa8]
lea rdx, [rsp + 0x68]
lea rcx, str.127.0.0.1
call qword [sym.imp.WS2_32.dll_getaddrinfo]
test eax, eax
je 0x180006ded
lea rdx, str.The_getaddrinfo_function_failed.
lea rcx, [rsp + 0x88]
call fcn.180006af0
jmp 0x180006fcf
mov rax, qword [rsp + 0x40]
mov r8d, dword [rax + 0xc]
mov rax, qword [rsp + 0x40]
mov edx, dword [rax + 8]
mov rax, qword [rsp + 0x40]
mov ecx, dword [rax + 4]
call sub.WS2_32.dll_socket
mov qword [rsp + 0x48], rax
cmp qword [rsp + 0x48], 0xffffffffffffffff
jne 0x180006e31
lea rdx, str.Failed_to_create_listener_socket.
lea rcx, [rsp + 0x88]
call fcn.180006af0
jmp 0x180006fcf
mov rax, qword [rsp + 0x40]
mov r8d, dword [rax + 0x10]
mov rax, qword [rsp + 0x40]
mov rdx, qword [rax + 0x20]
mov rcx, qword [rsp + 0x48]
call sub.WS2_32.dll_bind
cmp eax, 0xffffffff
jne 0x180006e6b
lea rdx, str.Failed_to_bind_socket.
lea rcx, [rsp + 0x88]
call fcn.180006af0
jmp 0x180006fcf
mov edx, 5
mov rcx, qword [rsp + 0x48]
call sub.WS2_32.dll_listen
cmp eax, 0xffffffff
jne 0x180006e98
lea rdx, str.Failed_to_start_listening_for_incoming_connections.
lea rcx, [rsp + 0x88]
call fcn.180006af0
jmp 0x180006fcf
mov byte [0x18000b0f0], 1
lea rcx, [0x18000b088]
call fcn.180006b80
lea rcx, [0x18000b058]
call fcn.180006b80
lea rcx, [0x18000b028]
call fcn.180006b80
lea rcx, [rsp + 0x58]
call fcn.1800057b0
nop
mov dword [rsp + 0x38], 0
jmp 0x180006ee2
mov eax, dword [rsp + 0x38]
inc eax
mov dword [rsp + 0x38], eax
cmp dword [rsp + 0x38], 3
jge 0x180006f2f
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0
lea r9, [rsp + 0x48]
lea r8, [0x180006fe0]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [rsp + 0x70], rax
cmp qword [rsp + 0x70], 0
je 0x180006f2d
mov rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x58]
call fcn.180002aa0
nop
jmp 0x180006ed8
lea rcx, [rsp + 0x58]
call fcn.180001b80
mov qword [rsp + 0x78], rax
lea rcx, [rsp + 0x58]
call fcn.180001330
mov dword [rsp + 0x54], eax
mov r9d, 0xffffffff
mov r8d, 1
mov rdx, qword [rsp + 0x78]
mov ecx, dword [rsp + 0x54]
call qword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
nop
mov dword [rsp + 0x34], 0
jmp 0x180006f7c
mov eax, dword [rsp + 0x34]
inc eax
mov dword [rsp + 0x34], eax
lea rcx, [rsp + 0x58]
call fcn.180001330
cmp dword [rsp + 0x34], eax
jge 0x180006fa6
mov edx, dword [rsp + 0x34]
lea rcx, [rsp + 0x58]
call fcn.180002bb0
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
jmp 0x180006f72
xor edx, edx
lea rcx, [rsp + 0x88]
call fcn.180006af0
mov qword [rsp + 0x80], rax
lea rcx, [rsp + 0x58]
call fcn.1800018e0
mov rax, qword [rsp + 0x80]
add rsp, 0x280
pop rdi
ret