Function at 0x47c460
Capabilities:
Accept command line arguments

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4fecfd
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x188
mov eax, dword [0x534090]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x184], esi
mov eax, dword [ebx + 8]
xor edi, edi
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x180], eax
mov dword [ebp - 0x154], edi
mov dword [ebp - 0x160], edi
call fcn.00433fc0
mov ecx, 0x8020
mov dword [ebp - 0x17c], 0x8063
mov dword [ebp - 0x15c], 0x806d
mov dword [ebp - 0x188], 0x8064
mov eax, dword [eax]
lea edi, [ecx + 0x45]
mov dword [ebp - 0x164], 0x806c
mov dword [ebp - 0x170], 0x803a
mov dword [ebp - 0x168], 0x807b
cmp dword [eax], 0
mov dword [ebp - 0x16c], 0x807d
mov dword [ebp - 0x174], 0x8000
je 0x47c6b9
mov eax, dword [esi + 0x34fc]
lea edx, [ebp - 0x50]
mov word [ebp - 0x28], cx
lea ecx, [ebp - 0x108]
mov dword [ebp - 0x50], 0x806e8049
mov dword [ebp - 0x4c], 0x806f8066
mov esi, dword [eax]
mov eax, dword [ebp - 0x17c]
add esi, 8
mov word [ebp - 0x38], ax
mov eax, dword [ebp - 0x15c]
mov word [ebp - 0x36], ax
mov eax, dword [ebp - 0x188]
mov word [ebp - 0x34], ax
mov eax, dword [ebp - 0x164]
mov word [ebp - 0x32], ax
mov eax, dword [ebp - 0x170]
mov word [ebp - 0x2a], ax
mov eax, dword [ebp - 0x168]
mov word [ebp - 0x26], ax
mov eax, dword [ebp - 0x16c]
mov word [ebp - 0x24], ax
mov eax, dword [ebp - 0x174]
mov word [ebp - 0x22], ax
xor eax, eax
mov dword [ebp - 0x48], 0x8020802c
mov dword [ebp - 0x44], 0x80698067
mov dword [ebp - 0x40], 0x80658076
mov dword [ebp - 0x3c], 0x8020806e
mov dword [ebp - 0x30], 0x806e8069
mov word [ebp - 0x2c], di
mov word [ebp - 0x20], ax
call fcn.00416fb0
mov dword [ebp - 4], 0
lea edx, [ebp - 0x108]
cmp dword [ebp - 0xf4], 8
mov eax, dword [ebp - 0x18c]
cmovae edx, dword [ebp - 0x108]
mov ecx, edx
mov dword [ebp - 0x138], esi
mov dword [ebp - 0x160], 0x2001
mov dword [ebp - 0x134], eax
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x47c612
sub ecx, esi
sub esp, 0x10
mov eax, esp
sar ecx, 1
lea esi, [ebp - 0x138]
push ecx
push edx
lea ecx, [ebp - 0xc0]
mov dword [eax], 0xc
mov dword [eax + 4], 0
mov dword [eax + 8], esi
call fcn.0041d9e0
add esp, 0x18
lea eax, [ebp - 0xc0]
mov dword [ebp - 4], 1
push eax
lea ecx, [ebp - 0xf0]
mov dword [ebp - 0x160], 0x6003
call fcn.0043a3c0
mov dword [ebp - 4], 2
lea esi, [ebp - 0xf0]
cmp dword [ebp - 0xdc], 8
mov edi, 0xe007
mov dword [ebp - 0x154], edi
cmovae esi, dword [ebp - 0xf0]
mov dword [ebp - 0x160], edi
call fcn.00433fc0
push esi
push 0
push str._BDREINIT__::_CReinitProcess::GetRestartCmdline____
push 0
push eax
call fcn.00436d10
mov esi, dword [ebp - 0x184]
add esp, 0x14
mov dword [ebp - 4], 1
mov eax, dword [ebp - 0x154]
test al, 4
je 0x47c736
mov edx, dword [ebp - 0xdc]
and eax, 0xfffffffb
mov dword [ebp - 0x154], eax
cmp edx, 8
jb 0x47c719
mov ecx, dword [ebp - 0xf0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x47c709
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x47db76
push edx
push ecx
call fcn.004cb66f
mov eax, dword [ebp - 0x154]
add esp, 8
xor ecx, ecx
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 7
mov word [ebp - 0xf0], cx
mov dword [ebp - 4], 0
test al, 2
je 0x47c7ad
mov edx, dword [ebp - 0xac]
and eax, 0xfffffffd
mov dword [ebp - 0x154], eax
cmp edx, 8
jb 0x47c790
mov ecx, dword [ebp - 0xc0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x47c780
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x47db76
push edx
push ecx
call fcn.004cb66f
mov eax, dword [ebp - 0x154]
add esp, 8
xor ecx, ecx
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0xac], 7
mov word [ebp - 0xc0], cx
mov dword [ebp - 4], 0xffffffff
test al, 1
je 0x47c801
mov edx, dword [ebp - 0xf4]
and eax, 0xfffffffe
mov dword [ebp - 0x154], eax
cmp edx, 8
jb 0x47c801
mov ecx, dword [ebp - 0x108]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x47c7f7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x47db76
push edx
push ecx
call fcn.004cb66f
add esp, 8
mov eax, dword [esi + 0x34fc]
mov eax, dword [eax]
mov dword [ebp - 0xa8], 0
lea edi, [eax + 8]
lea esi, [eax + 0x174f0]
push 1
xor eax, eax
mov dword [ebp - 0x98], 0
push 0x518fd4
lea ecx, [ebp - 0xa8]
mov dword [ebp - 0x94], 7
mov word [ebp - 0xa8], ax
mov dword [ebp - 4], 0xffffffff
call fcn.0043add0
push esi
lea edx, [ebp - 0xa8]
mov dword [ebp - 4], 4
lea ecx, [ebp - 0x150]
call fcn.004372e0
add esp, 4
push 0x5193ac
mov edx, eax
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x108]
call fcn.004372e0
add esp, 4
push edi
mov edx, eax
mov byte [ebp - 4], 6
lea ecx, [ebp - 0xf0]
call fcn.004372e0
add esp, 4
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0xf4]
cmp edx, 8
jb 0x47c8e0
mov ecx, dword [ebp - 0x108]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x47c8d6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x47db7b
push edx
push ecx
call fcn.004cb66f
add esp, 8
xor eax, eax
mov dword [ebp - 0xf8], 0
mov dword [ebp - 0xf4], 7
mov word [ebp - 0x108], ax
mov byte [ebp - 4], 9
mov edx, dword [ebp - 0x13c]
cmp edx, 8
jb 0x47c941
mov ecx, dword [ebp - 0x150]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x47c937
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x47db7b
push edx
push ecx
call fcn.004cb66f
add esp, 8
xor eax, eax
mov dword [ebp - 0x140], 0
mov dword [ebp - 0x13c], 7
mov word [ebp - 0x150], ax
mov byte [ebp - 4], 0xa
mov edx, dword [ebp - 0x94]
cmp edx, 8
jb 0x47c9a2
mov ecx, dword [ebp - 0xa8]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x47c998
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x47db7b
push edx
push ecx
call fcn.004cb66f
add esp, 8
xor eax, eax
mov dword [ebp - 0x98], 0
mov word [ebp - 0xa8], ax
lea eax, [ebp - 0x194]
push eax
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x94], 7
mov eax, dword [eax + 0x34fc]
mov eax, dword [eax]
add eax, 8
push eax
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov dword [ebp - 0x178], eax
test eax, eax
jne 0x47cc83
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp - 0x17c]
mov esi, 0x8020
mov edx, dword [ebp - 0x164]
mov dword [ebp - 0x184], eax
mov eax, 0x8057
mov word [ebp - 0x30], ax
mov eax, dword [ebp - 0x170]
mov word [ebp - 0x2e], ax
mov eax, dword [ebp - 0x168]
mov word [ebp - 0x2a], ax
mov eax, dword [ebp - 0x16c]
mov word [ebp - 0x28], ax
mov eax, 0x802e
mov word [ebp - 0x62], cx
mov ecx, 0x8061
mov word [ebp - 0x26], ax
mov eax, dword [ebp - 0x174]
mov word [ebp - 0x60], cx
mov ecx, dword [ebp - 0x188]
mov word [ebp - 0x5e], dx
mov word [ebp - 0x5c], dx
mov edx, dword [ebp - 0x15c]
mov word [ebp - 0x24], ax
xor eax, eax
mov word [ebp - 0x4e], dx
mov word [ebp - 0x4c], dx
lea edx, [ebp - 0x70]
mov word [ebp - 0x46], cx
lea ecx, [ebp - 0x90]
mov dword [ebp - 0x70], 0x80728045
mov dword [ebp - 0x6c], 0x806f8072
mov dword [ebp - 0x68], 0x802c8072
mov word [ebp - 0x64], si
mov dword [ebp - 0x5a], 0x806e8069
mov dword [ebp - 0x56], 0x80208067
mov dword [ebp - 0x52], 0x806f8043
mov dword [ebp - 0x4a], 0x806e8061
mov dword [ebp - 0x44], 0x8069804c
mov dword [ebp - 0x40], 0x8065806e
mov dword [ebp - 0x3c], 0x806f8054
mov dword [ebp - 0x38], 0x80728041
mov dword [ebp - 0x34], 0x80768067
mov word [ebp - 0x2c], si
mov word [ebp - 0x22], ax
call fcn.00416fb0
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0x90]
cmp dword [ebp - 0x7c], 8
lea edx, [ebp - 0x15c]
lea ecx, [ebp - 0xd8]
cmovae eax, dword [ebp - 0x90]
mov dword [ebp - 0x15c], eax
lea eax, [ebp - 0x184]
push eax
call fcn.00417e30
add esp, 4
push eax
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0xc
call fcn.0043a3c0
mov byte [ebp - 4], 0xd
lea esi, [ebp - 0xc0]
cmp dword [ebp - 0xac], 8
cmovae esi, dword [ebp - 0xc0]
call fcn.00433fc0
push esi
push 0
push str._BDREINIT__::_CReinitProcess::GetRestartCmdline____
push 8
push eax
call fcn.00436d10
mov edx, dword [ebp - 0xac]
add esp, 0x14
cmp edx, 8
jb 0x47cb96
mov ecx, dword [ebp - 0xc0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x47cb8c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x47db80
push edx
push ecx
call fcn.004cb66f
add esp, 8
mov edx, dword [ebp - 0xc4]
xor eax, eax
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0xac], 7
mov word [ebp - 0xc0], ax
cmp edx, 8
jb 0x47cbf3
mov ecx, dword [ebp - 0xd8]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x47cbe9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x47db80
push edx
push ecx
call fcn.004cb66f
add esp, 8
mov edx, dword [ebp - 0x7c]
xor eax, eax
mov dword [ebp - 0xc8], 0
mov dword [ebp - 0xc4], 7
mov word [ebp - 0xd8], ax
cmp edx, 8
jb 0x47cc4d
mov ecx, dword [ebp - 0x90]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x47cc43
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x47db80
push edx
push ecx
call fcn.004cb66f
add esp, 8
mov eax, dword [ebp - 0x180]
movups xmm0, xmmword [ebp - 0xf0]
mov dword [eax], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
movups xmmword [eax], xmm0
movq xmm0, qword [ebp - 0xe0]
movq qword [eax + 0x10], xmm0
jmp 0x47db56
lea eax, [ebp - 0x178]
mov byte [ebp - 0x18c], 1
mov dword [ebp - 0x190], eax
mov byte [ebp - 4], 0x10
call fcn.00433fc0
mov ecx, 0x8072
mov eax, dword [eax]
cmp dword [eax], 0
je 0x47ce01
mov esi, dword [ebp - 0x178]
lea eax, [ecx - 0x52]
mov word [ebp - 0x114], ax
lea edx, [ebp - 0x130]
mov eax, dword [ebp - 0x168]
mov ecx, 0x805d
mov word [ebp - 0x112], ax
mov eax, dword [ebp - 0x16c]
mov word [ebp - 0x110], ax
mov eax, dword [ebp - 0x174]
mov word [ebp - 0x118], cx
mov ecx, dword [ebp - 0x170]
mov word [ebp - 0x10e], ax
xor eax, eax
mov word [ebp - 0x116], cx
lea ecx, [ebp - 0xd8]
mov dword [ebp - 0x130], 0x806e8049
mov dword [ebp - 0x12c], 0x806f8066
mov dword [ebp - 0x128], 0x8020802c
mov dword [ebp - 0x124], 0x80728061
mov dword [ebp - 0x120], 0x80768067
mov dword [ebp - 0x11c], 0x8030805b
mov word [ebp - 0x10c], ax
call fcn.00416fb0
mov edi, dword [ebp - 0x154]
or edi, 0x80000
mov byte [ebp - 4], 0x11
lea eax, [ebp - 0xd8]
or edi, 0x10
lea edx, [ebp - 0x154]
cmp dword [ebp - 0xc4], 8
lea ecx, [ebp - 0x90]
push esi
cmovae eax, dword [ebp - 0xd8]
mov dword [ebp - 0x160], edi
mov dword [ebp - 0x154], eax
call fcn.004177d0
add esp, 4
mov dword [ebp - 4], 0x12
lea ecx, [ebp - 0xc0]
or edi, 0x20
push eax
mov dword [ebp - 0x160], edi
call fcn.0043a3c0
or edi, 0x100000
mov dword [ebp - 4], 0x13
lea esi, [ebp - 0xc0]
or edi, 0x40
cmp dword [ebp - 0xac], 8
mov dword [ebp - 0x154], edi
cmovae esi, dword [ebp - 0xc0]
mov dword [ebp - 0x160], edi
call fcn.00433fc0
push esi
push 0
push str._BDREINIT__::_CReinitProcess::GetRestartCmdline____
push 0
push eax
call fcn.00436d10
add esp, 0x14
mov dword [ebp - 4], 0x12
mov eax, dword [ebp - 0x154]
test al, 0x40
je 0x47ce7e
mov edx, dword [ebp - 0xac]
and eax, 0xffffffbf
mov dword [ebp - 0x154], eax
cmp edx, 8
jb 0x47ce61
mov ecx, dword [ebp - 0xc0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x47ce51
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x47db85
push edx
push ecx
call fcn.004cb66f
mov eax, dword [ebp - 0x154]
add esp, 8
xor ecx, ecx
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0xac], 7
mov word [ebp - 0xc0], cx
mov dword [ebp - 4], 0x11
test al, 0x20
je 0x47ceec
mov edx, dword [ebp - 0x7c]
and eax, 0xffffffdf
mov dword [ebp - 0x154], eax
cmp edx, 8
jb 0x47ced5
mov ecx, dword [ebp - 0x90]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x47cec5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x47db85
push edx
push ecx
call fcn.004cb66f
mov eax, dword [ebp - 0x154]
add esp, 8
xor ecx, ecx
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 7
mov word [ebp - 0x90], cx
mov dword [ebp - 4], 0x10
test al, 0x10
je 0x47cf40
mov edx, dword [ebp - 0xc4]
and eax, 0xffffffef
mov dword [ebp - 0x154], eax
cmp edx, 8
jb 0x47cf40
mov ecx, dword [ebp - 0xd8]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x47cf36
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x47db85
push edx
push ecx
call fcn.004cb66f
add esp, 8
mov eax, dword [ebp - 0x178]
push 0
push 0x80
push 3
push 0
push 7
push 0x80
push dword [eax]
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov esi, eax
mov dword [ebp - 0x134], esi
mov byte [ebp - 4], 0x14
cmp esi, 0xffffffff
je 0x47d843
test esi, esi
je 0x47d843
push ecx
mov edi, 0x200
lea ecx, [ebp - 0x9c]
push edi
call fcn.00464080
push 0
push edi
mov byte [ebp - 4], 0x1a
push dword [ebp - 0x9c]
push esi
call dword [sym.imp.KERNEL32.dll_GetFinalPathNameByHandleW]
test eax, eax
je 0x47d040
nop dword [eax + eax]
cmp eax, edi
mov eax, dword [ebp - 0x9c]
jb 0x47d22f
mov edx, dword [ebp - 0x98]
add edi, 0x200
mov ecx, edx
mov dword [ebp - 0x158], edi
sub ecx, eax
sar ecx, 1
cmp edi, ecx
jae 0x47cfe5
lea eax, [eax + edi*2]
mov dword [ebp - 0x98], eax
jmp 0x47d027
jbe 0x47d02d
mov eax, dword [ebp - 0x94]
sub eax, dword [ebp - 0x9c]
sar eax, 1
cmp edi, eax
jbe 0x47d008
push ecx
push edi
lea ecx, [ebp - 0x9c]
call fcn.0043aaa0
jmp 0x47d027
mov eax, edi
sub eax, ecx
lea edi, [eax + eax]
push edi
push 0
push edx
call fcn.004cd810
add esp, 0xc
add dword [ebp - 0x98], edi
mov edi, dword [ebp - 0x158]
mov eax, dword [ebp - 0x9c]
push 0
push edi
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetFinalPathNameByHandleW]
test eax, eax
jne 0x47cfb0
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp - 0x164]
mov edi, 0x8020
mov dword [ebp - 0x158], eax
mov edx, ecx
mov eax, dword [ebp - 0x17c]
mov word [ebp - 0x6c], ax
mov eax, 0x8061
mov word [ebp - 0x6a], ax
mov word [ebp - 0x50], ax
mov eax, dword [ebp - 0x188]
mov word [ebp - 0x32], ax
mov eax, edx
mov word [ebp - 0x30], ax
mov eax, dword [ebp - 0x170]
mov word [ebp - 0x2a], ax
mov eax, dword [ebp - 0x168]
mov word [ebp - 0x26], ax
mov eax, dword [ebp - 0x16c]
mov word [ebp - 0x24], ax
mov eax, dword [ebp - 0x174]
mov word [ebp - 0x68], cx
mov word [ebp - 0x66], cx
mov ecx, dword [ebp - 0x15c]
mov word [ebp - 0x22], ax
xor eax, eax
mov word [ebp - 0x4e], dx
lea edx, [ebp - 0x78]
mov word [ebp - 0x40], cx
lea ecx, [ebp - 0xd8]
mov dword [ebp - 0x78], 0x80728045
mov dword [ebp - 0x74], 0x806f8072
mov dword [ebp - 0x70], 0x80208072
mov dword [ebp - 0x64], 0x806e8069
mov dword [ebp - 0x60], 0x80208067
mov dword [ebp - 0x5c], 0x80658047
mov dword [ebp - 0x58], 0x80468074
mov dword [ebp - 0x54], 0x806e8069
mov dword [ebp - 0x4c], 0x80618050
mov dword [ebp - 0x48], 0x80688074
mov dword [ebp - 0x44], 0x8061804e
mov dword [ebp - 0x3e], 0x80428065
mov dword [ebp - 0x3a], 0x80488079
mov dword [ebp - 0x36], 0x806e8061
mov dword [ebp - 0x2e], 0x80578065
mov word [ebp - 0x28], di
mov word [ebp - 0x20], ax
call fcn.00416fb0
mov byte [ebp - 4], 0x1b
lea eax, [ebp - 0xd8]
cmp dword [ebp - 0xc4], 8
lea edx, [ebp - 0x15c]
lea ecx, [ebp - 0x124]
cmovae eax, dword [ebp - 0xd8]
mov dword [ebp - 0x15c], eax
lea eax, [ebp - 0x158]
push eax
call fcn.00417e30
add esp, 4
push eax
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x1c
call fcn.0043a3c0
mov byte [ebp - 4], 0x1d
lea edi, [ebp - 0x90]
cmp dword [ebp - 0x7c], 8
cmovae edi, dword [ebp - 0x90]
call fcn.00433fc0
push edi
push 0
push str._BDREINIT__::_CReinitProcess::GetRestartCmdline____
push 8
push eax
call fcn.00436d10
add esp, 0x14
lea ecx, [ebp - 0x90]
call fcn.0043b020
lea ecx, [ebp - 0x124]
call fcn.0043b020
lea ecx, [ebp - 0xd8]
call fcn.0043b020
mov edi, dword [ebp - 0x180]
lea eax, [ebp - 0xf0]
push eax
mov ecx, edi
call fcn.0043a6e0
lea ecx, [ebp - 0x9c]
call fcn.0043aa30
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push dword [ebp - 0x178]
call dword [sym.imp.KERNEL32.dll_LocalFree]
mov eax, dword [ebp - 0xdc]
cmp eax, 8
jb 0x47db54
inc eax
lea ecx, [ebp - 0xf0]
push eax
push dword [ebp - 0xf0]
call fcn.0043afe0
jmp 0x47db54
mov dword [ebp - 0x158], eax
lea ecx, [ebp - 0xd8]
mov eax, 0x8075
mov dword [ebp - 0x60], 0x806e8049
mov word [ebp - 0x3c], ax
mov edx, 0x8020
mov eax, dword [ebp - 0x164]
mov word [ebp - 0x3a], ax
mov word [ebp - 0x38], ax
mov eax, 0x8068
mov word [ebp - 0x2e], ax
mov eax, dword [ebp - 0x170]
mov word [ebp - 0x2c], ax
mov eax, dword [ebp - 0x168]
mov word [ebp - 0x28], ax
mov eax, dword [ebp - 0x16c]
mov word [ebp - 0x26], ax
mov eax, dword [ebp - 0x174]
mov word [ebp - 0x24], ax
xor eax, eax
mov word [ebp - 0x2a], dx
lea edx, [ebp - 0x60]
mov dword [ebp - 0x5c], 0x806f8066
mov dword [ebp - 0x58], 0x8020802c
mov dword [ebp - 0x54], 0x80728061
mov dword [ebp - 0x50], 0x80768067
mov dword [ebp - 0x4c], 0x8030805b
mov dword [ebp - 0x48], 0x8020805d
mov dword [ebp - 0x44], 0x80738061
mov dword [ebp - 0x40], 0x80668020
mov dword [ebp - 0x36], 0x80708020
mov dword [ebp - 0x32], 0x80748061
mov word [ebp - 0x22], ax
call fcn.00416fb0
mov edi, dword [ebp - 0x154]
or edi, 0x4000000
mov byte [ebp - 4], 0x1e
lea eax, [ebp - 0xd8]
cmp dword [ebp - 0xc4], 8
lea edx, [ebp - 0x15c]
lea ecx, [ebp - 0x150]
cmovae eax, dword [ebp - 0xd8]
mov dword [ebp - 0x15c], eax
lea eax, [ebp - 0x158]
push eax
call fcn.00464430
add esp, 4
push eax
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x1f
call fcn.0043a3c0
or edi, 0x8000000
mov dword [ebp - 0x154], edi
mov byte [ebp - 4], 0x20
lea edi, [ebp - 0x90]
cmp dword [ebp - 0x7c], 8
cmovae edi, dword [ebp - 0x90]
call fcn.00433fc0
push edi
push 0
push str._BDREINIT__::_CReinitProcess::GetRestartCmdline____
push 8
push eax
call fcn.00436d10
add esp, 0x14
lea ecx, [ebp - 0x90]
call fcn.0043b020
lea ecx, [ebp - 0x150]
call fcn.0043b020
lea ecx, [ebp - 0xd8]
mov byte [ebp - 4], 0x1a
call fcn.0043b020
mov edi, dword [ebp - 0x9c]
lea eax, [ebp - 0x198]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_GetBinaryTypeW]
test eax, eax
jne 0x47d708
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x47d5b2
call fcn.00433fc0
mov eax, dword [eax]
cmp dword [eax], 0
je 0x47d559
mov eax, dword [ebp - 0x168]
lea edx, [ebp - 0x68]
mov ecx, dword [ebp - 0x17c]
mov dword [ebp - 0x158], edi
mov edi, dword [ebp - 0x164]
mov word [ebp - 0x5c], ax
mov eax, dword [ebp - 0x16c]
mov word [ebp - 0x40], di
mov edi, 0x8069
mov word [ebp - 0x5a], ax
mov eax, dword [ebp - 0x164]
mov word [ebp - 0x3e], di
mov edi, dword [ebp - 0x188]
mov word [ebp - 0x28], ax
mov eax, dword [ebp - 0x174]
mov word [ebp - 0x3c], di
mov edi, 0x8065
mov word [ebp - 0x24], ax
xor eax, eax
mov word [ebp - 0x32], cx
lea ecx, [ebp - 0xd8]
mov dword [ebp - 0x68], 0x806e8049
mov dword [ebp - 0x64], 0x806f8066
mov dword [ebp - 0x60], 0x8020802c
mov dword [ebp - 0x58], 0x80698020
mov dword [ebp - 0x54], 0x80208073
mov dword [ebp - 0x50], 0x806f806e
mov dword [ebp - 0x4c], 0x80208074
mov dword [ebp - 0x48], 0x80208061
mov dword [ebp - 0x44], 0x80618076
mov dword [ebp - 0x3a], 0x80658020
mov dword [ebp - 0x36], 0x80658078
mov dword [ebp - 0x30], 0x80748075
mov dword [ebp - 0x2c], 0x80628061
mov word [ebp - 0x26], di
mov word [ebp - 0x22], ax
call fcn.00416fb0
mov edi, dword [ebp - 0x154]
or edi, 0x10000000
mov byte [ebp - 4], 0x21
lea eax, [ebp - 0xd8]
or edi, 0x80
lea edx, [ebp - 0x15c]
cmp dword [ebp - 0xc4], 8
lea ecx, [ebp - 0x150]
mov dword [ebp - 0x160], edi
cmovae eax, dword [ebp - 0xd8]
mov dword [ebp - 0x15c], eax
lea eax, [ebp - 0x158]
push eax
call fcn.00464430
add esp, 4
mov dword [ebp - 4], 0x22
lea ecx, [ebp - 0x90]
or edi, 0x100
push eax
mov dword [ebp - 0x160], edi
call fcn.0043a3c0
or edi, 0x20000000
or edi, 0x200
mov dword [ebp - 4], 0x23
cmp dword [ebp - 0x7c], 8
mov dword [ebp - 0x160], edi
mov dword [ebp - 0x154], edi
lea edi, [ebp - 0x90]
cmovae edi, dword [ebp - 0x90]
call fcn.00433fc0
push edi
push 0
push str._BDREINIT__::_CReinitProcess::GetRestartCmdline____
push 0
push eax
call fcn.00436d10
add esp, 0x14
mov eax, dword [ebp - 0x154]
test eax, 0x200
je 0x47d582
and eax, 0xfffffdff
lea ecx, [ebp - 0x90]
mov dword [ebp - 0x154], eax
call fcn.0043b020
mov eax, dword [ebp - 0x154]
test eax, 0x100
je 0x47d5a5
and eax, 0xfffffeff
lea ecx, [ebp - 0x150]
mov dword [ebp - 0x154], eax
call fcn.0043b020
mov eax, dword [ebp - 0x154]
test al, al
jns 0x47d1d6
jmp 0x47d1cb
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp - 0x17c]
mov edi, 0x8020
mov edx, dword [ebp - 0x164]
mov dword [ebp - 0x158], eax
mov eax, dword [ebp - 0x170]
mov word [ebp - 0x2e], ax
mov eax, dword [ebp - 0x168]
mov word [ebp - 0x2a], ax
mov eax, dword [ebp - 0x16c]
mov word [ebp - 0x5a], cx
mov ecx, 0x8061
mov word [ebp - 0x28], ax
mov eax, dword [ebp - 0x174]
mov word [ebp - 0x26], ax
xor eax, eax
mov word [ebp - 0x58], cx
lea ecx, [ebp - 0xd8]
mov word [ebp - 0x56], dx
mov word [ebp - 0x54], dx
lea edx, [ebp - 0x68]
mov dword [ebp - 0x68], 0x80728045
mov dword [ebp - 0x64], 0x806f8072
mov dword [ebp - 0x60], 0x802c8072
mov word [ebp - 0x5c], di
mov dword [ebp - 0x52], 0x806e8069
mov dword [ebp - 0x4e], 0x80208067
mov dword [ebp - 0x4a], 0x80658047
mov dword [ebp - 0x46], 0x80428074
mov dword [ebp - 0x42], 0x806e8069
mov dword [ebp - 0x3e], 0x80728061
mov dword [ebp - 0x3a], 0x80548079
mov dword [ebp - 0x36], 0x80708079
mov dword [ebp - 0x32], 0x80578065
mov word [ebp - 0x2c], di
mov word [ebp - 0x24], ax
call fcn.00416fb0
mov byte [ebp - 4], 0x24
lea eax, [ebp - 0xd8]
cmp dword [ebp - 0xc4], 8
lea edx, [ebp - 0x15c]
lea ecx, [ebp - 0x150]
cmovae eax, dword [ebp - 0xd8]
mov dword [ebp - 0x15c], eax
lea eax, [ebp - 0x158]
push eax
call fcn.00417e30
add esp, 4
push eax
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x25
call fcn.0043a3c0
mov byte [ebp - 4], 0x26
lea edi, [ebp - 0x90]
cmp dword [ebp - 0x7c], 8
cmovae edi, dword [ebp - 0x90]
call fcn.00433fc0
push edi
push 0
push str._BDREINIT__::_CReinitProcess::GetRestartCmdline____
push 8
push eax
call fcn.00436d10
add esp, 0x14
lea ecx, [ebp - 0x90]
call fcn.0043b020
lea ecx, [ebp - 0x150]
jmp 0x47d1c6
call fcn.00433fc0
mov eax, dword [eax]
cmp dword [eax], 0
je 0x47d7ba
lea eax, [ebp - 0x124]
push eax
call fcn.0047db90
mov byte [ebp - 4], 0x27
mov edi, dword [ebp - 0x154]
or edi, 0x400
cmp dword [eax + 0x14], 8
mov dword [ebp - 0x160], edi
jb 0x47d742
mov eax, dword [eax]
lea edx, [ebp - 0x158]
mov dword [ebp - 0x158], eax
lea ecx, [ebp - 0xd8]
call fcn.00417750
mov dword [ebp - 4], 0x28
lea ecx, [ebp - 0x90]
or edi, 0x800
push eax
mov dword [ebp - 0x160], edi
call fcn.0043a3c0
or edi, 0x1000
mov dword [ebp - 4], 0x29
cmp dword [ebp - 0x7c], 8
mov dword [ebp - 0x160], edi
mov dword [ebp - 0x154], edi
lea edi, [ebp - 0x90]
cmovae edi, dword [ebp - 0x90]
call fcn.00433fc0
push edi
push 0
push str._BDREINIT__::_CReinitProcess::GetRestartCmdline____
push 0
push eax
call fcn.00436d10
add esp, 0x14
mov eax, dword [ebp - 0x154]
test eax, 0x1000
je 0x47d7e3
and eax, 0xffffefff
lea ecx, [ebp - 0x90]
mov dword [ebp - 0x154], eax
call fcn.0043b020
mov eax, dword [ebp - 0x154]
test eax, 0x800
je 0x47d806
and eax, 0xfffff7ff
lea ecx, [ebp - 0xd8]
mov dword [ebp - 0x154], eax
call fcn.0043b020
mov eax, dword [ebp - 0x154]
mov dword [ebp - 4], 0x1a
test eax, 0x400
je 0x47d81f
lea ecx, [ebp - 0x124]
call fcn.0043b020
mov eax, dword [ebp - 0x184]
mov edi, dword [ebp - 0x180]
mov ecx, edi
mov eax, dword [eax + 0x34fc]
mov eax, dword [eax]
add eax, 8
push eax
call fcn.0043aee0
jmp 0x47d1ea
mov edi, dword [ebp - 0x178]
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp - 0x17c]
mov edx, dword [ebp - 0x164]
mov dword [ebp - 0x158], eax
mov eax, 0x8072
mov word [ebp - 0x64], cx
mov ecx, 0x8061
mov word [ebp - 0x2e], ax
mov eax, dword [ebp - 0x170]
mov word [ebp - 0x62], cx
mov ecx, edx
mov word [ebp - 0x60], dx
mov word [ebp - 0x5e], dx
mov edx, dword [ebp - 0x168]
mov word [ebp - 0x2c], ax
mov eax, dword [ebp - 0x168]
mov word [ebp - 0x3a], dx
mov edx, dword [ebp - 0x16c]
mov word [ebp - 0x28], ax
mov eax, edx
mov word [ebp - 0x44], cx
mov ecx, dword [ebp - 0x170]
mov word [ebp - 0x3e], cx
mov ecx, 0x8020
mov word [ebp - 0x26], ax
mov eax, dword [ebp - 0x174]
mov word [ebp - 0x24], ax
xor eax, eax
mov word [ebp - 0x3c], cx
mov word [ebp - 0x38], dx
lea edx, [ebp - 0x70]
mov word [ebp - 0x2a], cx
lea ecx, [ebp - 0x90]
mov dword [ebp - 0x70], 0x80728045
mov dword [ebp - 0x6c], 0x806f8072
mov dword [ebp - 0x68], 0x80208072
mov dword [ebp - 0x5c], 0x806e8069
mov dword [ebp - 0x58], 0x80208067
mov dword [ebp - 0x54], 0x80728043
mov dword [ebp - 0x50], 0x80618065
mov dword [ebp - 0x4c], 0x80658074
mov dword [ebp - 0x48], 0x80698046
mov dword [ebp - 0x42], 0x80578065
mov dword [ebp - 0x36], 0x8020802c
mov dword [ebp - 0x32], 0x806f8066
mov word [ebp - 0x22], ax
call fcn.00416fb0
mov byte [ebp - 4], 0x15
lea eax, [ebp - 0x90]
cmp dword [ebp - 0x7c], 8
mov ecx, dword [edi]
cmovae eax, dword [ebp - 0x90]
mov edx, dword [ebp - 0x158]
mov dword [ebp - 0x15c], eax
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0xa0], edx
mov edx, dword [ebp - 0x15c]
mov dword [ebp - 0x98], ecx
mov ecx, edx
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0x94], eax
lea edi, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x47d990
sub ecx, edi
sub esp, 0x10
mov eax, esp
sar ecx, 1
lea edi, [ebp - 0xa0]
push ecx
push edx
lea ecx, [ebp - 0x108]
mov dword [eax], 0xc2
mov dword [eax + 4], 0
mov dword [eax + 8], edi
call fcn.0041d9e0
add esp, 0x18
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0x16
push eax
lea ecx, [ebp - 0xc0]
call fcn.0043a3c0
mov byte [ebp - 4], 0x17
lea edi, [ebp - 0xc0]
cmp dword [ebp - 0xac], 8
cmovae edi, dword [ebp - 0xc0]
call fcn.00433fc0
push edi
push 0
push str._BDREINIT__::_CReinitProcess::GetRestartCmdline____
push 8
push eax
call fcn.00436d10
mov edx, dword [ebp - 0xac]
add esp, 0x14
cmp edx, 8
jb 0x47da50
mov ecx, dword [ebp - 0xc0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x47da46
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x47db8a
push edx
push ecx
call fcn.004cb66f
add esp, 8
mov edx, dword [ebp - 0xf4]
xor eax, eax
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0xac], 7
mov word [ebp - 0xc0], ax
cmp edx, 8
jb 0x47daad
mov ecx, dword [ebp - 0x108]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x47daa3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x47db8a
push edx
push ecx
call fcn.004cb66f
add esp, 8
mov edx, dword [ebp - 0x7c]
xor eax, eax
mov dword [ebp - 0xf8], 0
mov dword [ebp - 0xf4], 7
mov word [ebp - 0x108], ax
cmp edx, 8
jb 0x47db07
mov ecx, dword [ebp - 0x90]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x47dafd
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x47db8a
push edx
push ecx
call fcn.004cb66f
add esp, 8
mov edi, dword [ebp - 0x180]
movups xmm0, xmmword [ebp - 0xf0]
mov dword [edi], 0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0
movups xmmword [edi], xmm0
movq xmm0, qword [ebp - 0xe0]
movq qword [edi + 0x10], xmm0
cmp esi, 0xffffffff
je 0x47db48
test esi, esi
je 0x47db48
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push dword [ebp - 0x178]
call dword [sym.imp.KERNEL32.dll_LocalFree]
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.004cb63e
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4
call fcn.004d05ef
call fcn.004d05ef
call fcn.004d05ef
call fcn.004d05ef
call fcn.004d05ef
int3