Function at 0xa0fe6b
Capabilities:
Authenticate hmac
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x130
push ebx
push ebp
push esi
push edi
push dword [esp + 0x154]
mov esi, edx
mov dword [esp + 0x7c], ecx
push 0x20
push dword [esp + 0x154]
mov dword [esp + 0x12c], esi
push dword [esp + 0x154]
push dword [esp + 0x154]
push esi
push ecx
call fcn.00a07a58
mov dword [esp + 0x150], 0x44c1a7
xor ebp, ebp
mov dword [esp + 0x154], 0x7142a
add esp, 0x1c
mov dword [esp + 0x13c], ebp
xor edx, edx
mov dword [esp + 0x7c], 0xcecb76
mov ebx, 0x770c144
add dword [esp + 0x7c], 0xffff211c
xor dword [esp + 0x7c], 0xb1b853a9
xor dword [esp + 0x7c], 0xb175bf3b
mov dword [esp + 0xc8], 0xf73416
add dword [esp + 0xc8], 0xffffd559
xor dword [esp + 0xc8], 0xf7096f
mov dword [esp + 0x1c], 0xc8f64b
imul eax, dword [esp + 0x1c], 0x58
push 0x7e
pop edi
push 0x57
mov dword [esp + 0x20], eax
shl dword [esp + 0x20], 4
add dword [esp + 0x20], 0x71b5
xor dword [esp + 0x20], 0x514b0e35
mov dword [esp + 0x68], 0xfe5cc
imul eax, dword [esp + 0x68], 0x52
mov dword [esp + 0x68], eax
shr dword [esp + 0x68], 0xf
or dword [esp + 0x68], 0xc734de22
xor dword [esp + 0x68], 0xc734de2f
mov dword [esp + 0xa0], 0x5a6e7
mov eax, dword [esp + 0xa0]
div edi
mov dword [esp + 0xa0], eax
add dword [esp + 0xa0], 0xe8a7
xor dword [esp + 0xa0], 0xf422
mov dword [esp + 0xf0], 0x1ff0be
shl dword [esp + 0xf0], 0xa
xor dword [esp + 0xf0], 0x7fc2f800
mov dword [esp + 0xf8], 0x522023
imul eax, dword [esp + 0xf8], 0x62
mov dword [esp + 0xf8], eax
xor dword [esp + 0xf8], 0x1f704d66
mov dword [esp + 0x38], 0xc8e471
xor dword [esp + 0x38], 0x47ac6077
or dword [esp + 0x38], 0x25bf6500
add dword [esp + 0x38], 0xffffc2f3
xor dword [esp + 0x38], 0x67ffa7f9
mov dword [esp + 0xb8], 0x341c67
add dword [esp + 0xb8], 0x50c8
shl dword [esp + 0xb8], 3
xor dword [esp + 0xb8], 0x1a36978
mov dword [esp + 0xf4], 0xea8384
xor dword [esp + 0xf4], 0x508e8773
xor dword [esp + 0xf4], 0x506404f7
mov dword [esp + 0xac], 0x393ede
add dword [esp + 0xac], 0xffff719c
shl dword [esp + 0xac], 0xc
xor dword [esp + 0xac], 0x8b07a000
mov dword [esp + 0xfc], 0xc772ee
add dword [esp + 0xfc], 0xffff338c
xor dword [esp + 0xfc], 0xc6a67a
mov dword [esp + 0x34], 0x70b050
add dword [esp + 0x34], 0xffff9854
add dword [esp + 0x34], 0xccde
xor edx, edx
mov eax, dword [esp + 0x34]
pop edi
div edi
push 0x66
mov dword [esp + 0x34], eax
xor edx, edx
xor dword [esp + 0x34], 0xb07aa
mov dword [esp + 0xc0], 0x1bd29
imul eax, dword [esp + 0xc0], 0x38
pop edi
push 7
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0xc0]
div edi
xor edx, edx
mov dword [esp + 0xc0], eax
xor dword [esp + 0xc0], 0x41f33
mov dword [esp + 0x110], 0x253f89
mov eax, dword [esp + 0x110]
pop edi
div edi
push 0x37
mov dword [esp + 0x110], eax
xor edx, edx
xor dword [esp + 0x110], 0x78bd8
mov dword [esp + 0x3c], 0x63718c
mov eax, dword [esp + 0x3c]
pop edi
div edi
push 0x60
mov dword [esp + 0x3c], eax
xor edx, edx
add dword [esp + 0x3c], 0xffffb74a
mov eax, dword [esp + 0x3c]
pop edi
div edi
push 0x52
mov dword [esp + 0x3c], eax
xor edx, edx
xor dword [esp + 0x3c], 0x8f4f9
mov dword [esp + 0x100], 0x9ad875
add dword [esp + 0x100], 0xffff980a
xor dword [esp + 0x100], 0x9a2796
mov dword [esp + 0x94], 0xa41977
or dword [esp + 0x94], 0xc7ee607a
imul eax, dword [esp + 0x94], 0x33
pop edi
push 0x5b
mov dword [esp + 0x94], eax
xor dword [esp + 0x94], 0xd48d7357
mov dword [esp + 0x44], 0xa0cc6d
mov eax, dword [esp + 0x44]
div edi
xor edx, edx
mov dword [esp + 0x44], eax
add dword [esp + 0x44], 0xffff48c9
xor dword [esp + 0x44], 0xa2c2368f
xor dword [esp + 0x44], 0xa2c55497
mov dword [esp + 0x8c], 0x873a3e
shr dword [esp + 0x8c], 3
shr dword [esp + 0x8c], 5
xor dword [esp + 0x8c], 0x37359
mov dword [esp + 0xdc], 0x1fadae
or dword [esp + 0xdc], 0xebff831c
xor dword [esp + 0xdc], 0xebfd9144
mov dword [esp + 0x9c], 0xca6335
xor dword [esp + 0x9c], 0xda974d26
mov eax, dword [esp + 0x9c]
pop edi
div edi
mov dword [esp + 0x98], eax
xor dword [esp + 0x98], 0x2680ae5
mov dword [esp + 0xd0], 0x72fd22
or dword [esp + 0xd0], 0x359c5a50
xor dword [esp + 0xd0], 0x35fbd055
mov dword [esp + 0x48], 0xbb7ee2
imul eax, dword [esp + 0x48], 0x39
mov dword [esp + 0x48], eax
add dword [esp + 0x48], 0xffff3c7e
add dword [esp + 0x48], 0x78e2
xor dword [esp + 0x48], 0x29b4c006
mov dword [esp + 0xa0], 0xd56254
mov eax, dword [esp + 0xa0]
xor edx, edx
push 0x5c
pop edi
div edi
push 0x4b
mov dword [esp + 0xa4], eax
xor edx, edx
xor dword [esp + 0xa4], 0x93002e9
xor dword [esp + 0xa4], 0x93f9b36
mov dword [esp + 0xe4], 0x65de2a
or dword [esp + 0xe4], 0xf7580294
xor dword [esp + 0xe4], 0xf776d63d
mov dword [esp + 0x5c], 0x15429e
mov eax, dword [esp + 0x5c]
pop edi
div edi
push 0x3c
mov dword [esp + 0x5c], eax
xor edx, edx
add dword [esp + 0x5c], 0x786c
xor dword [esp + 0x5c], 0x249438fa
xor dword [esp + 0x5c], 0x2491ba90
mov dword [esp + 0x54], 0xf07969
imul eax, dword [esp + 0x54], 0x1c
pop edi
push 0x78
mov dword [esp + 0x54], eax
shr dword [esp + 0x54], 6
or dword [esp + 0x54], 0xfe99223c
xor dword [esp + 0x54], 0xfef91ccc
mov dword [esp + 0x18], 0x52bc4a
imul eax, dword [esp + 0x18], 0x23
mov dword [esp + 0x18], eax
imul eax, dword [esp + 0x18], 0x32
mov dword [esp + 0x18], eax
imul eax, dword [esp + 0x18], 0x4e
mov dword [esp + 0x18], eax
xor dword [esp + 0x18], 0x52d1ca2e
mov dword [esp + 0xe0], 0x12d4f7
add dword [esp + 0xe0], 0xffff77d6
xor dword [esp + 0xe0], 0x1fbb55
mov dword [esp + 0x118], 0xddbfbd
imul eax, dword [esp + 0x118], 0x18
mov dword [esp + 0x118], eax
xor dword [esp + 0x118], 0x14c87102
mov dword [esp + 0x28], 0xed3700
shl dword [esp + 0x28], 0xa
add dword [esp + 0x28], 0xf65
mov eax, dword [esp + 0x28]
mov dword [esp + 0x28], eax
xor dword [esp + 0x28], 0xb4d9529c
mov dword [esp + 0x84], 0x87bd87
shl dword [esp + 0x84], 4
shl dword [esp + 0x84], 1
xor dword [esp + 0x84], 0x10fd82a2
mov dword [esp + 0x50], 0x3c5fab
add dword [esp + 0x50], 0xc8fa
add dword [esp + 0x50], 0xf7c5
mov eax, dword [esp + 0x50]
div edi
xor edx, edx
mov dword [esp + 0x50], eax
xor dword [esp + 0x50], 0x6ea7e
mov dword [esp + 0x70], 0xbce320
shr dword [esp + 0x70], 9
imul eax, dword [esp + 0x70], 0x1c
pop edi
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x6c]
div edi
mov dword [esp + 0x6c], eax
xor dword [esp + 0x6c], 0xcfc3b
mov dword [esp + 0xcc], 0xc47667
shl dword [esp + 0xcc], 0xc
xor dword [esp + 0xcc], 0x476686d8
mov dword [esp + 0x84], 0x55c8ad
xor dword [esp + 0x84], 0xeaf04f66
xor dword [esp + 0x84], 0xb38fd447
xor dword [esp + 0x84], 0x592bd467
mov dword [esp + 0x54], 0x6a3144
shl dword [esp + 0x54], 1
xor edx, edx
mov eax, dword [esp + 0x54]
push 0x72
pop edi
div edi
push 5
mov dword [esp + 0x58], eax
xor edx, edx
add dword [esp + 0x58], 0xffff12fb
xor dword [esp + 0x58], 0x34506
mov dword [esp + 0xd8], 0x365f22
shr dword [esp + 0xd8], 0xc
xor dword [esp + 0xd8], 0x8bdb0
mov dword [esp + 0x30], 0x11b58
add dword [esp + 0x30], 0xee1c
or dword [esp + 0x30], 0xb86a8e36
shl dword [esp + 0x30], 7
xor dword [esp + 0x30], 0x3549d472
mov dword [esp + 0x48], 0xff678a
xor dword [esp + 0x48], 0xd49a3438
imul eax, dword [esp + 0x48], 0x32
pop edi
mov dword [esp + 0x44], eax
add dword [esp + 0x44], 0xffff3473
xor dword [esp + 0x44], 0x7bc4d135
mov dword [esp + 0x5c], 0xa4a1c2
or dword [esp + 0x5c], 0x8b60e7de
add dword [esp + 0x5c], 0xb917
imul eax, dword [esp + 0x5c], 0x75
mov dword [esp + 0x5c], eax
xor dword [esp + 0x5c], 0xeff21b0d
mov dword [esp + 0x104], 0xcdae11
add dword [esp + 0x104], 0xffff3923
xor dword [esp + 0x104], 0xc5f3be
mov dword [esp + 0xac], 0x13459d
add dword [esp + 0xac], 0xffff6b12
or dword [esp + 0xac], 0x64a55d9e
xor dword [esp + 0xac], 0x64b07af9
mov dword [esp + 0x28], 0xf129e2
mov eax, dword [esp + 0x28]
div edi
mov dword [esp + 0x28], eax
add dword [esp + 0x28], 0xe26d
or dword [esp + 0x28], 0x4cf321d3
xor dword [esp + 0x28], 0x4cfe0922
mov dword [esp + 0x20], 0x79bfde
shl dword [esp + 0x20], 3
xor dword [esp + 0x20], 0x3670eecb
or dword [esp + 0x20], 0xf303fe2
xor dword [esp + 0x20], 0x3fbaaea0
mov dword [esp + 0x18], 0xfa992a
shl dword [esp + 0x18], 4
shl dword [esp + 0x18], 0xc
imul eax, dword [esp + 0x18], 0x48
mov dword [esp + 0x18], eax
xor dword [esp + 0x18], 0x13ded058
mov dword [esp + 0x10], 0x266a65
imul eax, dword [esp + 0x10], 0x6b
mov dword [esp + 0x10], eax
add dword [esp + 0x10], 0xb3df
imul eax, dword [esp + 0x10], 0x36
mov dword [esp + 0x10], eax
xor dword [esp + 0x10], 0x633b78d4
mov dword [esp + 0x74], 0x2480aa
shr dword [esp + 0x74], 8
add dword [esp + 0x74], 0xe787
xor dword [esp + 0x74], 0xbf4b46d3
xor dword [esp + 0x74], 0xbf49d78e
mov dword [esp + 0x8c], 0x234db
or dword [esp + 0x8c], 0xf13c6727
add dword [esp + 0x8c], 0xffff4165
xor dword [esp + 0x8c], 0xf13d4e00
mov dword [esp + 0xa4], 0xe1ab58
imul eax, dword [esp + 0xa4], 0x4f
mov dword [esp + 0xa4], eax
shr dword [esp + 0xa4], 0xd
xor dword [esp + 0xa4], 0xc5517
xor edx, edx
mov dword [esp + 0x70], 0x1fe180
mov eax, dword [esp + 0x70]
push 0x47
pop edi
div edi
push 0x23
mov dword [esp + 0x74], eax
xor edx, edx
xor dword [esp + 0x74], 0xb1a77b57
shr dword [esp + 0x74], 3
xor dword [esp + 0x74], 0x1633f35b
mov dword [esp + 0x6c], 0x249cb0
or dword [esp + 0x6c], 0xf43a9819
mov eax, dword [esp + 0x6c]
pop edi
div edi
push 0x28
mov dword [esp + 0x6c], eax
xor edx, edx
mov eax, dword [esp + 0x6c]
pop edi
div edi
push 0x48
mov dword [esp + 0x6c], eax
xor edx, edx
xor dword [esp + 0x6c], 0x26a165
mov dword [esp + 0xec], 0x4715fe
add dword [esp + 0xec], 0xffffc2dd
xor dword [esp + 0xec], 0x430996
mov dword [esp + 0x64], 0x84e39
add dword [esp + 0x64], 0xffffc57a
add dword [esp + 0x64], 0x3062
xor dword [esp + 0x64], 0x4e0fbfbc
xor dword [esp + 0x64], 0x4e0047a0
mov dword [esp + 0xc8], 0x23f028
or dword [esp + 0xc8], 0x3499fe2a
xor dword [esp + 0xc8], 0x34b61320
mov dword [esp + 0x98], 0xd1fba2
add dword [esp + 0x98], 0x16ae
xor dword [esp + 0x98], 0x8d877c85
xor dword [esp + 0x98], 0x8d5c7667
mov dword [esp + 0x114], 0xc785b1
shr dword [esp + 0x114], 1
xor dword [esp + 0x114], 0x6807c4
mov dword [esp + 0x104], 0xc842bf
or dword [esp + 0x104], 0x332ad3ad
xor dword [esp + 0x104], 0x33e61e79
mov dword [esp + 0x40], 0xb65dc9
imul eax, dword [esp + 0x40], 0x61
pop edi
mov dword [esp + 0x12c], 0xdff501f
mov dword [esp + 0x3c], eax
xor dword [esp + 0x3c], 0xc4393bc3
or dword [esp + 0x3c], 0x81789551
xor dword [esp + 0x3c], 0x817aa3c5
mov dword [esp + 0xe4], 0xe0cc4d
xor dword [esp + 0xe4], 0xada2d69
xor dword [esp + 0xe4], 0xa37e4f8
mov dword [esp + 0x108], 0x77c541
add dword [esp + 0x108], 0x722f
xor dword [esp + 0x108], 0x77eeea
mov dword [esp + 0xc0], 0xc107ae
shr dword [esp + 0xc0], 8
xor dword [esp + 0xc0], 0x34186a2b
xor dword [esp + 0xc0], 0x3417d722
mov dword [esp + 0xb8], 0xc46513
mov eax, dword [esp + 0xb8]
div edi
mov edi, 0x805bf58
mov dword [esp + 0xb8], eax
shl dword [esp + 0xb8], 4
xor dword [esp + 0xb8], 0x2f19d9
mov dword [esp + 0xb0], 0x283b6
add dword [esp + 0xb0], 0xbd55
or dword [esp + 0xb0], 0x4f4b8657
xor dword [esp + 0xb0], 0x4f41f1c3
mov edx, 0xccca22a
mov eax, 0x7d9f4c1
cmp ebx, eax
jg 0xa10ae0
je 0xa10ab6
cmp ebx, 0x3142240
je 0xa10a8a
cmp ebx, 0x45c4a57
je 0xa10a59
cmp ebx, 0x617afc7
je 0xa10a08
cmp ebx, 0x6c1803a
je 0xa1096a
cmp ebx, 0x770c144
jne 0xa10cc0
mov ebx, 0xdc4edcf
jmp 0xa1091d
mov edx, dword [esp + 0xdc]
mov ecx, dword [esp + 0x14]
push 0xa0105c
call fcn.00a114e2
pop ecx
push dword [esp + 0x11c]
mov esi, eax
lea edx, [esp + 0x12c]
push dword [esp + 0xd0]
lea eax, [esp + 0x138]
push dword [esp + 0x74]
push dword [esp + 0x28]
push dword [esp + 0x5c]
push eax
push ecx
push dword [esp + 0x9c]
push dword [esp + 0x44]
mov ecx, dword [esp + 0x138]
push esi
call fcn.00a0bdfc
mov ecx, eax
mov ebx, edi
mov eax, dword [esp + 0x8c]
cmp ecx, eax
push dword [esp + 0x54]
mov eax, 0x7d9f4c1
mov ecx, esi
push dword [esp + 0x100]
cmove ebx, eax
push dword [esp + 0x84]
mov edx, dword [esp + 0xb8]
call fcn.00a12c7a
mov esi, dword [esp + 0x154]
add esp, 0x34
jmp 0xa10cb2
push dword [esp + 0xa4]
push dword [esp + 0x90]
push ecx
push dword [esp + 0x40]
mov edx, dword [esp + 0x84]
push dword [esp + 0x128]
mov ecx, dword [esp + 0x168]
call fcn.00a0faa4
mov ecx, eax
add esp, 0x14
mov eax, dword [esp + 0xb4]
mov ebx, 0x45c4a57
cmp ecx, eax
mov edx, 0xccca22a
mov ecx, dword [esp + 0x78]
cmove ebx, edx
jmp 0xa10918
push dword [esp + 0x110]
mov edx, dword [esp + 0x98]
push dword [esp + 0x11c]
mov ecx, dword [esp + 0xcc]
call fcn.00a049f6
pop ecx
mov ebx, 0x3142240
pop ecx
mov ecx, dword [esp + 0x78]
jmp 0xa10913
push dword [esp + 0x124]
push dword [esp + 0x10c]
push dword [esp + 0xec]
mov edx, dword [esp + 0x48]
mov ecx, dword [esp + 0x10c]
call fcn.00a1d345
add esp, 0xc
mov ebx, edi
jmp 0xa10a81
mov eax, dword [esp + 0x5c]
mov eax, dword [esp + 0x44]
mov edx, dword [esp + 0x128]
push ecx
call fcn.00a1e376
test eax, eax
mov dword [esp + 0x128], eax
mov ebx, edi
cmovne ebx, dword [esp + 0x130]
jmp 0xa10a80
cmp ebx, edi
je 0xa10c82
cmp ebx, edx
je 0xa10c38
cmp ebx, 0xdc4edcf
je 0xa10b73
cmp ebx, 0xdff501f
jne 0xa10cc0
push dword [esp + 0x11c]
lea eax, [esp + 0x11c]
push eax
push dword [esp + 0x18]
push dword [esp + 0x24]
push ecx
push dword [esp + 0x100]
push dword [esp + 0x38]
push dword [esp + 0x140]
push dword [esp + 0x48]
push dword [esp + 0xd0]
push dword [esp + 0xc4]
mov edx, dword [esp + 0x130]
mov ecx, dword [esp + 0x154]
call fcn.00a05a69
mov ecx, eax
add esp, 0x2c
mov eax, dword [esp + 0xf4]
mov ebx, 0x3142240
cmp ecx, eax
mov eax, 0x617afc7
cmove ebx, eax
jmp 0xa10a81
mov edx, dword [esp + 0xbc]
mov ecx, dword [esp + 0x30]
push 0xa010dc
call fcn.00a114e2
mov edx, dword [esp + 0x3c]
mov esi, eax
mov ecx, dword [esp + 0x110]
mov dword [esp], 0xa0102c
call fcn.00a114e2
pop ecx
push esi
push dword [esp + 0x80]
mov edi, eax
lea ecx, [esp + 0x124]
push dword [esp + 0x90]
push dword [esp + 0x4c]
push edi
push dword [esp + 0xa4]
mov edx, dword [esp + 0x114]
call fcn.00a0536a
mov ecx, eax
mov ebx, 0x17e4231
mov eax, dword [esp + 0xe0]
cmp ecx, eax
push dword [esp + 0x60]
mov eax, 0x6c1803a
mov ecx, esi
push dword [esp + 0xec]
cmove ebx, eax
push dword [esp + 0xb8]
mov edx, dword [esp + 0xfc]
call fcn.00a12c7a
add esp, 0x24
mov ecx, edi
push dword [esp + 0x50]
push dword [esp + 0x5c]
push dword [esp + 0xe8]
mov edx, dword [esp + 0xac]
call fcn.00a12c7a
mov esi, dword [esp + 0x12c]
mov edi, 0x805bf58
jmp 0xa10caf
push esi
push dword [esp + 0x11c]
push dword [esp + 0x68]
push 0x20
push dword [esp + 0xf8]
push dword [esp + 0x7c]
mov edx, dword [esp + 0x88]
mov ecx, dword [esp + 0x108]
call fcn.00a199e2
xor edx, edx
mov ecx, eax
mov eax, dword [esp + 0xc0]
inc edx
add esp, 0x18
mov ebx, 0x45c4a57
cmp ecx, eax
cmove ebp, edx
jmp 0xa10a81
push dword [esp + 0xb0]
push dword [esp + 0x120]
push dword [esp + 0xc0]
mov edx, dword [esp + 0x104]
mov ecx, dword [esp + 0xcc]
call fcn.00a1d2d4
mov ebx, 0x17e4231
add esp, 0xc
mov ecx, dword [esp + 0x78]
mov eax, 0x7d9f4c1
mov edx, 0xccca22a
cmp ebx, 0x17e4231
jne 0xa1091d
pop edi
pop esi
mov eax, ebp
pop ebp
pop ebx
add esp, 0x130
ret