Function at 0x1403c1c12
Capabilities:
Authenticate hmac

Disassembly:
push r15
inc r15b
rcr r15b, cl
xor r15d, edi
push r14
push r13
movzx ax, r12b
push r12
movsx r13, si
push rsi
push rdi
setb r15b
btc ax, 0xe4
ror ax, 0xbc
push rbp
push rbx
shl r13b, cl
stc
sub rsp, 0x2f8
mov r15, r9
mov r13, r8
cwde
mov r12, rcx
mov rsi, qword [rcx + 0x78]
mov rax, qword [rcx + 0x80]
jmp 0x1403c1c72
add rsi, 0x40
cmp ah, 0x38
jmp 0x1403c1c72
cmp rsi, rax
jmp 0x1403c1c7a
je 0x1403c1cfa
cmp qword [rsi], r13
jmp 0x1403c1c88
jne 0x1403c1c62
cmp qword [rsi + 8], rdx
jmp 0x1403c1c97
jne 0x1403c1c62
cmp rsi, rax
je 0x1403c1cfa
mov rdi, qword [rsi + 0x30]
cmp rdi, qword [rsi + 0x38]
jmp 0x1403c1cb3
je 0x1403c2693
mov qword [rdi + 0x38], 0
bts ecx, eax
add rcx, 0x5fc34ac7
test r14b, r15b
mov rcx, qword [r15 + 0x38]
cmc
test rcx, rcx
je 0x1403c1ceb
mov rax, qword [rcx]
mov rdx, rdi
call qword [rax]
mov qword [rdi + 0x38], rax
test bl, bpl
add qword [rsi + 0x30], 0x40
jmp 0x1403c1cf5
jmp 0x1403c2601
pxor xmm0, xmm0
movdqu xmmword [rsp + 0xb0], xmm0
sar ch, cl
sub r8, 0x5f58269c
ror r8, 0x81
movdqu xmmword [rsp + 0xa0], xmm0
rol r14w, cl
adc ch, 0x72
bsr r14, r15
movdqu xmmword [rsp + 0x90], xmm0
mov qword [rsp + 0x80], r13
rcl ch, cl
bt r8w, 0x42
mov r8, 0x10582d46
mov qword [rsp + 0x88], rdx
lea r14, [rsp + 0xa8]
adc r8w, r9w
mov r8, 0x12014724
movsx r8, dx
mov rcx, r14
sub edx, edx
movzx r8w, r14b
mov r8b, cl
xchg r8w, r8w
mov r8, r15
call fcn.1403eaf0c
mov rsi, qword [r12 + 0x80]
jmp 0x1403c1d8e
cmp rsi, qword [r12 + 0x88]
jmp 0x1403c1d9b
je 0x1403c1e78
movups xmm0, xmmword [rsp + 0x80]
add cl, r8b
neg cl
rcr rcx, 0xfb
movups xmmword [rsi], xmm0
shl ch, cl
mov rcx, qword [rsp + 0x90]
mov qword [rsi + 0x10], rcx
test rcx, rcx
jmp 0x1403c1dcb
je 0x1403c1ddc
mov rax, qword [rcx]
jmp 0x1403c1dd9
call qword [rax + ioctlsocket]
movdqu xmm0, xmmword [rsp + 0x98]
jmp 0x1403c1dea
movdqu xmmword [rsi + 0x18], xmm0
jmp 0x1403c1df4
pxor xmm0, xmm0
movdqu xmmword [rsi + 0x28], xmm0
bts cx, bx
mov qword [rsi + 0x38], 0
mov rcx, qword [rsp + 0xb0]
sub rcx, qword [rsp + 0xa8]
shl rbx, cl
rcr rbx, cl
shld ebx, edx, 0xeb
mov rbx, rcx
sar rbx, 6
test rcx, rcx
jmp 0x1403c1e32
je 0x1403c1f5c
js 0x1403c26ca
cmp rcx, 0xfc1
jmp 0x1403c1e4a
jb 0x1403c1e9b
or rcx, 0x27
jmp 0x1403c1e59
call fcn.1403fc89f
lea rdi, [rax + 0x27]
cmp r14b, 0x91
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x1403c1e73
jmp 0x1403c1eab
lea rcx, [r12 + 0x78]
lea r8, [rsp + 0x80]
bswap edx
mov dl, r13b
movsx rdx, bp
mov rdx, rsi
call fcn.1403eb5b4
jmp 0x1403c1f6c
call fcn.1403fc89f
mov rdi, rax
btr ebp, r8d
adc bpl, 0x7a
mov qword [rsi + 0x28], rdi
movsx ebp, si
btr ebp, r12d
xor rbp, rbp
mov qword [rsi + 0x30], rdi
rol bpl, cl
shl bpl, 0x9d
shl rbx, 6
add rbx, rdi
bswap bp
movsx bp, dil
mov qword [rsi + 0x38], rbx
movzx bp, bl
bswap bp
movsx bp, dil
mov rbx, qword [rsp + 0xa8]
mov rbp, qword [rsp + 0xb0]
jmp 0x1403c1ef8
jmp 0x1403c1f0c
add rdi, 0x40
cmc
stc
cmp bp, 0x82d
add rbx, 0x40
cmp rbx, rbp
je 0x1403c1f53
mov qword [rdi + 0x38], 0
xadd cx, cx
sbb cx, 0x2d2c
mov rcx, qword [rbx + 0x38]
cmp r13b, 0x2d
clc
test rcx, rcx
jmp 0x1403c1f37
je 0x1403c1efd
mov rax, qword [rcx]
mov rdx, rdi
jmp 0x1403c1f48
call qword [rax]
mov qword [rdi + 0x38], rax
jmp 0x1403c1efd
mov qword [rsi + 0x30], rdi
shrd ecx, r12d, 0x1f
add qword [r12 + 0x80], 0x40
jmp 0x1403c1f6c
lea rsi, [rsp + 0xc0]
cqo
movsx rdx, r11w
mov rcx, r12
setg dh
cqo
mov rdx, rsi
mov r8b, r14b
cmovg r8d, ebp
xchg r8w, r8w
mov r8, r13
jmp 0x1403c1f98
call fcn.1403c12be
cmp qword [rsp + 0xd8], 8
jmp 0x1403c1fab
jb 0x1403c1fb9
mov rsi, qword [rsp + 0xc0]
mov rcx, rsi
jmp 0x1403c1fc1
call qword [0x1400db2c8]
cmp eax, 0xffffffff
jmp 0x1403c1fcf
je 0x1403c23e2
cmp qword [rsp + 0xd8], 8
jb 0x1403c1ff6
mov rdi, qword [rsp + 0xc0]
jmp 0x1403c1ff1
jmp 0x1403c1ffe
lea rdi, [rsp + 0xc0]
mov qword [rsp + 0x48], 0
jmp 0x1403c200c
pxor xmm0, xmm0
movdqa xmmword [rsp + 0xe0], xmm0
lea rsi, [rsp + 0xf0]
mov r8d, 0x208
rcl rcx, cl
mov rcx, rsi
xor edx, edx
jmp 0x1403c2034
call fcn.1404580e6
movabs rax, 0x3ef5adecf5bd8ba9
movzx cx, dil
movsxd rcx, r14d
mov qword [rsp + 0x30], rax
not ah
mov cx, 0x405f
setle al
movabs rax, 0x5a57962aeadd070e
mov cx, r10w
movsxd rcx, esp
mov qword [rsp + 0x38], rax
xchg ch, cl
movsxd rcx, ecx
movabs rcx, 0x3ea9add3f5828bf5
jmp 0x1403c2083
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x58], rax
movzx ax, r8b
setns al
mov al, 0x27
lea rax, [rsp + 0x50]
jmp 0x1403c20a1
movdqa xmm0, xmmword [rsp + 0x30]
pxor xmm0, xmmword [rax]
movdqa xmmword [rsp + 0x30], xmm0
movd eax, xmm0
test ax, ax
je 0x1403c2111
lea rsi, [rsp + 0xf0]
shl cx, 0x23
cmp ch, 0x24
xchg cx, cx
lea rcx, [rsp + 0x32]
jmp 0x1403c20da
nop dword [rax]
mov word [rsi], ax
neg eax
shl ax, 0xf4
add rsi, 2
shrd ax, si, 0x29
and al, r11b
xadd rax, rax
movzx eax, word [rcx]
add rcx, 2
test bpl, 0xe3
cmc
test ax, ax
jmp 0x1403c210b
jne 0x1403c20de
mov word [rsi], 0
bt ax, 0x2d
movzx ax, bl
lea rax, [rsp + 0xee]
cmp spl, 0xfa
cmp word [rax + 2], 0
jmp 0x1403c2135
lea rax, [rax + 2]
jmp 0x1403c213e
jne 0x1403c212b
movzx ecx, word [rdi]
cmc
test cx, cx
jmp 0x1403c2150
je 0x1403c2195
add rdi, 2
cmc
test r12d, r12d
nop word [rax + rax]
test dl, r15b
cmc
mov word [rax], cx
cmovb rcx, rsp
add rax, 2
ror ch, 0xe1
movzx ecx, word [rdi]
test bp, r14w
add rdi, 2
cmp bpl, sil
cmc
test r10b, 0x31
test cx, cx
jne 0x1403c216b
mov word [rax], 0
mov qword [rsp + 0x30], 0
cmc
xor eax, eax
nop word cs:[rax + rax]
nop dword [rax]
cmp bx, 0x4d06
cmc
cmp word [rsp + rax + 0xf0], 0
jmp 0x1403c21c7
lea rax, [rax + 2]
jne 0x1403c21b9
lea ecx, [rax - 2]
jmp 0x1403c21d9
mov word [rsp + 0x30], cx
jmp 0x1403c21e3
mov word [rsp + 0x32], ax
movsx eax, dx
lea rax, [rsp + 0xf0]
mov qword [rsp + 0x38], rax
jmp 0x1403c21fd
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x50], xmm0
movdqa xmmword [rsp + 0x60], xmm0
mov dword [rsp + 0x50], 0x30
movsx ax, ah
cwde
mov dword [rsp + 0x68], 0x40
movzx ax, r12b
lea rax, [rsp + 0x30]
jmp 0x1403c2231
mov qword [rsp + 0x60], rax
jmp 0x1403c223b
movdqa xmmword [rsp + 0x70], xmm0
mov eax, dword [0x1400da018]
rcr r10b, 0x36
lea r10, [rsp + 0x48]
sbb edx, r15d
sub dl, r14b
lea r8, [rsp + 0x50]
btr r9, 0xf8
bswap r9
shld dx, r10w, 0x8f
lea r9, [rsp + 0xe0]
mov edx, 0x120089
test r12b, al
sub rsp, 0x60
mov qword [rsp + 0x28], 0
jmp 0x1403c228b
mov qword [rsp + 0x30], 0x80
jmp 0x1403c2299
mov qword [rsp + 0x38], 1
jmp 0x1403c22a7
mov qword [rsp + 0x40], 1
jmp 0x1403c22b5
mov qword [rsp + 0x48], 0x60
jmp 0x1403c22c3
mov qword [rsp + 0x50], 0
jmp 0x1403c22d1
mov qword [rsp + 0x58], 0
jmp 0x1403c22df
syscall
add rsp, 0x60
test eax, eax
jmp 0x1403c22ec
jne 0x1403c23e2
mov rsi, qword [rsp + 0x48]
test rsi, rsi
jmp 0x1403c22ff
je 0x1403c23e2
mov ecx, 0x20
call fcn.1403fc89f
mov qword [rax], r13
or r8w, 0x698f
rcr r8d, 0xc8
mov qword [rax + 8], rsi
bswap r8d
mov qword [rax + 0x10], r12
lea rcx, [rsp + 0x58]
bt r8, 0x24
mov qword [rsp + 0x28], rcx
cmc
mov dword [rsp + 0x20], 0
bt r8, 0x9b
btc r9d, r14d
lea r8, [0x1400555b0]
rcl r9b, cl
sub ecx, ecx
or r9b, 0x28
shr r9b, cl
movsxd r9, r10d
sub edx, edx
movsx r9, dx
setl r9b
mov r9, rax
jmp 0x1403c2370
call fcn.140464cd7
mov qword [rsp + 0x50], rax
test r13w, dx
test r8b, 0x8f
cmp al, r8b
test rax, rax
jmp 0x1403c238d
je 0x1403c26cf
cmp dword [rsp + 0x58], 0
jmp 0x1403c239d
je 0x1403c26f0
movdqu xmm0, xmmword [rsp + 0x50]
jmp 0x1403c23ae
movdqa xmmword [rsp + 0xf0], xmm0
lea rcx, [rsp + 0xf0]
jmp 0x1403c23c4
call fcn.14040ef55
test eax, eax
jmp 0x1403c23d0
je 0x1403c2433
mov ecx, eax
jmp 0x1403c23dd
call fcn.14040d094
mov rcx, qword [r12]
lea rax, [0x1400bc5c0]
cdq
not dh
mov qword [rsp + 0xf0], rax
movsxd r8, eax
cqo
xchg r8b, r8b
mov dword [rsp + 0xf8], 2
mov qword [rsp + 0x100], r13
lea r8, [rsp + 0xf0]
movzx dx, r13b
mov dx, 0x2db6
mov edx, 0x7d0
jmp 0x1403c242e
call fcn.1403969fc
mov rax, qword [rsp + 0xd8]
cmp rax, 8
jb 0x1403c24c0
mov rcx, qword [rsp + 0xc0]
cdq
bsf edx, r15d
lea rdx, [rax + rax]
cmp spl, sil
add rdx, 2
stc
cmp r8w, 0x1a1e
cmp rdx, 0x1000
jmp 0x1403c2470
jb 0x1403c24bb
mov rdx, rcx
clc
add rdx, 0xfffffffffffffff8
test r12, 0x2c3d17d9
test spl, bl
mov rcx, qword [rcx - 8]
sub rdx, rcx
clc
cmp rdx, 0x20
jmp 0x1403c2499
jae 0x1403c26c5
lea rax, [rax + rax]
add rax, 0x29
movsx rdx, sp
mov edx, 0x4dc33a5f
movsxd rdx, ecx
mov rdx, rax
jmp 0x1403c24bb
call fcn.140239321
mov rsi, qword [rsp + 0xa8]
test r15d, r15d
test cx, 0x25bc
test rsi, rsi
jmp 0x1403c24d8
je 0x1403c25dc
mov rdi, qword [rsp + 0xb0]
cmc
jmp 0x1403c24f0
cmp rsi, rdi
jmp 0x1403c24f8
jne 0x1403c2515
jmp 0x1403c2556
add rsi, 0x40
cmp rsi, rdi
jmp 0x1403c250f
je 0x1403c2544
mov rcx, qword [rsi + 0x38]
cmc
test rcx, rcx
je 0x1403c2503
cmp rsi, rcx
cbw
lahf
setne dl
mov rax, qword [rcx]
jmp 0x1403c2534
call qword [rax + 0x20]
mov qword [rsi + 0x38], 0
jmp 0x1403c2503
mov rsi, qword [rsp + 0xa8]
sal dx, 0x5c
rol edx, cl
cmp r13b, 0x6e
mov rdx, qword [rsp + 0xb8]
stc
sub rdx, rsi
cmp bl, ah
test ebx, 0x416756cf
cmp rdx, 0x1000
jmp 0x1403c2576
jb 0x1403c25b2
mov rax, qword [rsi - 8]
clc
cmp bpl, sil
sub rsi, rax
test r10d, r8d
add rsi, 0xfffffffffffffff8
test dil, r8b
cmp cl, r14b
cmp rsi, 0x20
jmp 0x1403c259d
jae 0x1403c26c5
or rdx, 0x27
jmp 0x1403c25ac
mov rsi, rax
mov ch, 0x59
mov rcx, rsi
jmp 0x1403c25ba
call fcn.140239321
pxor xmm0, xmm0
movdqu xmmword [r14], xmm0
test cl, r15b
bt cx, dx
jmp 0x1403c25d4
mov qword [r14 + 0x10], 0
mov rcx, qword [rsp + 0x90]
test sp, bx
clc
test rcx, rcx
jmp 0x1403c25f0
je 0x1403c2601
mov rax, qword [rcx]
jmp 0x1403c25fe
call qword [rax + 0x10]
mov rcx, qword [r15 + 0x38]
cmp rbp, 0x38c1fba
test rcx, rcx
jmp 0x1403c2614
je 0x1403c2649
cmp rcx, r15
setne dl
movsx eax, r9w
cdqe
movzx rax, sp
mov rax, qword [rcx]
jmp 0x1403c2632
call qword [rax + 0x20]
mov qword [r15 + 0x38], 0
bt r12w, 0xdf
movsxd rbp, ebp
mov sil, 0
add rsp, 0x2f8
movzx r12, bp
pop rbx
movsx r14, r14w
movzx edi, dx
movsx edi, bp
pop rbp
mov r14b, spl
pop rdi
movsx r13, di
movzx si, bl
pop rsi
setle r15b
movsx r15, cx
pop r12
movsx r14d, di
pop r13
not r15w
xchg r14w, r15w
pop r14
not r15w
jmp 0x1403c2690
pop r15
ret
add rsi, 0x28
bswap r8w
cmovo r8w, bx
mov r8, 0x3201257c
mov rcx, rsi
bswap r8d
movzx edx, si
mov rdx, rdi
mov r8, r15
jmp 0x1403c26bb
call fcn.1403eaf0c
jmp 0x1403c2601
call fcn.14046a291
call fcn.140375b60
mov dword [rsp + 0x58], 0
not cl
movsx cx, r12b
movsx ecx, dx
mov ecx, 6
jmp 0x1403c26eb
call fcn.14040d10d
mov ecx, 1
jmp 0x1403c26fa
call fcn.14040d10d
int3