Function at 0x51b480
Capabilities:
Get system information on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x6ea8c3
mov eax, dword fs:[0]
push eax
sub esp, 0x218
mov eax, dword [0x82d084]
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 - 0xc0]
push 0
push 0x761dc7
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0xac], 0xf
mov byte [ebp - 0xc0], 0
call fcn.00430160
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x8c]
push 0
push 0x761dc7
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], 0xf
mov byte [ebp - 0x8c], 0
call fcn.00430160
push str.IsWow64Process2
mov byte [ebp - 4], 2
push str.kernel32
mov dword [ebp - 0xc4], 0
mov dword [ebp - 0x90], 0
call dword [sym.imp.KERNEL32.DLL_GetModuleHandleW]
push eax
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
mov esi, eax
test esi, esi
je 0x51b56b
lea eax, [ebp - 0x90]
push eax
lea eax, [ebp - 0xc4]
push eax
call dword [sym.imp.KERNEL32.DLL_GetCurrentProcess]
push eax
call esi
test eax, eax
jne 0x51b56b
push 0x20
push str.lFnIsWow64Process2_not_available
jmp 0x51b5c5
mov eax, dword [ebp - 0x90]
mov ecx, 0x200
cmp ax, cx
je 0x51b5be
mov ecx, 0x8664
cmp ax, cx
je 0x51b5be
mov ecx, 0xaa64
cmp ax, cx
jne 0x51b598
push 5
push str.ARM64
jmp 0x51b5c5
mov ecx, 0x14c
cmp ax, cx
je 0x51b5b5
mov ecx, 0x1c0
cmp ax, cx
je 0x51b5b5
push 7
push str.Unknown
jmp 0x51b5c5
push 3
push 0x780f98
jmp 0x51b5c5
push 3
push 0x780d50
lea ecx, [ebp - 0xc0]
call fcn.00430160
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x194], esp
push 5
push str.ARM64
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
call fcn.00430160
sub esp, 0x18
mov byte [ebp - 4], 3
lea eax, [ebp - 0xc0]
mov ecx, esp
push eax
call fcn.00440c40
mov byte [ebp - 4], 2
call fcn.0050b740
add esp, 0x30
test al, al
je 0x51bf48
push 0
push 0x761dc7
lea ecx, [ebp - 0x70]
mov dword [ebp - 0x190], 0
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
call fcn.00430160
mov byte [ebp - 4], 4
lea ecx, [ebp - 0xa8]
push 0
push 0x761dc7
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
call fcn.00430160
push str.PROCESSOR_LEVEL
lea eax, [ebp - 0x74]
mov byte [ebp - 4], 5
push eax
lea eax, [ebp - 0x190]
push eax
call fcn.006a4f5c
add esp, 0xc
test eax, eax
jne 0x51b6d4
mov edx, dword [ebp - 0x190]
test edx, edx
je 0x51b6d4
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x51b6b3
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x70]
call fcn.00430160
push dword [ebp - 0x190]
call fcn.00690e3e
add esp, 4
push str.PROCESSOR_REVISION
lea eax, [ebp - 0x74]
push eax
lea eax, [ebp - 0x190]
push eax
call fcn.006a4f5c
add esp, 0xc
test eax, eax
jne 0x51b724
mov edx, dword [ebp - 0x190]
test edx, edx
je 0x51b724
mov ecx, edx
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x51b700
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0xa8]
call fcn.00430160
push dword [ebp - 0x190]
call fcn.00690e3e
add esp, 4
xor eax, eax
mov dword [ebp - 0xcc], 0
push eax
push 0x75b10c
lea ecx, [ebp - 0xdc]
mov dword [ebp - 0xc8], 7
mov word [ebp - 0xdc], ax
call fcn.0042fe00
xor eax, eax
mov byte [ebp - 4], 6
push eax
push 0x75b10c
lea ecx, [ebp - 0x1ac]
mov dword [ebp - 0x19c], 0
mov dword [ebp - 0x198], 7
mov word [ebp - 0x1ac], ax
call fcn.0042fe00
push 0xb0
lea eax, [ebp - 0x18c]
mov byte [ebp - 4], 7
push 0
push eax
call fcn.0068e800
add esp, 4
lea ecx, [ebp - 0x18c]
call fcn.00523620
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x168]
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax + 4]
add ecx, eax
mov eax, dword [ecx]
and eax, 0xfffff9ff
or eax, 0x800
mov dword [ecx], eax
lea eax, [ebp - 0xa8]
cmp dword [ebp - 0x94], 0x10
push dword [ebp - 0x98]
cmovae eax, dword [ebp - 0xa8]
push eax
lea eax, [ebp - 0x17c]
push eax
call fcn.004b5990
add esp, 0xc
lea eax, [ebp - 0x194]
lea ecx, [ebp - 0x18c]
push eax
call fcn.005238b0
cmp dword [ebp - 0x5c], 0x10
lea ecx, [ebp - 0x70]
lea edx, [ebp - 0xdc]
cmovae ecx, dword [ebp - 0x70]
call fcn.0050b8a0
push dword [ebp - 0x194]
lea eax, [ebp - 0x43]
push eax
call fcn.00523b80
lea ecx, [ebp - 0x43]
mov dword [ebp - 0x20], 0
add esp, 8
mov byte [ebp - 0x30], 0
mov edx, 0xf
mov dword [ebp - 0x1c], edx
cmp eax, ecx
je 0x51b859
sub ecx, eax
push ecx
push eax
lea ecx, [ebp - 0x30]
call fcn.00430160
mov edx, dword [ebp - 0x1c]
cmp edx, 0x10
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x30]
cmovae ecx, dword [ebp - 0x30]
lea edx, [ebp - 0x1ac]
call fcn.0050b8a0
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0x1c]
cmp edx, 0x10
jb 0x51b8aa
mov ecx, dword [ebp - 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x51b8a0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51c6c9
push edx
push ecx
call fcn.0067bc93
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 0x51b8b2
xor eax, eax
mov dword [ebp - 0x1f4], edx
mov word [ebp - 0x204], ax
lea eax, [ebp - 0x16]
mov dword [ebp - 0x1f0], 7
cmp esi, eax
je 0x51b903
sub eax, esi
lea ecx, [ebp - 0x204]
sar eax, 1
push eax
push esi
call fcn.0042fe00
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x204]
cmp dword [0x838cd8], 8
mov eax, 0x838cc4
push dword [0x838cd4]
cmovae eax, dword [0x838cc4]
push eax
call fcn.0042ff20
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 - 0xdc]
cmp dword [ebp - 0xc8], 8
lea ecx, [ebp - 0x1ec]
push dword [ebp - 0xcc]
cmovae eax, dword [ebp - 0xdc]
push eax
call fcn.0042ff20
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 [0x838cd8], 8
mov eax, 0x838cc4
push dword [0x838cd4]
cmovae eax, dword [0x838cc4]
push eax
call fcn.0042ff20
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], 0xd
lea eax, [ebp - 0x1ac]
cmp dword [ebp - 0x198], 8
lea ecx, [ebp - 0x1d4]
push dword [ebp - 0x19c]
cmovae eax, dword [ebp - 0x1ac]
push eax
call fcn.0042ff20
xor ecx, ecx
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x50], 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 0x51bac9
mov ecx, edi
call fcn.0042fd70
movups xmm0, xmmword [ebp - 0x50]
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.0042fd70
lea ecx, [ebp - 0x1d4]
call fcn.0042fd70
lea ecx, [ebp - 0x21c]
call fcn.0042fd70
lea ecx, [ebp - 0x1ec]
call fcn.0042fd70
lea ecx, [ebp - 0x204]
mov byte [ebp - 4], 8
call fcn.0042fd70
cmp dword [edi + 0x14], 8
jb 0x51bb09
mov edi, dword [edi]
lea edx, [ebp - 0x8c]
mov ecx, edi
call fcn.0050b660
push 0x854764
call fcn.0067f606
add esp, 4
test eax, eax
jne 0x51c6ce
push eax
push 0x761dc7
lea ecx, [ebp - 0x1d4]
mov dword [ebp - 0x1c4], eax
mov dword [ebp - 0x1c0], 0xf
mov byte [ebp - 0x1d4], al
call fcn.00430160
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x30]
push 0
push 0x761dc7
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], 0
call fcn.00430160
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x58]
push 7
push 0x780fe0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
call fcn.00430160
lea eax, [ebp - 0x1d4]
mov byte [ebp - 4], 0x10
push eax
lea edx, [ebp - 0x30]
lea ecx, [ebp - 0x58]
call fcn.005f8830
add esp, 4
mov byte [ebp - 4], 0xf
mov edx, dword [ebp - 0x44]
test eax, eax
setne byte [ebp - 0x1b9]
cmp edx, 0x10
jb 0x51bbf6
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x51bbec
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51c6d4
push edx
push ecx
call fcn.0067bc93
add esp, 8
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
cmp edx, 0x10
jb 0x51bc40
mov ecx, dword [ebp - 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x51bc36
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51c6d4
push edx
push ecx
call fcn.0067bc93
add esp, 8
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0x1c0]
cmp edx, 0x10
jb 0x51bc7e
mov ecx, dword [ebp - 0x1d4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x51bc74
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51c6d4
push edx
push ecx
call fcn.0067bc93
add esp, 8
cmp byte [ebp - 0x1b9], 0
je 0x51be00
push 0
push 0x761dc7
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], 0
call fcn.00430160
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x1d4]
push 0
push 0x761dc7
mov dword [ebp - 0x1c4], 0
mov dword [ebp - 0x1c0], 0xf
mov byte [ebp - 0x1d4], 0
call fcn.00430160
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x58]
push 7
push 0x780fe0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
call fcn.00430160
lea eax, [ebp - 0x30]
mov byte [ebp - 4], 0x13
push eax
lea edx, [ebp - 0x1d4]
lea ecx, [ebp - 0x58]
call fcn.005f8830
add esp, 4
lea edx, [ebp - 0x8c]
cmp dword [ebp - 0x78], 0x10
cmovae edx, dword [ebp - 0x8c]
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 - 0x44]
cmp edx, 0x10
jb 0x51bd78
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x51bd6e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51c6d9
push edx
push ecx
call fcn.0067bc93
add esp, 8
mov byte [ebp - 4], 0x11
mov edx, dword [ebp - 0x1c0]
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
cmp edx, 0x10
jb 0x51bdc8
mov ecx, dword [ebp - 0x1d4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x51bdbe
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51c6d9
push edx
push ecx
call fcn.0067bc93
add esp, 8
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0x1c]
cmp edx, 0x10
jb 0x51be00
mov ecx, dword [ebp - 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x51bdf6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51c6d9
push edx
push ecx
call fcn.0067bc93
add esp, 8
push 0x854764
call fcn.0067f62b
add esp, 4
test eax, eax
jne 0x51c6de
lea ecx, [ebp - 0x18c]
call fcn.0051b0a0
lea ecx, [ebp - 0x1ac]
call fcn.0042fd70
lea ecx, [ebp - 0xdc]
call fcn.0042fd70
mov edx, dword [ebp - 0x94]
cmp edx, 0x10
jb 0x51be70
mov ecx, dword [ebp - 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x51be66
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51c6e4
push edx
push ecx
call fcn.0067bc93
add esp, 8
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0xf
mov byte [ebp - 0xa8], 0
cmp edx, 0x10
jb 0x51bebf
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x51beb5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51c6e4
push edx
push ecx
call fcn.0067bc93
add esp, 8
mov edx, dword [ebp - 0x78]
cmp edx, 0x10
jb 0x51bef6
mov ecx, dword [ebp - 0x8c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x51beec
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51c6e9
push edx
push ecx
call fcn.0067bc93
add esp, 8
mov edx, dword [ebp - 0xac]
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], 0xf
mov byte [ebp - 0x8c], 0
cmp edx, 0x10
jb 0x51c4df
mov ecx, dword [ebp - 0xc0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x51c4d5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51c6e9
jmp 0x51c4d5
lea eax, [ebp - 0x1b8]
push eax
call dword [sym.imp.KERNEL32.DLL_GetNativeSystemInfo]
mov dword [ebp - 4], 2
lea ecx, [ebp - 0xdc]
movzx edx, word [ebp - 0x196]
call fcn.0051ace0
mov dword [ebp - 0x194], eax
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x70]
movzx edx, word [ebp - 0x198]
call fcn.0051ace0
mov esi, eax
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x30]
movzx edx, word [ebp - 0x1b8]
call fcn.0051ace0
mov ecx, eax
mov byte [ebp - 4], 0x18
mov eax, 0x838cc4
cmp dword [0x838cd8], 8
push dword [0x838cd4]
cmovae eax, dword [0x838cc4]
push eax
call fcn.0042ff20
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 - 0x1d4]
call fcn.00438900
add esp, 4
mov ecx, eax
mov byte [ebp - 4], 0x1a
mov eax, 0x838cc4
cmp dword [0x838cd8], 8
push dword [0x838cd4]
cmovae eax, dword [0x838cc4]
push eax
call fcn.0042ff20
mov dword [ebp - 0x1f4], 0
xor ecx, ecx
mov dword [ebp - 0x1f0], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x204], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x1f4], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
mov byte [ebp - 4], 0x1b
lea edx, [ebp - 0x204]
push dword [ebp - 0x194]
lea ecx, [ebp - 0x21c]
call fcn.00438900
mov esi, eax
add esp, 4
cmp edi, esi
je 0x51c0c9
mov ecx, edi
call fcn.0042fd70
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.0042fd70
lea ecx, [ebp - 0x204]
call fcn.0042fd70
lea ecx, [ebp - 0x1d4]
call fcn.0042fd70
lea ecx, [ebp - 0x1ec]
call fcn.0042fd70
lea ecx, [ebp - 0x30]
call fcn.0042fd70
lea ecx, [ebp - 0x70]
call fcn.0042fd70
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 2
call fcn.0042fd70
cmp dword [edi + 0x14], 8
mov ecx, edi
jb 0x51c11e
mov ecx, dword [edi]
lea edx, [ebp - 0x8c]
call fcn.0050b660
push 0x854764
call fcn.0067f606
add esp, 4
test eax, eax
jne 0x51c6ee
push eax
push 0x761dc7
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], al
call fcn.00430160
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x1d4]
push 0
push 0x761dc7
mov dword [ebp - 0x1c4], 0
mov dword [ebp - 0x1c0], 0xf
mov byte [ebp - 0x1d4], 0
call fcn.00430160
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x70]
push 7
push 0x780fe0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
call fcn.00430160
lea eax, [ebp - 0x30]
mov byte [ebp - 4], 0x1e
push eax
lea edx, [ebp - 0x1d4]
lea ecx, [ebp - 0x70]
call fcn.005f8830
add esp, 4
mov byte [ebp - 4], 0x1d
mov edx, dword [ebp - 0x5c]
test eax, eax
setne byte [ebp - 0x1b9]
cmp edx, 0x10
jb 0x51c209
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x51c1ff
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51c6f4
push edx
push ecx
call fcn.0067bc93
add esp, 8
mov byte [ebp - 4], 0x1c
mov edx, dword [ebp - 0x1c0]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
cmp edx, 0x10
jb 0x51c259
mov ecx, dword [ebp - 0x1d4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x51c24f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51c6f4
push edx
push ecx
call fcn.0067bc93
add esp, 8
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x1c]
cmp edx, 0x10
jb 0x51c291
mov ecx, dword [ebp - 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x51c287
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51c6f4
push edx
push ecx
call fcn.0067bc93
add esp, 8
cmp byte [ebp - 0x1b9], 0
je 0x51c413
push 0
push 0x761dc7
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], 0
call fcn.00430160
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x1d4]
push 0
push 0x761dc7
mov dword [ebp - 0x1c4], 0
mov dword [ebp - 0x1c0], 0xf
mov byte [ebp - 0x1d4], 0
call fcn.00430160
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x70]
push 7
push 0x780fe0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
call fcn.00430160
lea eax, [ebp - 0x30]
mov byte [ebp - 4], 0x21
push eax
lea edx, [ebp - 0x1d4]
lea ecx, [ebp - 0x70]
call fcn.005f8830
add esp, 4
lea edx, [ebp - 0x8c]
cmp dword [ebp - 0x78], 0x10
cmovae edx, dword [ebp - 0x8c]
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 - 0x5c]
cmp edx, 0x10
jb 0x51c38b
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x51c381
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51c6f9
push edx
push ecx
call fcn.0067bc93
add esp, 8
mov byte [ebp - 4], 0x1f
mov edx, dword [ebp - 0x1c0]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
cmp edx, 0x10
jb 0x51c3db
mov ecx, dword [ebp - 0x1d4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x51c3d1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51c6f9
push edx
push ecx
call fcn.0067bc93
add esp, 8
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x1c]
cmp edx, 0x10
jb 0x51c413
mov ecx, dword [ebp - 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x51c409
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51c6f9
push edx
push ecx
call fcn.0067bc93
add esp, 8
push 0x854764
call fcn.0067f62b
add esp, 4
test eax, eax
jne 0x51c6fe
cmp dword [edi + 0x10], eax
jne 0x51bebf
mov edx, dword [ebp - 0x78]
cmp edx, 0x10
jb 0x51c468
mov ecx, dword [ebp - 0x8c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x51c45e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51c704
push edx
push ecx
call fcn.0067bc93
add esp, 8
mov edx, dword [ebp - 0xac]
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], 0xf
mov byte [ebp - 0x8c], 0
cmp edx, 0x10
jb 0x51c4b7
mov ecx, dword [ebp - 0xc0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x51c4ad
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51c704
push edx
push ecx
call fcn.0067bc93
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.0067ba01
mov esp, ebp
pop ebp
ret
push edx
push ecx
call fcn.0067bc93
add esp, 8
mov al, 1
jmp 0x51c4b9
call fcn.00691015
push eax
call fcn.0067f8f8
call fcn.00691015
call fcn.00691015
push eax
call fcn.0067f8f8
call fcn.00691015
call fcn.00691015
push eax
call fcn.0067f8f8
call fcn.00691015
call fcn.00691015
push eax
call fcn.0067f8f8
call fcn.00691015
int3