Function at 0x140116500
Capabilities:
Set socket configuration
Validate payment card number using luhn algorithm

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x98
mov rax, qword [0x1402b3030]
xor rax, rsp
mov qword [rsp + 0x88], rax
mov rax, qword [r8]
mov rdi, rcx
mov rcx, qword [rcx + 0x148]
mov r15, r8
mov qword [rsp + 0x50], r8
mov r13, rdx
mov qword [rsp + 0x58], rdx
mov r8, rax
mov edx, 0xa
mov qword [rsp + 0x48], r9
lea r14, [rdi + 0xc88]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rcx
mov rbx, rcx
mov r12, rcx
mov rsi, rax
mov rbp, rax
call sub.VCRUNTIME140.dll_memchr
mov rcx, rax
test rax, rax
je 0x140117377
xor r14d, r14d
lea r8, [rcx + 1]
sub rbx, rcx
lea rax, [rsi - 1]
mov rdx, r12
add rax, rbx
lea rbp, [rdi + 0xc88]
mov qword [r15], rax
mov rcx, rbp
mov qword [rdi + 0x148], r8
sub r8, r12
call fcn.1400ea540
test eax, eax
jne 0x140116742
mov ebx, dword [rdi + 0x144]
test ebx, ebx
jne 0x1401165df
mov r9, qword [rdi + 0xc90]
mov rdx, r13
mov r8, qword [rbp]
mov rcx, rdi
call fcn.140114ed0
cmp eax, 2
je 0x140117426
mov r15, qword [rbp]
movzx eax, byte [r15]
cmp al, 0xa
je 0x140116b58
cmp al, 0xd
je 0x140116b58
lea eax, [rbx + 1]
mov esi, 2
mov dword [rdi + 0x144], eax
test ebx, ebx
jne 0x140116a6a
mov rax, qword [r13 + 0x328]
mov ecx, dword [rax + 0x84]
test ecx, 0xc0000003
je 0x140116929
lea rax, [rsp + 0x70]
xor r12d, r12d
mov qword [rsp + 0x30], rax
lea r14, [rdi + 0x158]
lea rax, [rsp + 0x71]
mov qword [rsp + 0x28], r14
lea r9, [rsp + 0x74]
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x78]
mov dword [rsp + 0x74], r12d
lea rdx, str._HTTP__1d._1d_c_3d_c
mov byte [rsp + 0x70], r12b
mov rcx, r15
call fcn.140046470
mov ebx, eax
cmp eax, 1
jne 0x1401166a5
cmp dword [rsp + 0x78], esi
jl 0x1401166a5
mov r9, r14
lea r8, [rsp + 0x7c]
lea rdx, str._HTTP__1_23___d
mov rcx, r15
call fcn.140046470
cmp eax, esi
jne 0x1401166a5
mov byte [r13 + 0x73f], r12b
lea ebx, [rsi + 2]
mov byte [rsp + 0x71], 0x20
jmp 0x1401166d2
movzx eax, byte [rsp + 0x70]
sub al, 0x30
cmp al, 9
jbe 0x140117517
cmp ebx, 4
jl 0x140116766
cmp dword [r14], 0x64
jl 0x140117517
cmp byte [rsp + 0x71], 0x20
jne 0x1401174fe
mov eax, dword [rsp + 0x78]
lea ecx, [rax + rax*4]
mov eax, dword [rsp + 0x74]
lea r8d, [rax + rcx*2]
mov ecx, r8d
mov dword [rsp + 0x74], r8d
sub ecx, 0xa
je 0x1401166f7
cmp ecx, 1
jne 0x1401174b3
lea rsi, [r13 + 0x73f]
mov byte [rsi], r8b
cmp dword [rdi + 0x174], 3
jne 0x14011671f
cmp r8b, 0x14
je 0x14011671f
lea rdx, str.Lying_server__not_serving_HTTP_2
mov rcx, rdi
call fcn.140100de0
cmp byte [rsi], 0x14
jae 0x140116731
mov rax, qword [r13 + 0x700]
mov dword [rax], 0xffffffff
test ebx, ebx
jne 0x140116989
mov byte [rdi + 0x1c1], 0
xor eax, eax
mov rcx, qword [rsp + 0x88]
xor rcx, rsp
call fcn.14014d450
add rsp, 0x98
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
test ebx, ebx
jne 0x1401174fe
mov r8, r14
lea rdx, str._HTTP__3d
mov rcx, r15
call fcn.140046470
lea rsi, [r13 + 0x73f]
mov byte [rsi], 0xa
test eax, eax
jne 0x140116989
mov r10, qword [rbp]
mov ebp, r12d
mov r11, qword [rdi + 0xc90]
mov rbx, qword [rdi + 0x6d8]
cmp r11, 5
setae bpl
test rbx, rbx
je 0x140116891
nop dword [rax + rax]
mov r8, qword [rbx]
mov rax, 0xffffffffffffffff
nop word [rax + rax]
inc rax
cmp byte [r8 + rax], r12b
jne 0x1401167d0
cmp rax, r11
jae 0x1401167f0
mov rax, 0xffffffffffffffff
inc rax
cmp byte [r8 + rax], r12b
jne 0x1401167e5
jmp 0x1401167f3
mov rax, r11
test r8, r8
je 0x140116872
test r10, r10
je 0x14011687c
mov r9, r10
cmp byte [r8], r12b
je 0x14011683b
movzx ecx, byte [r9]
test cl, cl
je 0x14011683b
test rax, rax
je 0x140116840
movzx edx, byte [r8]
lea r13, [0x140248570]
movzx ecx, byte [rcx + r13]
cmp byte [rdx + r13], cl
mov r13, qword [rsp + 0x58]
jne 0x140116849
inc r8
dec rax
inc r9
cmp byte [r8], r12b
jne 0x140116805
test rax, rax
jne 0x140116850
mov edx, 1
test edx, edx
jmp 0x14011687a
mov edx, r12d
test edx, edx
jmp 0x14011687a
movzx ecx, byte [r8]
mov edx, r12d
movzx eax, byte [r9]
lea r8, [0x140248570]
movzx eax, byte [rax + r8]
cmp byte [rcx + r8], al
sete dl
test edx, edx
jmp 0x14011687a
test r10, r10
jne 0x14011687c
test rax, rax
jne 0x14011688b
mov rbx, qword [rbx + 8]
test rbx, rbx
jne 0x1401167c0
jmp 0x140116891
cmp r11, 5
jae 0x14011690d
cmp r11, 5
mov eax, 5
cmova r11, rax
test r10, r10
je 0x140116739
lea rdx, str.HTTP_
lea r8, [0x140248570]
movzx eax, byte [r10]
test al, al
je 0x1401168de
test r11, r11
je 0x1401168e3
movzx ecx, byte [rdx]
movzx eax, byte [rax + r8]
cmp byte [rcx + r8], al
jne 0x1401168ea
inc rdx
dec r11
inc r10
cmp byte [rdx], r12b
jne 0x1401168b5
test r11, r11
jne 0x1401168ef
mov edx, 1
jmp 0x140116905
mov edx, r12d
jmp 0x140116905
movzx ecx, byte [rdx]
mov edx, r12d
movzx eax, byte [r10]
movzx eax, byte [rax + r8]
cmp byte [rcx + r8], al
sete dl
test edx, edx
je 0x140116739
cmp ebp, 1
jne 0x140116739
mov dword [r14], 0xc8
lea rbp, [rdi + 0xc88]
mov byte [rsi], 0xa
jmp 0x140116989
bt ecx, 0x12
jae 0x140116739
lea rax, [rsp + 0x72]
mov rcx, r15
lea r14, [rdi + 0x158]
mov qword [rsp + 0x28], r14
lea r9, [rsp + 0x80]
lea r8, [rsp + 0x84]
mov qword [rsp + 0x20], rax
lea rdx, str._RTSP__1d._1d_c_3d
call fcn.140046470
cmp eax, 4
jne 0x140116739
cmp byte [rsp + 0x72], 0x20
jne 0x140116739
lea rsi, [r13 + 0x73f]
xor r12d, r12d
mov byte [rsi], listen
mov edx, dword [r14]
movzx ecx, byte [rdi + 0x1131]
mov dword [rdi + 0x1338], edx
movzx eax, byte [rsi]
mov dword [rdi + 0x1340], eax
movzx eax, byte [rsi]
test cl, cl
je 0x1401169ad
cmp cl, al
jbe 0x1401169b3
mov byte [rdi + 0x1131], al
cmp qword [rdi + 0x1140], 0
je 0x1401169d5
cmp byte [rdi + 0x11b8], 0
jne 0x1401169d5
cmp edx, 0x1a0
jne 0x1401169d5
mov byte [rdi + 0x1c4], 1
movzx eax, byte [rsi]
cmp al, 0xa
jne 0x1401169ff
lea rdx, str.HTTP_1.0__assume_close_after_body
mov rcx, rdi
call fcn.140100de0
cmp byte [r13 + 0x30e], 1
je 0x140116a1e
mov byte [r13 + 0x30e], 1
jmp 0x140116a1e
cmp al, 0x14
je 0x140116a11
cmp dword [rdi + 0x174], 2
jne 0x140116a1e
cmp edx, 0x65
jne 0x140116a1e
mov rax, qword [r13 + 0x700]
mov dword [rax], 2
mov ecx, dword [r14]
lea eax, [rcx - 0x64]
cmp eax, 0x63
setbe al
mov byte [rdi + 0x1c5], al
sub ecx, 0xcc
je 0x140116a4d
cmp ecx, 0x64
jne 0x140116a62
cmp byte [rdi + 0x528], 0
je 0x140116a4d
mov byte [rdi + 0x141c], 1
mov qword [rdi + 0xe8], r12
mov qword [rdi + 0xf0], r12
mov byte [rdi + 0x1c5], 1
mov esi, 6
xor r14d, r14d
mov rbx, qword [rbp]
xor edx, edx
mov rbp, qword [rdi + 0xc90]
mov rcx, rbx
mov r8, rbp
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x14011754b
mov ecx, dword [rdi + 0x144]
cmp ecx, 2
jl 0x140116abf
movzx eax, byte [rbx]
cmp al, 0x20
je 0x140116aa1
cmp al, 9
jne 0x140116aa6
cmp ecx, 2
jg 0x140116abf
mov r8, rbp
mov edx, 0x3a
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x140117530
mov r8, r15
mov rdx, r13
mov rcx, rdi
call fcn.140115100
test eax, eax
jne 0x140116742
cmp byte [rdi + 0xaa2], al
je 0x140116ae0
or esi, 1
mov r9, qword [rdi + 0xc90]
mov r8, r15
mov ebx, dword [rdi + 0x158]
mov edx, 1
mov rcx, rdi
call fcn.140100b60
mov r9, qword [rdi + 0xc90]
lea eax, [rbx - 0x64]
mov edx, esi
mov r8, r15
or edx, 0x10
mov rcx, rdi
cmp eax, 0x64
cmovae edx, esi
call fcn.1400f2d80
test eax, eax
jne 0x140116742
mov rax, qword [rdi + 0xc90]
lea rbp, [rdi + 0xc88]
add qword [rdi + 0x1350], rax
add qword [rdi + 0x108], rax
cmp qword [rbp + 8], 0
je 0x140117332
mov rax, qword [rbp]
mov byte [rax], 0
jmp 0x140117332
mov ecx, dword [rdi + 0x158]
lea eax, [rcx - 0x64]
cmp eax, 0x63
ja 0x140116cc0
sub ecx, 0x64
je 0x140116c7e
cmp ecx, 1
je 0x140116b92
lea r14, [rdi + 0x1c1]
mov dword [rdi + 0x144], 0
mov byte [r14], 1
jmp 0x140116d6b
mov eax, dword [rdi + 0x174]
cmp eax, 2
je 0x140117566
cmp eax, 1
jne 0x140116c6e
mov rbx, qword [rdi + 0x1b0]
lea r8d, [rax + 3]
mov rbp, qword [rdi + 0x18]
mov rcx, rdi
lea rdx, [rbx + 0x209]
call fcn.140105460
test eax, eax
jne 0x140116742
movzx edx, byte [rbx + 0x20b]
mov rcx, rdi
movzx eax, byte [rbx + 0x20c]
movzx r9d, byte [rbx + 0x20a]
movzx r8d, byte [rbx + 0x209]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], edx
lea rdx, str.Received_101__switch_to_WebSocket__mask__02x_02x_02x_02x
call fcn.140100de0
mov dword [rdi + 0x174], 3
cmp byte [rdi + 0xa89], 0
je 0x140116c34
mov rcx, qword [rbp + 0x1a8]
lea r8, [rsp + 0x74]
mov edx, 0x8004667e
mov dword [rsp + 0x74], r14d
call qword [sym.imp.WS2_32.dll_ioctlsocket]
mov qword [rbx + 0x258], r14
lea r14, [rdi + 0x1c1]
mov byte [r14], 0
cmp byte [rdi + 0xa89], 0
je 0x140116c62
mov rax, qword [rsp + 0x50]
and dword [rdi + 0x15c], 0xfffffffe
mov qword [rax], 0
lea rbp, [rdi + 0xc88]
jmp 0x140116d6b
lea r14, [rdi + 0x1c1]
mov byte [r14], 0
jmp 0x140116d6b
cmp dword [rdi + 0x170], 0
lea r14, [rdi + 0x1c1]
mov byte [r14], 1
mov dword [rdi + 0x144], 0
jle 0x140116d6b
or dword [rdi + 0x15c], 2
xor edx, edx
mov rcx, rdi
mov dword [rdi + 0x170], 0
call fcn.1400f2290
jmp 0x140116d6b
lea rbx, [rdi + 0x1c1]
lea r9, [rdi + 0xe8]
mov byte [rbx], 0
cmp qword [r9], 0xffffffffffffffff
mov r14, rbx
jne 0x140116d72
cmp byte [rdi + 0x1c6], 0
jne 0x140116d72
cmp byte [r13 + 0x30e], 0
jne 0x140116d72
cmp byte [r13 + 0x73f], 0xb
jne 0x140116d72
mov rax, qword [r13 + 0x328]
test dword [rax + 0x84], 0x40000
jne 0x140116d72
cmp byte [rdi + 0x11b8], 5
je 0x140116d72
lea rdx, str.no_chunk__no_close__no_size._Assume_close_to_signal_end
mov rcx, rdi
call fcn.140100de0
mov rcx, qword [r13 + 0x1d8]
test rcx, rcx
je 0x140116d59
nop word [rax + rax]
mov rax, qword [rcx]
mov edx, dword [rax + 8]
test dl, 4
jne 0x140116d6b
test dl, 3
jne 0x140116d59
mov rcx, qword [rcx + 8]
test rcx, rcx
jne 0x140116d40
mov al, 1
cmp al, byte [r13 + 0x30e]
je 0x140116d6b
mov byte [r13 + 0x30e], al
lea r9, [rdi + 0xe8]
cmp byte [r14], 0
jne 0x140116de8
cmp byte [rdi + 0x1c7], 0
jne 0x140116dd9
cmp byte [r9 + 0xde], 0
jne 0x140116dd9
mov r8, qword [r9]
cmp r8, 0xffffffffffffffff
je 0x140116de8
mov rax, qword [rdi + 0x6e8]
test rax, rax
je 0x140116da9
cmp r8, rax
jg 0x140117597
mov edx, dword [rdi + 0xb14]
xor ecx, ecx
mov eax, edx
test r8, r8
cmovns rcx, r8
and eax, 0xffffffbf
or edx, 0x40
test r8, r8
cmovs edx, eax
mov dword [rdi + 0xb14], edx
mov qword [rdi + 0xae8], rcx
mov qword [r9 + 8], r8
jmp 0x140116de8
mov qword [r9 + 8], 0xffffffffffffffff
mov qword [r9], 0xffffffffffffffff
cmp byte [r13 + 0x30e], 0
je 0x140116e80
mov eax, dword [rdi + 0x158]
cmp eax, 0x191
jne 0x140116e0f
cmp dword [r13 + 0x3f0], 2
je 0x140116e20
jmp 0x140116e36
cmp eax, 0x197
jne 0x140116e36
cmp dword [r13 + 0x3f4], 2
jne 0x140116e36
lea rdx, str.Connection_closure_while_negotiating_auth__HTTP_1.0__
mov rcx, rdi
call fcn.140100de0
mov byte [rdi + 0x12d5], 1
cmp byte [r13 + 0x30e], 0
je 0x140116e80
mov eax, dword [rdi + 0x158]
cmp eax, 0x191
jne 0x140116e59
cmp dword [r13 + 0x4e8], 1
je 0x140116e6a
jmp 0x140116e80
cmp eax, 0x197
jne 0x140116e80
cmp dword [r13 + 0x4ec], 1
jne 0x140116e80
lea rdx, str.Connection_closure_while_negotiating_auth__HTTP_1.0__
mov rcx, rdi
call fcn.140100de0
mov byte [rdi + 0x12d5], 1
cmp dword [r13 + 0x4e8], 3
jne 0x140116ea1
cmp dword [rdi + 0x158], 0x191
je 0x140116ea1
mov dword [r13 + 0x4e8], 4
cmp dword [r13 + 0x4ec], 3
jne 0x140116ec2
cmp dword [rdi + 0x158], 0x197
je 0x140116ec2
mov dword [r13 + 0x4ec], 4
mov eax, dword [rdi + 0x158]
xor edx, edx
cmp byte [rdi + 0xaa2], dl
mov rcx, rdi
mov r15, qword [rdi + 0xc90]
mov r8, qword [rbp]
setne dl
sub eax, 0x64
add edx, 2
cmp eax, 0x64
mov r9, r15
sbb eax, eax
and eax, 0x10
or edx, eax
call fcn.1400f2d80
test eax, eax
jne 0x140116742
mov rdx, qword [rdi + 0x108]
movsxd rcx, r15d
add qword [rdi + 0x1350], rcx
add rdx, rcx
mov rcx, rdi
mov qword [rdi + 0x108], rdx
call fcn.140110d30
test al, al
jne 0x140117649
cmp dword [rdi + 0x174], 1
mov ecx, dword [rdi + 0x158]
je 0x14011762d
lea eax, [rcx - 0x64]
cmp eax, 0x63
ja 0x140116f53
mov qword [rdi + 0x110], rdx
jmp 0x140117181
mov rsi, qword [rdi + 0x18]
mov r9d, 0xffffffbf
mov qword [rdi + 0x110], 0
mov eax, 0xffffffff
mov rdx, qword [rdi + 0x920]
test rdx, rdx
cmovne r9d, eax
cmp byte [rdi + 0x12d5], 0
je 0x140116f97
movzx eax, byte [rdi + 0xa9d]
neg al
sbb ebx, ebx
and ebx, 0x16
jmp 0x140117179
cmp qword [rdi + 0x12b0], 0
jne 0x140116fb4
xor bpl, bpl
xor al, al
xor ebx, ebx
mov r8, rsi
test rdx, rdx
je 0x140117037
cmp ecx, 0x191
je 0x140116fd6
xor bpl, bpl
xor al, al
xor ebx, ebx
mov r8, rsi
cmp byte [rsi + 0x318], al
je 0x140117037
cmp ecx, 0x12c
jge 0x140117037
lea rcx, [rdi + 0xdd0]
mov edx, r9d
call fcn.14010f950
movzx ebp, al
test al, al
jne 0x140116ff3
mov byte [rdi + 0x12d5], 1
xor al, al
xor ebx, ebx
cmp dword [rdi + 0xdd4], 8
mov r8, rsi
jne 0x140117037
cmp byte [rsi + 0x73f], 0xb
jbe 0x140117037
lea rdx, str.Forcing_HTTP_1.1_for_NTLM
mov rcx, rdi
call fcn.140100de0
cmp byte [rsi + 0x30e], 1
je 0x14011702b
mov byte [rsi + 0x30e], 1
mov byte [rdi + 0x1130], 2
mov r8, rsi
xor al, al
cmp byte [r8 + 0x30a], 0
je 0x14011707d
mov ecx, dword [rdi + 0x158]
cmp ecx, 0x197
je 0x140117061
cmp byte [r8 + 0x318], 0
je 0x14011707d
cmp ecx, 0x12c
jge 0x14011707d
lea rcx, [rdi + 0xde0]
mov edx, 0xffffffbf
call fcn.14010f950
test al, al
jne 0x14011707d
mov byte [rdi + 0x12d5], 1
test bpl, bpl
jne 0x1401170ec
test al, al
jne 0x1401170ec
cmp dword [rdi + 0x158], 0x12c
jge 0x14011714e
cmp byte [rdi + 0xddc], al
jne 0x14011714e
cmp byte [r8 + 0x318], al
je 0x14011714e
movzx eax, byte [rdi + 0x11b8]
test al, al
je 0x14011714e
cmp al, 5
je 0x14011714e
mov rcx, qword [rdi + 0x11c0]
call qword [case.0x1400f50d8.0]
mov qword [rdi + 0x198], rax
test rax, rax
je 0x140117621
mov byte [rdi + 0xddc], 1
jmp 0x14011714e
movzx eax, byte [rdi + 0x11b8]
test al, al
je 0x140117119
cmp al, 5
je 0x140117119
cmp byte [rdi + 0x12e3], 0
jne 0x140117119
mov rdx, r8
mov rcx, rdi
call fcn.14010fa10
mov ebx, eax
test eax, eax
jne 0x140117626
mov rcx, qword [rdi + 0x198]
call qword [0x1402b30c8]
mov rcx, qword [rdi + 0x11c0]
mov qword [rdi + 0x198], 0
call qword [case.0x1400f50d8.0]
mov qword [rdi + 0x198], rax
test rax, rax
je 0x140117621
mov rcx, rdi
call fcn.140110d30
test al, al
je 0x140117172
mov r8d, dword [rdi + 0x158]
lea rdx, str.The_requested_URL_returned_error:__d
call fcn.140100cb0
mov ebx, socket
lea rbp, [rdi + 0xc88]
test ebx, ebx
jne 0x140117626
cmp dword [rdi + 0x158], 0x12c
jl 0x140117317
cmp byte [r13 + 0x318], 0
jne 0x1401172ee
cmp byte [r13 + 0x30e], 0
jne 0x1401172ee
cmp byte [rdi + 0x12e3], 0
jne 0x1401172f7
movzx ecx, byte [rdi + 0x11b8]
sub ecx, 1
je 0x1401171d9
sub ecx, 1
je 0x1401171d9
sub ecx, 1
je 0x1401171d9
cmp ecx, 1
jne 0x1401172ee
xor edx, edx
mov rcx, rdi
call fcn.1400f2290
cmp byte [rdi + 0x1c3], 0
jne 0x1401172ee
cmp dword [rdi + 0x158], 0x1a1
jne 0x140117243
cmp byte [rdi + 0x12d7], 0
je 0x140117243
lea rdx, str.Got_417_while_waiting_for_a_100
mov rcx, rdi
call fcn.140100de0
mov rcx, qword [rdi + 0x11c0]
mov byte [rdi + 0x12d8], 1
call qword [case.0x1400f50d8.0]
lea rdx, [rdi + 0xe8]
mov rcx, rdi
mov qword [rdi + 0x198], rax
call fcn.14010b670
jmp 0x1401172ee
cmp byte [rdi + 0xa9e], 0
mov rcx, rdi
je 0x14011727b
lea rdx, str.HTTP_error_before_end_of_send__keep_sending
call fcn.140100de0
cmp dword [rdi + 0x170], 0
jle 0x1401172ee
or dword [rdi + 0x15c], 2
mov dword [rdi + 0x170], 0
jmp 0x1401172ee
lea rdx, str.HTTP_error_before_end_of_send__stop_sending
call fcn.140100de0
mov rcx, qword [r13 + 0x1d8]
test rcx, rcx
je 0x1401172ac
mov rax, qword [rcx]
mov edx, dword [rax + 8]
test dl, 4
jne 0x1401172be
test dl, 3
jne 0x1401172ac
mov rcx, qword [rcx + 8]
test rcx, rcx
jne 0x140117293
mov al, 1
cmp al, byte [r13 + 0x30e]
je 0x1401172be
mov byte [r13 + 0x30e], al
lea rdx, [rdi + 0xe8]
mov rcx, rdi
call fcn.14010b670
test eax, eax
jne 0x140116742
mov byte [rdi + 0x1c3], 1
cmp byte [rdi + 0x12d7], al
je 0x1401172ee
mov dword [rdi + 0x170], 3
cmp byte [rdi + 0x12e3], 0
je 0x140117317
cmp qword [r13 + 0x350], 0xffffffffffffffff
je 0x140117317
lea rdx, str.Keep_sending_data_to_get_tossed_away
mov rcx, rdi
call fcn.140100de0
or dword [rdi + 0x15c], 2
cmp byte [r14], 0
je 0x1401175b0
cmp qword [rbp + 8], 0
je 0x14011732f
mov rax, qword [rbp]
mov byte [rax], 0
xor r14d, r14d
mov qword [rbp + 8], r14
mov rbx, qword [rdi + 0x148]
cmp byte [rbx], 0
je 0x140116740
mov r15, qword [rsp + 0x50]
mov edx, 0xa
mov rcx, rbx
mov r12, rbx
mov rsi, qword [r15]
mov r8, rsi
mov rbp, rsi
call sub.VCRUNTIME140.dll_memchr
mov rcx, rax
test rax, rax
jne 0x140116581
lea r14, [rdi + 0xc88]
mov r8, rbp
mov rdx, r12
mov rcx, r14
call fcn.1400ea540
test eax, eax
jne 0x140116742
cmp dword [rdi + 0x144], eax
jne 0x140116740
mov r9, qword [rdi + 0xc90]
mov rdx, r13
mov r8, qword [r14]
mov rcx, rdi
call fcn.140114ed0
cmp eax, 2
jne 0x140116740
mov byte [rdi + 0x1c1], 0
mov dword [rdi + 0x140], eax
test r13, r13
je 0x1401173ee
mov rcx, qword [r13 + 0x1d8]
test rcx, rcx
je 0x1401173ee
mov rax, qword [rcx]
mov edx, dword [rax + 8]
test dl, 4
jne 0x140117400
test dl, 3
jne 0x1401173ee
mov rcx, qword [rcx + 8]
test rcx, rcx
jne 0x1401173d5
mov al, 1
cmp al, byte [r13 + 0x30e]
je 0x140117400
mov byte [r13 + 0x30e], al
cmp byte [rdi + 0xac1], 0
jne 0x140116740
lea rdx, str.Received_HTTP_0.9_when_not_allowed
mov rcx, rdi
call fcn.140100cb0
mov eax, 1
jmp 0x140116742
test r13, r13
je 0x140117459
mov rcx, qword [r13 + 0x1d8]
test rcx, rcx
je 0x140117459
nop word [rax + rax]
mov rax, qword [rcx]
mov edx, dword [rax + 8]
test dl, 4
jne 0x14011746b
test dl, 3
jne 0x140117459
mov rcx, qword [rcx + 8]
test rcx, rcx
jne 0x140117440
mov al, 1
cmp al, byte [r13 + 0x30e]
je 0x14011746b
mov byte [r13 + 0x30e], al
cmp byte [rdi + 0xac1], 0
je 0x14011740d
mov byte [rdi + 0x1c1], 0
cmp qword [r15], 0
je 0x140117490
mov dword [rdi + 0x140], 1
jmp 0x140116740
mov rax, qword [rsp + 0x60]
mov dword [rdi + 0x140], 2
mov qword [r15], rax
mov rax, qword [rsp + 0x68]
mov qword [rdi + 0x148], rax
jmp 0x140116740
mov r9d, r8d
mov eax, 0x66666667
imul r8d
mov eax, 0x66666667
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*4]
imul r8d
add ecx, ecx
sar edx, 2
sub r9d, ecx
mov r8d, edx
mov rcx, rdi
shr r8d, 0x1f
add r8d, edx
lea rdx, str.Unsupported_HTTP_version___u._d__in_response
call fcn.140100cb0
mov eax, 1
jmp 0x140116742
lea rdx, str.Unsupported_HTTP_version_in_response
mov rcx, rdi
call fcn.140100cb0
mov eax, 1
jmp 0x140116742
lea rdx, str.Unsupported_response_code_in_HTTP_response
mov rcx, rdi
call fcn.140100cb0
mov eax, 1
jmp 0x140116742
lea rdx, str.Header_without_colon
mov rcx, rdi
mov ebx, 8
call fcn.140100cb0
mov eax, ebx
jmp 0x140116742
lea rdx, str.Nul_byte_in_header
mov rcx, rdi
mov ebx, 8
call fcn.140100cb0
mov eax, ebx
jmp 0x140116742
lea rdx, str.Received_101__Switching_to_HTTP_2
mov rcx, rdi
call fcn.140100de0
mov eax, 1
mov dword [rdi + 0x174], 3
mov byte [rdi + 0x1c1], 1
mov dword [rdi + 0x144], r14d
jmp 0x140116742
lea rdx, str.Maximum_file_size_exceeded
mov rcx, rdi
call fcn.140100cb0
mov eax, 0x3f
jmp 0x140116742
cmp byte [rdi + 0x1cb], 0
jne 0x1401175df
mov rax, qword [r13 + 0x328]
test dword [rax + 0x84], 0x40000
je 0x1401175e9
cmp dword [rdi + 0x9f0], 2
jne 0x1401175e9
cmp qword [rdi + 0xe8], 0xffffffffffffffff
jg 0x1401175e9
mov rax, qword [rsp + 0x48]
mov byte [rax], 1
jmp 0x1401175ee
mov rax, qword [rsp + 0x48]
cmp qword [rdi + 0xf0], 0
jne 0x1401175fd
mov byte [rax], 1
jmp 0x140117602
cmp byte [rax], 0
je 0x140117609
and dword [rdi + 0x15c], 0xfffffffe
mov r9, r15
mov r8, r12
mov edx, 1
mov rcx, rdi
call fcn.140100b60
jmp 0x140116740
mov ebx, reloc.WLDAP32.dll_Ordinal_27
mov eax, ebx
jmp 0x140116742
mov r8d, ecx
lea rdx, str.Refused_WebSockets_upgrade:__d
mov rcx, rdi
call fcn.140100cb0
mov eax, socket
jmp 0x140116742
mov r8d, dword [rdi + 0x158]
lea rdx, str.The_requested_URL_returned_error:__d
call fcn.140100cb0
mov eax, socket
jmp 0x140116742