Function at 0x9549f6
Capabilities:
Authenticate hmac
Encode data using base64
Encode data using xor
Get number of processors
Parse pe header

Disassembly:
and esi, dword [eax - 7]
xchg ebx, esp
mov dword [edx - 0x76], esi
out 0x8a, eax
adc byte [eax - 0x65476613], 0xbe
push edx
cmp byte [eax + 0x16], ch
push eax
js 0x9549c4
dec edi
inc edi
or dword [eax + ecx*4 - 0x55], 0x4e
adc dword [esi + ebp*4 + 0x56], edx
out 0x73, al
adc eax, 0x997ff91
cdq
push edi
imul ebp, dword [edx + 0x559a5796], 0x59
add byte [edx + 0x6b], dh
lea ebp, [ecx - 0x69]
aam 0x4f
hlt
test byte [ebx - 0x47], dh
jae 0x9549ad
jae 0x9549da
ja 0x954a00
ja 0x9549f8
jge 0x954a19
jge 0x9549dc
jle 0x9549f2
adc byte [edx - 0x78], 0xa
cli
loop 0x95494e
dec ecx
xchg edx, eax
outsd dx, dword [esi]
cwde
push ecx
pop ebx
je 0x954a44
inc eax
mov byte [ecx], al
cwde
int3
jns 0x954a49
stc
jb 0x9549e4
add dword [edi], 0xcf83a281
xchg edx, eax
xor byte [eax + 0x51444ea8], bl
iretd
test al, 0x4e
inc esp
push ecx
adc dword [edx - 0x75], edx
push edi
bound ebx, qword [edi - 0x3e]
insb byte es:[edi], dx
into
outsb dx, byte [esi]
pop edi
ret 0xce6c
add eax, 0xaf705070
jo 0x954a49
push eax
jo 0x9549aa
jo 0x95498f
jno 0x9549e8
jae 0x954a6a
imul esi, dword [edx + ecx*2 - 0x7d], 0x886187a2
or byte [eax - 0x6c5c6f5e], dl
test al, 0x99
je 0x954a4d
and dword [edx + 0x8886187], 0xffffff90
mov byte [0xa893a390], al
cdq
outsb dx, byte [esi]
push ecx
push edi
pop edi
loopne 0x954a76
popal
mov bl, 0x66
pop ecx
pop cx
test dword [edx - 0x72], ecx
scasd eax, dword es:[edi]
xchg ecx, eax
mov edx, dword [edi + 0x4e924e4e]
mov gs, word [edi + 0x4e978b91]
dec esi
xchg edx, eax
dec esi
jl 0x954a7c
aad 0x58
cli
pop eax
jge 0x954a87
mov ch, 0x5c
daa
pop edi
bound ecx, qword ss:[eax + 0x62]
bound ecx, qword [eax + 0x62]
or ah, byte [esi + 0x67]
jmp 0x954aa7
jmp 0x954aa7
iretd
push esi
outsb dx, byte [esi]
clc
outsb dx, byte [esi]
xchg esp, eax
outsd dx, dword [esi]
loopne 0x954ab7
jmp 0xd105a7bc
outsd dx, dword [esi]
pop ebp
jo 0x954a1d
jb 0x954a74
je 0x954aab
je 0x954a33
je 0x9549e8
jbe 0x954ab3
jns 0x954a23
jl 0x954a79
jle 0x954a3e
and byte [esi - 0x407b947e], 0x84
dec esi
xchg byte [edi - 0x7a], bl
je 0x9549f1
mov edi, 0x5f864e84
xchg byte [edi + eax*4 + 0x77], dh
mov ebp, dword [edx - 0x74]
ja 0x9549f7
push 0xffffffffffffff8c
mov word [ebx + edx*4 - 0x679a6800], gs
lodsb al, byte [esi]
xchg ebx, eax
add byte [eax + 0x60d19865], bl
shl dword [eax + 0x16], 1
push ss
bound esi, qword [edi - 0x6f]
xchg ecx, eax
pop edx
pop edx
pcmpgtd mm6, mm7
insd dword es:[edi], dx
outsb dx, byte ds:[esi]
aas
je 0x954ac7
wait
std
pop edi
fisub dword [eax + 0xf]
jnp 0x954a51
push esp
sbb byte [edi + 0x5e], bl
insb byte es:[edi], dx
shr dword [edx + ebp + 0x6d], cl
fdiv dword [eax + 5]
jge 0x954b14
xchg byte [edx + ecx*4], cl
or al, 0x8a
cmp ebx, dword [ebp + 0x548c5316]
add eax, 0x6b6a3a5b
push 0x6b
jo 0x954b20
jne 0x954a3a
jns 0x954a6d
jns 0x954a62
sub bh, 0x83
jno 0x954a40
xor dword [ecx - 0x76], 0x41
inc ecx
mov ebp, dword [eax + 0xb97748c]
cli
hlt
jp 0x954b01
dec esi
lcall 0x7b5b, 0xa6595055
pop esi
mov dword [0x6163db60], eax
imul esp, dword [ebp + 0x66], 0x53
push bx
push 0x71656e19
mov al, 0x74
or byte [ebp - 0x7c], bh
nop
imul ebx, dword [edx + 0x6d3b9c25], 0x733e6ed1
inc ecx
mov edx, cs
xchg ebp, eax
invalid
popal
inc ebx
inc sp
movsw word es:[edi], word [esi]
imul eax, ecx, 0xc96e5f6c
outsb dx, byte [esi]
bound ebp, qword [edi + 0x4c]
jno 0x954aaf
je 0x954a9c
xchg dword [esi - 0x3f], esi
jbe 0x954ad8
jnp 0x954b40
jl 0x954b6d
adc dword [edi - 0x79], 0x51
nop
lea edx, [esi + 0x532f9ec3]
ficom word [esi - 5]
pop esi
mov bl, byte [edi + 0x62]
pushal
xchg esp, eax
pushal
mul dword [ecx + 0x66]
add sp, word [edi - 0x64]
push 0xffffffffffffffee
insd dword es:[edi], dx
scasb al, byte es:[edi]
outsd dx, dword [esi]
jo 0x954bae
push 0x73
push 0x7e
mov esi, 0xd4833481
xchg byte [eax - 0x7c733b76], ch
push edx
jb 0x954bc3
xchg esi, eax
pop ebx
imul ebp, dword [edx + 4], 0xffffff94
out dx, al
push esp
xchg byte [esi + 0x5d], dl
pop ebx
dec eax
test dword gs:[ebp - 0x37], esp
lahf
push 0x6dc66d8d
lea ebp, [ebp - 0x3a]
insd dword es:[edi], dx
cmp esi, dword [edx - 0x4c]
xor byte [ebp - 0x6f], 0x4d
xchg ecx, eax
dec ebp
lcall 0x539a, 0x50194faf
push cs
push esp
cmp al, 0x54
mov dword [ebp - 0x3b], edx
push ebp
aas
pop esi
mov word [edi + 0x3d], ds
jno 0x954b64
jae 0x954b8e
nop
fist dword [edx - 0xd]
push edx
pop eax
into
pop eax
add al, 0x71
invalid
cdq
push ebp
shr dword [ebx + 0x59], 0x5f
pop ecx
pop edi
mov ebp, 0x8963ee5f
inc di
inc edi
jno 0x954baa
mov bl, byte [0x119ebe8f]
dec edi
cmp ah, byte [ebx + ecx*8 + 0x70]
retf
jo 0x954c2b
jne 0x954c2e
jne 0x954c2e
xchg byte [eax + 0x4e], ah
mov edi, eax
popfd
inc edi
push ecx
not byte [ecx + 8]
push ebx
insd dword es:[edi], dx
clc
adc cl, 0x9e
adc eax, 0x986b2366
jo 0x954bb6
jne 0x954be6
push esp
jns 0x954c42
pop es
jge 0x954bff
mov ah, byte [eax]
imul edi, dword [0x386b466b], 0x54
jo 0x954c54
cmp eax, 0x87fd56d
adc dh, 0x50
ficom word [ecx - 0x64]
push ebp
imul edx, dword [esi - 0x33], 0x56
in al, dx
pop ecx
or dword [ebx + 0xc], ebx
pop esi
cdq
popal
cwde
popal
xor dword [edx + 0x5e], esp
out 0x66, al
cdq
jno 0x954bd0
jno 0x954bd3
jno 0x954bc2
jb 0x954bc4
jns 0x954c1f
jp 0x954bd3
jg 0x954c93
mov ch, byte [esi]
and dh, byte [edx]
push edi
and dword [edi], esp
and dword [ebx], esp
sub byte [ecx], ch
and dword [edi + 0x22], esp
inc esi
and dword [esi], edi
and dword [edi + 0x29], esi
sub dword [ecx], esp
and al, byte [bp + 0x21]
and dword ds:[edi + 0x29], esi
js 0x954c63
and eax, 0x24225222
and dword [edx], ebp
jbe 0x954c6d
sub al, 0x28
jns 0x954c70
jbe 0x954c72
jp 0x954c74
das
and ah, byte [ecx]
sub byte [edx], ah
sub byte [edi], bh
and dword [edx], ebp
sub byte [0x21292c28], ch
sub ch, byte [eax]
sub eax, 0x21292c28
sub dword [ebx], esp
sub dword [eax + 0x21], eax
sub ch, byte [ecx]
sub eax, 0x24292229
sub byte [ecx + ebp], ah
sub dword [edx], esp
sub dword [eax + ebp], esp
and al, 0x29
and eax, 0x26282629
sub byte [esi], ah
sub dword [edi], esp
daa
sub dword [eax], ebp
sub byte [eax], ch
sub dword [ecx], ebp
sub byte [ecx], ch
sub dword [eax], esi
sub dword [edi], ebp
sub byte [eax], ch
sub byte [ecx], ch
sub dword [eax], ebp
sub dword [ecx], ebp
xor byte [ecx], ch
das
sub byte [edi], ch
sub dword [ebx], ebp
sub byte [ebx], ch
sub dword [esi], ebp
sub byte [esi], ch
sub dword [edi], esp
and dh, byte [eax]
and ch, byte [eax]
and ch, byte [ebx]
and ch, byte [edx]
and ch, byte [0x41222922]
and eax, 0x25432542
inc esp
and eax, 0x25462545
inc edi
and eax, 0x25492548
dec edx
and eax, 0x254c254b
dec ebp
and eax, 0x254f254e
push eax
and eax, 0x25522551
push ebx
and eax, 0x25552554
push esi
and eax, 0x25582557
popal
and eax, 0x25632562
and eax, 0x25662565
and eax, 0x25692568
and eax, 0x256a2569
and ch, byte [ecx]
and al, byte [ecx + 0x25]
inc edx
and eax, 0x25442543
inc ebp
and eax, 0x25472546
dec eax
and eax, 0x254a2549
dec ebx
and eax, 0x254d254c
dec esi
and eax, 0x2550254f
push ecx
and eax, 0x25532552
push esp
and eax, 0x25562555
push edi
and eax, 0x25612558
bound esp, qword [0x25642563]
and eax, 0x25672566
push 0x6a256925
and eax, 0x256a2569
imul esp, dword [0x256d256c], 0x6e
and eax, 0x2570256f
imul esp, dword [0x256d256c], 0x6e
and eax, 0x2570256f
jno 0x954d0d
jb 0x954d0f
jae 0x954d11
je 0x954d13
jne 0x954d15
jbe 0x954d17
ja 0x954d19
js 0x954d1b
daa
sub al, 0x21
sub al, 0x22
sub al, 0x23
sub al, 0x24
sub al, 0x25
sub al, 0x26
sub al, 0x28
sub al, 0x29
sub al, 0x2a
sub al, 0x2b
sub al, 0x2c
sub al, 0x2d
sub al, 0x2e
sub al, 0x2f
sub al, 0x30
sub al, 0x31
sub al, 0x32
sub al, 0x33
sub al, 0x34
sub al, 0x35
sub al, 0x36
sub al, 0x37
sub al, 0x38
sub al, 0x39
sub al, 0x3a
sub al, 0x3b
sub al, 0x3c
sub al, 0x3d
sub al, 0x3e
sub al, 0x3f
sub al, 0x40
sub al, 0x41
sub al, 0x51
sub al, 0x52
sub al, 0x53
sub al, 0x54
sub al, 0x55
sub al, 0x56
sub al, 0x58
sub al, 0x59
sub al, 0x5a
sub al, 0x5b
sub al, 0x5c
sub al, 0x5d
sub al, 0x5e
sub al, 0x5f
sub al, 0x60
sub al, 0x61
sub al, 0x62
sub al, 0x63
sub al, 0x64
sub al, 0x65
sub al, 0x66
sub al, 0x67
sub al, 0x68
sub al, 0x69
sub al, 0x6a
sub al, 0x6b
sub al, 0x6c
sub al, 0x6d
sub al, 0x6e
sub al, 0x6f
sub al, 0x70
sub al, 0x71
sub al, 0x57
sub al, 0x2a
and dword [esi], ebp
and dword [edi], ebp
and dword [eax], esi
and dword [ecx], esi
and dword [ebx + 0x22], edx
push esp
and ah, byte [0x36212621]
and al, byte [edi + 0x21]
dec eax
and dword [eax + 0x21], ebx
jns 0x954dbf
jp 0x954dc1
jnp 0x954dc3
jl 0x954dc5
jge 0x954dc7
jle 0x954dc9
and cl, byte [ecx + 0x21]
xor eax, 0x60272422
and ah, byte [ebp + 0x22]
bound esp, qword [edx]
pop ecx
daa
dec edx
and dword [edi + 0x28], esi
js 0x954dde
jnp 0x954de0
jl 0x954de2
jge 0x954de4
jle 0x954de6
xor byte [0x25322531], ah
and eax, 0x25322531
and eax, 0x25332532
xor al, 0x25
and eax, 0x25342533
xor esp, dword [0x25352534]
and eax, 0x25352534
and eax, 0x25362535
aaa
xor eax, 0x37253625
and eax, 0x25372536
cmp byte [0x25212539], ah
and ah, byte [0x25242523]
and eax, 0x25382537
cmp dword [0x25222521], esp
and esp, dword [0x25252524]
and eax, 0x25282527
and eax, 0x25392538
and dword [0x25232522], esp
and al, 0x25
and eax, 0x27252625
daa
and eax, 0x25292528
sub byte [0x252a2529], ah
sub dword [0x2167252a], esp
push 0x69216621
and dword [edx + 0x21], ebp
sub ah, byte [0x21682167]
and dword [bx + si + 0x21], ebp
and word [ecx + 0x21], bp
push 0x21