Function at 0x1403d8936
Capabilities:
Authenticate hmac

Disassembly:
push rsi
push rdi
push rbx
add bh, al
inc di
sub rsp, 0x30
inc dil
add sil, 0x64
movaps xmmword [rsp + 0x20], xmm6
btr esi, r12d
movsx rdi, ax
add bl, r8b
mov rdi, rdx
adc rbx, r14
movsx ebx, ax
mov rsi, rcx
mov bx, bx
movsxd rbx, edx
mov rbx, qword [rcx + 8]
cmp r13, 0x40907a28
cmp rbx, qword [rcx + 0x10]
jmp 0x1403d897f
je 0x1403d8a19
xorps xmm6, xmm6
movups xmmword [rbx + 0x10], xmm6
rcl dx, 0x1b
adc r8w, 0x2c29
movzx r8, bx
movups xmmword [rbx], xmm6
test al, bh
cqo
mov r8, qword [rdi + 0x10]
cmp qword [rdi + 0x18], 8
mov rdx, rdi
jmp 0x1403d89b2
jb 0x1403d89bd
mov rdx, qword [rdi]
not ch
mov rcx, rbx
jmp 0x1403d89c5
call fcn.1403b6b62
lea rcx, [rbx + 0x20]
btr r8w, r12w
test r8b, dl
movups xmmword [rbx + 0x30], xmm6
add r8, rdi
test r15w, r8w
dec r8b
movups xmmword [rbx + 0x20], xmm6
not r8w
rol r8w, cl
xor r8w, cx
mov r8, qword [rdi + 0x30]
cmp r13b, sil
cmp qword [rdi + 0x38], 8
jmp 0x1403d8a05
jb 0x1403d8a67
mov rdx, qword [rdi + 0x20]
jmp 0x1403d8a14
jmp 0x1403d8a70
mov rcx, rsi
sub sil, 0x46
cmovns si, r9w
movsx edx, bx
mov rdx, rbx
adc bh, 0x27
shl bh, cl
mov r8, rdi
shrd rbx, rdi, 0x79
movaps xmm6, xmmword [rsp + 0x20]
btr esi, r9d
xchg dil, bl
movsx si, r14b
add rsp, 0x30
xchg dil, sil
not bl
pop rbx
xchg sil, sil
pop rdi
movzx si, r11b
pop rsi
jmp 0x1403d8a62
jmp 0x1403d8aec
lea rdx, [rdi + 0x20]
jmp 0x1403d8a70
call fcn.1403b6b62
movups xmm0, xmmword [rdi + 0x40]
bts rcx, rdx
movups xmmword [rbx + 0x40], xmm0
neg cx
mov rcx, qword [rdi + 0x50]
test bpl, 0xda
clc
cmc
mov qword [rbx + 0x50], rcx
stc
cmc
test rcx, rcx
jmp 0x1403d8a9c
je 0x1403d8aa8
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
mov rax, qword [rdi + 0x58]
add ch, 0x33
sal ecx, 0x4e
shr cx, 7
mov qword [rbx + 0x58], rax
movzx ebx, dx
clc
mov rax, qword [rsi + 8]
lea rcx, [rax + 0x60]
cmovbe ebx, r11d
clc
mov qword [rsi + 8], rcx
bts di, r14w
movaps xmm6, xmmword [rsp + 0x20]
add rsp, 0x30
pop rbx
pop rdi
xchg si, si
movzx esi, cx
pop rsi
jmp 0x1403d8aeb
ret
push r15
push r14
push r13
cwde
jmp 0x1403d8b07
push r12
stc
or r13b, 0x7a
push rsi
stc
xadd sil, sil
rcr ax, cl
push rdi
and r13b, 0x3f
ror di, cl
push rbp
push rbx
movsx r13w, r15b
inc eax
btr ebx, r10d
sub rsp, 0x68
movaps xmmword [rsp + 0x50], xmm7
ror dil, cl
movaps xmmword [rsp + 0x40], xmm6
test rbx, rax
mov rdi, rdx
shr r13b, cl
not ax
mov r13, rcx
cmovbe si, di
movsx si, r13b
add bp, r8w
mov rcx, qword [rcx]
mov rbp, qword [r13 + 8]
clc
sub rbp, rcx
sar rbp, 5
test r12b, 0x76
sar al, cl
cmp r9b, 0x6f
movabs rsi, 0xaaaaaaaaaaaaaaab
movzx bx, r15b
btr eax, edx
adc al, al
mov rax, rdx
and ebx, 0x758f7139
bsf bx, r15w
sub rax, rcx
movsx r14d, di
movabs rdx, 0x2aaaaaaaaaaaaaab
add bl, bl
add r14w, 0x2fb0
imul rdx
movzx r14w, r10b
mov r14, rdx
btr dx, 0xec
imul rbp, rsi
movzx edx, r9w
xchg bx, ax
jmp 0x1403d8bcc
inc rbp
cwde
sub al, 0x20
shr bh, 0x53
mov rax, qword [r13 + 0x10]
jmp 0x1403d8bde
sub rax, rcx
sar rax, 5
ror dx, cl
imul rax, rsi
shl rcx, cl
mov rbx, rax
movsx dx, r15b
xadd ch, cl
shr rbx, 1
mov cl, r15b
adc ch, cl
movabs rcx, 0x2aaaaaaaaaaaaaa
movsx rdx, r14w
cmp r9b, 0xc5
mov rdx, rcx
cmc
test r9b, 0xb6
test cl, dil
sub rdx, rbx
jmp 0x1403d8c27
add rbx, rax
test dil, 0xc0
cmp rbx, rbp
jmp 0x1403d8c36
cmovbe rbx, rbp
cmp rax, rdx
jmp 0x1403d8c42
cmova rbx, rcx
cmp rbx, rcx
ja 0x1403d9406
mov rsi, r8
mov rax, r14
stc
shr rax, 0x3f
bts rcx, rbp
sar r14, 4
add ch, 0x96
lea r14, [r14 + rax]
bt ax, 0xeb
bt ax, sp
mov rax, rbx
cmp r12w, r10w
cmc
shl rax, 5
adc cx, r15w
bswap cx
sar cl, cl
lea rcx, [rax + rax*2]
cmp rbx, 0x2b
jmp 0x1403d8c94
mov qword [rsp + 0x38], rbp
mov qword [rsp + 0x30], rbx
jb 0x1403d8ccd
add rcx, 0x27
jmp 0x1403d8cad
call fcn.14044b825
lea r12, [rax + 0x27]
cmp r15b, r9b
cmc
and r12, 0xffffffffffffffe0
jmp 0x1403d8cc3
mov qword [r12 - 8], rax
jmp 0x1403d8ceb
test rbx, rbx
jmp 0x1403d8cd5
je 0x1403d8ce8
call fcn.14044b825
mov r12, rax
jmp 0x1403d8ceb
xor r12d, r12d
lea r15, [r14 + r14*2]
shl r15, 5
lea rbx, [r12 + r15]
jmp 0x1403d8cfc
xorps xmm6, xmm6
movups xmmword [r12 + r15 + 0x10], xmm6
movups xmmword [r12 + r15], xmm6
mov r8, qword [rsi + 0x10]
stc
cmp qword [rsi + 0x18], 8
mov rdx, rsi
jmp 0x1403d8d1c
jb 0x1403d8d2b
mov rdx, qword [rsi]
xchg ch, cl
movzx cx, al
mov rcx, rbx
jmp 0x1403d8d33
call fcn.1403b6b62
lea rcx, [r12 + r15]
add rcx, 0x20
movups xmmword [r12 + r15 + 0x30], xmm6
bt r8w, 0x9e
movups xmmword [r12 + r15 + 0x20], xmm6
movsx r8d, r11w
bsr r8w, bp
movsx r8, bp
mov r8, qword [rsi + 0x30]
cmp r15w, 0x7296
cmp qword [rsi + 0x38], 8
jb 0x1403d8d82
mov rdx, qword [rsi + 0x20]
jmp 0x1403d8d7d
jmp 0x1403d8d86
lea rdx, [rsi + 0x20]
call fcn.1403b6b62
movups xmm0, xmmword [rsi + 0x40]
sal cx, cl
not ch
movups xmmword [r12 + r15 + 0x40], xmm0
and cx, sp
rcl cx, 0x60
cmp r14b, cl
mov rcx, qword [rsi + 0x50]
mov qword [r12 + r15 + 0x50], rcx
test rcx, rcx
jmp 0x1403d8db5
je 0x1403d8dc6
mov rax, qword [rcx]
jmp 0x1403d8dc3
call qword [rax + ioctlsocket]
mov rax, qword [rsi + 0x58]
btc r14d, 0xc2
xchg r14b, r14b
mov qword [r12 + r15 + 0x58], rax
add al, r11b
xadd r14b, al
mov r14, qword [r13]
ror ah, cl
cmp rdx, r8
or ah, 0x36
mov rax, r13
stc
cmp r11w, 0x6595
mov r13, qword [r13 + 8]
cmp r13, rdi
jmp 0x1403d8e00
je 0x1403d90c3
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rax
cmp r14, rdi
jmp 0x1403d8e18
je 0x1403d8f6c
xor esi, esi
jmp 0x1403d8e25
xorps xmm6, xmm6
movaps xmm7, xmmword [0x1400bd3f0]
jmp 0x1403d8e34
jmp 0x1403d8e5e
mov rax, qword [rbp + 0x58]
clc
mov qword [rbx + 0x58], rax
cmp r9w, 0x3942
add rsi, 0x60
add rbp, 0x60
cmp rbp, rdi
jmp 0x1403d8e58
je 0x1403d8f5b
lea rbp, [r14 + rsi]
shrd bx, si, 0x75
movsxd rbx, esp
lea rbx, [r12 + rsi]
jmp 0x1403d8e73
movups xmmword [r12 + rsi + 0x10], xmm6
bt cx, 0xfd
shr ecx, cl
sal cx, 0x2e
movups xmmword [r12 + rsi], xmm6
test sil, cl
btr ecx, 0xb7
movups xmm0, xmmword [r14 + rsi]
bt cx, r13w
movups xmm1, xmmword [r14 + rsi + 0x10]
rcl cl, cl
clc
btr cx, r8w
movups xmmword [r12 + rsi + 0x10], xmm1
movups xmmword [r12 + rsi], xmm0
movups xmmword [r14 + rsi + 0x10], xmm7
and rcx, r9
mov word [r14 + rsi], 0
movups xmmword [r12 + rsi + 0x30], xmm6
xor ecx, esp
sar cl, cl
bt cx, 0x58
movups xmmword [r12 + rsi + 0x20], xmm6
sar cl, cl
rcl ch, cl
movsxd rcx, edx
movups xmm0, xmmword [r14 + rsi + 0x20]
movups xmm1, xmmword [r14 + rsi + 0x30]
movups xmmword [r12 + rsi + 0x20], xmm0
movsxd rcx, edx
movups xmmword [r12 + rsi + 0x30], xmm1
movsx cx, r14b
and rcx, 0x50ab37b9
movups xmmword [r14 + rsi + 0x30], xmm7
bt ecx, 0x2d
bts cx, sp
btc cx, r12w
mov word [r14 + rsi + 0x20], 0
movups xmm0, xmmword [r14 + rsi + 0x40]
adc ch, 0x11
xor ch, 0x43
inc cl
movups xmmword [r12 + rsi + 0x40], xmm0
rcl ecx, cl
mov rcx, qword [r14 + rsi + 0x50]
clc
mov qword [r12 + rsi + 0x50], rcx
test rcx, rcx
jmp 0x1403d8f4a
je 0x1403d8e39
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
jmp 0x1403d8e39
mov rax, qword [rsp + 0x20]
mov r13, qword [rax + 8]
test r10b, dil
jmp 0x1403d8f6c
cmp r13, rdi
jmp 0x1403d8f74
je 0x1403d9231
lea rbx, [r15 + r12]
cmp edx, 0x140264fb
add rbx, 0x60
xor ebp, ebp
jmp 0x1403d8f8f
xorps xmm6, xmm6
movaps xmm7, xmmword [0x1400bd3f0]
jmp 0x1403d8f9e
jmp 0x1403d8fd9
mov rax, qword [rsi + 0x58]
test r13b, r15b
stc
mov qword [rbx + rbp + 0x58], rax
clc
add rbp, 0x60
cmp ebp, 0x3c3a5183
cmc
clc
add rsi, 0x60
cmp ax, 0x1e8a
clc
jmp 0x1403d8fcb
cmp rsi, r13
jmp 0x1403d8fd3
je 0x1403d9231
lea rsi, [rdi + rbp]
sal ecx, 0xe1
movups xmmword [rbx + rbp + 0x10], xmm6
btr rcx, rdx
bts cx, r11w
movsx ecx, r12w
movups xmmword [rbx + rbp], xmm6
bt rcx, 0x9e
bsf cx, r12w
ror cx, 0x62
movups xmm0, xmmword [rdi + rbp]
or cl, r9b
bts rcx, rdi
movups xmm1, xmmword [rdi + rbp + 0x10]
add cx, r8w
movups xmmword [rbx + rbp + 0x10], xmm1
movups xmmword [rbx + rbp], xmm0
or cl, cl
rcr rcx, cl
movups xmmword [rdi + rbp + 0x10], xmm7
stc
mov word [rdi + rbp], 0
movups xmmword [rbx + rbp + 0x30], xmm6
movups xmmword [rbx + rbp + 0x20], xmm6
bts cx, dx
dec cl
shl ecx, cl
movups xmm0, xmmword [rdi + rbp + 0x20]
cmovbe ecx, esp
movzx rcx, r13w
movups xmm1, xmmword [rdi + rbp + 0x30]
adc cl, sil
btc cx, r14w
movups xmmword [rbx + rbp + 0x20], xmm0
movups xmmword [rbx + rbp + 0x30], xmm1
sbb cx, 0x6e19
bswap cx
movups xmmword [rdi + rbp + 0x30], xmm7
sbb ch, 0xea
or cl, 0xac
rol rcx, cl
mov word [rdi + rbp + 0x20], 0
movups xmm0, xmmword [rdi + rbp + 0x40]
btr cx, 0x40
movups xmmword [rbx + rbp + 0x40], xmm0
mov ch, 0x5f
movsx cx, r8b
mov rcx, qword [rdi + rbp + 0x50]
mov qword [rbx + rbp + 0x50], rcx
test rcx, rcx
jmp 0x1403d90ad
je 0x1403d8fa3
mov rax, qword [rcx]
jmp 0x1403d90bb
call qword [rax + ioctlsocket]
jmp 0x1403d8fa3
cmp r14, rdi
jmp 0x1403d90cb
je 0x1403d93ef
mov qword [rsp + 0x28], rbx
jmp 0x1403d90db
mov qword [rsp + 0x20], rax
jmp 0x1403d90e5
xorps xmm6, xmm6
mov rsi, r12
jmp 0x1403d90f0
jmp 0x1403d913f
mov rax, qword [r14 + 0x58]
shld rsi, rsi, 0x39
bt esi, 0x41
cmovae si, r9w
mov qword [rbx + 0x38], rax
add r14, 0x60
sar esi, 0x4c
btr si, 0xb0
bsf si, r12w
add rbx, 0x40
rcr sil, cl
sar esi, cl
cmp di, 0x2b7b
mov rsi, rbx
test r11b, 0xb
cmp r14, rdi
jmp 0x1403d9139
je 0x1403d9231
movups xmmword [rsi + 0x10], xmm6
or rdx, rdx
ror dx, cl
dec edx
movups xmmword [rsi], xmm6
movzx edx, sp
shr dx, 0xe3
cmc
cmp qword [r14 + 0x18], 8
mov dl, 0x49
mov rdx, r14
jb 0x1403d9175
mov rdx, qword [r14]
mov r8w, r9w
movsx r8d, r12w
movsx r8, r9w
mov r8, qword [r14 + 0x10]
mov rcx, rsi
jmp 0x1403d9181
call fcn.1403b6b62
lea rbx, [rsi + 0x20]
btc r8d, 0x5c
sal r8, cl
movups xmmword [rsi + 0x30], xmm6
test r10, 0x29535dd4
neg r8
rcl r8b, cl
movups xmmword [rsi + 0x20], xmm6
movsx r8w, r12b
ror r8b, cl
mov r8, qword [r14 + 0x30]
clc
cmp qword [r14 + 0x38], 8
jmp 0x1403d91be
jb 0x1403d91d2
mov rdx, qword [r14 + 0x20]
jmp 0x1403d91cd
jmp 0x1403d91d9
lea rdx, [r14 + 0x20]
movsxd rcx, r10d
mov rcx, rbx
jmp 0x1403d91e1
call fcn.1403b6b62
movups xmm0, xmmword [r14 + 0x40]
shl ch, 0x71
sets ch
cmovs rcx, r10
movups xmmword [rsi + 0x40], xmm0
rcr cl, 0xa3
movzx cx, r12b
mov rcx, qword [r14 + 0x50]
cmp sil, r15b
mov qword [rsi + 0x50], rcx
clc
cmc
jmp 0x1403d9213
test rcx, rcx
jmp 0x1403d921b
je 0x1403d90f5
mov rax, qword [rcx]
jmp 0x1403d9229
call qword [rax + ioctlsocket]
jmp 0x1403d90f5
mov rbp, qword [rsp + 0x20]
shrd di, si, 0x93
inc rbx
mov rdi, qword [rbp]
sbb bl, 0x2d
rcr ebx, cl
shld ebx, r9d, 0xf6
mov rbx, qword [rsp + 0x28]
cmc
jmp 0x1403d9257
test rdi, rdi
jmp 0x1403d925f
je 0x1403d9310
mov rsi, qword [rbp + 8]
test r9, r8
cmp rdi, rsi
jmp 0x1403d9274
je 0x1403d92ae
nop dword [rax]
movsx rcx, cx
bswap ecx
mov rcx, rdi
jmp 0x1403d928b
call fcn.1403ce90f
add rdi, 0x60
cmc
cmp rsi, 0x654f6e92
cmp rdi, rsi
jne 0x1403d9283
mov rdi, qword [rbp]
or dx, 0x1e39
mov rdx, qword [rbp + 0x10]
test r9b, 1
cmp r9w, dx
sub rdx, rdi
cmp dl, 0x10
cmp rdx, 0x1000
jb 0x1403d9303
mov rax, qword [rdi - 8]
add rdi, 0xfffffffffffffff8
test r13b, 0xa6
sub rdi, rax
test bx, r12w
cmp r10w, 0x22db
cmp rdi, 0x20
jae 0x1403d940b
add rdx, 0x27
not rdi
mov rdi, rax
movzx ecx, r14w
not cl
movsx ecx, sp
mov rcx, rdi
jmp 0x1403d930b
call fcn.14010a1e6
mov qword [rbp], r12
movzx si, r12b
and r13b, r8b
movsx r13w, r13b
mov rax, qword [rsp + 0x38]
mov r14b, spl
lea rax, [rax + rax*2]
shl rax, 5
dec r15b
bt r13, r14
add rax, r12
mov qword [rbp + 8], rax
adc si, 0x5a7c
mov rax, qword [rsp + 0x30]
test r8w, si
shr r15, cl
movzx r14d, r14w
lea rax, [rax + rax*2]
or r15d, 0x2c4533f5
shl rax, 5
cmp r14b, 0x19
neg sil
sbb r15w, r9w
add rax, r12
or r15w, 0x1391
setl r14b
mov qword [rbp + 0x10], rax
sal bpl, 0xb8
neg r14b
mov rax, rbx
neg r15
ror r15w, cl
adc r12d, eax
movaps xmm6, xmmword [rsp + 0x40]
cmp r10w, r9w
rcl r12w, cl
movaps xmm7, xmmword [rsp + 0x50]
bsf r15w, bp
bsr r12w, dx
add rsp, 0x68
pop rbx
setae r13b
not dil
pop rbp
pop rdi
xchg sil, r15b
movsx r12d, di
pop rsi
not r14w
movzx r14w, r11b
pop r12
movzx r15d, r10w
pop r13
mov r14d, r9d
movsx r14d, r8w
pop r14
mov r15b, r13b
mov r15w, 0x6a1f
pop r15
jmp 0x1403d93ee
ret
mov rbp, rax
clc
test rdi, rdi
jmp 0x1403d93fb
jne 0x1403d9265
jmp 0x1403d9310
call fcn.1403b6607
call fcn.1404b973f
int3