Function at 0x14027e050
Capabilities:
Check for software breakpoints
Parse credit card information

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xf8
mov ebp, dword [rcx + 0x18]
mov r12d, dword [rcx + 0x1c]
mov rsi, qword [rcx]
mov qword [r8], 0
mov rdi, r9
mov r9d, dword [rdx + 8]
mov rbx, rcx
mov qword [rsp + 0x148], rdx
mov rcx, rsi
mov edx, ebp
mov qword [rsp + 0x150], r8
mov r8d, r12d
call fcn.1402c0670
mov qword [rsp + 0x58], rax
test rax, rax
je 0x14027f030
test byte [rax + 0xd8], 2
jne 0x14027f030
cmp dword [rax + 0xcc], 5
je 0x14027f030
mov rax, qword [rsp + 0x148]
movzx eax, byte [rax + 0xc]
cmp al, 5
je 0x14027f056
mov dword [rsp + 0x98], 0
cmp al, 1
je 0x14027eeae
xor eax, eax
mov r15, qword [rsp + 0x160]
mov r8d, dword [rsp + 0x168]
mov dword [rsp + 0xac], 0
mov r14, qword [rbx + 0x858]
lea rbp, [rbx + 0x838]
lea rsi, [0x140474dc8]
add r15, rdi
test r8d, r8d
setne al
cmp byte [rbx + 0x874], 0
mov dword [rsp + 0x74], eax
jne 0x14027e500
mov r12, qword [rsp + 0x160]
nop
mov rcx, qword [rbx + 0x8e8]
mov r13, rdi
call fcn.1401776a0
mov rcx, qword [rbx + 0x8e0]
call fcn.1401776a0
pxor xmm0, xmm0
xor eax, eax
movups xmmword [rbx + 0x8e0], xmm0
cmp r13, r15
setne cl
test eax, eax
jne 0x14027e17a
test cl, cl
je 0x14027ed98
mov edx, dword [rbx + 0x91c]
xor eax, eax
cmp edx, 0xc
ja case.default.0x14027e190
mov eax, edx
movsxd rax, dword [rsi + rax*4]
add rax, rsi
jmp rax
movzx eax, byte [r13]
mov ecx, eax
and ecx, 0xffffffe0
cmp cl, 0x20
je 0x14027ea90
test al, al
js 0x14027eac8
test al, 0xef
je 0x14027e1bf
cmp al, 0x40
jne 0x14027eae0
mov rax, qword [0x140476730]
mov qword [rbx + 0x918], rax
movzx eax, byte [r13]
shr al, 6
and eax, 1
mov byte [rbx + 0x921], al
movzx eax, byte [r13]
and eax, 0xfffffff0
cmp al, 0x10
sete byte [rbx + 0x922]
add r13, 1
nop dword [rax + rax]
mov qword [rbx + 0x8f0], 0
xor eax, eax
mov qword [rbx + 0x910], 0
jmp 0x14027e168
movzx eax, byte [r13]
mov dword [rbx + 0x91c], 0xa
mov qword [rbx + 0x8f0], 0
mov qword [rbx + 0x910], 0
shr al, 7
mov byte [rbx + 0x920], al
mov qword [rsp + 0x28], 0x10000
mov r9, r15
mov r8, r13
mov rcx, rbp
mov qword [rsp + 0x20], 7
lea rdx, [rsp + 0xac]
call fcn.140177160
test rax, rax
js 0x14027edf0
add r13, rax
mov eax, dword [rsp + 0xac]
test eax, eax
je 0x14027eaa8
cmp byte [rbx + 0x920], 0
mov rcx, qword [rbx + 0x8f0]
je 0x14027ea68
mov eax, 0x4000
add rcx, rcx
mov dword [rbx + 0x91c], 0xb
mov word [rbx + 0x878], ax
lea r8, [rcx + 1]
mov rdx, qword [r14]
add rcx, 0x29
mov qword [rsp + 0x50], r8
call qword [r14 + 8]
test rax, rax
je 0x14027f3b5
mov qword [rbx + 0x8d8], rax
mov rdx, qword [r14]
add rax, 0x28
mov r8, qword [rsp + 0x50]
mov qword [rax - 0x28], rdx
movq xmm0, rax
mov rcx, qword [r14 + 0x10]
mov rdx, qword [rbx + 0x8d8]
punpcklqdq xmm0, xmm0
mov qword [rdx + 8], rcx
mov qword [rdx + 0x10], rax
mov qword [rdx + 0x18], r8
mov dword [rdx + 0x20], 1
mov qword [rbx + 0x8c8], rax
movups xmmword [rbx + 0x8a8], xmm0
movups xmmword [rbx + 0x8b8], xmm0
test r8, r8
je 0x14027e335
add rax, r8
mov qword [rbx + 0x8b0], rax
mov eax, 1
jmp 0x14027e168
movzx eax, byte [r13]
mov dword [rbx + 0x91c], 6
mov qword [rbx + 0x8f0], 0
mov qword [rbx + 0x910], 0
shr al, 7
mov byte [rbx + 0x920], al
mov qword [rsp + 0x28], 0x10000
mov r9, r15
mov r8, r13
mov rcx, rbp
mov qword [rsp + 0x20], 7
lea rdx, [rsp + 0xac]
call fcn.140177160
test rax, rax
js 0x14027edf0
add r13, rax
mov eax, dword [rsp + 0xac]
test eax, eax
je 0x14027eaa8
cmp byte [rbx + 0x920], 0
mov rcx, qword [rbx + 0x8f0]
je 0x14027ea00
add rcx, rcx
mov eax, 0x4000
mov rdx, qword [r14]
mov dword [rbx + 0x91c], 7
lea r8, [rcx + 1]
mov word [rbx + 0x878], ax
add rcx, 0x29
mov qword [rsp + 0x50], r8
call qword [r14 + 8]
mov r8, qword [rsp + 0x50]
test rax, rax
je 0x14027f3b5
mov qword [rbx + 0x8d0], rax
mov rdx, qword [r14]
add rax, 0x28
mov rcx, qword [r14 + 0x10]
mov qword [rax - 0x28], rdx
mov rdx, qword [rbx + 0x8d0]
mov qword [rdx + 8], rcx
mov qword [rdx + 0x10], rax
mov qword [rdx + 0x18], r8
mov dword [rdx + 0x20], 1
movq xmm0, rax
mov qword [rbx + 0x8a0], rax
punpcklqdq xmm0, xmm0
movups xmmword [rbx + 0x880], xmm0
movups xmmword [rbx + 0x890], xmm0
test r8, r8
je 0x14027e45d
add rax, r8
mov qword [rbx + 0x888], rax
xor eax, eax
jmp 0x14027e168
movzx eax, byte [r13]
and eax, 0xffffffe0
cmp al, 0x20
jne 0x14027ea99
mov rax, qword [0x140476718]
mov qword [rbx + 0x918], rax
jmp 0x14027e1f8
mov rax, qword [rbx + 0x8f0]
sub r15, r13
mov rcx, qword [rbx + 0x8c0]
cmp r15, rax
cmova r15, rax
test r15, r15
je 0x14027ea80
mov r8, r15
mov rdx, r13
call sub.msvcrt.dll_memcpy
mov rcx, rax
mov rax, qword [rbx + 0x8f0]
add rcx, r15
sub rax, r15
mov qword [rbx + 0x8c0], rcx
mov qword [rbx + 0x8f0], rax
test r15, r15
jns 0x14027ea80
mov byte [rbx + 0x874], 1
mov edx, r15d
cmp r15d, 0xfffffc7c
jl 0x14027e547
nop word cs:[rax + rax]
cmp dword [rbx + 0x3b8], 4
jne 0x14027e523
cmp qword [rsp + 0x58], 0
je 0x14027e523
mov rax, qword [rsp + 0x58]
cmp dword [rax + 0xcc], 3
jne 0x14027f476
mov edx, dword [rbx + 0xaa4]
xor r9d, r9d
mov r8d, 9
mov rcx, rbx
call fcn.14016d310
mov edx, eax
cmp eax, 0xfffffc7c
jge 0x14027f67d
mov eax, edx
add rsp, 0xf8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea rdx, [rbx + 0x8a8]
mov r9, r15
mov r8, r13
mov rcx, rbp
call fcn.1401772c0
test rax, rax
js 0x14027edd0
add r13, rax
cmp qword [rbx + 0x8f0], 0
jne 0x14027eaa8
mov rax, qword [rbx + 0x8c0]
mov byte [rax], 0
mov rdx, qword [rbx + 0x8d8]
mov rax, qword [rbx + 0x8c0]
mov rcx, rbp
sub rax, qword [rbx + 0x8b8]
cmp dword [rbx + 0x918], 2
mov qword [rdx + 0x18], rax
lea rdx, [rsp + 0xb0]
je 0x14027ed70
call fcn.140177c20
movsxd rcx, eax
mov edx, ecx
test rcx, rcx
jne 0x14027ed83
mov rcx, r13
mov r8d, 2
mov dword [rbx + 0x91c], 2
sub rcx, rdi
mov edx, ecx
cmp edx, 0xfffffc7c
jl 0x14027e547
test rcx, rcx
js 0x14027e500
mov rax, qword [rsp + 0x150]
mov r14d, dword [rsp + 0x170]
mov r10, r12
lea r11, [rdi + rcx]
sub r10, rcx
add qword [rax], rcx
test r14d, r14d
je 0x14027e9b0
test r8b, 2
je 0x14027e9b0
cmp qword [rsp + 0x58], 0
je 0x14027e9c8
test byte [rbx + 0xb0c], 4
jne 0x14027ece5
mov rax, qword [rsp + 0xb0]
mov rcx, qword [rax + 0x18]
mov r15, qword [rax + 0x10]
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x60], rcx
test rcx, rcx
je 0x14027ef0a
movzx r9d, byte [r15]
mov rcx, qword [rsp + 0x60]
mov rax, r15
cmp r9b, 0x3a
je 0x14027eef3
add rcx, rax
lea r8, [0x140475c60]
jmp 0x14027e6ad
add rax, 1
cmp rcx, rax
je 0x14027eb15
movzx edx, byte [rax]
mov r13d, dword [r8 + rdx*4]
test r13d, r13d
jne 0x14027e6a0
mov rcx, qword [rsp + 0xb8]
cmp r9b, 0x3a
je 0x14027e6ef
mov rax, qword [rsp + 0x60]
mov rdx, r15
lea r8, [rax + r15]
jmp 0x14027e6e5
add rdx, 1
cmp r8, rdx
je 0x14027ef12
movzx eax, byte [rdx]
sub eax, 0x41
cmp al, 0x19
ja 0x14027e6d8
mov rax, qword [rcx + 0x18]
mov r14, qword [rcx + 0x10]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x148]
movzx eax, byte [rax + 0xc]
mov byte [rsp + 0x68], al
mov eax, dword [rsp + 0x50]
mov qword [rsp + 0x40], r14
mov edx, 0xfffffded
lea r8, str.Invalid_HTTP_header_field_was_received:_frame_type:__u__stream:__d__name:___.s___value:___.s_
mov qword [rsp + 0x30], r15
movzx r9d, byte [rsp + 0x68]
mov rcx, rbx
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x148]
mov eax, dword [rax + 8]
mov dword [rsp + 0x20], eax
call fcn.14016c320
mov edx, eax
cmp eax, 0xfffffc7c
jl 0x14027e547
mov rax, qword [rsp + 0x58]
mov r8, qword [rsp + 0x148]
mov r9d, 0xfffffded
mov rcx, rbx
mov edx, dword [rax + 0xa8]
call fcn.140170520
mov edx, eax
cmp eax, 0xfffffc7c
jl 0x14027e547
mov edx, 0xfffffdf7
jmp 0x14027e547
mov r10d, dword [rbx + 0x918]
mov eax, 7
cmp r10d, 1
je 0x14027e7bc
cmp byte [rbx + 0x921], 1
sbb rax, rax
and rax, 0xfffffffffffffffe
add rax, 6
mov rdx, qword [rbx + 0x850]
mov qword [rsp + 0x20], rax
mov r9, r15
mov r8, r13
lea rcx, [rsp + 0xac]
mov dword [rsp + 0x50], r10d
add rdx, 0x3d
mov qword [rsp + 0x28], rdx
mov rdx, rcx
mov rcx, rbp
call fcn.140177160
mov r10d, dword [rsp + 0x50]
test rax, rax
js 0x14027edf0
mov edx, dword [rsp + 0xac]
add r13, rax
test edx, edx
je 0x14027eaa8
mov rax, qword [rbx + 0x8f0]
test rax, rax
je 0x14027ea99
sub rax, 1
cmp r10d, 1
je 0x14027f375
mov qword [rbx + 0x8f8], rax
xor eax, eax
mov dword [rbx + 0x91c], 9
jmp 0x14027e168
mov rdx, qword [rbx + 0x908]
mov rax, qword [rbx + 0x900]
mov r9, r15
mov r8, r13
mov qword [rsp + 0x20], 5
lea rcx, [rsp + 0xac]
cmp rax, rdx
cmova rax, rdx
mov rdx, rcx
mov rcx, rbp
mov qword [rsp + 0x28], rax
call fcn.140177160
test rax, rax
js 0x14027edf0
mov ecx, dword [rsp + 0xac]
add r13, rax
test ecx, ecx
je 0x14027eaa8
mov eax, 0xffffffff
xor edx, edx
mov rcx, rbp
mov qword [rbx + 0x908], rax
mov rax, qword [rbx + 0x8f0]
mov qword [rbx + 0x868], rax
call fcn.140177b30
xor eax, eax
mov dword [rbx + 0x91c], 1
jmp 0x14027e168
mov rax, qword [rbx + 0x8f0]
mov r8, r15
mov rcx, qword [rbx + 0x898]
sub r8, r13
cmp r8, rax
cmova r8, rax
test r8, r8
je 0x14027e931
mov rdx, r13
mov qword [rsp + 0x50], r8
call sub.msvcrt.dll_memcpy
mov r8, qword [rsp + 0x50]
mov rcx, rax
mov rax, qword [rbx + 0x8f0]
add rcx, r8
sub rax, r8
mov qword [rbx + 0x898], rcx
mov qword [rbx + 0x8f0], rax
test r8, r8
js 0x14027f33c
add r13, r8
test rax, rax
jne 0x14027eaa8
mov byte [rcx], 0
mov rdx, qword [rbx + 0x8d0]
mov rax, qword [rbx + 0x898]
sub rax, qword [rbx + 0x890]
mov qword [rdx + 0x18], rax
xor eax, eax
mov dword [rbx + 0x91c], 9
jmp 0x14027e168
lea rdx, [rbx + 0x880]
mov r9, r15
mov r8, r13
mov rcx, rbp
call fcn.1401772c0
test rax, rax
js 0x14027edf0
add r13, rax
cmp qword [rbx + 0x8f0], 0
jne 0x14027eaa8
mov rax, qword [rbx + 0x898]
mov byte [rax], 0
jmp 0x14027e940
test r8b, 1
jne 0x14027f0ac
shr r8d, 1
jne 0x14027e9c8
test r10, r10
je 0x14027f0d9
cmp byte [rbx + 0x874], 0
mov r14, qword [rbx + 0x858]
lea r15, [rdi + r12]
mov dword [rsp + 0xac], 0
jne 0x14027e500
mov r12, r10
mov rdi, r11
jmp 0x14027e140
lea r8, [rcx + 1]
mov rdx, qword [r14]
add rcx, 0x29
mov dword [rbx + 0x91c], 8
mov qword [rsp + 0x50], r8
call qword [r14 + 8]
test rax, rax
je 0x14027f3b5
mov qword [rbx + 0x8d0], rax
mov rdx, qword [r14]
add rax, 0x28
mov rcx, qword [r14 + 0x10]
mov r8, qword [rsp + 0x50]
mov qword [rax - 0x28], rdx
mov rdx, qword [rbx + 0x8d0]
mov qword [rdx + 8], rcx
mov qword [rdx + 0x10], rax
mov qword [rdx + 0x18], r8
mov dword [rdx + 0x20], 1
jmp 0x14027e430
mov dword [rbx + 0x91c], 0xc
jmp 0x14027e2b6
add r13, r15
test rax, rax
jne 0x14027eaa8
mov byte [rcx], 0
jmp 0x14027e599
cmp edx, 2
jne 0x14027e478
mov byte [rbx + 0x874], 1
jmp 0x14027e500
mov r15d, dword [rsp + 0x168]
test r15d, r15d
jne 0x14027ea99
mov rcx, r13
xor r8d, r8d
sub rcx, rdi
mov edx, ecx
jmp 0x14027e5f5
mov rax, qword [0x140476720]
mov qword [rbx + 0x918], rax
jmp 0x14027e1f8
mov rax, qword [0x140476728]
mov qword [rbx + 0x918], rax
movzx eax, byte [r13]
shr al, 6
and eax, 1
mov byte [rbx + 0x921], al
movzx eax, byte [r13]
and eax, 0xfffffff0
cmp al, 0x10
sete byte [rbx + 0x922]
jmp 0x14027e1f8
mov rax, qword [rsp + 0xb8]
mov ecx, dword [rsp + 0xc0]
mov rdx, qword [rax + 0x18]
mov qword [rsp + 0x80], rax
mov r13d, ecx
mov r14, qword [rax + 0x10]
mov qword [rsp + 0x50], rdx
cmp ecx, 0x25
jle 0x14027ee10
cmp r13d, 0x42
jne case.0x14027ee32.2
mov rax, qword [rsp + 0x58]
test byte [rax + 0xd8], 0x40
jne 0x14027f49c
mov rdx, qword [rsp + 0x50]
mov rcx, r14
mov byte [rsp + 0x90], r9b
mov qword [rsp + 0x88], r10
mov qword [rsp + 0x68], r11
call fcn.140177020
mov r11, qword [rsp + 0x68]
mov r10, qword [rsp + 0x88]
movzx r9d, byte [rsp + 0x90]
test eax, eax
je 0x14027f128
cmp byte [rbx + 0xb1c], 0
jne 0x14027f3d8
mov rax, qword [rsp + 0x148]
movzx eax, byte [rax + 0xc]
mov byte [rsp + 0x68], al
cmp al, 5
je 0x14027f406
cmp r9b, 0x3a
je 0x14027f6d7
mov eax, r13d
cmp r13d, 0x38
je 0x14027e70c
jg 0x14027f231
cmp r13d, 7
je 0x14027f52c
cmp r13d, 0x1b
jne case.0x14027f404.2
mov rax, qword [rsp + 0x58]
movzx eax, word [rax + 0xd0]
cmp ax, 0xcc
je 0x14027f64a
lea edx, [rax - 0x64]
cmp dx, 0x63
jbe 0x14027e70c
sub ax, 0xc8
cmp ax, 0x63
ja 0x14027ec36
mov rax, qword [rsp + 0x58]
test byte [rax + 0xd4], 0x80
jne 0x14027e9c8
mov rax, qword [rsp + 0x58]
cmp qword [rax + 0x30], 0xffffffffffffffff
jne 0x14027e70c
mov rdx, qword [rsp + 0x50]
test rdx, rdx
je 0x14027e70c
movzx r8d, byte [r14]
lea eax, [r8 - 0x30]
cmp al, 9
ja 0x14027e70c
lea rcx, [r14 + 1]
lea r9, [r14 + rdx]
xor eax, eax
jmp 0x14027ec98
movzx r8d, byte [rcx]
add rcx, 1
lea edx, [r8 - 0x30]
cmp dl, 9
ja 0x14027e70c
movabs rdx, 0xccccccccccccccc
cmp rax, rdx
jg 0x14027e70c
lea rdx, [rax + rax*4]
movzx eax, r8b
movabs r8, 0x7fffffffffffffff
sub eax, 0x30
add rdx, rdx
cdqe
sub r8, rax
cmp rdx, r8
jg 0x14027e70c
add rax, rdx
cmp rcx, r9
jne 0x14027ec70
mov rcx, qword [rsp + 0x58]
mov qword [rcx + 0x30], rax
movzx r9d, byte [r15]
cmp r9b, 0x3a
je 0x14027ece5
mov rax, qword [rsp + 0x58]
or dword [rax + 0xd4], 0x40
mov rax, qword [rbx + 0x980]
test rax, rax
je 0x14027ee34
mov rdx, qword [rbx + 0xa08]
mov qword [rsp + 0x60], r10
mov rcx, rbx
mov qword [rsp + 0x50], r11
mov r9, qword [rsp + 0xb8]
mov qword [rsp + 0x28], rdx
movzx edx, byte [rsp + 0xc4]
mov r8, qword [rsp + 0xb0]
mov dword [rsp + 0x20], edx
mov rdx, qword [rsp + 0x148]
call rax
mov r11, qword [rsp + 0x50]
mov r10, qword [rsp + 0x60]
mov edx, eax
cmp edx, 0xfffffdf2
je 0x14027e547
cmp edx, 0xfffffdf7
je 0x14027e547
test edx, edx
je 0x14027e9c8
mov edx, 0xfffffc7a
jmp 0x14027e547
call fcn.140177a80
movsxd rcx, eax
mov edx, ecx
test rcx, rcx
je 0x14027e5dd
mov byte [rbx + 0x874], 1
xor r8d, r8d
jmp 0x14027e5f5
mov eax, dword [rsp + 0x168]
test eax, eax
je 0x14027edb5
mov eax, dword [rbx + 0x91c]
sub eax, 1
cmp eax, 1
ja 0x14027ea99
mov rcx, r13
mov r8d, dword [rsp + 0x74]
sub rcx, rdi
mov edx, ecx
jmp 0x14027e5f5
mov byte [rbx + 0x874], 1
mov edx, eax
cmp eax, 0xfffffc7c
jge 0x14027e500
jmp 0x14027e547
mov byte [rbx + 0x874], 1
mov edx, eax
cmp eax, 0xfffffc7c
jge 0x14027e500
jmp 0x14027e547
mov eax, r13d
test eax, eax
js case.0x14027ee32.2
cmp eax, 0x25
ja case.0x14027ee32.2
lea rdx, [0x140474dfc]
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
mov rax, qword [rbx + 0x978]
test rax, rax
je 0x14027e9c8
mov rcx, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0xb8]
mov qword [rsp + 0x60], r10
mov qword [rsp + 0x50], r11
mov r9, qword [rcx + 0x18]
mov r8, qword [rcx + 0x10]
mov rcx, qword [rbx + 0xa08]
mov qword [rsp + 0x38], rcx
movzx ecx, byte [rsp + 0xc4]
mov dword [rsp + 0x30], ecx
mov rcx, qword [rdx + 0x18]
mov qword [rsp + 0x28], rcx
mov rdx, qword [rdx + 0x10]
mov rcx, rbx
mov qword [rsp + 0x20], rdx
mov rdx, qword [rsp + 0x148]
call rax
mov r10, qword [rsp + 0x60]
mov r11, qword [rsp + 0x50]
mov edx, eax
jmp 0x14027ed40
mov rax, qword [rsp + 0x148]
cmp byte [rbx + 0xb1c], 0
mov eax, dword [rax + 0x38]
jne 0x14027f360
cmp eax, 3
jne 0x14027e0ea
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0xd4]
mov dword [rsp + 0x50], eax
shr eax, 0xe
xor eax, 1
and eax, 1
mov dword [rsp + 0x98], eax
jmp 0x14027e0ea
cmp rcx, 1
je 0x14027f40a
lea rax, [r15 + 1]
sub rcx, 1
jmp 0x14027e68c
mov rcx, qword [rsp + 0xb8]
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x80], rcx
or dword [rax + 0xd4], 0x40
mov rax, qword [rbx + 0x990]
test rax, rax
je 0x14027f143
mov rdx, qword [rbx + 0xa08]
mov qword [rsp + 0x60], r10
mov rcx, rbx
mov qword [rsp + 0x50], r11
mov r9, qword [rsp + 0x80]
mov qword [rsp + 0x28], rdx
movzx edx, byte [rsp + 0xc4]
mov r8, qword [rsp + 0x78]
mov dword [rsp + 0x20], edx
mov rdx, qword [rsp + 0x148]
call rax
mov r11, qword [rsp + 0x50]
mov r10, qword [rsp + 0x60]
mov edx, eax
cmp edx, 0xfffffdf2
je 0x14027f71c
cmp edx, 0xfffffdf7
je 0x14027f728
test edx, edx
jne 0x14027ed60
mov rdx, qword [rsp + 0xb8]
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x60], r10
lea r8, str.Ignoring_received_invalid_HTTP_header_field:_frame_type:__u__stream:__d__name:___.s___value:___.s_
mov qword [rsp + 0x50], r11
mov rcx, qword [rdx + 0x10]
mov qword [rsp + 0x40], rcx
mov rdx, qword [rdx + 0x18]
mov rcx, rbx
mov dword [rsp + 0x38], edx
mov rdx, qword [rax + 0x10]
mov qword [rsp + 0x30], rdx
mov rax, qword [rax + 0x18]
mov edx, 0xfffffded
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x148]
mov eax, dword [rax + 8]
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x148]
movzx r9d, byte [rax + 0xc]
call fcn.14016c320
mov r11, qword [rsp + 0x50]
mov r10, qword [rsp + 0x60]
cmp eax, 0xfffffc7c
mov edx, eax
jge 0x14027e9c8
jmp 0x14027e547
mov rax, qword [rsp + 0x148]
mov dword [rsp + 0x98], 0
mov qword [rsp + 0x58], 0
cmp byte [rax + 0xc], 5
jne 0x14027e0ea
mov rax, qword [rsp + 0x148]
mov r8d, r12d
mov edx, ebp
mov rcx, rsi
mov r9d, dword [rax + 0x28]
call fcn.1402c0670
mov qword [rsp + 0x58], rax
test rax, rax
je 0x14027f600
test byte [rax + 0xd8], 2
mov dword [rsp + 0x98], 0
jne 0x14027f09e
cmp dword [rax + 0xcc], 5
jne 0x14027e0ea
mov qword [rsp + 0x58], 0
jmp 0x14027e0ea
mov rcx, qword [rbx + 0x8e8]
call fcn.1401776a0
mov rcx, qword [rbx + 0x8e0]
call fcn.1401776a0
pxor xmm0, xmm0
mov dword [rbx + 0x91c], 1
movups xmmword [rbx + 0x8e0], xmm0
xor edx, edx
jmp 0x14027e547
mov rax, qword [rsp + 0x58]
test byte [rax + 0xd8], 0x40
je 0x14027eb61
mov rax, qword [rsp + 0x50]
lea rcx, [r14 + rax]
cmp r14, rcx
je 0x14027eba1
mov r8, qword [0x14048ba00]
mov rax, r14
jmp 0x14027f11d
add rax, 1
cmp rcx, rax
je 0x14027eba1
movzx edx, byte [rax]
mov edx, dword [r8 + rdx*4]
test edx, edx
jne 0x14027f110
cmp r9b, 0x3a
je case.0x14027f474.2
mov rax, qword [rsp + 0x58]
or dword [rax + 0xd4], 0x40
jmp 0x14027ef26
mov rcx, qword [rsp + 0x80]
mov rax, qword [rbx + 0x988]
mov rdx, qword [rcx + 0x18]
mov r14, qword [rcx + 0x10]
mov qword [rsp + 0x50], rdx
test rax, rax
je case.0x14027f474.2
mov rdx, qword [rbx + 0xa08]
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x78], r10
mov r8, r15
mov qword [rsp + 0x68], r11
mov r9, qword [rsp + 0x60]
mov qword [rsp + 0x38], rdx
movzx edx, byte [rsp + 0xc4]
mov qword [rsp + 0x28], rcx
mov rcx, rbx
mov dword [rsp + 0x30], edx
mov rdx, qword [rsp + 0x148]
mov qword [rsp + 0x20], r14
call rax
mov r10, qword [rsp + 0x78]
mov r11, qword [rsp + 0x68]
mov edx, eax
jmp 0x14027ef7e
cmp byte [rbx + 0xb1c], 0
jne 0x14027f3c6
mov rax, qword [rsp + 0x148]
movzx eax, byte [rax + 0xc]
mov byte [rsp + 0x68], al
cmp al, 5
je 0x14027f610
mov rax, qword [rsp + 0x58]
test byte [rax + 0xd8], 0x40
je 0x14027f687
mov rax, qword [rsp + 0x50]
lea rcx, [r14 + rax]
cmp r14, rcx
je 0x14027f6cd
mov r8, qword [0x14048ba00]
mov rax, r14
jmp 0x14027f221
add rax, 1
cmp rcx, rax
je 0x14027eba1
movzx edx, byte [rax]
mov edx, dword [r8 + rdx*4]
test edx, edx
jne 0x14027f214
jmp 0x14027f128
cmp r13d, 0x3d
je 0x14027f4cf
sub eax, 0x3e
cmp eax, 3
ja case.0x14027f404.2
jmp 0x14027e70c
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x14027f128
movzx eax, byte [r14]
and eax, 0xffffffdf
sub eax, 0x41
cmp al, 0x19
ja 0x14027f128
lea r8, [r14 + rcx]
lea rax, [r14 + 1]
cmp r8, rax
jne 0x14027f2a1
jmp 0x14027eba1
movabs rdx, 0x3ff680000000000
bt rdx, rcx
jae 0x14027f128
add rax, 1
cmp r8, rax
je 0x14027eba1
movzx ecx, byte [rax]
mov edx, ecx
and edx, 0xffffffdf
sub edx, 0x41
cmp dl, 0x19
jbe 0x14027f294
cmp cl, 0x39
jbe 0x14027f280
jmp 0x14027f128
mov rax, qword [rsp + 0x50]
test rax, rax
je 0x14027f128
lea rcx, [r14 + rax]
cmp r14, rcx
je 0x14027eba1
mov rax, r14
lea r8, [0x140476060]
jmp 0x14027f2ef
add rax, 1
cmp rcx, rax
je 0x14027eba1
movzx edx, byte [rax]
cmp byte [r8 + rdx], 0
jne 0x14027f2e2
jmp 0x14027f128
mov rax, qword [rsp + 0x50]
lea r8, [0x140476160]
lea rcx, [r14 + rax]
mov rax, r14
cmp r14, rcx
jne 0x14027f32d
jmp 0x14027eba1
add rax, 1
cmp rcx, rax
je 0x14027eba1
movzx edx, byte [rax]
cmp byte [r8 + rdx], 0
jne 0x14027f320
jmp 0x14027f128
mov byte [rbx + 0x874], 1
mov edx, r8d
cmp r8d, 0xfffffc7c
jge 0x14027e500
jmp 0x14027e547
cmp eax, 3
sete al
movzx eax, al
mov dword [rsp + 0x98], eax
jmp 0x14027e0ea
mov qword [rbx + 0x8f8], rax
mov r8, rax
lea rcx, [rsp + 0xd0]
mov rdx, rbp
call fcn.140177090
mov rax, qword [rsp + 0xe0]
movdqa xmm1, xmmword [rsp + 0xd0]
mov qword [rsp + 0xc0], rax
movaps xmmword [rsp + 0xb0], xmm1
jmp 0x14027e5dd
mov byte [rbx + 0x874], 1
mov edx, 0xfffffc7b
jmp 0x14027e547
mov rax, qword [rsp + 0x50]
lea rcx, [r14 + rax]
cmp r14, rcx
jne 0x14027f622
xor edx, edx
cmp byte [rbx + 0xb19], 0
setne dl
cmp r9b, 0x3a
je 0x14027f434
mov eax, r13d
cmp eax, 0x43
ja case.0x14027f404.2
lea rcx, [0x140474e94]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
xor edx, edx
jmp 0x14027f3e4
mov rax, qword [rsp + 0xb8]
mov r14, qword [rax + 0x10]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x148]
movzx eax, byte [rax + 0xc]
mov byte [rsp + 0x68], al
jmp 0x14027e70c
mov ecx, dword [rsp + 0x98]
test ecx, ecx
jne case.0x14027f474.2
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0xd4]
mov dword [rsp + 0x68], eax
test al, 0x40
jne case.0x14027f474.2
mov eax, r13d
cmp eax, 0x43
ja case.0x14027f474.2
lea rcx, [0x140474fa4]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov edx, dword [rax + 0xa8]
mov r8d, 9
mov rcx, rbx
call fcn.14016d4f0
mov edx, eax
cmp eax, 0xfffffc7c
jge 0x14027e523
jmp 0x14027e547
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x14027f128
mov rax, r14
add rcx, r14
movzx edx, byte [rax]
cmp dl, 0x20
je 0x14027f4c1
cmp dl, 9
jne 0x14027f0fb
add rax, 1
cmp rax, rcx
jne 0x14027f4b0
jmp 0x14027f128
cmp qword [rsp + 0x50], 8
jne 0x14027e70c
lea rax, str.trailers
xor ecx, ecx
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + rcx]
lea r8d, [rax - 0x41]
lea edx, [rax + 0x20]
cmp r8b, 0x1a
cmovb eax, edx
movzx edx, byte [r14 + rcx]
lea r13d, [rdx - 0x41]
lea r8d, [rdx + 0x20]
cmp r13b, 0x1a
cmovb edx, r8d
cmp dl, al
jne 0x14027e70c
add rcx, 1
cmp rcx, 8
jne 0x14027f4e9
jmp 0x14027ecd3
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0xd4]
test al, 0x20
jne 0x14027e70c
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x14027e70c
mov rdx, qword [rsp + 0x58]
or eax, 0x20
mov dword [rdx + 0xd4], eax
cmp rcx, 3
jne 0x14027e70c
movzx ecx, byte [r14]
lea eax, [rcx - 0x30]
cmp al, 9
ja 0x14027fbf9
movabs r9, 0xccccccccccccccc
xor eax, eax
xor edx, edx
jmp 0x14027f5a0
movzx ecx, byte [r14 + rdx]
lea r8d, [rcx - 0x30]
cmp r8b, 9
ja 0x14027fbe6
cmp rax, r9
jg 0x14027fbe6
sub ecx, 0x30
lea rax, [rax + rax*4]
movabs r8, 0x7fffffffffffffff
movsxd rcx, ecx
add rax, rax
sub r8, rcx
cmp rax, r8
jg 0x14027fbe6
add rdx, 1
add rax, rcx
cmp rdx, 3
jne 0x14027f584
mov rcx, qword [rsp + 0x58]
mov word [rcx + 0xd0], ax
cmp ax, 0xffff
je 0x14027f5ec
cmp ax, 0x65
jne 0x14027f92d
mov qword [rsp + 0x50], 3
jmp 0x14027e70c
mov dword [rsp + 0x98], 0
jmp 0x14027e0ea
mov rax, qword [rsp + 0x50]
lea rcx, [r14 + rax]
cmp r14, rcx
je 0x14027f406
mov rax, r14
lea r8, [0x140476260]
jmp 0x14027f63b
add rax, 1
cmp rax, rcx
je 0x14027eba1
movzx edx, byte [rax]
cmp byte [r8 + rdx], 0
jne 0x14027f62e
jmp 0x14027f128
mov rax, qword [rsp + 0x58]
cmp qword [rax + 0x30], 0xffffffffffffffff
jne 0x14027e70c
cmp qword [rsp + 0x50], 1
jne 0x14027e70c
cmp byte [r14], 0x30
jne 0x14027e70c
mov qword [rax + 0x30], 0
jmp 0x14027e9c8
mov edx, 0xfffffdf5
jmp 0x14027e547
mov rdx, qword [rsp + 0x50]
mov rcx, r14
mov byte [rsp + 0x9f], r9b
mov qword [rsp + 0x90], r10
mov qword [rsp + 0x88], r11
call fcn.140177020
mov r11, qword [rsp + 0x88]
mov r10, qword [rsp + 0x90]
movzx r9d, byte [rsp + 0x9f]
test eax, eax
je 0x14027f128
cmp r9b, 0x3a
jne 0x14027ebed
mov eax, dword [rsp + 0x98]
test eax, eax
jne 0x14027e70c
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0xd4]
test al, 0x40
jne 0x14027e70c
cmp r13d, 0x1b
je 0x14027ebf7
cmp r13d, 0x3d
je 0x14027f4cf
cmp r13d, 7
jne 0x14027e70c
jmp 0x14027f537
cmp edx, 0xfffffdf7
jne 0x14027e547
mov rax, qword [rsp + 0xb8]
mov r14, qword [rax + 0x10]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0xb0]
mov r15, qword [rax + 0x10]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x148]
movzx eax, byte [rax + 0xc]
mov byte [rsp + 0x68], al
jmp 0x14027e70c
test edx, edx
je case.0x14027f474.2
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0xd4]
test ah, 0x80
jne case.0x14027f474.2
cmp qword [rsp + 0x50], 0
je case.0x14027f474.2
mov rcx, qword [rsp + 0x58]
or ah, 0x80
mov dword [rcx + 0xd4], eax
movzx r9d, byte [r15]
jmp 0x14027ecd3
cmp qword [rsp + 0x50], 8
jne case.0x14027f474.2
lea rax, str.trailers
xor r8d, r8d
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + r8]
lea ecx, [rax - 0x41]
lea edx, [rax + 0x20]
cmp cl, 0x1a
cmovb eax, edx
movzx edx, byte [r14 + r8]
lea r13d, [rdx - 0x41]
lea ecx, [rdx + 0x20]
cmp r13b, 0x1a
cmovb edx, ecx
cmp dl, al
jne case.0x14027f474.2
add r8, 1
cmp r8, 8
jne 0x14027f7c1
jmp 0x14027ecd3
mov rax, qword [rsp + 0x58]
cmp qword [rax + 0x30], 0xffffffffffffffff
jne case.0x14027f474.2
mov rdx, qword [rsp + 0x50]
test rdx, rdx
je case.0x14027f474.2
movzx r8d, byte [r14]
lea eax, [r8 - 0x30]
cmp al, 9
ja case.0x14027f474.2
lea rax, [r14 + rdx]
lea rcx, [r14 + 1]
movabs r9, 0x7fffffffffffffff
mov r13, rax
xor eax, eax
jmp 0x14027f870
movzx r8d, byte [rcx]
add rcx, 1
lea edx, [r8 - 0x30]
cmp dl, 9
ja case.0x14027f474.2
movabs rdx, 0xccccccccccccccc
cmp rax, rdx
jg case.0x14027f474.2
lea rdx, [rax + rax*4]
movzx eax, r8b
mov r8, r9
sub eax, 0x30
add rdx, rdx
cdqe
sub r8, rax
cmp rdx, r8
jg case.0x14027f474.2
add rax, rdx
cmp r13, rcx
jne 0x14027f848
jmp 0x14027ecc6
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0xd4]
mov dword [rsp + 0x68], eax
test byte [rsp + 0x68], 0x10
jne case.0x14027f474.2
cmp qword [rsp + 0x50], 0
je case.0x14027f474.2
mov eax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x58]
or eax, 0x10
mov dword [rcx + 0xd4], eax
movzx r9d, byte [r15]
jmp 0x14027ecd3
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0xd4]
mov dword [rsp + 0x68], eax
test byte [rsp + 0x68], 8
jne case.0x14027f474.2
cmp qword [rsp + 0x50], 0
je case.0x14027f474.2
mov eax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x58]
or eax, 8
cmp qword [rsp + 0x50], 4
mov dword [rcx + 0xd4], eax
je 0x14027fc64
cmp qword [rsp + 0x50], 5
je 0x14027fc07
movzx r9d, byte [r15]
jmp 0x14027ecd3
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0xd4]
mov dword [rsp + 0x68], eax
test byte [rsp + 0x68], 2
jne case.0x14027f474.2
cmp qword [rsp + 0x50], 0
je case.0x14027f474.2
mov eax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x58]
or eax, 2
mov dword [rcx + 0xd4], eax
movzx eax, byte [r14]
cmp al, 0x2f
je 0x14027fba8
cmp qword [rsp + 0x50], 1
jne 0x14027f92d
cmp al, 0x2a
jne 0x14027f92d
mov eax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x58]
or eax, 0x1002
mov dword [rcx + 0xd4], eax
movzx r9d, byte [r15]
jmp 0x14027ecd3
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0xd4]
mov dword [rsp + 0x68], eax
test byte [rsp + 0x68], 4
jne case.0x14027f474.2
cmp qword [rsp + 0x50], 0
je case.0x14027f474.2
mov eax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x58]
or eax, 4
mov dword [rcx + 0xd4], eax
mov rax, qword [rsp + 0x50]
cmp rax, 4
je 0x14027fcf4
cmp rax, 7
jne 0x14027f92d
movzx eax, byte [r14 + 6]
cmp al, 0x53
je 0x14027fca6
cmp al, 0x54
jne 0x14027f92d
mov r8d, 7
mov rdx, r14
lea rcx, str.CONNECT
mov qword [rsp + 0x80], r10
mov qword [rsp + 0x78], r11
call sub.msvcrt.dll_memcmp
mov r11, qword [rsp + 0x78]
mov r10, qword [rsp + 0x80]
test eax, eax
jne 0x14027f92d
mov rax, qword [rsp + 0x58]
test byte [rax + 0xa8], 1
je case.0x14027f474.2
mov eax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x58]
or al, 0x84
mov dword [rcx + 0xd4], eax
movzx r9d, byte [r15]
jmp 0x14027ecd3
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0xd4]
mov dword [rsp + 0x68], eax
test byte [rsp + 0x68], 1
jne case.0x14027f474.2
cmp qword [rsp + 0x50], 0
je case.0x14027f474.2
mov eax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x58]
or eax, 1
mov dword [rcx + 0xd4], eax
movzx r9d, byte [r15]
jmp 0x14027ecd3
mov rax, qword [rsp + 0x58]
test byte [rax + 0xa8], 1
je 0x14027ece5
mov rax, qword [rsp + 0x58]
test byte [rax + 0xd8], 0x10
je 0x14027ecd3
test byte [rax + 0xd6], 2
jne 0x14027ecd3
movsx eax, byte [rax + 0xdd]
mov r8, qword [rsp + 0x50]
mov qword [rsp + 0x68], r10
lea rcx, [rsp + 0xd0]
mov qword [rsp + 0x60], r11
mov edx, eax
shr eax, 0x1f
and edx, 0x7f
mov dword [rsp + 0xd4], eax
mov dword [rsp + 0xd0], edx
mov rdx, r14
call fcn.1401773f0
mov r11, qword [rsp + 0x60]
mov r10, qword [rsp + 0x68]
test eax, eax
je 0x14027fb68
mov rcx, qword [rsp + 0x58]
mov eax, dword [rcx + 0xd4]
mov dword [rsp + 0x50], eax
and eax, 0xfffeffff
or eax, 0x20000
mov dword [rcx + 0xd4], eax
mov rax, qword [rsp + 0xb0]
mov rax, qword [rax + 0x10]
movzx r9d, byte [rax]
jmp 0x14027ecd3
movzx eax, byte [rsp + 0xd4]
mov rcx, qword [rsp + 0x58]
shl eax, 7
or eax, dword [rsp + 0xd0]
or dword [rcx + 0xd4], 0x10000
mov byte [rcx + 0xdd], al
mov rax, qword [rsp + 0xb0]
mov rax, qword [rax + 0x10]
movzx r9d, byte [rax]
jmp 0x14027ecd3
mov eax, dword [rsp + 0x68]
or eax, 0x802
mov dword [rcx + 0xd4], eax
movzx r9d, byte [r15]
jmp 0x14027ecd3
mov edx, dword [rsp + 0x98]
test edx, edx
jne case.0x14027f404.2
mov rax, qword [rsp + 0x58]
test byte [rax + 0xa8], 1
jne 0x14027facb
jmp case.0x14027f404.2
mov rax, qword [rsp + 0x58]
mov word [rax + 0xd0], 0xffff
jmp 0x14027e70c
mov word [rdx + 0xd0], 0xffff
jmp 0x14027e70c
xor r9d, r9d
lea r8, str.https
movzx eax, byte [r8 + r9]
lea ecx, [rax - 0x41]
lea edx, [rax + 0x20]
cmp cl, 0x1a
cmovb eax, edx
movzx edx, byte [r14 + r9]
lea r13d, [rdx - 0x41]
lea ecx, [rdx + 0x20]
cmp r13b, 0x1a
cmovb edx, ecx
cmp dl, al
jne 0x14027f92d
add r9, 1
cmp r9, 5
jne 0x14027fc11
mov eax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x58]
or eax, 0x2008
mov dword [rcx + 0xd4], eax
movzx r9d, byte [r15]
jmp 0x14027ecd3
xor r9d, r9d
lea r8, str.http
movzx eax, byte [r8 + r9]
lea ecx, [rax - 0x41]
lea edx, [rax + 0x20]
cmp cl, 0x1a
cmovb eax, edx
movzx edx, byte [r14 + r9]
lea r13d, [rdx - 0x41]
lea ecx, [rdx + 0x20]
cmp r13b, 0x1a
cmovb edx, ecx
cmp dl, al
jne 0x14027f92d
add r9, 1
cmp r9, 4
jne 0x14027fc6e
jmp 0x14027fc47
mov r8d, 7
mov rdx, r14
mov qword [rsp + 0x60], r10
lea rcx, str.OPTIONS
mov qword [rsp + 0x50], r11
call sub.msvcrt.dll_memcmp
mov r11, qword [rsp + 0x50]
mov r10, qword [rsp + 0x60]
test eax, eax
jne 0x14027f92d
mov eax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x58]
or eax, 0x204
mov dword [rcx + 0xd4], eax
movzx r9d, byte [r15]
jmp 0x14027ecd3
cmp dword [r14], 0x44414548
jne 0x14027f92d
mov eax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x58]
or eax, 0x104
mov dword [rcx + 0xd4], eax
movzx r9d, byte [r15]
jmp 0x14027ecd3