Function at 0x5056c0
Capabilities:
Get system information on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x6aa779
mov eax, dword fs:[0]
push eax
sub esp, 0x218
mov eax, dword [0x7ca00c]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov edi, ecx
mov dword [ebp - 4], 0
lea ecx, [ebp - 0xa8]
push 0
push 0x708717
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
call fcn.00428b60
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x74]
push 0
push 0x708717
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
call fcn.00428b60
push str.IsWow64Process2
mov byte [ebp - 4], 2
push str.kernel32
mov dword [ebp - 0xac], 0
mov dword [ebp - 0x78], 0
call dword [sym.imp.KERNEL32.DLL_GetModuleHandleW]
push eax
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
mov esi, eax
test esi, esi
je 0x50579f
lea eax, [ebp - 0x78]
push eax
lea eax, [ebp - 0xac]
push eax
call dword [sym.imp.KERNEL32.DLL_GetCurrentProcess]
push eax
call esi
test eax, eax
jne 0x50579f
push 0x20
push str.lFnIsWow64Process2_not_available
jmp 0x5057f6
mov eax, dword [ebp - 0x78]
mov ecx, 0x200
cmp ax, cx
je 0x5057ef
mov ecx, 0x8664
cmp ax, cx
je 0x5057ef
mov ecx, 0xaa64
cmp ax, cx
jne 0x5057c9
push 5
push str.ARM64
jmp 0x5057f6
mov ecx, 0x14c
cmp ax, cx
je 0x5057e6
mov ecx, 0x1c0
cmp ax, cx
je 0x5057e6
push 7
push str.Unknown
jmp 0x5057f6
push 3
push 0x724cc8
jmp 0x5057f6
push 3
push 0x724a88
lea ecx, [ebp - 0xa8]
call fcn.00428b60
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x17c], esp
push 5
push str.ARM64
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
call fcn.00428b60
sub esp, 0x18
mov byte [ebp - 4], 3
lea eax, [ebp - 0xa8]
mov ecx, esp
push eax
call fcn.004392e0
mov byte [ebp - 4], 2
call fcn.004f59b0
add esp, 0x30
test al, al
je 0x506176
push 0
push 0x708717
lea ecx, [ebp - 0x58]
mov dword [ebp - 0x178], 0
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
call fcn.00428b60
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x90]
push 0
push 0x708717
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
call fcn.00428b60
push str.PROCESSOR_LEVEL
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 5
push eax
lea eax, [ebp - 0x178]
push eax
call fcn.00666a5c
add esp, 0xc
test eax, eax
jne 0x505901
mov edx, dword [ebp - 0x178]
test edx, edx
je 0x505901
mov ecx, edx
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5058e0
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x58]
call fcn.00428b60
push dword [ebp - 0x178]
call fcn.006532ee
add esp, 4
push str.PROCESSOR_REVISION
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp - 0x178]
push eax
call fcn.00666a5c
add esp, 0xc
test eax, eax
jne 0x505954
mov edx, dword [ebp - 0x178]
test edx, edx
je 0x505954
mov ecx, edx
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x505930
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x90]
call fcn.00428b60
push dword [ebp - 0x178]
call fcn.006532ee
add esp, 4
xor eax, eax
mov dword [ebp - 0xb4], 0
push eax
push 0x701e7c
lea ecx, [ebp - 0xc4]
mov dword [ebp - 0xb0], 7
mov word [ebp - 0xc4], ax
call fcn.00428800
xor eax, eax
mov byte [ebp - 4], 6
push eax
push 0x701e7c
lea ecx, [ebp - 0x194]
mov dword [ebp - 0x184], 0
mov dword [ebp - 0x180], 7
mov word [ebp - 0x194], ax
call fcn.00428800
push 0xb0
lea eax, [ebp - 0x174]
mov byte [ebp - 4], 7
push 0
push eax
call fcn.006501e0
add esp, 4
lea ecx, [ebp - 0x174]
call fcn.0050a9b0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x150]
mov eax, dword [ebp - 0x164]
lea edx, [ebp - 0x90]
mov eax, dword [eax + 4]
add ecx, eax
mov eax, dword [ecx]
and eax, 0xfffff9ff
or eax, 0x800
mov dword [ecx], eax
lea ecx, [ebp - 0x164]
cmp dword [ebp - 0x7c], 0x10
push dword [ebp - 0x80]
cmovae edx, dword [ebp - 0x90]
call fcn.004a50b0
add esp, 4
lea eax, [ebp - 0x17c]
lea ecx, [ebp - 0x174]
push eax
call fcn.0050ab00
cmp dword [ebp - 0x44], 0x10
lea ecx, [ebp - 0x58]
lea edx, [ebp - 0xc4]
cmovae ecx, dword [ebp - 0x58]
call fcn.004f5b10
mov edx, dword [ebp - 0x17c]
lea ecx, [ebp - 0x1d4]
call fcn.00504df0
mov byte [ebp - 4], 9
cmp dword [eax + 0x14], 0x10
jb 0x505a63
mov eax, dword [eax]
lea edx, [ebp - 0x194]
mov ecx, eax
call fcn.004f5b10
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0x1c0]
cmp edx, 0x10
jb 0x505aae
mov ecx, dword [ebp - 0x1d4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x505aa4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5068e8
push edx
push ecx
call fcn.0063e103
add esp, 8
lea esi, [ebp - 0x16]
mov ecx, 0xc
mov eax, 0xcccccccd
sub esi, 2
mul ecx
shr edx, 3
lea eax, [edx + edx*4]
add eax, eax
sub ecx, eax
add ecx, 0x30
mov word [esi], cx
mov ecx, edx
test ecx, ecx
jne 0x505ab6
xor eax, eax
mov dword [ebp - 0x1c4], edx
mov word [ebp - 0x1d4], ax
lea eax, [ebp - 0x16]
mov dword [ebp - 0x1c0], 7
cmp esi, eax
je 0x505b07
sub eax, esi
lea ecx, [ebp - 0x1d4]
sar eax, 1
push eax
push esi
call fcn.00428800
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x1d4]
cmp dword [0x7d3848], 8
mov eax, 0x7d3834
push dword [0x7d3844]
cmovae eax, dword [0x7d3834]
push eax
call fcn.00428920
mov dword [ebp - 0x1dc], 0
xor ecx, ecx
mov dword [ebp - 0x1d8], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x1ec], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x1dc], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0xc4]
cmp dword [ebp - 0xb0], 8
lea ecx, [ebp - 0x1ec]
push dword [ebp - 0xb4]
cmovae eax, dword [ebp - 0xc4]
push eax
call fcn.00428920
mov dword [ebp - 0x20c], 0
xor ecx, ecx
mov dword [ebp - 0x208], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x21c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x20c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x21c]
cmp dword [0x7d3848], 8
mov eax, 0x7d3834
push dword [0x7d3844]
cmovae eax, dword [0x7d3834]
push eax
call fcn.00428920
mov dword [ebp - 0x1ac], 0
xor ecx, ecx
mov dword [ebp - 0x1a8], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x1bc], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x1ac], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
mov byte [ebp - 4], 0xd
lea eax, [ebp - 0x194]
cmp dword [ebp - 0x180], 8
lea ecx, [ebp - 0x1bc]
push dword [ebp - 0x184]
cmovae eax, dword [ebp - 0x194]
push eax
call fcn.00428920
xor ecx, ecx
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x1fc], xmm0
movups xmmword [ebp - 0x30], xmm0
movq xmm0, qword [eax + 0x10]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
lea eax, [ebp - 0x30]
movq qword [ebp - 0x224], xmm0
movq qword [ebp - 0x20], xmm0
cmp edi, eax
je 0x505cd3
mov ecx, edi
call fcn.00428770
movups xmm0, xmmword [ebp - 0x1fc]
xor eax, eax
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 7
movups xmmword [edi], xmm0
mov word [ebp - 0x30], ax
movq xmm0, qword [ebp - 0x224]
movq qword [edi + 0x10], xmm0
lea ecx, [ebp - 0x30]
call fcn.00428770
lea ecx, [ebp - 0x1bc]
call fcn.00428770
lea ecx, [ebp - 0x21c]
call fcn.00428770
lea ecx, [ebp - 0x1ec]
call fcn.00428770
lea ecx, [ebp - 0x1d4]
mov byte [ebp - 4], 8
call fcn.00428770
cmp dword [edi + 0x14], 8
jb 0x505d13
mov edi, dword [edi]
lea edx, [ebp - 0x74]
mov ecx, edi
call fcn.004f58c0
push 0x7ec3b8
call fcn.00641a44
add esp, 4
test eax, eax
jne 0x5068ed
push eax
push 0x708717
lea ecx, [ebp - 0x1bc]
mov dword [ebp - 0x1ac], eax
mov dword [ebp - 0x1a8], 0xf
mov byte [ebp - 0x1bc], al
call fcn.00428b60
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x30]
push 0
push 0x708717
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], 0
call fcn.00428b60
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x204]
push 7
push 0x724d10
mov dword [ebp - 0x1f4], 0
mov dword [ebp - 0x1f0], 0xf
mov byte [ebp - 0x204], 0
call fcn.00428b60
lea eax, [ebp - 0x1bc]
mov byte [ebp - 4], 0x10
push eax
lea edx, [ebp - 0x30]
lea ecx, [ebp - 0x204]
call fcn.005c4a20
add esp, 4
mov byte [ebp - 4], 0xf
mov edx, dword [ebp - 0x1f0]
test eax, eax
setne byte [ebp - 0x1a1]
cmp edx, 0x10
jb 0x505e12
mov ecx, dword [ebp - 0x204]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x505e08
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5068f3
push edx
push ecx
call fcn.0063e103
add esp, 8
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0x1f4], 0
mov dword [ebp - 0x1f0], 0xf
mov byte [ebp - 0x204], 0
cmp edx, 0x10
jb 0x505e65
mov ecx, dword [ebp - 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x505e5b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5068f3
push edx
push ecx
call fcn.0063e103
add esp, 8
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0x1a8]
cmp edx, 0x10
jb 0x505ea3
mov ecx, dword [ebp - 0x1bc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x505e99
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5068f3
push edx
push ecx
call fcn.0063e103
add esp, 8
cmp byte [ebp - 0x1a1], 0
je 0x50603d
push 0
push 0x708717
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], 0
call fcn.00428b60
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x1bc]
push 0
push 0x708717
mov dword [ebp - 0x1ac], 0
mov dword [ebp - 0x1a8], 0xf
mov byte [ebp - 0x1bc], 0
call fcn.00428b60
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x204]
push 7
push 0x724d10
mov dword [ebp - 0x1f4], 0
mov dword [ebp - 0x1f0], 0xf
mov byte [ebp - 0x204], 0
call fcn.00428b60
lea eax, [ebp - 0x30]
mov byte [ebp - 4], 0x13
push eax
lea edx, [ebp - 0x1bc]
lea ecx, [ebp - 0x204]
call fcn.005c4a20
add esp, 4
lea edx, [ebp - 0x74]
cmp dword [ebp - 0x60], 0x10
cmovae edx, dword [ebp - 0x74]
mov ecx, dword [eax]
push edx
push str.GetProcessorId
push str._s:_x86_ARM_emulation_ProcessorId_is____s
push eax
call dword [ecx + 0x14]
mov byte [ebp - 4], 0x12
add esp, 0x10
mov edx, dword [ebp - 0x1f0]
cmp edx, 0x10
jb 0x505fac
mov ecx, dword [ebp - 0x204]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x505fa2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5068f8
push edx
push ecx
call fcn.0063e103
add esp, 8
mov byte [ebp - 4], 0x11
mov edx, dword [ebp - 0x1a8]
mov dword [ebp - 0x1f4], 0
mov dword [ebp - 0x1f0], 0xf
mov byte [ebp - 0x204], 0
cmp edx, 0x10
jb 0x506005
mov ecx, dword [ebp - 0x1bc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x505ffb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5068f8
push edx
push ecx
call fcn.0063e103
add esp, 8
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0x1c]
cmp edx, 0x10
jb 0x50603d
mov ecx, dword [ebp - 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x506033
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x5068f8
push edx
push ecx
call fcn.0063e103
add esp, 8
push 0x7ec3b8
call fcn.00641a69
add esp, 4
test eax, eax
jne 0x5068fd
lea ecx, [ebp - 0x174]
call fcn.005052e0
lea ecx, [ebp - 0x194]
call fcn.00428770
lea ecx, [ebp - 0xc4]
call fcn.00428770
mov edx, dword [ebp - 0x7c]
cmp edx, 0x10
jb 0x5060aa
mov ecx, dword [ebp - 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5060a0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x506903
push edx
push ecx
call fcn.0063e103
add esp, 8
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
cmp edx, 0x10
jb 0x5060f3
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5060e9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x506903
push edx
push ecx
call fcn.0063e103
add esp, 8
mov edx, dword [ebp - 0x60]
cmp edx, 0x10
jb 0x506127
mov ecx, dword [ebp - 0x74]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x50611d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x506908
push edx
push ecx
call fcn.0063e103
add esp, 8
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
cmp edx, 0x10
jb 0x5066fe
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5066f4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x506908
jmp 0x5066f4
lea eax, [ebp - 0x1a0]
push eax
call dword [sym.imp.KERNEL32.DLL_GetNativeSystemInfo]
mov dword [ebp - 4], 2
lea ecx, [ebp - 0xc4]
movzx edx, word [ebp - 0x17e]
call fcn.00504f20
mov dword [ebp - 0x17c], eax
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x58]
movzx edx, word [ebp - 0x180]
call fcn.00504f20
mov esi, eax
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x30]
movzx edx, word [ebp - 0x1a0]
call fcn.00504f20
mov ecx, eax
mov byte [ebp - 4], 0x18
mov eax, 0x7d3834
cmp dword [0x7d3848], 8
push dword [0x7d3844]
cmovae eax, dword [0x7d3834]
push eax
call fcn.00428920
mov dword [ebp - 0x1dc], 0
xor ecx, ecx
mov dword [ebp - 0x1d8], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x1ec], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x1dc], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
push esi
lea edx, [ebp - 0x1ec]
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x1bc]
call fcn.004312d0
add esp, 4
mov ecx, eax
mov byte [ebp - 4], 0x1a
mov eax, 0x7d3834
cmp dword [0x7d3848], 8
push dword [0x7d3844]
cmovae eax, dword [0x7d3834]
push eax
call fcn.00428920
mov dword [ebp - 0x1c4], 0
xor ecx, ecx
mov dword [ebp - 0x1c0], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x1d4], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x1c4], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
mov byte [ebp - 4], 0x1b
lea edx, [ebp - 0x1d4]
push dword [ebp - 0x17c]
lea ecx, [ebp - 0x21c]
call fcn.004312d0
mov esi, eax
add esp, 4
cmp edi, esi
je 0x5062f7
mov ecx, edi
call fcn.00428770
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
lea ecx, [ebp - 0x21c]
call fcn.00428770
lea ecx, [ebp - 0x1d4]
call fcn.00428770
lea ecx, [ebp - 0x1bc]
call fcn.00428770
lea ecx, [ebp - 0x1ec]
call fcn.00428770
lea ecx, [ebp - 0x30]
call fcn.00428770
lea ecx, [ebp - 0x58]
call fcn.00428770
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 2
call fcn.00428770
cmp dword [edi + 0x14], 8
mov ecx, edi
jb 0x50634c
mov ecx, dword [edi]
lea edx, [ebp - 0x74]
call fcn.004f58c0
push 0x7ec3b8
call fcn.00641a44
add esp, 4
test eax, eax
jne 0x50690d
push eax
push 0x708717
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], al
call fcn.00428b60
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x1bc]
push 0
push 0x708717
mov dword [ebp - 0x1ac], 0
mov dword [ebp - 0x1a8], 0xf
mov byte [ebp - 0x1bc], 0
call fcn.00428b60
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x58]
push 7
push 0x724d10
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
call fcn.00428b60
lea eax, [ebp - 0x30]
mov byte [ebp - 4], 0x1e
push eax
lea edx, [ebp - 0x1bc]
lea ecx, [ebp - 0x58]
call fcn.005c4a20
add esp, 4
mov byte [ebp - 4], 0x1d
mov edx, dword [ebp - 0x44]
test eax, eax
setne byte [ebp - 0x1a1]
cmp edx, 0x10
jb 0x506434
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x50642a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x506913
push edx
push ecx
call fcn.0063e103
add esp, 8
mov byte [ebp - 4], 0x1c
mov edx, dword [ebp - 0x1a8]
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
cmp edx, 0x10
jb 0x506484
mov ecx, dword [ebp - 0x1bc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x50647a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x506913
push edx
push ecx
call fcn.0063e103
add esp, 8
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x1c]
cmp edx, 0x10
jb 0x5064bc
mov ecx, dword [ebp - 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5064b2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x506913
push edx
push ecx
call fcn.0063e103
add esp, 8
cmp byte [ebp - 0x1a1], 0
je 0x506638
push 0
push 0x708717
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], 0
call fcn.00428b60
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x1bc]
push 0
push 0x708717
mov dword [ebp - 0x1ac], 0
mov dword [ebp - 0x1a8], 0xf
mov byte [ebp - 0x1bc], 0
call fcn.00428b60
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x58]
push 7
push 0x724d10
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
call fcn.00428b60
lea eax, [ebp - 0x30]
mov byte [ebp - 4], 0x21
push eax
lea edx, [ebp - 0x1bc]
lea ecx, [ebp - 0x58]
call fcn.005c4a20
add esp, 4
lea edx, [ebp - 0x74]
cmp dword [ebp - 0x60], 0x10
cmovae edx, dword [ebp - 0x74]
mov ecx, dword [eax]
push edx
push str.GetProcessorId
push str._s:_ProcessorId_is____s
push eax
call dword [ecx + 0x14]
mov byte [ebp - 4], 0x20
add esp, 0x10
mov edx, dword [ebp - 0x44]
cmp edx, 0x10
jb 0x5065b0
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5065a6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x506918
push edx
push ecx
call fcn.0063e103
add esp, 8
mov byte [ebp - 4], 0x1f
mov edx, dword [ebp - 0x1a8]
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
cmp edx, 0x10
jb 0x506600
mov ecx, dword [ebp - 0x1bc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5065f6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x506918
push edx
push ecx
call fcn.0063e103
add esp, 8
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x1c]
cmp edx, 0x10
jb 0x506638
mov ecx, dword [ebp - 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x50662e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x506918
push edx
push ecx
call fcn.0063e103
add esp, 8
push 0x7ec3b8
call fcn.00641a69
add esp, 4
test eax, eax
jne 0x50691d
cmp dword [edi + 0x10], eax
jne 0x5060f3
mov edx, dword [ebp - 0x60]
cmp edx, 0x10
jb 0x50668a
mov ecx, dword [ebp - 0x74]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x506680
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x506923
push edx
push ecx
call fcn.0063e103
add esp, 8
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
cmp edx, 0x10
jb 0x5066d6
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5066cc
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x506923
push edx
push ecx
call fcn.0063e103
add esp, 8
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0063de71
mov esp, ebp
pop ebp
ret
push edx
push ecx
call fcn.0063e103
add esp, 8
mov al, 1
jmp 0x5066d8
call fcn.006534c5
push eax
call fcn.00641d36
call fcn.006534c5
call fcn.006534c5
push eax
call fcn.00641d36
call fcn.006534c5
call fcn.006534c5
push eax
call fcn.00641d36
call fcn.006534c5
call fcn.006534c5
push eax
call fcn.00641d36
call fcn.006534c5
int3