Function at 0x401560
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x403fa0
mov eax, dword fs:[0]
push eax
sub esp, 0x24c
mov eax, dword [0x408040]
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 edi, ecx
lea eax, [ebp - 0x224]
mov dword [ebp - 0x224], 8
push eax
mov dword [ebp - 0x220], 0xff
call dword [sym.imp.COMCTL32.dll_InitCommonControlsEx]
mov ecx, edi
call dword [sym.imp.mfc140.dll_Ordinal_7961]
lea ecx, [ebp - 0x258]
call dword [sym.imp.mfc140.dll_Ordinal_366]
mov dword [ebp - method.CEncoderServerCommandLineInfo.virtual_0], vtable.CEncoderServerCommandLineInfo.0
mov dword [ebp - 0x22c], 0
mov dword [ebp - 0x228], 0
lea eax, [ebp - 0x258]
mov dword [ebp - 4], 0
push eax
mov ecx, edi
call dword [sym.imp.mfc140.dll_Ordinal_11972]
push str.EncoderServerConnectWnd
push 0
call dword [sym.imp.USER32.dll_FindWindowA]
cmp dword [ebp - 0x228], 0
je 0x401656
test eax, eax
je 0x401620
push 0
push 0
push 0x12
push eax
call dword [sym.imp.USER32.dll_PostMessageA]
xor esi, esi
lea ecx, [ebp - 0x258]
mov dword [ebp - method.CEncoderServerCommandLineInfo.virtual_0], vtable.CEncoderServerCommandLineInfo.0
call dword [sym.imp.mfc140.dll_Ordinal_1070]
mov eax, esi
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.00403124
mov esp, ebp
pop ebp
ret
cmp dword [ebp - 0x22c], 0
je 0x401620
push 0x4057d4
push 0x20
push 0
push 2
push 0
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_CreateFileMappingA]
mov dword [0x408804], eax
test eax, eax
je 0x40168a
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
je 0x401620
mov ebx, dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
push 0x104
push 0x408808
push 0
call ebx
push 0x408808
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecA]
push str.EncoderServer.cfg
push 0x104
push 0x408808
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcat_s]
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
add esp, 0xc
push 0x408808
push 0
push str.EnableLog
push str.Debug
call esi
xor ecx, ecx
test eax, eax
setne cl
mov dword [0x4081a8], ecx
test eax, eax
je 0x40184a
push 0x104
push 0x408700
push 0
call ebx
push str..log
push 0x408700
call dword [sym.imp.SHLWAPI.dll_PathRenameExtensionA]
push 0x408700
push 0x104
push 0x408094
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcpy_s]
add esp, 0xc
mov dword [0x408198], 3
push 0x408808
push 0
push str.LogBufferSize
push str.Debug
call esi
mov esi, eax
mov eax, dword [0x4081a0]
test eax, eax
je 0x40176b
push eax
call dword [sym.imp.mfc140.dll_Ordinal_266]
add esp, 4
mov dword [0x4081a0], 0
mov dword [0x4081a4], 0
test esi, esi
je 0x40178d
push esi
call dword [sym.imp.mfc140.dll_Ordinal_265]
push esi
push 0
push eax
mov dword [0x4081a0], eax
mov dword [0x4081a4], esi
call sub.VCRUNTIME140.dll_memset
add esp, 0x10
push 0x104
lea eax, [ebp - 0x114]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push str._08X__08X
lea eax, [ebp - 0x114]
push 0x104
push eax
call fcn.00401bd0
add esp, 0x14
lea eax, [ebp - 0x114]
mov ecx, 0x4081ac
push str.ConnectThread
push eax
call dword [sym.imp.mfc140.dll_Ordinal_1655]
mov ecx, eax
call dword [sym.imp.mfc140.dll_Ordinal_1529]
push 0x104
lea eax, [ebp - 0x218]
push eax
push 0
call ebx
lea edx, [ebp - 0x218]
lea ecx, [ebp - 0x21c]
call fcn.004018e0
push dword [eax]
lea eax, [ebp - 0x110]
push str.Init
push str.__16s_:_EncoderServer_v_s_started
push 0x100
push eax
call fcn.00401bd0
add esp, 0x14
lea ecx, [ebp - 0x21c]
call dword [sym.imp.mfc140.dll_Ordinal_1044]
push 0
push ecx
lea eax, [ebp - 0x110]
mov ecx, 0x408090
push eax
call fcn.004028c0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x80000000
push str.EncoderServerConnectWnd
push 0
push 0
push 0x7f00
push 0
call dword [sym.imp.USER32.dll_LoadCursorA]
push eax
push 0
call dword [sym.imp.mfc140.dll_Ordinal_2344]
push eax
push 0
mov ecx, 0x408a28
call dword [sym.imp.mfc140.dll_Ordinal_3364]
test eax, eax
je 0x401620
mov dword [edi + 0x20], 0x408a28
mov esi, 1
jmp 0x401622