Function at 0x401000
Capabilities:
Allocate thread local storage

Disassembly:
push 0x68
push 0
push 0x48f558
call sub.MSVCRT.dll_memset
add esp, 0xc
push 0
call sub.KERNEL32.dll_GetModuleHandleW
mov dword [0x48f55c], eax
push 0
push 0x1000
push 0
call sub.KERNEL32.dll_HeapCreate
mov dword [0x48f558], eax
call fcn.004021cf
call fcn.0040d0a0
call fcn.0040c880
call fcn.0040c29d
call fcn.0040bc9a
call fcn.0040b912
call fcn.0040b906
call fcn.0040b660
call fcn.00409794
call fcn.00408f20
call fcn.00408439
call fcn.004070f8
call fcn.0040703f
call fcn.00406898
call fcn.004055cf
call fcn.00402dfa
call fcn.00402218
push dword [0x48fb2c]
push dword [0x48fb2c]
call fcn.0040baa7
lea eax, [0x48f574]
push eax
call fcn.0040d120
call fcn.00402b80
mov eax, str.D:Games01_Tomb_Raider__I_TR_GOLD_tmp.jpg
push eax
push 0xffffffff
call fcn.00407198
mov dword [0x48f56c], eax
push 0xb
mov eax, str.Tahoma
push eax
push 0
call fcn.0040ba28
push 0xa
mov eax, str.Tahoma
push eax
push 1
call fcn.0040ba28
push 0x58
push 0
call sub.USER32.dll_GetDC
push eax
call sub.GDI32.dll_GetDeviceCaps
mov dword [esp - 4], eax
fild dword [esp - 4]
fdiv qword [0x42b318]
fstp qword [0x48f560]
mov ebp, 0x42b330
push ebp
push 0
call fcn.0040732b
fld qword [0x48f560]
fmul qword [0x42b320]
push eax
fistp dword [esp]
fld qword [0x48f560]
fmul qword [0x42b320]
push eax
fistp dword [esp]
push 0
call fcn.004073d9
push 0x1a4
push 0x271
push 0
push 0
call fcn.00401558
push 0
call fcn.004073ef
push eax
push dword [0x48f584]
call fcn.00402ea0
mov eax, str.MusicTrack26.flac
push eax
call fcn.0040baec
push edx
push eax
pop ebx
pop edi
cmp ebx, 0x3342c
jne 0x4011a3
cmp edi, 0
je 0x4011a7
xor eax, eax
jmp 0x4011ac
mov eax, 1
or eax, eax
je 0x4011c3
mov eax, 0x42b096
push eax
push dword [0x48f580]
call fcn.00402ed8
jmp 0x4011d4
mov eax, str.English
push eax
push dword [0x48f580]
call fcn.00402ed8
call fcn.00405765
mov dword [0x48f5a4], eax
push dword [0x48f5a4]
mov ebx, 0x332c
cmp ebx, dword [esp]
jne 0x4014ec
call fcn.0040bdb4
push eax
mov ebx, dword [0x48f5bc]
cmp ebx, dword [esp]
jne 0x401212
mov dword [0x48f5a4], 0x333c
jmp 0x4014eb
mov ebx, dword [0x48f59c]
cmp ebx, dword [esp]
jne 0x4012b8
push dword [0x48f5ac]
call fcn.00402f23
mov ebx, eax
and ebx, ebx
jne 0x40124b
mov eax, 0x42b028
push eax
mov eax, 0x42b028
push eax
mov eax, str.tombati.exe
push eax
call fcn.00402285
jmp 0x4012b3
push 1
push dword [0x48f5b4]
call fcn.0040584c
push 4
mov eax, 0x42b028
push eax
mov eax, str.__hidden
push eax
mov eax, str.gamepad_antimicro.exe
push eax
call fcn.0040229d
mov dword [0x48f57c], eax
push 1
mov eax, 0x42b028
push eax
mov eax, 0x42b028
push eax
mov eax, str.tombati.exe
push eax
call fcn.0040229d
push 0
push dword [0x48f5b4]
call fcn.0040584c
push dword [0x48f57c]
call fcn.004027eb
jmp 0x4014eb
mov ebx, dword [0x48f588]
cmp ebx, dword [esp]
jne 0x40135e
push dword [0x48f5ac]
call fcn.00402f23
mov ebx, eax
and ebx, ebx
jne 0x4012f1
mov eax, 0x42b028
push eax
mov eax, 0x42b028
push eax
mov eax, str.tombub.exe
push eax
call fcn.00402285
jmp 0x401359
push 1
push dword [0x48f5b4]
call fcn.0040584c
push 4
mov eax, 0x42b028
push eax
mov eax, str.__hidden
push eax
mov eax, str.gamepad_antimicro.exe
push eax
call fcn.0040229d
mov dword [0x48f57c], eax
push 1
mov eax, 0x42b028
push eax
mov eax, 0x42b028
push eax
mov eax, str.tombub.exe
push eax
call fcn.0040229d
push 0
push dword [0x48f5b4]
call fcn.0040584c
push dword [0x48f57c]
call fcn.004027eb
jmp 0x4014eb
mov ebx, dword [0x48f5a8]
cmp ebx, dword [esp]
jne 0x401385
mov eax, 0x42b028
push eax
mov eax, 0x42b106
push eax
mov eax, str.Settings.exe
push eax
call fcn.00402285
jmp 0x4014eb
mov ebx, dword [0x48f5a0]
cmp ebx, dword [esp]
jne 0x4013ac
mov eax, 0x42b028
push eax
mov eax, 0x42b028
push eax
mov eax, str.gamepad_antimicro.exe
push eax
call fcn.00402285
jmp 0x4014eb
mov ebx, dword [0x48f5b8]
cmp ebx, dword [esp]
jne 0x4013d3
mov eax, 0x42b028
push eax
push dword [0x48f574]
mov eax, str.explorer.exe
push eax
call fcn.00402285
jmp 0x4014eb
mov ebx, dword [0x48f578]
cmp ebx, dword [esp]
jne 0x4014eb
push dword [0x48fb2c]
push dword [0x48fb2c]
push dword [0x48f580]
call fcn.00402f50
add dword [0x48fb2c], 2
mov edx, 0x42b096
pop ecx
mov dword [0x48fb2c], ecx
add ecx, dword [0x48e1a0]
call fcn.00402030
je 0x401469
push dword [0x48fb2c]
mov edx, dword [0x48f574]
push dword [0x48fb2c]
push edx
call fcn.0040d1a0
mov edx, str.setting
push edx
call fcn.0040d1a0
add dword [0x48fb2c], 2
mov eax, 0x42b028
push eax
mov eax, str.settingRussian_Sound.exe
push eax
mov edx, dword [0x48e1a0]
add dword [esp + 8], edx
call fcn.00402285
pop dword [0x48fb2c]
jmp 0x4014eb
push dword [0x48fb2c]
push dword [0x48fb2c]
push dword [0x48f580]
call fcn.00402f50
add dword [0x48fb2c], 2
mov edx, str.English
pop ecx
mov dword [0x48fb2c], ecx
add ecx, dword [0x48e1a0]
call fcn.00402030
je 0x4014eb
push dword [0x48fb2c]
mov edx, dword [0x48f574]
push dword [0x48fb2c]
push edx
call fcn.0040d1a0
mov edx, str.setting
push edx
call fcn.0040d1a0
add dword [0x48fb2c], 2
mov eax, 0x42b028
push eax
mov eax, str.settingEnglish_Sound.exe
push eax
mov edx, dword [0x48e1a0]
add dword [esp + 8], edx
call fcn.00402285
pop dword [0x48fb2c]
pop eax
pop eax
mov ebx, dword [0x48f5a4]
cmp ebx, 0x333c
jne 0x4011d4
jmp 0x401501
push 0
call 0x401520
call fcn.0040d0f0
push dword [0x48f558]
call sub.KERNEL32.dll_HeapDestroy
call sub.KERNEL32.dll_ExitProcess
call fcn.00402da4
call fcn.004055ac
call fcn.00406897
call fcn.0040703e
call fcn.004070ec
call fcn.0040b680
call fcn.0040ba7f
call fcn.0040bc43
call fcn.0040bc7c
call fcn.0040c8f5
call fcn.0040c870
ret