Function at 0x4012b0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x43e820
mov eax, dword fs:[0]
push eax
sub esp, 0x34
mov eax, dword [0x446040]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [0x446684]
test eax, eax
je 0x4012ea
inc dword [eax + 0x36c]
mov ebx, dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
push 0x3e00
mov dword [ebp - 0x24], ebx
call ebx
add esp, 4
test eax, eax
je 0x40130c
push 0
mov ecx, eax
call fcn.00402f70
jmp 0x40130e
xor eax, eax
cmp dword [0x446684], 0
jne 0x40131c
mov dword [0x446684], eax
mov ecx, eax
call fcn.00409e80
mov esi, dword [0x446684]
mov dword [esi + 0x20], 0
mov dword [esi + 0x1528], 0x3f800000
mov dword [esi + 0x152c], 0x3f800000
mov dword [esi + 0x1530], 0x41400000
mov dword [esi + 0x1534], 0x41400000
mov dword [esi + 0x1538], 0x41380000
mov dword [esi + 0x153c], 0
mov dword [esi + 0x1540], 0x41a00000
mov dword [esi + 0x1544], 0x41a00000
mov dword [esi + 0x1548], 0x3f000000
mov dword [esi + 0x154c], 0x3f000000
mov dword [esi + 0x1550], 1
mov dword [esi + 0x1554], 0
mov dword [esi + 0x1558], 0x3f800000
mov dword [esi + 0x155c], 0
mov dword [esi + 0x1560], 0x3f800000
mov dword [esi + 0x1564], 0x41a00000
mov dword [esi + 0x1568], 0x4059999a
mov dword [esi + 0x156c], 0x413e6666
mov dword [esi + 0x1570], 0
mov dword [esi + 0x1574], 0x4089999a
mov dword [esi + 0x1578], 0x40b00000
mov dword [esi + 0x157c], 0x40e33333
mov dword [esi + 0x1580], 0x3fe66666
mov dword [esi + 0x1584], 0x4141999a
mov dword [esi + 0x1588], 0x41133333
mov dword [esi + 0x1594], 0
mov dword [esi + 0x1598], 0x409ccccd
mov dword [esi + 0x159c], 0x4139999a
mov dword [esi + 0x15a0], 0x417e6666
mov dword [esi + 0x15a4], 0x406ccccd
mov dword [esi + 0x15a8], 0x41a00000
mov dword [esi + 0x15b0], 0
mov dword [esi + 0x15b4], 0
mov dword [esi + 0x15b8], 0
mov dword [esi + 0x15bc], 1
mov dword [esi + 0x15c0], 0x3f000000
mov dword [esi + 0x15c4], 0x3f000000
mov dword [esi + 0x15c8], 0
mov dword [esi + 0x15cc], 0
mov dword [esi + 0x15f0], 0x3f800000
mov dword [esi + 0x15f4], 0x3f800000
mov dword [esi + 0x15f8], 0x3f800000
mov dword [esi + 0x15fc], 0x3f800000
mov dword [esi + 0x1600], 0x3e8c8c8d
mov dword [esi + 0x1604], 0x3ea2a2a3
mov dword [esi + 0x1608], 0x3ee6e6e7
mov dword [esi + 0x160c], 0x3f800000
mov dword [esi + 0x1610], 0x3da0a0a1
mov dword [esi + 0x1614], 0x3db0b0b1
mov dword [esi + 0x1618], 0x3dd0d0d1
mov dword [esi + 0x161c], 0x3f800000
mov dword [esi + 0x1620], 0x3dc0c0c1
mov dword [esi + 0x1624], 0x3dd0d0d1
mov dword [esi + 0x1628], 0x3df0f0f1
mov dword [esi + 0x162c], 0x3f800000
mov dword [esi + 0x1630], 0x3da0a0a1
mov dword [esi + 0x1634], 0x3db0b0b1
mov dword [esi + 0x1638], 0x3dd0d0d1
mov dword [esi + 0x163c], 0x3f800000
mov dword [esi + 0x1640], 0x3e20a0a1
mov dword [esi + 0x1644], 0x3e2cacad
mov dword [esi + 0x1648], 0x3e44c4c5
mov dword [esi + 0x164c], 0x3f800000
mov dword [esi + 0x1650], 0x3da0a0a1
mov dword [esi + 0x1654], 0x3db0b0b1
mov dword [esi + 0x1658], 0x3dd0d0d1
mov dword [esi + 0x165c], 0x3f800000
mov dword [esi + 0x1660], 0x3de8e8e9
mov dword [esi + 0x1664], 0x3e008081
mov dword [esi + 0x1668], 0x3e1c9c9d
mov dword [esi + 0x166c], 0x3f800000
mov dword [esi + 0x1670], 0x3e20a0a1
mov dword [esi + 0x1674], 0x3e2cacad
mov dword [esi + 0x1678], 0x3e44c4c5
mov dword [esi + 0x167c], 0x3f800000
mov dword [esi + 0x1680], 0x3e20a0a1
mov dword [esi + 0x1684], 0x3e2cacad
mov dword [esi + 0x1688], 0x3e44c4c5
mov dword [esi + 0x168c], 0x3f800000
mov dword [esi + 0x1690], 0x3d40c0c1
mov dword [esi + 0x1694], 0x3d60e0e1
mov dword [esi + 0x1698], 0x3d909091
mov dword [esi + 0x169c], 0x3f800000
mov dword [esi + 0x16a0], 0x3d40c0c1
mov dword [esi + 0x16a4], 0x3d60e0e1
mov dword [esi + 0x16a8], 0x3d909091
mov dword [esi + 0x16ac], 0x3f800000
mov dword [esi + 0x16b0], 0x3da0a0a1
mov dword [esi + 0x16b4], 0x3db0b0b1
mov dword [esi + 0x16b8], 0x3dd0d0d1
mov dword [esi + 0x16bc], 0x3f800000
mov dword [esi + 0x16c0], 0x3dc8c8c9
mov dword [esi + 0x16c4], 0x3dd8d8d9
mov dword [esi + 0x16c8], 0x3df8f8f9
mov dword [esi + 0x16cc], 0x3f800000
mov dword [esi + 0x16d0], 0x3d40c0c1
mov dword [esi + 0x16d4], 0x3d60e0e1
mov dword [esi + 0x16d8], 0x3d909091
mov dword [esi + 0x16dc], 0x3f800000
mov dword [esi + 0x16e0], 0x3df0f0f1
mov dword [esi + 0x16e4], 0x3e088889
mov dword [esi + 0x16e8], 0x3e189899
mov dword [esi + 0x16ec], 0x3f800000
mov dword [esi + 0x16f0], 0x3e20a0a1
mov dword [esi + 0x16f4], 0x3e2cacad
mov dword [esi + 0x16f8], 0x3e44c4c5
mov dword [esi + 0x16fc], 0x3f800000
mov dword [esi + 0x1700], 0x3df0f0f1
mov dword [esi + 0x1704], 0x3e088889
mov dword [esi + 0x1708], 0x3e189899
mov dword [esi + 0x170c], 0x3f800000
mov dword [esi + 0x1710], 0x3f78f8f9
mov dword [esi + 0x1714], 0x3f800000
mov dword [esi + 0x1718], 0x3efefeff
mov dword [esi + 0x171c], 0x3f800000
mov dword [esi + 0x1720], 0x3f78f8f9
mov dword [esi + 0x1724], 0x3f800000
mov dword [esi + 0x1728], 0x3efefeff
mov dword [esi + 0x172c], 0x3f800000
mov dword [esi + 0x1730], 0x3f800000
mov dword [esi + 0x1734], 0x3f4bcbcc
mov dword [esi + 0x1738], 0x3efefeff
mov dword [esi + 0x173c], 0x3f800000
mov dword [esi + 0x1740], 0x3df0f0f1
mov dword [esi + 0x1744], 0x3e088889
mov dword [esi + 0x1748], 0x3e189899
mov dword [esi + 0x174c], 0x3f800000
mov dword [esi + 0x1750], 0x3e38b8b9
mov dword [esi + 0x1754], 0x3e40c0c1
mov dword [esi + 0x1758], 0x3e48c8c9
mov dword [esi + 0x175c], 0x3f800000
mov dword [esi + 0x1760], 0x3e1c9c9d
mov dword [esi + 0x1764], 0x3e1c9c9d
mov dword [esi + 0x1768], 0x3e1c9c9d
mov dword [esi + 0x176c], 0x3f800000
mov dword [esi + 0x1770], 0x3e109091
mov dword [esi + 0x1774], 0x3e28a8a9
mov dword [esi + 0x1778], 0x3e54d4d5
mov dword [esi + 0x177c], 0x3f800000
mov dword [esi + 0x1780], 0x3dd8d8d9
mov dword [esi + 0x1784], 0x3dd8d8d9
mov dword [esi + 0x1788], 0x3dd8d8d9
mov dword [esi + 0x178c], 0x3f800000
mov dword [esi + 0x1790], 0x3da0a0a1
mov dword [esi + 0x1794], 0x3db0b0b1
mov dword [esi + 0x1798], 0x3dd0d0d1
mov dword [esi + 0x179c], 0x3f800000
mov dword [esi + 0x17a0], 0x3e048485
mov dword [esi + 0x17a4], 0x3e189899
mov dword [esi + 0x17a8], 0x3e44c4c5
mov dword [esi + 0x17ac], 0x3f800000
mov dword [esi + 0x17b0], 0x3e20a0a1
mov dword [esi + 0x17b4], 0x3e3cbcbd
mov dword [esi + 0x17b8], 0x3e808081
mov dword [esi + 0x17bc], 0x3f800000
mov dword [esi + 0x17c0], 0x3e20a0a1
mov dword [esi + 0x17c4], 0x3e3cbcbd
mov dword [esi + 0x17c8], 0x3e808081
mov dword [esi + 0x17cc], 0x3f800000
mov dword [esi + 0x17d0], 0x3e149495
mov dword [esi + 0x17d4], 0x3e149495
mov dword [esi + 0x17d8], 0x3e149495
mov dword [esi + 0x17dc], 0x3f800000
mov dword [esi + 0x17e0], 0x3f78f8f9
mov dword [esi + 0x17e4], 0x3f800000
mov dword [esi + 0x17e8], 0x3efefeff
mov dword [esi + 0x17ec], 0x3f800000
mov dword [esi + 0x17f0], 0x3f800000
mov dword [esi + 0x17f4], 0x3f800000
mov dword [esi + 0x17f8], 0x3f800000
mov dword [esi + 0x17fc], 0x3f800000
mov dword [esi + 0x1800], 0x3da0a0a1
mov dword [esi + 0x1804], 0x3db0b0b1
mov dword [esi + 0x1808], 0x3dd0d0d1
mov dword [esi + 0x180c], 0x3f800000
mov dword [esi + 0x1810], 0x3df0f0f1
mov dword [esi + 0x1814], 0x3e088889
mov dword [esi + 0x1818], 0x3e189899
mov dword [esi + 0x181c], 0x3f800000
mov dword [esi + 0x1820], 0x3df0f0f1
mov dword [esi + 0x1824], 0x3e088889
mov dword [esi + 0x1828], 0x3e189899
mov dword [esi + 0x182c], 0x3f800000
mov dword [esi + 0x1830], 0x3da0a0a1
mov dword [esi + 0x1834], 0x3db0b0b1
mov dword [esi + 0x1838], 0x3dd0d0d1
mov dword [esi + 0x183c], 0x3f800000
mov dword [esi + 0x1840], 0x3e008081
mov dword [esi + 0x1844], 0x3e8c8c8d
mov dword [esi + 0x1848], 0x3f129293
mov dword [esi + 0x184c], 0x3f800000
mov dword [esi + 0x1850], 0x3f058586
mov dword [esi + 0x1854], 0x3f19999a
mov dword [esi + 0x1858], 0x3f33b3b4
mov dword [esi + 0x185c], 0x3f800000
mov dword [esi + 0x1860], 0x3d20a0a1
mov dword [esi + 0x1864], 0x3f7afafb
mov dword [esi + 0x1868], 0x3f7afafb
mov dword [esi + 0x186c], 0x3f800000
mov dword [esi + 0x1870], 0x3f61e1e2
mov dword [esi + 0x1874], 0x3f4bcbcc
mov dword [esi + 0x1878], 0x3f0f8f90
mov dword [esi + 0x187c], 0x3f800000
mov dword [esi + 0x1880], 0x3f74f4f5
mov dword [esi + 0x1884], 0x3f74f4f5
mov dword [esi + 0x1888], 0x3f74f4f5
mov dword [esi + 0x188c], 0x3f800000
mov dword [esi + 0x1890], 0x3d40c0c1
mov dword [esi + 0x1894], 0x3d60e0e1
mov dword [esi + 0x1898], 0x3d909091
mov dword [esi + 0x189c], 0x3f800000
mov dword [esi + 0x18a0], 0x3d40c0c1
mov dword [esi + 0x18a4], 0x3d60e0e1
mov dword [esi + 0x18a8], 0x3d909091
mov dword [esi + 0x18ac], 0x3f800000
mov dword [esi + 0x18b0], 0
mov dword [esi + 0x18b4], 0
mov dword [esi + 0x18b8], 0
mov dword [esi + 0x18bc], 0x3f800000
mov dword [esi + 0x18c0], 0x3df0f0f1
mov dword [esi + 0x18c4], 0x3e088889
mov dword [esi + 0x18c8], 0x3e189899
mov dword [esi + 0x18cc], 0x3f800000
mov dword [esi + 0x18d0], 0x3dc8c8c9
mov dword [esi + 0x18d4], 0x3dd8d8d9
mov dword [esi + 0x18d8], 0x3df8f8f9
mov dword [esi + 0x18dc], 0x3f800000
mov dword [esi + 0x18e0], 0x3f6feff0
mov dword [esi + 0x18e4], 0x3f6feff0
mov dword [esi + 0x18e8], 0x3f6feff0
mov dword [esi + 0x18ec], 0x3f800000
mov dword [esi + 0x18f0], 0x3efefeff
mov dword [esi + 0x18f4], 0x3f038384
mov dword [esi + 0x18f8], 0x3f800000
mov dword [esi + 0x18fc], 0x3f800000
mov dword [esi + 0x1900], 0x3e888889
mov dword [esi + 0x1904], 0x3e949495
mov dword [esi + 0x1908], 0x3f800000
mov dword [esi + 0x190c], 0x3f800000
mov dword [esi + 0x1910], 0x3efefeff
mov dword [esi + 0x1914], 0x3f038384
mov dword [esi + 0x1918], 0x3f800000
mov dword [esi + 0x191c], 0x3f800000
mov dword [esi + 0x1920], 0x3e48c8c9
mov dword [esi + 0x1924], 0x3e34b4b5
mov dword [esi + 0x1928], 0x3f0b8b8c
mov dword [esi + 0x192c], 0x3f008081
mov dword [esi + 0x1930], 0x3e48c8c9
mov dword [esi + 0x1934], 0x3e34b4b5
mov dword [esi + 0x1938], 0x3f0b8b8c
mov dword [esi + 0x193c], 0x3f008081
mov eax, dword [0x446608]
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x18]
push eax
call dword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
test eax, eax
je 0x401e9b
lea eax, [ebp - 0x20]
push eax
call dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x401e9b
mov eax, dword [0x446684]
test eax, eax
je 0x401d39
inc dword [eax + 0x36c]
push 0x38
call ebx
mov edi, eax
add esp, 4
test edi, edi
je 0x401d55
push 0x38
push 0
push edi
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
jmp 0x401d57
xor edi, edi
or dword [esi + 0xc], 6
mov edx, dword [ebp - 0x28]
mov dword [esi + 0xc4], edi
mov dword [esi + 0xbc], str.imgui_impl_win32
mov dword [edi], edx
mov byte [edi + 0x25], 1
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
mov dword [edi + 0x18], eax
mov dword [edi + 0x1c], ecx
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
mov dword [edi + 0x10], eax
mov dword [edi + 0x14], ecx
mov dword [edi + 0x20], 9
mov dword [esi + 0xe0], edx
mov dword [esi + 0x34], 9
mov dword [esi + 0x38], 0x25
mov dword [esi + 0x3c], 0x27
mov dword [esi + 0x40], 0x26
mov dword [esi + 0x44], 0x28
mov dword [esi + 0x48], 0x21
mov dword [esi + 0x4c], 0x22
mov dword [esi + 0x50], 0x24
mov dword [esi + 0x54], 0x23
mov dword [esi + 0x58], 0x2d
mov dword [esi + 0x5c], 0x2e
mov dword [esi + 0x60], 8
mov dword [esi + 0x64], 0x20
mov dword [esi + 0x68], 0xd
mov dword [esi + 0x6c], 0x1b
mov dword [esi + 0x70], 0xd
mov dword [esi + 0x74], 0x41
mov dword [esi + 0x78], 0x43
mov dword [esi + 0x7c], 0x56
mov dword [esi + 0x80], 0x58
mov dword [esi + 0x84], 0x59
mov dword [esi + 0x88], 0x5a
xor esi, esi
mov dword [ebp - 0x3c], str.xinput1_4.dll
mov dword [ebp - 0x38], str.xinput1_3.dll
mov dword [ebp - 0x34], str.xinput9_1_0.dll
mov dword [ebp - 0x30], str.xinput1_2.dll
mov dword [ebp - 0x2c], str.xinput1_1.dll
push dword [ebp + esi*4 - 0x3c]
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov ebx, eax
test ebx, ebx
jne 0x401e79
inc esi
cmp esi, 5
jl 0x401e61
jmp 0x401e98
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.XInputGetCapabilities
push ebx
mov dword [edi + 0x28], ebx
call esi
push str.XInputGetState
push ebx
mov dword [edi + 0x2c], eax
call esi
mov dword [edi + 0x30], eax
mov ebx, dword [ebp - 0x24]
mov esi, dword [0x446684]
mov edi, dword [0x44660c]
test esi, esi
je 0x401eb1
inc dword [esi + 0x36c]
push 0x18
call ebx
add esp, 4
test eax, eax
je 0x401ee7
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], 0x1388
mov dword [eax + 0x14], 0x2710
jmp 0x401ee9
xor eax, eax
or dword [esi + 0xc], 8
mov dword [esi + 0xc8], eax
mov dword [esi + 0xc0], str.imgui_impl_dx9
mov dword [eax], edi
mov eax, dword [edi]
push edi
call dword [eax + 4]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0043d4f4
mov esp, ebp
pop ebp
ret