Function at 0x4196b0
Capabilities:
Hide graphical window
Inspect load icon resource

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x38
mov ecx, dword [ebp + 0x10]
push esi
push edi
call fcn.00415070
mov dword [esp + 8], eax
cmp eax, 0x1a
je 0x41978d
mov edi, dword [ebp + 8]
mov ecx, edi
call fcn.00428550
test eax, eax
jne 0x4196f7
push eax
push str.Error_GUI_initialization
push eax
call fcn.00426320
add esp, 0xc
xor eax, eax
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x10
call dword [sym.imp.dcapi.dll_is_admin]
test eax, eax
je 0x41971c
push 0
push str.Admin_Privileges_Required
push 0
call fcn.00426320
add esp, 0xc
xor eax, eax
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x10
call dword [sym.imp.dcapi.dll_is_wow64]
test eax, eax
je 0x419741
push 0
push str.Please_use_x64_version_of_DiskCryptor
push 0
call fcn.00426320
add esp, 0xc
xor eax, eax
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x10
call dword [sym.imp.dcapi.dll_dc_is_old_runned]
test eax, eax
je 0x419766
push 0
push str.DiskCryptor_0.1_0.4_installed__please_completely_uninstall_it_before_use_this_version.
push 0
call fcn.00426320
add esp, 0xc
xor eax, eax
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x10
call dword [sym.imp.dcapi.dll_dc_is_driver_works]
test eax, eax
jne 0x419797
xor edx, edx
lea ecx, [eax + 1]
call fcn.004199f0
test eax, eax
je 0x41978d
neg eax
push eax
push 0
push 0
call fcn.00426320
add esp, 0xc
xor eax, eax
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x10
call dword [sym.imp.dcapi.dll_dc_open_device]
test eax, eax
je 0x4197bb
push eax
push str.Can_not_open_DC_device
push 0
call fcn.00426320
add esp, 0xc
xor eax, eax
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x10
call dword [sym.imp.dcapi.dll_dc_get_version]
cmp eax, 0x351
jge 0x4197d1
mov edx, eax
mov ecx, 3
jmp 0x419775
jle 0x4197ed
push eax
push str.DiskCryptor_driver_v_d_detected_nPlease_use_last_program_version
push 0
call fcn.004264f0
add esp, 0xc
xor eax, eax
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x10
call dword [sym.imp.dcapi.dll_dc_efi_init]
call dword [sym.imp.dcapi.dll_dc_efi_check]
xorps xmm0, xmm0
mov dword [0x43acf8], eax
push 0x7b
movaps xmmword [esp + 0x14], xmm0
movq qword [esp + 0x34], xmm0
push edi
movaps xmmword [esp + 0x28], xmm0
mov dword [esp + 0x3c], str.DC_UI_DLG_CLASS
mov dword [esp + 0x1c], 0x4199e0
mov dword [esp + 0x24], 0x1e
call dword [sym.imp.USER32.dll_LoadIconW]
mov dword [esp + 0x24], eax
lea eax, [esp + 0x10]
push eax
call dword [sym.imp.USER32.dll_RegisterClassW]
push 0
push str.DC_UI_DLG_CLASS
call dword [sym.imp.USER32.dll_FindWindowW]
mov esi, eax
test esi, esi
je 0x41986e
push 5
push esi
call dword [sym.imp.USER32.dll_ShowWindow]
push esi
call dword [sym.imp.USER32.dll_SetForegroundWindow]
xor eax, eax
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x10
call dword [sym.imp.dcapi.dll_rnd_init]
test eax, eax
je 0x419892
push eax
push str.Can_not_initialize_RNG
push 0
call fcn.00426320
add esp, 0xc
xor eax, eax
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x10
push 0x43acc0
call dword [sym.imp.dcapi.dll_dc_load_config]
add esp, 4
test eax, eax
je 0x4198bf
push 0xffffffffffffffff
push str.Error_get_config
push 0
call fcn.00426320
add esp, 0xc
xor eax, eax
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x10
push 0x43ace0
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
push 0xae
push edi
mov dword [0x43ad04], 0x43ad00
mov dword [0x43ad00], 0x43ad00
mov dword [0x43acbc], 0x43acb8
mov dword [0x43acb8], 0x43acb8
mov dword [0x43acac], 0x43aca8
mov dword [0x43aca8], 0x43aca8
mov dword [0x43acb4], 0x43acb0
mov dword [0x43acb0], 0x43acb0
call dword [sym.imp.USER32.dll_LoadAcceleratorsW]
push 0
push 0x41dfa0
push 0
push 0x65
push 0
mov dword [0x43ad6c], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push eax
call dword [sym.imp.USER32.dll_CreateDialogParamW]
xor edx, edx
mov dword [esp + 0xc], eax
cmp dword [esp + 8], 0x19
mov ecx, 5
cmove ecx, edx
push ecx
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
push 0
push 0
push 0
lea eax, [esp + 0x1c]
push eax
call dword [sym.imp.USER32.dll_GetMessageW]
test eax, eax
je 0x4199bd
mov esi, dword [sym.imp.USER32.dll_TranslateMessage]
mov edi, dword [sym.imp.USER32.dll_DispatchMessageW]
lea eax, [esp + 0x10]
push eax
push dword [0x43ad6c]
push dword [esp + 0x14]
call dword [sym.imp.USER32.dll_TranslateAcceleratorW]
test eax, eax
jne 0x4199a8
lea eax, [esp + 0x10]
push eax
call esi
lea eax, [esp + 0x10]
push eax
call edi
push 0
push 0
push 0
lea eax, [esp + 0x1c]
push eax
call dword [sym.imp.USER32.dll_GetMessageW]
test eax, eax
jne 0x419981
push dword [0x43ad6c]
call dword [sym.imp.USER32.dll_DestroyAcceleratorTable]
pop edi
mov eax, 1
pop esi
mov esp, ebp
pop ebp
ret 0x10