Function at 0xf4caf8
Capabilities:
Authenticate hmac

Disassembly:
sub esp, 0x54
mov dword [esp + 0x48], 0x854767
xor edx, edx
mov dword [esp + 0x4c], 0x2ce60e
mov ecx, 0x19d6af2
push ebx
push ebp
push esi
push edi
xor edi, edi
mov dword [esp + 0x60], edi
mov dword [esp + 0x30], 0xbb488a
xor dword [esp + 0x30], 0xf640063e
add dword [esp + 0x30], 0xffff0a5a
xor dword [esp + 0x30], 0xf6fb590e
mov dword [esp + 0x2c], 0xbaaaf0
shl dword [esp + 0x2c], 0xc
or dword [esp + 0x2c], 0x3d458b7f
xor dword [esp + 0x2c], 0xbfe08b40
mov dword [esp + 0x1c], 0xfd6316
add dword [esp + 0x1c], 0x9212
or dword [esp + 0x1c], 0x3fbce7f
xor dword [esp + 0x1c], 0x3d23c979
xor dword [esp + 0x1c], 0x3ed86f1e
mov dword [esp + 0x4c], 0xaf4c49
xor dword [esp + 0x4c], 0xae1a5219
xor dword [esp + 0x4c], 0xaeb49709
mov dword [esp + 0x48], 0x7a7242
or dword [esp + 0x48], 0x3674c211
xor dword [esp + 0x48], 0x367130b6
mov dword [esp + 0x28], 0x51cba0
or dword [esp + 0x28], 0x33fa7294
shr dword [esp + 0x28], 5
xor dword [esp + 0x28], 0x19c808d
mov dword [esp + 0x54], 0xa4fa27
shr dword [esp + 0x54], 4
xor dword [esp + 0x54], 0xdd08e
mov dword [esp + 0x50], 0x11d157
imul eax, dword [esp + 0x50], 0x2c
push 0x32
pop esi
push 0x6f
mov dword [esp + 0x54], eax
xor dword [esp + 0x54], 0x30ab38f
mov dword [esp + 0x1c], 0x5d88e8
imul eax, dword [esp + 0x1c], 0x36
mov dword [esp + 0x1c], eax
add dword [esp + 0x1c], 0x1395
or dword [esp + 0x1c], 0xaec80a1
xor dword [esp + 0x1c], 0x1bf32606
mov dword [esp + 0x18], 0x56b44e
shl dword [esp + 0x18], 0xa
or dword [esp + 0x18], 0xf3ff59fe
xor dword [esp + 0x18], 0xfbf098f7
mov dword [esp + 0x14], 0x4d1ebc
mov eax, dword [esp + 0x14]
div esi
xor edx, edx
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x14]
pop esi
div esi
push 0x1b
mov dword [esp + 0x14], eax
xor edx, edx
add dword [esp + 0x14], 0x7072
xor dword [esp + 0x14], 0x2beb8
mov dword [esp + 0x28], 0x3fbf12
mov eax, dword [esp + 0x28]
pop esi
div esi
mov dword [esp + 0x24], eax
shl dword [esp + 0x24], 0xd
xor dword [esp + 0x24], 0x4b8cae53
mov dword [esp + 0x44], 0x923f91
imul eax, dword [esp + 0x44], 0x2a
mov dword [esp + 0x44], eax
xor dword [esp + 0x44], 0x17fdeabe
mov dword [esp + 0x40], 0x4a2273
or dword [esp + 0x40], 0xcfa45d89
xor dword [esp + 0x40], 0xcfea1ced
mov dword [esp + 0x3c], 0xba864d
shl dword [esp + 0x3c], 4
xor edx, edx
xor dword [esp + 0x3c], 0xbab4081
mov dword [esp + 0x38], 0x289a4c
xor dword [esp + 0x38], 0xa0890c24
or dword [esp + 0x38], 0x572fddfc
xor dword [esp + 0x38], 0xf7a16d52
mov dword [esp + 0x34], 0xedd2ad
shr dword [esp + 0x34], 9
add dword [esp + 0x34], 0x6d1e
xor dword [esp + 0x34], 0xc0e6f
mov dword [esp + 0x20], 0x9064c4
add dword [esp + 0x20], 0xfffff5fb
mov eax, dword [esp + 0x20]
push 0x2f
pop esi
div esi
mov ebp, dword [esp + 0x54]
mov ebx, dword [esp + 0x54]
mov esi, dword [esp + 0x54]
mov dword [esp + 0x20], eax
or dword [esp + 0x20], 0xfd59276a
xor dword [esp + 0x20], 0xfd588037
push 0x5c
pop edx
mov eax, 0xf9ff66d
cmp ecx, 0x19d6af2
je 0xf4ce70
cmp ecx, 0x1a7bf81
je 0xf4ce40
cmp ecx, 0x31e093a
je 0xf4ce12
cmp ecx, 0xb972e62
je 0xf4cdef
cmp ecx, 0xdad8879
je 0xf4cdd0
cmp ecx, 0xf37aee0
je 0xf4ce83
cmp ecx, eax
jne 0xf4ce75
push dword [esp + 0x24]
push ebp
push dword [esp + 0x18]
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
call fcn.00f5bf0d
xor ecx, ecx
add esp, 0xc
inc ecx
test eax, eax
cmovne edi, ecx
mov ecx, 0xdad8879
jmp 0xf4cd58
push dword [esp + 0x3c]
mov ecx, ebp
push dword [esp + 0x44]
mov edx, dword [esp + 0x4c]
call 0xf62350
pop ecx
pop ecx
mov ecx, 0xf37aee0
jmp 0xf4cd58
mov esi, dword [0xf6321c]
add esi, 0x22c
jmp 0xf4ce00
add esi, 2
cmp word [esi], dx
jne 0xf4cdfd
add esi, 2
mov ecx, 0x31e093a
jmp 0xf4cd5b
push dword [esp + 0x28]
push dword [esp + 0x4c]
push ecx
push dword [esp + 0x58]
mov edx, dword [esp + 0x3c]
push ecx
mov ecx, dword [esp + 0x30]
call fcn.00f4e083
mov ebx, eax
add esp, 0x14
test ebx, ebx
je 0xf4ce98
mov ecx, 0x1a7bf81
jmp 0xf4cd58
push dword [esp + 0x50]
mov ecx, esi
push dword [esp + 0x58]
mov edx, dword [esp + 0x38]
push ebx
call fcn.00f5eba9
add esp, 0xc
mov ebp, eax
test ebp, ebp
mov ecx, 0xf37aee0
mov eax, 0xf9ff66d
cmovne ecx, eax
push 0x5c
pop edx
jmp 0xf4cd60
mov ecx, 0xb972e62
cmp ecx, 0x6d21ae1
jne 0xf4cd60
jmp 0xf4ce98
push dword [esp + 0x20]
mov ecx, ebx
push dword [esp + 0x38]
mov edx, dword [esp + 0x40]
call 0xf62350
pop ecx
pop ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x54
ret