Function at 0xa61e24
Capabilities:
Encode data using xor
Get number of processors

Disassembly:
jmp 0xa61e2e
pushal
call 0xa61e34
pop ebp
sub ebp, 0x10
sub ebp, 0x661e24
jmp 0xa61e4a
mov eax, 0x661e24
add eax, ebp
add eax, 0x4c
mov ecx, 0x5b5
mov edx, 0x395b9e6c
xor byte [eax], dl
inc eax
dec ecx
jne 0xa61e61
jmp 0xa61e74
out 0xa1, eax
out 0xe5, eax
push eax
insb byte es:[edi], dx
insb byte es:[edi], dx
insb byte es:[edi], dx
in eax, dx
lodsd eax, dword [esi]
xchg esp, eax
insb byte es:[edi], dx
insb byte es:[edi], dx
insb byte es:[edi], dx
outsd dx, dword [esi]
mov eax, dword [0x6c6c6ad4]
insb byte es:[edi], dx
salc
inc esp
insb byte es:[edi], dx
insb byte es:[edi], dx
insb byte es:[edi], dx
wait
mov gs, word [edi - 0x5c]
out 0xed, eax
pushal
insb byte es:[edi], dx
insb byte es:[edi], dx
insb byte es:[edi], dx
outsd dx, dword [esi]
test eax, 0x38043c3c
adc al, 0x62
insb byte es:[edi], dx
add al, 0xa1
leave
cmp ebp, dword [ebp + ebp*2 + 0x40]
dec eax
add al, 0x30
dec eax
fnstenv [esp + eax*4]
imul ebp, dword [esp + ebp*2 + 0x6c], 0x6c6c4485
insb byte es:[edi], dx
cmp edi, esp
and bh, 0xe9
insb byte es:[edi], dx
insb byte es:[edi], dx
insb byte es:[edi], dx
out 0xf9, eax
pushal
insb byte es:[edi], dx
insb byte es:[edi], dx
insb byte es:[edi], dx
out 0xe1, eax
jl 0xa61f37
insb byte es:[edi], dx
insb byte es:[edi], dx
lodsd eax, dword [esi]
test dword [esi + 0x5d], ebp
outsb dx, byte [esi]
out dx, eax
scasb al, byte es:[edi]
push 0x98e96325
xchg ebx, eax
xchg ebx, eax
xchg ebx, eax
xor dword [esi - 0x1f1893a0], ebp
dec eax
push 0x46c6c6c
cmp byte [edx], dl
insb byte es:[edi], dx
add al, 0xa1
leave
cmp ebp, dword [ebp + ebp*2 + 0x40]
dec eax
cmp eax, 0x6c6c6984
insb byte es:[edi], dx
test dword [ebx + 0x6e], edx
insb byte es:[edi], dx
insb byte es:[edi], dx
cmp edi, esp
adc byte [ebx + 0x19936019], 0x64
test byte [esi], bl
insb byte es:[edi], dx
insb byte es:[edi], dx
insb byte es:[edi], dx
out 0xd1, eax
insb byte es:[edi], dx
insb byte es:[edi], dx
insb byte es:[edi], dx
in eax, dx
popfd
pop esi
fld st(7)
or eax, 0xd95e9ded
invalid
in al, dx
xchg edi, eax
test byte [ebx - 0x18], ah
jbe 0xa61faa
insb byte es:[edi], dx
insb byte es:[edi], dx
in al, dx
xchg edi, eax
test dword [ebx - 0x18], esp
jge 0xa61fb3
insb byte es:[edi], dx
insb byte es:[edi], dx
or ch, ch
xchg edi, eax
xchg ebx, eax
dec ecx
arpl ax, bp
jns 0xa61fbe
insb byte es:[edi], dx
insb byte es:[edi], dx
sub eax, 0x9393a085
xchg ebx, eax
inc ebp
and byte [ebp + 0x6d], dl
out dx, eax
lodsd eax, dword [esi]
imul ebp, edi, 0xd1856884
xchg ebx, eax
xchg ebx, eax
xchg ebx, eax
inc ebp
cmp byte [ebp + 0x6e], dl
out dx, eax
lodsd eax, dword [esi]
push 0xffffffffffffffef
xchg byte [eax - 0x11], ch
test byte [ecx - 0x7b], ch
invalid
stosd dword es:[edi], eax
insd dword es:[edi], dx
insb byte es:[edi], dx
insb byte es:[edi], dx
insb byte es:[edi], dx
xlatb
outsb dx, byte [esi]
insb byte es:[edi], dx
insb byte es:[edi], dx
insb byte es:[edi], dx
outsb dx, byte [esi]
mov esi, 0x6c69e963
insb byte es:[edi], dx
insb byte es:[edi], dx
insb byte es:[edi], dx
out 0x7a, al
sub bh, byte [esi - 0x42]
arpl di, bp
mov ah, 0x93
xchg ebx, eax
xchg ebx, eax
xchg ebx, eax
outsb dx, byte [esi]
mov esi, 0x6c69e963
insb byte es:[edi], dx
insb byte es:[edi], dx
out 0x7a, al
sub bh, byte [esi - 0x42]
arpl di, bp
push es
insb byte es:[edi], dx
insb byte es:[edi], dx
insb byte es:[edi], dx
pop edi
lodsb al, byte [esi]
outsb dx, byte [esi]
mov esi, 0x6c69e963
insb byte es:[edi], dx
insb byte es:[edi], dx
out 0x7a, al
sub bh, byte [esi - 0x42]
arpl di, bp
inc esi
insd dword es:[edi], dx
insb byte es:[edi], dx
insb byte es:[edi], dx
outsb dx, byte [esi]
mov esi, 0x6c69e963
insb byte es:[edi], dx
insb byte es:[edi], dx
out 0x7a, al
sub bh, byte [esi - 0x42]
jg 0xa61f99
outsb dx, byte [esi]
mov esi, 0x6c69e963
insb byte es:[edi], dx
insb byte es:[edi], dx
out 0x7a, al
sub bh, byte [esi - 0x42]
jg 0xa61fa8
outsb dx, byte [esi]
mov esi, 0x6c69e963
insb byte es:[edi], dx
insb byte es:[edi], dx
out 0x7a, al
sub bh, byte [esi - 0x42]
jg 0xa61fb7
outsb dx, byte [esi]
mov esi, 0x6c69e963
insb byte es:[edi], dx
insb byte es:[edi], dx
out 0x7a, al
sub bh, byte [esi - 0x42]
jg 0xa61fc6
arpl ax, bp
push 0x6c
insb byte es:[edi], dx
insb byte es:[edi], dx
out 0xb3, eax
inc edi
mov ah, 0xe6
outsd dx, dword [esi]
in al, 0x6b
sub edx, edi
outsb dx, byte [esi]
insb byte es:[edi], dx
insb byte es:[edi], dx
insb byte es:[edi], dx
test dword [ebx + edx*4], ebx
xchg ebx, eax
xchg ebx, eax
aam 0x6d
insb byte es:[edi], dx
insb byte es:[edi], dx
insb byte es:[edi], dx
outsb dx, byte [esi]
mov esi, 0x6c69e963
insb byte es:[edi], dx
insb byte es:[edi], dx
out 0x7a, al
sub bh, byte [esi - 0x42]
jg 0xa61ff3
outsb dx, byte [esi]
mov esi, 0x6c69e963
insb byte es:[edi], dx
insb byte es:[edi], dx
out 0x7a, al
sub bh, byte [esi - 0x42]
arpl si, bp
mov dl, 0x93
xchg ebx, eax
xchg ebx, eax
inc edi
scasd eax, dword es:[edi]
xlatb
insd dword es:[edi], dx
insb byte es:[edi], dx
insb byte es:[edi], dx
insb byte es:[edi], dx
arpl cx, bp
pop eax
insb byte es:[edi], dx
insb byte es:[edi], dx
insb byte es:[edi], dx
aad 0x6d
insb byte es:[edi], dx
insb byte es:[edi], dx
insb byte es:[edi], dx
outsb dx, byte [esi]
mov esi, 0x6c69e963
insb byte es:[edi], dx
insb byte es:[edi], dx
out 0x7a, al
sub bh, byte [esi - 0x42]
jg 0xa62020
outsb dx, byte [esi]
mov esi, 0x6c69e963
insb byte es:[edi], dx
insb byte es:[edi], dx
out 0x7a, al
sub bh, byte [esi - 0x42]
arpl si, bp
mov dl, 0x93
xchg ebx, eax
xchg ebx, eax
cmp ah, bh
wait
inc edi
cdq
lahf
enter 0xffffffffffff8532, 0x64
xchg ebx, eax
xchg ebx, eax
xchg ebx, eax
and al, 0xad
mov word [esi + 0x6a], fs
sub ah, bh
test ch, dl
insd dword es:[edi], dx
insb byte es:[edi], dx
insb byte es:[edi], dx
insb byte es:[edi], dx
outsb dx, byte [esi]
mov esi, 0x6c69e963
insb byte es:[edi], dx
insb byte es:[edi], dx
out 0x7a, al
sub bh, byte [esi - 0x42]
jg 0xa6205d
outsb dx, byte [esi]
mov esi, 0x6c69e963
insb byte es:[edi], dx
insb byte es:[edi], dx
out 0x7a, al
sub bh, byte [esi - 0x42]
arpl si, bp
mov dl, 0x93
xchg ebx, eax
xchg ebx, eax
in eax, dx
xchg esp, eax
insb byte es:[edi], dx
adc dword [esp + ebp*2 - 0x13], ebp
mov ch, 0x93
xchg ebx, eax
xchg ebx, eax
xchg ebx, eax
in eax, dx
xchg esp, eax
insb byte es:[edi], dx
imul ebp, dword [esp + ebp*2 - 0x13], 0x939393b5
xchg ebx, eax
in eax, dx
xchg esp, eax
in al, dx
insb byte es:[edi], dx
insb byte es:[edi], dx
insb byte es:[edi], dx
in eax, dx
mov ebp, 0x6c6c6c6c
in eax, dx
xchg esp, eax
in al, dx
insb byte es:[edi], dx
insb byte es:[edi], dx
insb byte es:[edi], dx
in eax, dx
mov ebp, 0x6c6c6c6c
cmp ah, bh
wait
inc edi
pushfd
lahf
enter 0xffffffffffff8532, 0xfffffffffffffff7
xchg edx, eax
xchg ebx, eax
xchg ebx, eax
out 0x6a, al
sub bl, byte [edi - 0x5b]
lodsb al, byte [esi]
test byte [ebp + 0x63], ch
call 0x6d128d8c
in eax, dx
mov ebp, 0x6c6c6c6e
out 0x84, eax
cmp ah, bh
wait
inc edi
pushfd
lahf
enter 0xffffffffffffd732, 0x6d
insb byte es:[edi], dx
insb byte es:[edi], dx
insb byte es:[edi], dx
test dword [edi], ebx
xchg edx, eax
xchg ebx, eax
xchg ebx, eax
xor dword [edi + 0x11], eax
out 0xab, eax
xor esi, dword [edx]
out 0x89, eax
xor dword [esi + 0x32336c64], ebp
test dword [eax + 0x6c], ebp
insb byte es:[edi], dx
insb byte es:[edi], dx
mov bl, 0xbd
stosb byte es:[edi], al
movsb byte es:[edi], byte [esi]
aam 0x48
jb 0xa62157
insb byte es:[edi], dx
outsd dx, dword [esi]
test eax, 0x6f27aced
insb byte es:[edi], dx
insb byte es:[edi], dx
aad 0xda
outsb dx, byte [esi]
insb byte es:[edi], dx
fisubr dword [esi + 0x6c]
insb byte es:[edi], dx
salc
mov dword [esi - 0xe], ebp
insd dword es:[edi], dx
pop esp
jl 0xa6218f
and eax, 0x939ae963
xchg ebx, eax
xchg ebx, eax
test dword [eax + 0x6c], ebp
insb byte es:[edi], dx
insb byte es:[edi], dx
jmp 0xf1cb184
mov byte [0x2730e51], al
mov dword [esi], ecx
jae 0xa6219b
invalid
or byte [ebx - 0x77], dh
mov dword [ecx - 0x30f27977], ecx
mov dword [ecx + 0x85f8a89], ecx
dec esi
or dword [ecx + 0x60088989], 0x89898981
or byte [eax - 0x77], dh
mov dword [ecx + 0x590d8689], ecx
jbe 0xa62236
or dword [ecx + 0x70088989], 0x89898989
xchg byte [0x76767659], cl
out dx, eax
jbe 0xa621b1
add cl, byte [esi + 0xa856148]
imul eax, dword [esi - 0x76758ef8], 0xc868989
test byte [ecx + 0x2ef8989], cl
mov cs, word [eax]
imul esi, dword [esi - 0x7a], 0x4b8a8989
mov byte [ecx + 0x4e0ac0c0], dl
mov esp, dword [eax + 0x41]
jbe 0xa62262
jbe 0xa6224e
lea ecx, [ecx + 0x1c1d8989]
pop ebx
sub dword [ecx], esi
lodsd eax, dword [esi]
xchg edi, eax
out dx, eax
mov dword [edx + 0x7149084c], ecx
mov cl, byte [ecx - 0x747fcf77]
mov dword [ecx + 0x48ee1b33], ecx
cmp byte [ecx - 0x793f3667], 0xc
jg 0xa6228b
jbe 0xa6228d
pushal
lea ecx, [ecx - 0x5b0d7677]
invalid
mov word [eax + 0x188c1763], ss
fisttp qword [ebx - 0x1c]
mov fs, word [edi - 0x56]
dec ebp
sbb ebx, dword [edx + 0x1b1b1be3]
sbb edx, dword [esi + ebx*4]
pop ss
sbb ebx, dword [ebx]
sbb edx, dword [eax - 0x22e7e8a4]
sbb ebx, dword [ebx]
nop
pop esp
pop ss
sbb ch, bl
dec ebx
in al, 0x8e
xchg ebx, eax
stosb byte es:[edi], al
dec ebp
sbb ebx, dword [eax + 0x141b1764]
lahf
jge 0xa6227f
sbb ebx, dword [ebx]
cwde
sbb ebx, dword fs:[ebx]
adc al, 0x9e
adc dword [ebx], ebx
sbb ebx, dword [ebx]
cwde
or ebx, dword fs:[ebx]
adc al, 0x9f
pop ebp
sbb ebx, dword [ebx]
sbb ecx, dword [esi - 0x6a]
dec esi
sbb edx, dword [eax - 0xae7f48c]
je 0xa6228c
sbb ch, dh
cwde
sbb bx, word [ebx]
adc al, 0x9f
sub byte [ebx], bl
sbb ebx, dword [ebx]
sbb edx, dword [eax + 0x494b1b56]
nop
push esi
sbb ecx, dword [ebx + 0x49]
adc dl, dl
adc al, 0x92
sbb eax, 0x4a1b1b1b
adc bl, byte [ebx]
sbb ebx, dword [ebx]
sbb ch, dl
lcall 0x4a1b, 0x1b1b19da
dec ebx
in al, 0x89
wait
stosb byte es:[edi], al
dec ebp
sbb eax, dword [ecx - 0x6e]
pop esi
sbb eax, dword [ebx - 0x66]
ficomp word [edi]
sbb ebx, dword [ebx]
sbb esi, edx
fsub st(4)
in al, 0xe4
inc esi
lcall 0xf21b, 0x1b1b0fdc
jnp 0xa622ae
in al, 0xe4
dec edi
jg 0xa622b3
sbb ebx, dword cs:[ebx]
sbb ebx, dword [ebx]
jae 0xa62313
aas
jge 0xa622f4
dec esi
dec ebp
nop
pop ebp
daa
nop
lahf
sub esi, dword [ebx]
sbb ebx, dword [ebx]
sbb ebx, dword [eax]
fucom st(4)
sti
dec edi
jae 0xa6236a
cmp ebx, dword [esi + 0x75]
jb 0xa6236d
jbe 0xa6236d
cmp ecx, dword [ebx + 0x69]
je 0xa62367
dec ebx
imul esi, dword [edi + ebp*2 + 0x7e], 0x69746f78
jle 0xa62372
outsd dx, dword [esi]
je 0xa62366
cmp ebp, dword [ebp + 0x7e]
imul ebp, dword [eax + 0x72], 0x2a3b7574
xor eax, 0x11162a28
pop edi
jle 0xa6237c
jle 0xa62388
je 0xa6237e
jle 0xa6237e
and dword [ebx], edi
dec ebp
ja 0xa62394
jg 0xa6238e
jbe 0xa62390
imul edi, dword [ebx], 0x73706e48
je 0xa62393
push ss
adc dword [eax + 0x72], ecx
outsd dx, dword [esi]
jle 0xa62368
and dword [ebx], edi
jae 0xa623a0
outsd dx, dword [esi]
imul esp, dword [ecx], 0x34
xor al, 0x6c
insb byte es:[edi], dx
insb byte es:[edi], dx
xor eax, 0x7c72757e
jbe 0xa623ba
imul ebp, dword [ecx + 0x74], 0x6f
jle 0xa623be
outsd dx, dword [esi]
je 0xa623b2
xor eax, 0x34767478
push ss
adc dword [esi + 0x36], ebx
jbe 0xa623ce
jb 0xa623cd
cmp esp, dword [ecx]
cmp ebp, dword [eax + 0x6e]
imul ebp, dword [ebx + 0x74], 0x69
outsd dx, dword [esi]
pop ebx
jle 0xa623d8
jb 0xa623e1
jbe 0xa623e1
jp 0xa623d3
imul ebp, dword [ecx + 0x74], 0x6f
imul esi, dword [edi + ebp*2 + 0x7e], 0x69746f78
outsd dx, dword [esi]
jle 0xa623e5
outsd dx, dword [esi]
je 0xa623d9
xor eax, 0x16767478
je 0xa623ea
push ss
adc dword [esi + 0x75], ecx
imul edi, dword [esi + 0x7c], 0x7e6f6872
imul edi, dword [esi + 0x7f], 0x7c72683b
jne 0xa62402
push 0x7e697e6f
jg 0xa623be
jle 0xa623e9
jle 0xa62401
cmp ebp, dword [eax + 0x72]
jl 0xa623fc
push 0x7a757c72
jp 0xa623f8
outsd dx, dword [esi]
outsb dx, byte [esi]
imul edi, dword [esi + 0x16], 0x72734f11
dec edi
jae 0xa62403
jb 0xa623fa
push 0x74696b3b
jl 0xa62401
cmp ebp, dword [ebx + 0x69]
je 0xa62413
imul ebp, dword [ecx + 0x74], 0x7c
imul esi, dword [esp + edi*2 + 0x69], 0x6b3b767a
imul esi, dword [edi + ebp*2 + 0x7e], 0x7f7e6f78
imul edi, dword [edx + 0x76], 0x74696b3b
outsd dx, dword [esi]
jp 0xa62410
cmp ebp, dword [ebx + 0x69]
je 0xa6240e
jle 0xa62419
js 0xa62411
outsd dx, dword [esi]
jle 0xa62423
cmp ebp, dword [edx + esi*2 + 0x6f]
jae 0xa623e5
dec esi
push ebp
dec ecx
pop esi
pop esp
push edx
dec eax
dec edi
dec ecx
pop esi
pop edi
cmp ecx, dword [ebp + 0x5e]
dec ecx
dec eax
push edx
push esp
push ebp
cmp esi, dword [ebp + edi*2 + 0x3b]
dec edi
jae 0xa62442
je 0xa6243d
cmp ecx, dword [edi + 0x73]
jle 0xa62400
cmp ebx, dword [esi + 0x75]
jb 0xa62445
pop esi
jne 0xa6243a
jl 0xa62440
jbe 0xa62445
jp 0xa62407
cmp ecx, dword [ebx + 0x69]
dec ebx
imul esi, dword [edi + ebp*2 + 0x7e], 0x69746f78
je 0xa6243f
jle 0xa6244a
outsd dx, dword [esi]
je 0xa6243e
push ss
adc dword [edx + 0x6f], edx
outsd dx, dword [esi]
cmp edi, dword [eax + 0x7a]
jne 0xa6241a
outsd dx, dword [esi]
cmp edi, dword [ecx + 0x7e]
cmp edi, dword [edi + 0x72]
jle 0xa6241e
jg 0xa62457
push 0x7972696f
jns 0xa62459
outsb dx, byte [esi]
outsd dx, dword [esi]
jle 0xa6246d
cmp esi, dword [ecx + ebp*2 + 0x3b]
outsb dx, byte [esi]
push 0x723b7f7e
jne 0xa62435
js 0xa62470
jbe 0xa62474
jle 0xa62469
js 0xa62474
jb 0xa6247d
jp 0xa6247b
ja 0xa62440
cmp ebp, dword [ebx + 0x6e]
imul ebp, dword [esi + 0x69], 0x6b
je 0xa62473
imul ebp, dword [ebx + 0x74], 0x11167e68
jle 0xa62423
adc dword [esi + 0x55], ecx
dec esi
push ebp
dec ecx
pop esi
pop esp
push edx
dec eax
dec edi
pop esi
dec ecx
pop esi
pop edi
cmp ecx, dword [ebx + 0x49]
push esp
dec edi
pop esi
pop eax
dec edi
push edx
push esp
push ebp
sbb eax, dword [0xdb000000]
sbb al, byte [eax]
add byte [eax], dh
stc
add byte [eax], al
pop eax
sub dl, byte [ecx]
test dl, ah
and ebp, edx
jl 0xa62474
cmp esi, edi
arpl word [eax - 0x590348d2], ax
invalid
sub byte [esi], 0xb7
mov bh, 0xfc
mov bh, 0xfc
cld
cmpsb byte [esi], byte es:[edi]
add bh, cl
clc
clc
sbb esp, ebp
push ss
jmp 0xa18cb8a2
push esp
xchg esp, eax
out 0xa0, al
jnp 0xa6240b
and dword [ecx], edx
int 0x49
les eax, [edi - 0x6e]
push edi
push ebp
stosd dword es:[edi], eax
leave
mov dh, 0xf6
int1
sbb al, 0xf8
sar dword [eax - 0x60], cl
jp 0xa6248f
lahf
fdiv dword [edi - 0x58440f34]
jl 0xa624d8
invalid
push 7
pop es
dec edi
mov esi, 0xcec70319
invalid
into
cli
das
or dword [ecx + ebp], ecx
push cs
dec edx
xchg esi, eax
mov byte [0x6e651127], al
jne 0xa6240b
int 0xd2
sub al, 0x61
ret 0x898a
cmp ah, byte [ecx]
pushal
ljmp 0x1acd
out 0x6e, eax
xchg ebp, eax
cmp eax, 0x2d721b55
rcl dword [eax + 0x25]
sub eax, 0xc127fa00
push ss
xchg ebp, eax
push ecx
sbb dl, 0x14
mov dword [ebx], edx
jae 0xa62548
inc edi
mov eax, dword [0x78fc5f32]
std
mov cl, 0x3d
add esp, dword [ebp - 0x51357e96]
sal ah, cl
movsb byte es:[edi], byte [esi]
in al, dx
push ebx
adc ah, dh
mov eax, dword cs:[0x157bc1af]
sal byte [ecx], 0x4e
add dword [edx + 0x7929f06f], 0x99c25740
sbb byte [edi + ebp*2 - 0x60b557c4], bl
add byte [esi - 0x34], al
pop ss
lodsd eax, dword [esi]
pop ds
pop ds
add dl, byte [edi + 0x71ecde31]
out dx, al
and eax, 0x3d325978
xor ah, al
inc ebx
sar dword [eax + esi - 0x1392973e], 0xee
dec ebp
jnp 0xa62529
xchg ecx, eax
lodsb al, byte [esi]
xchg ebp, eax
ja 0xa62568
inc eax
enter 0xffffffffffff9cfa, 0xffffffffffffffd1
mul esp
sbb al, 0xaa
invalid
pushfd
invalid