Function at 0x44cf8b
Capabilities:
Authenticate hmac

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0xcf256c
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x118
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x14], ebx
mov eax, dword [ecx + 8]
mov dword [ebp - 0x20], ecx
cmp eax, 0x3ffffffe
jb 0x44d0c9
mov dword [ebp - 0x48], 0xf
lea edx, [ebp - 0x60]
xor eax, eax
mov ecx, 0x13
mov dword [ebp - 0x4c], eax
mov byte [ebp - 0x5c], al
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x2c], 0xd27f1c
mov dword [ebp - 0x30], edx
cmp eax, 0x10
mov dword [ebp - 0x28], 0x13
jb 0x44cffb
mov ebx, dword [ebp - 0x5c]
jmp 0x44cffe
lea ebx, [ebp - 0x5c]
mov edx, 0xd27f1c
cmp edx, ebx
jae 0x44d841
xor edx, edx
test edx, edx
je 0x44d062
cmp eax, 0x10
jb 0x44d01b
mov edx, dword [ebp - 0x5c]
jmp 0x44d01e
lea edx, [ebp - 0x5c]
lea eax, [ebp - 0x60]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], eax
mov ebx, 0xd27f1c
sub ebx, edx
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x38], ebx
cmp edx, ebx
jae 0x44d046
call 0xd320b8
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x28]
mov ebx, dword [ebp - 0x38]
mov eax, edx
sub eax, ebx
cmp ecx, eax
jb 0x44d050
mov ecx, eax
mov dword [ebp - 0x44], ecx
jmp 0x44d61c
mov dword [ebp - 0x34], 0x13
cmp eax, 0x13
jb 0x44d760
mov eax, dword [ebp - 0x34]
test eax, eax
ja 0x44d70e
mov dword [ebp - 4], 8
lea eax, [ebp - 0x60]
push eax
lea ecx, [ebp - 0x90]
call fcn.0044fcaf
push 0xe4a7c0
lea eax, [ebp - 0x90]
push eax
call 0xcff791
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x48]
cmp eax, 0x10
jae 0x44d700
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x48], 0xf
xor eax, eax
mov dword [ebp - 0x4c], eax
mov byte [ebp - 0x5c], al
mov ebx, dword [ebp + 0x10]
push 0x14
mov esi, dword [ecx + 4]
call 0xcfdd22
pop ecx
test eax, eax
je 0x44d0f3
mov dword [eax], esi
mov dword [eax + 4], ebx
mov dword [eax + 8], esi
mov esi, dword [ebp + 0x14]
mov edi, dword [esi]
mov dword [eax + 0xc], edi
xor edx, edx
mov byte [eax + 0x10], dl
mov byte [eax + 0x11], dl
mov esi, dword [ebp - 0x20]
mov edx, dword [ebp + 0x10]
mov ecx, dword [esi + 4]
add dword [esi + 8], 1
cmp edx, ecx
je 0x44d9c2
movzx ecx, byte [ebp + 0xc]
test ecx, ecx
je 0x44d11f
mov dword [edx], eax
mov ecx, dword [esi + 4]
cmp edx, dword [ecx]
je 0x44d868
jmp 0x44d12e
mov dword [edx + 8], eax
mov ecx, dword [esi + 4]
cmp edx, dword [ecx + 8]
je 0x44d9ba
mov edx, dword [eax + 4]
movsx ebx, byte [edx + 0x10]
mov ecx, eax
test ebx, ebx
jne 0x44d1e2
mov ebx, dword [ecx + 4]
mov edx, dword [ebx + 4]
mov edi, dword [edx]
cmp ebx, edi
je 0x44d8ce
movsx edx, byte [edi + 0x10]
mov dword [ebp + 0x10], edi
test edx, edx
jne 0x44d177
mov edx, 1
mov byte [ebx + 0x10], dl
mov byte [edi + 0x10], dl
mov ebx, dword [ecx + 4]
mov edi, dword [ebx + 4]
mov byte [edi + 0x10], 0
mov ecx, dword [ecx + 4]
mov ecx, dword [ecx + 4]
jmp 0x44d1d3
mov edx, dword [ebx]
cmp ecx, edx
je 0x44d882
mov byte [ebx + 0x10], 1
mov edx, dword [ecx + 4]
mov ebx, dword [edx + 4]
mov byte [ebx + 0x10], 0
mov edi, dword [ecx + 4]
mov ebx, dword [edi + 4]
mov edx, dword [ebx + 8]
mov edi, dword [edx]
mov dword [ebx + 8], edi
mov edi, dword [edx]
mov dword [ebp - 0x24], edi
movsx edi, byte [edi + 0x11]
test edi, edi
je 0x44d877
mov edi, dword [ebx + 4]
mov dword [edx + 4], edi
mov edi, dword [esi + 4]
cmp ebx, dword [edi + 4]
je 0x44d86f
mov edi, dword [ebx + 4]
cmp ebx, dword [edi]
je 0x44d1cc
mov dword [edi + 8], edx
jmp 0x44d1ce
mov dword [edi], edx
mov dword [edx], ebx
mov dword [ebx + 4], edx
mov edx, dword [ecx + 4]
movsx ebx, byte [edx + 0x10]
test ebx, ebx
je 0x44d13f
mov edx, dword [esi + 4]
mov ecx, dword [edx + 4]
mov edx, dword [ebp + 8]
test esi, esi
mov byte [ecx + 0x10], 1
mov dword [edx + 4], eax
mov dword [edx], 0
je 0x44d9aa
mov edi, dword [ebp - 0x1c]
mov ebx, dword [ebp - 0x14]
mov dword [edx], esi
mov esi, dword [ebp - 0x18]
mov eax, edx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x10
je 0x44d626
imul esp, dword [ebx - 0x28], 0xf412eb0c
sub al, 0x5c
sub bl, byte [eax]
les edi, [edi + 0x2a]
mov ebx, 0xebe3861
mov eax, 0x3c2ec978
and byte [ebx], dh
cwde
invalid
pushfd
sal eax, 0x5c
push esp
sbb byte [0xbd062d5d], bl
mov ebx, 0x79f8596a
pushal
mov ebp, 0xf8596abb
jns 0x44d68d
leave
sub al, 0x3b
je 0x44d5d6
insb byte es:[edi], dx
lea ebp, [ebx - 0x57828bf4]
push ecx
out 0xd, al
int3
jmp 0x5bddf3b2
hlt
cmp byte [ecx], ah
fidiv word [edx + 0x48]
inc ebx
inc ecx
jecxz 0x44d747
fisttp dword [ecx]
cmc
rcl dword [edi - 0x18], 0x9d
and ch, bl
push es
call 0x721f7be
aas
mov bh, 0x33
loopne 0x44d713
inc ecx
mov eax, 0x59ca430e
xlatb
shr dword [edi + 0x3c], 0xf7
into
jg 0x44d71c
out dx, al
int 0x75
repne insd dword es:[edi], dx
xor byte [eax], 0x80
ret 0x7af
sbb al, 0x78
salc
pop edi
outsd dx, dword [esi]
cmp dword [ecx - 0x27], edx
mov bl, bl
dec ecx
fcomi st(3)
dec ecx
mov bh, 0x6c
cdq
cwde
inc eax
invalid
push cs
cmp ebx, dword [ebx]
jbe 0x44d751
jns 0x44d7a0
xor eax, 0x3eb6248
jge 0x44d7e7
jb 0x44d799
je 0x44d7d8
xchg ebp, eax
pop edi
ret
cmpsd dword [esi], dword es:[edi]
xor al, 0xd6
adc byte [ecx + 0x3c084bec], cl
sub cl, byte [ebx + 0xc38fda5]
fnsave dword [ecx]
xchg ecx, eax
mov edi, 0x7dc69026
outsd dx, dword [esi]
or byte [edx + ebp], bh
mov esp, dword [ebp - 0x22f3c703]
xor dword [ecx - 0x396fd941], edx
jge 0x44d820
jno 0x44d80b
cmp eax, edi
inc eax
jns 0x44d7c1
or byte [ebp - 0x25], ch
invalid
insd dword es:[edi], dx
fcmovnb st(0), st(5)
cmc
add eax, 0xe64cdcac
insb byte es:[edi], dx
out 0x6c, al
lock and byte [ecx], ch
or ebx, dword [ebp + 0x16]
test al, 0xd8
sub byte [edx - 0xf], ch
js 0x44d7b9
and byte [ecx - 0x56], 0x36
fcomp qword [ecx]
pushfd
push ss
mov byte [esp + esi - 0xe], 0xb8
inc ecx
inc eax
jns 0x44d81e
mov bh, 0xff
xchg dword [edi], ebp
push cs
xchg byte [ecx + 0x50], cl
dec ecx
push eax
in al, dx
dec edx
push 0x785e4b6a
dec eax
sal dword [0x1b9528a0], 0x93
push 0x107dcdab
pop ss
invalid
sti
push es
popfd
js 0x44d7eb
lea ebp, [eax + 0x4f98d4a1]
or dword [edi - 0x38], ecx
inc esp
sar byte [ecx - 0x1d], 1
xlatb
nop
xor dword [ebx + 0x49], ecx
dec ebx
dec ecx
mov dh, 0xef
jle 0x44d83e
pushal
fstp dword [ecx - 0x17]
xchg dword [esi + 0x7f6ba559], ebx
enter 0xffffffffffffc7ae, 0x28
stosd dword es:[edi], eax
pop edx
invalid
test al, 0xc9
sub al, 0xf4
cmp al, 0xb9
mov dword [0xc3d5bb9c], eax
loope 0x44d853
hlt
jb 0x44d878
mov ah, 0xf5
fst dword [esi]
xor byte [0xc9348bb9], bl
nop
mov ecx, 0x90c9348b
dec esi
test eax, 0x93c6f059
iretd
ret
jle 0x44d889
cwde
cmp esp, esp
insd dword es:[edi], dx
mov eax, 0x5045e8a4
mov ah, byte [esi + esi*2 + 0x540c7278]
movsb byte es:[edi], byte [esi]
call 0xa4cf28c2
jbe 0x44d8f7
jb 0x44d88d
push esp
or dword [eax*8 + 0x16fb38d2], ebp
push 0x71
fsubr st(0)
inc edx
pushal
cld
fild qword [eax + eax*4]
mov dl, 0xfe
invalid
cdq
dec ebp
int3
sub edx, dword [edx + 0x60]
cmp dword [esi + 0x6b], esi
push cs
test eax, 0xf3edf40a
mov ecx, 0x2bf80e8b
imul byte [ebx + 0x5e]
stosb byte es:[edi], al
clc
xchg ebx, eax
invalid
stc
lcall 0xcc1a, 0xf059b86d
sbb cl, ah
jbe 0x44d8f1
jns 0x44d960
xor dword [eax + 0x62], 0x326de408
stosd dword es:[edi], eax
lodsb al, byte [esi]
lodsb al, byte [esi]
mov ch, byte [ecx]
loopne 0x44d8a7
inc esp
fstpnce st(4), st(0)
inc ecx
sub byte [ebp - 0x55894373], ch
int 0x3a
nop
inc edi
int 0x82
cld
invalid
bound edi, qword [edi + 0x28e68ddc]
sub dword gs:[eax + 0x6c], edx
sbb byte [esi - 0x12b699ca], dl
add al, 0x9e
test al, 0x27
mov ah, 0x67
mov bh, 0x16
invalid
inc eax
inc ecx
stc
and dl, byte [ebx + esi*4 - 0x80]
push es
invalid
in al, 0x67
invalid
dec ecx
mov ebp, 0x1803c7a1
shr cl, 0xc8
imul ebx, dword [esi*8 + 0x258a9298], 0x752c09c0
mov al, 0xbd
sbb byte [esi + 0x38], 0xe9
mov word [edx], ss
clc
jae 0x44d9f1
mov al, bl
mov dword [edx - 3], ebp
invalid
adc edx, ebp
test byte [ecx], ah
add byte [edi + 0x30347478], bh
call 0x1f0e6b1b
shl byte [ecx], 0x6d
int1
cdq
test dword [ebx - 0x3f1f08ee], ecx
xchg dword [ecx + ecx*8 - 0x7a], ebp
dec ecx
mov esi, ss
xor byte [eax - 0x7ecae0df], 0xc7
lodsb al, byte [esi]
fdivr qword [ebp - 0x6f]
dec eax
mov edi, 0xaf19a813
pop ss
mov dh, 0x81
shr byte [eax + ebp - 0x5406b305], 1
adc eax, 0x2cc8dbc9
dec esp
movsb byte es:[edi], byte [esi]
pop eax
mov ss, word [edx + 0x5fd3a798]
dec dword [eax - 0x7a]
retf 0xcb6a