Function at 0x4eebc6
Capabilities:
Authenticate hmac
Get number of processors

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push ecx
push ecx
mov eax, dword [ebp + 8]
push esi
mov esi, dword [ebp + 0xc]
push edi
xor edi, edi
mov dword [esi], edi
mov dword [esi + 4], edi
test byte [eax + 0xc], 0xc
mov dword [ebp - 8], edi
jne 0x501bc6
mov ecx, dword [eax + 0x90]
mov edx, dword [eax + 0x8c]
push ebx
mov dword [ebp - 4], edx
mov dword [ebp + 8], ecx
cmp ecx, edi
jne 0x4eec1f
jae 0x4eec30
push ebp
sub byte gs:[ecx + 0x2c], ah
xor dh, byte [0x2929302c]
sub dword [ebx], edi
popal
cmp eax, 0x2e73645f
jne 0x4eec3f
popal
sub al, 0x31
aaa
sub dword [esi], ebp
jae 0x4eec8f
insb byte es:[edi], dx
imul esi, dword [eax + ebp + 0x2f], 0x2f2b735c
sub dword [esi], ebp
insd dword es:[edi], dx
popal
jo 0x4eec56
cmp eax, 0x66697b3e
sub byte [ecx + ebp + 0x7b], ah
jnp 0x4eec9c
sub byte [ecx + ebp + 0x7b], ah
arpl word [edi + 0x6e], bp
jae 0x4eecb1
and byte [ebp + 0x3d], ah
insd dword es:[edi], dx
popal
cmp eax, 0x616d2e64
je 0x4eeca9
push 0x5b282f28
pop esi
cmp eax, 0x3d292b5d
and ch, byte [eax]
sub bh, byte cs:[edi]
sub dword [edx], esp
das
sub dword [ebx], edi
jb 0x4eecc2
je 0x4eecd4
jb 0x4eeccf
and byte [ebp + 0x3f], ah
pop ebx
pop ebx
xor dword [ebp + 0x2c], ebx
pop ebx
xor bl, byte [ebp + 0x5d]
cmp bl, byte [ebx + 0x64]
sub al, 0x22
and bl, byte [ebp + 0x7d]
jb 0x4eecde
je 0x4eecf0
jb 0x4eeceb
and byte [esi + 0x75], ch
insb byte es:[edi], dx
insb byte es:[edi], dx
jge 0x4eecad
imul bp, word cs:[esp + esi*2 + 0x65], 0x2872
cmp eax, 0x2626643e
sub eax, 0x3d3d3d31
sub eax, 0x3d3d3d31
bound ebp, qword [esi]
imul ebp, dword [esi + 0x64], 0x664f7865
sub byte [ebx + ebx*2 + 0x30], ah
js 0x4eecee
sub byte [ebx + ebx*2 + 0x30], ah
pop ebp
sub dword [ecx], ebp
cmp ecx, dword [edx]
outsw dx, word [esi]
jb 0x4eecd5
arpl word [edi + 0x6e], bp
jae 0x4eed26
je 0x4eecd3
and byte [eax + 0x6f], ah
and byte [ecx + 0x29], ah
and byte fs:[edi + 0x66], ch
and byte [ecx + 0x29], ah
outsd dx, dword fs:[esi]
arpl word [ebp + 0x6d], si
outsb dx, byte gs:[esi]
je 0x4eecf1
bound ebp, qword cs:[edi + 0x64]
bound ebp, qword [edi + 0x64]
jns 0x4eecf6
jae 0x4eed2f
je 0x4eed0d
je 0x4eed42
jb 0x4eed39
imul esp, dword [edx + 0x75], 0x64286574
pop ebx
bound esi, qword [ebp + 0x74]
sub byte gs:[ebx + ebx*2 + 0x30], ah
sub byte [ebx + ebx*2 + 0x30], ah
pop ebx
xor byte [ebp + 0x2c], bl
pop ebx
pop ebp
sub al, 0x64
pop ebx
xor dword [ebp + 0x29], ebx
sub al, 0x63
sub dword [ebx], ebp
insb byte es:[edi], dx
je 0x4eed4d
sub byte [ebx + ebx*2 + 0x30], ah
pop ebp
sub dword [ebx], edi
outsw dx, word [esi]
xor byte [ebp + 0x29], bl
cmp esp, dword [esi + 0x6f]
outsd dx, dword [esi]
jb 0x4eed1b
arpl word [edi + 0x6e], bp
jae 0x4eed6c
and byte [eax + 0x6f], ah
and byte [ebx + 0x29], ah
outsd dx, dword fs:[esi]
arpl word [ebp + 0x6d], si
outsb dx, byte gs:[esi]
je 0x4eed37
bound ebp, qword [edi + 0x64]
jns 0x4eed3c
jb 0x4eed75
jb 0x4eed75
insd dword es:[edi], dx
outsd dx, dword [esi]
jbe 0x4eed79
inc ecx
je 0x4eed8b
jb 0x4eed82
bound esi, qword [ebp + 0x74]
sub byte gs:[ecx + ebp + 0x7d], ah
je 0x4eed82
sub byte [ecx + ebp + 0x7d], ah
sub al, 0x71
outsb dx, byte [esi]
cmp eax, 0x6e797361
jae 0x4eeda1
outsb dx, byte [esi]
arpl word [eax], sp
jne 0x4eed9c
arpl word [ecx + ebp*2 + 0x6f], si
je 0x4eed9a
outsd dx, dword [esi]
outsb dx, byte [esi]
sub byte [ecx + 0x2c], ah
bound ebp, qword [ecx]
jnp 0x4eedb1
sub dword [ebx + 0x77], edi
ja 0x4eeda4
imul ebp, dword [esi + 0x64], 0x732e776f
arpl word [edx + 0x6f], si
outsb dx, byte [esi]
outsd dx, dword fs:[esi]
ja 0x4eed6e
jae 0x4eeda5
jb 0x4eedb3
insb byte es:[edi], dx
insb byte es:[edi], dx
sub byte [edi + 0x64], bl
jae 0x4eed79
insb byte es:[edi], dx
imul ebp, dword [eax], 0x2c782e29
sub byte [ecx], ch
js 0x4eed7e
xor byte [ecx], ch
cmp esi, dword [esi + 0x61]
jb 0x4eed79
arpl word [0x2077656e], di
dec ebp
popal
jo 0x4eed8b
pop ebx
pop ebx
and ah, byte [ebp + 0x76]
jae 0x4eedd4
je 0x4eedd2
sub eax, 0x64616568
sub eax, 0x64616568
push 0x65646165
jb 0x4eed97
jb 0x4eed97
sub al, 0x5f
jae 0x4eeda8
jne 0x4eeda4
jne 0x4eeda4
bound ebp, qword [edx + esi]
sub dword [ebp + 0x2c], ebx
xor ch, byte [ecx]
pop ebp
sub al, 0x5b
pop ebx
and ah, byte [ebp + 0x76]
jae 0x4eedf2
je 0x4eedf0
sub eax, 0x6b6f6f62
sub eax, 0x2276616e
sub al, 0x5f
jae 0x4eedc8
jne 0x4eedc4
bound ebp, qword [esp + esi]
sub dword [ebp + 0x2c], ebx
pop ebx
sub al, 0x5b
and ah, byte [ebp + 0x76]
jae 0x4eee12
jbe 0x4eee1b
jbe 0x4eee1b
imul esi, dword [ebp + 0x2d], 0x746e6f63
je 0x4eee10
sub eax, 0x746e6f63
outsb dx, byte gs:[esi]
outsb dx, byte [esi]
je 0x4eedd6
and ch, byte [edi + ebx*2]
sub al, 0x5f
jae 0x4eede7
jne 0x4eede3
bound ebp, qword [ebx + esi]
sub dword [ebp + 0x2c], ebx
pop ebx
and ah, byte [ebp + 0x76]
jae 0x4eee31
jbe 0x4eee3a
imul esi, dword [ebp + 0x2d], 0x746f6f66
je 0x4eee2f
sub eax, 0x746f6f66
jb 0x4eedff
jo 0x4eee46
outsd dx, dword [esi]
insd dword es:[edi], dx
outsd dx, dword [esi]
jae 0x4eedfb
sub al, 0x5f
jae 0x4eee0c
jne 0x4eee08
bound ebp, qword [edi + esi]
sub dword [ebp + 0x2c], ebx
pop ebx
and ah, byte [ebp + 0x76]
jae 0x4eee56
je 0x4eee54
sub eax, 0x746f6f66
jb 0x4eee24
outsw dx, word [esi]
outsd dx, dword [esi]
je 0x4eee5a
jb 0x4eee24
insb byte es:[edi], dx
imul ebp, dword [esi + 0x6b], 0x65786f62
bound ebp, qword [edi + 0x78]
jae 0x4eee23
jae 0x4eee23
sub al, 0x5f
jae 0x4eee34
jne 0x4eee30
bound ebp, qword [esi + esi]
sub dword [ebp + 0x2c], ebx
pop ebx
pop ebp
sub al, 0x5b
and ah, byte [ebp + 0x76]
jae 0x4eee7e
jbe 0x4eee87
jbe 0x4eee87
imul esi, dword [ebp + 0x2d], 0x746f6f66
je 0x4eee7c
sub eax, 0x746f6f66
je 0x4eee82
jb 0x4eee4c
jb 0x4eee4c
jne 0x4eee95
imul ebp, dword [ecx + ebp*2 + 0x74], 0x5f2c2279
imul esi, dword [ecx + edi*2 + 0x22], 0x73645f2c
jne 0x4eee56
je 0x4eee9f
and ch, byte [edi + ebx*2]
jae 0x4eee5a
jne 0x4eee56
bound ebp, qword [esi + 0x5b2c5d29]
sub al, 0x35
xor eax, 0x5b2c5d29
sub dword [ebp + 0x2c], ebx
pop ebx
and ah, byte [ebp + 0x76]
jae 0x4eeea4
imul esi, dword [ebp + 0x2d], 0x6c616e61
je 0x4eeea2
sub eax, 0x6c616e61
jns 0x4eeeb8
imul esp, dword [ebx + 0x73], 0x645f2c22
jae 0x4eee7b
jae 0x4eee6a
sub al, 0x5f
jae 0x4eee7b
jne 0x4eee77
jne 0x4eee77
bound ebp, qword [ecx + esi]
xor al, 0x29
pop ebp
pop ebp
sub dword [esp], ebp
cmp eax, 0x2077656e
outsb dx, byte [esi]
ja 0x4eee7e
dec ebp
popal
jo 0x4eee8e
cmp eax, 0x663b5d5b
outsd dx, dword [esi]
sub byte [ebx + 0x6f], ah
outsb dx, byte [esi]
arpl word [0x61763b67], di
cmp esi, dword [bp + 0x61]
cmp ebp, dword [ebp + 0x74]
and byte [ebx + 0x3d], ch
outsb dx, byte [esi]
jne 0x4eeefd
insb byte es:[edi], dx
cmp esp, dword [esi + 0x26]
sub byte es:[ebx + 0x3d], ch
outsb dx, byte [esi]
popal
das
jno 0x501c13
jmp 0xaf24567b
cmp dl, ah
scasb al, byte es:[edi]
xor al, 0xd5
shr eax, 0x23
xor al, 0x77
invalid
pop ebp
pop ds
sub bh, byte [esi + 0x5c]
sbb dword [ecx], ebp
mov esi, 0x3e0e6d04
mov ch, 0xfa
push ebp
daa
hlt
inc eax
mov ecx, 0xaf34ffd7
sbb eax, 0x3d6cd682
test byte [ebp - 0x3c], 0x19
sub bl, ah
pop edx
pop edi
jp 0x501bcb
or al, 0x9a
and dword [ebx - 0x21], edx
push edx
cwde
add eax, 0xc95e4d5d
enter 0xffffffffffff800a, 0x1e
ja 0x501be7
mov dl, 0x8f
inc edi
mov al, byte [0xaec30fbc]
cli
jno 0x501c88
test dword [ebx + 0x507caa1b], 0x22c9fe87
insd dword es:[edi], dx
test eax, 0x65b9d0d9
fild word [edi + 0x4542b8f7]
push esp
push es
notrack call 0xae8b74ed
nop
sbb ebp, dword [edi + ebp*8]
in al, dx
xlatb
xlatb
pop edi
pop ecx
shl byte [0xd04d0262], 1
std
in al, dx
call 0xf98896ac
inc bh
mov ah, byte [edx]
invalid
aad 0xf8
invalid