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

Disassembly:
mov edx, dword [ebp - 0x4d0]
add edx, 1
mov dword [ebp - 0x4d0], edx
push ebx
or ebx, 0xa5a4
add ebx, 0xc29c
sub ebx, 0x131e8
pop ebx
push ebx
push edx
add esp, 4
sub ebx, 0x3643
and ebx, 0x51d9
pop ebx
push edx
push esi
add esp, 4
and edx, 0xa4ff
pop edx
mov eax, dword [ebp - 0x4d0]
sub eax, dword [ebp - 0x3c0]
cmp eax, 0xffffffff
jb 0x46a628
push esi
xor esi, 0xc14d
add esi, 0x17d73
xor esi, 0x16ec6
pop esi
push edx
and edx, 0x9dbe
pop edx
push ebx
jmp 0x46a617
jmp 0x46a61c
sub ebx, 0x72cb
pop ebx
jmp 0x46a856
mov dword [ebp - 0xc10], 7
mov ecx, dword [ebp - 0x4d0]
mov dword [ebp - 0xa60], ecx
push ecx
add ecx, 0x35e1
pop ecx
push esi
push edi
add esp, 4
sub esi, 0x156e9
pop esi
push eax
push eax
add esp, 4
add eax, 0x759a
pop eax
push edx
push ebx
add esp, 4
add edx, 0x16a55
xor edx, 0x18300
pop edx
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 0x46a6d7
push edi
xor edi, 0x16fbd
or edi, 0x9b64
call 0x46a6b0
add byte [edi], dh
dec ebp
xor al, byte [ebp + 0x39]
inc esi
inc ebx
dec edi
cmp al, 0x83
les eax, [edi + ebx*2]
push ebx
push esi
add esp, 4
sub ebx, 0x919f
add ebx, 0x10aa
pop ebx
mov ecx, dword [ebp - 0xc14]
mov dword [ebp - 0x14d0], ecx
jmp 0x46a808
cmp dword [ebp - 0xc10], 0
jle 0x46a7fc
sbb byte [ecx], al
add byte [eax], al
push esi
push edi
add esp, 4
sub esi, 0x11e2
and esi, 0xfead
pop esi
push eax
push esi
add esp, 4
xor eax, 0x1143d
sub eax, 0x94a
pop eax
push eax
add eax, 0x18674
or eax, 0xda80
enter 0xffffffffffffda80, 0
add byte [eax - 0x75], bl
xchg ebp, eax
mov al, byte [0xffffff5]
mov dh, 2
mov ecx, dword [ebp - 0x9f0]
movzx edx, byte [ecx]
cmp eax, edx
je 0x46a798
push ecx
push edx
add esp, 4
add al, 0xeb
invalid
add al, 0xeb
add al, 0x4f
cmp eax, 0x56594844
pop ecx
push esi
push esi
add esp, 4
xor esi, 0x78e3
add esi, 0x81ea
add esi, 0x5458
and esi, 0xec01
pop esi
push edx
or edx, 0x61df
pop edx
mov eax, dword [ebp - 0xa60]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0x9f0]
movzx eax, byte [edx]
cmp ecx, eax
jle 0x46a780
mov dword [ebp - 0x14cc], 1
jmp 0x46a78a
mov dword [ebp - 0x14cc], 0xffffffff
mov ecx, dword [ebp - 0x14cc]
mov dword [ebp - 0xc14], ecx
jmp 0x46a7fc
push esi
jmp 0x46a79f
or esi, 0x56f7
pop esi
push ecx
sub ecx, 0x18321
xor ecx, 0x17011
and ecx, 0x8519
call 0x46a7c6
add byte [eax + ecx*2], bh
xor cl, byte [ebp + 0x4d]
cmp eax, dword [ebx + eax*4 - 0x3c]
add al, 0x59
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 0x46a6d7
mov edx, dword [ebp - 0xc14]
mov dword [ebp - 0x14d0], edx
cmp dword [ebp - 0x14d0], 0
jne 0x46a851
push eax
add eax, 0xa322
pop eax
push eax
push eax
add esp, 4
call 0x46a82c
add byte [ecx + 0x4a], cl
dec edi
dec esi
xor bh, byte [esi]
aaa
inc esp
add esp, 4
xor eax, 0x10147
jmp 0x46a83c
and eax, 0xccb9
pop eax
mov eax, dword [ebp - 0x4d0]
mov dword [ebp - 0xa5c], eax
jmp 0x46a892
jmp 0x46a59f
push edx
push esi
add esp, 4
or edx, 0x1bf2
pop edx
push esi
push edi
add esp, 4
sub esi, 0x139ef
pop esi
push edi
push eax
add esp, 4
sub edi, 0x2880
pop edi
push edx
and edx, 0xfc70
add edx, 0xd339
pop edx
mov dword [ebp - 0xa5c], 0
push ebx
push ebx
add esp, 4
and ebx, 0x12211
sub ebx, 0x3ca4
add ebx, 0xcdef
xor ebx, 0x6c14
pop ebx
push ecx
sub ecx, 0x15d58
pop ecx
push edx
push eax
add esp, 4
jmp 0x46a8c3
pop edx
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 eax
add esp, 4
jmp 0x46a925
sub esi, 0x14a63
pop esi
push ebx
push ebx
add esp, 4
sub ebx, 0xb20f
or ebx, 0x2cd7
or ebx, 0x6ca0
xor ebx, 0x2dcb
pop ebx
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 edx
push edi
add esp, 4
or edx, 0xe93f
or edx, 0x145a7
and edx, 0x3f0d
xor edx, 0x10a3a
pop edx
push ecx
xor ecx, 0x15077
or ecx, 0x12688
xor ecx, 0xa7a3
pop ecx
push ecx
push ebx
add esp, 4
add ecx, 0x6686
pop ecx
push ecx
jmp 0x46aa2a
or ecx, 0x11646
pop ecx
push ebx
and ebx, 0xed58
pop ebx
push edi
xor edi, 0x15813
sub edi, 0x129aa
pop edi
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 edx
sub edx, 0xd6ed
xor edx, 0x68a
and edx, 0xccf5
pop edx
push edi
push esi
add esp, 4
or edi, 0x5e1f
pop edi
push edi
push edi
add esp, 4
or edi, 0x9e5
xor edi, 0x15d51
pop edi
cmp dword [ebp - 0x14d4], 0
jne 0x46aab9
mov dword [ebp - 0x2e0], 0
jmp 0x46ad75
mov eax, dword [ebp - 0x14d4]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0xc20], edx
push esi
push eax
add esp, 4
and esi, 0x4241
and esi, 0x458a
add esi, 0xd2b1
pop esi
push ebx
sub ebx, 0x1490f
sub ebx, 0xb06f
sub ebx, 0x101f2
add ebx, 0xce13
pop ebx
cmp dword [ebp - 0xc20], 0
jne 0x46ab15
mov dword [ebp - 0x2e0], 0
jmp 0x46ad75
mov eax, dword [ebp - 0xc20]
mov dword [ebp - 0x4d4], eax
push ecx
add ecx, 0x15764
and ecx, 0xe0a3
pop ecx
push esi
push eax
add esp, 4
and esi, 0x2c0a
add esi, 0x6dd9
pop esi
push eax
push edi
add esp, 4
and eax, 0x27f9
add eax, 0xbb73
pop eax
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 ecx
xor ecx, 0x6927
pop ecx
push ecx
push esi
add esp, 4
sub ecx, 0x11c24
xor ecx, 0x122a7
and ecx, 0xb1f2
pop ecx
push eax
push ebx
add esp, 4
or eax, 0x184d9
xor eax, 0x139fa
pop eax
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 ecx
and ecx, 0x9d9c
and ecx, 0x14b81
sub ecx, 0x139
sub ecx, 0x116f3
pop ecx
push edx
push edx
add esp, 4
add edx, 0x15099
and edx, 0x57eb
sub edx, 0x7600
pop edx
movzx edx, word [ebp - 0x100]
test edx, edx
jne 0x46ac61
movzx eax, word [ebp - 0x1f8]
movzx ecx, word [ebp - 0x100]
sub eax, ecx
mov dword [ebp - 0x1498], eax
jmp 0x46acc4
movzx edx, word [ebp - 0x1f8]
movzx eax, word [ebp - 0x100]
cmp edx, eax
je 0x46ab80
movzx ecx, word [ebp - 0x1f8]
xor ecx, 0x20
movzx edx, word [ebp - 0x100]
cmp ecx, edx
je 0x46ab80
movzx eax, word [ebp - 0x1f8]
movzx ecx, word [ebp - 0x100]
cmp eax, ecx
jge 0x46acae
mov dword [ebp - 0x14d8], 0xffffffff
jmp 0x46acb8
mov dword [ebp - 0x14d8], 1
mov edx, dword [ebp - 0x14d8]
mov dword [ebp - 0x1498], edx
cmp dword [ebp - 0x1498], 0
jne 0x46ad0d
push esi
sub esi, 0xb61f
sub esi, 0x27e0
and esi, 0x13466
pop esi
push ecx
push edi
add esp, 4
jmp 0x46aceb
add ecx, 0x56f7
add ecx, 0x740b
jmp 0x46acfe
pop ecx
mov eax, dword [ebp - 0x4d4]
mov dword [ebp - 0x2e0], eax
jmp 0x46ad75
push edi
push ecx
add esp, 4
and edi, 0x13bc1
and edi, 0x11aa6
and edi, 0x10682
jmp 0x46ad2c
pop edi
push esi
push eax
add esp, 4
add esi, 0x186
or esi, 0x2c4
pop esi
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 0x46ad6b
mov ecx, dword [ebp - 0x4d4]
cmp dword [ecx + 0x30], 0
jne 0x46ab21
mov dword [ebp - 0x2e0], 0
push ebx
push esi
add esp, 4
or ebx, 0x15173
add ebx, 0x169f6
pop ebx
push esi
add esi, 0xab35
call 0x46ad9c
add byte [edi + ecx*2 + 0x4e], cl
inc ecx
xor edi, dword [edi]
inc ebx
xor eax, dword [ebx + 0x5eb04c4]
dec ebp
aaa
cmp eax, 0x835e3a43
mov ebp, 0xfffffd20
add byte [edi], cl
test dword [ecx + ecx], ecx
add byte [eax], al
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 ecx
add ecx, 0x422a
sub ecx, 0x8f37
xor ecx, 0x18a5
call 0x46ae6f
add byte [ecx + 0x36], cl
cmp edi, dword [esi]
dec ebp
dec edi
xor al, 0x46
dec edx
add esp, 4
pop ecx
push edx
push edx
add esp, 4
or edx, 0x47d0
pop edx
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 edx
push ebx
add esp, 4
sub edx, 0xacd0
add edx, 0x8dfd
sub edx, 0x5d63
sub edx, 0x286a
pop edx
push ebx
push ebx
add esp, 4
or ebx, 0x11654
pop ebx
push edi
add edi, 0xeb6d
pop edi
cmp dword [ebp - 0x14dc], 0
jne 0x46af4b
mov dword [ebp - 0x6ec], 0
jmp 0x46b207
mov ecx, dword [ebp - 0x14dc]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xc2c], eax
push edx
push ecx
add esp, 4
sub edx, 0xf688
pop edx
push edx
xor edx, 0x1660
or edx, 0x1051e
pop edx
push edi
push edi
add esp, 4
add edi, 0x5f9a
xor edi, 0x8a82
add edi, 0x36ca
pop edi
cmp dword [ebp - 0xc2c], 0
jne 0x46afa7
mov dword [ebp - 0x6ec], 0
jmp 0x46b207
mov ecx, dword [ebp - 0xc2c]
mov dword [ebp - 0x4d8], ecx
push eax
push edi
add esp, 4
call 0x46afc7
add byte [esi + edi + 0x3a], cl
inc esi
dec esp
xor esi, dword [edi]
dec ebp
aas
add esp, 4
pop eax
push esi
push ebx
add esp, 4
add esi, 0x15cb7
xor esi, 0x2fa4
pop esi
push ecx
sub ecx, 0xbf40
pop ecx
lea edx, [ebp - 0x16cc]
mov dword [ebp - 0xc28], edx
mov eax, dword [ebp - 0x4d8]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xc24], ecx
xor edx, edx
mov word [ebp - 0x1fc], dx
xor eax, eax
mov word [ebp - 0x104], ax
push ecx
add ecx, 0x174ef
pop ecx
push ebx
push ecx
add esp, 4
and ebx, 0x5006
and ebx, 0xbf19
pop ebx
push ebx
push ecx
add esp, 4
xor ebx, 0x80ca
pop ebx
push eax
push edx
add esp, 4
xor eax, 0xa980
pop eax
mov ecx, dword [ebp - 0xc24]
mov dx, word [ecx]
mov word [ebp - 0xf82], dx
mov eax, dword [ebp - 0xc24]
add eax, 2
mov dword [ebp - 0xc24], eax
mov cx, word [ebp - 0xf82]
mov word [ebp - 0x1fc], cx
mov edx, dword [ebp - 0xc28]
mov ax, word [edx]
mov word [ebp - 0xf84], ax
mov ecx, dword [ebp - 0xc28]
add ecx, 2
mov dword [ebp - 0xc28], ecx
mov dx, word [ebp - 0xf84]
mov word [ebp - 0x104], dx
push eax
push edx
add esp, 4
jmp 0x46b0a9
pop eax
push edi
push ebx
add esp, 4
and edi, 0x11bb
pop edi
push esi
push esi
add esp, 4
xor esi, 0x38b7
xor esi, 0x8b5c
pop esi
push eax
or eax, 0x9894
pop eax
movzx eax, word [ebp - 0x104]
test eax, eax
jne 0x46b0f3
movzx ecx, word [ebp - 0x1fc]
movzx edx, word [ebp - 0x104]
sub ecx, edx
mov dword [ebp - 0x14e4], ecx
jmp 0x46b156
movzx eax, word [ebp - 0x1fc]
movzx ecx, word [ebp - 0x104]
cmp eax, ecx
je 0x46b012
movzx edx, word [ebp - 0x1fc]
xor edx, 0x20
movzx eax, word [ebp - 0x104]
cmp edx, eax
je 0x46b012
movzx ecx, word [ebp - 0x1fc]
movzx edx, word [ebp - 0x104]
cmp ecx, edx
jge 0x46b140
mov dword [ebp - 0x14e0], 0xffffffff
jmp 0x46b14a
mov dword [ebp - 0x14e0], 1
mov eax, dword [ebp - 0x14e0]
mov dword [ebp - 0x14e4], eax
cmp dword [ebp - 0x14e4], 0
jne 0x46b19f
push esi
sub esi, 0x15e18
and esi, 0x1542
pop esi
push eax
push edx
add esp, 4
sub eax, 0x15e5c
pop eax
push ebx
push edi
add esp, 4
xor ebx, 0x12f99
xor ebx, 0x74e8
sub ebx, 0x9313
pop ebx
mov ecx, dword [ebp - 0x4d8]
mov dword [ebp - 0x6ec], ecx
jmp 0x46b207
push ecx
push eax
add esp, 4
call 0x46b1b0
add byte [esi], dh
dec ecx
inc eax
cmp byte [ebp + eax*2 - 0x7d], al
les eax, [ecx + eax*4]
leave
cmc
and al, byte [eax]
add al, ch
or dword [eax], eax
add byte [eax], al
add byte [ebp + 0x43], cl
push eax
dec esp
xor al, 0x40
inc eax
add esp, 4
or ecx, 0x1bfe
pop ecx
mov edx, dword [ebp - 0x4d8]
mov eax, dword [edx]
mov dword [ebp - 0x4d8], eax
mov ecx, dword [ebp - 0x4d8]
cmp ecx, dword [ebp - 0xc2c]
je 0x46b1fd
mov edx, dword [ebp - 0x4d8]
cmp dword [edx + 0x30], 0
jne 0x46afb3
mov dword [ebp - 0x6ec], 0
push ebx
sub ebx, 0x3575
add ebx, 0xafb4
pop ebx
push ecx
add ecx, 0xb939
and ecx, 0x1490e
pop ecx
push esi
sub esi, 0xcb8a
pop esi
push esi
sub esi, 0xc2d0
or esi, 0xbf6e
pop esi
cmp dword [ebp - 0x6ec], 0
jne 0x46b283
push eax
push eax
add esp, 4
sub eax, 0x78a5
pop eax
push eax
push ebx
add esp, 4
add eax, 0x2fe2
sub eax, 0x11c90
or eax, 0x1ba1
pop eax
push ebx
and ebx, 0xe453
xor ebx, 0x17b15
pop ebx
mov dword [ebp - 0x738], 0
jmp 0x46bdaa
push edx
push edi
add esp, 4
or edx, 0x154aa
pop edx
push esi
call 0x46b29f
add byte [edi + 0x4d], cl
xor al, 0x4c
cmp al, 0x47
dec ebp
inc eax
xor eax, 0x8104c483
invalid
invalid
push ecx
push ecx
add esp, 4
call 0x46bdbc
add byte [ecx], bh
cmp eax, 0x3c4e4746
inc ecx
add esp, 4
and ecx, 0x60f3
call 0x46bdd2
add byte [ecx + 0x3d], cl
inc ecx
xor edi, dword [0xc4834b43]
add al, 0x81
loope 0x46bd7a
mov bl, 0
add byte [ecx - 0x75], bl
lea esi, [esp + edi*8]
invalid