Function at 0x450d70
Capabilities:
Read .ini file

Disassembly:
push 0xffffffffffffffff
push 0x589986
mov eax, dword fs:[0]
push eax
sub esp, 0x518
mov eax, dword [0x5f4760]
xor eax, esp
mov dword [esp + 0x514], eax
push ebx
push esi
push edi
mov eax, dword [0x5f4760]
xor eax, esp
push eax
lea eax, [esp + 0x528]
mov dword fs:[0], eax
mov esi, 0x5fe64c
mov dword [esp + 0x14], vtable.CAutoRWLock.0
mov dword [esp + 0x18], esi
mov byte [esp + 0x1c], 1
call fcn.00403d40
xor ebx, ebx
mov dword [esp + 0x530], ebx
push 0x3ff
lea eax, [esp + 0x129]
push ebx
push eax
mov byte [esp + 0x130], bl
call fcn.004add60
add esp, 0xc
push 0x104
lea ecx, [esp + 0x128]
push ecx
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea edx, [esp + 0x124]
push edx
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecA]
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x128]
call fcn.00402fe0
mov byte [esp + 0x530], 1
push str.360EntPublish.ini
lea ecx, [esp + 0x14]
push ecx
lea edx, [ebx + 0x12]
call fcn.00403150
push 0x103
lea edx, [esp + 0x25]
push ebx
push edx
mov byte [esp + 0x2c], bl
call fcn.004add60
mov eax, dword [esp + 0x1c]
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
add esp, 0xc
push eax
push 0x103
lea ecx, [esp + 0x28]
push ecx
push 0x5d2b98
push str.task
push 0x5d8a24
call esi
push str.libver
lea edi, [ebx + 7]
mov eax, 0x604688
call fcn.004033b0
lea eax, [esp + 0x20]
lea ecx, [eax + 1]
mov edi, edi
mov dl, byte [eax]
inc eax
cmp dl, bl
jne 0x450e90
lea edx, [esp + 0x20]
push edx
sub eax, ecx
push 0x604688
mov edx, eax
call fcn.00403150
mov eax, dword [esp + 0x10]
push eax
push 0x103
lea ecx, [esp + 0x28]
push ecx
push 0x5d2b98
push 0x5d8a34
push 0x5d8a24
call esi
push str.fver
push 0x604688
mov edx, 6
call fcn.00403150
lea eax, [esp + 0x20]
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
cmp dl, bl
jne 0x450ee5
lea edx, [esp + 0x20]
push edx
sub eax, ecx
push 0x604688
mov edx, eax
call fcn.00403150
mov eax, dword [esp + 0x10]
push eax
push 0x103
lea ecx, [esp + 0x28]
push ecx
push 0x5d2b98
push str.push
push 0x5d8a24
call esi
push str.pushver
push 0x604688
mov edx, 9
call fcn.00403150
lea eax, [esp + 0x20]
lea ecx, [eax + 1]
lea ebx, [ebx]
mov dl, byte [eax]
inc eax
cmp dl, bl
jne 0x450f40
lea edx, [esp + 0x20]
push edx
sub eax, ecx
push 0x604688
mov edx, eax
call fcn.00403150
mov eax, dword [esp + 0x10]
push eax
push 0x103
lea ecx, [esp + 0x28]
push ecx
push 0x5d2b98
push 0x5d8a54
push 0x5d8a24
call esi
push str.wsmain
push 0x604688
mov edx, 8
call fcn.00403150
lea eax, [esp + 0x20]
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
cmp dl, bl
jne 0x450f95
lea edx, [esp + 0x20]
push edx
sub eax, ecx
push 0x604688
mov edx, eax
call fcn.00403150
mov eax, dword [esp + 0x10]
push eax
push 0x103
lea ecx, [esp + 0x28]
push ecx
push 0x5d2b98
push 0x5d8870
push 0x5d8a24
call esi
push str.wslib
push 0x604688
mov edx, edi
call fcn.00403150
lea eax, [esp + 0x20]
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
cmp dl, bl
jne 0x450fe7
lea edx, [esp + 0x20]
push edx
sub eax, ecx
push 0x604688
mov edx, eax
call fcn.00403150
mov eax, dword [esp + 0x10]
push eax
push 0x103
lea ecx, [esp + 0x28]
push ecx
push 0x5d2b98
push 0x5d8a70
push 0x5d8a24
call esi
push str.sdmain
push 0x604688
mov edx, 8
call fcn.00403150
lea eax, [esp + 0x20]
lea ecx, [eax + 1]
lea esp, [esp]
mov dl, byte [eax]
inc eax
cmp dl, bl
jne 0x451040
lea edx, [esp + 0x20]
push edx
sub eax, ecx
push 0x604688
mov edx, eax
call fcn.00403150
mov eax, dword [esp + 0x10]
push eax
push 0x103
lea ecx, [esp + 0x28]
push ecx
push 0x5d2b98
push 0x5d8658
push 0x5d8a24
call esi
push str.bdlib
push 0x604688
mov edx, edi
call fcn.00403150
lea eax, [esp + 0x20]
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
cmp dl, bl
jne 0x451092
lea edx, [esp + 0x20]
push edx
sub eax, ecx
push 0x604688
mov edx, eax
call fcn.00403150
mov eax, dword [esp + 0x10]
push eax
push 0x103
lea ecx, [esp + 0x28]
push ecx
push 0x5d2b98
push 0x5d8a8c
push 0x5d8a24
call esi
push str.sdmain64
push 0x604688
mov edx, 0xa
call fcn.00403150
lea eax, [esp + 0x20]
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
cmp dl, bl
jne 0x4510e7
lea edx, [esp + 0x20]
push edx
sub eax, ecx
push 0x604688
mov edx, eax
call fcn.00403150
mov eax, dword [esp + 0x10]
push eax
push 0x103
lea ecx, [esp + 0x28]
push ecx
push 0x5d2b98
push 0x5d8660
push 0x5d8a24
call esi
push str.bdlib64
push 0x604688
mov edx, 9
call fcn.00403150
lea eax, [esp + 0x20]
lea ecx, [eax + 1]
lea esp, [esp]
mov dl, byte [eax]
inc eax
cmp dl, bl
jne 0x451140
lea edx, [esp + 0x20]
push edx
sub eax, ecx
push 0x604688
mov edx, eax
call fcn.00403150
test byte [0x604dd8], 1
jne 0x451191
or dword [0x604dd8], 1
mov byte [esp + 0x530], 2
push 0x604dd4
call fcn.004030f0
push 0x591000
call fcn.004a444f
add esp, 4
mov byte [esp + 0x530], 1
mov eax, dword [0x604688]
xor ecx, ecx
cmp eax, ebx
setne cl
cmp ecx, ebx
jne 0x4511ab
push 0x80004005
call fcn.00401e70
push eax
mov eax, dword [0x604dd4]
push eax
call fcn.004a47ba
add esp, 8
mov eax, 0x604688
mov ebx, 0x604dd4
call fcn.00406760
mov byte [esp + 0x530], 0
lea ecx, [esp + 0x10]
push ecx
call fcn.00403090
mov dword [esp + 0x530], 0xffffffff
push 0x5fe654
mov dword [esp + 0x18], vtable.CAutoRWLock.0
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
mov edx, dword [0x5fe670]
push edx
call dword [sym.imp.KERNEL32.dll_SetEvent]
push 0x5fe658
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ecx, dword [esp + 0x528]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x514]
xor ecx, esp
call fcn.004a314d
add esp, 0x524
ret