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

Disassembly:
sub esp, 0x64
mov dword [esp + 0x5c], 0x19b4c4
xor eax, eax
mov dword [esp + 0x60], eax
xor edx, edx
mov dword [esp + 0x48], 0x6287e8
shr dword [esp + 0x48], 0xa
xor dword [esp + 0x48], 0x800018a0
mov dword [esp + 0x28], 0x18e97c
add dword [esp + 0x28], 0x15b3
xor dword [esp + 0x28], 0xa8465da
xor dword [esp + 0x28], 0xa9c9af7
mov dword [esp + 4], 0xe4c403
add dword [esp + 4], 0x1ad8
shr dword [esp + 4], 7
push ebx
push ebp
push esi
push edi
mov dword [esp + 0x68], eax
mov edi, 0x8bf48fa
mov eax, dword [esp + 0x14]
push 0xe
pop ecx
div ecx
push 0x5a
mov dword [esp + 0x18], eax
xor edx, edx
xor dword [esp + 0x18], 0xd10bd
mov dword [esp + 0x14], 0xf15e21
shr dword [esp + 0x14], 8
imul eax, dword [esp + 0x14], 0x36
pop ecx
push 0x63
mov dword [esp + 0x14], eax
shr dword [esp + 0x14], 8
xor dword [esp + 0x14], 0xde1e
mov dword [esp + 0x30], 0xa4af2f
shl dword [esp + 0x30], 0xe
shr dword [esp + 0x30], 7
xor dword [esp + 0x30], 0x552971
mov dword [esp + 0x20], 0x539a27
imul eax, dword [esp + 0x20], 0x3c
mov dword [esp + 0x20], eax
shr dword [esp + 0x20], 8
mov eax, dword [esp + 0x20]
div ecx
xor edx, edx
mov dword [esp + 0x20], eax
xor dword [esp + 0x20], 0x92e88
mov dword [esp + 0x1c], 0xe80252
add dword [esp + 0x1c], 0xffff19ce
or dword [esp + 0x1c], 0xfce0505a
shr dword [esp + 0x1c], 5
xor dword [esp + 0x1c], 0x7e8e4f9
mov dword [esp + 0x60], 0x2b552e
add dword [esp + 0x60], 0xfffffab8
xor dword [esp + 0x60], 0x2557dc
mov dword [esp + 0x58], 0x9aeb96
imul eax, dword [esp + 0x58], 0x63
pop ecx
mov dword [esp + 0x54], eax
xor dword [esp + 0x54], 0x3be5841a
mov dword [esp + 0x34], 0x11d20d
imul eax, dword [esp + 0x34], 0x73
mov dword [esp + 0x34], eax
or dword [esp + 0x34], 0x9e732509
xor dword [esp + 0x34], 0x9e7af7b9
mov dword [esp + 0x30], 0x894f3a
shr dword [esp + 0x30], 7
shr dword [esp + 0x30], 0xa
xor dword [esp + 0x30], 0xb7484
mov dword [esp + 0x50], 0x84099e
add dword [esp + 0x50], 0xffff1eff
xor dword [esp + 0x50], 0x862a54
mov dword [esp + 0x4c], 0xa6cd49
mov eax, dword [esp + 0x4c]
div ecx
mov dword [esp + 0x4c], eax
xor dword [esp + 0x4c], 0xa2206
mov dword [esp + 0x3c], 0x1f2e7d
add dword [esp + 0x3c], 0xffffd9e4
shr dword [esp + 0x3c], 8
xor edx, edx
xor dword [esp + 0x3c], 0xa0949
mov ebp, 0x32a351f
mov dword [esp + 0x20], 0x622edb
shr dword [esp + 0x20], 8
add dword [esp + 0x20], 0xffff4533
mov eax, dword [esp + 0x20]
push 0x6a
pop ecx
div ecx
push 0x48
mov dword [esp + 0x24], eax
xor edx, edx
xor dword [esp + 0x24], 0x26a2866
mov dword [esp + 0x4c], 0x31e987
shr dword [esp + 0x4c], 9
xor dword [esp + 0x4c], 0xe74f5
mov dword [esp + 0x2c], 0x480fa8
imul eax, dword [esp + 0x2c], 0x36
pop ecx
mov ebx, dword [esp + 0x68]
mov dword [esp + 0x28], eax
add dword [esp + 0x28], 0x75de
xor dword [esp + 0x28], 0xf325625
mov dword [esp + 0x24], 0x97875f
xor dword [esp + 0x24], 0x43527dbf
xor dword [esp + 0x24], 0x250ac072
or dword [esp + 0x24], 0x32f9fad0
xor dword [esp + 0x24], 0x76f05057
mov dword [esp + 0x60], 0x98d611
add dword [esp + 0x60], 0xffff0023
xor dword [esp + 0x60], 0x9f377e
mov dword [esp + 0x44], 0x6789d1
or dword [esp + 0x44], 0xe07296db
xor dword [esp + 0x44], 0x5b306ae5
xor dword [esp + 0x44], 0xbb4b7b3e
mov dword [esp + 0x40], 0x8d7e1e
mov eax, dword [esp + 0x40]
div ecx
mov dword [esp + 0x40], eax
xor dword [esp + 0x40], 0xb9e27f1b
xor dword [esp + 0x40], 0xb9e1d90c
push 0x5c
pop ecx
mov eax, 0xe874d24
cmp edi, 0x71c07e
je 0x10012c84
cmp edi, 0x20b7c97
je 0x10012c0f
cmp edi, 0x78c8f88
je 0x10012bef
cmp edi, 0x8bf48fa
je 0x10012be8
cmp edi, eax
jne 0x10012caa
push dword [esp + 0x64]
mov edx, ebx
push dword [esp + 0x2c]
mov ecx, dword [esp + 0x50]
call fcn.100059a6
pop ecx
pop ecx
xor ecx, ecx
mov edi, 0x71c07e
test eax, eax
sete cl
mov dword [esp + 0x68], ecx
jmp 0x10012b8d
mov edi, 0x78c8f88
jmp 0x10012b95
mov ebx, dword [0x3133ce0]
add ebx, 0x240
jmp 0x10012c00
add ebx, 2
cmp word [ebx], cx
jne 0x10012bfd
add ebx, 2
mov edi, 0x20b7c97
jmp 0x10012b90
push dword [esp + 0x2c]
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
push 0x31118e0
call fcn.10017ac4
push dword [esp + 0x54]
mov esi, eax
push dword [esp + 0x5c]
push ecx
push dword [esp + 0x44]
push ecx
push dword [esp + 0x50]
push esi
push dword [esp + 0x78]
push dword [esp + 0x80]
push dword [esp + 0x88]
push dword [esp + 0x48]
push dword [esp + 0x50]
mov edx, dword [esp + 0x70]
push ecx
lea ecx, [esp + 0xa0]
call fcn.10011e56
mov edx, dword [esp + 0x5c]
test eax, eax
mov ecx, dword [esp + 0x78]
mov eax, 0xe874d24
mov edi, ebp
push esi
cmove edi, eax
call fcn.1001dd2a
add esp, 0x40
jmp 0x10012ca2
push dword [esp + 0x40]
push dword [esp + 0x48]
push dword [esp + 0x68]
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x70]
call fcn.1000f795
add esp, 0xc
mov edi, ebp
push 0x5c
mov eax, 0xe874d24
pop ecx
cmp edi, ebp
jne 0x10012b95
mov eax, dword [esp + 0x68]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x64
ret