Function at 0x4020c7
Capabilities:
Access peb ldr_data
Get kernel32 base address
Get number of processors

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x40
mov eax, dword [0x42e040]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push str.AoZk0__kmZ__Z_mAP1_
lea ecx, [ebp - 0x34]
call fcn.00402998
xor eax, eax
lea edi, [ebp - 0x1c]
stosd dword es:[edi], eax
push 0xf
pop ebx
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
and dword [ebp - 0xc], 0
cmp dword [ebp - 0x24], 0
mov dword [ebp - 8], ebx
mov byte [ebp - 0x1c], 0
jbe 0x402135
call fcn.00403030
cmp dword [ebp - 0x20], ebx
lea edx, [ebp - 0x34]
push dword [ebp - 0x24]
cmova edx, dword [ebp - 0x34]
mov ecx, eax
call fcn.00403915
pop ecx
push eax
call fcn.004031f3
cmp dword [ebp - 0x20], ebx
lea eax, [ebp - 0x34]
pop ecx
push dword [ebp - 0x24]
cmova eax, dword [ebp - 0x34]
push eax
jmp 0x402143
mov esi, 0x42aabc
push esi
call fcn.0040dd20
pop ecx
push eax
push esi
lea ecx, [ebp - 0x1c]
call fcn.00402a4b
rcr ecx, 0xe
and si, 0x153
rol si, 3
rcl ecx, 0xe6
mul edi
rol cx, 0x2c
dec si
imul edi
mul ax
dec si
imul dx
imul bx
imul ax
mul ax
mul eax
ror dx, 0x3e
rol ecx, 0x35
xor esi, 0xfd
dec di
ror cx, 0x6e
mov edx, 5
je 0x4021a3
and edi, edi
rol di, 0x47
mov eax, ecx
imul si
sub di, si
or edi, edx
jmp 0x4021c2
shl esi, 0x2e
sub ax, dx
shl bx, 0xfe
inc cx
shr ebx, 0xa2
mul cx
add di, 0x333
imul edx
rol eax, 0x91
mul bx
movzx ebx, si
imul eax
rol bx, 0x95
and edi, eax
imul cx
xor eax, ebx
dec ecx
sub edx, edi
jb 0x4021e7
shr eax, 0x62
sub eax, 0x24c
or edx, 0x217
jmp 0x402204
add ecx, edx
rcl ebx, 0xf
xor dx, ax
mul ebx
dec si
inc cx
mul di
imul dx
add bx, dx
or ebx, 0x38f
shl edx, 0xf3
jne 0x402217
mov edx, 0x280
movsx ecx, si
shr ax, 0xeb
jmp 0x402232
imul eax
rol eax, 0x2c
mov edx, eax
inc ecx
sub bx, 0xf3
imul ecx
mov ecx, 0x2e7
mul ecx
sub si, 0x3a2
shr bx, 0x8f
mul cx
sub ecx, ecx
dec esi
ror eax, 0x48
mul edi
inc dx
jne 0x402264
shl bx, 0x64
or bx, 0xd1
mov ax, di
add edx, 0x2da
rcr dx, 0x22
shr cx, 0xd3
mul ax
jmp 0x402270
rcl bx, 0x19
xor cx, cx
mov ecx, 0x231
inc si
jae 0x402294
add edi, 0x38
sub edx, 0x99
sub ecx, 0x1f5
mul dx
rcl ax, 0x93
ror bx, 0xc
sub ax, 0x29
jmp 0x4022ac
inc di
mul esi
rcr edx, 0x52
imul dx
sub cx, 0x174
ror ebx, 0x18
mul cx
imul dx
shl di, 0xf1
shl eax, 0xe1
sub bx, 0x247
rcr si, 0xf1
mov ax, di
rcl esi, 0x84
or bx, 0x1fe
add dx, 0x5b
mul ecx
ja 0x4022d4
imul si
jmp 0x4022de
imul si
rol di, 0x71
movzx eax, cl
and si, bx
imul edi
mov dx, di
rol di, 0x2f
movsx edi, di
movsx ecx, si
shr bx, 0xb3
ja 0x402313
cmp edi, 0x50
jb 0x40234d
ror di, 0x4d
shl dx, 0xfa
ror edi, 0xa6
inc bx
rcl ecx, 0x7a
shr edx, 0x92
and cx, di
jmp 0x402317
shr si, 0xa
and dx, di
imul si
xor ebx, 0x2b5
imul ebx
ja 0x40234d
test esi, 0x33
jne 0x402392
rol bx, 0x73
rol dx, 0x84
sub bx, cx
inc si
sub esi, 0xf8
inc eax
xor ax, 0xfb
rol ax, 0x3f
jmp 0x402355
movzx ecx, si
xor si, cx
inc dx
sub si, si
mul dx
mul ax
imul di
imul ecx
dec cx
ja 0x402392
test esi, 0x5f
je 0x4023ed
imul edx
mul dx
mov ebx, ebx
shl dx, 0x30
shr ax, 0xc6
xor edi, 0x144
ror ebx, 0xc3
mov ebx, 0x29f
xor esi, ecx
mul eax
jmp 0x4023b7
movsx esi, di
and edi, 0x165
shl cx, 0xc0
and si, 0x351
dec cx
xor bx, cx
rcr dx, 0xc8
rcl esi, 0x5e
mul esi
xor eax, 0x21d
mul ebx
movzx esi, si
rcl di, 0x3a
and di, 0x225
shr ebx, 0x6e
je 0x4023ed
cmp ebx, 0x3f
jb 0x40243c
shr ecx, 0x30
shl dx, 0xb7
ror bx, 0x64
rcl esi, 0x51
rcl dx, 0x68
mul di
inc ebx
xor ax, 0x10e
mul edx
jmp 0x402404
rcr cx, 0x56
dec esi
inc si
or cx, 0x169
shr ebx, 0x56
mov di, si
shr ecx, 0x64
xor eax, esi
movsx ebx, cx
ror ebx, 0x55
shl edi, 0x77
shr esi, 0x51
or edi, ecx
or bx, bx
shr ax, 0x55
rcr cx, 0x93
jb 0x40243c
test esi, 0x1b
jae 0x402457
mul bx
imul esi
shr bx, 0x3c
add eax, 0x150
add si, 0x379
jmp 0x402442
rol si, 3
dec dx
ror ax, 0xc8
ja 0x402457
rcl eax, 0x73
dec edx
sub edi, 0x336
shr eax, 7
jmp 0x402461
add edi, 0x1fb
shr di, 0x24
sub bx, 0x33c
and bx, dx
inc cx
rcr ax, 0xb6
mov edi, dword fs:[0x30]
mov edi, dword [edi + 0xc]
mov esi, dword [edi + 0xc]
mov eax, dword [esi]
mov eax, dword [eax]
mov eax, dword [eax + 0x18]
mov dword [0x4902d0], eax
imul cx
imul bx
movzx ecx, cl
mul ax
or eax, 0x297
add si, si
sub cx, 0x331
ror si, 0xb5
add bx, 0x1ac
shr edi, 0xed
shl cx, 0x6b
add di, bx
mul ax
imul ax
ror esi, 0xf5
or esi, eax
mul ax
mov ecx, 0x157
ror eax, 0xab
rcr ecx, 0xa4
mul bx
dec bx
sub bx, 0x27
dec ecx
jb 0x4024fd
sub esi, 0x140
shr di, 0xf1
movsx ebx, cx
movzx ebx, si
mov ebx, edx
ror edi, 0xb2
imul cx
ror ax, 0x24
rcr edi, 0x2f
ror esi, 0xf2
jmp 0x402512
shr dx, 0x26
inc si
imul si
rcl esi, 0xd0
or cx, 0x352
rol bx, 0xfa
rcl ecx, 0x1e
xor ax, 0x38b
and eax, ebx
dec cx
add edx, edi
rcr dx, 0xa0
xor dx, di
ror eax, 0x1d
shr ax, 0x72
jb 0x402550
test edx, 0x31
jae 0x402579
mul ebx
xor edi, 0x375
rol dx, 0x79
shr dx, 0x65
mov edi, 0x329
inc dx
jmp 0x402555
mul bx
and ecx, edx
movzx edi, bl
mul di
mul si
jae 0x402579
inc edi
or si, di
inc di
mul bx
ror eax, 0x48
imul edi
inc ecx
rcr dx, 0xdd
ror di, 0xcf
jmp 0x40258f
ror eax, 0x9b
inc edx
or edi, ebx
movzx edx, bl
rol esi, 0x9c
shr ax, 0x1f
rcl esi, 0x53
and dx, si
rol edi, 0x51
mov dx, cx
ja 0x4025b5
shl si, 0xe9
rol edi, 0xd4
shl bx, 7
mul edx
ror edi, 0xf1
shl ecx, 0x96
add di, 0xbc
mul esi
inc ax
jmp 0x4025cf
dec edi
dec bx
shr edx, 0x16
rcl di, 0x21
shr ecx, 0xc8
mul dx
rol si, 0xa7
ror ebx, 0xa3
rcl edx, 0xa4
sub esi, esi
ror ecx, 0xf3
push 0x17
push 0x42ead0
mov edx, 0x4e4
mov ecx, 0x48e8f0
call fcn.00401cd2
pop ecx
pop ecx
mov edx, 0x8aafdc01
call fcn.00402019
mov dword [ebp - 0x38], eax
and eax, 0xcc
rcl si, 0xed
mul cx
mov edx, 0x340
rol eax, 0x4c
rcr bx, 0x5e
add cx, 0x24
or ax, di
rol di, 0xe8
imul ax
shr ecx, 0x34
rcl esi, 0x39
or ax, 0x2f1
dec esi
shl ax, 0xe1
rol esi, 0x4d
ror eax, 0xe7
ror dx, 0x74
mul ax
rcl esi, 0xf4
mov edi, 0x31f
jb 0x402665
sub ax, 0x138
movzx edx, dl
inc di
rcr ax, 0xb2
shr edx, 0x81
rcr ecx, 0xa0
xor bx, 0x1a2
xor edx, 0x29f
jmp 0x402675
rcr ecx, 0xe0
shr edx, 0x76
sub dx, 0x366
inc dx
shr ecx, 0xb8
mul si
add ecx, 0x2e0
movzx edx, bl
dec ebx
shr bx, 0xa
or bx, 0x6d
jb 0x4026ae
cmp edx, 0x11
jae 0x4026f2
inc ebx
imul ax
dec dx
dec eax
add dx, 0x395
add ebx, 0x8b
imul ax
or ax, bx
rcr ecx, 0x6b
jmp 0x4026b7
mul esi
rol esi, 0x49
rcr si, 0x9e
shr eax, 0x1f
rol si, 0x76
mul di
or ax, 0x1fd
or di, 0x1f3
mul ax
movzx esi, cl
ror dx, 0x27
and ebx, edx
xor ecx, 0x22b
jb 0x4026f2
cmp eax, 0x5c
jb 0x402719
mul edi
rcl edi, 0x53
imul ebx
inc bx
shr dx, 0xfd
jmp 0x402704
imul eax
rol esi, 0x68
and eax, 0x3e8
rcr si, 0x94
shr ecx, 0x10
dec ebx
xor edx, edx
imul si
shr eax, 0xa5
je 0x402719
mov di, ax
imul eax
movzx esi, dh
dec eax
jmp 0x40271e
movzx edi, dh
mov edi, edx
add edx, 0x1e
rcl edx, 0xf8
shl dx, 0xbd
ror cx, 0x4a
shr ebx, 0x46
shl edi, 0x37
jae 0x40274d
test edx, 0x5f
jb 0x402767
inc cx
movzx ebx, dx
mul esi
xor edx, 0x232
mov edx, edx
jmp 0x40274e
dec edi
inc esi
movzx ebx, di
dec edi
jae 0x402767
imul eax
dec ecx
rcl ax, 0x7a
shl eax, 0x3f
or edi, 0x18a
jmp 0x402768
inc eax
imul eax
rol esi, 0x3c
or cx, 0xea
add cx, 0x27c
ror esi, 0xc4
mul si
movsx edx, bl
ja 0x402799
rol ecx, 0x3f
dec si
inc ebx
and ebx, 0x26e
imul dx
add si, bx
rol ecx, 0xc0
jmp 0x4027a5
xor ecx, 0x111
imul eax
ror cx, 0x9c
and esi, esi
jb 0x4027c0
cmp eax, 0x47
jb 0x402801
inc esi
add eax, edi
imul esi
mul ax
inc dx
shr ebx, 0xbf
rcl edx, 0x8b
jmp 0x4027cc
mov bx, si
rcl edi, 0xdf
add di, 0x274
inc ebx
rol ecx, 0xf0
ror edi, 0x54
rol ecx, 0xef
rol edx, 0x20
and ebx, ecx
mul bx
movsx edx, bh
rol cx, 0xb4
jb 0x402801
movsx edx, cl
xor ecx, 0x29e
imul cx
mul ecx
mov esi, edx
add eax, edx
shl ax, 0xc7
ror ecx, 0x40
jmp 0x402805
mov dx, 0x218
add eax, edi
mul cx
imul cx
dec esi
imul ax
ror ax, 0xf3
ja 0x402823
cmp eax, 0x17
jae 0x402857
mul edx
shr eax, 0xb2
jmp 0x40283d
mul ecx
ror eax, 0xc2
mul eax
imul di
sub eax, 0x1a2
mul esi
rol ebx, 0xda
imul ecx
ror si, 0xde
dec si
jb 0x402857
shr bx, 0xad
rcr ax, 0x19
and ecx, 0xa5
or eax, 0x3ae
dec ecx
jmp 0x402866
shl ebx, 0xfa
ror ebx, 0xe5
dec bx
xor ax, 0x172
shl esi, 0xa3
mov dx, 0x3bb
mul dx
dec ax
ror ax, 0xbe
dec bx
rol bx, 0xc6
ja 0x402891
and edi, 0x343
mov edi, 3
imul ax
add esi, edx
mul eax
dec cx
jmp 0x402896
sub eax, ecx
ror edx, 0x29
dec ebx
mul dx
ror esi, 0x7c
shr dx, 0x66
lea eax, [ebp - 0x40]
push eax
push 0x40
push 0x4e4
push 0x48e8f0
call dword [ebp - 0x38]
test eax, eax
je 0x402910
push 0x29
push 0x48ede0
mov edx, 0x5fe00
mov ecx, 0x42eaf0
call fcn.00401cd2
pop ecx
pop ecx
mov esi, 0x42eaf0
push esi
mov edx, 0x48e8f0
mov ecx, 0x27
xor ecx, 0x1af
add edx, ecx
sub esp, 0xc
mov dword [esp + 4], 1
xor dword [esp + 4], 0x5dc
mov dword [esp], edx
mov byte [esp + 8], 0
lea eax, sym.imp.KERNEL32.dll_SetConsoleTitleW
mov eax, dword [eax]
push eax
ret
mov eax, dword [ebp - 8]
push 0xf
pop esi
cmp eax, esi
jbe 0x402949
mov ecx, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], ecx
cmp eax, 0x1000
jb 0x402940
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.004012ac
mov eax, dword [ebp - 0x3c]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x38]
push eax
push ecx
call fcn.004070ac
pop ecx
pop ecx
and dword [ebp - 0xc], 0
lea ecx, [ebp - 0x34]
mov dword [ebp - 8], esi
mov byte [ebp - 0x1c], 0
call fcn.00402a25
mov ecx, dword [ebp - 4]
xor eax, eax
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00407069
leave
ret 0x10