Function at 0x5a5193
Capabilities:
Contain obfuscated stackstrings
Get number of processors

Disassembly:
mov edx, dword [ebp - 0x4cc]
add edx, 1
mov dword [ebp - 0x4cc], edx
push ecx
call 0x5a44ee
add byte [eax + edi + 0x44], al
cmp ecx, dword [edx + 0x4b]
dec edx
inc edi
cmp al, 0x83
les eax, [eax + ebp*8]
or al, byte [eax]
add byte [eax], al
add byte [esi], bh
aas
cmp dh, byte [ebx]
cmp cl, byte [ecx + 0x4f]
inc ebx
cmp eax, 0x8104c483
rol dword [edx + 0x79], 0
add byte [ecx + 0x68eec9], al
add byte [ecx - 0x75], bl
test dword [ebx + edi*8], esi
invalid
mov dword [ebp - 0xa68], ecx
push ebx
push edi
add esp, 4
or ebx, 0x140a1
add ebx, 0xb82f
sub ebx, 0x148f6
jmp 0x5a458b
pop ebx
push ecx
add ecx, 0x5166
sub ecx, 0x40ab
and ecx, 0x10990
pop ecx
mov edx, dword [ebp - 0x14bc]
mov dword [ebp - 0xa64], edx
mov dword [ebp - 0xc0c], 0
mov eax, dword [ebp - 0x4cc]
cmp eax, dword [ebp - 0x14bc]
jne 0x5a4607
push eax
and eax, 0x7e65
and eax, 0x9204
xor eax, 0x16955
and eax, 0x1497a
pop eax
push ebx
push esi
add esp, 4
call 0x5a45f2
add byte [eax], bh
inc ecx
aaa
dec esi
inc ecx
cmp ecx, dword [eax + 0x41]
dec ebp
add esp, 4
pop ebx
mov ecx, dword [ebp - 0xc0c]
mov dword [ebp - 0x14c4], ecx
jmp 0x5a4738
cmp dword [ebp - 0xc08], 0
jle 0x5a472c
push esi
push esi
add esp, 4
or esi, 0x181e0
sub esi, 0x21ee
pop esi
push esi
and esi, 0x473a
jmp 0x5a4632
jmp 0x5a4637
xor esi, 0x15b37
pop esi
push edx
xor edx, 0x5538
pop edx
mov edx, dword [ebp - 0xa68]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0xa64]
movzx edx, byte [ecx]
cmp eax, edx
je 0x5a46c8
push ebx
xor ebx, 0x2c2
or ebx, 0xebe
pop ebx
push edx
push eax
add esp, 4
add edx, 0x14c67
add edx, 0x14e8b
or edx, 0x917
pop edx
push edx
push edx
add esp, 4
or edx, 0x13d7f
pop edx
mov eax, dword [ebp - 0xa68]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0xa64]
movzx eax, byte [edx]
cmp ecx, eax
jle 0x5a46b0
mov dword [ebp - 0x14c0], 1
jmp 0x5a46ba
mov dword [ebp - 0x14c0], 0xffffffff
mov ecx, dword [ebp - 0x14c0]
mov dword [ebp - 0xc0c], ecx
jmp 0x5a472c
push eax
xor eax, 0xbcf
call 0x5a46df
add byte [ebp + 0x34], al
cmp esi, dword [esp + eax*2]
dec eax
inc ebp
inc eax
dec edx
inc ebp
add esp, 4
pop eax
push ecx
xor ecx, 0x9554
jmp 0x5a46f3
xor ecx, 0x11a65
pop ecx
mov edx, dword [ebp - 0xc08]
sub edx, 1
mov dword [ebp - 0xc08], edx
mov eax, dword [ebp - 0xa68]
add eax, 1
mov dword [ebp - 0xa68], eax
mov ecx, dword [ebp - 0xa64]
add ecx, 1
mov dword [ebp - 0xa64], ecx
jmp 0x5a4607
mov edx, dword [ebp - 0xc0c]
mov dword [ebp - 0x14c4], edx
cmp dword [ebp - 0x14c4], 0
jne 0x5a4781
push edx
call 0x5a474f
add byte [0x4e494b37], dh
inc esi
aas
add esp, 4
or edx, 0x404e
pop edx
push eax
sub eax, 0x96e6
add eax, 0x619e
or eax, 0x15900
and eax, 0xd59d
pop eax
mov eax, dword [ebp - 0x4cc]
mov dword [ebp - 0x3cc], eax
jmp 0x5a47c2
jmp 0x5a44cf
push esi
and esi, 0xc26
pop esi
push eax
push esi
add esp, 4
add eax, 0xb4d2
call 0x5a47e4
add byte [ebx + eax*2], bh
dec edx
inc ebp
push eax
xor eax, 0xc4833938
add al, 0x58
push ebx
push ecx
add esp, 4
xor ebx, 0x1577
pop ebx
push eax
call 0x5a4805
add byte [eax + 0x4a], dl
xor al, byte [esi + 0x35]
inc esp
inc ebp
aaa
xor eax, 0x4c48343
xor eax, 0x721f
add eax, 0x15a03
pop eax
push edi
jmp 0x5a481f
sub edi, 0x74d0
pop edi
mov ecx, 1
imul edx, ecx, 0
lea eax, [ebp + edx - 0xb80]
mov dword [ebp - 0x14c8], eax
push ecx
add ecx, 0xb934
add ecx, 0x129a0
pop ecx
push edi
push ebx
add esp, 4
add edi, 0xa4fc
add edi, 0x57d4
and edi, 0x13269
pop edi
push edx
push ebx
add esp, 4
and edx, 0x7aa2
pop edx
mov dword [ebp - 0x1fac], 0xffffffff
push edx
push ecx
add esp, 4
sub edx, 0x5821
xor edx, 0x8961
and edx, 0x1195c
pop edx
push edx
add edx, 0x46cd
add edx, 0x8ea9
sub edx, 0x4414
add edx, 0xe278
pop edx
mov ecx, dword [ebp - 0x3c0]
mov dword [ebp - 0x4d0], ecx
jmp 0x5a48c6
mov edx, dword [ebp - 0x4d0]
add edx, 1
mov dword [ebp - 0x4d0], edx
push ebx
or ebx, 0x1547e
call 0x5a48da
add byte [ebx], bh
aaa
xor eax, 0x43333a3f
add esp, 4
sub ebx, 0x8ce4
pop ebx
push esi
and esi, 0x13cf0
or esi, 0x8d4f
add esi, 0x133e1
pop esi
mov eax, dword [ebp - 0x4d0]
sub eax, dword [ebp - 0x3c0]
cmp eax, 0xffffffff
jb 0x5a4940
push edx
add edx, 0x4b16
pop edx
push ebx
add ebx, 0x8963
pop ebx
push edx
call 0x5a492a
add byte [ebp + ecx*2 + 0x33], cl
cmp dword [edi], esi
dec edx
dec eax
cmp dword [ebx + 0x34], ecx
add esp, 4
jmp 0x5a4934
or edx, 0x10f6d
pop edx
jmp 0x5a4b6e
mov dword [ebp - 0xc10], 7
mov ecx, dword [ebp - 0x4d0]
mov dword [ebp - 0xa60], ecx
push edi
push esi
add esp, 4
sub edi, 0xcafd
add edi, 0xe189
xor edi, 0x13f9f
pop edi
push edx
push edx
add esp, 4
sub edx, 0x8e3a
jmp 0x5a497f
pop edx
push eax
add eax, 0x119e6
pop eax
mov edx, dword [ebp - 0x14c8]
mov dword [ebp - 0x9f0], edx
mov dword [ebp - 0xc14], 0
mov eax, dword [ebp - 0x4d0]
cmp eax, dword [ebp - 0x14c8]
jne 0x5a49ef
push edx
sub edx, 0x3ead
pop edx
push ebx
call 0x5a49c4
add byte [edx + ecx*2], bh
cmp byte [esi + 0x34473e43], dh
add esp, 4
pop ebx
push ebx
sub ebx, 0xfda6
pop ebx
push eax
xor eax, 0xae96
jmp 0x5a49dd
pop eax
mov ecx, dword [ebp - 0xc14]
mov dword [ebp - 0x14d0], ecx
jmp 0x5a4b20
cmp dword [ebp - 0xc10], 0
jle 0x5a4b14
push eax
and eax, 0x16a37
call 0x5a4a12
add byte [esi], dh
push eax
aaa
dec edx
inc esi
dec eax
cmp dword [edi + 0x33], ecx
add esp, 4
and eax, 0x18379
and eax, 0x29c3
pop eax
push edi
push ecx
add esp, 4
add edi, 0x6699
pop edi
mov edx, dword [ebp - 0xa60]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0x9f0]
movzx edx, byte [ecx]
cmp eax, edx
je 0x5a4ab0
push edi
push esi
add esp, 4
sub edi, 0x10d12
or edi, 0x144ee
add edi, 0x190b
and edi, 0x33c6
pop edi
push ebx
and ebx, 0x851b
and ebx, 0x148b3
xor ebx, 0xa131
pop ebx
mov eax, dword [ebp - 0xa60]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0x9f0]
movzx eax, byte [edx]
cmp ecx, eax
jle 0x5a4a98
mov dword [ebp - 0x14cc], 1
jmp 0x5a4aa2
mov dword [ebp - 0x14cc], 0xffffffff
mov ecx, dword [ebp - 0x14cc]
mov dword [ebp - 0xc14], ecx
jmp 0x5a4b14
push ebx
and ebx, 0x16103
call 0x5a4ac5
add byte [edx + 0x3b], cl
inc edx
cmp eax, 0x4349383c
add esp, 4
pop ebx
push edi
push ebx
add esp, 4
call 0x5a4ade
add byte [ebx], dh
inc edi
xor al, byte [ebx + 0x35]
inc esi
xor dh, byte [edx]
inc esi
inc edx
add esp, 4
pop edi
mov edx, dword [ebp - 0xc10]
sub edx, 1
mov dword [ebp - 0xc10], edx
mov eax, dword [ebp - 0xa60]
add eax, 1
mov dword [ebp - 0xa60], eax
mov ecx, dword [ebp - 0x9f0]
add ecx, 1
mov dword [ebp - 0x9f0], ecx
jmp 0x5a49ef
mov edx, dword [ebp - 0xc14]
mov dword [ebp - 0x14d0], edx
cmp dword [ebp - 0x14d0], 0
jne 0x5a4b69
push esi
push eax
add esp, 4
jmp 0x5a4b34
sub esi, 0xcf65
sub esi, 0x10bbc
pop esi
push ecx
xor ecx, 0x963d
call 0x5a4b57
add byte [edx], bh
dec ecx
aaa
inc esi
aas
inc ecx
inc ebp
xor esi, dword [ebx + eax*4]
les eax, [ecx + ebx*2]
mov eax, dword [ebp - 0x4d0]
mov dword [ebp - 0xa5c], eax
jmp 0x5a4baa
jmp 0x5a48b7
push edi
jmp 0x5a4b78
jmp 0x5a4b81
and edi, 0xa6ca
sub edi, 0x6e1c
pop edi
push esi
push esi
add esp, 4
or esi, 0x6153
and esi, 0x1443c
pop esi
mov dword [ebp - 0xa5c], 0
push ebx
xor ebx, 0x6ab4
jmp 0x5a4bb9
pop ebx
push esi
add esi, 0x16145
add esi, 0x18229
pop esi
push edi
or edi, 0xdfbf
or edi, 0xff47
add edi, 0x2956
pop edi
mov byte [ebp - 0x804], 0x45
mov byte [ebp - 0x803], 0x78
mov byte [ebp - 0x802], 0x69
mov byte [ebp - 0x801], 0x74
mov byte [ebp - 0x800], 0x50
mov byte [ebp - 0x7ff], 0x72
mov byte [ebp - 0x7fe], 0x6f
mov byte [ebp - 0x7fd], 0x63
mov byte [ebp - 0x7fc], 0x65
mov byte [ebp - 0x7fb], 0x73
mov byte [ebp - 0x7fa], 0x73
mov byte [ebp - 0x7f9], 0
push esi
push edi
add esp, 4
and esi, 0xafe4
add esi, 0xcf94
sub esi, 0x14634
or esi, 0x1797
pop esi
push edx
or edx, 0x6190
pop edx
push eax
push ebx
add esp, 4
and eax, 0x17c8d
pop eax
mov ecx, 0x6b
mov word [ebp - 0x1628], cx
mov edx, 0x65
mov word [ebp - 0x1626], dx
mov eax, 0x72
mov word [ebp - 0x1624], ax
mov ecx, 0x6e
mov word [ebp - 0x1622], cx
mov edx, 0x65
mov word [ebp - 0x1620], dx
mov eax, 0x6c
mov word [ebp - 0x161e], ax
mov ecx, 0x33
mov word [ebp - 0x161c], cx
mov edx, 0x32
mov word [ebp - 0x161a], dx
mov eax, 0x2e
mov word [ebp - 0x1618], ax
mov ecx, 0x64
mov word [ebp - 0x1616], cx
mov edx, 0x6c
mov word [ebp - 0x1614], dx
mov eax, 0x6c
mov word [ebp - 0x1612], ax
xor ecx, ecx
mov word [ebp - 0x1610], cx
push esi
push esi
add esp, 4
xor esi, 0x14c26
and esi, 0x12eaa
pop esi
push ecx
push edx
add esp, 4
xor ecx, 0x13f91
sub ecx, 0x37c0
pop ecx
push edi
push esi
add esp, 4
jmp 0x5a4d2c
pop edi
push edx
push edi
add esp, 4
or edx, 0xe9a7
pop edx
push eax
sub eax, 0x15626
or eax, 0xf0ab
sub eax, 0x571d
sub eax, 0xdac5
pop eax
push ebx
push edx
add esp, 4
sub ebx, 0x33d2
pop ebx
mov edx, dword fs:[0x18]
mov dword [ebp - 0x1890], edx
mov eax, dword [ebp - 0x1890]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0x1894], ecx
mov edx, dword [ebp - 0x1894]
mov dword [ebp - 0x14d4], edx
push eax
call 0x5a4d96
add byte [esi], bh
dec esp
xor eax, 0x3e3d3e42
dec edx
add esp, 4
call 0x5a4da5
add byte [esi + 0x48], cl
inc ebx
dec esi
dec eax
add esp, 4
call 0x5a4db5
add byte [esi + 0x4c], al
dec ecx
xor esi, dword [edi]
dec esp
inc ebp
add esp, 4
pop eax
cmp dword [ebp - 0x14d4], 0
jne 0x5a4dd1
mov dword [ebp - 0x2e0], 0
jmp 0x5a508d
mov eax, dword [ebp - 0x14d4]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0xc20], edx
push edi
push eax
add esp, 4
sub edi, 0x90db
pop edi
push ebx
sub ebx, 0x2b71
or ebx, 0xa944
pop ebx
push eax
call 0x5a4e0b
add byte [esi + 0x38], al
cmp cl, byte [ecx + 0x33]
dec eax
xor eax, dword [ebx - 0x1f7efb3c]
push eax
dec esi
add byte [eax], al
pop eax
cmp dword [ebp - 0xc20], 0
jne 0x5a4e2d
mov dword [ebp - 0x2e0], 0
jmp 0x5a508d
mov eax, dword [ebp - 0xc20]
mov dword [ebp - 0x4d4], eax
push esi
and esi, 0x3367
or esi, 0xdafd
pop esi
push esi
push edx
add esp, 4
and esi, 0x16d7b
pop esi
push ebx
push eax
add esp, 4
or ebx, 0x590d
xor ebx, 0xdd98
add ebx, 0xf62f
pop ebx
lea ecx, [ebp - 0x1628]
mov dword [ebp - 0xc1c], ecx
mov edx, dword [ebp - 0x4d4]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0xc18], eax
xor ecx, ecx
mov word [ebp - 0x1f8], cx
xor edx, edx
mov word [ebp - 0x100], dx
push esi
push ebx
add esp, 4
or esi, 0x1444e
call 0x5a4eb3
add byte [ebp + 0x3a], cl
inc ebx
xor cl, byte [ebx + 0x3c]
inc ebx
inc edx
push eax
dec ebx
add esp, 4
pop esi
push eax
push eax
add esp, 4
sub eax, 0xfb51
pop eax
push ebx
jmp 0x5a4ec9
pop ebx
mov eax, dword [ebp - 0xc18]
mov cx, word [eax]
mov word [ebp - 0xf7e], cx
mov edx, dword [ebp - 0xc18]
add edx, 2
mov dword [ebp - 0xc18], edx
mov ax, word [ebp - 0xf7e]
mov word [ebp - 0x1f8], ax
mov ecx, dword [ebp - 0xc1c]
mov dx, word [ecx]
mov word [ebp - 0xf80], dx
mov eax, dword [ebp - 0xc1c]
add eax, 2
mov dword [ebp - 0xc1c], eax
mov cx, word [ebp - 0xf80]
mov word [ebp - 0x100], cx
push eax
push ecx
add esp, 4
and eax, 0xdddf
pop eax
push ecx
sub ecx, 0x10c26
jmp 0x5a4f3c
pop ecx
push edi
jmp 0x5a4f47
add edi, 0xf245
pop edi
push edi
and edi, 0xb419
pop edi
movzx edx, word [ebp - 0x100]
test edx, edx
jne 0x5a4f79
movzx eax, word [ebp - 0x1f8]
movzx ecx, word [ebp - 0x100]
sub eax, ecx
mov dword [ebp - 0x1498], eax
jmp 0x5a4fdc
movzx edx, word [ebp - 0x1f8]
movzx eax, word [ebp - 0x100]
cmp edx, eax
je 0x5a4e98
movzx ecx, word [ebp - 0x1f8]
xor ecx, 0x20
movzx edx, word [ebp - 0x100]
cmp ecx, edx
je 0x5a4e98
movzx eax, word [ebp - 0x1f8]
movzx ecx, word [ebp - 0x100]
cmp eax, ecx
jge 0x5a4fc6
mov dword [ebp - 0x14d8], 0xffffffff
jmp 0x5a4fd0
mov dword [ebp - 0x14d8], 1
mov edx, dword [ebp - 0x14d8]
mov dword [ebp - 0x1498], edx
cmp dword [ebp - 0x1498], 0
jne 0x5a5025
push eax
jmp 0x5a4fee
xor eax, 0x8e18
and eax, 0xdc2c
pop eax
push edi
push esi
add esp, 4
xor edi, 0x17349
call 0x5a5013
add byte [esi], dh
cmp cl, byte [ebx + 0x41]
push eax
dec esi
xor eax, dword [ebx - 0x74a0fb3c]
test dword [ebx + edi*8], ebp
invalid
push esi
push esi
add esp, 4
or esi, 0x9cc0
add esi, 0x12eb1
pop esi
push edi
push edi
add esp, 4
xor edi, 0xdc6b
or edi, 0xb924
pop edi
push edi
sub edi, 0x17271
add edi, 0x72fd
pop edi
mov ecx, dword [ebp - 0x4d4]
mov edx, dword [ecx]
mov dword [ebp - 0x4d4], edx
mov eax, dword [ebp - 0x4d4]
cmp eax, dword [ebp - 0xc20]
je 0x5a5083
mov ecx, dword [ebp - 0x4d4]
cmp dword [ecx + 0x30], 0
jne 0x5a4e39
mov dword [ebp - 0x2e0], 0
push ebx
jmp 0x5a5096
pop ebx
push edx
xor edx, 0x4a2c
and edx, 0x3257
call 0x5a50b3
add byte [esi], dh
cmp edi, dword [ebx]
inc edx
dec edi
inc esp
dec ebp
cmp byte [ebp - 0x7d], al
les eax, [edx + ebx*2]
push ecx
sub ecx, 0x14c39
pop ecx
cmp dword [ebp - 0x2e0], 0
jne 0x5a59d8
mov edx, 0x6b
mov word [ebp - 0x16cc], dx
mov eax, 0x65
mov word [ebp - 0x16ca], ax
mov ecx, 0x72
mov word [ebp - 0x16c8], cx
mov edx, 0x6e
mov word [ebp - 0x16c6], dx
mov eax, 0x65
mov word [ebp - 0x16c4], ax
mov ecx, 0x6c
mov word [ebp - 0x16c2], cx
mov edx, 0x33
mov word [ebp - 0x16c0], dx
mov eax, 0x32
mov word [ebp - 0x16be], ax
mov ecx, 0x2e
mov word [ebp - 0x16bc], cx
mov edx, 0x64
mov word [ebp - 0x16ba], dx
mov eax, 0x6c
mov word [ebp - 0x16b8], ax
mov ecx, 0x6c
mov word [ebp - 0x16b6], cx
xor edx, edx
mov word [ebp - 0x16b4], dx
push eax
sub eax, 0x6178
and eax, 0x1354d
add eax, 0x5e0
jmp 0x5a517e
pop eax
push ebx
sub ebx, 0x17fab
call 0x5a5193
add byte [esi + 0x4e], al
xor dh, byte [ebx]
inc ebx
cmp edi, dword [ebx]
add esp, 4
pop ebx
mov byte [ebp - 0x820], 0x4c
mov byte [ebp - 0x81f], 0x6f
mov byte [ebp - 0x81e], 0x61
mov byte [ebp - 0x81d], 0x64
mov byte [ebp - 0x81c], 0x4c
mov byte [ebp - 0x81b], 0x69
mov byte [ebp - 0x81a], 0x62
mov byte [ebp - 0x819], 0x72
mov byte [ebp - 0x818], 0x61
mov byte [ebp - 0x817], 0x72
mov byte [ebp - 0x816], 0x79
mov byte [ebp - 0x815], 0x57
mov byte [ebp - 0x814], 0
mov eax, dword fs:[0x18]
mov dword [ebp - 0x1898], eax
mov ecx, dword [ebp - 0x1898]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x189c], edx
mov eax, dword [ebp - 0x189c]
mov dword [ebp - 0x14dc], eax
push edi
push edx
add esp, 4
xor edi, 0x8a69
add edi, 0x87ec
pop edi
push ebx
or ebx, 0x23d1
pop ebx
push ebx
push ecx
add esp, 4
xor ebx, 0x2683
sub ebx, 0xca82
or ebx, 0x2852
pop ebx
cmp dword [ebp - 0x14dc], 0
jne 0x5a5263
mov dword [ebp - 0x6ec], 0
jmp 0x5a551f
mov ecx, dword [ebp - 0x14dc]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xc2c], eax
push ebx
call 0x5a5282
add byte [edi + 0x40], cl
cmp dl, byte [eax + 0x4e]
cmp byte [ebx - 0x1c7efb3c], al
jle 0x5a52f5
add dword [eax], eax
pop ebx
push ecx
jmp 0x5a5295
jmp 0x5a529a
xor ecx, 0x9296
xor ecx, 0x2502
pop ecx
cmp dword [ebp - 0xc2c], 0
jne 0x5a52bf
mov dword [ebp - 0x6ec], 0
jmp 0x5a551f
mov ecx, dword [ebp - 0xc2c]
mov dword [ebp - 0x4d8], ecx
mov edx, dword [ebp - 0x704]
add edx, 1
mov dword [ebp - 0x704], edx