Function at 0x40ecc0
Capabilities:
Check mutex on windows
Get common file path
Set current directory
Set environment variable

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4fffac
mov eax, dword fs:[0]
push eax
sub esp, 0x2b8
mov eax, dword [0x567e00]
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 eax, dword [ebp + 8]
mov esi, dword [ebp + 0x1c]
mov dword [ebp - 0x2c0], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x2b8], eax
mov eax, dword [ebp + 0x18]
push 0x516cf0
mov dword [ebp - 0x2bc], eax
mov dword [ebp - 0x2c4], 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test esi, esi
je 0x40edf5
mov edi, eax
xor ebx, ebx
test edi, edi
je 0x40ed51
push str.SetDllDirectoryW
push edi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x40ed46
push esi
call eax
mov ebx, eax
push edi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
test ebx, ebx
jne 0x40ed58
push esi
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
push 0x20a
lea eax, [ebp - 0x21c]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea eax, [ebp - 0x21c]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
lea eax, [ebp - 0x21c]
push eax
push esi
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
add esp, 8
test eax, eax
je 0x40ee59
lea eax, [ebp - 0x24c]
push 2
push eax
call fcn.00417040
add esp, 8
cmp dword [eax + 0x14], 8
jb 0x40edb2
mov eax, dword [eax]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
mov edx, dword [ebp - 0x238]
cmp edx, 8
jb 0x40ee59
mov ecx, dword [ebp - 0x24c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40ee4f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x40ee4f
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
mov ebx, dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
mov esi, eax
xor edi, edi
test esi, esi
je 0x40ee27
push str.SetDllDirectoryW
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x40ee1c
push 0x516c74
call eax
mov edi, eax
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
test edi, edi
jne 0x40ee2e
push 0x516c74
call ebx
lea eax, [ebp - 0x24c]
push 2
push eax
call fcn.00417040
add esp, 8
cmp dword [eax + 0x14], 8
jb 0x40ee47
mov eax, dword [eax]
push eax
call ebx
jmp 0x40edb9
push edx
push ecx
call fcn.004c6f6f
add esp, 8
lea eax, [ebp - 0x234]
push 7
push eax
call fcn.00417040
add esp, 8
cmp dword [ebp - 0x224], 0
je 0x40ee93
cmp dword [ebp - 0x220], 8
lea eax, [ebp - 0x234]
cmovae eax, dword [ebp - 0x234]
push eax
push str.WPS_OFFICE6_ROOT_DIR
call dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
mov edx, dword [ebp - 0x220]
cmp edx, 8
jb 0x40eed3
mov ecx, dword [ebp - 0x234]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40eec9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40edef
push edx
push ecx
call fcn.004c6f6f
add esp, 8
mov dword [ebp - 0x2b4], 0
call fcn.0040fe40
push 0x43
xor eax, eax
mov dword [ebp - 0x234], 0
push str.HKCUSoftwareKingsoftOffice6.0CommonupdateinfocacheStatusInfo
lea ecx, [ebp - 0x234]
mov dword [ebp - 0x224], 0
mov dword [ebp - 0x220], 7
mov word [ebp - 0x234], ax
call fcn.00403a70
push str.RunningPid
lea eax, [ebp - 0x234]
mov dword [ebp - 4], 0
push eax
lea eax, [ebp - 0x264]
push eax
call fcn.0040e0e0
add esp, 0xc
mov edx, dword [ebp - 0x220]
mov byte [ebp - 4], 2
cmp edx, 8
jb 0x40ef81
mov ecx, dword [ebp - 0x234]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40ef77
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40edef
push edx
push ecx
call fcn.004c6f6f
add esp, 8
xor eax, eax
mov dword [ebp - 0x224], 0
mov dword [ebp - 0x220], 7
mov word [ebp - 0x234], ax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
cmp dword [ebp - 0x250], 8
lea ecx, [ebp - 0x264]
push 0
cmovae ecx, dword [ebp - 0x264]
push eax
push ecx
call fcn.0044d470
mov edx, dword [ebp - 0x250]
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
cmp edx, 8
jb 0x40f00b
mov ecx, dword [ebp - 0x264]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40f001
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40edef
push edx
push ecx
call fcn.004c6f6f
add esp, 8
call fcn.0040e890
push dword [ebp - 0x2bc]
push dword [ebp - 0x2c0]
call fcn.0041d3a0
mov ebx, dword [ebp - 0x2b8]
push ebx
push str.kupdate::Execute_cmd__s_
push str.kupdate::Execute
push 0xf9
push str.D:_rc_bug_mas_v12_2408Coding_supportwpsupdateUpdateClient_srcwpsupdateimpl.cpp
push 4
call fcn.00412230
add esp, 0x20
call fcn.00410210
push 1
push ebx
mov ecx, eax
call fcn.004137c0
mov edi, eax
call fcn.00410170
mov ecx, eax
call fcn.00447ee0
test eax, eax
je 0x40f137
call fcn.00410210
push dword [0x522b64]
mov ecx, eax
call fcn.004136a0
test al, al
jne 0x40f099
call fcn.00410210
push dword [0x522b4c]
mov ecx, eax
push dword [0x522b64]
call fcn.004147d0
call fcn.00410210
push dword [0x522b84]
mov ecx, eax
call fcn.004136a0
test al, al
jne 0x40f137
call fcn.00410210
mov esi, eax
call fcn.00410210
push dword [0x522b64]
lea ecx, [ebp - 0x24c]
push ecx
mov ecx, eax
call fcn.00413540
cmp dword [eax + 0x14], 8
mov dword [ebp - 4], 3
jb 0x40f0e2
mov eax, dword [eax]
push eax
push dword [0x522b84]
mov ecx, esi
call fcn.004147d0
mov edx, dword [ebp - 0x238]
mov dword [ebp - 4], 0xffffffff
cmp edx, 8
jb 0x40f137
mov ecx, dword [ebp - 0x24c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40f12d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40edef
push edx
push ecx
call fcn.004c6f6f
add esp, 8
mov eax, dword fs:[0x2c]
mov ecx, dword [0x56d69c]
mov esi, dword [eax + ecx*4]
mov eax, dword [0x56c494]
cmp eax, dword [esi + 4]
jg 0x40f982
push 1
mov ecx, 0x56c490
call fcn.0044ee30
mov eax, dword [0x56c4d4]
cmp eax, dword [esi + 4]
jg 0x40f9d0
test edi, edi
js 0x40f43e
call fcn.0043c050
test al, al
jne 0x40f42f
call fcn.004e2050
test al, al
mov edx, str.Global_UPD_Session_MutexName_WpsPdf
mov ecx, str.Global_UPD_Session_MutexName_
cmovne ecx, edx
push ecx
push 0
push 0
mov dword [ebp - 0x2b8], ecx
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov esi, eax
mov dword [ebp - 0x2c0], esi
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 4], 6
test esi, esi
je 0x40f1dd
cmp esi, 0xffffffff
je 0x40f1dd
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x40f2a6
call fcn.00410210
push dword [0x522bb0]
mov ecx, eax
call fcn.004136a0
test al, al
jne 0x40f20d
call fcn.00410210
push dword [0x522c0c]
mov ecx, eax
call fcn.004136a0
test al, al
je 0x40f298
mov ebx, 4
push ebx
push str.Try_wait_mutex__d_.
push str._anonymous_namespace::CreateUpdateMutex
push 0x5f
push str.D:_rc_bug_mas_v12_2408Coding_supportwpsupdateUpdateClient_srcwpsupdateimpl.cpp
push 7
call fcn.00412230
add esp, 0x18
test esi, esi
je 0x40f23a
cmp esi, 0xffffffff
je 0x40f23a
push esi
call edi
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
push dword [ebp - 0x2b8]
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov edi, eax
cmp edi, esi
je 0x40f273
test esi, esi
je 0x40f26b
cmp esi, 0xffffffff
je 0x40f26b
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov esi, edi
mov dword [ebp - 0x2c0], esi
test esi, esi
je 0x40f289
cmp esi, 0xffffffff
je 0x40f289
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x40f2a6
sub ebx, 1
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
jns 0x40f212
test esi, esi
je 0x40f2a4
cmp esi, 0xffffffff
je 0x40f2a4
push esi
call edi
xor esi, esi
mov dword [ebp - 0x2b8], esi
mov dword [ebp - 4], 7
test esi, esi
je 0x40f2c0
cmp esi, 0xffffffff
jne 0x40f393
call fcn.00410210
push dword [0x522c14]
mov ecx, eax
call fcn.004136a0
test al, al
jne 0x40f393
push dword [0x522c64]
push 0
push 2
call dword [sym.imp.KERNEL32.dll_OpenEventW]
mov edi, dword [sym.imp.KERNEL32.dll_SetEvent]
mov ebx, eax
test ebx, ebx
je 0x40f326
lea ecx, [ebp - 0x2ad]
call fcn.0040e7a0
test al, al
je 0x40f326
push str.Another_instance_of_wpsupdate_is_running_set_event.
push str.kupdate::Execute
push 0x111
push str.D:_rc_bug_mas_v12_2408Coding_supportwpsupdateUpdateClient_srcwpsupdateimpl.cpp
push 4
call fcn.00412230
add esp, 0x14
push ebx
call edi
push dword [0x522c68]
push 0
push 2
call dword [sym.imp.KERNEL32.dll_OpenEventW]
mov ebx, eax
test ebx, ebx
je 0x40f36c
lea ecx, [ebp - 0x2ad]
call fcn.0040e7a0
test al, al
je 0x40f36c
push str.Another_instance_of_wpsupdate_is_running_set_hShowUIEvent.
push str.kupdate::Execute
push 0x118
push str.D:_rc_bug_mas_v12_2408Coding_supportwpsupdateUpdateClient_srcwpsupdateimpl.cpp
push 4
call fcn.00412230
add esp, 0x14
push ebx
call edi
push str.Another_instance_of_wpsupdate_is_running__exit.
push str.kupdate::Execute
push 0x11c
push str.D:_rc_bug_mas_v12_2408Coding_supportwpsupdateUpdateClient_srcwpsupdateimpl.cpp
push 4
call fcn.00412230
mov dword [ebp - 0x2b4], 0xffffffff
jmp 0x40f408
push 0
lea eax, [ebp - 0x2bc]
mov dword [ebp - 0x2bc], 0
push eax
push str.HKCUSoftwareKingsoftOffice6.0CommonupdateinfoDbgBanUpdEnable
call fcn.0044cd70
add esp, 0xc
cmp dword [ebp - 0x2bc], 0
jne 0x40f3ed
lea ecx, [ebp - 0xa4]
call fcn.00423800
lea eax, [ebp - 0xa4]
mov byte [ebp - 4], 8
push eax
call fcn.0041ebf0
add esp, 4
mov dword [ebp - 0x2b4], eax
lea ecx, [ebp - 0xa4]
call fcn.00423be0
jmp 0x40f40b
push str.wpsupdate_is_banned__skip_run
push str.kupdate::Execute
push 0x12a
push str.D:_rc_bug_mas_v12_2408Coding_supportwpsupdateUpdateClient_srcwpsupdateimpl.cpp
push 4
call fcn.00412230
add esp, 0x14
mov dword [ebp - 4], 0xffffffff
test esi, esi
je 0x40f51d
cmp esi, 0xffffffff
je 0x40f51d
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x40f51d
mov dword [ebp - 0x2b4], 1
jmp 0x40f51d
push ebx
push str.Faild_parse_command_line:__s.
push str.kupdate::Execute
push 0x135
push str.D:_rc_bug_mas_v12_2408Coding_supportwpsupdateUpdateClient_srcwpsupdateimpl.cpp
push 0
call fcn.00412230
mov eax, dword [0x56baa4]
add esp, 0x18
cmp eax, dword [esi + 4]
jg 0x40fa1e
mov ecx, ebx
mov dword [ebp - 0x234], 0
xor eax, eax
mov dword [ebp - 0x224], 0
mov dword [ebp - 0x220], 7
mov word [ebp - 0x234], ax
lea edx, [ecx + 2]
lea ebx, [ebx]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40f4a0
sub ecx, edx
sar ecx, 1
push ecx
push ebx
lea ecx, [ebp - 0x234]
call fcn.00403a70
lea eax, [ebp - 0x234]
mov dword [ebp - 4], 9
push eax
push 1
mov ecx, 0x56baa0
call fcn.00412e90
mov edx, dword [ebp - 0x220]
mov dword [ebp - 4], 0xffffffff
cmp edx, 8
jb 0x40f51d
mov ecx, dword [ebp - 0x234]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40f513
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40edef
push edx
push ecx
call fcn.004c6f6f
add esp, 8
call fcn.00410210
push dword [0x522b9c]
mov ecx, eax
call fcn.004136a0
test al, al
je 0x40f594
mov esi, dword [str.onkso]
call fcn.00410210
push dword [0x522b9c]
lea ecx, [ebp - 0x24c]
push ecx
mov ecx, eax
call fcn.00413540
mov ecx, esi
mov dword [ebp - 0x2c4], 1
mov edx, eax
lea edi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40f563
mov eax, dword [edx + 0x10]
sub ecx, edi
sar ecx, 1
cmp dword [edx + 0x14], 8
jb 0x40f57d
mov edx, dword [edx]
cmp eax, ecx
jne 0x40f594
push eax
push esi
push edx
call fcn.00411a20
add esp, 0xc
test eax, eax
jne 0x40f594
mov bl, 1
jmp 0x40f596
xor bl, bl
test byte [ebp - 0x2c4], 1
je 0x40f5df
mov edx, dword [ebp - 0x238]
cmp edx, 8
jb 0x40f5df
mov ecx, dword [ebp - 0x24c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40f5d5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40edef
push edx
push ecx
call fcn.004c6f6f
add esp, 8
test bl, bl
je 0x40f5ec
call fcn.0041f980
test al, al
je 0x40f5f1
call fcn.0041f190
call fcn.00410210
push dword [0x522b98]
lea ecx, [ebp - 0x24c]
push ecx
mov ecx, eax
call fcn.00413540
mov esi, eax
push 0x40
xor eax, eax
mov dword [ebp - 0x234], 0
push str.HKCUSoftwareKingsoftOffice6.0CommonupdateinfoExecuteState
lea ecx, [ebp - 0x234]
mov dword [ebp - 4], 0xa
mov dword [ebp - 0x224], 0
mov dword [ebp - 0x220], 7
mov word [ebp - 0x234], ax
call fcn.00403a70
push 0x516d0c
lea eax, [ebp - 0x234]
mov byte [ebp - 4], 0xb
push eax
lea eax, [ebp - 0x264]
push eax
call fcn.0040e0e0
add esp, 0xc
push esi
push eax
push dword [ebp - 0x2b8]
lea ecx, [ebp - 0x2ac]
mov byte [ebp - 4], 0xc
call fcn.0040e520
mov edx, dword [ebp - 0x250]
mov byte [ebp - 4], 0xe
cmp edx, 8
jb 0x40f6c6
mov ecx, dword [ebp - 0x264]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40f6bc
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40edef
push edx
push ecx
call fcn.004c6f6f
add esp, 8
xor eax, eax
mov dword [ebp - 0x254], 0
mov dword [ebp - 0x250], 7
mov word [ebp - 0x264], ax
mov edx, dword [ebp - 0x220]
mov byte [ebp - 4], 0xf
cmp edx, 8
jb 0x40f727
mov ecx, dword [ebp - 0x234]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40f71d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40edef
push edx
push ecx
call fcn.004c6f6f
add esp, 8
xor eax, eax
mov dword [ebp - 0x224], 0
mov dword [ebp - 0x220], 7
mov word [ebp - 0x234], ax
mov edx, dword [ebp - 0x238]
mov byte [ebp - 4], 0x10
cmp edx, 8
jb 0x40f788
mov ecx, dword [ebp - 0x24c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40f77e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40edef
push edx
push ecx
call fcn.004c6f6f
add esp, 8
xor eax, eax
mov dword [ebp - 0x23c], 0
cmp dword [ebp - 0x298], 8
mov word [ebp - 0x24c], ax
lea eax, [ebp - 0x2ac]
cmovae eax, dword [ebp - 0x2ac]
push 0
push eax
mov dword [ebp - 0x238], 7
call fcn.0044c820
add esp, 8
mov dword [ebp - 0x27c], 0
xor eax, eax
mov dword [ebp - 0x26c], 0
lea ecx, [ebp - 0x27c]
mov dword [ebp - 0x268], 7
mov word [ebp - 0x27c], ax
push 0x43
push str.HKCUSoftwareKingsoftOffice6.0CommonupdateinfocacheStatusInfo
call fcn.00403a70
push str.RunningPid
lea eax, [ebp - 0x27c]
mov byte [ebp - 4], 0x11
push eax
lea eax, [ebp - 0x294]
push eax
call fcn.0040e0e0
add esp, 0xc
mov edx, dword [ebp - 0x268]
mov byte [ebp - 4], 0x13
cmp edx, 8
jb 0x40f860
mov ecx, dword [ebp - 0x27c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40f856
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40edef
push edx
push ecx
call fcn.004c6f6f
add esp, 8
xor eax, eax
mov dword [ebp - 0x26c], 0
cmp dword [ebp - 0x280], 8
mov word [ebp - 0x27c], ax
lea eax, [ebp - 0x294]
cmovae eax, dword [ebp - 0x294]
push 0
push eax
mov dword [ebp - 0x268], 7
call fcn.0044c820
mov edx, dword [ebp - 0x280]
add esp, 8
mov byte [ebp - 4], 0x10
cmp edx, 8
jb 0x40f8e0
mov ecx, dword [ebp - 0x294]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40f8d6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40edef
push edx
push ecx
call fcn.004c6f6f
add esp, 8
call fcn.0044ff30
push str.Update_Exit.
push str.kupdate::Execute
push 0x149
push str.D:_rc_bug_mas_v12_2408Coding_supportwpsupdateUpdateClient_srcwpsupdateimpl.cpp
push 4
call fcn.00412230
add esp, 0x14
call fcn.00410170
mov ecx, eax
call fcn.00447730
mov esi, dword [ebp - 0x2b4]
test eax, eax
je 0x40f922
push esi
call fcn.004104a0
add esp, 4
mov edx, dword [ebp - 0x298]
cmp edx, 8
jb 0x40f962
mov ecx, dword [ebp - 0x2ac]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40f958
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40edef
push edx
push ecx
call fcn.004c6f6f
add esp, 8
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.004c6f8b
mov esp, ebp
pop ebp
ret 0x18
push 0x56c494
call fcn.004c7345
add esp, 4
cmp dword [0x56c494], 0xffffffff
jne 0x40f157
mov ecx, 0x56c490
mov dword [ebp - 4], 4
call fcn.0044e090
push 0x511340
call fcn.004c71fd
push 0x56c494
mov dword [ebp - 4], 0xffffffff
call fcn.004c72fb
add esp, 8
jmp 0x40f157
push 0x56c4d4
call fcn.004c7345
add esp, 4
cmp dword [0x56c4d4], 0xffffffff
jne 0x40f174
mov ecx, 0x56c4ac
mov dword [ebp - 4], 5
call fcn.00450df0
push 0x511360
call fcn.004c71fd
push 0x56c4d4
mov dword [ebp - 4], 0xffffffff
call fcn.004c72fb
add esp, 8
jmp 0x40f174
push 0x56baa4
call fcn.004c7345
add esp, 4
cmp dword [0x56baa4], 0xffffffff
jne 0x40f46e
push 0x511350
mov byte [0x56baa0], 0
call fcn.004c71fd
push 0x56baa4
call fcn.004c72fb
add esp, 8
jmp 0x40f46e