Function at 0x6fc73c60
Capabilities:
Get system information on windows

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x5c
mov eax, dword [ebp + 0xc]
mov ebx, dword [ebp + 0x10]
cmp eax, 1
je 0x6fc746c6
cmp eax, 2
je 0x6fc74640
test eax, eax
je 0x6fc73c92
mov eax, 0xffffffff
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
cmp byte [ebx + 2], 1
jne 0x6fc74798
mov ebx, dword [ebx + 4]
test ebx, ebx
js 0x6fc73cc3
call fcn.70437000
mov ebx, eax
mov esi, eax
or bl, 0x80
test al, 4
jne 0x6fc747f0
test ebx, 0x308
jne 0x6fc747d2
call fcn.6fca6160
mov dword [0x70fcbe40], 0x6fc78390
mov dword [0x70fcbe44], 0x6fc789d0
mov dword [0x70fcbe50], 0
mov dword [0x70fcbe78], 0x6fc796e0
mov dword [0x70e73544], 0x704662e0
mov dword [0x70e73540], 0x704662a0
call fcn.6fc83580
mov dword [0x70fcbe80], 0x6fc83900
mov dword [0x70fcbe84], 0x6fc839a0
mov dword [0x70fcbe7c], 0x6fc83a40
mov dword [0x70fcbe88], 0x6fc83af0
mov dword [0x70fcbe94], 0x6fc83b70
mov dword [0x70fcbe90], 0x6fc83be0
mov dword [0x70fcbe98], 0x6fc83ca0
mov dword [0x70fcbe8c], 0x6fc83d70
mov dword [0x70fcbeac], 0x6fc83e30
mov dword [0x70fcbebc], 0x6fc83e70
mov dword [0x70fcbeb0], 0x6fc83ec0
mov dword [0x70fcbeb4], 0x6fc83f10
mov dword [0x70fcbea8], 0x6fc83f70
mov dword [0x70fcbea0], 0x6fc83ff0
mov dword [0x70fcbeb8], 0x6fc84080
mov dword [0x70fcbe9c], 0x6fc840d0
mov dword [0x70fcbea4], 0x6fc84120
mov dword [0x70fcbec0], 0x6fc84a10
mov dword [0x70fcbef8], 0x6fc869b0
mov dword [0x70fcbec8], 0x6fc86ea0
mov dword [0x70fcbeec], 0x6fc87450
mov dword [0x70fcbf00], 0x6fc86b20
mov dword [0x70fcbed0], 0x6fc87050
mov dword [0x70fcbefc], 0x6fc876d0
mov dword [0x70fcbecc], 0x6fc86780
mov dword [0x70fcbec4], 0x6fc86c90
mov dword [0x70fcbee8], 0x6fc87200
mov dword [0x70fcbed8], 0x6fc87950
mov dword [0x70fcbef4], 0x6fc87ed0
mov dword [0x70fcbedc], 0x6fc88a50
mov dword [0x70fcbee0], 0x6fc89350
mov dword [0x70fcbf08], 0x6fc88490
mov dword [0x70fcbed4], 0x6fc89030
mov dword [0x70fcbf10], 0x6fc89940
mov dword [0x70fcbf04], 0x6fc87c60
mov dword [0x70fcbef0], 0x6fc88750
mov dword [0x70fcbee4], 0x6fc86690
mov dword [0x70fcbf0c], 0x6fc86830
mov dword [0x70fcbf14], 0x6fc9b8e0
call fcn.6fca5d70
mov dword [0x70fcbf20], 0x6fca5be0
mov dword [0x70fcbfb8], 0x6fc9b940
mov dword [0x70fcbf28], 0x6fc9bc40
mov dword [0x70fcbf8c], 0x6fc9c4d0
mov dword [0x70fcbf84], 0x6fc9bf40
mov dword [0x70fcbf78], 0x6fc9c200
mov dword [0x70fcbf60], 0x6fc9c790
mov dword [0x70fcbf88], 0x6fc9ca60
mov dword [0x70fcbf74], 0x6fc9cd30
mov dword [0x70fcbf2c], 0x6fc9d000
mov dword [0x70fcbf3c], 0x6fc9d1b0
mov dword [0x70fcbf24], 0x6fc9d360
mov dword [0x70fcbf34], 0x6fc9d8c0
mov dword [0x70fcbf64], 0x6fc9de20
mov dword [0x70fcbf30], 0x6fc9e310
mov dword [0x70fcbfb0], 0x6fc9e810
mov dword [0x70fcbfa0], 0x6fc9f1f0
mov dword [0x70fcbf7c], 0x6fc9f6f0
mov dword [0x70fcbf40], 0x6fc9fbe0
mov dword [0x70fcbf48], 0x6fc9fe40
mov dword [0x70fcbf6c], 0x6fca00a0
mov dword [0x70fcbf90], 0x6fca0510
mov dword [0x70fcbf4c], 0x6fca1390
mov dword [0x70fcbf54], 0x6fca0980
mov dword [0x70fcbf9c], 0x6fca0cd0
mov dword [0x70fcbfa8], 0x6fca1030
mov dword [0x70fcbf50], 0x6fca16e0
mov dword [0x70fcbf80], 0x6fca1a40
mov dword [0x70fcbf68], 0x6fca1da0
mov dword [0x70fcbfb4], 0x6fca1f40
mov dword [0x70fcbf18], 0x6fca20e0
mov dword [0x70fcbf44], 0x6fca2900
mov dword [0x70fcbf58], 0x6fca3120
mov dword [0x70fcbfac], 0x6fca3780
mov dword [esp], ebx
mov dword [0x70fcbf1c], 0x6fca3de0
mov dword [0x70fcbf70], 0x6fca4aa0
mov dword [0x70fcbfa4], 0x6fca5100
mov dword [0x70fcbf94], 0x6fca5760
mov dword [0x70fcbf38], 0x6fca59a0
mov dword [0x70fcbfbc], 0x6fca5e20
mov dword [0x70fcbe70], 0x6fc78da0
mov dword [0x70fcbe6c], 0x6fc79000
mov dword [0x70fcbe68], 0x6fc78f20
mov dword [0x70fcbe60], 0x6fc78f90
mov dword [0x70fcbe64], 0x6fc790d0
mov dword [0x70fcbe58], 0x6fc79130
mov dword [0x70fcbe74], 0x6fc79340
mov dword [0x70fcbe54], 0x6fc793e0
mov dword [0x70fcbe5c], 0x6fc79570
mov dword [0x70fcbe48], 0x6fc79480
mov dword [0x70fcbe4c], 0x6fc79630
call fcn.6fcabe30
test ebx, 0x33f
je 0x6fc740ac
mov dword [0x70fcbe78], 0x70437130
test bl, 1
je 0x6fc742f9
mov dword [0x70fcbe40], 0x70437150
mov dword [0x70fcbe44], 0x704380a0
mov dword [0x70e73544], 0x70466260
mov dword [0x70e73540], 0x70466220
mov dword [0x70fcbe80], 0x704390c0
mov dword [0x70fcbe84], 0x70439320
mov dword [0x70fcbe7c], 0x70439570
mov dword [0x70fcbe88], 0x704397f0
mov dword [0x70fcbe94], 0x70439a10
mov dword [0x70fcbe90], 0x70439d70
mov dword [0x70fcbe98], 0x70439f90
mov dword [0x70fcbe8c], 0x7043a080
mov dword [0x70fcbeac], 0x7043a1a0
mov dword [0x70fcbebc], 0x7043a260
mov dword [0x70fcbeb0], 0x7043a2f0
mov dword [0x70fcbeb4], 0x7043a480
mov dword [0x70fcbea8], 0x7043a5f0
mov dword [0x70fcbeb8], 0x7043ac80
mov dword [0x70fcbe9c], 0x7043ad70
mov dword [0x70fcbea4], 0x7043add0
mov dword [0x70fcbec0], 0x7043ae10
mov dword [0x70fcbef8], 0x7043b0e0
mov dword [0x70fcbec8], 0x7043b2c0
mov dword [0x70fcbeec], 0x7043b4a0
mov dword [0x70fcbf00], 0x7043b7b0
mov dword [0x70fcbed0], 0x7043b8b0
mov dword [0x70fcbefc], 0x7043b9b0
mov dword [0x70fcbecc], 0x7043d410
mov dword [0x70fcbec4], 0x7043d5f0
mov dword [0x70fcbee8], 0x7043d8e0
mov dword [0x70fcbed8], 0x7043dbd0
mov dword [0x70fcbf04], 0x7043ca00
mov dword [0x70fcbef0], 0x7043cf00
mov dword [0x70fcbee4], 0x7043bb50
mov dword [0x70fcbf0c], 0x7043c030
mov dword [0x70fcbf14], 0x7043df70
mov dword [0x70fcbf20], 0x7043dfd0
mov dword [0x70fcbf84], 0x7043e680
mov dword [0x70fcbf8c], 0x7043ea20
mov dword [0x70fcbf78], 0x7043e850
mov dword [0x70fcbf88], 0x7043ebf0
mov dword [0x70fcbf2c], 0x7043f370
mov dword [0x70fcbf3c], 0x7043f700
mov dword [0x70fcbf54], 0x7043edc0
mov dword [0x70fcbf9c], 0x7043f0d0
mov dword [0x70fcbf68], 0x7043fab0
mov dword [0x70fcbfb4], 0x7043fbd0
mov dword [0x70fcbf94], 0x7043fcf0
mov dword [0x70fcbf38], 0x7043fe30
mov dword [0x70fcbfbc], 0x7043ff80
mov dword [0x70fcbe70], 0x70440230
mov dword [0x70fcbe6c], 0x70440700
mov dword [0x70fcbe68], 0x70440d80
mov dword [0x70fcbe60], 0x70441a00
mov dword [0x70fcbe64], 0x70441d50
mov dword [0x70fcbe58], 0x70440850
mov dword [0x70fcbe74], 0x7044259f
mov dword [0x70fcbe54], 0x704426bc
mov eax, ebx
and eax, 0x10
je 0x6fc74332
mov dword [0x70fcbe78], 0x70437140
mov dword [0x70fcbe68], 0x70442860
mov dword [0x70fcbe60], 0x70442df0
mov dword [0x70fcbf2c], 0x7043f4c0
mov dword [0x70fcbf3c], 0x7043f850
mov edx, ebx
and edx, 2
je 0x6fc74437
mov dword [0x70fcbe40], 0x70437930
mov dword [0x70fcbe44], 0x704388f0
mov dword [0x70fcbef8], 0x70442f80
mov dword [0x70fcbec8], 0x70443100
mov dword [0x70fcbeec], 0x70443260
mov dword [0x70fcbf00], 0x70443570
mov dword [0x70fcbed0], 0x70443640
mov dword [0x70fcbefc], 0x70443700
mov dword [0x70fcbecc], 0x704438a0
mov dword [0x70fcbec4], 0x70443920
mov dword [0x70fcbee8], 0x70443af0
mov dword [0x70fcbed8], 0x70443c90
mov dword [0x70fcbe90], 0x70443fd0
mov dword [0x70fcbe7c], 0x70439640
mov dword [0x70fcbe88], 0x704398a0
mov dword [0x70fcbea8], 0x7043a930
mov dword [0x70fcbea0], 0x7043aae0
mov dword [0x70fcbf2c], 0x7043f5e0
mov dword [0x70fcbf3c], 0x7043f980
mov dword [0x70fcbe70], 0x704447f0
mov dword [0x70fcbe6c], 0x70444990
mov dword [0x70fcbe68], 0x70444a10
mov dword [0x70fcbe60], 0x70444ca0
mov dword [0x70fcbe64], 0x70444d70
mov dword [0x70fcbe58], 0x70445070
test eax, eax
je 0x6fc74477
mov dword [0x70fcbef8], 0x70445230
mov dword [0x70fcbec8], 0x704453c0
mov dword [0x70fcbeec], 0x70445530
mov dword [0x70fcbf00], 0x70445860
mov dword [0x70fcbed0], 0x70445940
mov dword [0x70fcbefc], 0x70445a10
test bl, 0x20
je 0x6fc7458c
test edx, edx
mov dword [0x70fcbeac], 0x70445bc0
mov dword [0x70fcbebc], 0x70445ca0
mov dword [0x70fcbeb0], 0x70445d20
mov dword [0x70fcbeb4], 0x70445ed0
mov dword [0x70fcbeb8], 0x70446260
mov dword [0x70fcbe9c], 0x70446380
mov dword [0x70fcbea4], 0x704463f0
je 0x6fc7458c
mov dword [0x70fcbe44], 0x70446430
mov dword [0x70fcbea8], 0x70446080
mov dword [0x70fcbef8], 0x70446ba0
mov dword [0x70fcbec8], 0x70446d20
mov dword [0x70fcbeec], 0x70446e70
mov dword [0x70fcbf00], 0x70447180
mov dword [0x70fcbed0], 0x70447250
mov dword [0x70fcbefc], 0x70447320
mov dword [0x70fcbe80], 0x704474b0
mov dword [0x70fcbe84], 0x70447980
mov dword [0x70fcbe98], 0x704442c0
mov dword [0x70fcbe8c], 0x704446d0
mov dword [0x70fcbe7c], 0x70447e90
mov dword [0x70fcbe88], 0x70448230
mov dword [0x70fcbe70], 0x704485d0
mov dword [0x70fcbe6c], 0x70448790
mov dword [0x70fcbe68], 0x70448810
mov dword [0x70fcbe60], 0x70448ab0
mov dword [0x70fcbe64], 0x70448b70
test bl, 8
je 0x6fc74617
mov dword [0x70fcbfbc], 0x70448e40
mov dword [0x70fcbe80], 0x704391d0
mov dword [0x70fcbe84], 0x70439420
mov dword [0x70fcbe7c], 0x70439700
mov dword [0x70fcbe88], 0x70439940
mov dword [0x70fcbe70], 0x70449070
mov dword [0x70fcbe64], 0x70449330
mov dword [0x70fcbe5c], 0x70449850
mov dword [0x70fcbe48], 0x70449750
mov dword [0x70fcbe4c], 0x70449c30
mov dword [0x70fcbe40], 0x7044a360
mov dword [0x70fcbe44], 0x70449d70
mov dword [0x70fcbf14], 0x7044a8b0
xor eax, eax
and bh, 1
je 0x6fc73c8a
mov dword [0x70fcbe70], 0x704491d0
mov dword [0x70fcbe64], 0x70449540
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
cmp byte [ebx + 2], 1
jne 0x6fc74798
mov ecx, dword [ebx + 4]
mov edx, dword [ebx + 0x4c]
mov eax, dword [ebx + 0x50]
and ecx, 0x7fffffff
cmp ecx, 4
je 0x6fc74740
cmp ecx, 0x2000
jne 0x6fc747a5
mov ecx, dword [ebx + 8]
mov dword [ebp - 0x3c], ecx
mov ecx, dword [ebx + 0xc]
mov dword [ebp - 0x38], ecx
mov ecx, dword [ebx + 0x10]
mov dword [ebp - 0x34], ecx
mov ecx, dword [ebx + 0x54]
mov dword [esp + 0x1c], ecx
mov ecx, dword [ebx + 0x28]
mov dword [esp + 0x18], ecx
lea ecx, [ebx + 0x3c]
mov dword [esp + 0x14], ecx
lea ecx, [ebx + 0x2c]
mov dword [esp + 0x10], ecx
mov ecx, dword [ebx + 0x18]
mov dword [esp + 0xc], ecx
mov dword [esp + 8], eax
lea eax, [ebp - 0x3c]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.6fcada60
call dword [0x70fcbe78]
lea esp, [ebp - 0xc]
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
cmp byte [ebx + 2], 1
jne 0x6fc74798
mov dword [ebx + 4], 0x10303
mov dword [ebx + 8], 0x7074ad10
call fcn.70437000
mov esi, eax
mov edi, eax
or esi, 0x80
test al, 4
jne 0x6fc747b0
test esi, 0x308
je 0x6fc74714
mov eax, 0x70437120
call fcn.6fc73bd0
mov edx, esi
and edx, 0xfffffcf7
test eax, eax
cmovne esi, edx
lea eax, [ebp - 0x3c]
mov dword [ebx + 0xc], esi
mov dword [ebx + 0x10], 0
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov eax, dword [ebp - 0x28]
mov dword [ebx + 0x10], eax
xor eax, eax
sub esp, 4
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov edi, dword [ebx + 8]
mov ecx, dword [ebx + 8]
mov esi, dword [ebx + 0x18]
mov dword [ebp - 0x3c], edi
mov edi, dword [ebx + 0x18]
shr esi, 0x1f
add esi, dword [ebx + 0x18]
imul edi, eax
sar esi, 1
add ecx, edi
mov dword [ebp - 0x34], ecx
mov ecx, eax
shr ecx, 0x1f
add ecx, eax
sar ecx, 1
imul ecx, esi
add ecx, edi
add ecx, dword [ebx + 8]
mov dword [ebp - 0x38], ecx
mov ecx, dword [ebx + 0x54]
mov dword [esp + 0x1c], ecx
mov ecx, dword [ebx + 0x28]
mov dword [esp + 0xc], edx
mov dword [esp + 0x18], ecx
lea ecx, [ebx + 0x3c]
add ebx, 0x2c
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], ebx
jmp 0x6fc746a3
lea esp, [ebp - 0xc]
mov eax, 0xfffffffc
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, 0xfffffffd
jmp 0x6fc73c8a
mov eax, 0x70437110
call fcn.6fc73bd0
test eax, eax
je 0x6fc746f5
and edi, 0xfffffffb
mov esi, edi
or esi, 0x80
jmp 0x6fc746f5
mov eax, 0x70437120
call fcn.6fc73bd0
mov edx, ebx
and edx, 0xfffffcf7
test eax, eax
cmovne ebx, edx
jmp 0x6fc73cc3
mov eax, 0x70437110
call fcn.6fc73bd0
test eax, eax
je 0x6fc73cb7
and esi, 0xfffffffb
mov ebx, esi
or bl, 0x80
jmp 0x6fc73cb7