Function at 0x140002cc0
Capabilities:
Create thread
Send data
Send data on socket
Send http request

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rdi
push r12
push r13
push r15
sub rsp, 0x30
xor r13d, r13d
movsxd r15, r9d
mov r12, r8
mov rbp, rdx
mov rbx, rcx
cmp qword [rcx + 0xc8], r13
je 0x140002d3b
nop dword [rax]
mov r11d, dword [rbx + 0xf0]
lea rdi, [rbx + 0xc8]
mov r10d, r13d
cmp r10d, r11d
jae 0x140002db3
xor edx, edx
mov eax, r10d
add rax, rbp
div r11
imul rbx, rdx, 0x1e8
add rbx, qword [rdi]
mov eax, dword [rbx + 0x17c]
cmp dword [rbx + 0x178], eax
jb 0x140002d32
inc r10d
jmp 0x140002d01
cmp qword [rbx + 0xc8], r13
jne 0x140002cf0
mov eax, dword [rbx + 0x17c]
cmp dword [rbx + 0x178], eax
je 0x1400033f0
mov r8d, r15d
mov rdx, r12
mov rcx, rbx
call fcn.140001f00
test eax, eax
je 0x1400033f0
mov rax, qword [rbx + 0x60]
test rax, rax
je 0x140002e24
mov rcx, qword [rbx + 0x68]
mov r8d, r15d
mov rdx, r12
call rax
test eax, eax
jne 0x140002e24
mov rcx, rbp
call qword [sym.imp.WS2_32.dll_closesocket]
test eax, eax
je 0x140002e02
mov rcx, qword [0x1400c1658]
lea r9, [0x1400b5eb8]
mov r8d, 0x99a
lea rdx, [0x1400b5ff0]
call qword [0x1400c1670]
int3
mov rcx, rbp
call qword [sym.imp.WS2_32.dll_closesocket]
test eax, eax
je 0x140002de2
mov rcx, qword [0x1400c1658]
lea r9, [0x1400b5c18]
mov r8d, 0x94b
lea rdx, [0x1400b5e60]
call qword [0x1400c1670]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov dword [rax], reloc.WS2_32.dll_socket
xor eax, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x30
pop r15
pop r13
pop r12
pop rdi
pop rbp
ret
mov r8d, r15d
mov rdx, r12
mov rcx, rbx
call fcn.1400020d0
xor eax, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x30
pop r15
pop r13
pop r12
pop rdi
pop rbp
ret
mov edx, 0x180
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_calloc]
mov rdi, rax
test rax, rax
jne 0x140002ec1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov edi, dword [rax]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov ecx, dword [rax]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_strerror]
lea rdx, [0x1400b5f28]
mov rcx, rbx
mov r8, rax
call fcn.14000f5a0
mov rcx, rbp
call qword [sym.imp.WS2_32.dll_closesocket]
test eax, eax
je 0x140002e97
mov rcx, qword [0x1400c1658]
lea r9, [0x1400b5f48]
mov r8d, 0x9ac
lea rdx, [0x1400b6080]
call qword [0x1400c1670]
int3
mov r8d, r15d
mov rdx, r12
mov rcx, rbx
call fcn.1400020d0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov dword [rax], edi
xor eax, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x30
pop r15
pop r13
pop r12
pop rdi
pop rbp
ret
mov qword [rsp + 0x60], rsi
mov ecx, 0x28
mov qword [rsp + 0x68], r14
mov r14, qword [rbx + 0xd8]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rsi, rax
test rax, rax
jne 0x140002eea
mov rsi, r13
jmp 0x140002f5a
cmp r14, 0x8000
ja 0x140002efc
mov qword [rax], 0xffffffffffffffff
jmp 0x140002f16
mov r9d, 4
mov r8d, 0x3000
mov rdx, r14
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov qword [rsi], rax
mov rax, qword [rsi]
dec rax
cmp rax, 0xfffffffffffffffd
ja 0x140002f2b
mov dword [rsi + 0x20], 1
jmp 0x140002f4e
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov qword [rsi], rax
test rax, rax
jne 0x140002f4a
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rsi, r13
jmp 0x140002f5a
mov dword [rsi + 0x20], r13d
mov qword [rsi + 0x10], r13
mov qword [rsi + 0x18], r14
mov qword [rsi + 8], r14
mov qword [rdi + 0x40], rsi
test rsi, rsi
jne 0x140002fdc
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov ecx, dword [rax]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_strerror]
lea rdx, [0x1400b5fb8]
mov rcx, rbx
mov r8, rax
call fcn.14000f5a0
mov rcx, rbp
call qword [sym.imp.WS2_32.dll_closesocket]
test eax, eax
je 0x140002fb2
mov rcx, qword [0x1400c1658]
lea r9, [0x1400b5fd8]
mov r8d, 0x9bb
lea rdx, [0x1400b60f0]
call qword [0x1400c1670]
int3
mov r8d, r15d
mov rdx, r12
mov rcx, rbx
call fcn.1400020d0
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov dword [rax], recv
xor eax, eax
jmp 0x1400032b3
mov rax, qword [rbx + 0x180]
mov rcx, r15
mov qword [rdi + 0x100], rax
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov qword [rdi + 0x98], rax
test rax, rax
jne 0x140003072
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov esi, dword [rax]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov ecx, dword [rax]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_strerror]
lea rdx, [0x1400b6048]
mov rcx, rbx
mov r8, rax
call fcn.14000f5a0
mov rcx, rbp
call qword [sym.imp.WS2_32.dll_closesocket]
test eax, eax
je 0x140003056
mov rcx, qword [0x1400c1658]
lea r9, [0x1400b6068]
mov r8d, 0x9cf
lea rdx, [0x1400b6170]
call qword [0x1400c1670]
int3
mov r8d, r15d
mov rdx, r12
mov rcx, rbx
call fcn.1400020d0
mov rcx, qword [rdi + 0x40]
call fcn.14000f460
jmp 0x1400033d8
mov r8, r15
mov rdx, r12
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
movzx eax, byte [rsp + 0x88]
mov byte [rdi + 0x118], al
mov dword [rdi + 0xf0], r15d
mov qword [rdi + 0x110], rbp
mov qword [rdi + 0x20], rbx
call fcn.14000f420
mov qword [rdi + 0xf8], rax
mov eax, dword [rbx + 0x18c]
and eax, 2
test al, al
jne 0x1400032cf
lea rax, [0x140009820]
mov qword [rdi + 0x140], rax
lea rcx, [rbx + 0x128]
lea rax, [0x140009970]
mov qword [rdi + 0x148], rax
lea rax, [fcn.140009e60]
mov qword [rdi + 0x150], rax
lea rax, [0x140002bd0]
mov qword [rdi + 0x158], rax
lea rax, [0x140002c20]
mov qword [rdi + 0x160], rax
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [rbx + 0x18c]
and eax, 4
test al, al
jne 0x140003141
mov rax, qword [rbx + 0x40]
mov qword [rdi + 0x10], rax
mov qword [rdi + 0x18], r13
cmp qword [rbx + 0x48], r13
jne 0x140003135
mov qword [rbx + 0x48], rdi
jmp 0x14000313d
mov rax, qword [rbx + 0x40]
mov qword [rax + 0x18], rdi
mov qword [rbx + 0x40], rdi
mov rax, qword [rbx + 0x10]
mov qword [rdi], rax
mov qword [rdi + 8], r13
cmp qword [rbx + 0x18], r13
jne 0x140003158
mov qword [rbx + 0x18], rdi
jmp 0x140003160
mov rax, qword [rbx + 0x10]
mov qword [rax + 8], rdi
lea rcx, [rbx + 0x128]
mov qword [rbx + 0x10], rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rax, qword [rbx + 0x80]
test rax, rax
je 0x140003190
mov rcx, qword [rbx + 0x88]
lea r8, [rdi + 0x50]
xor r9d, r9d
mov rdx, rdi
call rax
mov eax, dword [rbx + 0x18c]
and eax, 4
test al, al
je 0x140003259
mov rsi, qword [rbx + 0xe8]
test r13b, r13b
je 0x1400031bc
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov esi, reloc.WS2_32.dll_shutdown
mov dword [rax], esi
jmp 0x140003235
mov ecx, 0x18
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov r14, rax
test rax, rax
je 0x140003235
lea rax, [0x140002470]
mov qword [r14 + 8], rdi
mov qword [r14], rax
lea rax, str.MHD_connection
mov qword [r14 + 0x10], rax
mov eax, 0xffffffff
cmp rsi, rax
jbe 0x140003201
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov esi, reloc.WS2_32.dll_shutdown
mov dword [rax], esi
jmp 0x14000322c
mov qword [rsp + 0x28], r13
lea r8, [0x14000f8b0]
mov r9, r14
mov dword [rsp + 0x20], r13d
mov edx, esi
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rdi + 0xa0], rax
cmp rax, 0xffffffffffffffff
jne 0x1400032a8
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov esi, dword [rax]
mov ecx, esi
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_strerror]
lea rdx, str.Failed_to_create_a_thread:__s_n
mov rcx, rbx
mov r8, rax
call fcn.14000f5a0
jmp 0x1400032d4
cmp dword [rsp + 0x80], 1
jne 0x1400032a8
cmp qword [rbx + 0x160], 0xffffffffffffffff
je 0x1400032a8
mov rcx, qword [rbx + 0x168]
lea rdx, [0x1400b5a5c]
xor r9d, r9d
lea r8d, [r9 + 1]
call qword [sym.imp.WS2_32.dll_send]
test eax, eax
jg 0x1400032a8
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2733
je 0x1400032a8
lea rdx, str.Failed_to_signal_new_connection_via_inter_thread_communication_channel.
mov rcx, rbx
call fcn.14000f5a0
inc dword [rbx + 0x178]
mov eax, 1
mov rsi, qword [rsp + 0x60]
mov r14, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x70]
add rsp, 0x30
pop r15
pop r13
pop r12
pop rdi
pop rbp
ret
mov esi, reloc.WS2_32.dll_shutdown
mov rax, qword [rbx + 0x80]
test rax, rax
je 0x1400032f6
mov rcx, qword [rbx + 0x88]
lea r8, [rdi + 0x50]
mov r9d, 1
mov rdx, rdi
call rax
mov rcx, rbp
call qword [sym.imp.WS2_32.dll_closesocket]
test eax, eax
je 0x140003325
mov rcx, qword [0x1400c1658]
lea r9, [0x1400b6158]
mov r8d, 0xa76
lea rdx, [0x1400b63a0]
call qword [0x1400c1670]
int3
mov r8d, r15d
mov rdx, r12
mov rcx, rbx
call fcn.1400020d0
lea rcx, [rbx + 0x128]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [rbx + 0x18c]
and eax, 4
test al, al
jne 0x140003383
mov rcx, qword [rdi + 0x18]
mov rax, qword [rdi + 0x10]
test rcx, rcx
jne 0x140003360
mov qword [rbx + 0x40], rax
jmp 0x140003364
mov qword [rcx + 0x10], rax
mov rcx, qword [rdi + 0x10]
mov rax, qword [rdi + 0x18]
test rcx, rcx
jne 0x140003377
mov qword [rbx + 0x48], rax
jmp 0x14000337b
mov qword [rcx + 0x18], rax
mov qword [rdi + 0x10], r13
mov qword [rdi + 0x18], r13
mov rcx, qword [rdi + 8]
mov rax, qword [rdi]
test rcx, rcx
jne 0x140003395
mov qword [rbx + 0x10], rax
jmp 0x140003398
mov qword [rcx], rax
mov rcx, qword [rdi]
mov rax, qword [rdi + 8]
test rcx, rcx
jne 0x1400033aa
mov qword [rbx + 0x18], rax
jmp 0x1400033ae
mov qword [rcx + 8], rax
lea rcx, [rbx + 0x128]
mov qword [rdi], r13
mov qword [rdi + 8], r13
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rcx, qword [rdi + 0x40]
call fcn.14000f460
mov rcx, qword [rdi + 0x98]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov dword [rax], esi
xor eax, eax
jmp 0x1400032b3
lea rdx, str.Server_reached_connection_limit._Closing_inbound_connection._n
mov rcx, rbx
call fcn.14000f5a0
mov rcx, rbp
call qword [sym.imp.WS2_32.dll_closesocket]
test eax, eax
je 0x140002de2
mov rcx, qword [0x1400c1658]
lea r9, [0x1400b5e48]
mov r8d, 0x987
lea rdx, [0x1400b5f60]
call qword [0x1400c1670]
int3