Function at 0x1d8c31000
Capabilities:
Authenticate hmac
Encode data using base64
Encode data using xor

Disassembly:
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x50
mov word [rsp + 0x40], 0x5140
mov byte [rsp + 0x42], 0
push r13
sub r13d, 0x15
push r10
emms
psrlq mm3, 0xe
pop r10
rcr r13b, 1
pop r13
mov dword [rsp + 0x48], 0x675e5023
mov byte [rsp + 0x4c], 0
push r15
nop
push r12
psrad mm4, 0x54
psrad mm1, 0x2e
push rdx
psrlq mm4, 0x4e
dec r12d
emms
push r13
psubusw mm7, mm1
emms
shr r12d, 1
shl r15b, 4
push rbx
pandn mm0, mm2
nop
emms
shr r13b, 6
rol dx, 4
pop rbx
emms
emms
orps xmm5, xmm13
emms
pop r13
nop
emms
pand mm3, mm2
pop rdx
nop
sar r12d, 0xc
pop r12
emms
pop r15
lea rsi, [rsp + 0x48]
lea r12, [rsp + 0x40]
mov rdx, rsi
mov rcx, r12
call sub.msvcrt.dll__mbscmp
test eax, eax
jne 0x1d8c310fd
mov rax, r12
lea rdx, [rsp + 0x42]
push r9
rcr r9, 0xc
emms
push rbx
psrad mm4, 0x17
pop rbx
nop
inc r9
pop r9
xor byte [rax], 0x55
push rax
emms
pcmpgtb mm0, mm7
psllq mm4, 0x69
emms
dec eax
push r15
addss xmm6, xmm0
emms
psrlw mm4, 8
nop
nop
pop r15
nop
dec rax
emms
ror rax, 0x16
not ax
andps xmm11, xmm8
pop rax
inc rax
cmp rax, rdx
jne 0x1d8c310ac
jmp 0x1d8c31111
push rcx
emms
nop
sub rcx, 0xf
nop
packssdw mm5, mm7
ror cx, 0xc
inc rcx
pop rcx
push rcx
neg cl
push r11
add rcx, r11
push r8
pand mm3, mm4
pop r8
rcr r11w, 5
pop r11
emms
pop rcx
push rbx
nop
push rdx
nop
push r11
pandn mm1, mm3
push r10
nop
push r13
emms
push r12
nop
pop r12
psrlq mm2, 0x3f
pop r13
emms
pop r10
emms
pop r11
addss xmm2, xmm0
pop rdx
sub bx, 0x14
pop rbx
xor ecx, ecx
mov qword [rsp + 0x38], rcx
push r12
psrlq mm0, 0x1e
por mm4, mm5
maxss xmm14, xmm13
psraw mm1, 0x62
neg r12
pxor mm4, mm0
nop
pop r12
movabs rax, 0x7c004b002e
mov qword [rsp + 0x40], 0x40000
mov qword [rsp + 0x48], rax
cmp r15w, 0x62
jne 0x1d8c311aa
push r12
paddb mm3, mm0
push rax
psllq mm1, 0x4b
nop
pop rax
emms
pop r12
jmp 0x1d8c311bc
push r14
inc r14d
push rdx
por mm1, mm2
emms
pop rdx
rcpps xmm15, xmm9
pop r14
push rbx
paddd mm6, mm5
push r10
nop
psrad mm7, 0x2b
pop r10
shl bx, 0x12
pop rbx
mov dword [rsp + 0x30], 0x510059
mov word [rsp + 0x34], 0
push rcx
psrad mm0, 0x3a
pop rcx
lea rdi, [rsp + 0x30]
mov rcx, rsi
mov rdx, rdi
call sub.msvcrt.dll_wcscmp
test eax, eax
jne 0x1d8c31234
push r10
not r10
push r15
psrlw mm0, 0x61
push rax
ror r15b, 0x16
push rcx
paddsw mm1, mm2
push r8
inc r15d
push r12
movups xmm2, xmm1
pop r12
emms
pop r8
addss xmm14, xmm4
pop rcx
xadd r15d, r10d
pop rax
psrld mm3, 0x33
pop r15
neg r10w
pop r10
jmp 0x1d8c31268
push rdx
mov rdx, 2
push r13
mov r13b, 0xe
push r12
nop
emms
push rax
rcpss xmm7, xmm9
shl r13w, 0x11
and r13b, r12b
pop rax
emms
pminsw mm3, mm0
pop r12
pslld mm3, 0x36
pop r13
dec rdx
jne 0x1d8c3123c
pop rdx
push r9
rol r9d, 2
push r15
psubsb mm3, mm2
psraw mm1, 0x5c
pop r15
nop
pop r9
xor edx, edx
mov dword [rsp + 0x30], edx
push r12
movss xmm0, xmm1
rcpss xmm4, xmm6
push r9
psrld mm1, 8
nop
push r10
nop
sbb r9w, 7
push rbx
emms
andnps xmm1, xmm4
pop rbx
psrlw mm1, 0x4f
shl r12w, 0x11
pop r10
sub r9d, 0x17
emms
pop r9
inc r12d
psllq mm3, 0x2d
pop r12
lea rbp, [rsp + 0x38]
mov r9, r12
xor r8d, r8d
or rcx, 0xffffffffffffffff
mov dword [rsp + 0x28], 4
mov rdx, rbp
mov dword [rsp + 0x20], 0x3000
call fcn.1d8c441ec
push r11
mov r11, 1
push r12
inc r12
push rdx
nop
nop
push r14
maxss xmm0, xmm5
pminsw mm2, mm7
emms
pop r14
xadd r12b, dl
emms
pop rdx
sar r12b, 0x17
pop r12
dec r11
jne 0x1d8c312ee
pop r11
call fcn.1d8c528c3
mov rdx, qword [rsp + 0x38]
mov r9, rdi
mov r8d, 0x40000
mov ecx, 5
call fcn.1d8c44a26
push r14
sbb r14, 0xc
pminsw mm3, mm6
nop
ror r14b, 9
push r11
emms
inc r14
neg r11w
sar r14d, 0xe
pop r11
dec r14d
psrad mm3, 0x2a
nop
paddsb mm2, mm4
pop r14
mov ebx, 0x40000
cmp eax, 0xc0000004
jne 0x1d8c31db7
push r8
nop
push r14
emms
addss xmm1, xmm4
push rcx
orps xmm4, xmm2
movss xmm15, xmm1
psrld mm7, 0x28
push r12
emms
inc rcx
nop
subss xmm1, xmm7
pop r12
mulss xmm5, xmm13
sub ecx, r8d
emms
pop rcx
addps xmm5, xmm11
mulss xmm3, xmm14
pop r14
pcmpgtb mm5, mm4
pop r8
mov edx, 1
mov ecx, 3
call sub.msvcrt.dll_calloc
mov rcx, rax
push r11
nop
rcr r11d, 0xa
psllq mm6, 0x2b
push rdx
pcmpeqw mm0, mm3
nop
shr rdx, 6
push r15
adc r15d, edx
xor dx, r15w
push rcx
inc rdx
nop
pop rcx
nop
psrld mm5, 0x1d
paddusw mm3, mm6
pop r15
punpckhwd mm7, mm2
psrad mm5, 0x3d
pop rdx
emms
nop
pop r11
mov edx, 0x1b
call sub.msvcrt.dll_realloc
mov rcx, rax
xor eax, eax
push r10
mov r10, 2
push r13
push rax
pop rax
pop r13
dec r10
jne 0x1d8c31415
pop r10
xor byte [rcx + rax], 3
cmp r15, r14
je 0x1d8c315b8
cmp r15, 0x16
jne 0x1d8c31447
push rcx
dec ecx
push r15
inc ecx
sbb ecx, 6
pop r15
dec rcx
pop rcx
jmp 0x1d8c31457
push rax
addps xmm6, xmm3
push r9
inc rax
emms
pop r9
sbb al, 6
pop rax
push r10
emms
push r8
inc r10
pslld mm7, 0x34
pop r8
nop
pop r10
cmp r8d, eax
je 0x1d8c315c6
push rax
nop
psllq mm0, 0x41
rcpps xmm1, xmm15
push rcx
nop
and rax, rcx
push rdx
psrlq mm1, 0x1b
pop rdx
psrld mm3, 0x1c
subss xmm2, xmm9
pop rcx
punpckhwd mm2, mm0
psrad mm2, 0x10
paddsw mm7, mm6
pop rax
cmp r15b, 0x64
je 0x1d8c315f0
push r10
pcmpeqw mm2, mm1
nop
shl r10d, 9
rol r10, 0xa
push r14
punpcklbw mm0, mm6
sbb r14d, r10d
emms
push rax
shl r10, 9
comiss xmm3, xmm6
push rbx
pandn mm6, mm7
pop rbx
emms
psllq mm6, 0x19
pop rax
psrad mm5, 0x1a
sub r10, r14
pminsw mm1, mm0
pop r14
rcr r10, 7
nop
psrlw mm1, 6
shl r10w, 0xb
pop r10
cmp r9d, 2
je 0x1d8c31629
push r8
ucomiss xmm8, xmm12
push r13
pcmpeqd mm2, mm4
push r14
nop
push rdx
nop
push rax
emms
push rcx
psllq mm4, 0x47
push rbx
punpckhwd mm6, mm4
pop rbx
rcl r14d, 1
pop rcx
rol rax, 2
pop rax
emms
pop rdx
mulss xmm5, xmm12
pop r14
psraw mm3, 0x2c
pop r13
mulps xmm4, xmm2
pop r8
cmp r8w, 0xf
je 0x1d8c31675
push rax
mov rax, 0xa
psraw mm1, 0x52
orps xmm6, xmm7
pmullw mm7, mm6
shr al, 0xb
push r13
inc eax
add r13, rax
mov eax, r13d
not ax
push r15
dec eax
mulps xmm13, xmm0
neg r15b
push r8
not r13
emms
push r12
psrad mm3, 0x17
pop r12
emms
emms
pop r8
inc r15
subss xmm1, xmm15
nop
pop r15
emms
nop
movss xmm15, xmm1
ror r13, 7
pop r13
emms
movaps xmm9, xmm10
punpckhbw mm6, mm4
shr al, 0x14
emms
pop rax
cmp rbx, 0x21
je 0x1d8c316b6
jne 0x1d8c316fb
push r8
rol r8w, 0x12
pop r8
jmp 0x1d8c316fb
cmp r15w, 0x24
jne 0x1d8c315dc
push rcx
not cl
pop rcx
jmp 0x1d8c315e3
push rbx
addss xmm13, xmm4
pop rbx
push r8
pslld mm2, 0x5c
pop r8
jmp 0x1d8c316fb
push r14
nop
movss xmm1, xmm2
push rax
psrad mm3, 0x12
movss xmm7, xmm15
push r11
rcpss xmm6, xmm2
emms
push r8
nop
nop
pop r8
psraw mm3, 0x3b
emms
pop r11
packuswb mm3, mm1
psubsb mm0, mm2
pop rax
nop
punpcklbw mm6, mm5
pop r14
jmp 0x1d8c316fb
push rax
nop
psrad mm1, 0x56
push rdx
psllq mm4, 0x54
not dx
push rcx
xorps xmm13, xmm2
shr eax, 9
push r11
paddb mm6, mm2
psrlq mm4, 0x1f
push r14
sub r11w, 0x12
ror r11d, 0xa
pop r14
psrlq mm4, 0x4f
mov ecx, r11d
pop r11
emms
neg eax
pop rcx
shl dl, 0xa
pmullw mm4, mm5
pop rdx
nop
shl ax, 0xf
pop rax
jmp 0x1d8c316fb
push r15
pmaxub mm7, mm4
inc r15d
psubusw mm6, mm4
emms
emms
push r12
psraw mm3, 0x28
sbb r15d, r12d
subss xmm10, xmm12
test r15, r12
sbb r12w, 0xf
pop r12
movss xmm1, xmm9
sar r15w, 0x16
not r15
nop
ror r15d, 0xc
psrlq mm1, 0xc
pop r15
jmp 0x1d8c316fb
cmp r15, 0xd
jne 0x1d8c316d5
push r13
mov r13, 0x17
push rdx
dec r13d
psrlw mm5, 0x2b
pop rdx
paddw mm1, mm0
pop r13
jmp 0x1d8c316e5
push rbx
not bl
push r12
nop
shr r12d, 1
pop r12
maxps xmm11, xmm12
pop rbx
push r15
psadbw mm6, mm0
push r9
inc r9
pxor mm2, mm4
pop r9
rcr r15w, 5
pop r15
push r12
rcr r12, 0x10
sar r12w, 1
push r14
or r12d, r14d
emms
push rcx
minps xmm11, xmm14
movss xmm2, xmm1
push rbx
nop
rcr r14d, 0x16
push r8
emms
add r8, rbx
pop r8
comiss xmm2, xmm15
nop
pop rbx
mov r12d, r14d
nop
pop rcx
sub r12, r14
minps xmm15, xmm1
pop r14
nop
movlhps xmm15, xmm2
pop r12
inc rax
cmp rax, 3
jne 0x1d8c3140c
call sub.msvcrt.dll_free
push r11
movss xmm2, xmm7
push r12
nop
nop
push r13
inc r11d
inc r11d
pcmpeqd mm3, mm0
pop r13
nop
addss xmm8, xmm3
pop r12
paddusb mm7, mm1
pop r11
mov r9d, 0x8000
mov r8, r12
mov rdx, rbp
or rcx, 0xffffffffffffffff
call fcn.1d8c4b380
push r14
neg r14d
minps xmm5, xmm15
push rcx
xor r14, rcx
neg cl
push rbx
pmullw mm6, mm2
sub ebx, r14d
push r9
rcr cl, 0xf
not rbx
pop r9
emms
pslld mm6, 0x33
pop rbx
psrad mm3, 0x2a
xorps xmm11, xmm6
pop rcx
pmaxub mm1, mm7
pmaxub mm4, mm3
pop r14
xor eax, eax
mov qword [rsp + 0x38], rax
movabs rax, 0x7500730044
mov qword [rsp + 0x48], rax
push rbx
inc ebx
psllq mm1, 0x27
push r8
pmaxub mm3, mm4
pop r8
not rbx
psrlq mm3, 0x55
pop rbx
mov rcx, rsi
call sub.msvcrt.dll_wcslen
cmp rax, 5
jne 0x1d8c3182d
push r12
pmaxub mm1, mm7
nop
neg r12b
push r11
emms
emms
push r8
ror r8w, 0xe
pop r8
neg r12w
nop
pop r11
psrad mm4, 0x25
shl r12d, 5
dec r12d
pop r12
jmp 0x1d8c3191d
mov rax, rsi
lea rdx, [rsp + 0x4e]
push r15
dec r15
movhlps xmm3, xmm5
push r11
psllq mm6, 0x5f
pop r11
nop
shl r15, 3
pop r15
xor word [rax], 0x26
cmp r15b, 0x4a
jne 0x1d8c318db
push rcx
pand mm2, mm0
push r13
emms
push r11
punpckldq mm2, mm3
push r8
emms
pop r8
punpckhbw mm0, mm5
pop r11
subps xmm14, xmm15
pop r13
emms
pop rcx
jmp 0x1d8c31900
push rax
emms
neg al
emms
rcpss xmm14, xmm13
push r15
sbb rax, 6
nop
emms
xorps xmm12, xmm10
pop r15
inc eax
pxor mm2, mm1
neg rax
nop
pop rax
push r14
dec r14
push r11
nop
pop r11
movlhps xmm10, xmm12
pop r14
add rax, 2
cmp rax, rdx
jne 0x1d8c31835
push r8
por mm5, mm4
paddsw mm7, mm6
psrad mm4, 0x68
push r15
pcmpeqb mm0, mm1
not r8d
psrld mm0, 0x23
push r14
comiss xmm0, xmm3
dec r8
emms
pop r14
addss xmm14, xmm5
mov r8, r15
comiss xmm0, xmm15
pop r15
dec r8
inc r8
nop
pop r8
mov eax, dword [rsp + 0x30]
add eax, 0x4000
mov rbx, rax
push r8
psrlq mm6, 0x25
push rcx
emms
sbb r8d, 5
push r11
packuswb mm7, mm1
psraw mm0, 0x47
punpckldq mm4, mm3
pop r11
rcr ecx, 0xb
sub r8w, cx
pop rcx
emms
pop r8
mov qword [rsp + 0x48], rax
push r8
nop
push r14
emms
addss xmm1, xmm4
push rcx
orps xmm4, xmm2
movss xmm15, xmm1
psrld mm7, 0x28
push r12
emms
inc rcx
nop
subss xmm1, xmm7
pop r12
mulss xmm5, xmm13
sub ecx, r8d
emms
pop rcx
addps xmm5, xmm11
mulss xmm3, xmm14
pop r14
pcmpgtb mm5, mm4
pop r8
mov edx, 1
mov ecx, 3
call sub.msvcrt.dll_calloc
mov rcx, rax
push r11
nop
rcr r11d, 0xa
psllq mm6, 0x2b
push rdx
pcmpeqw mm0, mm3
nop
shr rdx, 6
push r15
adc r15d, edx
xor dx, r15w
push rcx
inc rdx
nop
pop rcx
nop
psrld mm5, 0x1d
paddusw mm3, mm6
pop r15
punpckhwd mm7, mm2
psrad mm5, 0x3d
pop rdx
emms
nop
pop r11
mov edx, 0x1b
call sub.msvcrt.dll_realloc
mov rcx, rax
xor eax, eax
push r10
mov r10, 2
push r13
push rax
pop rax
pop r13
dec r10
jne 0x1d8c31a35
pop r10
xor byte [rcx + rax], 3
cmp r15, r14
je 0x1d8c31bd8
cmp r15, 0x16
jne 0x1d8c31a67
push rcx
dec ecx
push r15
inc ecx
sbb ecx, 6
pop r15
dec rcx
pop rcx
jmp 0x1d8c31a77
push rax
addps xmm6, xmm3
push r9
inc rax
emms
pop r9
sbb al, 6
pop rax
push r10
emms
push r8
inc r10
pslld mm7, 0x34
pop r8
nop
pop r10
cmp r8d, eax
je 0x1d8c31be6
push rax
nop
psllq mm0, 0x41
rcpps xmm1, xmm15
push rcx
nop
and rax, rcx
push rdx
psrlq mm1, 0x1b
pop rdx
psrld mm3, 0x1c
subss xmm2, xmm9
pop rcx
punpckhwd mm2, mm0
psrad mm2, 0x10
paddsw mm7, mm6
pop rax
cmp r15b, 0x64
je 0x1d8c31c10
push r10
pcmpeqw mm2, mm1
nop
shl r10d, 9
rol r10, 0xa
push r14
punpcklbw mm0, mm6
sbb r14d, r10d
emms
push rax
shl r10, 9
comiss xmm3, xmm6
push rbx
pandn mm6, mm7
pop rbx
emms
psllq mm6, 0x19
pop rax
psrad mm5, 0x1a
sub r10, r14
pminsw mm1, mm0
pop r14
rcr r10, 7
nop
psrlw mm1, 6
shl r10w, 0xb
pop r10
cmp r9d, 2
je 0x1d8c31c49
push r8
ucomiss xmm8, xmm12
push r13
pcmpeqd mm2, mm4
push r14
nop
push rdx
nop
push rax
emms
push rcx
psllq mm4, 0x47
push rbx
punpckhwd mm6, mm4
pop rbx
rcl r14d, 1
pop rcx
rol rax, 2
pop rax
emms
pop rdx
mulss xmm5, xmm12
pop r14
psraw mm3, 0x2c
pop r13
mulps xmm4, xmm2
pop r8
cmp r8w, 0xf
je 0x1d8c31c95
push rax
mov rax, 0xa
psraw mm1, 0x52
orps xmm6, xmm7
pmullw mm7, mm6
shr al, 0xb
push r13
inc eax
add r13, rax
mov eax, r13d
not ax
push r15
dec eax
mulps xmm13, xmm0
neg r15b
push r8
not r13
emms
push r12
psrad mm3, 0x17
pop r12
emms
emms
pop r8
inc r15
subss xmm1, xmm15
nop
pop r15
emms
nop
movss xmm15, xmm1
ror r13, 7
pop r13
emms
movaps xmm9, xmm10
punpckhbw mm6, mm4
shr al, 0x14
emms
pop rax
cmp rbx, 0x21
je 0x1d8c31cd6
jne 0x1d8c31d1b
push r8
rol r8w, 0x12
pop r8
jmp 0x1d8c31d1b
cmp r15w, 0x24
jne 0x1d8c31bfc
push rcx
not cl
pop rcx
jmp 0x1d8c31c03
push rbx
addss xmm13, xmm4
pop rbx
push r8
pslld mm2, 0x5c
pop r8
jmp 0x1d8c31d1b
push r14
nop
movss xmm1, xmm2
push rax
psrad mm3, 0x12
movss xmm7, xmm15
push r11
rcpss xmm6, xmm2
emms
push r8
nop
nop
pop r8
psraw mm3, 0x3b
emms
pop r11
packuswb mm3, mm1
psubsb mm0, mm2
pop rax
nop
punpcklbw mm6, mm5
pop r14
jmp 0x1d8c31d1b
push rax
nop
psrad mm1, 0x56
push rdx
psllq mm4, 0x54
not dx
push rcx
xorps xmm13, xmm2
shr eax, 9
push r11
paddb mm6, mm2
psrlq mm4, 0x1f
push r14
sub r11w, 0x12
ror r11d, 0xa
pop r14
psrlq mm4, 0x4f
mov ecx, r11d
pop r11
emms
neg eax
pop rcx
shl dl, 0xa
pmullw mm4, mm5
pop rdx
nop
shl ax, 0xf
pop rax
jmp 0x1d8c31d1b
push r15
pmaxub mm7, mm4
inc r15d
psubusw mm6, mm4
emms
emms
push r12
psraw mm3, 0x28
sbb r15d, r12d
subss xmm10, xmm12
test r15, r12
sbb r12w, 0xf
pop r12
movss xmm1, xmm9
sar r15w, 0x16
not r15
nop
ror r15d, 0xc
psrlq mm1, 0xc
pop r15
jmp 0x1d8c31d1b
cmp r15, 0xd
jne 0x1d8c31cf5
push r13
mov r13, 0x17
push rdx
dec r13d
psrlw mm5, 0x2b
pop rdx
paddw mm1, mm0
pop r13
jmp 0x1d8c31d05
push rbx
not bl
push r12
nop
shr r12d, 1
pop r12
maxps xmm11, xmm12
pop rbx
push r15
psadbw mm6, mm0
push r9
inc r9
pxor mm2, mm4
pop r9
rcr r15w, 5
pop r15
push r12
rcr r12, 0x10
sar r12w, 1
push r14
or r12d, r14d
emms
push rcx
minps xmm11, xmm14
movss xmm2, xmm1
push rbx
nop
rcr r14d, 0x16
push r8
emms
add r8, rbx
pop r8
comiss xmm2, xmm15
nop
pop rbx
mov r12d, r14d
nop
pop rcx
sub r12, r14
minps xmm15, xmm1
pop r14
nop
movlhps xmm15, xmm2
pop r12
inc rax
cmp rax, 3
jne 0x1d8c31a2c
call sub.msvcrt.dll_free
push r11
movss xmm2, xmm7
push r12
nop
nop
push r13
inc r11d
inc r11d
pcmpeqd mm3, mm0
pop r13
nop
addss xmm8, xmm3
pop r12
paddusb mm7, mm1
pop r11
xor r8d, r8d
mov r9, rsi
mov rdx, rbp
or rcx, 0xffffffffffffffff
mov dword [rsp + 0x28], 4
mov dword [rsp + 0x20], 0x3000
call fcn.1d8c441ec
push rbx
psraw mm7, 0x12
psrad mm7, 0x5a
push rdx
movss xmm0, xmm3
nop
push r9
nop
rcpss xmm5, xmm13
push r10
emms
maxps xmm11, xmm0
pop r10
add dl, r9b
inc r9d
pop r9
xchg edx, ebx
packuswb mm0, mm5
pop rdx
neg bx
paddd mm6, mm4
pop rbx
mov rdx, qword [rsp + 0x38]
mov r9, rdi
mov r8d, ebx
mov ecx, 5
call fcn.1d8c44a26
push r12
mov r12d, 0x16
nop
mov r12w, 0x16
paddsw mm1, mm0
push r9
sar r9d, 0xd
sub r9d, r12d
mulss xmm14, xmm6
orps xmm3, xmm14
pop r9
movhlps xmm8, xmm4
orps xmm5, xmm13
psrlq mm3, 0x3d
por mm5, mm3
pop r12
mov rax, qword [rsp + 0x38]
add rsp, 0x50
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret