Function at 0x140022fe0
Capabilities:
Check http status code
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x650]
sub rsp, 0x750
mov rax, qword [0x14004e040]
xor rax, rsp
mov qword [rbp + 0x640], rax
mov r14, rcx
xor r15d, r15d
mov r13d, r15d
mov dword [rbp + 0x620], r15d
lea rbx, [rcx + 0x12d0]
mov rcx, qword [rbx + 0x38]
test rcx, rcx
je 0x140023048
mov rax, qword [rcx]
cmp rcx, rbx
setne dl
call qword [rax + 0x20]
mov qword [rbx + 0x38], r15
lea rbx, [r14 + 0x1310]
mov rcx, qword [rbx + 0x38]
test rcx, rcx
je 0x140023068
mov rax, qword [rcx]
cmp rcx, rbx
setne dl
call qword [rax + 0x20]
mov qword [rbx + 0x38], r15
cmp qword [r14 + 0x18], 0xffffffffffffffff
je 0x14002485a
mov edi, 4
mov rax, qword gs:[0x58]
mov rsi, qword [rax]
mov eax, dword [rdi + rsi]
cmp dword [0x1401a3a84], eax
jle 0x1400239e4
lea rcx, [0x1401a3a84]
call fcn.140036480
cmp dword [0x1401a3a84], 0xffffffff
jne 0x1400239e4
xorps xmm0, xmm0
movups xmmword [0x1401a39f0], xmm0
movups xmmword [0x1401a3a00], xmm0
movups xmmword [0x1401a3a10], xmm0
movups xmmword [0x1401a3a20], xmm0
mov dword [rsp + 0x40], 0x64
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x60], r15
mov r8d, 0x17
lea rdx, str.HTTP_1.1_100_Continue_r_n
lea rcx, [rsp + 0x48]
call fcn.140004160
nop
mov dword [rsp + 0x68], 0x65
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp - 0x80], xmm1
mov r8d, 0x22
lea rdx, str.HTTP_1.1_101_Switching_Protocols_r_n
lea rcx, [rsp + 0x70]
call fcn.140004160
nop
mov dword [rbp - 0x70], 0xc8
xorps xmm0, xmm0
movups xmmword [rbp - 0x68], xmm0
mov qword [rbp - 0x58], r15
mov qword [rbp - 0x50], r15
mov r8d, setsockopt
lea rdx, str.HTTP_1.1_200_OK_r_n
lea rcx, [rbp - 0x68]
call fcn.140004160
nop
mov dword [rbp - 0x48], 0xc9
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp - 0x30], xmm1
mov r8d, reloc.WS2_32.dll_shutdown
lea rdx, str.HTTP_1.1_201_Created_r_n
lea rcx, [rbp - 0x40]
call fcn.140004160
nop
mov dword [rbp - 0x20], 0xca
xorps xmm0, xmm0
movups xmmword [rbp - 0x18], xmm0
mov qword [rbp - 8], r15
mov qword [rbp], r15
mov r8d, 0x17
lea rdx, str.HTTP_1.1_202_Accepted_r_n
lea rcx, [rbp - 0x18]
call fcn.140004160
nop
mov dword [rbp + 8], 0xcb
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x20], xmm1
mov r8d, 0x2c
lea rdx, str.HTTP_1.1_203_Non_Authoritative_Information_r_n
lea rcx, [rbp + 0x10]
call fcn.140004160
nop
mov dword [rbp + 0x30], 0xcc
xorps xmm0, xmm0
movups xmmword [rbp + 0x38], xmm0
mov qword [rbp + 0x48], r15
mov qword [rbp + 0x50], r15
mov r8d, 0x19
lea rdx, str.HTTP_1.1_204_No_Content_r_n
lea rcx, [rbp + 0x38]
call fcn.140004160
nop
mov dword [rbp + 0x58], 0xcd
xorps xmm0, xmm0
movups xmmword [rbp + 0x60], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x70], xmm1
mov r8d, 0x1c
lea rdx, str.HTTP_1.1_205_Reset_Content_r_n
lea rcx, [rbp + 0x60]
call fcn.140004160
nop
mov dword [rbp + 0x80], 0xce
xorps xmm0, xmm0
movups xmmword [rbp + 0x88], xmm0
mov qword [rbp + 0x98], r15
mov qword [rbp + 0xa0], r15
mov r8d, 0x1e
lea rdx, str.HTTP_1.1_206_Partial_Content_r_n
lea rcx, [rbp + 0x88]
call fcn.140004160
nop
mov dword [rbp + 0xa8], 0x12c
xorps xmm0, xmm0
movups xmmword [rbp + 0xb0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0xc0], xmm1
mov r8d, 0x1f
lea rdx, str.HTTP_1.1_300_Multiple_Choices_r_n
lea rcx, [rbp + 0xb0]
call fcn.140004160
nop
mov dword [rbp + 0xd0], 0x12d
xorps xmm0, xmm0
movups xmmword [rbp + 0xd8], xmm0
mov qword [rbp + 0xe8], r15
mov qword [rbp + 0xf0], r15
mov r8d, 0x20
lea rdx, str.HTTP_1.1_301_Moved_Permanently_r_n
lea rcx, [rbp + 0xd8]
call fcn.140004160
nop
mov dword [rbp + 0xf8], 0x12e
xorps xmm0, xmm0
movups xmmword [rbp + 0x100], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x110], xmm1
mov r8d, setsockopt
lea rdx, str.HTTP_1.1_302_Found_r_n
lea rcx, [rbp + 0x100]
call fcn.140004160
nop
mov dword [rbp + 0x120], 0x12f
xorps xmm0, xmm0
movups xmmword [rbp + 0x128], xmm0
mov qword [rbp + 0x138], r15
mov qword [rbp + 0x140], r15
mov r8d, 0x18
lea rdx, str.HTTP_1.1_303_See_Other_r_n
lea rcx, [rbp + 0x128]
call fcn.140004160
nop
mov dword [rbp + 0x148], 0x130
xorps xmm0, xmm0
movups xmmword [rbp + 0x150], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x160], xmm1
mov r8d, 0x1b
lea rdx, str.HTTP_1.1_304_Not_Modified_r_n
lea rcx, [rbp + 0x150]
call fcn.140004160
nop
mov dword [rbp + 0x170], 0x133
xorps xmm0, xmm0
movups xmmword [rbp + 0x178], xmm0
mov qword [rbp + 0x188], r15
mov qword [rbp + 0x190], r15
mov r8d, 0x21
lea rdx, str.HTTP_1.1_307_Temporary_Redirect_r_n
lea rcx, [rbp + 0x178]
call fcn.140004160
nop
mov dword [rbp + 0x198], 0x134
xorps xmm0, xmm0
movups xmmword [rbp + 0x1a0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x1b0], xmm1
mov r8d, 0x21
lea rdx, str.HTTP_1.1_308_Permanent_Redirect_r_n
lea rcx, [rbp + 0x1a0]
call fcn.140004160
nop
mov dword [rbp + 0x1c0], 0x190
xorps xmm0, xmm0
movups xmmword [rbp + 0x1c8], xmm0
mov qword [rbp + 0x1d8], r15
mov qword [rbp + 0x1e0], r15
mov r8d, 0x1a
lea rdx, str.HTTP_1.1_400_Bad_Request_r_n
lea rcx, [rbp + 0x1c8]
call fcn.140004160
nop
mov dword [rbp + 0x1e8], 0x191
xorps xmm0, xmm0
movups xmmword [rbp + 0x1f0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x200], xmm1
mov r8d, 0x1b
lea rdx, str.HTTP_1.1_401_Unauthorized_r_n
lea rcx, [rbp + 0x1f0]
call fcn.140004160
nop
mov dword [rbp + 0x210], 0x193
xorps xmm0, xmm0
movups xmmword [rbp + 0x218], xmm0
mov qword [rbp + 0x228], r15
mov qword [rbp + 0x230], r15
mov r8d, 0x18
lea rdx, str.HTTP_1.1_403_Forbidden_r_n
lea rcx, [rbp + 0x218]
call fcn.140004160
nop
mov dword [rbp + 0x238], 0x194
xorps xmm0, xmm0
movups xmmword [rbp + 0x240], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x250], xmm1
mov r8d, 0x18
lea rdx, str.HTTP_1.1_404_Not_Found_r_n
lea rcx, [rbp + 0x240]
call fcn.140004160
nop
mov dword [rbp + 0x260], 0x195
xorps xmm0, xmm0
movups xmmword [rbp + 0x268], xmm0
mov qword [rbp + 0x278], r15
mov qword [rbp + 0x280], r15
mov r8d, 0x21
lea rdx, str.HTTP_1.1_405_Method_Not_Allowed_r_n
lea rcx, [rbp + 0x268]
call fcn.140004160
nop
mov dword [rbp + 0x288], 0x196
xorps xmm0, xmm0
movups xmmword [rbp + 0x290], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x2a0], xmm1
mov r8d, 0x1d
lea rdx, str.HTTP_1.1_406_Not_Acceptable_r_n
lea rcx, [rbp + 0x290]
call fcn.140004160
nop
mov dword [rbp + 0x2b0], 0x197
xorps xmm0, xmm0
movups xmmword [rbp + 0x2b8], xmm0
mov qword [rbp + 0x2c8], r15
mov qword [rbp + 0x2d0], r15
mov r8d, 0x2c
lea rdx, str.HTTP_1.1_407_Proxy_Authentication_Required_r_n
lea rcx, [rbp + 0x2b8]
call fcn.140004160
nop
mov dword [rbp + 0x2d8], 0x199
xorps xmm0, xmm0
movups xmmword [rbp + 0x2e0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x2f0], xmm1
mov r8d, 0x17
lea rdx, str.HTTP_1.1_409_Conflict_r_n
lea rcx, [rbp + 0x2e0]
call fcn.140004160
nop
mov dword [rbp + 0x300], 0x19a
xorps xmm0, xmm0
movups xmmword [rbp + 0x308], xmm0
mov qword [rbp + 0x318], r15
mov qword [rbp + 0x320], r15
mov r8d, setsockopt
lea rdx, str.HTTP_1.1_410_Gone_r_n
lea rcx, [rbp + 0x308]
call fcn.140004160
nop
mov dword [rbp + 0x328], 0x19d
xorps xmm0, xmm0
movups xmmword [rbp + 0x330], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x340], xmm1
mov r8d, 0x20
lea rdx, str.HTTP_1.1_413_Payload_Too_Large_r_n
lea rcx, [rbp + 0x330]
call fcn.140004160
nop
mov dword [rbp + 0x350], 0x19f
xorps xmm0, xmm0
movups xmmword [rbp + 0x358], xmm0
mov qword [rbp + 0x368], r15
mov qword [rbp + 0x370], r15
mov r8d, 0x25
lea rdx, str.HTTP_1.1_415_Unsupported_Media_Type_r_n
lea rcx, [rbp + 0x358]
call fcn.140004160
nop
mov dword [rbp + 0x378], 0x1a0
xorps xmm0, xmm0
movups xmmword [rbp + 0x380], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x390], xmm1
mov r8d, 0x24
lea rdx, str.HTTP_1.1_416_Range_Not_Satisfiable_r_n
lea rcx, [rbp + 0x380]
call fcn.140004160
nop
mov dword [rbp + 0x3a0], 0x1a1
xorps xmm0, xmm0
movups xmmword [rbp + 0x3a8], xmm0
mov qword [rbp + 0x3b8], r15
mov qword [rbp + 0x3c0], r15
mov r8d, 0x21
lea rdx, str.HTTP_1.1_417_Expectation_Failed_r_n
lea rcx, [rbp + 0x3a8]
call fcn.140004160
nop
mov dword [rbp + 0x3c8], 0x1ac
xorps xmm0, xmm0
movups xmmword [rbp + 0x3d0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x3e0], xmm1
mov r8d, 0x24
lea rdx, str.HTTP_1.1_428_Precondition_Required_r_n
lea rcx, [rbp + 0x3d0]
call fcn.140004160
nop
mov dword [rbp + 0x3f0], 0x1ad
xorps xmm0, xmm0
movups xmmword [rbp + 0x3f8], xmm0
mov qword [rbp + 0x408], r15
mov qword [rbp + 0x410], r15
mov r8d, 0x20
lea rdx, str.HTTP_1.1_429_Too_Many_Requests_r_n
lea rcx, [rbp + 0x3f8]
call fcn.140004160
nop
mov dword [rbp + 0x418], 0x1c3
xorps xmm0, xmm0
movups xmmword [rbp + 0x420], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x430], xmm1
mov r8d, 0x2c
lea rdx, str.HTTP_1.1_451_Unavailable_For_Legal_Reasons_r_n
lea rcx, [rbp + 0x420]
call fcn.140004160
nop
mov dword [rbp + 0x440], 0x1f4
xorps xmm0, xmm0
movups xmmword [rbp + 0x448], xmm0
mov qword [rbp + 0x458], r15
mov qword [rbp + 0x460], r15
mov r8d, 0x24
lea rdx, str.HTTP_1.1_500_Internal_Server_Error_r_n
lea rcx, [rbp + 0x448]
call fcn.140004160
nop
mov dword [rbp + 0x468], 0x1f5
xorps xmm0, xmm0
movups xmmword [rbp + 0x470], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x480], xmm1
mov r8d, 0x1e
lea rdx, str.HTTP_1.1_501_Not_Implemented_r_n
lea rcx, [rbp + 0x470]
call fcn.140004160
nop
mov dword [rbp + 0x490], 0x1f6
xorps xmm0, xmm0
movups xmmword [rbp + 0x498], xmm0
mov qword [rbp + 0x4a8], r15
mov qword [rbp + 0x4b0], r15
mov r8d, 0x1a
lea rdx, str.HTTP_1.1_502_Bad_Gateway_r_n
lea rcx, [rbp + 0x498]
call fcn.140004160
nop
mov dword [rbp + 0x4b8], 0x1f7
xorps xmm0, xmm0
movups xmmword [rbp + 0x4c0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x4d0], xmm1
mov r8d, 0x22
lea rdx, str.HTTP_1.1_503_Service_Unavailable_r_n
lea rcx, [rbp + 0x4c0]
call fcn.140004160
nop
mov dword [rbp + 0x4e0], 0x1f8
xorps xmm0, xmm0
movups xmmword [rbp + 0x4e8], xmm0
mov qword [rbp + 0x4f8], r15
mov qword [rbp + 0x500], r15
mov r8d, 0x1e
lea rdx, str.HTTP_1.1_504_Gateway_Timeout_r_n
lea rcx, [rbp + 0x4e8]
call fcn.140004160
nop
mov dword [rbp + 0x508], 0x1fa
xorps xmm0, xmm0
movups xmmword [rbp + 0x510], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x520], xmm1
mov r8d, 0x26
lea rdx, str.HTTP_1.1_506_Variant_Also_Negotiates_r_n
lea rcx, [rbp + 0x510]
call fcn.140004160
nop
mov dword [0x1401a39f0], 0
mov qword [0x1401a39f8], r15
mov qword [0x1401a3a00], r15
mov ecx, 0x38
call fcn.140036360
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [0x1401a39f8], rax
mov qword [0x1401a3a08], r15
xorps xmm0, xmm0
movdqa xmmword [0x1401a3a10], xmm0
mov qword [0x1401a3a20], 7
mov qword [0x1401a3a28], 8
mov dword [0x1401a39f0], 0x3f800000
mov r8, rax
mov edx, select
lea rcx, [0x1401a3a08]
call fcn.14001f640
nop
lea rbx, [rsp + 0x40]
nop
mov r8, rbx
lea rdx, [rbp + 0x628]
call fcn.14002d430
add rbx, 0x28
lea rax, [rbp + 0x530]
cmp rbx, rax
jne 0x140023990
lea r9, [0x140013750]
mov edx, 0x28
mov r8d, 0x26
lea rcx, [rsp + 0x40]
call fcn.1400364f8
lea rcx, [0x14003b140]
call fcn.1400367f0
nop
lea rcx, [0x1401a3a84]
call fcn.140036414
mov eax, dword [rdi + rsi]
cmp dword [0x1401a3a88], eax
jle 0x140023a1c
lea rcx, [0x1401a3a88]
call fcn.140036480
cmp dword [0x1401a3a88], 0xffffffff
jne 0x140023a1c
lea rcx, [0x14003b0d0]
call fcn.1400367f0
lea rcx, [0x1401a3a88]
call fcn.140036414
lea rcx, [r14 + 0x13b8]
mov rax, qword [rcx]
cmp rax, qword [rcx + 8]
je 0x140023a30
mov qword [rcx + 8], rax
mov rax, qword [r14 + 0x1298]
lea rdx, [rax*4 + 0x17]
mov qword [rbp + 0x620], rdx
mov rax, qword [rcx + 0x10]
sub rax, qword [rcx]
sar rax, 4
cmp rdx, rax
jbe 0x140023a75
movabs rax, 0xfffffffffffffff
cmp rdx, rax
ja 0x140024890
lea rdx, [rbp + 0x620]
call fcn.140028dd0
movzx r10d, byte [r14 + 0x1260]
mov ecx, r10d
movabs rdi, 0xcbf29ce484222325
xor rcx, rdi
movabs rbx, 0x100000001b3
imul rcx, rbx
movzx eax, byte [r14 + 0x1261]
xor rcx, rax
imul rcx, rbx
movzx eax, byte [r14 + 0x1262]
xor rcx, rax
imul rcx, rbx
movzx eax, byte [r14 + 0x1263]
xor rcx, rax
imul rcx, rbx
mov rdx, qword [0x1401a3a20]
mov r9, rdx
and r9, rcx
add r9, r9
mov r11, qword [0x1401a3a08]
mov rax, qword [r11 + r9*8 + 8]
mov r8, qword [0x1401a39f8]
cmp rax, r8
jne 0x140023af5
mov rax, r15
jmp 0x140023b23
mov r10, qword [r11 + r9*8]
mov ecx, dword [r14 + 0x1260]
cmp ecx, dword [rax + 0x10]
je 0x140023b1f
cmp rax, r10
je 0x140023cb6
mov rax, qword [rax + 8]
cmp ecx, dword [rax + 0x10]
jne 0x140023b05
movzx ecx, byte [r14 + 0x1260]
movzx r10d, cl
test rax, rax
jne 0x140023c4e
cmp dword [0x14019fae8], 2
jg 0x140023c2b
lea rcx, [rbp + 0x530]
call fcn.14001af20
mov eax, 2
mov dword [rbp + 0x618], eax
mov ecx, dword [0x14019fae8]
cmp ecx, eax
jg 0x140023b76
mov rdx, r14
lea rcx, [rbp + 0x530]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___void_const____ptr64____ptr64]
mov ecx, dword [0x14019fae8]
mov eax, dword [rbp + 0x618]
cmp eax, ecx
jl 0x140023c1f
lea rdx, str._status_code
lea rcx, [rbp + 0x530]
call fcn.140024af0
mov ecx, dword [0x14019fae8]
mov eax, dword [rbp + 0x618]
cmp eax, ecx
jl 0x140023c1f
lea rdx, [0x14003ec4c]
lea rcx, [rbp + 0x530]
call fcn.140024af0
mov ecx, dword [0x14019fae8]
mov eax, dword [rbp + 0x618]
cmp eax, ecx
jl 0x140023c1f
mov edx, dword [r14 + 0x1260]
lea rcx, [rbp + 0x530]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___int____ptr64]
mov ecx, dword [0x14019fae8]
mov eax, dword [rbp + 0x618]
cmp eax, ecx
jl 0x140023c1f
lea rdx, [0x140040380]
lea rcx, [rbp + 0x530]
call fcn.140024af0
mov ecx, dword [0x14019fae8]
mov eax, dword [rbp + 0x618]
cmp eax, ecx
jl 0x140023c1f
lea rdx, str._not_defined__returning_500_instead
lea rcx, [rbp + 0x530]
call fcn.140024af0
nop
lea rcx, [rbp + 0x530]
call fcn.140010160
mov dword [r14 + 0x1260], 0x1f4
mov r10b, 0xf4
mov rdx, qword [0x1401a3a20]
mov r11, qword [0x1401a3a08]
mov r8, qword [0x1401a39f8]
movzx ecx, r10b
xor rcx, rdi
imul rcx, rbx
movzx eax, byte [r14 + 0x1261]
xor rcx, rax
imul rcx, rbx
movzx eax, byte [r14 + 0x1262]
xor rcx, rax
imul rcx, rbx
movzx eax, byte [r14 + 0x1263]
xor rcx, rax
imul rcx, rbx
and rdx, rcx
add rdx, rdx
mov rax, qword [r11 + rdx*8 + 8]
cmp rax, r8
je 0x140023cc6
mov r9, qword [r11 + rdx*8]
mov ecx, dword [r14 + 0x1260]
cmp ecx, dword [rax + 0x10]
je 0x140023cc9
cmp rax, r9
je 0x140023cc6
mov rax, qword [rax + 8]
cmp ecx, dword [rax + 0x10]
jne 0x140023ca6
jmp 0x140023cc9
mov rax, r15
movzx r10d, byte [r14 + 0x1260]
jmp 0x140023b23
mov rax, r15
test rax, rax
cmovne r8, rax
lea rax, [r8 + 0x18]
lea rcx, [r14 + 0x13b8]
mov r8, qword [rax + 0x10]
mov qword [rbp + 0x620], r8
cmp qword [rax + 0x18], 0xf
jbe 0x140023cf0
mov rax, qword [rax]
mov qword [rbp + 0x628], rax
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x140023d0f
mov qword [rdx], rax
mov qword [rdx + 8], r8
add qword [rcx + 8], 0x10
jmp 0x140023d22
lea r9, [rbp + 0x620]
lea r8, [rbp + 0x628]
call fcn.14002d290
cmp dword [r14 + 0x1260], 0x190
jl 0x140023df8
cmp qword [r14 + 0x1278], 0
jne 0x140023df8
lea r8, [r14 + 0x1260]
lea rdx, [rbp + 0x628]
call fcn.140028b60
mov rdx, qword [rax]
add rdx, 0x18
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
mov rax, qword [rdx + 0x10]
cmp rax, 9
jb 0x14002488a
add rax, 0xfffffffffffffff7
mov r8, 0xffffffffffffffff
cmp rax, r8
cmovb r8, rax
cmp qword [rdx + 0x18], 0xf
jbe 0x140023d96
mov rdx, qword [rdx]
add rdx, 9
lea rcx, [rsp + 0x20]
call fcn.140004160
mov r13d, setsockopt
lea rcx, [r14 + 0x1268]
lea rdx, [rsp + 0x20]
call fcn.14001b250
mov rdx, qword [rsp + 0x38]
cmp rdx, 0xf
jbe 0x140023df8
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140023df3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400244eb
call fcn.1400363a4
mov rdi, qword [r14 + 0x1290]
mov rbx, qword [rdi]
lea r12, [0x14019f8f0]
cmp rbx, rdi
je 0x140023f7e
lea rsi, [r14 + 0x13b8]
nop dword [rax]
lea r15, [rbx + 0x10]
mov rcx, qword [r15 + 0x10]
mov qword [rbp + 0x628], rcx
mov rax, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x140023e3c
mov rax, qword [r15]
mov qword [rbp + 0x620], rax
mov rdx, qword [rsi + 8]
cmp rdx, qword [rsi + 0x10]
je 0x140023e5b
mov qword [rdx], rax
mov qword [rdx + 8], rcx
add qword [rsi + 8], 0x10
jmp 0x140023e71
lea r9, [rbp + 0x628]
lea r8, [rbp + 0x620]
mov rcx, rsi
call fcn.14002d290
mov rcx, qword [reloc.WS2_32.dll_bind]
mov qword [rbp + 0x628], rcx
lea rax, [0x14019fac0]
cmp qword [reloc.WS2_32.dll_ntohs], 0xf
cmova rax, qword [0x14019fac0]
mov qword [rbp + 0x620], rax
mov rdx, qword [rsi + 8]
cmp rdx, qword [rsi + 0x10]
je 0x140023eb5
mov qword [rdx], rax
mov qword [rdx + 8], rcx
add qword [rsi + 8], 0x10
jmp 0x140023ecb
lea r9, [rbp + 0x628]
lea r8, [rbp + 0x620]
mov rcx, rsi
call fcn.14002d290
mov rax, qword [r15 + 0x30]
mov qword [rbp + 0x628], rax
add r15, 0x20
cmp qword [r15 + 0x18], 0xf
jbe 0x140023ee4
mov r15, qword [r15]
mov qword [rbp + 0x620], r15
mov rdx, qword [rsi + 8]
cmp rdx, qword [rsi + 0x10]
je 0x140023f03
mov qword [rdx], r15
mov qword [rdx + 8], rax
add qword [rsi + 8], 0x10
jmp 0x140023f19
lea r9, [rbp + 0x628]
lea r8, [rbp + 0x620]
mov rcx, rsi
call fcn.14002d290
mov rcx, qword [reloc.WS2_32.dll_bind]
mov qword [rbp + 0x628], rcx
mov rax, r12
cmp qword [reloc.WS2_32.dll_ntohs], 0xf
cmova rax, qword [0x14019f8f0]
mov qword [rbp + 0x620], rax
mov rdx, qword [rsi + 8]
cmp rdx, qword [rsi + 0x10]
je 0x140023f59
mov qword [rdx], rax
mov qword [rdx + 8], rcx
add qword [rsi + 8], 0x10
jmp 0x140023f6f
lea r9, [rbp + 0x628]
lea r8, [rbp + 0x620]
mov rcx, rsi
call fcn.14002d290
mov rbx, qword [rbx]
cmp rbx, rdi
jne 0x140023e20
xor r15d, r15d
cmp byte [r14 + 0x12c9], 0
jne 0x140023fec
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
mov r8d, reloc.WS2_32.dll_ntohl
lea rdx, str.content_length
lea rcx, [rsp + 0x20]
call fcn.140004160
nop
or r13d, 1
mov dword [rbp + 0x620], r13d
lea rdx, [rsp + 0x20]
call fcn.14002a380
mov r9, rax
lea r8, [rsp + 0x20]
lea rdx, [rbp + 0x628]
lea rcx, [r14 + 0x1288]
call fcn.14002ae40
cmp qword [rax + 0x10], 0
jne 0x140023fec
mov bl, 1
jmp 0x140023fee
xor bl, bl
test r13b, 1
je 0x140024031
mov rdx, qword [rsp + 0x38]
cmp rdx, 0xf
jbe 0x140024031
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002402c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400244eb
call fcn.1400363a4
test bl, bl
je 0x140024275
mov r8, qword [r14 + 0x1278]
lea r9, [rbp + 0x63d]
movabs r10, 0xcccccccccccccccd
nop dword [rax]
nop word [rax + rax]
dec r9
mov rax, r10
mul r8
shr rdx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8, rdx
test rdx, rdx
jne 0x140024060
lea r8, [rbp + 0x63d]
mov rdx, r9
lea rcx, [rsp + 0x20]
call fcn.140025ae0
lea rcx, [r14 + 0x13d0]
lea rdx, [rsp + 0x20]
call fcn.14001b250
mov rdx, qword [rsp + 0x38]
cmp rdx, 0xf
jbe 0x1400240ec
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400240e7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400244eb
call fcn.1400363a4
mov edi, 4
mov rax, qword gs:[0x58]
mov rax, qword [rax]
lea rbx, [0x1401a39a0]
mov eax, dword [rdi + rax]
cmp dword [0x1401a3ab0], eax
jle 0x14002416a
lea rcx, [0x1401a3ab0]
call fcn.140036480
cmp dword [0x1401a3ab0], 0xffffffff
jne 0x14002416a
xorps xmm0, xmm0
movups xmmword [0x1401a39a0], xmm0
mov qword [0x1401a39b0], r15
mov qword [0x1401a39b8], r15
mov r8d, setsockopt
lea rdx, [0x1400403b0]
mov rcx, rbx
call fcn.140004160
lea rcx, [0x14003b060]
call fcn.1400367f0
nop
lea rcx, [0x1401a3ab0]
call fcn.140036414
lea rcx, [r14 + 0x13b8]
mov rax, qword [0x1401a39b0]
mov qword [rbp + 0x628], rax
cmp qword [0x1401a39b8], 0xf
cmova rbx, qword [0x1401a39a0]
mov qword [rbp + 0x620], rbx
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x1400241ae
mov qword [rdx], rbx
mov qword [rdx + 8], rax
add qword [rcx + 8], 0x10
jmp 0x1400241c1
lea r9, [rbp + 0x628]
lea r8, [rbp + 0x620]
call fcn.14002d290
lea rcx, [r14 + 0x13b8]
mov r8, qword [r14 + 0x13e0]
mov qword [rbp + 0x628], r8
lea rax, [r14 + 0x13d0]
cmp qword [rax + 0x18], 0xf
jbe 0x1400241e7
mov rax, qword [rax]
mov qword [rbp + 0x620], rax
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x140024206
mov qword [rdx], rax
mov qword [rdx + 8], r8
add qword [rcx + 8], 0x10
jmp 0x140024219
lea r9, [rbp + 0x628]
lea r8, [rbp + 0x620]
call fcn.14002d290
lea rcx, [r14 + 0x13b8]
mov r8, qword [reloc.WS2_32.dll_bind]
mov qword [rbp + 0x628], r8
mov rax, r12
cmp qword [reloc.WS2_32.dll_ntohs], 0xf
cmova rax, qword [0x14019f8f0]
mov qword [rbp + 0x620], rax
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x140024260
mov qword [rdx], rax
mov qword [rdx + 8], r8
add qword [rcx + 8], 0x10
jmp 0x14002427a
lea r9, [rbp + 0x628]
lea r8, [rbp + 0x620]
call fcn.14002d290
jmp 0x14002427a
mov edi, 4
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
mov r8d, 6
lea rdx, str.server
lea rcx, [rsp + 0x20]
call fcn.140004160
nop
lea rdx, [rsp + 0x20]
call fcn.14002a380
mov r9, rax
lea r8, [rsp + 0x20]
lea rdx, [rbp + 0x628]
lea rcx, [r14 + 0x1288]
call fcn.14002ae40
mov rbx, qword [rax + 0x10]
mov rdx, qword [rsp + 0x38]
cmp rdx, 0xf
jbe 0x140024309
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140024304
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400244eb
call fcn.1400363a4
test rbx, rbx
jne 0x140024465
mov edx, edi
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
mov eax, dword [rdx + rcx]
cmp dword [0x1401a3b04], eax
jle 0x140024358
lea rcx, [0x1401a3b04]
call fcn.140036480
cmp dword [0x1401a3b04], 0xffffffff
jne 0x140024358
lea rcx, [0x14003aff0]
call fcn.1400367f0
lea rcx, [0x1401a3b04]
call fcn.140036414
lea rcx, [r14 + 0x13b8]
mov r8, qword [reloc.WS2_32.dll_htonl]
mov qword [rbp + 0x628], r8
lea rax, str.Server:
cmp qword [reloc.WS2_32.dll_ntohs], 0xf
cmova rax, qword [str.Server:]
mov qword [rbp + 0x620], rax
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x1400243a3
mov qword [rdx], rax
mov qword [rdx + 8], r8
add qword [rcx + 8], 0x10
jmp 0x1400243b6
lea r9, [rbp + 0x628]
lea r8, [rbp + 0x620]
call fcn.14002d290
lea rcx, [r14 + 0x13b8]
mov rax, qword [r14 + 0x13b0]
mov r8, qword [rax + 0x10]
mov qword [rbp + 0x628], r8
cmp qword [rax + 0x18], 0xf
jbe 0x1400243d9
mov rax, qword [rax]
mov qword [rbp + 0x620], rax
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x1400243f8
mov qword [rdx], rax
mov qword [rdx + 8], r8
add qword [rcx + 8], 0x10
jmp 0x14002440b
lea r9, [rbp + 0x628]
lea r8, [rbp + 0x620]
call fcn.14002d290
lea rcx, [r14 + 0x13b8]
mov r8, qword [reloc.WS2_32.dll_bind]
mov qword [rbp + 0x628], r8
mov rax, r12
cmp qword [reloc.WS2_32.dll_ntohs], 0xf
cmova rax, qword [0x14019f8f0]
mov qword [rbp + 0x620], rax
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x140024452
mov qword [rdx], rax
mov qword [rdx + 8], r8
add qword [rcx + 8], 0x10
jmp 0x140024465
lea r9, [rbp + 0x628]
lea r8, [rbp + 0x620]
call fcn.14002d290
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
mov r8d, 4
lea rdx, str.date
lea rcx, [rsp + 0x20]
call fcn.140004160
nop
lea rdx, [rsp + 0x20]
call fcn.14002a380
mov r9, rax
lea r8, [rsp + 0x20]
lea rdx, [rbp + 0x628]
lea rcx, [r14 + 0x1288]
call fcn.14002ae40
mov rbx, qword [rax + 0x10]
mov rdx, qword [rsp + 0x38]
cmp rdx, 0xf
jbe 0x1400244f7
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400244f2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400244f2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400363a4
test rbx, rbx
jne 0x1400246c9
mov edx, edi
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
mov eax, dword [rdx + rcx]
cmp dword [0x1401a39cc], eax
jle 0x140024546
lea rcx, [0x1401a39cc]
call fcn.140036480
cmp dword [0x1401a39cc], 0xffffffff
jne 0x140024546
lea rcx, [0x14003af80]
call fcn.1400367f0
lea rcx, [0x1401a39cc]
call fcn.140036414
mov rax, qword [r14 + 0x1450]
mov rcx, qword [rax + 0x38]
test rcx, rcx
jne 0x14002455d
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea rdx, [rsp + 0x20]
call qword [rax + select]
lea rcx, [r14 + 0x13f0]
lea rdx, [rsp + 0x20]
call fcn.14001b250
mov rdx, qword [rsp + 0x38]
cmp rdx, 0xf
jbe 0x1400245b9
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400245b4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400245b4
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400363a4
lea rcx, [r14 + 0x13b8]
mov r8, qword [reloc.WS2_32.dll_getsockname]
mov qword [rbp + 0x628], r8
lea rax, str.Date:
cmp qword [reloc.WS2_32.dll_ntohs], 0xf
cmova rax, qword [str.Date:]
mov qword [rbp + 0x620], rax
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x140024604
mov qword [rdx], rax
mov qword [rdx + 8], r8
add qword [rcx + 8], 0x10
jmp 0x140024617
lea r9, [rbp + 0x628]
lea r8, [rbp + 0x620]
call fcn.14002d290
lea rcx, [r14 + 0x13b8]
mov r8, qword [r14 + 0x1400]
mov qword [rbp + 0x628], r8
lea rax, [r14 + 0x13f0]
cmp qword [rax + 0x18], 0xf
jbe 0x14002463d
mov rax, qword [rax]
mov qword [rbp + 0x620], rax
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x14002465c
mov qword [rdx], rax
mov qword [rdx + 8], r8
add qword [rcx + 8], 0x10
jmp 0x14002466f
lea r9, [rbp + 0x628]
lea r8, [rbp + 0x620]
call fcn.14002d290
lea rcx, [r14 + 0x13b8]
mov r8, qword [reloc.WS2_32.dll_bind]
mov qword [rbp + 0x628], r8
mov rax, r12
cmp qword [reloc.WS2_32.dll_ntohs], 0xf
cmova rax, qword [0x14019f8f0]
mov qword [rbp + 0x620], rax
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x1400246b6
mov qword [rdx], rax
mov qword [rdx + 8], r8
add qword [rcx + 8], 0x10
jmp 0x1400246c9
lea r9, [rbp + 0x628]
lea r8, [rbp + 0x620]
call fcn.14002d290
cmp byte [r14 + 0x143b], 0
je 0x140024803
mov ecx, edi
mov rax, qword gs:[0x58]
mov rax, qword [rax]
lea rbx, [0x1401a3a58]
mov eax, dword [rcx + rax]
cmp dword [0x1401a39d8], eax
jle 0x140024752
lea rcx, [0x1401a39d8]
call fcn.140036480
cmp dword [0x1401a39d8], 0xffffffff
jne 0x140024752
xorps xmm0, xmm0
movups xmmword [0x1401a3a58], xmm0
mov qword [0x1401a3a68], r15
mov qword [0x1401a3a70], r15
mov r8d, reloc.WS2_32.dll_shutdown
lea rdx, str.Connection:_Keep_Alive
mov rcx, rbx
call fcn.140004160
lea rcx, [0x14003af10]
call fcn.1400367f0
nop
lea rcx, [0x1401a39d8]
call fcn.140036414
lea rcx, [r14 + 0x13b8]
mov rax, qword [0x1401a3a68]
mov qword [rbp + 0x628], rax
cmp qword [0x1401a3a70], 0xf
cmova rbx, qword [0x1401a3a58]
mov qword [rbp + 0x620], rbx
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x140024796
mov qword [rdx], rbx
mov qword [rdx + 8], rax
add qword [rcx + 8], 0x10
jmp 0x1400247a9
lea r9, [rbp + 0x628]
lea r8, [rbp + 0x620]
call fcn.14002d290
lea rcx, [r14 + 0x13b8]
mov r8, qword [reloc.WS2_32.dll_bind]
mov qword [rbp + 0x628], r8
mov rax, r12
cmp qword [reloc.WS2_32.dll_ntohs], 0xf
cmova rax, qword [0x14019f8f0]
mov qword [rbp + 0x620], rax
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x1400247f0
mov qword [rdx], rax
mov qword [rdx + 8], r8
add qword [rcx + 8], 0x10
jmp 0x140024803
lea r9, [rbp + 0x628]
lea r8, [rbp + 0x620]
call fcn.14002d290
lea rcx, [r14 + 0x13b8]
mov rax, qword [reloc.WS2_32.dll_bind]
mov qword [rbp + 0x628], rax
cmp qword [reloc.WS2_32.dll_ntohs], 0xf
cmova r12, qword [0x14019f8f0]
mov qword [rbp + 0x620], r12
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x140024847
mov qword [rdx], r12
mov qword [rdx + 8], rax
add qword [rcx + 8], 0x10
jmp 0x14002485a
lea r9, [rbp + 0x628]
lea r8, [rbp + 0x620]
call fcn.14002d290
mov rcx, qword [rbp + 0x640]
xor rcx, rsp
call fcn.140036340
lea r11, [rsp + 0x750]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.14001f780
int3
call fcn.140004260
int3