Function at 0x408c00
Capabilities:
Contain obfuscated stackstrings
Set registry value

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4336f5
mov eax, dword fs:[0]
push eax
push ebx
mov eax, 0x1818
call fcn.00413ec0
mov eax, dword [0x441370]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
call fcn.00407780
push 0xc
call fcn.0041250d
add esp, 4
mov dword [ebp - 0x244], eax
xorps xmm0, xmm0
movq qword [eax], xmm0
push 1
push str.SOFTWAREWOW6432NodeMicrosoftNetNode
push ecx
mov ecx, eax
mov dword [eax + 8], 0
call fcn.00401260
mov edi, eax
mov dword [ebp - 0x1648], edi
test edi, edi
je 0x40a62e
push 0x1f4
lea eax, [ebp - 0x210]
push 0
push eax
call fcn.00415210
add esp, 0xc
lea ecx, [ebp - 0x228]
mov edx, 7
call fcn.004049e0
mov ecx, eax
call fcn.0040c150
push eax
lea eax, [ebp - 0x210]
push 0x43cb50
push eax
call fcn.004016c0
add esp, 0xc
lea ecx, [ebp - 0x228]
call fcn.004014e0
lea eax, [ebp - 0x210]
push eax
lea ecx, [ebp - 0x2b4]
call fcn.00401530
mov dword [ebp - 4], 0
lea esi, [ebp - 0x210]
movsx eax, byte [esi]
push eax
call fcn.0041ad5e
mov byte [esi], al
add esp, 4
inc esi
lea eax, [ebp - 0x1c]
cmp esi, eax
jne 0x408cf3
push 0
lea eax, [ebp - 0x210]
push eax
push str.BaseBoardProduct
push edi
call fcn.004012d0
add esp, 0x10
call fcn.0041242f
push eax
lea ecx, [ebp - 0x1640]
call fcn.0040be80
xorps xmm0, xmm0
mov dword [ebp - 0x238], 0
movq qword [ebp - 0x240], xmm0
mov dword [ebp - 0x240], 0
mov dword [ebp - 0x23c], 0
mov dword [ebp - 0x238], 0
push str.Hewlett_Packard_Corporation
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 1
call fcn.00401530
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 2
push eax
lea ecx, [ebp - 0x240]
call fcn.0040be10
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 1
call fcn.004014e0
push str.ASUSTeK_COMPUTER_INC.
lea ecx, [ebp - 0x228]
call fcn.00401530
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 3
push eax
lea ecx, [ebp - 0x240]
call fcn.0040be10
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 1
call fcn.004014e0
push str.AlienWare_Computer_Corp.
lea ecx, [ebp - 0x228]
call fcn.00401530
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 4
push eax
lea ecx, [ebp - 0x240]
call fcn.0040be10
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 1
call fcn.004014e0
push str.Lenovo_Plate_INC
lea ecx, [ebp - 0x228]
call fcn.00401530
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 5
push eax
lea ecx, [ebp - 0x240]
call fcn.0040be10
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 1
call fcn.004014e0
push str.Legion_5_Tek_Corp
lea ecx, [ebp - 0x228]
call fcn.00401530
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0x240]
call fcn.0040be10
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 1
call fcn.004014e0
push str.MSI_Tech_Computer
lea ecx, [ebp - 0x228]
call fcn.00401530
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 7
push eax
lea ecx, [ebp - 0x240]
call fcn.0040be10
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 1
call fcn.004014e0
push str.Arduino_Technologies
lea ecx, [ebp - 0x228]
call fcn.00401530
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 8
push eax
lea ecx, [ebp - 0x240]
call fcn.0040be10
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 1
call fcn.004014e0
push str.Gigabyte_Technology_Co.__Ltd.
lea ecx, [ebp - 0x228]
call fcn.00401530
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 9
push eax
lea ecx, [ebp - 0x240]
call fcn.0040be10
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 1
call fcn.004014e0
push str.Intel_Corporation
lea ecx, [ebp - 0x228]
call fcn.00401530
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0xa
push eax
lea ecx, [ebp - 0x240]
call fcn.0040be10
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 1
call fcn.004014e0
push str.ASRock_Incorporation
lea ecx, [ebp - 0x228]
call fcn.00401530
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0xb
push eax
lea ecx, [ebp - 0x240]
call fcn.0040be10
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 1
call fcn.004014e0
push str.Biostar_Microtech_International_Corp.
lea ecx, [ebp - 0x228]
call fcn.00401530
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0xc
push eax
lea ecx, [ebp - 0x240]
call fcn.0040be10
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 1
call fcn.004014e0
push str.EVGA_Corporation
lea ecx, [ebp - 0x228]
call fcn.00401530
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0xd
push eax
lea ecx, [ebp - 0x240]
call fcn.0040be10
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x228]
call fcn.004014e0
push str.Foxconn_Electronics_Inc.
lea ecx, [ebp - 0x228]
call fcn.00401530
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0xe
push eax
lea ecx, [ebp - 0x240]
call fcn.0040be10
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 1
call fcn.004014e0
push str.Elitegroup_Computer_Systems_Co.__Ltd.
lea ecx, [ebp - 0x228]
call fcn.00401530
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0xf
push eax
lea ecx, [ebp - 0x240]
call fcn.0040be10
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 1
call fcn.004014e0
push str.Supermicro
lea ecx, [ebp - 0x228]
call fcn.00401530
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x10
push eax
lea ecx, [ebp - 0x240]
call fcn.0040be10
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 1
call fcn.004014e0
push str.Acer_Incorporated
lea ecx, [ebp - 0x228]
call fcn.00401530
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x11
push eax
lea ecx, [ebp - 0x240]
call fcn.0040be10
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 1
call fcn.004014e0
push str.Dell_Inc.
lea ecx, [ebp - 0x228]
call fcn.00401530
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x12
push eax
lea ecx, [ebp - 0x240]
call fcn.0040be10
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 1
call fcn.004014e0
push str.Sony_Corporation
lea ecx, [ebp - 0x228]
call fcn.00401530
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x13
push eax
lea ecx, [ebp - 0x240]
call fcn.0040be10
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 1
call fcn.004014e0
push str.Toshiba_Corporation
lea ecx, [ebp - 0x228]
call fcn.00401530
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x14
push eax
lea ecx, [ebp - 0x240]
call fcn.0040be10
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 1
call fcn.004014e0
push str.Fujitsu_Limited
lea ecx, [ebp - 0x228]
call fcn.00401530
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x15
push eax
lea ecx, [ebp - 0x240]
call fcn.0040be10
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 1
call fcn.004014e0
push str.Samsung_Electronics_Co.__Ltd.
lea ecx, [ebp - 0x228]
call fcn.00401530
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x16
push eax
lea ecx, [ebp - 0x240]
call fcn.0040be10
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 1
call fcn.004014e0
push str.MSI_Computer_Corp.
lea ecx, [ebp - 0x228]
call fcn.00401530
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x17
push eax
lea ecx, [ebp - 0x240]
call fcn.0040be10
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 1
call fcn.004014e0
lea ecx, [ebp - 0x240]
call fcn.0040bdf0
dec eax
mov dword [ebp - 0x248], 0
push 0x1f4
mov dword [ebp - 0x244], eax
lea eax, [ebp - 0x210]
push 0
push eax
call fcn.00415210
add esp, 0xc
lea eax, [ebp - 0x1640]
lea ecx, [ebp - 0x248]
push eax
call fcn.0040c490
push eax
lea ecx, [ebp - 0x240]
call fcn.0040bdd0
mov ecx, eax
call fcn.0040c150
push eax
lea eax, [ebp - 0x210]
push 0x43cb50
push eax
call fcn.004016c0
add esp, 0xc
lea esi, [ebp - 0x210]
nop dword [eax + eax]
movsx eax, byte [esi]
push eax
call fcn.0041ad5e
mov byte [esi], al
add esp, 4
inc esi
lea eax, [ebp - 0x1c]
cmp esi, eax
jne 0x409270
push 0
lea eax, [ebp - 0x210]
push eax
push str.BaseBoardManufacturer
push edi
call fcn.004012d0
xorps xmm0, xmm0
mov dword [ebp - 0x258], 0
movq qword [ebp - 0x260], xmm0
add esp, 0x10
mov dword [ebp - 0x260], 0
mov dword [ebp - 0x25c], 0
mov dword [ebp - 0x258], 0
push str.Micro_Star_International_Co.__Ltd.
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0x18
call fcn.00401530
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x19
push eax
lea ecx, [ebp - 0x260]
call fcn.0040be10
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0x18
call fcn.004014e0
push str.American_Megatrends_International__LLC.
lea ecx, [ebp - 0x228]
call fcn.00401530
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x1a
push eax
lea ecx, [ebp - 0x260]
call fcn.0040be10
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0x18
call fcn.004014e0
push str.APT_Electronics_International__LLC.
lea ecx, [ebp - 0x228]
call fcn.00401530
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x1b
push eax
lea ecx, [ebp - 0x260]
call fcn.0040be10
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0x18
call fcn.004014e0
push str.IBM_Technologies_International__Ltd.
lea ecx, [ebp - 0x228]
call fcn.00401530
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x1c
push eax
lea ecx, [ebp - 0x260]
call fcn.0040be10
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0x18
call fcn.004014e0
push str.Ozark_Corp_International__LLC.
lea ecx, [ebp - 0x228]
call fcn.00401530
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x1d
push eax
lea ecx, [ebp - 0x260]
call fcn.0040be10
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0x18
call fcn.004014e0
push str.Arduino_International__Ltd.
lea ecx, [ebp - 0x228]
call fcn.00401530
mov byte [ebp - 4], 0x1e
lea eax, [ebp - 0x228]
push eax
lea ecx, [ebp - 0x260]
call fcn.0040be10
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0x18
call fcn.004014e0
lea ecx, [ebp - 0x260]
call fcn.0040bdf0
dec eax
mov dword [ebp - 0x248], 0
push 0
mov dword [ebp - 0x244], eax
lea eax, [ebp - 0x1640]
push ecx
push eax
lea ecx, [ebp - 0x248]
call fcn.0040c490
add esp, 4
lea ecx, [ebp - 0x260]
push eax
call fcn.0040bdd0
mov ecx, eax
call fcn.0040c150
push eax
push str.BiosVendor
push edi
call fcn.004012d0
push 0x1f4
lea eax, [ebp - 0x210]
push 0
push eax
call fcn.00415210
add esp, 0x1c
mov dword [ebp - 0x248], 1
lea eax, [ebp - 0x1640]
mov dword [ebp - 0x244], 9
lea ecx, [ebp - 0x248]
mov dword [ebp - 0x268], 0xa
mov dword [ebp - 0x264], 0x1b
push eax
mov dword [ebp - 0x218], 0x7dd
mov dword [ebp - 0x214], 0x7e6
call fcn.0040c490
mov dword [ebp - 0x1644], eax
lea ecx, [ebp - 0x268]
lea eax, [ebp - 0x1640]
push eax
call fcn.0040c490
mov edi, eax
lea ecx, [ebp - 0x218]
lea eax, [ebp - 0x1640]
push eax
call fcn.0040c490
push edi
push dword [ebp - 0x1644]
mov esi, eax
lea eax, [ebp - 0x210]
push esi
push str._d0_d_d000000.000000000
push eax
call fcn.004016c0
add esp, 0x14
lea eax, [ebp - 0x210]
push 0
push eax
push str.BiosReleaseDate
push dword [ebp - 0x1648]
call fcn.004012d0
push 0x1f4
lea eax, [ebp - 0x210]
push 0
push eax
call fcn.00415210
add esp, 0x1c
lea eax, [ebp - 0x210]
push esi
push edi
push dword [ebp - 0x1644]
push str.0_d__d__d
push eax
call fcn.004016c0
mov edi, dword [ebp - 0x1648]
lea eax, [ebp - 0x210]
add esp, 0x14
push 0
push eax
push str.NiceBiosReleaseDate
push edi
call fcn.004012d0
push 0x1f4
lea eax, [ebp - 0x210]
push 0
push eax
call fcn.00415210
add esp, 0x1c
lea ecx, [ebp - 0x228]
mov edx, 0xf
call fcn.004049e0
mov ecx, eax
call fcn.0040c150
push eax
lea eax, [ebp - 0x210]
push 0x43cb50
push eax
call fcn.004016c0
add esp, 0xc
lea ecx, [ebp - 0x228]
call fcn.004014e0
lea esi, [ebp - 0x210]
nop dword [eax + eax]
movsx eax, byte [esi]
push eax
call fcn.0041ad5e
mov byte [esi], al
add esp, 4
inc esi
lea eax, [ebp - 0x1c]
cmp esi, eax
jne 0x4095d0
push 0
lea eax, [ebp - 0x210]
push eax
push str.BiosSerialNumber
push edi
call fcn.004012d0
push 0x1f4
lea eax, [ebp - 0x210]
mov dword [ebp - 0x218], 0x12c
push 0
push eax
mov dword [ebp - 0x214], 0x18f
call fcn.00415210
add esp, 0x1c
lea eax, [ebp - 0x1640]
lea ecx, [ebp - 0x218]
push eax
call fcn.0040c490
lea ecx, [ebp - 0x2b4]
mov esi, eax
call fcn.0040c150
push esi
push eax
lea eax, [ebp - 0x210]
push str._s._d
push eax
call fcn.004016c0
add esp, 0x10
lea esi, [ebp - 0x210]
nop
movsx eax, byte [esi]
push eax
call fcn.0041ad5e
mov byte [esi], al
add esp, 4
inc esi
lea eax, [ebp - 0x1c]
cmp esi, eax
jne 0x409660
push 0
lea eax, [ebp - 0x210]
push eax
push str.SMBIOSBIOSVersion
push edi
call fcn.004012d0
xorps xmm0, xmm0
mov dword [ebp - 0x22c], 0
movq qword [ebp - 0x234], xmm0
add esp, 0x10
mov dword [ebp - 0x234], 0
mov dword [ebp - 0x230], 0
mov dword [ebp - 0x22c], 0
push str.ASUS
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0x1f
call fcn.00401530
mov byte [ebp - 4], 0x20
mov eax, dword [ebp - 0x230]
cmp eax, dword [ebp - 0x22c]
je 0x409712
movups xmm0, xmmword [ebp - 0x228]
mov ecx, 0xf
mov byte [ebp - 0x228], 0
movups xmmword [eax], xmm0
movq xmm0, qword [ebp - 0x218]
movq qword [eax + 0x10], xmm0
add dword [ebp - 0x230], 0x18
jmp 0x40972b
lea ecx, [ebp - 0x228]
push ecx
push eax
lea ecx, [ebp - 0x234]
call fcn.0040d780
mov ecx, dword [ebp - 0x214]
mov byte [ebp - 4], 0x1f
cmp ecx, 0x10
jb 0x409763
mov edx, dword [ebp - 0x228]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x409759
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40a651
push ecx
push edx
call fcn.00412542
add esp, 8
push 7
xorps xmm0, xmm0
mov dword [ebp - 0x218], 0
push str.TOSHIBA
lea ecx, [ebp - 0x228]
mov dword [ebp - 0x214], 0
movups xmmword [ebp - 0x228], xmm0
call fcn.00401570
mov byte [ebp - 4], 0x21
mov eax, dword [ebp - 0x230]
cmp eax, dword [ebp - 0x22c]
je 0x4097d1
movups xmm0, xmmword [ebp - 0x228]
mov ecx, 0xf
mov byte [ebp - 0x228], 0
movups xmmword [eax], xmm0
movq xmm0, qword [ebp - 0x218]
movq qword [eax + 0x10], xmm0
add dword [ebp - 0x230], 0x18
jmp 0x4097ea
lea ecx, [ebp - 0x228]
push ecx
push eax
lea ecx, [ebp - 0x234]
call fcn.0040d780
mov ecx, dword [ebp - 0x214]
mov byte [ebp - 4], 0x1f
cmp ecx, 0x10
jb 0x409822
mov edx, dword [ebp - 0x228]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x409818
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40a651
push ecx
push edx
call fcn.00412542
add esp, 8
push 4
xorps xmm0, xmm0
mov dword [ebp - 0x218], 0
push str.DELL
lea ecx, [ebp - 0x228]
mov dword [ebp - 0x214], 0
movups xmmword [ebp - 0x228], xmm0
call fcn.00401570
mov byte [ebp - 4], 0x22
mov eax, dword [ebp - 0x230]
cmp eax, dword [ebp - 0x22c]
je 0x409890
movups xmm0, xmmword [ebp - 0x228]
mov ecx, 0xf
mov byte [ebp - 0x228], 0
movups xmmword [eax], xmm0
movq xmm0, qword [ebp - 0x218]
movq qword [eax + 0x10], xmm0
add dword [ebp - 0x230], 0x18
jmp 0x4098a9
lea ecx, [ebp - 0x228]
push ecx
push eax
lea ecx, [ebp - 0x234]
call fcn.0040d780
mov ecx, dword [ebp - 0x214]
mov byte [ebp - 4], 0x1f
cmp ecx, 0x10
jb 0x4098e1
mov edx, dword [ebp - 0x228]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4098d7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40a651
push ecx
push edx
call fcn.00412542
add esp, 8
push 4
xorps xmm0, xmm0
mov dword [ebp - 0x218], 0
push str.ACER
lea ecx, [ebp - 0x228]
mov dword [ebp - 0x214], 0
movups xmmword [ebp - 0x228], xmm0
call fcn.00401570
mov byte [ebp - 4], 0x23
mov eax, dword [ebp - 0x230]
cmp eax, dword [ebp - 0x22c]
je 0x40994f
movups xmm0, xmmword [ebp - 0x228]
mov ecx, 0xf
mov byte [ebp - 0x228], 0
movups xmmword [eax], xmm0
movq xmm0, qword [ebp - 0x218]
movq qword [eax + 0x10], xmm0
add dword [ebp - 0x230], 0x18
jmp 0x409968
lea ecx, [ebp - 0x228]
push ecx
push eax
lea ecx, [ebp - 0x234]
call fcn.0040d780
mov ecx, dword [ebp - 0x214]
mov byte [ebp - 4], 0x1f
cmp ecx, 0x10
jb 0x4099a0
mov edx, dword [ebp - 0x228]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x409996
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40a651
push ecx
push edx
call fcn.00412542
add esp, 8
push 3
xorps xmm0, xmm0
mov dword [ebp - 0x218], 0
push 0x43ce94
lea ecx, [ebp - 0x228]
mov dword [ebp - 0x214], 0
movups xmmword [ebp - 0x228], xmm0
call fcn.00401570
mov byte [ebp - 4], 0x24
mov eax, dword [ebp - 0x230]
cmp eax, dword [ebp - 0x22c]
je 0x409a0e
movups xmm0, xmmword [ebp - 0x228]
mov ecx, 0xf
mov byte [ebp - 0x228], 0
movups xmmword [eax], xmm0
movq xmm0, qword [ebp - 0x218]
movq qword [eax + 0x10], xmm0
add dword [ebp - 0x230], 0x18
jmp 0x409a27
lea ecx, [ebp - 0x228]
push ecx
push eax
lea ecx, [ebp - 0x234]
call fcn.0040d780
mov ecx, dword [ebp - 0x214]
mov byte [ebp - 4], 0x1f
cmp ecx, 0x10
jb 0x409a5f
mov edx, dword [ebp - 0x228]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x409a55
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40a651
push ecx
push edx
call fcn.00412542
add esp, 8
push 2
xorps xmm0, xmm0
mov dword [ebp - 0x218], 0
push 0x43ce98
lea ecx, [ebp - 0x228]
mov dword [ebp - 0x214], 0
movups xmmword [ebp - 0x228], xmm0
call fcn.00401570
mov byte [ebp - 4], 0x25
mov eax, dword [ebp - 0x230]
cmp eax, dword [ebp - 0x22c]
je 0x409acd
movups xmm0, xmmword [ebp - 0x228]
mov ecx, 0xf
mov byte [ebp - 0x228], 0
movups xmmword [eax], xmm0
movq xmm0, qword [ebp - 0x218]
movq qword [eax + 0x10], xmm0
add dword [ebp - 0x230], 0x18
jmp 0x409ae6
lea ecx, [ebp - 0x228]
push ecx
push eax
lea ecx, [ebp - 0x234]
call fcn.0040d780
mov ecx, dword [ebp - 0x214]
mov byte [ebp - 4], 0x1f
cmp ecx, 0x10
jb 0x409b1e
mov edx, dword [ebp - 0x228]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x409b14
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40a651
push ecx
push edx
call fcn.00412542
add esp, 8
mov ecx, dword [ebp - 0x230]
mov eax, 0x2aaaaaab
sub ecx, dword [ebp - 0x234]
imul ecx
push 0x1f4
sar edx, 2
lea eax, [ebp - 0x210]
mov esi, edx
dec edx
push 0
shr esi, 0x1f
push eax
add esi, edx
call fcn.00415210
add esp, 0xc
lea ecx, [ebp - 0x228]
call fcn.00404c00
mov dword [ebp - 0x1644], eax
cmp dword [eax + 0x14], 0x10
jb 0x409b71
mov eax, dword [eax]
mov dword [ebp - 0x1644], eax
cmp esi, 0x80000000
jb 0x409b8d
cmp esi, 0xffffffff
jne 0x409b8d
lea ecx, [ebp - 0x1640]
call fcn.0040dcd0
mov ecx, eax
jmp 0x409bd9
lea ecx, [ebp - 0x1640]
inc esi
call fcn.0040dcd0
mul esi
mov dword [ebp - 0x264], eax
mov ecx, edx
cmp eax, esi
jae 0x409bd9
mov eax, esi
xor edx, edx
neg eax
div esi
mov eax, edx
cmp dword [ebp - 0x264], eax
jae 0x409bd9
mov edi, eax
nop dword [eax + eax]
lea ecx, [ebp - 0x1640]
call fcn.0040dcd0
mul esi
mov ecx, edx
cmp eax, edi
jb 0x409bc0
mov edi, dword [ebp - 0x1648]
mov eax, dword [ebp - 0x234]
lea ecx, [ecx + ecx*2]
cmp dword [eax + ecx*8 + 0x14], 0x10
lea eax, [eax + ecx*8]
jb 0x409bee
mov eax, dword [eax]
push dword [ebp - 0x1644]
push eax
lea eax, [ebp - 0x210]
push str.__s_____s
push eax
call fcn.004016c0
mov ecx, dword [ebp - 0x214]
add esp, 0x10
cmp ecx, 0x10
jb 0x409c43
mov edx, dword [ebp - 0x228]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x409c39
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40a64c
push ecx
push edx
call fcn.00412542
add esp, 8
push 0
lea eax, [ebp - 0x210]
push eax
push str.BiosVersion
push edi
call fcn.004012d0
add esp, 0x10
mov dword [ebp - 0x218], 0x65
lea ecx, [ebp - 0x1640]
mov dword [ebp - 0x214], 0x73
call fcn.0040dcd0
mov esi, 0xf
mul esi
cmp eax, esi
jae 0x409ca2
cmp eax, 1
jae 0x409ca2
nop dword [eax]
lea ecx, [ebp - 0x1640]
call fcn.0040dcd0
mul esi
cmp eax, 1
jb 0x409c90
lea ecx, [edx - 0x7fffff9b]
lea eax, [ecx - 0x80000000]
cmp ecx, 0x80000000
lea esi, [ecx - 0x80000000]
cmovae esi, eax
lea ecx, [ebp - 0x218]
lea eax, [ebp - 0x1640]
mov dword [ebp - 0x264], esi
push eax
call fcn.0040c490
push 0x1f4
mov dword [ebp - 0x1644], eax
lea eax, [ebp - 0x210]
push 0
push eax
call fcn.00415210
add esp, 0xc
lea eax, [ebp - 0x210]
push dword [ebp - 0x1644]
push esi
push 0x43cea8
push eax
call fcn.004016c0
push 0
lea eax, [ebp - 0x210]
push eax
push str.KeyboardName
push edi
call fcn.004012d0
add esp, 0x20
lea ecx, [ebp - 0x298]
mov edx, 2
call fcn.004049e0
mov edx, 1
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x280]
call fcn.004049e0
lea ecx, [ebp - 0x298]
mov byte [ebp - 4], 0x27
call fcn.0040c150
cmp dword [ebp - 0x284], 0x10
mov esi, eax
mov eax, ecx
cmovae eax, dword [ebp - 0x298]
add eax, dword [ebp - 0x288]
cmp esi, eax
je 0x409d8a
mov edi, eax
movsx eax, byte [esi]
push eax
call fcn.0041ad5e
mov byte [esi], al
add esp, 4
inc esi
cmp esi, edi
jne 0x409d71
mov edi, dword [ebp - 0x1648]
cmp dword [ebp - 0x26c], 0x10
lea ecx, [ebp - 0x280]
jb 0x409da7
mov eax, dword [ebp - 0x280]
mov edx, eax
mov ecx, eax
mov esi, eax
jmp 0x409daf
mov esi, ecx
lea edx, [ebp - 0x280]
mov eax, dword [ebp - 0x270]
add eax, edx
mov dword [ebp - 0x244], eax
cmp ecx, eax
je 0x409ddc
mov edi, eax
movsx eax, byte [esi]
push eax
call fcn.0041ad5e
mov byte [esi], al
add esp, 4
inc esi
cmp esi, edi
jne 0x409dc3
mov edi, dword [ebp - 0x1648]
push 0x1f4
lea eax, [ebp - 0x210]
push 0
push eax
call fcn.00415210
add esp, 0xc
lea ecx, [ebp - 0x280]
cmp dword [ebp - 0x26c], 0x10
lea eax, [ebp - 0x298]
cmovae ecx, dword [ebp - 0x280]
push dword [ebp - 0x1644]
cmp dword [ebp - 0x284], 0x10
push dword [ebp - 0x264]
cmovae eax, dword [ebp - 0x298]
push ecx
push eax
lea eax, [ebp - 0x210]
push 0x43ced4
push eax
call fcn.004016c0
push 0
lea eax, [ebp - 0x210]
push eax
push str.KeyboardDescription
push edi
call fcn.004012d0
push 0x1f4
lea eax, [ebp - 0x210]
push 0
push eax
call fcn.00415210
add esp, 0x34
lea ecx, [ebp - 0x1640]
call fcn.0040dcd0
mov esi, 0x1f
mul esi
cmp eax, esi
jae 0x409e92
cmp eax, 4
jae 0x409e92
nop
lea ecx, [ebp - 0x1640]
call fcn.0040dcd0
mul esi
cmp eax, 4
jb 0x409e80
add edx, 0x8000019f
cmp edx, 0x80000000
lea eax, [edx - 0x80000000]
lea ecx, [edx - 0x80000000]
cmovae ecx, eax
lea eax, [ebp - 0x210]
push ecx
push str.00000_d
push eax
call fcn.004016c0
add esp, 0xc
lea eax, [ebp - 0x210]
push 0
push eax
push str.KeyboardLayout
push edi
call fcn.004012d0
add esp, 0x10
lea ecx, [ebp - 0x1640]
call fcn.0040dcd0
mov esi, 0x13
mul esi
cmp eax, esi
jae 0x409f06
cmp eax, 6
jae 0x409f06
lea ecx, [ebp - 0x1640]
call fcn.0040dcd0
mul esi
cmp eax, 6
jb 0x409ef4
add edx, reloc.WS2_32.dll_inet_ntoa
cmp edx, 0x80000000
lea eax, [edx - 0x80000000]
lea ecx, [edx - 0x80000000]
cmovae ecx, eax
mov eax, dword [edi]
mov dword [ebp - 0x29c], ecx
test eax, eax
je 0x409f4d
push 4
lea ecx, [ebp - 0x29c]
push ecx
push 4
push 0
push str.NumberOfFunctionKeys
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
test eax, eax
sete al
jmp 0x409f4f
xor al, al
xorps xmm0, xmm0
mov byte [edi + 8], al
push 0x22
push str.NVIDIA_GeForce_RTX_3060_Laptop_GPU
lea ecx, [ebp - 0x1828]
movq qword [ebp - 0x254], xmm0
mov dword [ebp - 0x24c], 0
movups xmmword [ebp - 0x1828], xmm0
mov dword [ebp - 0x1818], 0
mov dword [ebp - 0x1814], 0
call fcn.00401570
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x1810]
push 0x1d
xorps xmm0, xmm0
mov dword [ebp - 0x1800], 0
push str.NVIDIA_GeForce_RTX_2060_Super
movups xmmword [ebp - 0x1810], xmm0
mov dword [ebp - 0x17fc], 0
call fcn.00401570
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0x17f8]
push 0x1a
xorps xmm0, xmm0
mov dword [ebp - 0x17e8], 0
push str.NVIDIA_GeForce_GTX_1660_Ti
movups xmmword [ebp - 0x17f8], xmm0
mov dword [ebp - 0x17e4], 0
call fcn.00401570
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x17e0]
push 0x1d
xorps xmm0, xmm0
mov dword [ebp - 0x17d0], 0
push str.NVIDIA_GeForce_GTX_1650_Super
movups xmmword [ebp - 0x17e0], xmm0
mov dword [ebp - 0x17cc], 0
call fcn.00401570
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x17c8]
push 0x17
xorps xmm0, xmm0
mov dword [ebp - 0x17b8], 0
push str.NVIDIA_GeForce_RTX_3070
movups xmmword [ebp - 0x17c8], xmm0
mov dword [ebp - 0x17b4], 0
call fcn.00401570
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x17b0]
push 0x17
xorps xmm0, xmm0
mov dword [ebp - 0x17a0], 0
push str.NVIDIA_GeForce_RTX_3080
movups xmmword [ebp - 0x17b0], xmm0
mov dword [ebp - 0x179c], 0
call fcn.00401570
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x1798]
push 0x17
xorps xmm0, xmm0
mov dword [ebp - 0x1788], 0
push str.NVIDIA_GeForce_RTX_3090
movups xmmword [ebp - 0x1798], xmm0
mov dword [ebp - 0x1784], 0
call fcn.00401570
mov byte [ebp - 4], 0x2e
lea ecx, [ebp - 0x1780]
push 0x1d
xorps xmm0, xmm0
mov dword [ebp - 0x1770], 0
push str.NVIDIA_GeForce_RTX_2080_Super
movups xmmword [ebp - 0x1780], xmm0
mov dword [ebp - 0x176c], 0
call fcn.00401570
mov byte [ebp - 4], 0x2f
lea ecx, [ebp - 0x1768]
push 0x1d
xorps xmm0, xmm0
mov dword [ebp - 0x1758], 0
push str.NVIDIA_GeForce_RTX_2070_Super
movups xmmword [ebp - 0x1768], xmm0
mov dword [ebp - 0x1754], 0
call fcn.00401570
mov byte [ebp - 4], 0x30
lea ecx, [ebp - 0x1750]
push 0x1a
xorps xmm0, xmm0
mov dword [ebp - 0x1740], 0
push str.NVIDIA_GeForce_GTX_1080_Ti
movups xmmword [ebp - 0x1750], xmm0
mov dword [ebp - 0x173c], 0
call fcn.00401570
mov byte [ebp - 4], 0x31
lea ecx, [ebp - 0x1738]
push 0x17
xorps xmm0, xmm0
mov dword [ebp - 0x1728], 0
push str.NVIDIA_GeForce_GTX_1060
movups xmmword [ebp - 0x1738], xmm0
mov dword [ebp - 0x1724], 0
call fcn.00401570
mov byte [ebp - 4], 0x32
lea ecx, [ebp - 0x1720]
push 0x1a
xorps xmm0, xmm0
mov dword [ebp - 0x1710], 0
push str.NVIDIA_GeForce_GTX_1050_Ti
movups xmmword [ebp - 0x1720], xmm0
mov dword [ebp - 0x170c], 0
call fcn.00401570
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0x1708]
push 0x17
xorps xmm0, xmm0
mov dword [ebp - 0x16f8], 0
push str.NVIDIA_GeForce_RTX_2060
movups xmmword [ebp - 0x1708], xmm0
mov dword [ebp - 0x16f4], 0
call fcn.00401570
mov byte [ebp - 4], 0x34
lea ecx, [ebp - 0x16f0]
push 0x17
xorps xmm0, xmm0
mov dword [ebp - 0x16e0], 0
push str.NVIDIA_GeForce_RTX_2070
movups xmmword [ebp - 0x16f0], xmm0
mov dword [ebp - 0x16dc], 0
call fcn.00401570
mov byte [ebp - 4], 0x35
lea ecx, [ebp - 0x16d8]
push 0x17
xorps xmm0, xmm0
mov dword [ebp - 0x16c8], 0
push str.NVIDIA_GeForce_RTX_2080
movups xmmword [ebp - 0x16d8], xmm0
mov dword [ebp - 0x16c4], 0
call fcn.00401570
mov byte [ebp - 4], 0x36
lea ecx, [ebp - 0x16c0]
push 0x17
xorps xmm0, xmm0
mov dword [ebp - 0x16b0], 0
push str.NVIDIA_GeForce_GTX_1080
movups xmmword [ebp - 0x16c0], xmm0
mov dword [ebp - 0x16ac], 0
call fcn.00401570
mov byte [ebp - 4], 0x37
lea ecx, [ebp - 0x16a8]
push 0x1a
xorps xmm0, xmm0
mov dword [ebp - 0x1698], 0
push str.NVIDIA_GeForce_GTX_1070_Ti
movups xmmword [ebp - 0x16a8], xmm0
mov dword [ebp - 0x1694], 0
call fcn.00401570
mov byte [ebp - 4], 0x38
lea ecx, [ebp - 0x1690]
push 0x17
xorps xmm0, xmm0
mov dword [ebp - 0x1680], 0
push str.NVIDIA_GeForce_GTX_1070
movups xmmword [ebp - 0x1690], xmm0
mov dword [ebp - 0x167c], 0
call fcn.00401570
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0x1678]
push 0x1b
xorps xmm0, xmm0
mov dword [ebp - 0x1668], 0
push str.NVIDIA_GeForce_GTX_1060_6GB
movups xmmword [ebp - 0x1678], xmm0
mov dword [ebp - 0x1664], 0
call fcn.00401570
mov byte [ebp - 4], 0x3a
lea ecx, [ebp - 0x1660]
push 0x17
xorps xmm0, xmm0
mov dword [ebp - 0x1650], 0
push str.NVIDIA_GeForce_GTX_1050
movups xmmword [ebp - 0x1660], xmm0
mov dword [ebp - 0x164c], 0
call fcn.00401570
mov byte [ebp - 4], 0x3b
push 0x1e0
mov dword [ebp - 0x254], 0
mov dword [ebp - 0x250], 0
mov dword [ebp - 0x24c], 0
call fcn.0041250d
mov esi, eax
add esp, 4
lea eax, [ebp - 0x254]
mov dword [ebp - 0x254], esi
mov dword [ebp - 0x250], esi
mov dword [ebp - 0x244], eax
lea ecx, [esi + 0x1e0]
mov dword [ebp - 0x24c], ecx
xorps xmm0, xmm0
mov dword [ebp - 0x214], 0
movq qword [ebp - 0x21c], xmm0
lea edi, [ebp - 0x1828]
mov dword [ebp - 0x21c], esi
mov dword [ebp - 0x218], esi
mov dword [ebp - 0x214], eax
mov byte [ebp - 4], 0x3d
push edi
mov ecx, esi
call fcn.0040c160
add esi, 0x18
lea eax, [ebp - 0x1648]
add edi, 0x18
mov dword [ebp - 0x218], esi
cmp edi, eax
jne 0x40a3f6
push ecx
mov edx, esi
mov ecx, esi
call fcn.0040cd00
add esp, 4
mov dword [ebp - 0x250], esi
push fcn.004014e0
push 0x14
push 0x18
lea ecx, [ebp - 0x1828]
mov byte [ebp - 4], 0x3f
push ecx
call fcn.00412631
mov ecx, dword [ebp - 0x250]
mov eax, 0x2aaaaaab
mov edi, dword [ebp - 0x254]
sub ecx, edi
imul ecx
push 0x1f4
sar edx, 2
lea eax, [ebp - 0x210]
mov esi, edx
push 0
shr esi, 0x1f
push eax
add esi, edx
call fcn.00415210
dec esi
lea ecx, [ebp - 0x1640]
add esp, 0xc
cmp esi, 0xffffffff
jne 0x40a48a
call fcn.0040dcd0
mov ecx, eax
jmp 0x40a4c9
inc esi
call fcn.0040dcd0
mul esi
mov dword [ebp - 0x244], eax
mov ecx, edx
cmp eax, esi
jae 0x40a4c9
mov eax, esi
xor edx, edx
neg eax
div esi
mov edi, edx
cmp dword [ebp - 0x244], edi
jae 0x40a4c3
lea ecx, [ebp - 0x1640]
call fcn.0040dcd0
mul esi
mov ecx, edx
cmp eax, edi
jb 0x40a4b0
mov edi, dword [ebp - 0x254]
lea eax, [ecx + ecx*2]
cmp dword [edi + eax*8 + 0x14], 0x10
lea eax, [edi + eax*8]
jb 0x40a4d8
mov eax, dword [eax]
push eax
lea eax, [ebp - 0x210]
push 0x43cb50
push eax
call fcn.004016c0
mov esi, dword [ebp - 0x1648]
lea eax, [ebp - 0x210]
add esp, 0xc
push 0
push eax
push str.VideoProcessor
push esi
call fcn.004012d0
mov eax, dword [esi]
add esp, 0x10
test eax, eax
je 0x40a517
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push 0xc
push esi
call fcn.00412542
add esp, 8
lea ecx, [ebp - 0x254]
call fcn.0040c260
mov ecx, dword [ebp - 0x26c]
cmp ecx, 0x10
jb 0x40a567
mov edx, dword [ebp - 0x280]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40a55d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40a651
push ecx
push edx
call fcn.00412542
add esp, 8
mov ecx, dword [ebp - 0x284]
mov dword [ebp - 0x270], 0
mov dword [ebp - 0x26c], 0xf
mov byte [ebp - 0x280], 0
cmp ecx, 0x10
jb 0x40a5bc
mov edx, dword [ebp - 0x298]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40a5b2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40a651
push ecx
push edx
call fcn.00412542
add esp, 8
lea ecx, [ebp - 0x234]
mov dword [ebp - 0x288], 0
mov dword [ebp - 0x284], 0xf
mov byte [ebp - 0x298], 0
call fcn.0040c260
lea ecx, [ebp - 0x260]
call fcn.0040c260
lea ecx, [ebp - 0x240]
call fcn.0040c260
mov ecx, dword [ebp - 0x2a0]
cmp ecx, 0x10
jb 0x40a62e
mov edx, dword [ebp - 0x2b4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40a624
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40a651
push ecx
push edx
call fcn.00412542
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.004124fa
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.0041a900
call fcn.0041a900
int3