Function at 0x10026780
Capabilities:
Accept command line arguments

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1010b28d
mov eax, dword fs:[0]
push eax
sub esp, 0x230
mov eax, dword [0x1015746c]
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 ebx, dword [ebp + 0x10]
push 0
mov dword [ebp - 0x238], ebx
call dword [sym.imp.ole32.dll_CoInitialize]
push 0
push 0
push 0
push 0
call dword [sym.imp.USER32.dll_DefWindowProcW]
lea eax, [ebp - 0x230]
mov dword [ebp - 0x230], 8
push eax
mov dword [ebp - 0x22c], 4
call dword [sym.imp.COMCTL32.dll_InitCommonControlsEx]
call fcn.10036290
push 0x1011b928
push 0
call fcn.100c2bf6
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
push 0x1011b92c
call fcn.1002ac70
add esp, 8
mov ecx, 0x1015e6e0
push 0
push dword [0x1015e6c4]
push 0
call fcn.10025fe0
lea ecx, [ebp - 0x23c]
mov dword [ebp - 0x234], 0
call fcn.10006930
mov dword [ebp - 4], 0
call fcn.10025f00
mov ecx, eax
call fcn.100633d0
mov eax, dword [0x1015e764]
test al, 1
jne 0x10026882
or eax, 1
mov dword [0x1015e764], eax
mov ecx, 0x1015e760
mov byte [ebp - 4], 1
call fcn.100320f0
push 0x10115a80
call fcn.10068844
add esp, 4
mov byte [ebp - 4], 0
mov ecx, 0x1015e760
call fcn.10032140
push ebx
call fcn.10025e70
mov ecx, eax
call fcn.1001b5b0
push ebx
push str.lpstrCmdLine_s
call fcn.1002ac70
add esp, 8
call fcn.10036290
mov edi, eax
push edi
mov eax, dword [edi]
call dword [eax]
test eax, eax
jne 0x1002692c
mov eax, dword [edi]
lea ecx, [ebp - 0x218]
push ecx
push str.DLL_NETUL
push 0xcc
push dword [0x1015e6c4]
push edi
call dword [eax + 8]
test eax, eax
jne 0x100268e7
push str.InitCloudConfig_failed.
call fcn.1002ac70
add esp, 4
jmp 0x1002692c
push str.InitCloudConfig_success.
call fcn.1002ac70
lea eax, [ebp - 0x218]
mov dword [ebp - 0x224], esp
mov ecx, esp
push eax
call fcn.10003e60
mov byte [ebp - 4], 2
call fcn.10025e70
mov ecx, eax
mov byte [ebp - 4], 0
call fcn.1001b4d0
mov esi, dword [edi]
call fcn.10025e70
mov ecx, eax
call fcn.1001cf00
push eax
push edi
call dword [esi + 0x50]
call fcn.10025e70
mov ecx, eax
call fcn.1001cf00
push eax
call fcn.10031ae0
call fcn.10014be0
test eax, eax
je 0x10026b1e
push str.xp_sp2
call fcn.1002ac70
add esp, 4
push 0
push 0x1011b984
push 0
call fcn.10031af0
mov ebx, dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [0x1015e764]
test al, 1
jne 0x100269a2
or eax, 1
mov dword [0x1015e764], eax
mov ecx, 0x1015e760
mov byte [ebp - 4], 0x20
call fcn.100320f0
push 0x10115a80
call fcn.10068844
add esp, 4
mov byte [ebp - 4], 0
mov ecx, 0x1015e760
call fcn.10032520
call fcn.10025f00
mov ecx, eax
call fcn.10063540
call fcn.10036bb0
push 0x5dc
call edi
mov ecx, 0x1015e71c
call fcn.10007680
mov edi, dword [0x1015e6d4]
add edi, 0x10
push edi
call ebx
mov esi, dword [0x1015e718]
test esi, esi
je 0x10026a2c
cmp dword [esi + 4], 0
jle 0x100269fa
mov eax, dword [esi]
push dword [eax]
call dword [sym.imp.USER32.dll_DestroyWindow]
mov esi, dword [0x1015e718]
test esi, esi
je 0x10026a2c
mov eax, dword [esi]
test eax, eax
je 0x10026a13
push eax
call fcn.100b1b53
add esp, 4
mov dword [esi], 0
push 0xc
push esi
mov dword [esi + 4], 0
mov dword [esi + 8], 0
call fcn.10068449
add esp, 8
push edi
mov dword [0x1015e718], 0
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov esi, dword [0x1015e714]
test esi, esi
je 0x10026a85
mov eax, dword [esi]
test eax, eax
je 0x10026a5c
push eax
call fcn.100b1b53
add esp, 4
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x10026a73
push eax
call fcn.100b1b53
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
mov dword [esi + 8], 0
call fcn.10068449
add esp, 8
mov esi, dword [0x1015e70c]
test esi, esi
je 0x10026ab7
cmp dword [esi], 0
je 0x10026ab7
mov ecx, dword [esi + 0x10]
test ecx, ecx
je 0x10026aa1
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov eax, dword [esi + 0x20]
push 0
mov dword [esi + 0x10], 0
call eax
add esi, 0x24
cmp dword [esi], 0
jne 0x10026a94
mov esi, dword [0x101560c8]
mov ecx, dword [0x101560cc]
cmp esi, ecx
jae 0x10026ae1
mov eax, dword [esi]
test eax, eax
je 0x10026ada
mov eax, dword [eax + 0x1c]
push 0
call eax
mov ecx, dword [0x101560cc]
add esi, 4
cmp esi, ecx
jb 0x10026ac7
mov ecx, 0x1015e6e0
call fcn.10028f10
call dword [sym.imp.ole32.dll_CoUninitialize]
lea ecx, [ebp - 0x23c]
call fcn.10006970
mov eax, dword [ebp - 0x234]
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.10068438
mov esp, ebp
pop ebp
ret
cmp dword [0x10155d44], 0
je 0x10026bcb
push str.ntdll.dll
mov dword [ebp - 0x21c], 0
xor edi, edi
mov dword [ebp - 0x224], 0
mov dword [ebp - 0x220], 0
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov esi, eax
test esi, esi
je 0x10026bc1
push str.RtlGetNtVersionNumbers
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x10026b95
lea ecx, [ebp - 0x220]
push ecx
lea ecx, [ebp - 0x224]
push ecx
lea ecx, [ebp - 0x21c]
push ecx
call eax
movzx eax, word [ebp - 0x220]
mov edi, 1
mov dword [ebp - 0x220], eax
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
test edi, edi
je 0x10026bc1
cmp dword [ebp - 0x21c], 5
jne 0x10026bc1
mov eax, dword [0x1015bd1c]
mov ecx, 1
cmp dword [ebp - 0x224], ecx
cmove eax, ecx
mov dword [0x1015bd1c], eax
mov dword [0x10155d44], 0
cmp dword [0x1015bd1c], 0
je 0x10026bed
push str.system_is_xp_return
call fcn.1002ac70
add esp, 4
push 0
push str.S_MR
jmp 0x1002695f
mov ecx, 0x1015e71c
call fcn.10007060
test eax, eax
jne 0x10026c14
push str.CheckSingleInstance_failed__exit
call fcn.1002ac70
add esp, 4
push 0
push 0x1011ba3c
jmp 0x1002695f
call fcn.10004dc0
mov ecx, eax
test ecx, ecx
je 0x1002757b
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x228], eax
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 3
push eax
call fcn.100255b0
mov edi, eax
add esp, 4
test edi, edi
jg 0x10026d71
jns 0x10026c5e
push 0
push 0x1011ba58
push 0
call fcn.10031af0
call fcn.10025e70
mov ecx, eax
call fcn.1001cd00
mov esi, eax
lea eax, [ebp - 0x21c]
push eax
call fcn.10025e70
mov ecx, eax
call fcn.1001b220
mov byte [ebp - 4], 4
test esi, esi
jne 0x10026d25
call fcn.10036290
lea ecx, [ebp - 0x228]
push ecx
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x54]
call fcn.10036290
push ecx
mov esi, eax
lea ecx, [ebp - 0x228]
mov eax, esp
push 0x1011ba74
push ecx
push eax
call fcn.10024b80
mov eax, dword [esi]
add esp, 0xc
mov ecx, esi
call dword [eax + 0x58]
mov eax, dword [ebp - 0x21c]
cmp dword [eax - 4], 1
jle 0x10026ce4
push dword [eax - 0xc]
lea ecx, [ebp - 0x21c]
call fcn.10004d10
mov eax, dword [ebp - 0x21c]
push eax
push str.RunApp_cmdLine:__s
call fcn.1002ac70
add esp, 8
call fcn.10036290
mov esi, eax
mov eax, dword [ebp - 0x21c]
cmp dword [eax - 4], 1
jle 0x10026d19
push dword [eax - 0xc]
lea ecx, [ebp - 0x21c]
call fcn.10004d10
mov eax, dword [ebp - 0x21c]
mov ecx, dword [esi]
push eax
push 0x1011bacc
push esi
call dword [ecx + 0x3c]
mov edx, dword [ebp - 0x21c]
or esi, 0xffffffff
mov byte [ebp - 4], 3
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10026d49
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x228]
mov byte [ebp - 4], 0
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], esi
dec esi
test esi, esi
jg 0x10026966
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x10026966
call fcn.10025e70
mov ecx, eax
call fcn.1001b200
push eax
call fcn.100111f0
mov ecx, eax
call fcn.1000df10
push str.installpkg
call fcn.100111f0
mov ecx, eax
call fcn.1000df80
push 0x208
lea eax, [ebp - 0x218]
push 0
push eax
call fcn.10094f30
add esp, 0xc
lea eax, [ebp - 0x218]
push 0x104
push eax
push dword [0x1015e6c4]
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea eax, [ebp - 0x218]
push eax
call fcn.100111f0
mov ecx, eax
call fcn.1000de80
sub esp, 0x28
mov eax, esp
mov dword [ebp - 0x224], esp
mov dword [eax + 0x24], 0
mov ecx, dword [0x1015bce4]
mov byte [ebp - 4], 5
test ecx, ecx
jne 0x10026e56
push 0x10155d2c
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [0x1015bce4], 0
jne 0x10026e45
push 0x20
call fcn.10032a80
add esp, 4
mov dword [ebp - 0x220], eax
mov byte [ebp - 4], 6
test eax, eax
je 0x10026e33
mov ecx, eax
call fcn.1000ccf0
mov ecx, eax
jmp 0x10026e35
xor ecx, ecx
mov byte [ebp - 4], 5
xchg dword [ebp - 0x224], eax
mov dword [0x1015bce4], ecx
push 0x10155d2c
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ecx, dword [0x1015bce4]
push 0
push 0
push 0x1011bae8
mov byte [ebp - 4], 3
call fcn.1000db70
or esi, 0xffffffff
cmp edi, 2
jne 0x1002748e
push 0x1015e768
call fcn.1001a5d0
push ecx
mov ebx, esp
mov dword [ebp - 0x224], esp
mov edi, eax
mov dword [ebp - 0x220], ebx
call fcn.10004dc0
mov ecx, eax
test ecx, ecx
je 0x10027585
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebx], eax
push edi
mov ecx, ebx
mov byte [ebp - 4], 7
call fcn.10004190
test al, al
jne 0x10026edd
test edi, edi
jne 0x10026ec0
xor ecx, ecx
jmp 0x10026ed4
mov ecx, edi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10026ec5
sub ecx, edx
sar ecx, 1
push ecx
push edi
mov ecx, ebx
call fcn.10005580
mov byte [ebp - 4], 8
call fcn.1001a5d0
push ecx
mov ebx, esp
mov edi, eax
mov dword [ebp - 0x220], ebx
call fcn.10004dc0
mov ecx, eax
test ecx, ecx
je 0x1002758f
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebx], eax
push edi
mov ecx, ebx
mov byte [ebp - 4], 9
call fcn.10004190
test al, al
jne 0x10026f3f
test edi, edi
jne 0x10026f22
xor ecx, ecx
jmp 0x10026f36
mov ecx, edi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10026f27
sub ecx, edx
sar ecx, 1
push ecx
push edi
mov ecx, ebx
call fcn.10005580
mov byte [ebp - 4], 8
mov byte [ebp - 4], 3
call fcn.10032ee0
add esp, 0xc
cmp dword [0x1015e768], 0
je 0x100270d3
call fcn.10004dc0
mov ecx, eax
test ecx, ecx
je 0x10027599
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x220], eax
push str.inst_limit_bird
lea ecx, [ebp - 0x220]
mov byte [ebp - 4], 0xa
call fcn.10004190
test al, al
jne 0x10026fa3
push 0xf
push str.inst_limit_bird
lea ecx, [ebp - 0x220]
call fcn.10005580
mov byte [ebp - 4], 0xb
call fcn.10004dc0
mov ecx, eax
test ecx, ecx
je 0x100275a3
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x21c], eax
push str.loader_dll2
lea ecx, [ebp - 0x21c]
mov byte [ebp - 4], 0xc
call fcn.10004190
test al, al
jne 0x10026fee
push 0xb
push str.loader_dll2
lea ecx, [ebp - 0x21c]
call fcn.10005580
sub esp, 0x28
mov eax, esp
mov dword [ebp - 0x224], esp
mov dword [eax + 0x24], 0
mov ecx, dword [0x1015bce4]
mov ebx, dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov byte [ebp - 4], 0xe
test ecx, ecx
jne 0x1002706e
push 0x10155d2c
call ebx
cmp dword [0x1015bce4], 0
jne 0x10027059
push 0x20
call fcn.10032a80
add esp, 4
mov dword [ebp - 0x22c], eax
mov byte [ebp - 4], 0xf
test eax, eax
je 0x10027047
mov ecx, eax
call fcn.1000ccf0
mov ecx, eax
jmp 0x10027049
xor ecx, ecx
mov byte [ebp - 4], 0xe
xchg dword [ebp - 0x224], eax
mov dword [0x1015bce4], ecx
mov edi, dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
push 0x10155d2c
call edi
mov ecx, dword [0x1015bce4]
jmp 0x10027074
mov edi, dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
push 0
push 0
lea eax, [ebp - 0x220]
mov byte [ebp - 4], 0xd
push eax
lea eax, [ebp - 0x21c]
push eax
call fcn.1000dc40
mov edx, dword [ebp - 0x21c]
mov eax, esi
mov byte [ebp - 4], 0xb
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x100270b0
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x220]
mov eax, esi
mov byte [ebp - 4], 3
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x100270df
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x100270df
mov ebx, dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov edi, dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
cmp dword [0x1015e770], 0
je 0x1002724d
call fcn.10004dc0
mov ecx, eax
test ecx, ecx
je 0x100275ad
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x21c], eax
push str.inst_limit_lu
lea ecx, [ebp - 0x21c]
mov byte [ebp - 4], 0x10
call fcn.10004190
test al, al
jne 0x10027133
push 0xd
push str.inst_limit_lu
lea ecx, [ebp - 0x21c]
call fcn.10005580
mov byte [ebp - 4], 0x11
call fcn.10004dc0
mov ecx, eax
test ecx, ecx
je 0x100275b7
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x220], eax
push str.loader_dll2
lea ecx, [ebp - 0x220]
mov byte [ebp - 4], 0x12
call fcn.10004190
test al, al
jne 0x1002717e
push 0xb
push str.loader_dll2
lea ecx, [ebp - 0x220]
call fcn.10005580
sub esp, 0x28
mov eax, esp
mov dword [ebp - 0x22c], esp
mov dword [eax + 0x24], 0
mov ecx, dword [0x1015bce4]
mov byte [ebp - 4], 0x14
test ecx, ecx
jne 0x100271f0
push 0x10155d2c
call ebx
cmp dword [0x1015bce4], 0
jne 0x100271e3
push 0x20
call fcn.10032a80
add esp, 4
mov dword [ebp - 0x224], eax
mov byte [ebp - 4], 0x15
test eax, eax
je 0x100271d1
mov ecx, eax
call fcn.1000ccf0
mov ecx, eax
jmp 0x100271d3
xor ecx, ecx
mov byte [ebp - 4], 0x14
xchg dword [ebp - 0x224], eax
mov dword [0x1015bce4], ecx
push 0x10155d2c
call edi
mov ecx, dword [0x1015bce4]
push 0
push 0
lea eax, [ebp - 0x21c]
mov byte [ebp - 4], 0x13
push eax
lea eax, [ebp - 0x220]
push eax
call fcn.1000dc40
mov edx, dword [ebp - 0x220]
mov eax, esi
mov byte [ebp - 4], 0x11
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1002722c
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x21c]
mov eax, esi
mov byte [ebp - 4], 3
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1002724d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
cmp dword [0x1015e76c], 0
je 0x100273bb
call fcn.10004dc0
mov ecx, eax
test ecx, ecx
je 0x100275c1
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x21c], eax
push str.inst_limit_mgame
lea ecx, [ebp - 0x21c]
mov byte [ebp - 4], 0x16
call fcn.10004190
test al, al
jne 0x100272a1
push 0x10
push str.inst_limit_mgame
lea ecx, [ebp - 0x21c]
call fcn.10005580
mov byte [ebp - 4], 0x17
call fcn.10004dc0
mov ecx, eax
test ecx, ecx
je 0x100275cb
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x220], eax
push str.loader_dll2
lea ecx, [ebp - 0x220]
mov byte [ebp - 4], 0x18
call fcn.10004190
test al, al
jne 0x100272ec
push 0xb
push str.loader_dll2
lea ecx, [ebp - 0x220]
call fcn.10005580
sub esp, 0x28
mov eax, esp
mov dword [ebp - 0x22c], esp
mov dword [eax + 0x24], 0
mov ecx, dword [0x1015bce4]
mov byte [ebp - 4], 0x1a
test ecx, ecx
jne 0x1002735e
push 0x10155d2c
call ebx
cmp dword [0x1015bce4], 0
jne 0x10027351
push 0x20
call fcn.10032a80
add esp, 4
mov dword [ebp - 0x224], eax
mov byte [ebp - 4], 0x1b
test eax, eax
je 0x1002733f
mov ecx, eax
call fcn.1000ccf0
mov ecx, eax
jmp 0x10027341
xor ecx, ecx
mov byte [ebp - 4], 0x1a
xchg dword [ebp - 0x224], eax
mov dword [0x1015bce4], ecx
push 0x10155d2c
call edi
mov ecx, dword [0x1015bce4]
push 0
push 0
lea eax, [ebp - 0x21c]
mov byte [ebp - 4], 0x19
push eax
lea eax, [ebp - 0x220]
push eax
call fcn.1000dc40
mov edx, dword [ebp - 0x220]
mov eax, esi
mov byte [ebp - 4], 0x17
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1002739a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x21c]
mov eax, esi
mov byte [ebp - 4], 3
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x100273bb
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
cmp dword [0x1015e774], 0
je 0x10027494
push str.inst_limit_halo
lea ecx, [ebp - 0x220]
call fcn.10003e60
push str.loader_dll2
lea ecx, [ebp - 0x224]
mov byte [ebp - 4], 0x1c
call fcn.10003e60
sub esp, 0x28
mov eax, esp
mov dword [ebp - 0x22c], esp
mov dword [eax + 0x24], 0
push 1
push 0
lea eax, [ebp - 0x220]
mov byte [ebp - 4], 0x1e
push eax
lea eax, [ebp - 0x224]
push eax
call fcn.100111f0
mov ecx, eax
mov byte [ebp - 4], 0x1d
call fcn.1000dc40
mov edx, dword [ebp - 0x224]
mov eax, esi
mov byte [ebp - 4], 0x1c
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10027445
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x220]
mov eax, esi
mov byte [ebp - 4], 3
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10027466
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x228]
mov byte [ebp - 4], 0
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], esi
dec esi
test esi, esi
jg 0x1002696c
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x1002696c
mov ebx, dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
call fcn.100261e0
test eax, eax
jne 0x100274dc
mov ecx, 0x1015e71c
call fcn.10007680
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
push 0xbb8
call edi
mov edx, dword [ebp - 0x228]
mov byte [ebp - 4], 0
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], esi
dec esi
test esi, esi
jg 0x10026972
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x10026972
call fcn.100264a0
test eax, eax
jne 0x1002753c
sub esp, 0x28
mov eax, esp
mov dword [ebp - 0x22c], esp
mov dword [eax + 0x24], 0
push 0
push 0
push str.install_file_fail
mov byte [ebp - 4], 0x1f
call fcn.100111f0
mov ecx, eax
mov byte [ebp - 4], 3
call fcn.1000db70
mov edx, dword [ebp - 0x228]
mov byte [ebp - 4], 0
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], esi
dec esi
test esi, esi
jg 0x1002696c
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x1002696c
push dword [ebp + 0x14]
push dword [ebp - 0x238]
call fcn.100289f0
mov edx, dword [ebp - 0x228]
add esp, 8
mov dword [ebp - 0x234], eax
add edx, 0xfffffff0
mov byte [ebp - 4], 0
lock xadd dword [edx + 0xc], esi
dec esi
test esi, esi
jg 0x1002696c
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x1002696c
push 0x80004005
call fcn.10004170
push 0x80004005
call fcn.10004170
push 0x80004005
call fcn.10004170
push 0x80004005
call fcn.10004170
push 0x80004005
call fcn.10004170
push 0x80004005
call fcn.10004170
push 0x80004005
call fcn.10004170
push 0x80004005
call fcn.10004170
push 0x80004005
call fcn.10004170
int3