Function at 0x407f70
Capabilities:
Create thread
Print debug messages

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x814
mov eax, dword [0x443350]
push ebx
push esi
push edi
xor edi, edi
push edi
mov dword [esp + 0x820], eax
mov esi, ecx
call fcn.00418700
add esp, 4
test al, al
je 0x407fbd
push 0x434e84
push 0x119
push str..TVSMain.cpp
push edi
call fcn.00418720
add esp, 0xc
push eax
call fcn.00418950
add esp, 8
mov eax, dword [0x4433f8]
push 1
push eax
lea ecx, [esi + 0xb00]
call fcn.00401160
test eax, eax
jne 0x407fd7
mov dword [esi + 0x64], edi
mov edx, dword [0x4433f8]
mov word [esp + 0x18], di
xor eax, eax
mov ecx, 0x1ff
lea edi, [esp + 0x1a]
rep stosd dword es:[edi], eax
mov ecx, dword [esi + 0x64]
push ecx
push edx
stosw word es:[edi], ax
lea eax, [esp + 0x20]
push str.fh_grt_CTVSMain::Open___:__d__d_n
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x10
lea ecx, [esp + 0x18]
push ecx
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
lea ebx, [esi + 0xa68]
mov ecx, ebx
call fcn.00410fb0
test eax, eax
je 0x40815b
lea ecx, [esi + 0xa88]
call fcn.004122d0
test eax, eax
je 0x40815b
lea ecx, [esi + 0xac0]
call fcn.004109d0
test eax, eax
je 0x40815b
lea ecx, [esi + 0x410]
call fcn.00410300
test eax, eax
je 0x40815b
lea edi, [esi + 0xa38]
mov ecx, edi
call fcn.00416ef0
test eax, eax
je 0x40815b
mov ecx, ebx
call fcn.004115b0
test eax, eax
je 0x40815b
lea ecx, [esi + 0x410]
call fcn.0040fd40
test eax, eax
je 0x40815b
mov ecx, edi
call fcn.00416b00
test eax, eax
je 0x40815b
lea ecx, [esi + 0xac8]
call fcn.004116c0
test eax, eax
je 0x40815b
mov ecx, esi
call fcn.00407470
mov ecx, esi
call fcn.00403e40
lea edx, [esi + 0x44]
push edx
xor ebx, ebx
push ebx
push esi
push 0x4059b0
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreateThread]
lea edi, [esi + 0x24]
push edi
push str.Utility.dll
mov dword [esi + 0x40], eax
call fcn.00404180
add esp, 8
cmp eax, ebx
mov dword [esi + 0x20], eax
je 0x40815b
mov eax, dword [edi]
push eax
mov ecx, esi
call fcn.00404270
test eax, eax
je 0x40815b
mov eax, dword [edi]
lea edx, [esp + 0x14]
push edx
push str._bQ0_
mov dword [esp + 0x1c], ebx
mov ecx, dword [eax]
push eax
call dword [ecx]
mov eax, dword [esp + 0x14]
cmp eax, ebx
je 0x40813e
push eax
push str._bQ0_
mov ecx, 0x443880
call fcn.00411fc0
mov eax, dword [esp + 0x14]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
cmp dword [esi + 0x64], ebx
lea edi, [esi + 0x14]
push edi
je 0x408170
push str.TVUIV2.dll
call fcn.00404180
add esp, 8
cmp eax, ebx
mov dword [esi + 0x10], eax
jne 0x408184
xor eax, eax
mov ecx, dword [esp + 0x81c]
call fcn.00426448
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x434dfc
call fcn.00404180
add esp, 8
cmp eax, ebx
mov dword [esi + 0x10], eax
je 0x40815b
mov edx, dword [edi]
push edx
mov ecx, esi
call fcn.00404270
test eax, eax
je 0x40815b
mov edi, dword [edi]
lea ecx, [esp + 0x10]
push ecx
push 0x4337a8
mov dword [esp + 0x18], ebx
mov eax, dword [edi]
push edi
call dword [eax]
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x4081c4
mov edx, dword [eax]
push 0x443880
push eax
call dword [edx + 0xc]
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push ebx
call fcn.00418700
add esp, 4
test al, al
je 0x4081f2
push 0x434dec
push 0x17d
push str..TVSMain.cpp
push ebx
call fcn.00418720
add esp, 0xc
push eax
call fcn.00418950
add esp, 8
mov ecx, dword [esp + 0x81c]
mov eax, 1
call fcn.00426448
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret