Function at 0x414ac0
Capabilities:
Authenticate hmac

Disassembly:
popfd
push ds
mov ecx, 0xd47cdb5
xor cl, al
xchg esi, eax
xor al, 0xa3
or dl, ch
pop esp
aad 0x5c
sbb dword [esi], edi
jg 0x414af9
mov dh, 0x36
push 0x516c9b0c
mov byte [0xbc97718c], al
xor eax, ecx
sub eax, 0x978a9358
in al, 0x43
test al, 0xd6
salc
pop esp
wait
cwde
push 0xcc208ca3
mov dword [0x4c2f378c], eax
int3
dec esp
adc ecx, dword [ecx + 0x4ea2b497]
xchg edi, eax
mov ah, 0xa2
dec esi
push 0x970bbaa3
xchg edi, eax
pop esp
jae 0x414acd
xchg edi, eax
pop esp
jae 0x414ad1
xchg edi, eax
pop esp
jae 0x414ad5
xchg edi, eax
pop esp
jae 0x414b48
push 0x97c88ca3
pop esp
jae 0x414b50
push 0x97c88ca3
xchg edi, eax
pop esp
jae 0x414ae9
xchg edi, eax
pop esp
jae 0x414aed
xchg edi, eax
pop esp
jae 0x414af1
xchg edi, eax
fistp word [edi + reloc.ole32.dll_CoInitializeEx]
and al, 0x3f
push ds
jae 0x414af6
insb byte es:[edi], dx
adc ebx, dword [ebx]
enter 0x1de7, 0x73
xchg al, dl
in al, 0xab
dec edx
lodsd eax, dword [esi]
fcmove st(0), st(0)
pop es
invalid
loope 0x414bb2
sbb cl, dl
enter 0x1c87, 0x73
dec ecx
push eax
pop ebp
jae 0x414b1d
xchg edi, eax
fstp qword [ebp - 0x6eab1edf]
dec ecx
jns 0x414bbc
jae 0x414b29
xchg edi, eax
out 0x53, al
adc esi, 0x5c
daa
xor eax, 0x96ec4790
mov dword [0x5c97e39b], eax
jecxz 0x414b09
pop esp
jae 0x414be8
mov ebp, 0xce0da831
jne 0x414b01
inc ebx
cmp dword [eax - 0x10], 0xc
xchg ebx, eax
fnsave dword [eax + ecx*2 + 0x20336ba7]
test dword [ebx + esi*2 - 0x38], ebx
xchg esi, eax
mov byte [0xa3963f7a], al
mov edx, 0xb183be83
xor dword [ecx - 0x7a8a683c], 0xffffffc1
pushal
les edx, [edi + 0x60c18575]
pop ss
inc edx
leave
sub dword [ebx - 0x22abeda0], esp
mov dl, 0xcc
push esp
fnsave dword [edx + 0x735c97cc]
jmp 0x4969571d
xchg edi, eax
pop esp
jae 0x414b96
insb byte es:[edi], dx
or ebp, dword [eax]
dec ecx
js 0x414b70
mov ebp, 0x65e920fa
mov byte [0x9cdd72bd], al
cli
and cl, ch
mov byte gs:[0x9cdd72bd], al
jmp 0x72feee1f
jb 0x414b98
pushfd
leave
xchg edi, eax
pop esp
jae 0x414c0a
push esp
pop ebp
jae 0x414b8d
xchg edi, eax
lahf
bnd jns 0x29813f95
sub cl, bh
mov ebx, 0xc8735c9d
xchg edi, eax
pop esp
jae 0x414ba1
xchg edi, eax
pop esp
jae 0x414ba5
xchg edi, eax
pop esp
jae 0x414ba9
xchg edi, eax
pop esp
jae 0x414bad
xchg edi, eax
pop esp
jae 0x414bb1
enter 0x5c97, 0x73
enter 0x5c97, 0x73
enter 0x5c97, 0x73
enter 0x5c97, 0x73
enter 0x5c97, 0x73
enter 0x5c97, 0x73
inc edx
xchg edi, eax
pop esp
jae 0x414bb5
xchg edi, eax
pop esp
jae 0x414bb9
xchg edi, eax
pop esp
jae 0x414bbd
xchg edi, eax
pop esp
jae 0x414bc1
xchg edi, eax
pop esp
jae 0x414bc5
xchg edi, eax
pop esp
jae 0x414c43
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
pushal
pop ds
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
pop ds
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
pushal
pop ds
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
or byte [eax + 0x1f], ah
inc edx
jo 0x414d22
mov dl, 0xd9
jbe 0x414d26
mov ecx, 0x640278d2
popal
and eax, 0xcda9e398
cwde
jecxz 0x414cce
int 0xf7
movsd dword es:[edi], dword [esi]
lea ebp, [eax + 0x25616481]
salc
shr dword [ecx + 0x788fde7a], cl
push 0xc55a7483
pop ss
mul dword [ebp + 0x6481a88d]
popal
and eax, 0x7aa9d3d6
fimul word [edi + reloc.ole32.dll_CoInitializeEx]
pop edx
lds edx, [edi]
jge 0x414d04
les edx, [edi]
jne 0x414da7
ja 0x414d96
push 0x6fc372a0
cmp dword [edx + ebx*2 - 0x21], esi
bound ebp, qword [ebp + 0x65]
add ebp, dword [edi + 0x62]
mov al, byte [0x396fc372]
je 0x414da5
fbld tbyte [edx + 0x6d]
add ebp, dword gs:[edi + 0x62]
pushal
or eax, 0xd350636f
mov byte [ecx], bl
push esp
push esi
pop ebx
pop edx
pop ebx
pop edx
push esp
pop ebx
pop ebp
push esi
and al, 0
dec esp
inc ecx
add byte [ebx - 0x3b7cdbf4], cl
add al, 0xe8
xor eax, 0x81000000
add byte [ecx + 0x3a019beb], al
and dword [ecx + 0x1c6], eax
add byte [ebx - 0x3b7cdbec], cl
add al, 0x29
test dword [ecx], 0xef8159fe
or ecx, dword [ecx + 0x13e87e76]
add byte [eax], al
add cl, cl
jmp 0x414d44