Function at 0xbc4b4be
Capabilities:
Terminate process

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x298
mov eax, dword [0xbc6d328]
xor eax, ebp
mov dword [ebp - 4], eax
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp + 8]
mov dword [ebp - 0x228], ecx
mov ecx, dword [ebp + 0x14]
mov dword [ebp - 0x22c], ecx
mov ecx, dword [ebp + 0x20]
push ebx
mov dword [ebp - 0x220], ecx
mov ecx, dword [ebp + 0x24]
push esi
mov esi, dword [ebp + 0xc]
mov dword [ebp - 0x230], ecx
mov ecx, dword [ebp + 0x28]
push edi
mov edi, dword [ebp + 0x2c]
mov dword [ebp - 0x224], ecx
lea ecx, [ebp - 0x234]
push ecx
lea ecx, [ebp - 0x20c]
push ecx
xor ebx, ebx
push esi
push eax
mov dword [ebp - 0x250], eax
mov dword [ebp - 0x24c], esi
mov dword [ebp - 0x244], edi
mov dword [ebp - 0x214], ebx
mov dword [ebp - 0x240], 1
mov dword [ebp - 0x248], 0x30
mov dword [ebp - 0x234], ebx
mov dword [ebp - 0x218], ebx
mov dword [ebp - 0x23c], ebx
mov byte [ebp - 0x20d], bl
call fcn.0bc6591b
mov dword [ebp - 0x21c], eax
cmp esi, ebx
je 0xbc4b57d
mov ecx, dword [ebp - 0x234]
mov dword [ebp - 0x218], ecx
cmp eax, ebx
jl 0xbc4b5b0
push ebx
push ebx
lea eax, [ebp - 0x23c]
push eax
lea eax, [ebp - 0x248]
push eax
lea eax, [ebp - 0x240]
push eax
push dword [ebp - 0x218]
lea eax, [ebp - 0x20c]
push eax
call fcn.0bc679ab
mov dword [ebp - 0x21c], eax
call fcn.0bc4a772
test al, al
jne 0xbc4b5c3
mov dword [ebp - 0x240], 1
mov eax, dword [ebp - 0x21c]
mov ecx, eax
and ecx, 0x1fff0000
movzx esi, ax
cmp ecx, 0x70000
je 0xbc4b5de
mov esi, eax
cmp eax, ebx
mov ebx, dword [sym.imp.KERNEL32.dll_GetLastError]
jl 0xbc4b8ae
test byte [ebp - 0x248], 0x20
je 0xbc4b5ff
mov dword [ebp - 0x21c], 0x80070005
xor ecx, ecx
cmp dword [ebp - 0x21c], ecx
jl 0xbc4b8ae
mov eax, dword [ebp - 0x240]
cmp eax, ecx
je 0xbc4b89c
cmp eax, 1
je 0xbc4b852
jle 0xbc4b842
cmp eax, 4
jg 0xbc4b842
lea eax, [ebp - 0x20c]
push eax
call sub.iertutil.dll_Ordinal_45
push edi
test eax, eax
lea eax, [ebp - 0x20d]
push eax
push dword [ebp - 0x224]
push dword [ebp - 0x230]
push dword [ebp - 0x220]
je 0xbc4b86c
mov eax, dword [ebp + 0x1c]
or eax, 4
push eax
push dword [ebp + 0x18]
lea eax, [ebp - 0x20c]
push dword [ebp - 0x22c]
push dword [ebp - 0x228]
push dword [ebp - 0x218]
push eax
call fcn.0bc4b3a3
mov dword [ebp - 0x214], eax
test eax, eax
je 0xbc4b69f
push 0
push dword [edi]
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
jmp 0xbc4b6af
call ebx
mov esi, eax
cmp esi, 0x2e4
je 0xbc4b8a5
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
mov edi, eax
test edi, edi
jge 0xbc4b6c9
cmp edi, 0x80010106
jne 0xbc4b81a
mov esi, dword [sym.imp.OLEAUT32.dll_SysReAllocString]
xor eax, eax
test edi, edi
setge al
and dword [ebp - 0x22c], 0
mov dword [ebp - 0x214], eax
lea eax, [ebp - 0x20c]
push eax
call esi
push dword [ebp - 0x218]
mov dword [ebp - 0x220], eax
call esi
push dword [ebp - 0x230]
mov dword [ebp - 0x21c], eax
call esi
mov esi, dword [ebp - 0x224]
or dword [ebp - 0x228], 0xffffffff
push 0x11
pop ecx
lea edi, [ebp - 0x298]
mov dword [ebp - 0x218], eax
rep movsd dword es:[edi], dword [esi]
xor esi, esi
mov eax, 0x80000
mov dword [ebp - 0x254], esi
test dword [ebp + 0x1c], eax
je 0xbc4b74d
mov ecx, dword [ebp - 0x224]
mov ecx, dword [ecx + 0x44]
mov dword [ebp - 0x254], ecx
mov dword [ebp - 0x22c], eax
lea eax, [ebp - 0x238]
push eax
call sub.iertutil.dll_Ordinal_58
mov edi, eax
cmp edi, esi
jl 0xbc4b7ed
mov eax, dword [ebp - 0x238]
mov ecx, dword [eax]
lea edx, [ebp - 0x228]
push edx
push esi
push esi
push eax
call dword [ecx + 0xc]
mov edi, eax
cmp edi, esi
jl 0xbc4b7ed
push dword [ebp - 0x228]
call dword [sym.imp.USER32.dll_AllowSetForegroundWindow]
push dword [ebp - 0x244]
mov eax, dword [ebp - 0x238]
mov esi, dword [eax]
lea eax, [ebp - 0x298]
push eax
push dword [ebp - 0x218]
push 0
push 0
push dword [ebp - 0x22c]
push dword [ebp - 0x21c]
push dword [ebp - 0x220]
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push dword [ebp - 0x238]
call dword [esi + 0x10]
mov edi, eax
mov eax, dword [ebp - 0x238]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
cmp edi, 0x800704c7
jne 0xbc4b7ed
lea eax, [ebp - 0x20c]
push eax
call fcn.0bc66c67
push dword [ebp - 0x220]
mov esi, dword [sym.imp.OLEAUT32.dll_SysStringLen]
call esi
push dword [ebp - 0x21c]
call esi
push dword [ebp - 0x218]
call esi
cmp dword [ebp - 0x214], 0
je 0xbc4b81a
call dword [sym.imp.ole32.dll_CoUninitialize]
mov eax, edi
and eax, 0x1fff0000
movzx esi, di
cmp eax, 0x70000
je 0xbc4b82d
mov esi, edi
xor eax, eax
test edi, edi
mov edi, dword [ebp - 0x244]
setge al
mov dword [ebp - 0x214], eax
jmp 0xbc4b8a5
mov esi, 0x80004001
mov dword [ebp - 0x214], ecx
jmp 0xbc4b905
push edi
lea eax, [ebp - 0x20d]
push eax
push dword [ebp - 0x224]
push dword [ebp - 0x230]
push dword [ebp - 0x220]
push dword [ebp + 0x1c]
lea eax, [ebp - 0x20c]
push dword [ebp + 0x18]
push dword [ebp - 0x22c]
push dword [ebp - 0x228]
push dword [ebp - 0x218]
push eax
call fcn.0bc4b3a3
mov dword [ebp - 0x214], eax
call ebx
mov esi, eax
jmp 0xbc4b8a5
push 5
pop esi
mov dword [ebp - 0x214], ecx
cmp byte [ebp - 0x20d], 0
jne 0xbc4b905
cmp esi, 0x2e4
jne 0xbc4b905
push edi
push dword [ebp - 0x224]
push dword [ebp - 0x230]
push dword [ebp + 0x1c]
push dword [ebp - 0x24c]
push dword [ebp - 0x250]
call fcn.0bc47fd9
mov dword [ebp - 0x214], eax
call ebx
mov esi, eax
test esi, esi
jne 0xbc4b8f5
push 0xbc432d4
push 3
call fcn.0bc4b368
pop ecx
pop ecx
jmp 0xbc4b905
push esi
push 0xbc432b0
push 1
call fcn.0bc4b368
add esp, 0xc
push esi
call dword [sym.imp.KERNEL32.dll_SetLastError]
cmp dword [ebp - 0x234], 0
pop edi
pop esi
pop ebx
je 0xbc4b924
push dword [ebp - 0x234]
call fcn.0bc4a123
pop ecx
cmp dword [ebp - 0x23c], 0
je 0xbc4b939
push dword [ebp - 0x23c]
call fcn.0bc4a123
pop ecx
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x214]
xor ecx, ebp
call fcn.0bc64d0f
leave
ret 0x28