Function at 0x40213f
Capabilities:
Get common file path

Disassembly:
mov eax, 0x41791d
call fcn.00410b5c
sub esp, 0x648
mov eax, dword [0x41d280]
push ebx
push esi
push edi
mov ebx, 0x208
push ebx
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x234]
push 0
push eax
mov esi, ecx
call fcn.004103a0
add esp, 0xc
cmp dword [esi + 0x2c], 8
jb 0x40217e
mov eax, dword [esi + 0x18]
jmp 0x402181
lea eax, [esi + 0x18]
mov edi, dword [sym.imp.SHLWAPI.dll_PathCombineW]
push str.bin_atl71.dll
push eax
lea eax, [ebp - 0x234]
push eax
call edi
lea eax, [ebp - 0x234]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
push ebx
lea eax, [ebp - 0x234]
push 0
push eax
call fcn.004103a0
add esp, 0xc
cmp dword [esi + 0x2c], 8
jb 0x4021c0
mov eax, dword [esi + 0x18]
jmp 0x4021c3
lea eax, [esi + 0x18]
push str.binmsvcr71.dll
push eax
lea eax, [ebp - 0x234]
push eax
call edi
lea eax, [ebp - 0x234]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
push ebx
lea eax, [ebp - 0x234]
push 0
push eax
call fcn.004103a0
add esp, 0xc
cmp dword [esi + 0x2c], 8
jb 0x4021fc
mov eax, dword [esi + 0x18]
jmp 0x4021ff
lea eax, [esi + 0x18]
push str.binmsvcp71.dll
push eax
lea eax, [ebp - 0x234]
push eax
call edi
lea eax, [ebp - 0x234]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
push ebx
lea eax, [ebp - 0x234]
push 0
push eax
call fcn.004103a0
add esp, 0xc
cmp dword [esi + 0x2c], 8
jb 0x402238
mov esi, dword [esi + 0x18]
jmp 0x40223b
add esi, 0x18
push str.binXLBugHandler.dll
push esi
lea eax, [ebp - 0x234]
push eax
call edi
lea eax, [ebp - 0x64c]
push eax
lea eax, [ebp - 0x234]
xor esi, esi
push eax
mov dword [ebp - 0x64c], esi
call fcn.00407d18
cmp dword [ebp - 0x64c], esi
pop ecx
pop ecx
je 0x402323
lea eax, [ebp - 0x234]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
cmp eax, esi
mov dword [ebp - 0x648], eax
je 0x402323
mov word [ebp - 0x43c], si
xor eax, eax
mov ecx, 0x81
lea edi, [ebp - 0x43a]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [ebp - 0x43c]
push eax
mov esi, 0x104
push esi
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
push str.ThunderInstallDump_
lea eax, [ebp - 0x43c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str._XL_SetBugReportRootDir_4
push dword [ebp - 0x648]
call edi
lea ecx, [ebp - 0x43c]
push ecx
call eax
push str._XL_InitBugHandler_20
push dword [ebp - 0x648]
call edi
test eax, eax
mov dword [ebp - 0x654], eax
je 0x402317
push str._XL_SetAlwaysSendReport_4
push dword [ebp - 0x648]
call edi
xor edi, edi
cmp eax, edi
mov dword [ebp - 0x650], eax
jne 0x40232b
push dword [ebp - 0x648]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
xor eax, eax
inc eax
jmp 0x4023ae
push edi
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x14], 7
call fcn.004016a1
push ebx
lea eax, [ebp - 0x644]
push edi
push eax
mov dword [ebp - 4], edi
call fcn.004103a0
add esp, 0xc
push esi
lea eax, [ebp - 0x644]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x644]
push eax
call fcn.00409581
cmp dword [ebp - 0x14], 8
mov eax, dword [ebp - 0x28]
pop ecx
pop ecx
jae 0x40237c
lea eax, [ebp - 0x28]
push eax
mov eax, dword [0x423fe8]
push 0x4185c0
push str._bug
push dword [eax]
push 0x4185a8
call dword [ebp - 0x654]
push 1
call dword [ebp - 0x650]
push edi
push 1
lea ecx, [ebp - 0x2c]
call fcn.00401b0c
xor eax, eax
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x10]
pop ebx
call fcn.004102ee
leave
ret