Function at 0x41326a
Capabilities:
Contain obfuscated stackstrings

Disassembly:
sub esp, 0x1a8
xor eax, eax
push ebx
push ebp
push esi
mov esi, ecx
push edi
mov ecx, 7
mov edi, 0x4e64f8
xor ebx, ebx
rep stosd dword es:[edi], eax
mov edi, dword [esp + 0x1c0]
push ebx
mov dword [0x4e6584], edi
mov eax, dword [esi + 0x18]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x18]
mov ebp, eax
cmp ebp, ebx
jg 0x4132aa
push ebx
push str.initialization
push str.Cant_create_D3D___Invalid_display_mode_property.
push edi
jmp 0x4137f6
mov eax, dword [esi + 0x138]
mov dword [esi + 0x128], ebx
push eax
mov dword [esi + 0x130], 1
mov dword [esi + 0x12c], ebx
mov dword [esi + 0x134], ebp
call fcn.0048c371
mov ecx, ebp
shl ecx, 4
push ecx
call fcn.0048c348
add esp, 8
xor edi, edi
cmp ebp, ebx
mov dword [esi + 0x138], eax
jle 0x413309
mov eax, dword [esi + 0x18]
mov ecx, ebx
add ecx, dword [esi + 0x138]
mov edx, dword [eax]
push ecx
push edi
push 0
push eax
call dword [edx + 0x1c]
inc edi
add ebx, 0x10
cmp edi, ebp
jl 0x4132ec
mov eax, dword [esp + 0x1d0]
mov edx, 1
cmp eax, edx
mov ebx, 2
jne 0x413320
mov ebx, edx
mov ecx, 0xd
xor eax, eax
mov edi, 0x4c91e0
xor ebp, ebp
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x1bc]
xor edi, edi
cmp eax, edx
mov dword [0x4c91fc], eax
mov dword [0x4c9200], edx
mov dword [0x4c91f4], edx
mov dword [0x4c920c], edi
mov dword [0x4c9210], edi
jne 0x4133b5
mov eax, dword [esi + 0x18]
lea ecx, [esp + 0x1c]
push ecx
push edi
mov edx, dword [eax]
push eax
call dword [edx + 0x20]
mov eax, dword [esp + 0x1c4]
mov dword [0x4c91ec], 1
cmp eax, edi
ja 0x413389
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x1c4], edx
cmp dword [esp + 0x1c8], edi
ja 0x41339d
mov eax, dword [esp + 0x20]
mov dword [esp + 0x1c8], eax
mov ecx, dword [esp + 0x1c0]
mov ebp, dword [esp + 0x28]
mov dword [0x4c91f8], ecx
mov edx, 1
jmp 0x4133fa
mov eax, dword [esp + 0x1cc]
mov dword [0x4c91ec], edx
cmp eax, 0x10
mov dword [0x4c9204], 0x50
jne 0x4133d8
mov ebp, 0x17
jmp 0x4133ee
cmp eax, 0x18
jne 0x4133e4
mov ebp, 0x14
jmp 0x4133ee
cmp eax, 0x20
jne 0x4133ee
mov ebp, 0x16
mov eax, dword [esp + 0x1c0]
mov dword [0x4c91f8], eax
mov ecx, dword [esp + 0x1c4]
mov eax, dword [esp + 0x1c8]
mov dword [0x4c91e0], ecx
mov dword [0x4c91e4], eax
mov dword [0x4c91e8], ebp
mov dword [0x4c91f0], edi
mov dword [0x4c9208], edx
mov eax, dword [esi + 0x134]
test eax, eax
jle 0x413468
mov edx, dword [esi + 0x138]
lea ecx, [edx + 0xc]
cmp dword [ecx], ebp
je 0x413446
inc edi
add ecx, 0x10
cmp edi, eax
jl 0x413438
jmp 0x413468
mov eax, dword [esi + 0x130]
mov ecx, edi
shl ecx, 4
push 0x4c9204
mov edx, dword [ecx + edx + 0xc]
mov ecx, esi
push edx
push eax
push 0
call fcn.00413910
mov dword [esi + 0x20], edi
mov edx, dword [esp + 0x1c0]
mov eax, dword [esi + 0x18]
push 0x4e657c
push 0x4c91e0
mov ecx, dword [eax]
push 0x40
push edx
push ebx
push 0
push eax
call dword [ecx + 0x3c]
test eax, eax
je 0x4134eb
mov edi, dword [esp + 0x1c0]
mov eax, dword [esi + 0x18]
push 0x4e657c
push 0x4c91e0
mov ecx, dword [eax]
push 0x20
push edi
push ebx
push 0
push eax
call dword [ecx + 0x3c]
test eax, eax
je 0x4134eb
lea edx, [esp + 0xb8]
push 0x100
push edx
push eax
call fcn.00446885
push 0
push str.initialization
push str.Cant_create_D3D_Device___please__check_DirectX_or_display_card_driver
push edi
call dword [sym.imp.USER32.dll_MessageBoxA]
mov eax, dword [esi]
mov ecx, esi
call dword [eax]
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x1a8
ret 0x18
mov eax, dword [0x4e657c]
mov dword [0x4e6580], 0
mov dword [0x4c7098], ebx
push 0x4c7098
mov ecx, dword [eax]
push eax
call dword [ecx + 0x1c]
mov ecx, dword [0x4c70f0]
mov eax, 0x100
cmp ecx, eax
jb 0x4137e3
cmp dword [0x4c70f4], eax
jb 0x4137e3
mov eax, dword [esi + 0x18]
push 0x31545844
push 3
push 0
mov edx, dword [eax]
push ebp
push ebx
push 0
push eax
call dword [edx + 0x28]
test eax, eax
jne 0x413550
mov eax, dword [0x4e6580]
or al, 1
mov dword [0x4e6580], eax
mov eax, dword [esi + 0x18]
push 0x32545844
push 3
push 0
mov ecx, dword [eax]
push ebp
push ebx
push 0
push eax
call dword [ecx + 0x28]
test eax, eax
jne 0x413576
mov eax, dword [0x4e6580]
or al, 2
mov dword [0x4e6580], eax
mov eax, dword [esi + 0x18]
push 0x33545844
push 3
push 0
mov edx, dword [eax]
push ebp
push ebx
push 0
push eax
call dword [edx + 0x28]
test eax, eax
jne 0x41359c
mov eax, dword [0x4e6580]
or al, 4
mov dword [0x4e6580], eax
mov eax, dword [esi + 0x18]
push 0x34545844
push 3
push 0
mov ecx, dword [eax]
push ebp
push ebx
push 0
push eax
call dword [ecx + 0x28]
test eax, eax
jne 0x4135c2
mov eax, dword [0x4e6580]
or al, 8
mov dword [0x4e6580], eax
mov eax, dword [esi + 0x18]
push 0x35545844
push 3
push 0
mov edx, dword [eax]
push ebp
push ebx
push 0
push eax
call dword [edx + 0x28]
test eax, eax
jne 0x4135e8
mov eax, dword [0x4e6580]
or al, 0x10
mov dword [0x4e6580], eax
mov eax, dword [0x4c70d4]
test al, 0x20
je 0x4135f8
or dword [0x4e6580], 0x20
test ah, 0x40
je 0x413604
or dword [0x4e6580], 0x40
test al, 2
je 0x413614
mov eax, dword [0x4e6580]
or al, 0x80
mov dword [0x4e6580], eax
xor ebp, ebp
mov dword [esp + 0x24], 0x3f800000
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x1c], 0x3f800000
mov dword [esp + 0x20], 0x3f800000
mov dword [esp + 0x28], 0x3f800000
mov dword [esp + 0x10], ebp
mov dword [esp + 0x14], ebp
mov dword [esp + 0x18], ebp
mov edx, dword [esp + 0x14]
mov ecx, 0x1c
xor eax, eax
lea edi, [esp + 0x48]
rep stosd dword es:[edi], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x80], edx
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x7c], ecx
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x4c], edx
mov edx, dword [esp + 0x28]
mov eax, 1
mov dword [esp + 0x48], eax
mov dword [esp + 0x84], ecx
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x58], edx
mov dword [esp + 0xb0], eax
mov eax, dword [0x4e657c]
lea edx, [esp + 0x48]
mov dword [esp + 0xb4], ebp
mov dword [esp + 0x50], ecx
mov dword [esp + 0x54], ebx
mov dword [esp + 0x6c], 0x3f333333
mov dword [esp + 0x70], 0x3f333333
mov dword [esp + 0x74], 0x3f333333
mov dword [esp + 0x98], 0x3f800000
mov dword [esp + 0x9c], 0x3f000000
mov dword [esp + 0xa0], 0x3851b717
mov dword [esp + 0xa4], 0x31abcc77
mov dword [esp + 0x94], 0x471c4000
mov ecx, dword [eax]
push edx
push ebp
push eax
call dword [ecx + 0xb0]
inc ebp
cmp ebp, 8
jl 0x413646
lea eax, [esp + 0x10]
lea ecx, [esp + 0x2c]
push eax
lea edx, [esp + 0x20]
push ecx
push edx
mov ecx, esi
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], 0x3f800000
mov dword [esp + 0x24], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x28], 0x40a00000
mov dword [esp + 0x2c], 0x40a00000
mov dword [esp + 0x30], 0xc1200000
call fcn.00413820
mov edi, dword [esp + 0x1c8]
mov ebx, dword [esp + 0x1c4]
xor ebp, ebp
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebp
push ecx
fild qword [esp + 0x14]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], ebp
mov ecx, esi
fidiv dword [esp + 0x14]
fstp dword [esp]
push 0x3f490fdb
push 0x43800000
push 0x3dcccccd
call fcn.00413860
lea eax, [esp + 0x38]
mov ecx, esi
push eax
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x40], ebp
mov dword [esp + 0x44], ebx
mov dword [esp + 0x48], edi
call fcn.004138a0
mov ecx, esi
call fcn.00413d00
pop edi
pop esi
pop ebp
mov al, 1
pop ebx
add esp, 0x1a8
ret 0x18
push 0
push str.Initialization_error
push str.Cant_support_this_graphic_card_:_Texture_size_is_too_small
call dword [sym.imp.USER32.dll_GetActiveWindow]
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
mov edx, dword [esi]
mov ecx, esi
call dword [edx]
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x1a8
ret 0x18