Function at 0x401d50
Capabilities:
Check if file exists

Disassembly:
cmp byte [0x47f020], 0
jne 0x401d62
cmp byte [0x47f021], 0
je 0x401d68
mov eax, dword [0x47f024]
ret
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x6c
mov eax, dword [0x484aa4]
lea esi, [ebp - 0x3c]
mov ecx, esi
mov dword [esp + 8], 0
lea ebx, [ebp - 0x28]
mov dword [esp + 4], eax
mov dword [esp], 0
mov dword [ebp - 0x3c], 0x484ab0
call fcn.00454e60
sub esp, 0xc
mov dword [esp + 4], 0x10
mov dword [esp], ebx
call fcn.00409d40
mov dword [esp], ebx
call fcn.00409c90
test al, al
jne 0x401e37
mov dword [esp], ebx
call fcn.00409e00
cmp eax, 1
je 0x401e60
mov dword [esp + 8], ebx
mov dword [esp + 4], str.Android_Emulator_requires_an_Intel_processor_with_VT_x_and_NX_support.__Your_CPU:__s
mov dword [esp], esi
call fcn.00405070
mov byte [0x47f020], 1
mov dword [0x47f128], 3
mov ecx, dword [ebp - 0x3c]
mov dword [esp + 8], 0x4854bf
mov dword [esp + 4], 0x100
mov dword [esp], 0x47f028
mov dword [esp + 0xc], ecx
call fcn.00401c90
mov edx, dword [ebp - 0x3c]
mov edi, dword [0x47f024]
lea ecx, [edx - 0xc]
cmp ecx, 0x484aa4
jne 0x402231
lea esp, [ebp - 0xc]
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp], esi
mov esi, 1
mov dword [esp + 8], ebx
mov dword [esp + 4], str.Android_Emulator_does_not_support_nested_virtualization.__Your_CPU:__s
call fcn.00405070
mov byte [0x47f020], 1
mov dword [0x47f128], esi
jmp 0x401df2
call fcn.00409f30
test al, al
jne 0x401e96
call fcn.0040a010
test al, al
je 0x402051
mov ecx, esi
mov esi, 0xf
mov dword [esp + 4], 0x98
mov dword [esp], str.Please_disable_Hyper_V_before_using_the_Android_Emulator.__Start_a_command_prompt_as_Administrator__run_bcdedit__set_hypervisorlaunchtype_off__reboot.
call fcn.004541b0
sub esp, 8
jmp 0x401e50
call fcn.0040a060
test al, al
lea esi, [esi]
je 0x402074
mov dword [esp], str.Intel_Hardware_Accelerated_Execution_Manager
call fcn.00402ab0
test eax, eax
mov edi, eax
je 0x401f26
cmp edi, 0x6000000
jg 0x401f50
mov edx, 0x6000001
lea eax, [ebp - 0x30]
call fcn.00401cc0
mov edx, edi
mov eax, ebx
call fcn.00401cc0
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x28]
mov dword [esp + 4], str.HAXM_must_be_updated__version__s____s_.
mov dword [esp], esi
mov dword [esp + 0xc], edx
mov dword [esp + 8], eax
call fcn.00405070
mov edi, dword [ebp - 0x28]
lea ecx, [edi - 0xc]
cmp ecx, 0x484aa4
jne 0x402272
mov eax, dword [ebp - 0x30]
lea ecx, [eax - 0xc]
cmp ecx, 0x484aa4
jne 0x402293
mov esi, 7
jmp 0x401e50
mov ecx, esi
mov esi, 6
mov dword [esp + 4], 0x25
mov dword [esp], str.HAXM_is_not_installed_on_this_machine
call fcn.004541b0
sub esp, 8
jmp 0x401e50
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], pe_nt_image_headers32
mov dword [esp + 0x10], 2
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0xc0000000
mov dword [esp], str..HAX
call dword [sym.imp.KERNEL32.dll_CreateFileA]
sub esp, 0x1c
cmp eax, 0xffffffff
mov dword [ebp - 0x4c], eax
je 0x402175
lea ecx, [ebp - 0x38]
mov eax, dword [ebp - 0x4c]
mov dword [esp + 0x18], ecx
lea edx, [ebp - 0x30]
mov dword [ebp - 0x54], ecx
mov ecx, dword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov dword [esp + 0x10], edx
mov dword [ebp - 0x38], 0
mov dword [esp + 0x1c], 0
mov dword [ebp - 0x50], ecx
mov dword [esp + 0x14], 8
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x40002400
mov dword [esp], eax
call ecx
mov edx, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x54]
sub esp, 0x20
test eax, eax
je 0x402151
mov eax, dword [ebp - 0x2c]
cmp eax, 2
ja 0x402097
mov dword [esp], esi
mov esi, 0xe
mov dword [esp + 0xc], 3
mov dword [esp + 8], eax
mov dword [esp + 4], str.HAX_version___d__is_too_old__need_at_least__d_.
call fcn.00405070
mov ecx, dword [ebp - 0x4c]
mov dword [esp], ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
test esi, esi
jne 0x401e50
mov dword [0x47f024], 2
jmp 0x401e50
mov ecx, esi
mov esi, 4
mov dword [esp + 4], 0x5f
mov dword [esp], str.Android_Emulator_requires_an_Intel_processor_with_VT_x_and_NX_support.___VT_x_is_not_supported_
call fcn.004541b0
sub esp, 8
jmp 0x401e50
mov ecx, esi
mov esi, 5
mov dword [esp + 4], 0x5d
mov dword [esp], str.Android_Emulator_requires_an_Intel_processor_with_VT_x_and_NX_support.___NX_is_not_supported_
call fcn.004541b0
sub esp, 8
jmp 0x401e50
mov dword [esp + 0x18], ecx
mov ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x14], 0x10
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x40002440
mov dword [esp], ecx
call edx
sub esp, 0x20
test eax, eax
je 0x4021a9
test byte [ebp - 0x28], 1
jne 0x402110
movzx eax, word [ebp - 0x26]
test al, 1
jne 0x4021cd
test al, 2
jne 0x4021ff
mov edx, edi
lea eax, [ebp - 0x34]
call fcn.00401cc0
mov edi, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x34]
mov dword [esp], esi
mov dword [esp + 4], str.HAXM_version__s___d__is_installed_and_usable.
mov dword [esp + 0xc], edi
mov dword [esp + 8], edx
call fcn.00405070
mov esi, dword [ebp - 0x34]
lea ecx, [esi - 0xc]
cmp ecx, 0x484aa4
jne 0x40224f
xor esi, esi
jmp 0x40202b
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esp], esi
mov esi, 0xd
mov dword [esp + 4], str.Could_not_extract_HAX_module_version:__u
mov dword [esp + 8], eax
call fcn.00405070
jmp 0x40202b
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 2
nop
je 0x402218
cmp eax, 5
je 0x4021e6
mov dword [esp], esi
mov esi, 0xc
mov dword [esp + 8], eax
mov dword [esp + 4], str.Opening_HAX_kernel_module_failed:__u
call fcn.00405070
jmp 0x401e50
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esp], esi
mov esi, 0xd
mov dword [esp + 4], str.Could_not_extract_HAX_capability:__u
mov dword [esp + 8], eax
call fcn.00405070
jmp 0x40202b
mov ecx, esi
mov dword [esp], str.VT_feature_disabled_in_BIOS_UEFI
call fcn.00454180
push esi
mov esi, 9
jmp 0x40202b
mov ecx, esi
mov esi, 0xb
mov dword [esp], str.Unable_to_open_HAXM_device:_ERROR_ACCESS_DENIED
call fcn.00454180
push edi
jmp 0x401e50
mov ecx, esi
mov esi, 0xa
mov dword [esp], str.NX_feature_disabled_in_BIOS_UEFI
call fcn.00454180
push ecx
jmp 0x40202b
mov ecx, esi
mov esi, 8
mov dword [esp], str.Unable_to_open_HAXM_device:_ERROR_FILE_NOT_FOUND
call fcn.00454180
push eax
jmp 0x401e50
or esi, 0xffffffff
lock xadd dword [edx - 4], esi
test esi, esi
jg 0x401e2d
mov dword [esp], ebx
call fcn.00453930
push eax
jmp 0x401e2d
or eax, 0xffffffff
lock xadd dword [esi - 4], eax
test eax, eax
jg 0x40214a
lea edi, [ebp - 0x3d]
xor esi, esi
mov dword [esp], edi
call fcn.00453930
push edx
jmp 0x40202b
or esi, 0xffffffff
lock xadd dword [edi - 4], esi
test esi, esi
jg 0x401f0a
lea edx, [ebp - 0x34]
mov dword [esp], edx
call fcn.00453930
push eax
jmp 0x401f0a
or edi, 0xffffffff
lock xadd dword [eax - 4], edi
test edi, edi
jg 0x401f1c
mov dword [esp], ebx
call fcn.00453930
push eax
jmp 0x401f1c