Function at 0x14005f120
Capabilities:
Authenticate hmac

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x4b0]
sub rsp, 0x5b0
movaps xmmword [rsp + 0x5a0], xmm6
mov rax, qword [0x1401fd600]
xor rax, rsp
mov qword [rbp + 0x498], rax
mov rdi, rdx
mov r13, rcx
xor r12d, r12d
lea rdx, [rbp + 0x270]
mov rcx, rdi
call fcn.140022330
nop
lea rcx, [rbp + 0x270]
cmp qword [rbp + 0x288], 0x10
cmovae rcx, qword [rbp + 0x270]
mov rax, qword [rbp + 0x280]
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x68], rax
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rbp + 0x1f0], xmm0
mov qword [rsp + 0x70], send
lea rax, [rbp + 0x1f0]
mov qword [rsp + 0x78], rax
mov rax, qword gs:[0x58]
mov r14, qword [rax]
mov ecx, 0x1134
mov eax, dword [rcx + r14]
mov ebx, 0xf30
test al, 1
jne 0x14005f215
or eax, 1
mov dword [rcx + r14], eax
mov word [r14 + rbx + 0xd], 0x17d
mov dword [r14 + rbx], 0x23158090
mov dword [r14 + rbx + 4], 0xb19e1aa0
mov dword [r14 + rbx + 8], 0x1b28b9cb
mov byte [r14 + rbx + 0xc], 0xae
lea rcx, [0x14018ee30]
call fcn.14015b9c0
nop
lea rax, [rbx + r14]
cmp byte [rax + 0xe], 0
je 0x14005f25a
xor byte [rax], 0xeb
xor byte [rax + 1], 0xfd
xor byte [rax + 2], 0x49
xor byte [rax + 3], 0x6f
xor byte [rax + 4], 0xcf
xor byte [rax + 5], 0x7d
xor byte [rax + 6], 0xf7
xor byte [rax + 7], 0xdf
xor byte [rax + 8], 0xeb
xor byte [rax + 9], 0xfd
xor byte [rax + 0xa], 0x49
xor byte [rax + 0xb], 0x6f
xor byte [rax + 0xc], 0xcf
xor byte [rax + 0xd], 0x7d
mov byte [rax + 0xe], 0
mov qword [rbp - 0x80], rax
mov r15, 0xffffffffffffffff
mov rcx, r15
nop dword [rax + rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x14005f270
mov qword [rbp - 0x78], rcx
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rbp + 0x200], xmm0
movaps xmm1, xmmword [rbp - 0x80]
movdqa xmmword [rbp + 0x210], xmm1
lea r8, [rbp + 0x200]
lea rdx, [rbp + 0x210]
lea rcx, [rbp + 0x250]
call fcn.14008e140
nop
lea rax, [rbp + 0x250]
cmp qword [rbp + 0x268], 0x10
cmovae rax, qword [rbp + 0x250]
mov qword [rbp + 0x240], rax
mov rax, qword [rbp + 0x260]
mov qword [rbp + 0x248], rax
call fcn.140158544
movaps xmm0, xmmword [rbp + 0x240]
movdqa xmmword [rbp + 0xf0], xmm0
lea r8, [rbp + 0xf0]
mov edx, eax
lea rcx, [rbp + 0xb0]
call fcn.140021e20
nop
lea rcx, [rbp + 0xb0]
call fcn.1400235b0
movzx ebx, al
mov rdx, qword [rbp + 0xc8]
cmp rdx, 8
jb 0x14005f35c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xb0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005f357
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060a0a
call fcn.14015b55c
test bl, bl
jne 0x14005f65b
lea rcx, [rbp + 0x270]
cmp qword [rbp + 0x288], 0x10
cmovae rcx, qword [rbp + 0x270]
mov rax, qword [rbp + 0x280]
mov qword [rbp - 0x70], rcx
mov qword [rbp - 0x68], rax
movaps xmm0, xmmword [rbp - 0x70]
movdqa xmmword [rbp + 0x100], xmm0
mov qword [rbp - 0x60], send
lea rax, [rbp + 0x100]
mov qword [rbp - 0x58], rax
movups xmm6, xmmword [rbp - 0x60]
movdqa xmm0, xmmword [0x1401dce90]
movdqu xmmword [rbp + 0x2c0], xmm0
mov word [rbp + 0x2d0], 0xe6cb
mov byte [rbp + 0x2d2], 0xe7
mov ecx, 0x16b4
mov eax, dword [rcx + r14]
mov ebx, 0xdc8
test al, 1
jne 0x14005f43d
or eax, 1
mov dword [rcx + r14], eax
lea rcx, [r14 + rbx]
mov byte [rcx + 0x13], 1
lea rax, [rcx + 0x12]
lea rdx, [rbp + 0x2d2]
cmp rcx, rdx
ja 0x14005f41e
lea rdx, [rbp + 0x2c0]
cmp rax, rdx
jb 0x14005f41e
movups xmmword [rcx], xmm0
movzx eax, word [rbp + 0x2d0]
mov word [rcx + 0x10], ax
mov byte [rcx + 0x12], 0xe7
jmp 0x14005f430
movups xmmword [rcx], xmm0
movzx eax, word [rbp + 0x2d0]
mov word [rcx + 0x10], ax
mov byte [rcx + 0x12], 0xe7
lea rcx, [0x14018ee00]
call fcn.14015b9c0
nop
lea rcx, [rbx + r14]
cmp byte [rcx + 0x13], 0
je 0x14005f494
xor byte [rcx], 0xbf
xor byte [rcx + 1], 0x87
xor byte [rcx + 2], 0xe7
xor byte [rcx + 3], 0x79
xor byte [rcx + 4], 0x6f
not byte [rcx + 5]
xor byte [rcx + 6], 0xe3
xor byte [rcx + 7], 0xb5
xor byte [rcx + 8], 0xbf
xor byte [rcx + 9], 0x87
xor byte [rcx + 0xa], 0xe7
xor byte [rcx + 0xb], 0x79
xor byte [rcx + 0xc], 0x6f
not byte [rcx + 0xd]
xor byte [rcx + 0xe], 0xe3
xor byte [rcx + 0xf], 0xb5
xor byte [rcx + 0x10], 0xbf
xor byte [rcx + 0x11], 0x87
xor byte [rcx + 0x12], 0xe7
mov byte [rcx + 0x13], 0
mov qword [rbp - 0x50], rcx
mov rax, r15
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x14005f4a0
mov qword [rbp - 0x48], rax
movaps xmmword [rbp + 0x110], xmm6
movaps xmm0, xmmword [rbp - 0x50]
movdqa xmmword [rbp + 0x120], xmm0
lea r8, [rbp + 0x110]
lea rdx, [rbp + 0x120]
lea rcx, [rbp + 0x220]
call fcn.14008e140
mov rbx, rax
lea rax, [rbp + 0x250]
cmp rax, rbx
je 0x14005f567
mov rdx, qword [rbp + 0x268]
cmp rdx, 0x10
jb 0x14005f52a
inc rdx
mov rcx, qword [rbp + 0x250]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005f525
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060a10
call fcn.14015b55c
mov qword [rbp + 0x260], r12
mov qword [rbp + 0x268], send
mov byte [rbp + 0x250], 0
movups xmm0, xmmword [rbx]
movups xmmword [rbp + 0x250], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp + 0x260], xmm1
mov qword [rbx + 0x10], r12
mov qword [rbx + 0x18], send
mov byte [rbx], 0
mov rdx, qword [rbp + 0x238]
cmp rdx, 0x10
jb 0x14005f5a8
inc rdx
mov rcx, qword [rbp + 0x220]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005f5a3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060a10
call fcn.14015b55c
lea rax, [rbp + 0x250]
cmp qword [rbp + 0x268], 0x10
cmovae rax, qword [rbp + 0x250]
mov qword [rbp + 0x240], rax
mov rax, qword [rbp + 0x260]
mov qword [rbp + 0x248], rax
call fcn.140158544
movaps xmm0, xmmword [rbp + 0x240]
movdqa xmmword [rbp + 0x130], xmm0
lea r8, [rbp + 0x130]
mov edx, eax
lea rcx, [rbp + 0x90]
call fcn.140021e20
nop
lea rcx, [rbp + 0x90]
call fcn.1400235b0
movzx ebx, al
mov rdx, qword [rbp + 0xa8]
cmp rdx, 8
jb 0x14005f653
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005f64e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060a16
call fcn.14015b55c
test bl, bl
je 0x14006093b
lea rcx, [rbp + 0x270]
cmp qword [rbp + 0x288], 0x10
cmovae rcx, qword [rbp + 0x270]
mov rax, qword [rbp + 0x280]
mov qword [rbp - 0x40], rcx
mov qword [rbp - 0x38], rax
movaps xmm0, xmmword [rbp - 0x40]
movdqa xmmword [rbp + 0x140], xmm0
mov qword [rbp - 0x30], send
lea rax, [rbp + 0x140]
mov qword [rbp - 0x28], rax
movups xmm6, xmmword [rbp - 0x30]
movdqa xmm0, xmmword [0x1401dc770]
movdqu xmmword [rbp + 0x2d8], xmm0
mov word [rbp + 0x2e8], 0xa2a0
mov byte [rbp + 0x2ea], WSAGetLastError
mov ecx, 0xfb4
mov eax, dword [rcx + r14]
mov ebx, 0xff8
test al, 1
jne 0x14005f734
or eax, 1
mov dword [rcx + r14], eax
lea rcx, [r14 + rbx]
mov byte [rcx + 0x13], 1
lea rax, [rcx + 0x12]
lea rdx, [rbp + 0x2ea]
cmp rcx, rdx
ja 0x14005f715
lea rdx, [rbp + 0x2d8]
cmp rax, rdx
jb 0x14005f715
movups xmmword [rcx], xmm0
movzx eax, word [rbp + 0x2e8]
mov word [rcx + 0x10], ax
mov byte [rcx + 0x12], 0x69
jmp 0x14005f727
movups xmmword [rcx], xmm0
movzx eax, word [rbp + 0x2e8]
mov word [rcx + 0x10], ax
mov byte [rcx + 0x12], 0x69
lea rcx, [0x14018edd0]
call fcn.14015b9c0
nop
lea rax, [rbx + r14]
cmp byte [rax + 0x13], 0
je 0x14005f78d
xor byte [rax], 0xc5
xor byte [rax + 1], 0xd1
xor byte [rax + 2], 0x69
xor byte [rax + 3], 9
xor byte [rax + 4], 0x65
xor byte [rax + 5], 0x65
xor byte [rax + 6], 9
xor byte [rax + 7], 0x7f
xor byte [rax + 8], 0xc5
xor byte [rax + 9], 0xd1
xor byte [rax + 0xa], 0x69
xor byte [rax + 0xb], 9
xor byte [rax + 0xc], 0x65
xor byte [rax + 0xd], 0x65
xor byte [rax + 0xe], 9
xor byte [rax + 0xf], 0x7f
xor byte [rax + 0x10], 0xc5
xor byte [rax + 0x11], 0xd1
xor byte [rax + 0x12], 0x69
mov byte [rax + 0x13], 0
mov qword [rbp - 0x20], rax
mov rcx, r15
inc rcx
cmp byte [rax + rcx], 0
jne 0x14005f794
mov qword [rbp - 0x18], rcx
movaps xmmword [rbp + 0x150], xmm6
movaps xmm0, xmmword [rbp - 0x20]
movdqa xmmword [rbp + 0x160], xmm0
lea r8, [rbp + 0x150]
lea rdx, [rbp + 0x160]
lea rcx, [rbp + 0x398]
call fcn.14008e140
nop
lea rax, [rbp + 0x398]
cmp qword [rbp + 0x3b0], 0x10
cmovae rax, qword [rbp + 0x398]
mov qword [rbp + 0x240], rax
mov rax, qword [rbp + 0x3a8]
mov qword [rbp + 0x248], rax
call fcn.140158544
movaps xmm0, xmmword [rbp + 0x240]
movdqa xmmword [rbp + 0x170], xmm0
lea r8, [rbp + 0x170]
mov edx, eax
lea rcx, [rbp + 0x70]
call fcn.140021e20
nop
lea rcx, [rbp + 0x70]
call fcn.1400235b0
movzx ebx, al
mov rdx, qword [rbp + 0x88]
cmp rdx, 8
jb 0x14005f871
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005f86c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060a1c
call fcn.14015b55c
test bl, bl
je 0x1400608e1
lea rcx, [rbp + 0x270]
cmp qword [rbp + 0x288], 0x10
cmovae rcx, qword [rbp + 0x270]
mov rax, qword [rbp + 0x280]
mov qword [rbp - 0x10], rcx
mov qword [rbp - 8], rax
movaps xmm0, xmmword [rbp - 0x10]
movdqa xmmword [rbp + 0x180], xmm0
mov qword [rbp], send
lea rax, [rbp + 0x180]
mov qword [rbp + 8], rax
mov ecx, 0x1118
mov eax, dword [rcx + r14]
mov ebx, 0x1670
test al, 1
jne 0x14005f90b
or eax, 1
mov dword [rcx + r14], eax
mov word [rbx + r14 + 0xb], 0x145
mov dword [rbx + r14], 0x1211fe2a
mov dword [rbx + r14 + 4], 0x1bcbe34c
mov word [rbx + r14 + 8], 0xf730
mov byte [rbx + r14 + 0xa], 0x2c
lea rcx, [0x14018edb0]
call fcn.14015b9c0
nop
lea rax, [rbx + r14]
cmp byte [rax + 0xc], 0
je 0x14005f948
xor byte [rax], 0x51
xor byte [rax + 1], 0x83
xor byte [rax + 2], 0x4d
xor byte [rax + 3], 0x45
xor byte [rax + 4], 0x29
xor byte [rax + 5], 0x81
xor byte [rax + 6], 0xeb
xor byte [rax + 7], 0x5f
xor byte [rax + 8], 0x51
xor byte [rax + 9], 0x83
xor byte [rax + 0xa], 0x4d
xor byte [rax + 0xb], 0x45
mov byte [rax + 0xc], 0
mov qword [rbp + 0x10], rax
mov rcx, r15
nop
inc rcx
cmp byte [rax + rcx], 0
jne 0x14005f950
mov qword [rbp + 0x18], rcx
movaps xmm0, xmmword [rbp]
movdqa xmmword [rbp + 0x190], xmm0
movaps xmm1, xmmword [rbp + 0x10]
movdqa xmmword [rbp + 0x1a0], xmm1
lea r8, [rbp + 0x190]
lea rdx, [rbp + 0x1a0]
lea rcx, [rbp + 0x378]
call fcn.14008e140
nop
lea rax, [rbp + 0x378]
cmp qword [rbp + 0x390], 0x10
cmovae rax, qword [rbp + 0x378]
mov qword [rbp + 0x240], rax
mov rax, qword [rbp + 0x388]
mov qword [rbp + 0x248], rax
call fcn.140158544
movaps xmm0, xmmword [rbp + 0x240]
movdqa xmmword [rbp + 0x1b0], xmm0
lea r8, [rbp + 0x1b0]
mov edx, eax
lea rcx, [rbp + 0xd0]
call fcn.140021e20
nop
lea rcx, [rbp + 0xd0]
call fcn.1400235b0
movzx ebx, al
mov rdx, qword [rbp + 0xe8]
cmp rdx, 8
jb 0x14005fa3b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xd0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005fa36
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060a22
call fcn.14015b55c
test bl, bl
je 0x140060887
mov rcx, rdi
cmp qword [rdi + 0x18], 8
jb 0x14005fa50
mov rcx, qword [rdi]
mov rax, qword [rdi + 0x10]
lea rdx, [rcx + rax*2]
mov r10, rdx
call fcn.140021f80
cmp rax, rdx
je 0x14005fa9e
movzx ecx, word [rax]
cmp cx, 0x5c
je 0x14005fa74
cmp cx, 0x2f
jne 0x14005fa7d
add rax, 2
cmp rax, rdx
jne 0x14005fa65
cmp rax, rdx
je 0x14005fa9e
lea r8, [r10 - 2]
movzx ecx, word [r8]
cmp cx, 0x5c
je 0x14005fa9e
cmp cx, 0x2f
je 0x14005fa9e
mov r10, r8
cmp rax, r8
jne 0x14005fa82
sub rdx, r10
sar rdx, 1
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x58], r12
mov r8, rdx
mov rdx, r10
lea rcx, [rsp + 0x40]
call fcn.14002aaf0
nop
lea rdx, [rbp + 0x458]
lea rcx, [rsp + 0x40]
call fcn.140022330
nop
mov rdx, qword [rsp + 0x58]
cmp rdx, 8
jb 0x14005fb1b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005fb16
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060a28
call fcn.14015b55c
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x58], 7
mov word [rsp + 0x40], r12w
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x350], xmm0
movups xmmword [rbp + 0x360], xmm0
mov qword [rbp + 0x370], rax
mov rbx, qword [r13 + 8]
lea rdx, [rbp + 0x458]
lea rcx, [rbp + 0x350]
call fcn.140020d70
mov qword [rbp + 0x370], rbx
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x3d0], xmm0
mov qword [rbp + 0x3e0], rax
mov ecx, 0x110
call fcn.14015b520
mov r12, rax
mov qword [rsp + 0x30], rax
xor edx, edx
mov r8d, 0x110
mov rcx, rax
call fcn.14015ddc0
mov rcx, r12
call fcn.1400726d0
lea rax, [0x1401dc310]
mov qword [r12], rax
lea rcx, [r12 + 0xd0]
lea rdi, [0x1401dc380]
mov qword [rcx], rdi
lea rbx, [0x14005efa0]
mov qword [rcx + 8], rbx
mov qword [rcx + 0x38], rcx
mov qword [rbp + 0x3d0], r12
mov byte [rbp + 0x3d8], 0
mov byte [rbp + 0x3e0], 0
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x2f0], xmm0
mov qword [rbp + 0x300], rax
mov ecx, 0x110
call fcn.14015b520
mov rsi, rax
mov qword [rsp + 0x30], rax
xor edx, edx
mov r8d, 0x110
mov rcx, rax
call fcn.14015ddc0
mov rcx, rsi
call fcn.1400726d0
lea rax, [0x1401dc310]
mov qword [rsi], rax
lea rcx, [rsi + 0xd0]
mov qword [rcx], rdi
mov qword [rcx + 8], rbx
mov qword [rcx + 0x38], rcx
mov qword [rbp + 0x2f0], rsi
mov byte [rbp + 0x2f8], 0
mov byte [rbp + 0x300], 0
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x338], xmm0
mov qword [rbp + 0x348], rax
mov ecx, 0x130
call fcn.14015b520
mov rdi, rax
mov qword [rsp + 0x30], rax
xor edx, edx
mov r8d, 0x130
mov rcx, rax
call fcn.14015ddc0
lea rax, [0x1401dc2d0]
mov qword [rdi], rax
mov dword [rdi + 8], 1
xor ebx, ebx
mov qword [rdi + 0x10], rbx
mov qword [rdi + 0x18], rbx
mov qword [rdi + 0x20], rbx
mov qword [rdi + 0x28], rbx
lea rcx, [rdi + 0x30]
call fcn.14015a0b4
lea rcx, [rdi + 0x40]
lea edx, [rbx + 2]
call fcn.14015ac0c
lea rcx, [rdi + 0x90]
call fcn.14015a820
mov byte [rdi + 0xd8], bl
mov dword [rdi + 0xdc], ebx
mov word [rdi + 0xe0], bx
mov byte [rdi + 0xe2], bl
mov qword [rdi + 0xe8], rbx
lea rax, str.___a_
mov qword [rdi], rax
lea rax, [rdi + 0xf0]
lea rcx, [0x1401dc480]
mov qword [rax], rcx
lea rcx, [0x14005f030]
mov qword [rax + 8], rcx
mov qword [rax + 0x38], rax
mov qword [rbp + 0x338], rdi
mov byte [rbp + 0x340], bl
mov byte [rbp + 0x348], bl
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x3b8], xmm0
mov qword [rbp + 0x3c8], rax
lea rax, [rbp + 0x270]
mov qword [rbp + 0x240], rax
lea rax, [rbp + 0x350]
mov qword [rbp + 0x248], rax
mov ecx, 0x110
call fcn.14015b520
mov rbx, rax
mov qword [rsp + 0x30], rax
xor edx, edx
mov r8d, 0x110
mov rcx, rax
call fcn.14015ddc0
lea rax, [0x1401d9fe8]
mov qword [rbx], rax
mov dword [rbx + 8], 1
lea rcx, [rbx + 0x10]
call fcn.14015a0b4
lea rcx, [rbx + 0x20]
mov edx, 2
call fcn.14015ac0c
lea rcx, [rbx + 0x70]
call fcn.14015a820
mov byte [rbx + 0xb8], 0
xor eax, eax
mov dword [rbx + 0xbc], eax
mov word [rbx + 0xc0], ax
mov byte [rbx + 0xc2], al
mov qword [rbx + 0xc8], rax
lea rax, [0x1401d9ef8]
mov qword [rbx], rax
lea rax, [rbx + 0xd0]
lea rcx, [0x1401dc5b0]
mov qword [rax], rcx
movups xmm0, xmmword [rbp + 0x240]
movups xmmword [rax + 8], xmm0
mov qword [rax + 0x38], rax
mov qword [rbp + 0x3b8], rbx
mov byte [rbp + 0x3c0], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x308], xmm0
mov byte [rbp + 0x3e0], 1
mov qword [rbp + 0x308], r12
mov byte [rbp + 0x310], 1
lock inc dword [r12 + 8]
movups xmmword [rbp + 0x318], xmm0
mov byte [rbp + 0x300], 1
mov qword [rbp + 0x318], rsi
mov byte [rbp + 0x320], 1
lock inc dword [rsi + 8]
movups xmmword [rbp + 0x328], xmm0
mov byte [rbp + 0x348], 1
mov qword [rbp + 0x328], rdi
mov byte [rbp + 0x330], 1
lock inc dword [rdi + 8]
movups xmmword [rbp + 0x240], xmm0
mov byte [rbp + 0x3c8], 1
mov qword [rbp + 0x240], rbx
mov byte [rbp + 0x248], 1
lock inc dword [rbx + 8]
call fcn.140060f70
mov rcx, rax
call fcn.14006c2f0
cmp dword [r12 + 0xbc], 0
jne 0x140060a7d
lea rax, [rbp + 0x350]
mov qword [rsp + 0x20], rax
lea r9, [0x14005ef30]
lea r8, [rbp + 0x250]
mov rdx, rcx
mov rcx, r12
call fcn.14006b380
movdqa xmm0, xmmword [0x1401dc6b0]
movdqu xmmword [rbp + 0x3e8], xmm0
movdqa xmm1, xmmword [0x1401dca00]
movdqu xmmword [rbp + 0x3f8], xmm1
movdqa xmm2, xmmword [0x1401dc970]
movdqu xmmword [rbp + 0x408], xmm2
mov dword [rbp + 0x418], 0xa60e1834
mov word [rbp + 0x41c], 0x3ef6
mov byte [rbp + 0x41e], 0x8b
mov ecx, 0x1174
mov eax, dword [rcx + r14]
mov ebx, 0xfc0
test al, 1
jne 0x14005ffac
or eax, 1
mov dword [rcx + r14], eax
lea rcx, [rbx + r14]
mov byte [rcx + 0x37], 1
lea rax, [rcx + 0x36]
lea rdx, [rbp + 0x41e]
cmp rcx, rdx
ja 0x14005ff7c
lea rdx, [rbp + 0x3e8]
cmp rax, rdx
jb 0x14005ff7c
movups xmmword [rcx], xmm0
movups xmmword [rcx + 0x10], xmm1
movups xmmword [rcx + 0x20], xmm2
mov eax, dword [rbp + 0x418]
mov dword [rcx + 0x30], eax
movzx eax, word [rbp + 0x41c]
mov word [rcx + 0x34], ax
mov byte [rcx + 0x36], 0x8b
jmp 0x14005ff9f
movups xmmword [rcx], xmm0
movups xmmword [rcx + 0x10], xmm1
movups xmmword [rcx + 0x20], xmm2
mov eax, dword [rbp + 0x418]
mov dword [rcx + 0x30], eax
movzx eax, word [rbp + 0x41c]
mov word [rcx + 0x34], ax
mov byte [rcx + 0x36], 0x8b
lea rcx, [0x14018ed00]
call fcn.14015b9c0
nop
lea rdx, [rbx + r14]
mov rcx, rdx
call fcn.14006c200
mov rcx, qword [rbp + 0x2f0]
test rcx, rcx
je 0x140060a72
cmp dword [rcx + 0xbc], 0
jne 0x140060a7d
test rcx, rcx
je 0x140060a72
lea rax, [rbp + 0x350]
mov qword [rsp + 0x20], rax
lea r9, [0x14005ef50]
lea r8, [rbp + 0x398]
call fcn.14006b380
lea rax, [0x14005ef40]
cmp al, 0xef
invalid
dec dword [rax - 0x77]
and byte [r8 - 0x73], r9b
add eax, 0xffffef61
mov qword [rbp + 0x28], rax
lea rax, [0x14005ef80]
mov qword [rbp + 0x30], rax
lea rax, [0x14005ef90]
mov qword [rbp + 0x38], rax
lea rax, [0x14005ef60]
mov qword [rbp + 0x40], rax
lea rax, [rbp + 0x20]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x48]
mov qword [rsp + 0x38], rax
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rbp + 0x1c0], xmm0
movdqa xmm1, xmmword [0x1401dc890]
movdqu xmmword [rbp + 0x478], xmm1
movdqa xmm0, xmmword [0x1401dc8f0]
movdqu xmmword [rbp + 0x488], xmm0
mov ecx, 0x1620
mov eax, dword [rcx + r14]
mov ebx, 0x1510
test al, 1
jne 0x1400600cd
or eax, 1
mov dword [rcx + r14], eax
lea rax, [rbx + r14]
mov byte [rax + 0x20], 1
lea rcx, [rax + 0x1f]
lea rdx, [rbp + 0x497]
cmp rax, rdx
ja 0x1400600b9
lea rdx, [rbp + 0x478]
cmp rcx, rdx
jb 0x1400600b9
movups xmmword [rax], xmm1
movups xmmword [rax + 0x10], xmm0
jmp 0x1400600c0
movups xmmword [rax], xmm1
movups xmmword [rax + 0x10], xmm0
lea rcx, [0x14018ecc0]
call fcn.14015b9c0
nop
lea rax, [rbx + r14]
cmp byte [rax + 0x20], 0
je 0x14006015e
xor byte [rax], 0xe1
xor byte [rax + 1], 0x7f
xor byte [rax + 2], 0x29
xor byte [rax + 3], 0x29
xor byte [rax + 4], 0xcb
xor byte [rax + 5], 0xbd
xor byte [rax + 6], 0x5d
xor byte [rax + 7], 0x41
xor byte [rax + 8], 0xe1
xor byte [rax + 9], 0x7f
xor byte [rax + 0xa], 0x29
xor byte [rax + 0xb], 0x29
xor byte [rax + 0xc], 0xcb
xor byte [rax + 0xd], 0xbd
xor byte [rax + 0xe], 0x5d
xor byte [rax + 0xf], 0x41
xor byte [rax + 0x10], 0xe1
xor byte [rax + 0x11], 0x7f
xor byte [rax + 0x12], 0x29
xor byte [rax + 0x13], 0x29
xor byte [rax + 0x14], 0xcb
xor byte [rax + 0x15], 0xbd
xor byte [rax + 0x16], 0x5d
xor byte [rax + 0x17], 0x41
xor byte [rax + 0x18], 0xe1
xor byte [rax + 0x19], 0x7f
xor byte [rax + 0x1a], 0x29
xor byte [rax + 0x1b], 0x29
xor byte [rax + 0x1c], 0xcb
xor byte [rax + 0x1d], 0xbd
xor byte [rax + 0x1e], 0x5d
xor byte [rax + 0x1f], 0x41
mov byte [rax + 0x20], 0
mov qword [rbp + 0x48], rax
call fcn.140061060
mov rbx, rax
mov rcx, rax
call fcn.14006c030
mov qword [rbp + 0x50], rbx
movdqa xmm0, xmmword [0x1401dcc40]
movdqu xmmword [rbp + 0x290], xmm0
movdqa xmm1, xmmword [0x1401dce10]
movdqu xmmword [rbp + 0x2a0], xmm1
mov dword [rbp + 0x2b0], 0x283eb2b7
mov dword [rbp + 0x2b4], 0xb36ad4a6
mov word [rbp + 0x2b8], 0xd7a8
mov ecx, 0x115c
mov eax, dword [rcx + r14]
mov ebx, 0xe48
test al, 1
jne 0x14006023d
or eax, 1
mov dword [rcx + r14], eax
lea rcx, [r14 + rbx]
mov byte [rcx + 0x2a], 1
lea rax, [rcx + 0x29]
lea rdx, [rbp + 0x2b9]
cmp rcx, rdx
ja 0x140060211
lea rdx, [rbp + 0x290]
cmp rax, rdx
jb 0x140060211
movups xmmword [rcx], xmm0
movups xmmword [rcx + 0x10], xmm1
movsd xmm0, qword [rbp + 0x2b0]
movsd qword [rcx + 0x20], xmm0
movzx eax, word [rbp + 0x2b8]
mov word [rcx + 0x28], ax
jmp 0x140060230
movups xmmword [rcx], xmm0
movups xmmword [rcx + 0x10], xmm1
movsd xmm0, qword [rbp + 0x2b0]
movsd qword [rcx + 0x20], xmm0
movzx eax, word [rbp + 0x2b8]
mov word [rcx + 0x28], ax
lea rcx, [0x14018ec60]
call fcn.14015b9c0
nop
lea rax, [rbx + r14]
cmp byte [rax + 0x2a], 0
je 0x1400602f6
xor byte [rax], 0xdb
xor byte [rax + 1], 0xd7
xor byte [rax + 2], 0x61
xor byte [rax + 3], 0x4d
xor byte [rax + 4], 0xcb
xor byte [rax + 5], 0xb5
xor byte [rax + 6], 3
xor byte [rax + 7], 0xdf
xor byte [rax + 8], 0xdb
xor byte [rax + 9], 0xd7
xor byte [rax + 0xa], 0x61
xor byte [rax + 0xb], 0x4d
xor byte [rax + 0xc], 0xcb
xor byte [rax + 0xd], 0xb5
xor byte [rax + 0xe], 3
xor byte [rax + 0xf], 0xdf
xor byte [rax + 0x10], 0xdb
xor byte [rax + 0x11], 0xd7
xor byte [rax + 0x12], 0x61
xor byte [rax + 0x13], 0x4d
xor byte [rax + 0x14], 0xcb
xor byte [rax + 0x15], 0xb5
xor byte [rax + 0x16], 3
xor byte [rax + 0x17], 0xdf
xor byte [rax + 0x18], 0xdb
xor byte [rax + 0x19], 0xd7
xor byte [rax + 0x1a], 0x61
xor byte [rax + 0x1b], 0x4d
xor byte [rax + 0x1c], 0xcb
xor byte [rax + 0x1d], 0xb5
xor byte [rax + 0x1e], 3
xor byte [rax + 0x1f], 0xdf
xor byte [rax + 0x20], 0xdb
xor byte [rax + 0x21], 0xd7
xor byte [rax + 0x22], 0x61
xor byte [rax + 0x23], 0x4d
xor byte [rax + 0x24], 0xcb
xor byte [rax + 0x25], 0xb5
xor byte [rax + 0x26], 3
xor byte [rax + 0x27], 0xdf
xor byte [rax + 0x28], 0xdb
xor byte [rax + 0x29], 0xd7
mov byte [rax + 0x2a], 0
mov qword [rbp + 0x58], rax
movdqa xmm0, xmmword [0x1401dc6d0]
movdqu xmmword [rbp + 0x420], xmm0
movdqa xmm1, xmmword [0x1401dc820]
movdqu xmmword [rbp + 0x430], xmm1
movdqa xmm2, xmmword [0x1401dc6e0]
movdqu xmmword [rbp + 0x440], xmm2
mov dword [rbp + 0x450], 0x949bb6e0
mov dword [rbp + 0x454], 0x677ab4cc
mov ecx, 0xd10
mov eax, dword [rcx + r14]
mov ebx, 0x13d8
test al, 1
jne 0x1400603ba
or eax, 1
mov dword [rcx + r14], eax
lea rax, [rbx + r14]
mov byte [rax + 0x38], 1
lea rcx, [rax + 0x37]
lea rdx, [rbp + 0x457]
cmp rax, rdx
ja 0x140060395
lea rdx, [rbp + 0x420]
cmp rcx, rdx
jb 0x140060395
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax + 0x20], xmm2
movsd xmm0, qword [rbp + 0x450]
movsd qword [rax + 0x30], xmm0
jmp 0x1400603ad
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax + 0x20], xmm2
movsd xmm0, qword [rbp + 0x450]
movsd qword [rax + 0x30], xmm0
lea rcx, [0x14018ec30]
call fcn.14015b9c0
nop
lea rcx, [rbx + r14]
call fcn.14006bf40
mov qword [rbp + 0x60], rcx
call fcn.140061140
mov rbx, rax
mov rcx, rax
call fcn.14006bd50
mov qword [rbp + 0x68], rbx
lea rax, [rbp + 0x48]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x70]
mov qword [rsp + 0x38], rax
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rbp + 0x1d0], xmm0
mov rcx, qword [rbp + 0x338]
test rcx, rcx
je 0x140060a67
cmp dword [rcx + 0xdc], 0
jne 0x140060a2e
test rcx, rcx
je 0x140060a67
lea rax, [rbp + 0x350]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x1c0]
lea r8, [rbp + 0x378]
lea rdx, [rbp + 0x1d0]
call fcn.14006b410
mov rcx, qword [rbp + 0x3b8]
test rcx, rcx
je 0x140060a72
cmp dword [rcx + 0xbc], 0
jne 0x140060a7d
test rcx, rcx
je 0x140060a72
call fcn.14003c920
lea rcx, [r13 + 0x28]
call fcn.14015ac28
test eax, eax
jne 0x140060a39
mov eax, dword [r13 + 0x74]
cmp eax, 0x7fffffff
je 0x140060a44
mov qword [rsp + 0x30], r13
lea r9, [rbp + 0x270]
lea r8, [rsp + 0x30]
lea rcx, [rbp + 0x1e0]
call fcn.14006ccc0
nop
mov rdx, qword [r13 + 0x18]
cmp rdx, qword [r13 + 0x20]
je 0x1400604d0
mov rcx, qword [rax]
xor r12d, r12d
mov qword [rax], r12
mov qword [rdx], rcx
mov byte [rdx + 8], 1
add qword [r13 + 0x18], 0x10
jmp 0x1400604df
mov r8, rax
lea rcx, [r13 + 0x10]
call fcn.1400705d0
xor r12d, r12d
mov rcx, qword [rbp + 0x1e0]
test rcx, rcx
je 0x14006051b
mov eax, r15d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x14006051b
mov r8, qword [rcx + 0xc8]
test r8, r8
je 0x140060511
mov rax, qword [r8]
mov rdx, rcx
mov rcx, r8
call qword [rax]
jmp 0x14006051b
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
lea rcx, [r13 + 0x28]
call fcn.14015ac4c
mov rcx, qword [rbp + 0x318]
test rcx, rcx
je 0x140060a72
cmp byte [rcx + 0xb8], 0
jne 0x140060a72
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
mov rcx, qword [rbp + 0x328]
test rcx, rcx
je 0x140060a72
cmp byte [rcx + 0xd8], 0
jne 0x140060a72
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
mov rcx, qword [rbp + 0x308]
test rcx, rcx
je 0x140060a72
cmp byte [rcx + 0xb8], 0
jne 0x140060a72
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
mov rbx, qword [rbp + 0x240]
test rbx, rbx
je 0x140060a72
cmp byte [rbx + 0xb8], 0
jne 0x140060a72
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + ioctlsocket]
nop
mov eax, r15d
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x1400605ec
mov rcx, qword [rbp + 0x240]
mov r8, qword [rcx + 0xc8]
test r8, r8
je 0x1400605e1
mov rax, qword [r8]
mov rdx, rcx
mov rcx, r8
call qword [rax]
jmp 0x1400605ec
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
nop
mov rdi, qword [rbp + 0x328]
mov eax, r15d
lock xadd dword [rdi + 8], eax
cmp eax, 1
jne 0x14006062b
mov rcx, qword [rbp + 0x328]
mov r8, qword [rcx + 0xe8]
test r8, r8
je 0x140060620
mov rax, qword [r8]
mov rdx, rcx
mov rcx, r8
call qword [rax]
jmp 0x14006062b
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
nop
mov rsi, qword [rbp + 0x318]
mov eax, r15d
lock xadd dword [rsi + 8], eax
cmp eax, 1
jne 0x14006066a
mov rcx, qword [rbp + 0x318]
mov r8, qword [rcx + 0xc8]
test r8, r8
je 0x14006065f
mov rax, qword [r8]
mov rdx, rcx
mov rcx, r8
call qword [rax]
jmp 0x14006066a
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
nop
mov r14, qword [rbp + 0x308]
mov eax, r15d
lock xadd dword [r14 + 8], eax
cmp eax, 1
jne 0x1400606aa
mov rcx, qword [rbp + 0x308]
mov r8, qword [rcx + 0xc8]
test r8, r8
je 0x14006069f
mov rax, qword [r8]
mov rdx, rcx
mov rcx, r8
call qword [rax]
jmp 0x1400606aa
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
nop
mov rcx, qword [rbp + 0x3b8]
call fcn.14006c870
mov eax, r15d
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x1400606ee
mov rcx, qword [rbp + 0x3b8]
mov r8, qword [rcx + 0xc8]
test r8, r8
je 0x1400606e3
mov rax, qword [r8]
mov rdx, rcx
mov rcx, r8
call qword [rax]
jmp 0x1400606ee
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
nop
mov rcx, qword [rbp + 0x338]
call fcn.14006c430
mov eax, r15d
lock xadd dword [rdi + 8], eax
cmp eax, 1
jne 0x140060732
mov rcx, qword [rbp + 0x338]
mov r8, qword [rcx + 0xe8]
test r8, r8
je 0x140060727
mov rax, qword [r8]
mov rdx, rcx
mov rcx, r8
call qword [rax]
jmp 0x140060732
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
nop
mov rbx, qword [rbp + 0x2f0]
test rbx, rbx
je 0x140060783
mov rcx, rbx
call fcn.14006c870
test rbx, rbx
je 0x140060783
mov eax, r15d
lock xadd dword [rsi + 8], eax
cmp eax, 1
jne 0x140060783
mov rcx, qword [rbp + 0x2f0]
mov r8, qword [rcx + 0xc8]
test r8, r8
je 0x140060778
mov rax, qword [r8]
mov rdx, rcx
mov rcx, r8
call qword [rax]
jmp 0x140060783
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
nop
mov rbx, qword [rbp + 0x3d0]
test rbx, rbx
je 0x1400607d3
mov rcx, rbx
call fcn.14006c870
test rbx, rbx
je 0x1400607d3
lock xadd dword [r14 + 8], r15d
cmp r15d, 1
jne 0x1400607d3
mov rcx, qword [rbp + 0x3d0]
mov r8, qword [rcx + 0xc8]
test r8, r8
je 0x1400607c8
mov rax, qword [r8]
mov rdx, rcx
mov rcx, r8
call qword [rax]
jmp 0x1400607d3
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
nop
mov rdx, qword [rbp + 0x368]
cmp rdx, 0x10
jb 0x140060814
inc rdx
mov rcx, qword [rbp + 0x350]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006080f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060a55
call fcn.14015b55c
mov qword [rbp + 0x360], r12
mov qword [rbp + 0x368], send
mov byte [rbp + 0x350], 0
mov rdx, qword [rbp + 0x470]
cmp rdx, 0x10
jb 0x14006086e
inc rdx
mov rcx, qword [rbp + 0x458]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140060869
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060a5b
call fcn.14015b55c
mov qword [rbp + 0x468], r12
mov qword [rbp + 0x470], send
mov byte [rbp + 0x458], 0
mov rdx, qword [rbp + 0x390]
cmp rdx, 0x10
jb 0x1400608c8
inc rdx
mov rcx, qword [rbp + 0x378]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400608c3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060a61
call fcn.14015b55c
mov qword [rbp + 0x388], r12
mov qword [rbp + 0x390], send
mov byte [rbp + 0x378], 0
mov rdx, qword [rbp + 0x3b0]
cmp rdx, 0x10
jb 0x140060922
inc rdx
mov rcx, qword [rbp + 0x398]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006091d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060a88
call fcn.14015b55c
mov qword [rbp + 0x3a8], r12
mov qword [rbp + 0x3b0], send
mov byte [rbp + 0x398], 0
mov rdx, qword [rbp + 0x268]
cmp rdx, 0x10
jb 0x14006097c
inc rdx
mov rcx, qword [rbp + 0x250]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140060977
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060a8e
call fcn.14015b55c
mov qword [rbp + 0x260], r12
mov qword [rbp + 0x268], send
mov byte [rbp + 0x250], 0
mov rdx, qword [rbp + 0x288]
cmp rdx, 0x10
jb 0x1400609d2
inc rdx
mov rcx, qword [rbp + 0x270]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400609cd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060a04
call fcn.14015b55c
mov rcx, qword [rbp + 0x498]
xor rcx, rsp
call fcn.14015b500
mov rbx, qword [rsp + 0x600]
movaps xmm6, xmmword [rsp + 0x5a0]
add rsp, 0x5b0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.140162118
nop
call fcn.140162118
nop
call fcn.140162118
int3
call fcn.140162118
nop
call fcn.140162118
nop
call fcn.140162118
nop
call fcn.140162118
nop
mov ecx, 3
call fcn.140039300
int3
mov ecx, 5
call fcn.14015a9b8
int3
dec eax
mov dword [r13 + 0x74], eax
mov ecx, 6
call fcn.14015a9b8
nop
call fcn.140162118
nop
call fcn.140162118
nop
call fcn.140162118
nop
mov ecx, 4
call fcn.140039300
int3
mov ecx, 4
call fcn.140039300
int3
mov ecx, 3
call fcn.140039300
nop
call fcn.140162118
nop
call fcn.140162118
int3