Function at 0x411b70
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xae4
mov eax, dword [0x6051c4]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0xa58], eax
push ebx
mov ebx, dword [ebp + 0xc]
mov dword [ebp - 0xa78], ebx
push edi
mov edi, dword [ebp + 0x10]
mov dword [ebp - 0xa50], edi
test eax, eax
je 0x414750
test ebx, ebx
je 0x414750
test edi, edi
je 0x414750
push esi
push 0x100
lea eax, [ebp - 0x20c]
push 0
push eax
call fcn.0044f220
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
push 0x80
lea eax, [ebp - 0x3cc]
push 0
push eax
call fcn.0044f220
push 0x100
lea eax, [ebp - 0x84c]
push 0
push eax
call fcn.0044f220
push 0x47857c
lea eax, [ebp - 0x3cc]
push 0x478584
push eax
call fcn.00405f60
push 0xff
lea eax, [ebp - 0x84c]
push eax
lea eax, [ebp - 0x3cc]
push 0x7f
push eax
call fcn.00411930
add esp, 0x4c
lea eax, [ebp - 0x84c]
push eax
lea eax, [ebp - 0x20c]
push str.app_name_s
push eax
call fcn.00405f60
lea edx, [ebp - 0x20c]
add esp, 0xc
mov esi, edx
nop dword [eax + eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x411c60
sub edx, esi
dec edi
nop word [eax + eax]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x411c70
mov ecx, edx
lea eax, [ebp - 0x3cc]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push str.Geeks3D
and ecx, 3
push 0x4785a0
rep movsb byte es:[edi], byte [esi]
push eax
call fcn.00405f60
push 0xff
lea eax, [ebp - 0x84c]
push eax
lea eax, [ebp - 0x3cc]
push 0x7f
push eax
call fcn.00411930
mov edi, dword [ebp - 0xa50]
add esp, 0x1c
dec edi
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x411cc0
mov ax, word [0x4785a4]
mov word [edi], ax
lea eax, [ebp - 0x84c]
push eax
lea eax, [ebp - 0x20c]
push str.app_vendor_s
push eax
call fcn.00405f60
lea edx, [ebp - 0x20c]
add esp, 0xc
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x411cf6
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x411d06
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, dword [ebp - 0xa50]
dec edi
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x411d23
mov ax, word [0x4785b8]
mov word [edi], ax
lea eax, [ebx + 0x104]
push eax
lea eax, [ebp - 0x20c]
push str.benchmark_name_s
push eax
call fcn.00405f60
lea edx, [ebp - 0x20c]
add esp, 0xc
mov esi, edx
nop dword [eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x411d60
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x411d70
mov ecx, edx
lea eax, [ebp - 0x74c]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push 0x80
and ecx, 3
push 0
rep movsb byte es:[edi], byte [esi]
push eax
call fcn.0044f220
push 0x100
lea eax, [ebp - 0xa4c]
push 0
push eax
call fcn.0044f220
push 0
push 8
push 0x14
push 1
lea eax, [ebp - 0x74c]
push str._d._d._d._d
push eax
call fcn.00405f60
push 0xff
lea eax, [ebp - 0xa4c]
push eax
lea eax, [ebp - 0x74c]
push 0x7f
push eax
call fcn.00411930
mov edi, dword [ebp - 0xa50]
add esp, 0x40
dec edi
nop dword [eax]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x411df0
mov ax, word [0x4785dc]
mov word [edi], ax
lea eax, [ebp - 0xa4c]
push eax
lea eax, [ebp - 0x20c]
push str.app_signature_s
push eax
call fcn.00405f60
lea edx, [ebp - 0x20c]
add esp, 0xc
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x411e26
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x411e36
mov eax, dword [ebp - 0xa58]
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea esi, [eax + 0xf80]
add eax, 0xf00
push 0xff
push esi
push 0x7f
push eax
call fcn.00411930
mov edi, dword [ebp - 0xa50]
add esp, 0x10
dec edi
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x411e75
mov ax, word [0x4785f4]
push esi
mov word [edi], ax
lea eax, [ebp - 0x20c]
push str.cpu_name_s
push eax
call fcn.00405f60
lea edx, [ebp - 0x20c]
add esp, 0xc
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x411ea5
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x411eb5
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, dword [ebp - 0xa50]
dec edi
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x411ed2
mov ax, word [0x478604]
mov esi, dword [ebp - 0xa58]
mov word [edi], ax
lea eax, [ebp - 0x20c]
push dword [esi + 8]
push str.cpu_speed_mhz_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x20c]
add esp, 0xc
mov esi, edx
nop word [eax + eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x411f10
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x411f20
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.004294b0
mov ecx, eax
call fcn.00429e10
mov ecx, eax
test ecx, ecx
je 0x411fa9
mov edi, dword [ebp - 0xa50]
dec edi
nop
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x411f50
mov ax, word [0x47861c]
shr ecx, 0xa
push ecx
mov word [edi], ax
lea eax, [ebp - 0x20c]
push str.cpu_mem_size_mb_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x20c]
add esp, 0xc
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x411f83
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x411f93
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, dword [ebp - 0xa50]
dec edi
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x411fb0
mov ax, word [0x478634]
push 0x478638
mov word [edi], ax
lea eax, [ebp - 0x20c]
push str.platform_s
push eax
call fcn.00405f60
lea edx, [ebp - 0x20c]
add esp, 0xc
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x411fe4
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x411ff4
mov eax, dword [ebp - 0xa58]
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea esi, [eax + 0x1100]
add eax, 0x1080
push 0xff
push esi
push 0x7f
push eax
call fcn.00411930
mov edi, dword [ebp - 0xa50]
add esp, 0x10
dec edi
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x412033
mov ax, word [0x478654]
push esi
mov word [edi], ax
lea eax, [ebp - 0x20c]
push str.os_s
push eax
call fcn.00405f60
lea edx, [ebp - 0x20c]
add esp, 0xc
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x412063
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x412073
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx + 0x44]
mov ecx, edi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x412091
sub ecx, edx
je 0x4121aa
push 0x100
xor esi, esi
lea eax, [ebp - 0x4cc]
push esi
push eax
call fcn.0044f220
push 0x100
lea eax, [ebp - 0x6cc]
push esi
push eax
call fcn.0044f220
push 0x100
lea eax, [ebp - 0x5cc]
push esi
push eax
call fcn.0044f220
add esp, 0x24
cmp byte [ebx + 0x44], 0
je 0x412113
cmp esi, 0xff
jge 0x41210d
mov bl, byte [edi + esi]
movsx eax, bl
push eax
call fcn.00455685
mov byte [ebp + esi - 0x4cc], al
add esp, 4
mov byte [ebp + esi - 0x6cc], bl
inc esi
cmp byte [edi + esi], 0
jne 0x4120e1
mov ebx, dword [ebp - 0xa78]
push 0x10
lea eax, [ebp - 0x4cc]
push str.anonymous
push eax
call fcn.004547e0
add esp, 0xc
test eax, eax
je 0x4121aa
mov edi, dword [ebp - 0xa50]
dec edi
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x412134
mov ax, word [0x47866c]
mov word [edi], ax
lea eax, [ebp - 0x5cc]
push 0xff
push eax
lea eax, [ebp - 0x6cc]
push 0x7f
push eax
call fcn.00411930
lea eax, [ebp - 0x5cc]
push eax
lea eax, [ebp - 0x20c]
push str.screen_name_s
push eax
call fcn.00405f60
lea edx, [ebp - 0x20c]
add esp, 0x1c
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x412184
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x412194
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea esi, [ebx + 0x64]
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4121b2
sub ecx, edx
je 0x4122c6
mov edi, dword [ebp - 0xa50]
dec edi
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x4121c8
mov ax, word [0x478680]
push 0x40
mov word [edi], ax
lea eax, [ebp - 0x24c]
push 0
push eax
call fcn.0044f220
add esp, 0xc
test esi, esi
je 0x41227b
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x412200
sub ecx, edx
je 0x412267
xor ecx, ecx
cmp byte [esi], cl
je 0x41227b
lea edx, [ebp - 0x24c]
cmp ecx, 0x1f
jge 0x41227b
mov al, byte [ecx + esi]
cmp al, 0x61
jl 0x412227
cmp al, 0x7a
jle 0x41225b
cmp al, 0x41
jl 0x41222f
cmp al, 0x5a
jle 0x41225b
cmp al, 0x30
jl 0x412237
cmp al, 0x39
jle 0x41225b
cmp al, 0x28
je 0x41225b
cmp al, 0x29
je 0x41225b
cmp al, 0x40
je 0x41225b
cmp al, 0x2f
je 0x41225b
cmp al, 0x2e
je 0x41225b
cmp al, 0x3a
je 0x41225b
cmp al, 0x7c
je 0x41225b
cmp al, 0x5f
je 0x41225b
cmp al, 0x2d
jne 0x41225e
mov byte [edx], al
inc edx
inc ecx
cmp byte [ecx + esi], 0
jne 0x412217
jmp 0x41227b
lea eax, [ebp - 0x24c]
push 0x47856e
push eax
call fcn.00405f60
add esp, 8
lea eax, [ebp - 0x24c]
push eax
lea eax, [ebp - 0x20c]
push str.submit_password_s
push eax
call fcn.00405f60
lea edx, [ebp - 0x20c]
add esp, 0xc
mov esi, edx
nop
mov al, byte [edx]
inc edx
test al, al
jne 0x4122a0
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4122b0
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
cmp byte [ebx + 0x194], 0
je 0x41241a
push dword [ebx + 0x1b0]
xor eax, eax
push dword [ebx + 0x1ac]
cmp byte [ebx + 0x1a8], al
setne al
push eax
push dword [ebx + 0x1a4]
lea eax, [ebp - 0x20c]
push dword [ebx + 0x1a0]
push dword [ebx + 0x19c]
push dword [ebx + 0x198]
push str._d__d__d__d__d__d__d
push eax
call fcn.00405f60
lea edi, [ebp - 0x20c]
add esp, 0x24
lea ecx, [edi + 1]
mov al, byte [edi]
inc edi
test al, al
jne 0x412320
sub edi, ecx
lea esi, [edi*2 + 1]
push esi
call fcn.0044e221
push esi
push 0
push eax
mov dword [ebp - 0xa70], eax
call fcn.0044f220
add esp, 0x10
xor edx, edx
xor ebx, ebx
test edi, edi
je 0x4123b3
mov esi, dword [ebp - 0xa70]
nop word [eax + eax]
mov cl, byte [ebp + ebx - 0x20c]
xorps xmm0, xmm0
movsx eax, cl
xor cl, 0x57
add edx, eax
movlpd qword [ebp - 0xc], xmm0
movsx eax, cl
push eax
lea eax, [ebp - 0xc]
mov dword [ebp - 0xa74], edx
push 0x4786b0
push eax
mov byte [ebp + ebx - 0x20c], cl
call fcn.00405f60
mov al, byte [ebp - 0xc]
lea esi, [esi + 2]
mov edx, dword [ebp - 0xa74]
inc ebx
mov byte [esi - 2], al
add esp, 0xc
mov al, byte [ebp - 0xb]
mov byte [esi - 1], al
cmp ebx, edi
jb 0x412360
mov ebx, dword [ebp - 0xa50]
lea edi, [ebx - 1]
nop dword [eax]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x4123c0
mov ax, word [0x4786b8]
push edx
push dword [ebp - 0xa70]
mov word [edi], ax
lea eax, [ebp - 0x20c]
push str.bs_scs_lu
push eax
call fcn.00405f60
lea edx, [ebp - 0x20c]
add esp, 0x10
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x4123f6
sub edx, esi
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x412402
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x412420
mov ebx, dword [ebp - 0xa50]
call fcn.004294b0
mov ecx, eax
call fcn.00429a20
mov esi, eax
lea edi, [ebx - 1]
mov dword [ebp - 0xa78], esi
test esi, esi
je 0x413dd0
nop
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x412440
mov ax, word [0x4786cc]
push 0x100
mov word [edi], ax
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
push esi
lea eax, [ebp - 0x10c]
push 0x4786d0
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x18
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x412483
sub edx, esi
lea edi, [ebx - 1]
nop
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x412490
mov ecx, edx
xor ebx, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
mov dword [ebp - 0xa60], ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
cmp dword [ebp - 0xa78], ebx
jbe 0x413d09
nop word [eax + eax]
lea eax, [ebp - 0xac8]
mov dword [ebp - 0xab8], 0
push eax
lea eax, [ebp - 0xac4]
mov dword [ebp - 0xabc], 0
push eax
lea eax, [ebp - 0xac0]
mov dword [ebp - 0xac0], 0
push eax
lea eax, [ebp - 0xabc]
mov dword [ebp - 0xac4], 0
push eax
lea eax, [ebp - 0xab8]
mov dword [ebp - 0xac8], 0
push eax
push ebx
call fcn.004294b0
mov ecx, eax
call fcn.00429a70
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
push dword [ebp - 0xab8]
lea eax, [ebp - 0x10c]
push ebx
push 0x4786dc
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x412558
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x412568
mov ecx, edx
lea eax, [ebp - 0x10c]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push 0x100
and ecx, 3
push 0
rep movsb byte es:[edi], byte [esi]
push eax
call fcn.0044f220
push dword [ebp - 0xabc]
lea eax, [ebp - 0x10c]
push ebx
push 0x4786f0
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x4125b4
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4125c4
mov ecx, edx
lea eax, [ebp - 0x10c]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push 0x100
and ecx, 3
push 0
rep movsb byte es:[edi], byte [esi]
push eax
call fcn.0044f220
push dword [ebp - 0xac0]
lea eax, [ebp - 0x10c]
push ebx
push 0x478704
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x412610
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x412620
mov ecx, edx
lea eax, [ebp - 0x10c]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push 0x100
and ecx, 3
push 0
rep movsb byte es:[edi], byte [esi]
push eax
call fcn.0044f220
push dword [ebp - 0xac4]
lea eax, [ebp - 0x10c]
push ebx
push 0x47871c
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
nop dword [eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x412670
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x412680
push dword [ebp - 0xac8]
mov ecx, edx
lea eax, [ebp - 0x10c]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push ebx
and ecx, 3
push str.gpu_d_revision_id_d
rep movsb byte es:[edi], byte [esi]
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x10
mov esi, edx
nop dword [eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x4126c0
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4126d0
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push ebx
call fcn.004294b0
mov ecx, eax
call fcn.004298a0
mov edi, eax
test edi, edi
je 0x412777
mov ecx, edi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x412700
sub ecx, edx
je 0x412777
xor eax, eax
cmp dword [ebp - 0xab8], 0x1002
jne 0x412726
push ebx
call fcn.004294b0
mov ecx, eax
call fcn.00429880
mov esi, dword [ebp - 0xa58]
add esi, 0xa80
push edi
test eax, eax
je 0x412748
push eax
push str.Catalyst__s___s_
push esi
call fcn.00405f60
add esp, 0x10
jmp 0x412756
push 0x478760
push esi
call fcn.00405f60
add esp, 0xc
mov eax, dword [ebp - 0xa58]
push 0xff
add eax, 0xb00
push eax
push 0x7f
push esi
call fcn.00411930
add esp, 0x10
jmp 0x412866
test ebx, ebx
jne 0x4128d6
mov esi, dword [ebp - 0xa58]
add esi, 0xa80
call fcn.004294b0
mov ecx, eax
call fcn.004296e0
push eax
push 0x478764
push str._s_GL__s
push esi
call fcn.00405f60
mov ecx, dword [ebp - 0xa58]
add esp, 0x10
lea edi, [ecx + 0xb00]
test esi, esi
je 0x41286c
test edi, edi
je 0x41286c
push 0xff
push ebx
push edi
call fcn.0044f220
mov ecx, esi
add esp, 0xc
mov bl, 1
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4127e0
sub ecx, edx
je 0x412852
xor edx, edx
cmp byte [esi], dl
je 0x412860
mov ecx, edi
cmp edx, 0x7f
jge 0x412860
mov al, byte [edx + esi]
cmp al, 0x20
jne 0x412808
test bl, bl
jne 0x412849
mov byte [ecx], 0x5f
jmp 0x412848
cmp al, 0x61
jl 0x412810
cmp al, 0x7a
jle 0x412844
cmp al, 0x41
jl 0x412818
cmp al, 0x5a
jle 0x412844
cmp al, 0x30
jl 0x412820
cmp al, 0x39
jle 0x412844
cmp al, 0x28
je 0x412844
cmp al, 0x29
je 0x412844
cmp al, 0x40
je 0x412844
cmp al, 0x2f
je 0x412844
cmp al, 0x2e
je 0x412844
cmp al, 0x3a
je 0x412844
cmp al, 0x7c
je 0x412844
cmp al, 0x5f
je 0x412844
cmp al, 0x2d
jne 0x412849
xor bl, bl
mov byte [ecx], al
inc ecx
inc edx
cmp byte [edx + esi], 0
jne 0x4127f3
jmp 0x412860
push str.NULL
push edi
call fcn.00405f60
add esp, 8
mov ebx, dword [ebp - 0xa60]
mov ecx, dword [ebp - 0xa58]
mov edi, dword [ebp - 0xa50]
dec edi
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x412873
mov ax, word [0x478780]
mov word [edi], ax
lea eax, [ecx + 0xb00]
push eax
push ebx
lea eax, [ebp - 0x20c]
push str.gpu_d_graphics_drivers_s
push eax
call fcn.00405f60
lea edx, [ebp - 0x20c]
add esp, 0x10
mov esi, edx
nop word [eax + eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x4128b0
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4128c0
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebp - 0xacc]
mov byte [ebp - 0xa8c], 0
push eax
lea eax, [ebp - 0xa7c]
mov byte [ebp - 0xa51], 0
push eax
push 1
push ebx
mov byte [ebp - 0xa5a], 0
mov byte [ebp - 0xa59], 0
mov dword [ebp - 0xa88], 0
mov dword [ebp - 0xa84], 0
mov dword [ebp - 0xa7c], 0
mov dword [ebp - 0xacc], 0
mov dword [ebp - 0xa80], 0
call fcn.004294b0
mov ecx, eax
call fcn.00429800
push 0
lea eax, [ebp - 0xa80]
push eax
push 2
push ebx
call fcn.004294b0
mov ecx, eax
call fcn.00429800
movss xmm0, dword [ebp - 0xacc]
xorps xmm2, xmm2
movss xmm1, dword [ebp - 0xa7c]
comiss xmm1, xmm2
movss dword [ebp - 0xa84], xmm0
movss xmm0, dword [ebp - 0xa80]
movss dword [ebp - 0xa88], xmm0
jbe 0x412a02
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
cvttss2si eax, dword [ebp - 0xa7c]
push eax
push ebx
lea eax, [ebp - 0x10c]
push 0x4787a0
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x4129c2
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4129d2
movss xmm0, dword [ebp - 0xa80]
mov ecx, edx
movss xmm1, dword [ebp - 0xa7c]
xorps xmm2, xmm2
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
mov byte [ebp - 0xa51], 1
and ecx, 3
rep movsb byte es:[edi], byte [esi]
comiss xmm0, xmm2
jbe 0x412a80
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
cvttss2si eax, dword [ebp - 0xa80]
push eax
push ebx
lea eax, [ebp - 0x10c]
push str.gpu_d_core_clock_boost_mhz_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x412a40
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x412a50
movss xmm0, dword [ebp - 0xa80]
mov ecx, edx
movss xmm1, dword [ebp - 0xa7c]
xorps xmm2, xmm2
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
mov byte [ebp - 0xa51], 1
and ecx, 3
rep movsb byte es:[edi], byte [esi]
comiss xmm1, xmm2
jbe 0x412a9f
mov eax, dword [ebp - 0xa8c]
mov ecx, 1
comiss xmm0, xmm2
movzx eax, al
cmova eax, ecx
mov dword [ebp - 0xa8c], eax
push 0
lea eax, [ebp - 0xab4]
mov dword [ebp - 0xab4], 0
push eax
push ebx
call fcn.004294b0
mov ecx, eax
call fcn.00429780
movss xmm0, dword [ebp - 0xab4]
comiss xmm0, dword [0x476f98]
jbe 0x412cc9
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
cvttss2si eax, dword [ebp - 0xab4]
push eax
push ebx
lea eax, [ebp - 0x10c]
push str.gpu_d_nv_power_target_percent_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
nop dword [eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x412b10
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x412b20
mov ecx, edx
mov dword [ebp - 0xab0], 0
shr ecx, 2
lea eax, [ebp - 0xaa4]
rep movsd dword es:[edi], dword [esi]
push 0
push eax
push 0
lea eax, [ebp - 0xaa8]
mov dword [ebp - 0xaa8], 0
push eax
mov ecx, edx
mov dword [ebp - 0xaa4], 0
push 0
lea eax, [ebp - 0xab0]
and ecx, 3
push eax
rep movsb byte es:[edi], byte [esi]
push ebx
call fcn.004294b0
mov ecx, eax
call fcn.00429760
movss xmm0, dword [ebp - 0xab0]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x412bee
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
cvttss2si eax, dword [ebp - 0xab0]
push eax
push ebx
lea eax, [ebp - 0x10c]
push str.gpu_d_nv_power_target_min_percent_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x412bc5
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x412bd5
mov ecx, edx
xorps xmm1, xmm1
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
movss xmm0, dword [ebp - 0xaa8]
comiss xmm0, xmm1
jbe 0x412c5d
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
cvttss2si eax, dword [ebp - 0xaa8]
push eax
push ebx
lea eax, [ebp - 0x10c]
push str.gpu_d_nv_power_target_max_percent_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x412c34
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x412c44
mov ecx, edx
xorps xmm1, xmm1
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
movss xmm0, dword [ebp - 0xaa4]
comiss xmm0, xmm1
jbe 0x412cc9
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
cvttss2si eax, dword [ebp - 0xaa4]
push eax
push ebx
lea eax, [ebp - 0x10c]
push str.gpu_d_nv_power_target_default_percent_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x412ca3
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x412cb3
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
cmp byte [ebp - 0xa8c], 0
je 0x412e66
lea eax, [ebp - 0xa64]
mov dword [ebp - 0xa6c], 0
push eax
lea eax, [ebp - 0xa68]
mov dword [ebp - 0xa68], 0
push eax
lea eax, [ebp - 0xa6c]
mov dword [ebp - 0xa64], 0
push eax
push ebx
call fcn.004294b0
mov ecx, eax
call fcn.004297a0
movss xmm0, dword [ebp - 0xa6c]
xorps xmm1, xmm1
comiss xmm0, xmm1
jb 0x412d89
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
cvttss2si eax, dword [ebp - 0xa6c]
push eax
push ebx
lea eax, [ebp - 0x10c]
push str.gpu_d_nv_core_clock_offset_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
nop
mov al, byte [edx]
inc edx
test al, al
jne 0x412d60
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x412d70
mov ecx, edx
xorps xmm1, xmm1
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
movss xmm0, dword [ebp - 0xa68]
comiss xmm0, xmm1
jb 0x412df9
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
cvttss2si eax, dword [ebp - 0xa68]
push eax
push ebx
lea eax, [ebp - 0x10c]
push str.gpu_d_nv_mem_clock_offset_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
nop
mov al, byte [edx]
inc edx
test al, al
jne 0x412dd0
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x412de0
mov ecx, edx
xorps xmm1, xmm1
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
movss xmm0, dword [ebp - 0xa64]
comiss xmm0, xmm1
jb 0x412e66
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
cvttss2si eax, dword [ebp - 0xa64]
push eax
push ebx
lea eax, [ebp - 0x10c]
push str.gpu_d_nv_core_voltage_offset_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
nop
mov al, byte [edx]
inc edx
test al, al
jne 0x412e40
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x412e50
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push ebx
call fcn.004294b0
mov ecx, eax
call fcn.004298e0
mov esi, eax
push 0x100
push 0
test esi, esi
je 0x412ed4
lea eax, [ebp - 0x5cc]
push eax
call fcn.0044f220
push 0xff
lea eax, [ebp - 0x5cc]
push eax
push 0x7f
push esi
call fcn.00411930
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
lea eax, [ebp - 0x5cc]
push eax
push ebx
lea eax, [ebp - 0x10c]
push 0x4788e4
push eax
call fcn.00405f60
add esp, 0x38
jmp 0x412f62
lea eax, [ebp - 0x6cc]
push eax
call fcn.0044f220
push 0x80
lea eax, [ebp - 0x44c]
push 0
push eax
call fcn.0044f220
add esp, 0x18
push 0x4788f4
call fcn.004294b0
mov ecx, eax
call fcn.00429d10
push eax
lea eax, [ebp - 0x44c]
push str._s___s
push eax
call fcn.00405f60
push 0xff
lea eax, [ebp - 0x6cc]
push eax
lea eax, [ebp - 0x44c]
push 0x7f
push eax
call fcn.00411930
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
lea eax, [ebp - 0x6cc]
push eax
push ebx
lea eax, [ebp - 0x10c]
push 0x47890c
push eax
call fcn.00405f60
add esp, 0x3c
lea edx, [ebp - 0x10c]
mov esi, edx
nop word [eax + eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x412f70
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x412f80
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push ebx
call fcn.004294b0
mov ecx, eax
call fcn.00429920
mov esi, eax
test esi, esi
je 0x413036
push 0x100
lea eax, [ebp - 0x94c]
push 0
push eax
call fcn.0044f220
push 0xff
lea eax, [ebp - 0x94c]
push eax
push 0x7f
push esi
call fcn.00411930
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
lea eax, [ebp - 0x94c]
push eax
push ebx
lea eax, [ebp - 0x10c]
push 0x47891c
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x38
mov esi, edx
nop dword [eax + eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x413010
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413020
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push ebx
call fcn.004294b0
mov ecx, eax
call fcn.00429940
mov esi, eax
test esi, esi
je 0x4130a6
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
push esi
push ebx
lea eax, [ebp - 0x10c]
push 0x478930
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
nop word [eax + eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x413080
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413090
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push ebx
call fcn.004294b0
mov ecx, eax
call fcn.00429a50
mov esi, eax
test esi, esi
je 0x413116
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
push esi
push ebx
lea eax, [ebp - 0x10c]
push 0x478940
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
nop word [eax + eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x4130f0
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413100
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push ebx
call fcn.004294b0
mov ecx, eax
call fcn.00429a30
mov esi, eax
test esi, esi
je 0x413186
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
push esi
push ebx
lea eax, [ebp - 0x10c]
push 0x478950
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
nop word [eax + eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x413160
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413170
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push ebx
call fcn.004294b0
mov ecx, eax
call fcn.00429960
mov esi, eax
test esi, esi
je 0x4131f6
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
push esi
push ebx
lea eax, [ebp - 0x10c]
push 0x478960
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
nop word [eax + eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x4131d0
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4131e0
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push ebx
call fcn.004294b0
mov ecx, eax
call fcn.004297c0
mov esi, eax
test esi, esi
je 0x4132a6
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x413212
sub ecx, edx
je 0x4132a6
push 0x100
lea eax, [ebp - 0x34c]
push 0
push eax
call fcn.0044f220
push 0xff
lea eax, [ebp - 0x34c]
push eax
push 0x7f
push esi
call fcn.00411930
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
lea eax, [ebp - 0x34c]
push eax
push ebx
lea eax, [ebp - 0x10c]
push 0x478970
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x38
mov esi, edx
nop
mov al, byte [edx]
inc edx
test al, al
jne 0x413280
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413290
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push ebx
call fcn.004294b0
mov ecx, eax
call fcn.004299e0
mov esi, eax
test esi, esi
je 0x413316
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
push esi
push ebx
lea eax, [ebp - 0x10c]
push 0x478980
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
nop word [eax + eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x4132f0
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413300
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push ebx
call fcn.004294b0
mov ecx, eax
call fcn.00429ab0
mov esi, eax
test esi, esi
je 0x413386
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
push esi
push ebx
lea eax, [ebp - 0x10c]
push str.gpu_d_mem_type_s
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
nop word [eax + eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x413360
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413370
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push 0
lea eax, [ebp - 0xad0]
mov dword [ebp - 0xad0], 0
push eax
push ebx
call fcn.004294b0
mov ecx, eax
call fcn.004299a0
mov esi, dword [ebp - 0xad0]
test esi, esi
je 0x413407
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
push esi
push ebx
lea eax, [ebp - 0x10c]
push str.gpu_d_mem_bus_width_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x4133e1
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4133f1
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push ebx
call fcn.004294b0
mov ecx, eax
call fcn.004297e0
push 0x100
mov esi, eax
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
push esi
push ebx
lea eax, [ebp - 0x10c]
push str.gpu_d_bus_id_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x413447
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413457
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
cmp byte [ebp - 0xa8c], al
jne 0x41370a
xorps xmm0, xmm0
mov edi, 0x64
push ebx
movss dword [ebp - 0xa64], xmm0
movss dword [ebp - 0xa68], xmm0
movss dword [ebp - 0xa6c], xmm0
call fcn.004294b0
mov ecx, eax
call fcn.00429a00
mov ebx, eax
xor esi, esi
test ebx, ebx
je 0x413704
nop dword [eax]
nop word [eax + eax]
lea eax, [ebp - 0xae0]
mov dword [ebp - 0xad8], 0
push eax
lea eax, [ebp - 8]
mov dword [ebp - 0xadc], 0
push eax
lea eax, [ebp - 0xadc]
mov dword [ebp - 8], 0
push eax
lea eax, [ebp - 0xad8]
mov dword [ebp - 0xae0], 0
push eax
lea eax, [ebp - 0xad4]
mov dword [ebp - 0xad4], 0xffffffff
push eax
push esi
push dword [ebp - 0xa60]
call fcn.004294b0
mov ecx, eax
call fcn.00429a90
test al, al
je 0x41357d
movss xmm0, dword [ebp - 0xadc]
maxss xmm0, dword [ebp - 0xa68]
movss xmm1, dword [ebp - 0xad8]
maxss xmm1, dword [ebp - 0xa64]
cmp edi, dword [ebp - 0xad4]
cmovg edi, dword [ebp - 0xad4]
movss dword [ebp - 0xa68], xmm0
movss xmm0, dword [ebp - 0xae0]
maxss xmm0, dword [ebp - 0xa6c]
movss dword [ebp - 0xa64], xmm1
movss dword [ebp - 0xa6c], xmm0
jmp 0x413585
movss xmm1, dword [ebp - 0xa64]
inc esi
cmp esi, ebx
jb 0x4134c0
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x413607
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
cvttss2si eax, dword [ebp - 0xa64]
mov ebx, dword [ebp - 0xa60]
push eax
push ebx
lea eax, [ebp - 0x10c]
push 0x4789d4
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x4135d5
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4135e5
mov ecx, edx
mov byte [ebp - 0xa51], 1
shr ecx, 2
xorps xmm0, xmm0
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x41360d
mov ebx, dword [ebp - 0xa60]
movss xmm2, dword [ebp - 0xa68]
comiss xmm2, xmm0
jbe 0x413683
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
cvttss2si eax, dword [ebp - 0xa68]
push eax
push ebx
lea eax, [ebp - 0x10c]
push 0x4789f4
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x413653
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413663
mov ecx, edx
mov byte [ebp - 0xa5a], 1
shr ecx, 2
xorps xmm0, xmm0
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
movss xmm2, dword [ebp - 0xa6c]
comiss xmm2, xmm0
jbe 0x41370a
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
movss xmm0, dword [ebp - 0xa6c]
mulss xmm0, dword [0x478d88]
cvttss2si eax, xmm0
push eax
push ebx
lea eax, [ebp - 0x10c]
push 0x478a0c
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x4136d5
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4136e5
mov ecx, edx
mov byte [ebp - 0xa59], 1
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x41370a
mov ebx, dword [ebp - 0xa60]
lea eax, [ebp - 0xae4]
mov dword [ebp - 0xae4], 0
push eax
push 0
lea eax, [ebp - 0xa84]
push eax
lea eax, [ebp - 0xa88]
push eax
push ebx
call fcn.004294b0
mov ecx, eax
call fcn.00429860
cmp byte [ebp - 0xa51], 0
xorps xmm1, xmm1
jne 0x4137b9
movss xmm0, dword [ebp - 0xa88]
comiss xmm0, xmm1
jbe 0x4137b9
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
cvttss2si eax, dword [ebp - 0xa88]
push eax
push ebx
lea eax, [ebp - 0x10c]
push str.gpu_d_core_clock_base_mhz_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
nop word [eax + eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x413790
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4137a0
mov ecx, edx
xorps xmm1, xmm1
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
cmp byte [ebp - 0xa59], 0
jne 0x41383c
movss xmm0, dword [ebp - 0xae4]
comiss xmm0, xmm1
movss dword [ebp - 8], xmm0
jbe 0x41383c
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
movss xmm0, dword [ebp - 8]
mulss xmm0, dword [0x478d88]
cvttss2si eax, xmm0
push eax
push ebx
lea eax, [ebp - 0x10c]
push str.gpu_d_core_voltage_mv_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x413816
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413826
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
cmp byte [ebp - 0xa5a], 0
jne 0x4138b6
movss xmm0, dword [ebp - 0xa84]
comiss xmm0, dword [0x476f98]
jbe 0x4138b6
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
cvttss2si eax, dword [ebp - 0xa84]
push eax
push ebx
lea eax, [ebp - 0x10c]
push str.gpu_d_mem_clock_mhz_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
nop
mov al, byte [edx]
inc edx
test al, al
jne 0x413890
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4138a0
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebp - 0xa9c]
mov dword [ebp - 0xaa0], 0
push eax
lea eax, [ebp - 0xaac]
mov dword [ebp - 0xaac], 0
push eax
push 0
lea eax, [ebp - 0xaa0]
mov dword [ebp - 0xa9c], 0
push eax
push ebx
call fcn.004294b0
mov ecx, eax
call fcn.00429b10
movss xmm0, dword [ebp - 0xaa0]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x41396a
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
cvttss2si eax, dword [ebp - 0xaa0]
push eax
push ebx
lea eax, [ebp - 0x10c]
push str.gpu_d_core_temp_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x413941
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413951
mov ecx, edx
xorps xmm1, xmm1
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
movss xmm0, dword [ebp - 0xaac]
comiss xmm0, xmm1
jbe 0x4139d9
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
cvttss2si eax, dword [ebp - 0xaac]
push eax
push ebx
lea eax, [ebp - 0x10c]
push str.gpu_d_mem_temp_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x4139b0
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4139c0
mov ecx, edx
xorps xmm1, xmm1
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
movss xmm0, dword [ebp - 0xa9c]
comiss xmm0, xmm1
jbe 0x413a46
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
cvttss2si eax, dword [ebp - 0xa9c]
push eax
push ebx
lea eax, [ebp - 0x10c]
push str.gpu_d_vrm_temp_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
nop
mov al, byte [edx]
inc edx
test al, al
jne 0x413a20
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413a30
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push 0
lea eax, [ebp - 0xa98]
mov dword [ebp - 0xa98], 0
push eax
push ebx
call fcn.004294b0
mov ecx, eax
call fcn.00429740
movss xmm0, dword [ebp - 0xa98]
comiss xmm0, dword [0x476f98]
jbe 0x413ad6
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
cvttss2si eax, dword [ebp - 0xa98]
push eax
push ebx
lea eax, [ebp - 0x10c]
push str.gpu_d_nv_power_current_percent_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x413ab0
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413ac0
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebp - 0xa90]
mov dword [ebp - 0xa94], 0
push eax
lea eax, [ebp - 0xa94]
mov dword [ebp - 0xa90], 0
push eax
push ebx
call fcn.004294b0
mov ecx, eax
call fcn.004298c0
movss xmm0, dword [ebp - 0xa94]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x413b79
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
cvttss2si eax, dword [ebp - 0xa94]
push eax
push ebx
lea eax, [ebp - 0x10c]
push str.gpu_d_fan_speed_percent_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
nop
mov al, byte [edx]
inc edx
test al, al
jne 0x413b50
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413b60
mov ecx, edx
xorps xmm1, xmm1
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
movss xmm0, dword [ebp - 0xa90]
comiss xmm0, xmm1
jbe 0x413be6
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
cvttss2si eax, dword [ebp - 0xa90]
push eax
push ebx
lea eax, [ebp - 0x10c]
push str.gpu_d_fan_speed_rpm_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
nop
mov al, byte [edx]
inc edx
test al, al
jne 0x413bc0
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413bd0
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebp - 0xa74]
mov dword [ebp - 0xa70], 0
push eax
lea eax, [ebp - 0xa70]
mov dword [ebp - 0xa74], 0
push eax
push ebx
call fcn.004294b0
mov ecx, eax
call fcn.00429ad0
movss xmm0, dword [ebp - 0xa70]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x413c89
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
cvttss2si eax, dword [ebp - 0xa70]
push eax
push ebx
lea eax, [ebp - 0x10c]
push str.gpu_d_core_usage_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
nop
mov al, byte [edx]
inc edx
test al, al
jne 0x413c60
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413c70
mov ecx, edx
xorps xmm1, xmm1
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
movss xmm0, dword [ebp - 0xa74]
comiss xmm0, xmm1
jbe 0x413cf6
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
cvttss2si eax, dword [ebp - 0xa74]
push eax
push ebx
lea eax, [ebp - 0x10c]
push str.gpu_d_gpu_mem_usage_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
nop
mov al, byte [edx]
inc edx
test al, al
jne 0x413cd0
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413ce0
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
inc ebx
mov dword [ebp - 0xa60], ebx
cmp ebx, dword [ebp - 0xa78]
jb 0x4124c0
mov ebx, dword [ebp - 0xa50]
call fcn.004294b0
mov ecx, eax
call fcn.00429d20
lea edi, [ebx - 1]
test eax, eax
je 0x414540
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x413d26
mov ax, word [0x478c98]
lea ecx, [ebx - 1]
mov word [edi], ax
nop dword [eax]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x413d40
mov eax, dword [str.opengl_GL_VENDOR]
mov dword [ecx], eax
mov eax, dword [0x478ca0]
mov dword [ecx + 4], eax
mov eax, dword [0x478ca4]
mov dword [ecx + 8], eax
mov eax, dword [0x478ca8]
mov dword [ecx + 0xc], eax
mov ax, word [0x478cac]
mov word [ecx + 0x10], ax
lea eax, [ebp - 0x20c]
push 0xff
push eax
push 0x7f
call fcn.004294b0
mov ecx, eax
call fcn.00429d20
push eax
call fcn.00411930
lea edx, [ebp - 0x20c]
add esp, 0x10
mov esi, edx
nop
mov al, byte [edx]
inc edx
test al, al
jne 0x413da0
sub edx, esi
lea edi, [ebx - 1]
nop dword [eax]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413db0
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x41456b
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x413dd0
mov ax, word [0x478b40]
push 0x100
mov word [edi], ax
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
push 1
lea eax, [ebp - 0x10c]
push str.num_gpus_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x18
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x413e14
sub edx, esi
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413e20
mov ebx, dword [ebp - 0xa58]
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea esi, [ebx + 0xa80]
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x413e47
lea ebx, [ebx + 0xb00]
sub ecx, edx
je 0x413e68
push 0xff
push ebx
push 0x7f
push esi
call fcn.00411930
jmp 0x413e85
call fcn.004294b0
mov ecx, eax
call fcn.004296e0
push eax
push 0x478b50
push str._s__OpenGL__s
push esi
call fcn.00405f60
add esp, 0x10
push 0xff
push ebx
push 0x7f
push esi
call fcn.00411930
mov edi, dword [ebp - 0xa50]
add esp, 0x10
dec edi
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x413ea0
mov ax, word [0x478b70]
push ebx
mov word [edi], ax
lea eax, [ebp - 0x20c]
push str.gpu0_graphics_drivers_s
push eax
call fcn.00405f60
lea edx, [ebp - 0x20c]
add esp, 0xc
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x413ed0
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413ee0
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.004294b0
mov ecx, eax
call fcn.00429d80
mov esi, eax
call fcn.004294b0
mov ecx, eax
call fcn.00429b80
mov ebx, eax
call fcn.004294b0
mov ecx, eax
call fcn.00429d60
mov dword [ebp - 8], eax
call fcn.004294b0
mov ecx, eax
call fcn.00429d50
push 0x100
mov dword [ebp - 0xa78], eax
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
push esi
push 0
lea eax, [ebp - 0x10c]
push str.gpu_d_vendor_id_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x413f65
mov edi, dword [ebp - 0xa50]
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413f75
mov ecx, edx
lea eax, [ebp - 0x10c]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push 0x100
and ecx, 3
push 0
rep movsb byte es:[edi], byte [esi]
push eax
call fcn.0044f220
push ebx
push 0
lea eax, [ebp - 0x10c]
push str.gpu_d_device_id_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
nop dword [eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x413fc0
mov ebx, dword [ebp - 0xa50]
sub edx, esi
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x413fd2
mov ecx, edx
lea eax, [ebp - 0x10c]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push 0x100
and ecx, 3
push 0
rep movsb byte es:[edi], byte [esi]
push eax
call fcn.0044f220
push dword [ebp - 8]
lea eax, [ebp - 0x10c]
push 0
push str.gpu_d_subvendor_id_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
nop dword [eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x414020
sub edx, esi
lea edi, [ebx - 1]
nop dword [eax]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414030
mov ecx, edx
lea eax, [ebp - 0x10c]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push 0x100
and ecx, 3
push 0
rep movsb byte es:[edi], byte [esi]
push eax
call fcn.0044f220
push dword [ebp - 0xa78]
lea eax, [ebp - 0x10c]
push 0
push str.gpu_d_subdevice_id_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
nop dword [eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x414080
sub edx, esi
lea edi, [ebx - 1]
nop dword [eax]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414090
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.004294b0
mov ecx, eax
call fcn.00429d30
push 0x100
mov esi, eax
lea eax, [ebp - 0x34c]
push 0
push eax
call fcn.0044f220
test esi, esi
je 0x414114
push 0xff
lea eax, [ebp - 0x34c]
push eax
push 0x7f
push esi
call fcn.00411930
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
lea eax, [ebp - 0x34c]
push eax
push 0
lea eax, [ebp - 0x10c]
push 0x478be8
push eax
call fcn.00405f60
add esp, 0x38
jmp 0x414197
push 0x80
lea eax, [ebp - 0x44c]
push 0
push eax
call fcn.0044f220
add esp, 0x18
push str.Windows_32_bit_
call fcn.004294b0
mov ecx, eax
call fcn.00429d10
push eax
lea eax, [ebp - 0x44c]
push str._s__s
push eax
call fcn.00405f60
push 0xff
lea eax, [ebp - 0x34c]
push eax
lea eax, [ebp - 0x44c]
push 0x7f
push eax
call fcn.00411930
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
lea eax, [ebp - 0x34c]
push eax
push 0
lea eax, [ebp - 0x10c]
push str.gpu_d_name_s
push eax
call fcn.00405f60
add esp, 0x3c
lea edx, [ebp - 0x10c]
mov esi, edx
nop
mov al, byte [edx]
inc edx
test al, al
jne 0x4141a0
sub edx, esi
lea edi, [ebx - 1]
nop dword [eax]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4141b0
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.004294b0
mov ecx, eax
call fcn.00429be0
mov esi, eax
test esi, esi
je 0x414266
push 0x100
lea eax, [ebp - 0x34c]
push 0
push eax
call fcn.0044f220
push 0xff
lea eax, [ebp - 0x34c]
push eax
push 0x7f
push esi
call fcn.00411930
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
lea eax, [ebp - 0x34c]
push eax
push 0
lea eax, [ebp - 0x10c]
push str.gpu_d_codename_s
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x38
mov esi, edx
nop dword [eax + eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x414240
sub edx, esi
lea edi, [ebx - 1]
nop dword [eax]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414250
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.004294b0
mov ecx, eax
call fcn.00429c90
mov esi, eax
test esi, esi
je 0x4142d6
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
push esi
push 0
lea eax, [ebp - 0x10c]
push str.gpu_d_cores_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
nop word [eax + eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x4142b0
sub edx, esi
lea edi, [ebx - 1]
nop dword [eax]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4142c0
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.004294b0
mov ecx, eax
call fcn.00429db0
mov esi, eax
test esi, esi
je 0x414346
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
push esi
push 0
lea eax, [ebp - 0x10c]
push str.gpu_d_mem_size_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
nop word [eax + eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x414320
sub edx, esi
lea edi, [ebx - 1]
nop dword [eax]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414330
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.004294b0
mov ecx, eax
call fcn.00429d90
mov esi, eax
test esi, esi
je 0x4143e6
push 0x100
lea eax, [ebp - 0x34c]
push 0
push eax
call fcn.0044f220
push 0xff
lea eax, [ebp - 0x34c]
push eax
push 0x7f
push esi
call fcn.00411930
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
lea eax, [ebp - 0x34c]
push eax
push 0
lea eax, [ebp - 0x10c]
push str.gpu_d_bios_s
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x38
mov esi, edx
nop dword [eax + eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x4143c0
sub edx, esi
lea edi, [ebx - 1]
nop dword [eax]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4143d0
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.004294b0
mov ecx, eax
call fcn.00429c80
mov esi, eax
test esi, esi
je 0x414456
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
push esi
push 0
lea eax, [ebp - 0x10c]
push str.gpu_d_tmus_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
nop word [eax + eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x414430
sub edx, esi
lea edi, [ebx - 1]
nop dword [eax]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414440
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.004294b0
mov ecx, eax
call fcn.00429c70
mov esi, eax
test esi, esi
je 0x4144c6
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
push esi
push 0
lea eax, [ebp - 0x10c]
push str.gpu_d_rops_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
nop word [eax + eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x4144a0
sub edx, esi
lea edi, [ebx - 1]
nop dword [eax]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4144b0
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.004294b0
mov ecx, eax
call fcn.00429d70
mov esi, eax
test esi, esi
je 0x413d0f
push 0x100
lea eax, [ebp - 0x10c]
push 0
push eax
call fcn.0044f220
push esi
push 0
lea eax, [ebp - 0x10c]
push str.gpu_d_tdp_d
push eax
call fcn.00405f60
lea edx, [ebp - 0x10c]
add esp, 0x1c
mov esi, edx
nop
mov al, byte [edx]
inc edx
test al, al
jne 0x414510
sub edx, esi
lea edi, [ebx - 1]
nop dword [eax]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414520
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x413d0f
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x414540
mov ax, word [0x478cb0]
mov word [edi], ax
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414556
mov ecx, 6
mov esi, str.opengl_GL_VENDORGeeks3D
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
call fcn.004294b0
mov ecx, eax
call fcn.00429d10
lea edi, [ebx - 1]
test eax, eax
je 0x414618
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x414582
mov ax, word [0x478cd0]
lea ecx, [ebx - 1]
mov word [edi], ax
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x414598
mov eax, dword [str.opengl_GL_RENDERER]
mov dword [ecx], eax
mov eax, dword [0x478cd8]
mov dword [ecx + 4], eax
mov eax, dword [0x478cdc]
mov dword [ecx + 8], eax
mov eax, dword [0x478ce0]
mov dword [ecx + 0xc], eax
mov eax, dword [0x478ce4]
mov dword [ecx + 0x10], eax
lea eax, [ebp - 0x20c]
push 0xff
push eax
push 0x7f
call fcn.004294b0
mov ecx, eax
call fcn.00429d10
push eax
call fcn.00411930
lea edx, [ebp - 0x20c]
add esp, 0x10
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x4145f4
sub edx, esi
lea edi, [ebx - 1]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414600
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x414645
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x414618
mov ax, word [0x478ce8]
mov word [edi], ax
lea edi, [ebx - 1]
nop
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x414630
mov ecx, 8
mov esi, str.opengl_GL_RENDERERGPUCAPSVIEWER
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
call fcn.004294b0
mov ecx, eax
call fcn.004296e0
lea edi, [ebx - 1]
test eax, eax
je 0x414710
nop dword [eax]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x414660
mov ax, word [0x478d10]
lea ecx, [ebx - 1]
mov word [edi], ax
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x414676
mov eax, dword [str.opengl_GL_VERSION]
mov dword [ecx], eax
mov eax, dword [0x478d18]
mov dword [ecx + 4], eax
mov eax, dword [0x478d1c]
mov dword [ecx + 8], eax
mov eax, dword [0x478d20]
mov dword [ecx + 0xc], eax
mov eax, dword [0x478d24]
mov dword [ecx + 0x10], eax
lea eax, [ebp - 0x20c]
push 0xff
push eax
push 0x7f
call fcn.004294b0
mov ecx, eax
call fcn.004296e0
push eax
call fcn.00411930
lea edx, [ebp - 0x20c]
add esp, 0x10
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x4146d2
sub edx, esi
dec ebx
nop dword [eax]
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x4146e0
mov ecx, edx
mov edi, ebx
shr ecx, 2
mov al, 1
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
pop edi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0044dcb2
mov esp, ebp
pop ebp
ret
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x414710
mov ax, word [0x478d28]
dec ebx
mov word [edi], ax
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x414724
mov edi, ebx
mov ecx, 5
mov esi, str.opengl_GL_VERSION0.0
mov al, 1
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop esi
pop edi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0044dcb2
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 4]
xor al, al
pop edi
xor ecx, ebp
pop ebx
call fcn.0044dcb2
mov esp, ebp
pop ebp
ret