Function at 0x401ef1
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
cmp dword [ebp + 8], 2
push ebx
push esi
push edi
jl 0x402033
cmp dword [ebp + 8], 3
jg 0x402033
mov ebx, dword [ebp + 0xc]
mov esi, dword [sym.imp.MSVCRT.dll__stricmp]
push 0x40416c
push dword [ebx + 4]
call esi
mov edi, eax
push 0x404168
push dword [ebx + 4]
neg edi
sbb edi, edi
inc edi
call esi
push 0x404164
push dword [ebx + 4]
call esi
neg eax
sbb eax, eax
push 0x404160
push dword [ebx + 4]
inc eax
mov dword [ebp + 0xc], eax
call esi
add esp, 0x20
neg eax
sbb eax, eax
xor esi, esi
inc eax
cmp edi, esi
jne 0x401f65
cmp dword [ebp + 0xc], esi
jne 0x401f6a
cmp eax, esi
je 0x401f7a
cmp dword [ebp + 0xc], esi
je 0x401f70
cmp dword [ebp + 8], 3
jne 0x401f7a
cmp eax, esi
je 0x401f8d
cmp dword [ebp + 8], 3
je 0x401f8d
push dword [sym.imp.MSVCIRT.dll_class_ostream_withassign_cout]
call 0x402047
pop ecx
push esi
call dword [sym.imp.MSVCRT.dll_exit]
push esi
call dword [sym.imp.ole32.dll_OleInitialize]
mov ebx, dword [ebx + 8]
cmp edi, esi
mov edi, dword [sym.imp.MSVCIRT.dll_public:_class_ostream____thiscall_ostream::operator___char_const__]
je 0x401fae
push dword [sym.imp.MSVCIRT.dll_class_ostream_withassign_cout]
call fcn.0040228f
jmp 0x402018
lea edx, [ebp + 8]
mov ecx, ebx
mov dword [ebp + 8], esi
call fcn.00401e0e
lea eax, [ebp - 0x10]
push eax
push dword [ebp + 8]
call dword [sym.imp.ole32.dll_CLSIDFromProgID]
push dword [ebp + 8]
call dword [sym.imp.ole32.dll_CoTaskMemFree]
lea eax, [ebp - 0x10]
push eax
call fcn.00401c84
test eax, eax
pop ecx
jne 0x401ffc
mov ecx, dword [sym.imp.MSVCIRT.dll_class_ostream_withassign_cout]
push str._is_not_a_valid_JavaBean_ProgID._n
push ebx
push str.Error:_
call edi
mov ecx, eax
call edi
mov ecx, eax
call edi
jmp 0x402019
cmp dword [ebp + 0xc], esi
lea eax, [ebp - 0x10]
push eax
push dword [sym.imp.MSVCIRT.dll_class_ostream_withassign_cout]
je 0x402012
call fcn.004020b9
jmp 0x402017
call fcn.00402319
pop ecx
pop ecx
mov ecx, dword [sym.imp.MSVCIRT.dll_class_ostream_withassign_cout]
push 0x404118
call edi
call dword [sym.imp.ole32.dll_OleUninitialize]
pop edi
pop esi
xor eax, eax
pop ebx
leave
ret
push dword [sym.imp.MSVCIRT.dll_class_ostream_withassign_cout]
call 0x402047
pop ecx
push 0xffffffffffffffff
call dword [sym.imp.MSVCRT.dll_exit]
push esi
mov esi, dword [sym.imp.MSVCIRT.dll_public:_class_ostream____thiscall_ostream::operator___char_const__]
push edi
mov edi, dword [esp + 0xc]
push str.Usage:_UnregBean__options___ProgID__n_n
mov ecx, edi
call esi
push str.where_options_include:_n
mov ecx, edi
call esi
push str.____h______print_out_this_message_n
mov ecx, edi
call esi
push str.____d______print_out_all_JavaBean_ProgIDs_in_the_system_n
mov ecx, edi
call esi
push str.particular_JavaBean_ProgID_n
push str.____i______print_out_information_about_a
mov ecx, edi
call esi
mov ecx, eax
call esi
push str._using_ProgID_n_n
push str.____u______unregister_a_JavaBean_from_the_system
mov ecx, edi
call esi
mov ecx, eax
call esi
push str.UnregBean_unregisters_a_JavaBean_from_the_Windows_registry._n
mov ecx, edi
call esi
push str._program_ID._n
push str.ProgID_can_be_either_version_dependent_or_version_independent
mov ecx, edi
call esi
mov ecx, eax
call esi
pop edi
pop esi
ret