Function at 0x1400e7ce0
Capabilities:
Validate payment card number using luhn algorithm

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov r14, qword [r8]
lea r12, [rcx + 0xc38]
mov rax, qword [rcx + 0x140]
mov rbx, rcx
mov qword [rsp + 0x80], r14
mov rdi, rax
mov qword [rsp + 0x30], rax
mov r15, rax
mov rsi, r14
mov rbp, r14
mov r8, r14
mov rcx, rax
mov r13, rdx
mov edx, 0xa
call sub.VCRUNTIME140.dll_memchr
mov rcx, rax
mov rdx, r15
test rax, rax
je 0x1400e8bde
lea r8, [rcx + 1]
sub rdi, rax
lea rax, [rsi - 1]
mov rcx, r12
mov rsi, qword [rsp + 0x90]
add rax, rdi
xor ebp, ebp
mov qword [rsi], rax
mov qword [rbx + 0x140], r8
sub r8, r15
call fcn.1400da660
test eax, eax
jne 0x1400e8a45
cmp dword [rbx + 0x138], eax
jne 0x1400e7db4
mov rcx, r12
call fcn.140012d30
mov rcx, r12
mov rdi, rax
call fcn.140013d50
mov r8, rdi
mov rdx, rax
mov rcx, rbx
call fcn.1400e96c0
cmp eax, 2
je 0x1400e8a12
mov rcx, r12
call fcn.140013d50
mov r14, rax
movzx ecx, byte [rax]
cmp cl, 0xa
je 0x1400e82fd
cmp cl, 0xd
je 0x1400e82fd
mov edx, dword [rbx + 0x138]
mov esi, 4
lea ecx, [rdx + 1]
mov dword [rbx + 0x138], ecx
test edx, edx
jne 0x1400e81be
mov rax, qword [r13 + 0x2e8]
mov ecx, dword [rax + 0x84]
test cl, 3
je 0x1400e7ff8
movzx eax, byte [r14]
mov rdi, r14
test al, al
je 0x1400e7e24
cmp al, 0x20
je 0x1400e7e19
cmp al, 9
jne 0x1400e7e24
movzx eax, byte [rdi + 1]
inc rdi
test al, al
jne 0x1400e7e11
mov r8d, 5
lea rdx, str.HTTP_
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
test eax, eax
jne 0x1400e7ec8
movsx edx, byte [rdi + 5]
mov ecx, edx
sub ecx, 0x31
je 0x1400e7f0b
sub ecx, 1
je 0x1400e7e5f
cmp ecx, 1
jne 0x1400e8a80
movzx eax, byte [rdi + 6]
cmp al, 0x20
je 0x1400e7e6b
cmp al, 9
jne 0x1400e7ec8
movsx ecx, byte [rdi + 7]
lea eax, [rdx - 0x30]
lea r9d, [rax + rax*4]
add r9d, r9d
lea eax, [rcx - 0x30]
cmp al, 9
ja 0x1400e7ec8
movsx edx, byte [rdi + 8]
lea eax, [rdx - 0x30]
cmp al, 9
ja 0x1400e7ec8
movsx r8d, byte [rdi + 9]
lea eax, [r8 - 0x30]
cmp al, 9
ja 0x1400e7ec8
lea ecx, [rcx + rcx*4]
lea ecx, [rdx + rcx*2]
lea ecx, [rcx + rcx*4]
lea ecx, [rcx - 0xa68]
lea ecx, [r8 + rcx*2]
mov dword [rbx + 0x150], ecx
movzx eax, byte [rdi + 0xa]
cmp al, 0x20
je 0x1400e7f96
sub al, 9
cmp al, sil
jbe 0x1400e7f96
mov rcx, r12
call fcn.140012d30
mov rcx, r12
mov rdi, rax
call fcn.140013d50
mov rdx, rax
mov r8, rdi
mov rcx, rbx
call fcn.1400e96c0
cmp eax, 1
jne 0x1400e8b08
lea rdi, [r13 + 0x525]
mov dword [rbx + 0x150], 0xc8
mov byte [rdi], 0xa
jmp 0x1400e80df
cmp byte [rdi + 6], 0x2e
jne 0x1400e8ae5
movsx ecx, byte [rdi + 7]
lea eax, [rcx - 0x30]
cmp al, 1
ja 0x1400e8ae5
movzx eax, byte [rdi + 8]
cmp al, 0x20
je 0x1400e7f34
cmp al, 9
jne 0x1400e8ae5
lea r9d, [rcx - 0x26]
movsx ecx, byte [rdi + 9]
lea eax, [rcx - 0x30]
cmp al, 9
ja 0x1400e8ae5
movsx edx, byte [rdi + 0xa]
lea eax, [rdx - 0x30]
cmp al, 9
ja 0x1400e8ae5
movsx r8d, byte [rdi + 0xb]
lea eax, [r8 - 0x30]
cmp al, 9
ja 0x1400e8ae5
lea ecx, [rcx + rcx*4]
lea ecx, [rdx + rcx*2]
lea ecx, [rcx + rcx*4]
lea ecx, [rcx - 0xa68]
lea ecx, [r8 + rcx*2]
mov dword [rbx + 0x150], ecx
movzx eax, byte [rdi + 0xc]
cmp al, 0x20
je 0x1400e7f96
cmp al, 9
je 0x1400e7f96
sub al, 0xa
cmp al, 3
ja 0x1400e8ae5
cmp ecx, 0x64
jl 0x1400e8acc
mov ecx, r9d
sub ecx, 0xa
je 0x1400e7fb5
sub ecx, 1
je 0x1400e7fb5
cmp ecx, 9
jne 0x1400e8a96
lea rdi, [r13 + 0x525]
mov byte [rdi], r9b
cmp dword [rbx + 0x16c], 3
jne 0x1400e7fdd
cmp r9b, 0x14
je 0x1400e7fdd
lea rdx, str.Lying_server__not_serving_HTTP_2
mov rcx, rbx
call fcn.1400dd1e0
cmp byte [rdi], 0x14
jae 0x1400e80df
mov rax, qword [r13 + 0x4e8]
mov dword [rax], 0xffffffff
jmp 0x1400e80df
bt ecx, 0x12
jae 0x1400e8b08
movzx eax, byte [r14]
mov rdi, r14
test al, al
je 0x1400e8023
nop dword [rax]
cmp al, 0x20
je 0x1400e8018
cmp al, 9
jne 0x1400e8023
movzx eax, byte [rdi + 1]
inc rdi
test al, al
jne 0x1400e8010
mov r8d, 5
lea rdx, str.RTSP_
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
test eax, eax
jne 0x1400e8b08
movzx eax, byte [rdi + 5]
sub al, 0x30
cmp al, 9
ja 0x1400e8afe
cmp byte [rdi + 6], 0x2e
jne 0x1400e8afe
movzx eax, byte [rdi + 7]
sub al, 0x30
cmp al, 9
ja 0x1400e8afe
movzx eax, byte [rdi + 8]
cmp al, 0x20
je 0x1400e8077
cmp al, 9
jne 0x1400e8afe
movsx ecx, byte [rdi + 9]
lea eax, [rcx - 0x30]
cmp al, 9
ja 0x1400e8afe
movsx edx, byte [rdi + 0xa]
lea eax, [rdx - 0x30]
cmp al, 9
ja 0x1400e8afe
movsx r8d, byte [rdi + 0xb]
lea eax, [r8 - 0x30]
cmp al, 9
ja 0x1400e8afe
lea ecx, [rcx + rcx*4]
lea ecx, [rdx + rcx*2]
lea ecx, [rcx + rcx*4]
lea ecx, [rcx - 0xa68]
lea ecx, [r8 + rcx*2]
mov dword [rbx + 0x150], ecx
movzx eax, byte [rdi + 0xc]
cmp al, 0x20
je 0x1400e80d5
cmp al, 9
je 0x1400e80d5
sub al, 0xa
cmp al, 3
ja 0x1400e8afe
lea rdi, [r13 + 0x525]
mov byte [rdi], listen
mov edx, dword [rbx + 0x150]
movzx ecx, byte [rbx + 0x12e9]
mov dword [rbx + 0x1300], edx
movzx eax, byte [rdi]
mov dword [rbx + 0x1308], eax
movzx eax, byte [rdi]
test cl, cl
je 0x1400e8106
cmp cl, al
jbe 0x1400e810c
mov byte [rbx + 0x12e9], al
cmp qword [rbx + 0x1118], 0
je 0x1400e812e
cmp byte [rbx + 0x12ea], 0
jne 0x1400e812e
cmp edx, 0x1a0
jne 0x1400e812e
mov byte [rbx + 0x1cd], 1
movzx eax, byte [rdi]
cmp al, 0xa
jne 0x1400e8153
lea rdx, str.HTTP_1.0__assume_close_after_body
mov rcx, rbx
call fcn.1400dd1e0
mov edx, 1
mov rcx, r13
call fcn.1400dead0
jmp 0x1400e8172
cmp al, 0x14
je 0x1400e8165
cmp dword [rbx + 0x16c], 2
jne 0x1400e8172
cmp edx, 0x65
jne 0x1400e8172
mov rax, qword [r13 + 0x4e8]
mov dword [rax], 2
mov ecx, dword [rbx + 0x150]
lea eax, [rcx - 0x64]
cmp eax, 0x63
setbe al
mov byte [rbx + 0x1ce], al
sub ecx, 0xcc
je 0x1400e81a4
cmp ecx, 0x64
jne 0x1400e81b9
cmp byte [rbx + 0x520], 0
je 0x1400e81a4
mov byte [rbx + 0x13dc], 1
mov qword [rbx + 0xf0], rbp
mov qword [rbx + 0xf8], rbp
mov byte [rbx + 0x1ce], 1
mov esi, ntohs
mov rcx, r12
call fcn.140013d50
mov rcx, r12
mov rdi, rax
call fcn.140012d30
mov r8, rax
xor edx, edx
mov rcx, rdi
mov rbp, rax
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x1400e8b2f
mov edx, dword [rbx + 0x138]
cmp edx, 2
jl 0x1400e8220
movzx ecx, byte [rdi]
cmp cl, 0x20
je 0x1400e8202
cmp cl, 9
jne 0x1400e8207
cmp edx, 2
jg 0x1400e8220
mov r8, rbp
mov edx, 0x3a
mov rcx, rdi
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x1400e8b14
mov r8, r14
mov rdx, r13
mov rcx, rbx
call fcn.1400e6d10
test eax, eax
jne 0x1400e8a45
mov eax, dword [rbx + 0x150]
sub eax, 0x64
cmp eax, 0x64
jae 0x1400e8247
or esi, 0x20
mov rcx, r12
call fcn.140012d30
mov r9, rax
mov r8, r14
mov edx, 1
mov rcx, rbx
call fcn.1400dd010
mov rcx, r12
call fcn.140012d30
mov r9, rax
mov r8, r14
mov edx, esi
mov rcx, rbx
call fcn.1400dd9f0
test eax, eax
jne 0x1400e8a45
mov rcx, r12
call fcn.140012d30
mov r8d, dword [rbx + 0x12c]
mov r9d, 0x4b000
cmp rax, r9
jae 0x1400e82d8
mov edx, dword [rbx + 0x1348]
lea ecx, [r8 + rax]
add dword [rbx + 0x128], eax
add edx, eax
mov dword [rbx + 0x1348], edx
mov dword [rbx + 0x12c], ecx
cmp ecx, r9d
ja 0x1400e82d3
cmp edx, 0x5dc000
jbe 0x1400e89e2
mov r9d, 0x5dc000
mov ecx, edx
mov r8d, ecx
jmp 0x1400e82db
add r8, rax
test r8, r8
je 0x1400e89e2
lea rdx, str.Too_large_response_headers:__zu____u
mov rcx, rbx
call fcn.1400dd100
mov eax, 0x38
jmp 0x1400e8a45
mov ecx, dword [rbx + 0x150]
lea eax, [rcx - 0x64]
cmp eax, 0x63
ja 0x1400e83f5
sub ecx, 0x64
je 0x1400e83b8
cmp ecx, 1
je 0x1400e833a
lea r14, [rbx + 0x1ca]
mov dword [rbx + 0x138], ebp
mov byte [r14], 1
lea rsi, [rbx + 0xf0]
jmp 0x1400e8479
cmp dword [rbx + 0x16c], 2
jne 0x1400e83a1
lea rdx, str.Received_101__Switching_to_HTTP_2
mov rcx, rbx
call fcn.1400dd1e0
mov r9, qword [rbx + 0x140]
lea r14, [rbx + 0x1ca]
mov byte [r14], 1
xor r8d, r8d
mov dword [rbx + 0x16c], 3
mov rdx, r13
mov dword [rbx + 0x138], ebp
mov rcx, rbx
mov rax, qword [rsi]
mov qword [rsp + 0x20], rax
call fcn.1400ecc20
test eax, eax
jne 0x1400e8a45
mov qword [rsi], rbp
lea rsi, [rbx + 0xf0]
jmp 0x1400e8479
lea r14, [rbx + 0x1ca]
mov byte [r14], 0
lea rsi, [rbx + 0xf0]
jmp 0x1400e8479
cmp dword [rbx + 0x168], 0
lea r14, [rbx + 0x1ca]
mov byte [r14], 1
mov dword [rbx + 0x138], ebp
jle 0x1400e83e9
or dword [rbx + 0x154], 2
xor edx, edx
mov rcx, rbx
mov dword [rbx + 0x168], ebp
call fcn.1400c5490
lea rsi, [rbx + 0xf0]
jmp 0x1400e8479
cmp dword [rbx + 0x16c], 2
jne 0x1400e840a
mov rcx, qword [rbx + 0xd8]
call fcn.1400c5690
lea rdi, [rbx + 0x1ca]
lea rsi, [rbx + 0xf0]
mov byte [rdi], 0
cmp qword [rsi], 0xffffffffffffffff
mov r14, rdi
jne 0x1400e8479
cmp byte [rbx + 0x1cf], 0
jne 0x1400e8479
cmp byte [r13 + 0x2ce], 0
jne 0x1400e8479
cmp byte [r13 + 0x525], 0xb
jne 0x1400e8479
mov rax, qword [r13 + 0x2e8]
test dword [rax + 0x84], 0x40000
jne 0x1400e8479
cmp byte [rbx + 0x12ea], 5
je 0x1400e8479
lea rdx, str.no_chunk__no_close__no_size._Assume_close_to_signal_end
mov rcx, rbx
call fcn.1400dd1e0
mov edx, 2
mov rcx, r13
call fcn.1400dead0
cmp byte [r14], 0
jne 0x1400e84cf
cmp byte [rbx + 0x1d0], 0
jne 0x1400e84c0
cmp byte [rsi + 0xdf], 0
jne 0x1400e84c0
mov rdx, qword [rsi]
cmp rdx, 0xffffffffffffffff
je 0x1400e84cf
mov rax, qword [rbx + 0x6e0]
test rax, rax
je 0x1400e84af
cmp rdx, rax
jg 0x1400e8b4a
mov rcx, rbx
call fcn.1400ea410
mov rax, qword [rsi]
mov qword [rsi + 8], rax
jmp 0x1400e84cf
mov qword [rsi + 8], 0xffffffffffffffff
mov qword [rsi], 0xffffffffffffffff
cmp byte [r13 + 0x2ce], 0
je 0x1400e8519
mov eax, dword [rbx + 0x150]
cmp eax, 0x191
jne 0x1400e84f2
cmp dword [r13 + 0x3b0], 1
je 0x1400e8503
jmp 0x1400e8519
cmp eax, 0x197
jne 0x1400e8519
cmp dword [r13 + 0x3b4], 1
jne 0x1400e8519
lea rdx, str.Connection_closure_while_negotiating_auth__HTTP_1.0__
mov rcx, rbx
call fcn.1400dd1e0
mov byte [rbx + 0x12f1], 1
cmp dword [r13 + 0x3b0], 3
jne 0x1400e853a
cmp dword [rbx + 0x150], 0x191
je 0x1400e853a
mov dword [r13 + 0x3b0], 4
cmp dword [r13 + 0x3b4], 3
jne 0x1400e855b
cmp dword [rbx + 0x150], 0x197
je 0x1400e855b
mov dword [r13 + 0x3b4], 4
mov eax, dword [rbx + 0x150]
mov edi, 4
sub eax, 0x64
mov rcx, r12
cmp eax, 0x64
mov eax, 0x24
cmovb edi, eax
call fcn.140012d30
mov rcx, r12
mov rbp, rax
call fcn.140013d50
mov r8, rax
mov r9, rbp
mov edx, edi
mov rcx, rbx
call fcn.1400dd9f0
test eax, eax
jne 0x1400e8a45
mov ecx, dword [rbx + 0x12c]
mov r9d, 0x4b000
cmp rbp, r9
jae 0x1400e85e7
mov edx, dword [rbx + 0x1348]
lea r8d, [rcx + rbp]
add dword [rbx + 0x128], ebp
add edx, ebp
mov dword [rbx + 0x1348], edx
mov dword [rbx + 0x12c], r8d
cmp r8d, r9d
ja 0x1400e85eb
cmp edx, 0x5dc000
jbe 0x1400e85f4
mov r9d, 0x5dc000
mov r8d, edx
jmp 0x1400e85eb
lea r8, [rcx + rbp]
test r8, r8
jne 0x1400e82e4
mov r8d, dword [rbx + 0x150]
mov rcx, rbx
call fcn.1400e9a10
test al, al
jne 0x1400e8bc8
lea eax, [r8 - 0x64]
cmp eax, 0x63
ja 0x1400e8625
mov eax, dword [rbx + 0x128]
mov dword [rbx + 0x130], eax
jmp 0x1400e882b
mov rsi, qword [rbx + 0x20]
mov edx, 0xffffffbf
mov dword [rbx + 0x130], 0
mov ecx, 0xffffffff
mov rax, qword [rbx + 0x8f0]
test rax, rax
cmovne edx, ecx
cmp byte [rbx + 0x12f1], 0
je 0x1400e8666
movzx eax, byte [rbx + 0xa46]
neg al
sbb edi, edi
and edi, 0x16
jmp 0x1400e8823
cmp qword [rbx + 0x12c8], 0
jne 0x1400e8678
xor dil, dil
test rax, rax
je 0x1400e86e5
cmp r8d, 0x191
je 0x1400e8696
xor dil, dil
cmp byte [rsi + 0x2d8], dil
je 0x1400e86e5
cmp r8d, 0x12c
jge 0x1400e86e5
lea rcx, [rbx + 0xd80]
call fcn.1400e9e10
movzx edi, al
test al, al
jne 0x1400e86b0
mov byte [rbx + 0x12f1], 1
cmp dword [rbx + 0xd84], 8
jne 0x1400e86e5
cmp byte [rsi + 0x525], 0xb
jbe 0x1400e86e5
lea rdx, str.Forcing_HTTP_1.1_for_NTLM
mov rcx, rbx
call fcn.1400dd1e0
mov edx, 1
mov rcx, rsi
call fcn.1400dead0
mov byte [rbx + 0x12e8], 2
xor al, al
cmp byte [rsi + 0x2ca], al
je 0x1400e8729
mov ecx, dword [rbx + 0x150]
cmp ecx, 0x197
je 0x1400e870d
cmp byte [rsi + 0x2d8], al
je 0x1400e8729
cmp ecx, 0x12c
jge 0x1400e8729
lea rcx, [rbx + 0xd90]
mov edx, 0xffffffbf
call fcn.1400e9e10
test al, al
jne 0x1400e8729
mov byte [rbx + 0x12f1], 1
test dil, dil
jne 0x1400e879b
test al, al
jne 0x1400e879b
xor edi, edi
cmp dword [rbx + 0x150], 0x12c
jge 0x1400e87ff
cmp byte [rbx + 0xd8c], dil
jne 0x1400e87ff
cmp byte [rsi + 0x2d8], dil
je 0x1400e87ff
movzx eax, byte [rbx + 0x12ea]
test al, al
je 0x1400e87ff
cmp al, 5
je 0x1400e87ff
mov rcx, qword [rbx + 0x1198]
call qword [case.0x1400d1830.1]
mov qword [rbx + 0x190], rax
test rax, rax
je 0x1400e8bbc
mov byte [rbx + 0xd8c], 1
jmp 0x1400e87ff
movzx eax, byte [rbx + 0x12ea]
xor edi, edi
test al, al
je 0x1400e87ca
cmp al, 5
je 0x1400e87ca
cmp byte [rbx + 0x12fe], dil
jne 0x1400e87ca
mov rdx, rsi
mov rcx, rbx
call fcn.1400e9890
mov edi, eax
test eax, eax
jne 0x1400e8bc1
mov rcx, qword [rbx + 0x190]
call qword [0x1401da5d8]
mov rcx, qword [rbx + 0x1198]
mov qword [rbx + 0x190], 0
call qword [case.0x1400d1830.1]
mov qword [rbx + 0x190], rax
test rax, rax
je 0x1400e8bbc
mov rcx, rbx
call fcn.1400e9a10
test al, al
je 0x1400e8823
mov r8d, dword [rbx + 0x150]
lea rdx, str.The_requested_URL_returned_error:__d
call fcn.1400dd100
mov edi, socket
test edi, edi
jne 0x1400e8bc1
cmp dword [rbx + 0x150], 0x12c
jl 0x1400e89d8
cmp byte [r13 + 0x2d8], 0
jne 0x1400e89af
cmp byte [r13 + 0x2ce], 0
jne 0x1400e89af
cmp byte [rbx + 0x12fe], 0
jne 0x1400e89b8
movzx ecx, byte [rbx + 0x12ea]
sub ecx, 1
je 0x1400e8883
sub ecx, 1
je 0x1400e8883
sub ecx, 1
je 0x1400e8883
cmp ecx, 1
jne 0x1400e89af
xor edx, edx
mov rcx, rbx
call fcn.1400c5490
cmp byte [rbx + 0x1cc], 0
jne 0x1400e89af
cmp dword [rbx + 0x150], 0x1a1
jne 0x1400e8932
cmp byte [rbx + 0x12f3], 0
je 0x1400e8932
cmp qword [rbx + 0x108], 0
jne 0x1400e88d7
cmp dword [rbx + 0x168], 1
jne 0x1400e88d7
lea rdx, str.Got_HTTP_failure_417_while_waiting_for_a_100
mov rcx, rbx
call fcn.1400dd1e0
jmp 0x1400e8906
lea rdx, str.Got_HTTP_failure_417_while_sending_data
mov rcx, rbx
call fcn.1400dd1e0
mov edx, 2
mov rcx, r13
call fcn.1400dead0
mov rdx, r13
mov rcx, rbx
call fcn.1400e9890
test eax, eax
jne 0x1400e8a45
mov rcx, qword [rbx + 0x1198]
mov byte [rbx + 0x12f4], 1
call qword [case.0x1400d1830.1]
lea rdx, [rbx + 0xf0]
mov rcx, rbx
mov qword [rbx + 0x190], rax
call fcn.1400e0180
jmp 0x1400e89af
cmp byte [rbx + 0xa47], 0
mov rcx, rbx
je 0x1400e8966
lea rdx, str.HTTP_error_before_end_of_send__keep_sending
call fcn.1400dd1e0
cmp dword [rbx + 0x168], 0
jle 0x1400e89af
or dword [rbx + 0x154], 2
mov dword [rbx + 0x168], 0
jmp 0x1400e89af
lea rdx, str.HTTP_error_before_end_of_send__stop_sending
call fcn.1400dd1e0
mov edx, 2
mov rcx, r13
call fcn.1400dead0
lea rdx, [rbx + 0xf0]
mov rcx, rbx
call fcn.1400e0180
test eax, eax
jne 0x1400e8a45
mov byte [rbx + 0x1cc], 1
cmp byte [rbx + 0x12f3], al
je 0x1400e89af
mov dword [rbx + 0x168], 3
cmp byte [rbx + 0x12fe], 0
je 0x1400e89d8
cmp qword [r13 + 0x310], 0xffffffffffffffff
je 0x1400e89d8
lea rdx, str.Keep_sending_data_to_get_tossed_away
mov rcx, rbx
call fcn.1400dd1e0
or dword [rbx + 0x154], 2
cmp byte [r14], 0
je 0x1400e8b63
mov rcx, r12
call fcn.1400da6c0
mov rdi, qword [rbx + 0x140]
cmp byte [rdi], 0
je 0x1400e8a43
mov r8, qword [rsp + 0x90]
mov r15, rdi
mov rcx, rdi
mov rsi, qword [r8]
mov rbp, rsi
mov r8, rsi
jmp 0x1400e7d34
mov edx, 2
mov rcx, r13
call fcn.1400dead0
cmp byte [rbx + 0xa69], 0
je 0x1400e8c4b
mov byte [rbx + 0x1ca], 0
cmp qword [rsi], 0
je 0x1400e8a5d
mov dword [rbx + 0x134], 1
xor eax, eax
mov rbx, qword [rsp + 0x88]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [rsp + 0x80]
mov dword [rbx + 0x134], 2
mov qword [rsi], rax
mov rax, qword [rsp + 0x30]
mov qword [rbx + 0x140], rax
jmp 0x1400e8a43
lea rdx, str.Unsupported_HTTP_version_in_response
mov rcx, rbx
call fcn.1400dd100
mov eax, 1
jmp 0x1400e8a45
mov eax, 0x66666667
mov rcx, rbx
imul r9d
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
mov r8d, edx
lea eax, [rdx + rdx*4]
add eax, eax
lea rdx, str.Unsupported_HTTP_version___u._d__in_response
sub r9d, eax
call fcn.1400dd100
mov eax, 1
jmp 0x1400e8a45
lea rdx, str.Unsupported_response_code_in_HTTP_response
mov rcx, rbx
call fcn.1400dd100
mov eax, 1
jmp 0x1400e8a45
lea rdx, str.Unsupported_HTTP_1_subversion_in_response
mov rcx, rbx
call fcn.1400dd100
mov eax, 1
jmp 0x1400e8a45
mov eax, 8
jmp 0x1400e8a45
mov byte [rbx + 0x1ca], 0
jmp 0x1400e8a43
lea rdx, str.Header_without_colon
mov rcx, rbx
mov edi, 8
call fcn.1400dd100
mov eax, edi
jmp 0x1400e8a45
lea rdx, str.Nul_byte_in_header
mov rcx, rbx
mov edi, 8
call fcn.1400dd100
mov eax, edi
jmp 0x1400e8a45
lea rdx, str.Maximum_file_size_exceeded
mov rcx, rbx
call fcn.1400dd100
mov eax, 0x3f
jmp 0x1400e8a45
cmp byte [rbx + 0x1d4], 0
mov rdi, qword [rsp + 0x98]
je 0x1400e8b77
mov byte [rdi], 1
cmp qword [rbx + 0xf8], 0
jne 0x1400e8b98
xor r8d, r8d
mov rdx, r13
mov rcx, rbx
call fcn.1400ec7e0
test al, al
jne 0x1400e8b98
mov byte [rdi], 1
jmp 0x1400e8b9d
cmp byte [rdi], 0
je 0x1400e8ba4
and dword [rbx + 0x154], 0xfffffffe
mov r9, rbp
mov r8, r15
mov edx, 1
mov rcx, rbx
call fcn.1400dd010
jmp 0x1400e8a43
mov edi, 0x1b
mov eax, edi
jmp 0x1400e8a45
lea rdx, str.The_requested_URL_returned_error:__d
call fcn.1400dd100
mov eax, socket
jmp 0x1400e8a45
mov r8, rbp
mov rcx, r12
call fcn.1400da660
test eax, eax
jne 0x1400e8a45
cmp dword [rbx + 0x138], eax
jne 0x1400e8a43
mov rcx, r12
call fcn.140012d30
mov rcx, r12
mov rdi, rax
call fcn.140013d50
mov r8, rdi
mov rdx, rax
mov rcx, rbx
call fcn.1400e96c0
cmp eax, 2
jne 0x1400e8a43
mov edx, eax
mov byte [rbx + 0x1ca], 0
mov rcx, r13
mov dword [rbx + 0x134], eax
call fcn.1400dead0
cmp byte [rbx + 0xa69], 0
jne 0x1400e8a43
lea rdx, str.Received_HTTP_0.9_when_not_allowed
mov rcx, rbx
call fcn.1400dd100
mov eax, 1
jmp 0x1400e8a45