Function at 0x4e86b9
Capabilities:
Contain obfuscated stackstrings
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push ebp
lea ebp, [esp - 0x4248]
mov eax, 0x4248
call fcn.005f53c0
push 0xffffffffffffffff
push 0x665d23
mov eax, dword fs:[0]
push eax
sub esp, 0x5e8
mov eax, dword [0x6f2bf0]
xor eax, ebp
mov dword [ebp + 0x4244], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x24], ecx
call fcn.004e854a
mov eax, dword [ebp - 0x18]
and dword [ebp - 4], 0
lea ecx, [ebp - 0x18]
call dword [eax + 0x24]
test al, al
jne 0x4e8722
mov dword [ebp - 4], 1
jmp 0x4ea773
push 0x68693c
lea ecx, [ebp + 0x1a8]
call fcn.004040f0
lea ebx, [ebp + 0x1a8]
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 2
call fcn.004e84e4
push 0
push 1
mov ecx, ebx
mov byte [ebp - 4], 0
call fcn.00403f7a
lea eax, [ebp - 0x140]
push eax
call fcn.00464389
pop ecx
mov ebx, eax
mov byte [ebp - 4], 3
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x140]
mov byte [ebp - 4], 0
call fcn.00403f7a
push 0x68693a
lea ecx, [ebp + 0x1a8]
call fcn.004040f0
lea ebx, [ebp + 0x1a8]
mov byte [ebp - 4], 4
call fcn.004e84e4
push 0
push 1
mov ecx, ebx
mov byte [ebp - 4], 0
call fcn.00403f7a
push str.__________System__________
lea ecx, [ebp + 0x1a8]
call fcn.004040f0
lea ebx, [ebp + 0x1a8]
mov byte [ebp - 4], 5
call fcn.004e84e4
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp + 0x1a8]
mov byte [ebp - 4], bl
call fcn.00403f7a
lea eax, [ebp - 0x1c]
push eax
mov dword [ebp - 0x1c], ebx
call fcn.00463858
pop ecx
cmp eax, 0xe
ja case.default.0x4e87f4
jmp dword [eax*4 + 0x4ea7ad]
lea eax, [ebp - 0x258]
push 0x686a20
push eax
call fcn.00464126
mov esi, eax
push 0x686a30
lea eax, [ebp - 0x1cc]
push 0x686a38
push eax
mov byte [ebp - 4], 6
call fcn.00464126
push esi
push eax
lea eax, [ebp - 0x140]
push eax
mov byte [ebp - 4], 7
call fcn.00403807
add esp, 0x20
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 8
call fcn.004e84e4
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0x140]
call fcn.00403f7a
push ebx
push 1
lea ecx, [ebp - 0x1cc]
call fcn.00403f7a
lea ecx, [ebp - 0x258]
jmp 0x4e8f1f
lea eax, [ebp - 0x1e8]
push str.Windows95
push eax
call fcn.00464126
mov esi, eax
push 0x686a50
lea eax, [ebp - 0x204]
push 0x686a58
push eax
mov byte [ebp - 4], 9
call fcn.00464126
push esi
push eax
lea eax, [ebp - 0x220]
push eax
mov byte [ebp - 4], 0xa
call fcn.00403807
add esp, 0x20
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0xb
call fcn.004e84e4
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0x220]
call fcn.00403f7a
push ebx
push 1
lea ecx, [ebp - 0x204]
call fcn.00403f7a
lea ecx, [ebp - 0x1e8]
jmp 0x4e8f1f
push dword [ebp - 0x1c]
lea eax, [ebp + 0x1a8]
push str.Windows95_ServicePack__d
push eax
call fcn.00464126
mov esi, eax
push 0x686a7c
lea eax, [ebp - 0x94]
push 0x686a84
push eax
mov byte [ebp - 4], 0xc
call fcn.00464126
push esi
push eax
lea eax, [ebp - 0x23c]
push eax
mov byte [ebp - 4], 0xd
call fcn.00403807
add esp, 0x24
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0xe
call fcn.004e84e4
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0x23c]
call fcn.00403f7a
push ebx
push 1
lea ecx, [ebp - 0x94]
call fcn.00403f7a
lea ecx, [ebp + 0x1a8]
jmp 0x4e8f1f
push dword [ebp - 0x1c]
lea eax, [ebp - 0x300]
push str.Windows95OSR2_ServicePack__d
push eax
call fcn.00464126
mov esi, eax
push 0x686aac
lea eax, [ebp - 0x4dc]
push 0x686ab4
push eax
mov byte [ebp - 4], 0xf
call fcn.00464126
push esi
push eax
lea eax, [ebp - 0x5c]
push eax
mov byte [ebp - 4], 0x10
call fcn.00403807
add esp, 0x24
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x11
call fcn.004e84e4
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0x5c]
call fcn.00403f7a
push ebx
push 1
lea ecx, [ebp - 0x4dc]
call fcn.00403f7a
lea ecx, [ebp - 0x300]
jmp 0x4e8f1f
push dword [ebp - 0x1c]
lea eax, [ebp - 0x4f8]
push str.Windows98_ServicePack__d
push eax
call fcn.00464126
mov esi, eax
push 0x686ad8
lea eax, [ebp - 0x338]
push 0x686ae0
push eax
mov byte [ebp - 4], 0x12
call fcn.00464126
push esi
push eax
lea eax, [ebp - 0x418]
push eax
mov byte [ebp - 4], 0x13
call fcn.00403807
add esp, 0x24
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x14
call fcn.004e84e4
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0x418]
call fcn.00403f7a
push ebx
push 1
lea ecx, [ebp - 0x338]
call fcn.00403f7a
lea ecx, [ebp - 0x4f8]
jmp 0x4e8f1f
push dword [ebp - 0x1c]
lea eax, [ebp - 0x3a8]
push str.Windows98SE_ServicePack__d
push eax
call fcn.00464126
mov esi, eax
push 0x686b04
lea eax, [ebp - 0x450]
push 0x686b0c
push eax
mov byte [ebp - 4], 0x15
call fcn.00464126
push esi
push eax
lea eax, [ebp - 0x370]
push eax
mov byte [ebp - 4], 0x16
call fcn.00403807
add esp, 0x24
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x17
call fcn.004e84e4
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0x370]
call fcn.00403f7a
push ebx
push 1
lea ecx, [ebp - 0x450]
call fcn.00403f7a
lea ecx, [ebp - 0x3a8]
jmp 0x4e8f1f
push dword [ebp - 0x1c]
lea eax, [ebp - 0x2ac]
push str.WindowsME_ServicePack__d
push eax
call fcn.00464126
mov esi, eax
push 0x686b30
lea eax, [ebp - 0x290]
push 0x686b38
push eax
mov byte [ebp - 4], 0x18
call fcn.00464126
push esi
push eax
lea eax, [ebp - 0x4c0]
push eax
mov byte [ebp - 4], 0x19
call fcn.00403807
add esp, 0x24
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x1a
call fcn.004e84e4
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0x4c0]
call fcn.00403f7a
push ebx
push 1
lea ecx, [ebp - 0x290]
call fcn.00403f7a
lea ecx, [ebp - 0x2ac]
jmp 0x4e8f1f
push dword [ebp - 0x1c]
lea eax, [ebp - 0x38c]
push str.WindowsNT_ServicePack__d
push eax
call fcn.00464126
mov esi, eax
push 0x686b5c
lea eax, [ebp - 0x354]
push 0x686b64
push eax
mov byte [ebp - 4], 0x1b
call fcn.00464126
push esi
push eax
lea eax, [ebp - 0x31c]
push eax
mov byte [ebp - 4], 0x1c
call fcn.00403807
add esp, 0x24
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x1d
call fcn.004e84e4
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0x31c]
call fcn.00403f7a
push ebx
push 1
lea ecx, [ebp - 0x354]
call fcn.00403f7a
lea ecx, [ebp - 0x38c]
jmp 0x4e8f1f
push dword [ebp - 0x1c]
lea eax, [ebp - 0x434]
push str.Windows2000_ServicePack__d
push eax
call fcn.00464126
mov esi, eax
push 0x686b88
lea eax, [ebp - 0x3fc]
push 0x686b90
push eax
mov byte [ebp - 4], 0x1e
call fcn.00464126
push esi
push eax
lea eax, [ebp - 0x3c4]
push eax
mov byte [ebp - 4], 0x1f
call fcn.00403807
add esp, 0x24
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x20
call fcn.004e84e4
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0x3c4]
call fcn.00403f7a
push ebx
push 1
lea ecx, [ebp - 0x3fc]
call fcn.00403f7a
lea ecx, [ebp - 0x434]
jmp 0x4e8f1f
push dword [ebp - 0x1c]
lea eax, [ebp - 0x274]
push str.WindowsXP_ServicePack__d
push eax
call fcn.00464126
mov esi, eax
push 0x686bb4
lea eax, [ebp - 0x4a4]
push 0x686bbc
push eax
mov byte [ebp - 4], 0x21
call fcn.00464126
push esi
push eax
lea eax, [ebp - 0x46c]
push eax
mov byte [ebp - 4], 0x22
call fcn.00403807
add esp, 0x24
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x23
call fcn.004e84e4
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0x46c]
call fcn.00403f7a
push ebx
push 1
lea ecx, [ebp - 0x4a4]
call fcn.00403f7a
lea ecx, [ebp - 0x274]
jmp 0x4e8f1f
push dword [ebp - 0x1c]
lea eax, [ebp - 0x2e4]
push str.Windows2003Server_ServicePack__d
push eax
call fcn.00464126
mov esi, eax
push 0x686be8
lea eax, [ebp - 0x3e0]
push 0x686bf0
push eax
mov byte [ebp - 4], 0x24
call fcn.00464126
push esi
push eax
lea eax, [ebp - 0x514]
push eax
mov byte [ebp - 4], 0x25
call fcn.00403807
add esp, 0x24
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x26
call fcn.004e84e4
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0x514]
call fcn.00403f7a
push ebx
push 1
lea ecx, [ebp - 0x3e0]
call fcn.00403f7a
lea ecx, [ebp - 0x2e4]
jmp 0x4e8f1f
push dword [ebp - 0x1c]
lea eax, [ebp - 0x1b0]
push str.WindowsVista_ServicePack__d
push eax
call fcn.00464126
mov esi, eax
push 0x686c14
lea eax, [ebp - 0x488]
push 0x686c1c
push eax
mov byte [ebp - 4], 0x27
call fcn.00464126
push esi
push eax
lea eax, [ebp - 0x2c8]
push eax
mov byte [ebp - 4], 0x28
call fcn.00403807
add esp, 0x24
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x29
call fcn.004e84e4
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0x2c8]
call fcn.00403f7a
push ebx
push 1
lea ecx, [ebp - 0x488]
call fcn.00403f7a
lea ecx, [ebp - 0x1b0]
jmp 0x4e8f1f
push dword [ebp - 0x1c]
lea eax, [ebp - 0x178]
push str.Windows7_ServicePack__d
push eax
call fcn.00464126
mov esi, eax
push 0x686c3c
lea eax, [ebp - 0x15c]
push 0x686c44
push eax
mov byte [ebp - 4], 0x2a
call fcn.00464126
push esi
push eax
lea eax, [ebp - 0x194]
push eax
mov byte [ebp - 4], 0x2b
call fcn.00403807
add esp, 0x24
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x2c
call fcn.004e84e4
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0x194]
call fcn.00403f7a
push ebx
push 1
lea ecx, [ebp - 0x15c]
call fcn.00403f7a
lea ecx, [ebp - 0x178]
jmp 0x4e8f1f
push dword [ebp - 0x1c]
lea eax, [ebp - 0xcc]
push str.Windows8_ServicePack__d
push eax
call fcn.00464126
mov esi, eax
push 0x686c64
lea eax, [ebp - 0x108]
push 0x686c6c
push eax
mov byte [ebp - 4], 0x2d
call fcn.00464126
push esi
push eax
lea eax, [ebp - 0x124]
push eax
mov byte [ebp - 4], 0x2e
call fcn.00403807
add esp, 0x24
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x2f
call fcn.004e84e4
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0x124]
call fcn.00403f7a
push ebx
push 1
lea ecx, [ebp - 0x108]
call fcn.00403f7a
lea ecx, [ebp - 0xcc]
jmp 0x4e8f1f
push dword [ebp - 0x1c]
lea eax, [ebp - 0x40]
push str.Windows8_Later_ServicePack__d
push eax
call fcn.00464126
mov esi, eax
push 0x686c94
lea eax, [ebp - 0x78]
push 0x686c9c
push eax
mov byte [ebp - 4], 0x30
call fcn.00464126
push esi
push eax
lea eax, [ebp - 0xb0]
push eax
mov byte [ebp - 4], 0x31
call fcn.00403807
add esp, 0x24
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x32
call fcn.004e84e4
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0xb0]
call fcn.00403f7a
push ebx
push 1
lea ecx, [ebp - 0x78]
call fcn.00403f7a
lea ecx, [ebp - 0x40]
push ebx
push 1
mov byte [ebp - 4], bl
call fcn.00403f7a
lea eax, [ebp - 0xb0]
push eax
call fcn.004e8436
mov esi, eax
mov dword [esp], 0x686ca4
lea eax, [ebp - 0x78]
push 0x686cac
push eax
mov byte [ebp - 4], 0x33
call fcn.00464126
push esi
push eax
lea eax, [ebp - 0x40]
push eax
mov byte [ebp - 4], 0x34
call fcn.00403807
add esp, 0x18
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x35
call fcn.004e84e4
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0x40]
call fcn.00403f7a
push ebx
push 1
lea ecx, [ebp - 0x78]
call fcn.00403f7a
push ebx
push 1
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], bl
call fcn.00403f7a
lea eax, [ebp - 0xb0]
push eax
call fcn.004e8418
mov esi, eax
mov dword [esp], 0x686cb4
lea eax, [ebp - 0x78]
push 0x686cc0
push eax
mov byte [ebp - 4], 0x36
call fcn.00464126
push esi
push eax
lea eax, [ebp - 0x40]
push eax
mov byte [ebp - 4], 0x37
call fcn.00403807
add esp, 0x18
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x38
call fcn.004e84e4
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0x40]
call fcn.00403f7a
push ebx
push 1
lea ecx, [ebp - 0x78]
call fcn.00403f7a
push ebx
push 1
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], bl
call fcn.00403f7a
push 0x64
call fcn.0058ce2a
mov dword [ebp - 0x20], eax
fild dword [ebp - 0x20]
mov esi, eax
test eax, eax
jge 0x4e9023
fadd dword [0x6b9e08]
fdiv qword [0x6b9e90]
push ecx
lea eax, [ebp + 0x41c4]
fstp qword [esp]
push 0x686cc8
push eax
call fcn.005f53eb
lea eax, [ebp + 0x41c4]
push eax
push esi
push 0x686ccc
lea eax, [ebp - 0x40]
push str._40s_:__d_MHz____s_GHz__
push eax
call fcn.00464126
add esp, 0x24
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x39
call fcn.004e84e4
xor ebx, ebx
xor edi, edi
push ebx
inc edi
push edi
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], bl
call fcn.00403f7a
push 0x686cfc
lea eax, [ebp - 0x40]
push str._40s_:
push eax
call fcn.00464126
add esp, 0xc
push eax
mov byte [ebp - 4], 0x3a
call fcn.004e83cf
push ebx
push edi
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], bl
call fcn.00403f7a
call fcn.0058d005
test al, 1
je 0x4e90e2
push str.MMX
lea ecx, [ebp + 0x1a8]
call fcn.004040f0
lea eax, [ebp + 0x1a8]
push eax
mov byte [ebp - 4], 0x3b
call fcn.004e83cf
push ebx
push edi
lea ecx, [ebp + 0x1a8]
mov byte [ebp - 4], bl
call fcn.00403f7a
call fcn.0058d005
shr eax, 1
test al, 1
je 0x4e9120
push str.SSE
lea ecx, [ebp + 0x1a8]
call fcn.004040f0
lea eax, [ebp + 0x1a8]
push eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x3c
call fcn.004e83cf
push ebx
push edi
lea ecx, [ebp + 0x1a8]
mov byte [ebp - 4], bl
call fcn.00403f7a
call fcn.0058d005
shr eax, 2
test al, 1
je 0x4e915f
push str.SSE2
lea ecx, [ebp + 0x1a8]
call fcn.004040f0
lea eax, [ebp + 0x1a8]
push eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x3d
call fcn.004e83cf
push ebx
push edi
lea ecx, [ebp + 0x1a8]
mov byte [ebp - 4], bl
call fcn.00403f7a
call fcn.0058d005
shr eax, 3
test al, 1
je 0x4e919e
push str.3DNow_
lea ecx, [ebp + 0x1a8]
call fcn.004040f0
lea eax, [ebp + 0x1a8]
push eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x3e
call fcn.004e83cf
push ebx
push edi
lea ecx, [ebp + 0x1a8]
mov byte [ebp - 4], bl
call fcn.00403f7a
call fcn.0058d005
shr eax, 4
test al, 1
je 0x4e91dd
push str.E3DNow_
lea ecx, [ebp + 0x1a8]
call fcn.004040f0
lea eax, [ebp + 0x1a8]
push eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x3f
call fcn.004e83cf
push ebx
push edi
lea ecx, [ebp + 0x1a8]
mov byte [ebp - 4], bl
call fcn.00403f7a
push 0x68693b
lea ecx, [ebp + 0x1a8]
call fcn.004040f0
lea ebx, [ebp + 0x1a8]
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x40
call fcn.004e84e4
push 0
push 1
mov ecx, ebx
mov byte [ebp - 4], 0
call fcn.00403f7a
push 8
pop ecx
xor eax, eax
lea edi, [ebp - 0xec]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0xec]
push eax
call dword [0x67d0c4]
mov eax, dword [ebp - 0xe4]
shr eax, 0x14
push eax
push 0x686d40
lea eax, [ebp - 0x40]
push 0x686d50
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x41
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0
call fcn.00403f7a
mov eax, dword [ebp - 0xe0]
shr eax, 0x14
push eax
push 0x686d60
lea eax, [ebp - 0x78]
push 0x686d70
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x42
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0
call fcn.00403f7a
mov eax, dword [ebp - 0xd4]
shr eax, 0x14
push eax
push 0x686d80
lea eax, [ebp - 0xb0]
push 0x686d90
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x43
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0
call fcn.00403f7a
mov eax, dword [ebp - 0xd0]
shr eax, 0x14
push eax
push 0x686da0
push str._40s_:__6dMB
lea eax, [ebp - 0xcc]
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x44
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0xcc]
mov byte [ebp - 4], 0
call fcn.00403f7a
push 0x68695d
lea ecx, [ebp - 0x5c]
call fcn.004040f0
lea ebx, [ebp - 0x5c]
mov byte [ebp - 4], 0x45
call fcn.004e84e4
push 0
push 1
mov ecx, ebx
mov byte [ebp - 4], 0
call fcn.00403f7a
push str.__________Display__________
lea ecx, [ebp - 0x94]
call fcn.004040f0
lea ebx, [ebp - 0x94]
mov byte [ebp - 4], 0x46
call fcn.004e84e4
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], bl
call fcn.00403f7a
mov esi, 0x1a8
push esi
lea eax, [ebp]
push ebx
push eax
call fcn.005f5470
add esp, 0xc
push ebx
lea eax, [ebp]
push eax
push ebx
push ebx
mov dword [ebp], esi
call dword [0x67d2c0]
test eax, eax
je 0x4e940e
lea eax, [ebp + 4]
push eax
push 0x686ddc
lea eax, [ebp - 0x40]
push 0x686dec
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x47
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0
call fcn.00403f7a
lea eax, [ebp + 0x24]
push eax
push 0x686df8
lea eax, [ebp - 0x78]
push str._40s_:__s
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x48
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0
call fcn.00403f7a
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.004639be
mov edi, dword [ebp - 0x24]
mov eax, dword [edi + 0xe4]
shr eax, 0x14
push eax
push 0x686e14
lea eax, [ebp - 0x40]
push 0x686e20
push eax
call fcn.00464126
add esp, 0x18
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x49
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0
call fcn.00403f7a
mov eax, dword [edi + 0xe8]
shr eax, 0x14
push eax
push 0x686e30
lea eax, [ebp - 0x78]
push str._40s_:__6d_MB
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x4a
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0
call fcn.00403f7a
push 0x68695e
lea ecx, [ebp - 0x94]
call fcn.004040f0
lea ebx, [ebp - 0x94]
mov byte [ebp - 4], 0x4b
call fcn.004e84e4
push 0
push 1
mov ecx, ebx
mov byte [ebp - 4], 0
call fcn.00403f7a
push 0x686e4c
lea eax, [ebp - 0xb0]
push str._40s
push eax
call fcn.00464126
add esp, 0xc
mov ebx, eax
mov byte [ebp - 4], 0x4c
call fcn.004e84e4
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], bl
call fcn.00403f7a
xor eax, eax
lea edi, [ebp - 0x50]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov edi, dword [ebp - 0x24]
push ebx
lea eax, [ebp - 0x50]
push eax
mov ecx, dword [edi + 0xc]
call fcn.004ba5e1
push dword [ebp - 0x50]
lea eax, [ebp - 0xcc]
push str.Width
push 0x686e70
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x4d
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0xcc]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [ebp - 0x4c]
lea eax, [ebp - 0x108]
push str.Height
push 0x686e84
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x4e
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [ebp - 0x48]
lea eax, [ebp - 0x124]
push str.RefreshRate
push str._40s_:__d
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x4f
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x124]
mov byte [ebp - 4], 0
call fcn.00403f7a
mov eax, dword [ebp - 0x44]
add eax, 0xffffffec
cmp eax, 0xa
ja case.0x4e95d2.28
jmp dword [eax*4 + 0x4ea7e9]
push 0x686ea8
lea eax, [ebp - 0x40]
push str._40s_:_R8G8B8
push eax
call fcn.00464126
add esp, 0xc
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x50
call fcn.004e84e4
lea ecx, [ebp - 0x40]
jmp 0x4e97df
push 0x686ec0
lea eax, [ebp - 0x78]
push str._40s_:_A8R8G8B8
push eax
call fcn.00464126
add esp, 0xc
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x51
call fcn.004e84e4
lea ecx, [ebp - 0x78]
jmp 0x4e97df
push 0x686ed8
lea eax, [ebp - 0xb0]
push str._40s_:_X8R8G8B8
push eax
call fcn.00464126
add esp, 0xc
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x52
call fcn.004e84e4
lea ecx, [ebp - 0xb0]
jmp 0x4e97df
push 0x686ef0
lea eax, [ebp - 0xcc]
push str._40s_:_R5G6B5
push eax
call fcn.00464126
add esp, 0xc
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x53
call fcn.004e84e4
lea ecx, [ebp - 0xcc]
jmp 0x4e97df
push 0x686f08
lea eax, [ebp - 0x108]
push str._40s_:_A1R5G5B5
push eax
call fcn.00464126
add esp, 0xc
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x54
call fcn.004e84e4
lea ecx, [ebp - 0x108]
jmp 0x4e97df
push 0x686f20
lea eax, [ebp - 0x124]
push str._40s_:_X1R5G5B5
push eax
call fcn.00464126
add esp, 0xc
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x55
call fcn.004e84e4
lea ecx, [ebp - 0x124]
jmp 0x4e97df
push 0x686f38
lea eax, [ebp - 0x178]
push str._40s_:_A4R4G4B4
push eax
call fcn.00464126
add esp, 0xc
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x56
call fcn.004e84e4
lea ecx, [ebp - 0x178]
jmp 0x4e97df
push 0x686f50
lea eax, [ebp - 0x15c]
push str._40s_:_X4R4G4B4
push eax
call fcn.00464126
add esp, 0xc
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x57
call fcn.004e84e4
lea ecx, [ebp - 0x15c]
jmp 0x4e97df
push 0x686f68
lea eax, [ebp - 0x194]
push str._40s_:_R3G3B2
push eax
call fcn.00464126
add esp, 0xc
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x58
call fcn.004e84e4
lea ecx, [ebp - 0x194]
jmp 0x4e97df
push str.Format
lea eax, [ebp - 0x1b0]
push str._40s_:_A8R3G3B2
push eax
call fcn.00464126
add esp, 0xc
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x59
call fcn.004e84e4
lea ecx, [ebp - 0x1b0]
jmp 0x4e97df
push str.Format_:__d_Unknown__d3ddm.Format
lea ecx, [ebp - 0x94]
call fcn.004040f0
lea ebx, [ebp - 0x94]
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x5a
call fcn.004e84e4
mov ecx, ebx
push 0
push 1
mov byte [ebp - 4], 0
call fcn.00403f7a
push 0x68695f
lea ecx, [ebp - 0x94]
call fcn.004040f0
lea ebx, [ebp - 0x94]
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x5b
call fcn.004e84e4
push 0
push 1
mov ecx, ebx
mov byte [ebp - 4], 0
call fcn.00403f7a
push str.__________Display_Device_Caps__________
lea ecx, [ebp + 0x1a8]
call fcn.004040f0
lea ebx, [ebp + 0x1a8]
mov byte [ebp - 4], 0x5c
call fcn.004e84e4
push 0
push 1
mov ecx, ebx
mov byte [ebp - 4], 0
call fcn.00403f7a
mov eax, dword [edi + 0x10]
mov ecx, eax
dec ecx
je 0x4e98df
dec ecx
je 0x4e98b0
dec ecx
je 0x4e9887
push eax
push str.DeviceType
lea eax, [ebp - 0x40]
push str._40s_:_0x_X_Unkown_
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x60
call fcn.004e84e4
lea ecx, [ebp - 0x40]
jmp 0x4e990c
push 0x687014
lea eax, [ebp - 0x78]
push str._40s_:_SW
push eax
call fcn.00464126
add esp, 0xc
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x5f
call fcn.004e84e4
lea ecx, [ebp - 0x78]
jmp 0x4e990c
push 0x686ffc
lea eax, [ebp - 0xb0]
push str._40s_:_REF
push eax
call fcn.00464126
add esp, 0xc
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x5e
call fcn.004e84e4
lea ecx, [ebp - 0xb0]
jmp 0x4e990c
push 0x686fe4
lea eax, [ebp - 0xcc]
push str._40s_:_HAL
push eax
call fcn.00464126
add esp, 0xc
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x5d
call fcn.004e84e4
lea ecx, [ebp - 0xcc]
push 0
push 1
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0x14]
lea eax, [ebp - 0x40]
push str.AdapterOrdinal
push 0x68705c
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x61
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0x18]
lea eax, [ebp - 0x78]
push str.Caps
push 0x687074
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x62
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0x1c]
lea eax, [ebp - 0xb0]
push str.Caps2
push 0x68708c
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x63
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0x20]
lea eax, [ebp - 0xcc]
push str.Caps3
push 0x6870a4
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x64
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0xcc]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0x24]
lea eax, [ebp - 0x108]
push str.PresentationIntervals
push 0x6870cc
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x65
call fcn.004e84e4
mov byte [ebp - 4], 0
push 0
push 1
lea ecx, [ebp - 0x108]
call fcn.00403f7a
push dword [edi + 0x28]
lea eax, [ebp - 0x124]
push str.CursorCaps
push 0x6870e8
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x66
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x124]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0x2c]
lea eax, [ebp - 0x178]
push str.DevCaps
push 0x687100
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x67
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0x30]
lea eax, [ebp - 0x15c]
push str.PrimitiveMiscCaps
push 0x687124
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x68
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x15c]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0x34]
lea eax, [ebp - 0x194]
push str.RasterCaps
push 0x687140
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x69
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x194]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0x38]
lea eax, [ebp - 0x1b0]
push str.ZCmpCaps
push 0x68715c
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x6a
call fcn.004e84e4
mov byte [ebp - 4], 0
push 0
push 1
lea ecx, [ebp - 0x1b0]
call fcn.00403f7a
push dword [edi + 0x3c]
lea eax, [ebp - 0x488]
push str.SrcBlendCaps
push 0x68717c
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x6b
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x488]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0x40]
lea eax, [ebp - 0x2c8]
push str.DestBlendCaps
push 0x68719c
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x6c
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x2c8]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0x44]
lea eax, [ebp - 0x2e4]
push str.AlphaCmpCaps
push 0x6871bc
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x6d
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x2e4]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0x48]
lea eax, [ebp - 0x3e0]
push str.ShadeCaps
push 0x6871d8
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x6e
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x3e0]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0x4c]
lea eax, [ebp - 0x514]
push str.TextureCaps
push 0x6871f4
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x6f
call fcn.004e84e4
push 0
mov byte [ebp - 4], 0
push 1
lea ecx, [ebp - 0x514]
call fcn.00403f7a
push dword [edi + 0x50]
lea eax, [ebp - 0x274]
push str.TextureFilterCaps
push 0x687218
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x70
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x274]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0x54]
lea eax, [ebp - 0x4a4]
push str.CubeTextureFilterCaps
push 0x687240
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x71
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x4a4]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0x58]
lea eax, [ebp - 0x46c]
push str.VolumeTextureFilterCaps
push 0x687268
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x72
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x46c]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0x5c]
lea eax, [ebp - 0x434]
push str.TextureAddressCaps
push 0x68728c
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x73
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x434]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0x60]
lea eax, [ebp - 0x3fc]
push str.VolumeTextureAddressCaps
push 0x6872b8
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x74
call fcn.004e84e4
push 0
mov byte [ebp - 4], 0
push 1
lea ecx, [ebp - 0x3fc]
call fcn.00403f7a
push dword [edi + 0x64]
lea eax, [ebp - 0x3c4]
push str.LineCaps
push 0x6872d4
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x75
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x3c4]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0x68]
lea eax, [ebp - 0x38c]
push str.MaxTextureWidth
push 0x6872f4
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x76
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x38c]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0x6c]
lea eax, [ebp - 0x354]
push str.MaxTextureHeight
push 0x687318
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x77
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x354]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0x70]
lea eax, [ebp - 0x31c]
push str.MaxVolumeExtent
push 0x687338
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x78
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x31c]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0x74]
lea eax, [ebp - 0x2ac]
push str.MaxTextureRepeat
push 0x68735c
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x79
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x2ac]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0x78]
lea eax, [ebp - 0x290]
push str.MaxTextureAspectRatio
push 0x687384
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x7a
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x290]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0x7c]
lea eax, [ebp - 0x4c0]
push str.MaxAnisotropy
push 0x6873a4
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x7b
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x4c0]
mov byte [ebp - 4], 0
call fcn.00403f7a
fld dword [edi + 0x80]
push ecx
push ecx
fstp qword [esp]
push str.MaxVertexW
lea eax, [ebp + 0x11c4]
push 0x6873c0
push eax
call fcn.005f53eb
add esp, 0x14
lea eax, [ebp + 0x11c4]
push eax
lea ecx, [ebp - 0x94]
call fcn.004040f0
lea ebx, [ebp - 0x94]
mov byte [ebp - 4], 0x7c
call fcn.004e84e4
push 0
push 1
mov ecx, ebx
mov byte [ebp - 4], 0
call fcn.00403f7a
fld dword [edi + 0x84]
push ecx
push ecx
fstp qword [esp]
push str.GuardBandLeft
lea eax, [ebp + 0x1c4]
push 0x6873dc
push eax
call fcn.005f53eb
add esp, 0x14
lea eax, [ebp + 0x1c4]
push eax
lea ecx, [ebp + 0x1a8]
call fcn.004040f0
lea ebx, [ebp + 0x1a8]
mov byte [ebp - 4], 0x7d
call fcn.004e84e4
push 0
push 1
mov ecx, ebx
mov byte [ebp - 4], 0
call fcn.00403f7a
fld dword [edi + 0x88]
push ecx
push ecx
fstp qword [esp]
push str.GuardBandTop
lea eax, [ebp + 0x9c4]
push 0x6873f8
push eax
call fcn.005f53eb
add esp, 0x14
lea eax, [ebp + 0x9c4]
push eax
lea ecx, [ebp - 0x5c]
call fcn.004040f0
lea ebx, [ebp - 0x5c]
mov byte [ebp - 4], 0x7e
call fcn.004e84e4
push 0
push 1
mov ecx, ebx
mov byte [ebp - 4], 0
call fcn.00403f7a
fld dword [edi + 0x8c]
push ecx
push ecx
fstp qword [esp]
push str.GuardBandRight
lea eax, [ebp + 0x29c4]
push 0x687414
push eax
call fcn.005f53eb
add esp, 0x14
lea eax, [ebp + 0x29c4]
push eax
lea ecx, [ebp - 0x23c]
call fcn.004040f0
lea ebx, [ebp - 0x23c]
mov byte [ebp - 4], 0x7f
call fcn.004e84e4
push 0
push 1
mov ecx, ebx
mov byte [ebp - 4], 0
call fcn.00403f7a
fld dword [edi + 0x90]
push ecx
push ecx
fstp qword [esp]
push str.GuardBandBottom
lea eax, [ebp + 0x21c4]
push 0x687430
push eax
call fcn.005f53eb
add esp, 0x14
lea eax, [ebp + 0x21c4]
push eax
lea ecx, [ebp - 0x1e8]
call fcn.004040f0
lea ebx, [ebp - 0x1e8]
mov byte [ebp - 4], 0x80
call fcn.004e84e4
push 0
push 1
mov ecx, ebx
mov byte [ebp - 4], 0
call fcn.00403f7a
fld dword [edi + 0x94]
push ecx
push ecx
fstp qword [esp]
push str.ExtentsAdjust
lea eax, [ebp + 0x31c4]
push 0x68744c
push eax
call fcn.005f53eb
add esp, 0x14
lea eax, [ebp + 0x31c4]
push eax
lea ecx, [ebp - 0x204]
call fcn.004040f0
lea ebx, [ebp - 0x204]
mov byte [ebp - 4], 0x81
call fcn.004e84e4
push 0
push 1
mov ecx, ebx
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0x98]
lea eax, [ebp - 0x3a8]
push str.StencilCaps
push 0x687464
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x82
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x3a8]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0x9c]
lea eax, [ebp - 0x450]
push str.FVFCaps
push 0x68747c
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x83
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x450]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0xa0]
lea eax, [ebp - 0x370]
push str.TextureOpCaps
push 0x68749c
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x84
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x370]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0xa4]
lea eax, [ebp - 0x4f8]
push str.MaxTextureBlendStages
push 0x6874c4
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x85
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x4f8]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0xa8]
lea eax, [ebp - 0x338]
push str.MaxSimultaneousTextures
push 0x6874ec
push eax
call fcn.00464126
add esp, 0x10
mov byte [ebp - 4], 0x86
mov ebx, eax
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x338]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0xac]
lea eax, [ebp - 0x418]
push str.VertexProcessingCaps
push 0x687514
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x87
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x418]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0xb0]
lea eax, [ebp - 0x300]
push str.MaxActiveLights
push 0x687534
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x88
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x300]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0xb4]
lea eax, [ebp - 0x4dc]
push str.MaxUserClipPlanes
push 0x687558
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x89
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x4dc]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0xb8]
lea eax, [ebp - 0x584]
push str.MaxVertexBlendMatrices
push 0x687580
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x8a
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x584]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0xbc]
lea eax, [ebp - 0x54c]
push str.MaxVertexBlendMatrixIndex
push 0x6875ac
push eax
call fcn.00464126
add esp, 0x10
mov byte [ebp - 4], 0x8b
mov ebx, eax
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x54c]
mov byte [ebp - 4], 0
call fcn.00403f7a
fld dword [edi + 0xc0]
push ecx
push ecx
fstp qword [esp]
push str.MaxPointSize
lea eax, [ebp + 0x39c4]
push 0x6875cc
push eax
call fcn.005f53eb
add esp, 0x14
lea eax, [ebp + 0x39c4]
push eax
lea ecx, [ebp - 0x220]
call fcn.004040f0
lea ebx, [ebp - 0x220]
mov byte [ebp - 4], 0x8c
call fcn.004e84e4
push 0
push 1
mov ecx, ebx
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0xc4]
lea eax, [ebp - 0x530]
push str.MaxPrimitiveCount
push 0x6875ec
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x8d
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x530]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0xc8]
lea eax, [ebp - 0x5bc]
push str.MaxVertexIndex
push 0x68760c
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x8e
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x5bc]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0xcc]
lea eax, [ebp - 0x5f4]
push str.MaxStreams
push 0x687628
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x8f
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x5f4]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0xd0]
lea eax, [ebp - 0x568]
push str.MaxStreamStride
push 0x687648
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x90
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x568]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0xd4]
lea eax, [ebp - 0x5d8]
push str.VertexShaderVersion
push 0x68766c
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x91
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x5d8]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0xd8]
lea eax, [ebp - 0x5a0]
push str.MaxVertexShaderConst
push 0x687694
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x92
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0x5a0]
mov byte [ebp - 4], 0
call fcn.00403f7a
push dword [edi + 0xdc]
lea eax, [ebp - 0xe8]
push str.PixelShaderVersion
push str._40s_:_0x_08X
push eax
call fcn.00464126
add esp, 0x10
mov ebx, eax
mov byte [ebp - 4], 0x93
call fcn.004e84e4
push 0
push 1
lea ecx, [ebp - 0xe8]
mov byte [ebp - 4], 0
call fcn.00403f7a
fld dword [edi + 0xe0]
push ecx
push ecx
fstp qword [esp]
push str.MaxPixelShaderValue
lea eax, [ebp + 0x19c4]
push str._40s_:__f
push eax
call fcn.005f53eb
add esp, 0x14
lea eax, [ebp + 0x19c4]
push eax
lea ecx, [ebp - 0x258]
call fcn.004040f0
lea ebx, [ebp - 0x258]
mov byte [ebp - 4], 0x94
call fcn.004e84e4
push 0
mov byte [ebp - 4], 0
push 1
mov ecx, ebx
call fcn.00403f7a
push 0x6869b3
lea ecx, [ebp - 0x1cc]
call fcn.004040f0
lea ebx, [ebp - 0x1cc]
mov byte [ebp - 4], 0x95
call fcn.004e84e4
push 0
push 1
mov ecx, ebx
mov byte [ebp - 4], 0
call fcn.00403f7a
push str.__________Display_Format__________
lea ecx, [ebp - 0x140]
call fcn.004040f0
lea ebx, [ebp - 0x140]
mov byte [ebp - 4], 0x96
call fcn.004e84e4
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0x140]
mov byte [ebp - 4], bl
call fcn.00403f7a
mov ecx, dword [edi + 0xc]
call fcn.0051a415
mov ecx, dword [eax]
push ebx
push eax
call dword [ecx + 0x18]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], ebx
cmp eax, ebx
jbe 0x4ea76c
xor eax, eax
lea edi, [ebp - 0x50]
stosd dword es:[edi], eax
mov eax, dword [ebp - 0x24]
mov ecx, dword [eax + 0xc]
call fcn.0051a415
mov ecx, dword [eax]
lea edx, [ebp - 0x50]
push edx
push dword [ebp - 0x1c]
push ebx
push eax
call dword [ecx + 0x1c]
test eax, eax
jne 0x4ea75d
push ebx
lea ecx, [ebp + 0x1a8]
mov dword [ebp + 0x1c0], 0xf
call fcn.0040403f
mov eax, dword [ebp - 0x44]
add eax, 0xffffffec
mov byte [ebp - 4], 0x97
cmp eax, 0xa
ja case.0x4ea69e.28
jmp dword [eax*4 + 0x4ea815]
push str.R8G8B8
jmp 0x4ea6f0
push str.A8R8G8B8
jmp 0x4ea6f0
push str.X8R8G8B8
jmp 0x4ea6f0
push str.R5G6B5
jmp 0x4ea6f0
push str.A1R5G5B5
jmp 0x4ea6f0
push str.X1R5G5B5
jmp 0x4ea6f0
push str.A4R4G4B4
jmp 0x4ea6f0
push str.X4R4G4B4
jmp 0x4ea6f0
push str.R3G3B2
jmp 0x4ea6f0
push str.A8R3G3B2
jmp 0x4ea6f0
push str.Unknown
lea ecx, [ebp + 0x1a8]
call fcn.004040cd
cmp dword [ebp + 0x1c0], 0x10
mov eax, dword [ebp + 0x1ac]
jae 0x4ea710
lea eax, [ebp + 0x1ac]
push eax
push dword [ebp - 0x48]
lea eax, [ebp - 0xe8]
push dword [ebp - 0x4c]
push dword [ebp - 0x50]
push 0x687780
push eax
call fcn.00464126
add esp, 0x18
mov ebx, eax
lea esi, [ebp - 0x18]
mov byte [ebp - 4], 0x98
call fcn.004e84e4
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0xe8]
call fcn.00403f7a
push ebx
push 1
lea ecx, [ebp + 0x1a8]
mov byte [ebp - 4], bl
call fcn.00403f7a
inc dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x20]
jb 0x4ea652
mov dword [ebp - 4], 0x99
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0x18]
call dword [eax + 8]
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x18]
call fcn.0058691e
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x4244]
xor ecx, ebp
call fcn.005f39d3
add ebp, 0x4248
leave
ret