Function at 0x14005fbc0
Capabilities:
Hash data using sha1
Hash data using sha1 via wincrypt
Hash data via wincrypt
Initialize hashing via wincrypt

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x320]
sub rsp, 0x420
mov rax, qword [0x1401dd930]
xor rax, rsp
mov qword [rbp + 0x318], rax
mov rbx, r8
mov qword [rsp + 0x68], rdx
mov r13, rcx
xor r15d, r15d
mov dword [rsp + 0x40], r15d
xor edx, edx
mov r8d, 0xf0
lea rcx, [rbp + 0x1b0]
call fcn.1401511b0
mov rdx, qword [rbx]
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], r15
mov qword [rbp - 0x78], r15
mov r12, 0xffffffffffffffff
mov r8, r12
inc r8
cmp byte [rdx + r8], r15b
jne 0x14005fc34
lea rcx, [rsp + 0x70]
call fcn.140014460
nop
lea rdi, [0x140000000]
lea rax, [rdi + 0x1b4fb8]
mov qword [rbp + 0x1b0], rax
mov qword [rbp + 0x248], r15
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x270], xmm0
mov qword [rbp + 0x280], r15
mov dword [rsp + 0x40], 1
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rbp + 0x240], rax
mov dword [rbp + 0x23c], 0x78
mov qword [rbp + 0x1b8], r15
xor r8d, r8d
lea rdx, [rbp + 0x1c0]
lea rcx, [rbp + 0x240]
call fcn.140042790
nop
mov rax, qword [rbp + 0x1b0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + rcx + 0x1b0], rax
mov rax, qword [rbp + 0x1b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x90]
mov dword [rbp + rcx + 0x1ac], edx
lea rax, [rbp + 0x1c0]
mov qword [rbp + 0xa0], rax
lea rcx, [rbp + 0x1c0]
call fcn.1400423b0
nop
lea rax, vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + 0x1c0], rax
mov rbx, qword [rbp - 0x80]
mov rax, qword [rbp - 0x78]
cmp rax, 0x10
jb 0x14005fd27
mov r8, qword [rsp + 0x70]
inc rax
jmp 0x14005fd41
mov ecx, 0x11
call fcn.14014e590
mov r8, rax
movups xmm0, xmmword [rsp + 0x70]
movups xmmword [rax], xmm0
mov eax, 0x11
lea rcx, [rbx + r8]
mov qword [rbp + 0x228], rcx
lea rdx, [rax + r8]
mov rcx, qword [rbp + 0x1e0]
mov qword [rcx], r8
mov rcx, qword [rbp + 0x200]
mov qword [rcx], r8
sub edx, r8d
mov rax, qword [rbp + 0x218]
mov dword [rax], edx
mov rcx, qword [rbp + 0x228]
mov rax, qword [rbp + 0x1d8]
mov qword [rax], r8
mov rax, qword [rbp + 0x1f8]
mov qword [rax], r8
sub ecx, r8d
mov rax, qword [rbp + 0x210]
mov dword [rax], ecx
mov dword [rbp + 0x230], 0x23
mov r14b, 1
xorps xmm0, xmm0
movups xmmword [rbp + 0xb0], xmm0
mov qword [rbp + 0xc0], r15
mov qword [rbp + 0xc8], shutdown
mov byte [rbp + 0xb0], 0
movups xmmword [rbp + 0xf8], xmm0
mov qword [rbp + 0x108], r15
mov qword [rbp + 0x110], r15
xor r8d, r8d
lea rdx, [0x1401ac0a8]
lea rcx, [rbp + 0xf8]
call fcn.140014460
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x190], xmm0
mov qword [rbp + 0x1a0], r15
mov qword [rbp + 0x1a8], r15
mov r8d, 0x24
lea rdx, str.258EAFA5_E914_47DA_95CA_C5AB0DC85B11
lea rcx, [rbp + 0x190]
call fcn.140014460
nop
mov rax, qword [rbp + 0x1b0]
movsxd rcx, dword [rax + 4]
mov rax, qword [rbp + rcx + 0x1f0]
mov rcx, qword [rax + 8]
mov qword [rbp - 0x28], rcx
mov rax, qword [rcx]
call qword [rax + htons]
nop
lea rcx, [rbp - 0x30]
call fcn.140013850
mov rcx, qword [rax]
mov r8, qword [rcx + 0x40]
mov dl, 0xa
mov rcx, rax
call r8
movzx ebx, al
mov rcx, qword [rbp - 0x28]
test rcx, rcx
je 0x14005fe87
mov rdx, qword [rcx]
call qword [rdx + 0x10]
test rax, rax
je 0x14005fe87
mov rcx, qword [rax]
mov r8, qword [rcx]
mov edx, 1
mov rcx, rax
call r8
movzx r8d, bl
lea rdx, [rbp + 0xb0]
lea rcx, [rbp + 0x1b0]
call fcn.140062e80
mov rcx, qword [rax]
movsxd rdx, dword [rcx + 4]
test byte [rdx + rax + 0x10], 6
jne 0x140060451
lea rcx, [rbp + 0xb0]
cmp qword [rbp + 0xc8], 0x10
setae dl
cmovae rcx, qword [rbp + 0xb0]
mov r8, qword [rbp + 0xc0]
cmp r8, 1
jne 0x14005feee
cmp byte [rcx], 0xd
jne 0x14005fee1
mov eax, r15d
jmp 0x14005fee6
sbb eax, eax
or eax, 1
test eax, eax
je 0x140060451
lea rax, [rbp + 0xb0]
test dl, dl
je 0x14005ff05
mov rax, qword [rbp + 0xb0]
mov rcx, rax
jmp 0x14005ff0c
lea rcx, [rbp + 0xb0]
mov rdx, rax
add r8, rcx
cmp rax, r8
je 0x14005ff47
nop word [rax + rax]
movsx rdx, byte [rax]
cmp rdx, 0x80
jae 0x140060b04
cmp byte [rdx + rdi + 0x1abff0], 0
je 0x140060324
inc rax
cmp rax, r8
jne 0x14005ff20
lea rdx, [rbp + 0xb0]
test r14b, r14b
je 0x14006007b
lea rcx, [rbp + 0x60]
call fcn.140012cd0
mov rdx, rax
lea rcx, [rbp + 0x2a0]
call fcn.14005eaa0
nop
lea rdx, [rbp + 0xb0]
lea rcx, [rbp]
call fcn.14005c190
nop
cmp qword [rax + 0x18], 8
jb 0x14005ff8b
mov rax, qword [rax]
mov r8, rax
lea rdx, str.Info:_____s
mov ecx, dword [r13 + 0x458]
call fcn.14005a260
nop
mov rdx, qword [rbp + 0x18]
cmp rdx, 8
jb 0x14005ffe2
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005ffdd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060b0a
call fcn.14014e5d4
lea rax, [rbp + 0x2a0]
cmp qword [rbp + 0x2b8], 0x10
cmovae rax, qword [rbp + 0x2a0]
cmp qword [rbp + 0x2b0], 3
jne 0x140060354
cmp byte [rax], 0x47
jne 0x14006001d
cmp byte [rax + 1], 0x45
jne 0x14006001d
cmp byte [rax + 2], 0x54
jne 0x14006001d
mov eax, r15d
jmp 0x140060022
sbb eax, eax
or eax, 1
test eax, eax
jne 0x140060354
lea rcx, [rbp + 0x2e0]
cmp qword [rbp + 0x2f8], 0x10
cmovae rcx, qword [rbp + 0x2e0]
cmp qword [rbp + 0x2f0], 8
jne 0x140060354
lea r8d, [rax + 8]
lea rdx, str.HTTP_1.1
call fcn.1401510b0
test eax, eax
jne 0x140060354
xor r14b, r14b
lea rcx, [rbp + 0x2a0]
call fcn.14005f010
jmp 0x14005fe25
lea rcx, [rbp + 0x80]
call fcn.140012cd0
mov rdx, rax
lea rcx, [rbp + 0x120]
call fcn.14005f190
nop
lea rcx, [rbp + 0x120]
cmp qword [rbp + 0x138], 0x10
cmovae rcx, qword [rbp + 0x120]
mov rsi, qword [rbp + 0x130]
cmp rsi, 0x11
jne 0x1400600ff
mov r8, rsi
lea rdx, str.Sec_WebSocket_Key
call fcn.1401510b0
test eax, eax
jne 0x1400600ff
lea rdx, [rbp + 0x140]
cmp qword [rbp + 0x158], 0x10
cmovae rdx, qword [rbp + 0x140]
mov r8, qword [rbp + 0x150]
lea rcx, [rbp + 0xf8]
call fcn.140012a70
mov rsi, qword [rbp + 0x130]
test rsi, rsi
je 0x14006010e
cmp qword [rbp + 0x150], 0
jne 0x140060188
lea rdx, [rbp + 0xb0]
lea rcx, [rbp + 0x20]
call fcn.14005c190
nop
cmp qword [rax + 0x18], 8
jb 0x140060129
mov rax, qword [rax]
mov r8, rax
lea rdx, str.Info:_____s
mov ecx, dword [r13 + 0x458]
call fcn.14005a260
nop
mov rdx, qword [rbp + 0x38]
cmp rdx, 8
jb 0x140060272
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006026c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060afe
jmp 0x14006026c
lea rdx, [rbp + 0x140]
lea rcx, [rbp - 0x20]
call fcn.14005c190
mov rbx, rax
cmp qword [rax + 0x18], 8
jb 0x1400601a5
mov rbx, qword [rax]
lea rdx, [rbp + 0x120]
lea rcx, [rsp + 0x48]
call fcn.14005c190
nop
cmp qword [rax + 0x18], 8
jb 0x1400601c1
mov rax, qword [rax]
mov r9, rbx
mov r8, rax
lea rdx, str.Info:_____s:__s
mov ecx, dword [r13 + 0x458]
call fcn.14005a260
nop
mov rdx, qword [rsp + 0x60]
cmp rdx, 8
jb 0x14006021d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140060218
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060b1c
call fcn.14014e5d4
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x60], 7
mov word [rsp + 0x48], r15w
mov rdx, qword [rbp - 8]
cmp rdx, 8
jb 0x140060272
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006026c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060b22
call fcn.14014e5d4
nop
mov rdx, qword [rbp + 0x158]
cmp rdx, 0x10
jb 0x1400602b3
inc rdx
mov rcx, qword [rbp + 0x140]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400602ae
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060b28
call fcn.14014e5d4
mov qword [rbp + 0x150], r15
mov qword [rbp + 0x158], shutdown
mov byte [rbp + 0x140], 0
mov rdx, qword [rbp + 0x138]
cmp rdx, 0x10
lea rdi, [0x140000000]
jb 0x14005fe25
inc rdx
mov rcx, qword [rbp + 0x120]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140060313
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060b28
call fcn.14014e5d4
lea rdi, [0x140000000]
jmp 0x14005fe25
mov r8d, edx
lea rdx, str.Error:_Invalid_char_is__d.
mov ecx, dword [r13 + 0x458]
call fcn.14005a260
lea rdx, str.Error:_http_header_contains_invalid_ascii.
mov ecx, dword [r13 + 0x458]
call fcn.14005a260
xor bl, bl
jmp 0x140060961
lea rdx, [rbp + 0x2e0]
lea rcx, [rbp - 0x20]
call fcn.14005c190
mov rbx, rax
cmp qword [rax + 0x18], 8
jb 0x140060371
mov rbx, qword [rax]
lea rdx, [rbp + 0x2a0]
lea rcx, [rsp + 0x48]
call fcn.14005c190
nop
cmp qword [rax + 0x18], 8
jb 0x14006038d
mov rax, qword [rax]
mov r9, rbx
mov r8, rax
lea rdx, str.Error:_Method_or_HTTP_Version_mismatch._method_s_httpversion_s
mov ecx, dword [r13 + 0x458]
call fcn.14005a260
nop
mov rdx, qword [rsp + 0x60]
cmp rdx, 8
jb 0x1400603e9
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400603e4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060b10
call fcn.14014e5d4
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x60], 7
mov word [rsp + 0x48], r15w
mov rdx, qword [rbp - 8]
cmp rdx, 8
jb 0x14006043e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140060438
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060b16
call fcn.14014e5d4
nop
lea rcx, [rbp + 0x2a0]
call fcn.14005f010
xor bl, bl
jmp 0x140060961
lea rcx, [rbp + 0xf8]
cmp qword [rbp + 0x110], 0x10
setae sil
cmovae rcx, qword [rbp + 0xf8]
mov rbx, qword [rbp + 0x108]
test rbx, rbx
jne 0x14006048f
mov r8, rbx
lea rdx, [0x1401ac0a8]
call fcn.1401510b0
test eax, eax
je 0x14006061c
movabs rdi, 0x7fffffffffffffff
mov rax, rdi
sub rax, rbx
mov rcx, qword [rbp + 0x1a0]
cmp rax, rcx
jb 0x140060b2e
lea r9, [rbp + 0xf8]
test sil, sil
cmovne r9, qword [rbp + 0xf8]
lea rax, [rbp + 0x190]
cmp qword [rbp + 0x1a8], 0x10
cmovae rax, qword [rbp + 0x190]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbx
lea rcx, [rbp - 0x70]
call fcn.140062bc0
mov qword [rbp + 0xa0], r15
mov qword [rbp + 0xd0], r15
mov dword [rsp + 0x20], 0xf0000000
mov r9d, 1
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0xa0]
call qword [sym.imp.ADVAPI32.dll_CryptAcquireContextW]
mov bl, 1
test eax, eax
je 0x1400605ca
lea rax, [rbp + 0xd0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
mov edx, 0x8004
mov rcx, qword [rbp + 0xa0]
call qword [sym.imp.ADVAPI32.dll_CryptCreateHash]
test eax, eax
je 0x1400605bb
lea rdx, [rbp - 0x70]
cmp qword [rbp - 0x58], 0x10
cmovae rdx, qword [rbp - 0x70]
xor r9d, r9d
mov r8d, dword [rbp - 0x60]
mov rcx, qword [rbp + 0xd0]
call qword [sym.imp.ADVAPI32.dll_CryptHashData]
test eax, eax
je 0x1400605ae
mov dword [rbp + 0xa8], shutdown
mov dword [rsp + 0x20], r15d
lea r9, [rbp + 0xa8]
lea r8, [rbp + 0x300]
mov edx, 2
mov rcx, qword [rbp + 0xd0]
call qword [sym.imp.ADVAPI32.dll_CryptGetHashParam]
movzx ebx, bl
test eax, eax
cmovne ebx, r15d
mov rcx, qword [rbp + 0xd0]
call qword [sym.imp.ADVAPI32.dll_CryptDestroyHash]
xor edx, edx
mov rcx, qword [rbp + 0xa0]
call qword [sym.imp.ADVAPI32.dll_CryptReleaseContext]
mov rdx, qword [rbp - 0x58]
cmp rdx, 0x10
jb 0x140060605
inc rdx
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140060600
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060b34
call fcn.14014e5d4
test bl, bl
je 0x140060623
lea rdx, str.Error:_response_get_sha1___failed.
mov ecx, dword [r13 + 0x458]
call fcn.14005a260
xor bl, bl
jmp 0x140060961
lea rdx, [rbp + 0x300]
lea rcx, [rbp + 0x160]
call fcn.14005b4f0
nop
lea rdx, [rbp + 0x160]
lea rcx, [rbp + 0x40]
call fcn.14005c190
nop
cmp qword [rax + 0x18], 8
jb 0x140060652
mov rax, qword [rax]
mov r8, rax
lea rdx, str.Info:____Sec_WebSocket_Accept:__s
mov ecx, dword [r13 + 0x458]
call fcn.14005a260
nop
mov rdx, qword [rbp + 0x58]
cmp rdx, 8
jb 0x1400606a9
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400606a4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060b3a
call fcn.14014e5d4
mov rcx, qword [rbp + 0x170]
sub rdi, rcx
cmp rdi, 0x61
jb 0x140060b40
lea rax, [rbp + 0x160]
cmp qword [rbp + 0x178], 0x10
cmovae rax, qword [rbp + 0x160]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0x61
lea r9, str.HTTP_1.1_101_Switching_Protocols_r_nUpgrade:_websocket_r_nConnection:_Upgrade_r_nSec_WebSocket_Accept:
lea rcx, [rbp - 0x50]
call fcn.140062bc0
nop
mov r8d, 4
lea rdx, str._r_n_r_n
lea rcx, [rbp - 0x50]
call fcn.14002fee0
xorps xmm0, xmm0
movups xmmword [rbp + 0xd8], xmm0
mov qword [rbp + 0xe8], r15
mov qword [rbp + 0xf0], r15
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xd8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xe8], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], shutdown
mov byte [rax], 0
mov rdx, qword [rbp - 0x38]
cmp rdx, 0x10
jb 0x140060785
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140060780
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060b46
call fcn.14014e5d4
mov qword [rbp - 0x40], r15
mov qword [rbp - 0x38], shutdown
mov byte [rbp - 0x50], 0
lea rcx, [rbp + 0xd8]
mov rsi, qword [rbp + 0xe8]
cmp qword [rbp + 0xf0], 0x10
jb 0x1400607b9
mov r15, qword [rbp + 0xd8]
add rsi, r15
jmp 0x1400607c3
add rsi, rcx
lea r15, [rbp + 0xd8]
mov ecx, 0x28
call fcn.14014e590
mov rdi, rax
mov qword [rbp + 0x180], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov dword [rax + 8], 1
mov dword [rax + 0xc], 1
lea rax, vtable.std::_Ref_count_obj2_class_std::vector_unsigned_char__class_std::allocator_unsigned_char___.0
mov qword [rdi], rax
lea r14, [rdi + 0x10]
xor eax, eax
mov qword [r14], rax
mov qword [r14 + 8], rax
mov qword [r14 + 0x10], rax
sub rsi, r15
je 0x14006082f
mov rdx, rsi
mov rcx, r14
call fcn.140054600
mov rbx, qword [r14]
mov r8, rsi
mov rdx, r15
mov rcx, rbx
call fcn.140150980
lea rax, [rbx + rsi]
mov qword [r14 + 8], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x180], xmm0
mov qword [rbp + 0x180], r14
mov qword [rbp + 0x188], rdi
lea r8, [rbp + 0x180]
mov rbx, qword [rsp + 0x68]
mov rdx, qword [rbx]
mov rcx, r13
call fcn.140060eb0
test al, al
jne 0x140060879
lea rdx, str.Error:_send___failed.
mov ecx, dword [r13 + 0x458]
call fcn.14005a260
xor bl, bl
jmp 0x14006087f
mov byte [rbx + 8], 1
mov bl, 1
mov eax, r12d
lock xadd dword [rdi + 8], eax
cmp eax, 1
jne 0x1400608aa
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax]
lock xadd dword [rdi + 0xc], r12d
cmp r12d, 1
jne 0x1400608aa
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + htons]
nop
mov rdx, qword [rbp + 0xf0]
cmp rdx, 0x10
jb 0x1400608eb
inc rdx
mov rcx, qword [rbp + 0xd8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400608e6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060b4c
call fcn.14014e5d4
xor r15d, r15d
mov qword [rbp + 0xe8], r15
mov qword [rbp + shutdown0], 0xf
mov byte [rbp + 0xd8], r15b
mov rdx, qword [rbp + 0x178]
cmp rdx, 0x10
jb 0x140060948
inc rdx
mov rcx, qword [rbp + 0x160]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140060943
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060b52
call fcn.14014e5d4
mov qword [rbp + 0x170], r15
mov qword [rbp + 0x178], shutdown
mov byte [rbp + 0x160], 0
mov rdx, qword [rbp + 0x1a8]
cmp rdx, 0x10
jb 0x1400609a3
inc rdx
mov rcx, qword [rbp + 0x190]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006099d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060b58
call fcn.14014e5d4
nop
mov rax, qword [rbp + 0x110]
cmp rax, 0x10
jb 0x1400609e6
lea rdx, [rax + 1]
mov rcx, qword [rbp + 0xf8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400609e0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060b5e
call fcn.14014e5d4
nop
mov rax, qword [rbp + 0xc8]
cmp rax, 0x10
jb 0x140060a28
lea rdx, [rax + 1]
mov rcx, qword [rbp + 0xb0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140060a23
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060af8
call fcn.14014e5d4
mov qword [rbp + 0xc0], r15
mov qword [rbp + 0xc8], shutdown
mov byte [rbp + 0xb0], 0
mov rax, qword [rbp + 0x1b0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + rcx + 0x1b0], rax
mov rax, qword [rbp + 0x1b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x90]
mov dword [rbp + rcx + 0x1ac], edx
lea rcx, [rbp + 0x1c0]
call fcn.140062250
mov rax, qword [rbp + 0x1b0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x1b0], rax
mov rcx, qword [rbp + 0x1b0]
movsxd rdx, dword [rcx + 4]
lea r8d, [rdx - 0x18]
mov dword [rbp + rdx + 0x1ac], r8d
lea rax, vtable.std::ios_base.0
mov qword [rbp + 0x240], rax
lea rcx, [rbp + 0x240]
call fcn.14014cd38
nop
movzx eax, bl
mov rcx, qword [rbp + 0x318]
xor rcx, rsp
call fcn.14014e570
mov rbx, qword [rsp + 0x478]
add rsp, 0x420
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.140155214
nop
call fcn.140155214
nop
call fcn.14005a390
nop
call fcn.140155214
nop
call fcn.140155214
nop
call fcn.140155214
nop
call fcn.140155214
nop
call fcn.140155214
nop
call fcn.140155214
int3
call fcn.140002530
int3
call fcn.140155214
nop
call fcn.140155214
int3
call fcn.140002530
nop
call fcn.140155214
nop
call fcn.140155214
nop
call fcn.140155214
nop
call fcn.140155214
nop
call fcn.140155214
int3