Function at 0x402400
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x42c
mov eax, dword [0x434304]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
xor ebx, ebx
push 0x206
lea ecx, [ebp - 0x416]
xor eax, eax
push ebx
push ecx
mov dword [ebp - 0x41c], ebx
mov word [ebp - 0x418], ax
call fcn.0041d650
add esp, 0xc
push 0x206
lea eax, [ebp - 0x20e]
xor edx, edx
push ebx
push eax
mov word [ebp - 0x210], dx
call fcn.0041d650
add esp, 0xc
push str.SoftwareAtherosVistaAddOn
lea ecx, [ebp - 0x418]
push 0x104
push ecx
xor edi, edi
call fcn.00415b9a
mov esi, dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
add esp, 0xc
lea edx, [ebp - 0x41c]
push edx
push 1
push ebx
lea eax, [ebp - 0x418]
push eax
push 0x80000002
call esi
test eax, eax
jne 0x402528
lea ecx, [ebp - 0x428]
push ecx
lea edx, [ebp - 0x420]
push edx
push eax
push eax
mov eax, dword [ebp - 0x41c]
push str.COMBINEAUDIO
mov dword [ebp - 0x420], ebx
mov ebx, dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
push eax
mov dword [ebp - 0x428], 4
call ebx
xor ecx, ecx
cmp dword [ebp - 0x420], ecx
lea edx, [ebp - 0x428]
push edx
setne cl
lea eax, [ebp - 0x420]
push eax
push 0
push 0
push str.BT30
mov dword [ebp - 0x428], 4
mov edi, ecx
mov ecx, dword [ebp - 0x41c]
push ecx
mov dword [ebp - 0x420], 0
call ebx
mov edx, dword [ebp - 0x41c]
xor ebx, ebx
cmp dword [ebp - 0x420], ebx
push edx
setne bl
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [0x436840], edi
mov dword [0x436844], ebx
test ebx, ebx
je 0x4026cf
push 0x208
lea eax, [ebp - 0x418]
push 0
push eax
call fcn.0041d650
add esp, 0xc
push str.SystemCurrentControlSetServicesBTHPORTParametersLocalServices_s
lea ecx, [ebp - 0x418]
push 0x104
push ecx
call fcn.00415b9a
add esp, 0xc
push str.CBECAB40_A2C8_4ab3_ADC1_DE0FE95D8600
lea edx, [ebp - 0x418]
push edx
lea eax, [ebp - 0x210]
push 0x104
push eax
call fcn.00415638
add esp, 0x10
lea ecx, [ebp - 0x41c]
push ecx
push 1
push 0
lea edx, [ebp - 0x210]
push edx
push 0x80000002
call esi
test eax, eax
je 0x402606
cmp eax, 2
jne 0x402613
mov ecx, dword [0x428608]
mov edx, dword [0x42860c]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x428610]
mov dword [eax + 4], edx
mov edx, dword [0x428614]
mov dword [eax + 8], ecx
push 1
mov ebx, 0xa
mov ecx, str.L2Cap_Interface
mov dword [eax + 0xc], edx
call fcn.00402300
add esp, 0x14
test eax, eax
je 0x402613
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.Fail_to_set_BT_service_info__error___d_n
lea ecx, [ebx - 9]
call fcn.00415320
add esp, 8
jmp 0x402613
mov eax, dword [ebp - 0x41c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push 0x208
lea ecx, [ebp - 0x418]
push 0
push ecx
call fcn.0041d650
add esp, 0xc
push str.SystemCurrentControlSetServicesBTHPORTParametersLocalServices_s
lea edx, [ebp - 0x418]
push 0x104
push edx
call fcn.00415b9a
add esp, 0xc
push str.DD533152_01F4_435C_ABFE_984BC21A2A65
lea eax, [ebp - 0x418]
push eax
lea ecx, [ebp - 0x210]
push 0x104
push ecx
call fcn.00415638
add esp, 0x10
lea edx, [ebp - 0x41c]
push edx
push 1
push 0
lea eax, [ebp - 0x210]
push eax
push 0x80000002
call esi
test eax, eax
je 0x4026c2
cmp eax, 2
jne 0x4026cf
mov ecx, dword [0x428618]
mov edx, dword [0x42861c]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x428620]
mov dword [eax + 4], edx
mov edx, dword [0x428624]
mov dword [eax + 8], ecx
push 1
mov ebx, 0xa
mov ecx, str.Lw_L2Cap_Interface
mov dword [eax + 0xc], edx
call fcn.00402300
add esp, 0x14
jmp 0x4026cf
mov eax, dword [ebp - 0x41c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [0x42ea3c]
mov edx, dword [0x42ea40]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x42ea44]
mov dword [eax + 4], edx
mov edx, dword [0x42ea48]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
call fcn.00401eb0
add esp, 0x10
test edi, edi
jne 0x402a78
test eax, eax
je 0x4027e2
push 0x208
lea eax, [ebp - 0x210]
push edi
push eax
call fcn.0041d650
add esp, 0xc
push str.SystemCurrentControlSetServicesBTHPORTParametersLocalServices_s
lea ecx, [ebp - 0x418]
push 0x104
push ecx
call fcn.00415b9a
add esp, 0xc
push str.61118058_486C_4bb0_B4B8_ACE4DCADEC44
lea edx, [ebp - 0x418]
push edx
lea eax, [ebp - 0x210]
push 0x104
push eax
call fcn.00415638
add esp, 0x10
lea ecx, [ebp - 0x41c]
push ecx
push 1
push edi
lea edx, [ebp - 0x210]
push edx
push 0x80000002
call esi
test eax, eax
je 0x4027d5
cmp eax, 2
jne 0x4027e2
mov ecx, dword [0x428638]
mov edx, dword [0x42863c]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x428640]
mov dword [eax + 4], edx
mov edx, dword [0x428644]
mov dword [eax + 8], ecx
push 1
lea ebx, [edi + 0xa]
mov ecx, str.A2dp_Source_Interface
mov dword [eax + 0xc], edx
call fcn.00402300
add esp, 0x14
test eax, eax
je 0x4027e2
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.Fail_to_set_BT_service_info__error___d_n
lea ecx, [edi + 1]
call fcn.00415320
add esp, 8
jmp 0x4027e2
mov eax, dword [ebp - 0x41c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [0x42ea4c]
mov edx, dword [0x42ea50]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x42ea54]
mov dword [eax + 4], edx
mov edx, dword [0x42ea58]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
call fcn.00401eb0
add esp, 0x10
test eax, eax
je 0x4028f1
push 0x208
lea eax, [ebp - 0x210]
push 0
push eax
call fcn.0041d650
add esp, 0xc
push str.SystemCurrentControlSetServicesBTHPORTParametersLocalServices_s
lea ecx, [ebp - 0x418]
push 0x104
push ecx
call fcn.00415b9a
add esp, 0xc
push str.F75A6878_698C_4f1d_806C_DF5153794059
lea edx, [ebp - 0x418]
push edx
lea eax, [ebp - 0x210]
push 0x104
push eax
call fcn.00415638
add esp, 0x10
lea ecx, [ebp - 0x41c]
push ecx
push 1
push 0
lea edx, [ebp - 0x210]
push edx
push 0x80000002
call esi
test eax, eax
je 0x4028e4
cmp eax, 2
jne 0x4028f1
mov ecx, dword [0x428648]
mov edx, dword [0x42864c]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x428650]
mov dword [eax + 4], edx
mov edx, dword [0x428654]
mov dword [eax + 8], ecx
push 1
mov ebx, 0xa
mov ecx, str.A2dp_Sink_Interface
mov dword [eax + 0xc], edx
call fcn.00402300
add esp, 0x14
test eax, eax
je 0x4028f1
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.Fail_to_set_BT_service_info__error___d_n
lea ecx, [ebx - 9]
call fcn.00415320
add esp, 8
jmp 0x4028f1
mov eax, dword [ebp - 0x41c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [0x42ea6c]
mov edx, dword [0x42ea70]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x42ea74]
mov dword [eax + 4], edx
mov edx, dword [0x42ea78]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
call fcn.00401eb0
add esp, 0x10
test eax, eax
jne 0x402991
mov ecx, dword [0x42ea8c]
mov edx, dword [0x42ea90]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x42ea94]
mov dword [eax + 4], edx
mov edx, dword [0x42ea98]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
call fcn.00401eb0
add esp, 0x10
test eax, eax
jne 0x402991
mov ecx, dword [0x42ea9c]
mov edx, dword [0x42eaa0]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x42eaa4]
mov dword [eax + 4], edx
mov edx, dword [0x42eaa8]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
call fcn.00401eb0
add esp, 0x10
test eax, eax
je 0x402d17
push 0x208
lea eax, [ebp - 0x210]
push 0
push eax
call fcn.0041d650
add esp, 0xc
push str.SystemCurrentControlSetServicesBTHPORTParametersLocalServices_s
lea ecx, [ebp - 0x418]
push 0x104
push ecx
call fcn.00415b9a
add esp, 0xc
push str.237C20BD_9A3B_414e_BA6E_FBB375D4F542
lea edx, [ebp - 0x418]
push edx
lea eax, [ebp - 0x210]
push 0x104
push eax
call fcn.00415638
add esp, 0x10
lea ecx, [ebp - 0x41c]
push ecx
push 1
push 0
lea edx, [ebp - 0x210]
push edx
push 0x80000002
call esi
test eax, eax
je 0x402a66
cmp eax, 2
jne 0x402d17
mov ecx, dword [0x428658]
mov edx, dword [0x42865c]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x428660]
mov dword [eax + 4], edx
mov edx, dword [0x428664]
mov dword [eax + 8], ecx
push 1
mov ebx, 0xa
mov ecx, str.Sco_Interface
mov dword [eax + 0xc], edx
call fcn.00402300
add esp, 0x14
test eax, eax
je 0x402d17
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.Fail_to_set_BT_service_info__error___d_n
lea ecx, [ebx - 9]
call fcn.00415320
add esp, 8
jmp 0x402d17
mov eax, dword [ebp - 0x41c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x402d17
test eax, eax
jne 0x402b58
mov ecx, dword [0x42ea4c]
mov edx, dword [0x42ea50]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x42ea54]
mov dword [eax + 4], edx
mov edx, dword [0x42ea58]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
call fcn.00401eb0
add esp, 0x10
test eax, eax
jne 0x402b58
mov ecx, dword [0x42ea6c]
mov edx, dword [0x42ea70]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x42ea74]
mov dword [eax + 4], edx
mov edx, dword [0x42ea78]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
call fcn.00401eb0
add esp, 0x10
test eax, eax
jne 0x402b58
mov ecx, dword [0x42ea8c]
mov edx, dword [0x42ea90]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x42ea94]
mov dword [eax + 4], edx
mov edx, dword [0x42ea98]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
call fcn.00401eb0
add esp, 0x10
test eax, eax
jne 0x402b58
mov ecx, dword [0x42ea9c]
mov edx, dword [0x42eaa0]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x42eaa4]
mov dword [eax + 4], edx
mov edx, dword [0x42eaa8]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
call fcn.00401eb0
add esp, 0x10
test eax, eax
jne 0x402b58
xor edi, edi
jmp 0x402b5d
mov edi, 1
push str.Install_A2DP
mov ecx, 4
call fcn.00415320
add esp, 4
push 0x208
lea eax, [ebp - 0x210]
push 0
push eax
call fcn.0041d650
add esp, 0xc
push str.SystemCurrentControlSetServicesBTHPORTParametersLocalServices_s
lea ecx, [ebp - 0x418]
push 0x104
push ecx
call fcn.00415b9a
add esp, 0xc
push str.61118058_486C_4bb0_B4B8_ACE4DCADEC44
lea edx, [ebp - 0x418]
push edx
lea eax, [ebp - 0x210]
push 0x104
push eax
call fcn.00415638
add esp, 0x10
lea ecx, [ebp - 0x41c]
push ecx
push 1
push 0
lea edx, [ebp - 0x210]
push edx
push 0x80000002
call esi
mov ebx, eax
test ebx, ebx
jne 0x402c24
mov edx, dword [ebp - 0x41c]
mov dword [ebp - 0x424], eax
lea eax, [ebp - 0x42c]
push eax
lea ecx, [ebp - 0x424]
push ecx
push ebx
push 0x18
push str.Enabled
push 0x4296d4
push edx
mov dword [ebp - 0x42c], 4
call dword [sym.imp.ADVAPI32.dll_RegGetValueW]
mov ebx, eax
mov eax, dword [ebp - 0x41c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [ebp - 0x424]
push ecx
push edi
push 0x4296d8
mov ecx, 4
call fcn.00415320
add esp, 0xc
test ebx, ebx
jne 0x402c51
xor edx, edx
cmp dword [ebp - 0x424], edx
setne dl
cmp edx, edi
je 0x402ca7
mov ecx, dword [0x428638]
mov edx, dword [0x42863c]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x428640]
mov dword [eax + 4], edx
mov edx, dword [0x428644]
mov dword [eax + 8], ecx
push edi
mov ebx, 0xa
mov ecx, str.A2dp_Source_Interface
mov dword [eax + 0xc], edx
call fcn.00402300
add esp, 0x14
test eax, eax
je 0x402ca7
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.Fail_to_set_BT_service_info_BthA2dpSource___error___d_n
lea ecx, [ebx - 9]
call fcn.00415320
add esp, 8
mov ecx, dword [0x428648]
mov edx, dword [0x42864c]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x428650]
mov dword [eax + 4], edx
mov edx, dword [0x428654]
mov dword [eax + 8], ecx
push 0
mov ebx, 1
mov ecx, str.A2dp_Sink_Interface
mov dword [eax + 0xc], edx
call fcn.00402300
mov ecx, dword [0x428658]
mov edx, dword [0x42865c]
add esp, 4
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x428660]
mov dword [eax + 4], edx
mov edx, dword [0x428664]
mov dword [eax + 8], ecx
push 0
mov ecx, str.Sco_Interface
mov dword [eax + 0xc], edx
call fcn.00402300
add esp, 0x14
mov ecx, dword [0x42ea5c]
mov edx, dword [0x42ea60]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x42ea64]
mov dword [eax + 4], edx
mov edx, dword [0x42ea68]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
call fcn.00401eb0
add esp, 0x10
test eax, eax
je 0x402e26
push 0x208
lea eax, [ebp - 0x210]
push 0
push eax
call fcn.0041d650
add esp, 0xc
push str.SystemCurrentControlSetServicesBTHPORTParametersLocalServices_s
lea ecx, [ebp - 0x418]
push 0x104
push ecx
call fcn.00415b9a
add esp, 0xc
push str.13B67E97_545B_41dc_AC44_6FEDE5FE6087
lea edx, [ebp - 0x418]
push edx
lea eax, [ebp - 0x210]
push 0x104
push eax
call fcn.00415638
add esp, 0x10
lea ecx, [ebp - 0x41c]
push ecx
push 1
push 0
lea edx, [ebp - 0x210]
push edx
push 0x80000002
call esi
test eax, eax
je 0x402e19
cmp eax, 2
jne 0x402e26
mov ecx, dword [0x428668]
mov edx, dword [0x42866c]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x428670]
mov dword [eax + 4], edx
mov edx, dword [0x428674]
mov dword [eax + 8], ecx
push 1
mov ebx, 0xa
mov ecx, str.Avrcp_Interface
mov dword [eax + 0xc], edx
call fcn.00402300
add esp, 0x14
test eax, eax
je 0x402e26
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.Fail_to_set_BT_service_info__error___d_n
lea ecx, [ebx - 9]
call fcn.00415320
add esp, 8
jmp 0x402e26
mov eax, dword [ebp - 0x41c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [0x42eacc]
mov edx, dword [0x42ead0]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x42ead4]
mov dword [eax + 4], edx
mov edx, dword [0x42ead8]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
call fcn.00401eb0
add esp, 0x10
test eax, eax
je 0x402f1a
push 0x208
lea eax, [ebp - 0x210]
push 0
push eax
call fcn.0041d650
add esp, 0xc
push str.SystemCurrentControlSetServicesBTHPORTParametersLocalServices_s
lea ecx, [ebp - 0x418]
push 0x104
push ecx
call fcn.00415b9a
add esp, 0xc
push str.06a7d6e8_753a_4d7a_803d_799430aaa441
lea edx, [ebp - 0x418]
push edx
lea eax, [ebp - 0x210]
push 0x104
push eax
call fcn.00415638
add esp, 0x10
lea ecx, [ebp - 0x41c]
push ecx
push 1
push 0
lea edx, [ebp - 0x210]
push edx
push 0x80000002
call esi
test eax, eax
je 0x402f0d
cmp eax, 2
jne 0x402f1a
mov ecx, dword [0x428688]
mov edx, dword [str.:uzM]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x428690]
mov dword [eax + 4], edx
mov edx, dword [0x428694]
mov dword [eax + 8], ecx
push 1
mov ebx, 0xa
mov ecx, str.VDP_Interface
mov dword [eax + 0xc], edx
call fcn.00402300
add esp, 0x14
jmp 0x402f1a
mov eax, dword [ebp - 0x41c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [0x42ea7c]
mov edx, dword [0x42ea80]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x42ea84]
mov dword [eax + 4], edx
mov edx, dword [0x42ea88]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
call fcn.00401eb0
add esp, 0x10
test eax, eax
je 0x40300e
push 0x208
lea eax, [ebp - 0x210]
push 0
push eax
call fcn.0041d650
add esp, 0xc
push str.SystemCurrentControlSetServicesBTHPORTParametersLocalServices_s
lea ecx, [ebp - 0x418]
push 0x104
push ecx
call fcn.00415b9a
add esp, 0xc
push str.BC21181D_AFAB_49A0_8DD9_EFFA9268E98F
lea edx, [ebp - 0x418]
push edx
lea eax, [ebp - 0x210]
push 0x104
push eax
call fcn.00415638
add esp, 0x10
lea ecx, [ebp - 0x41c]
push ecx
push 1
push 0
lea edx, [ebp - 0x210]
push edx
push 0x80000002
call esi
test eax, eax
je 0x403001
cmp eax, 2
jne 0x40300e
mov ecx, dword [0x428698]
mov edx, dword [0x42869c]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x4286a0]
mov dword [eax + 4], edx
mov edx, dword [0x4286a4]
mov dword [eax + 8], ecx
push 1
mov ebx, 0xa
mov ecx, 0x42849c
mov dword [eax + 0xc], edx
call fcn.00402300
add esp, 0x14
jmp 0x40300e
mov eax, dword [ebp - 0x41c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [0x42eaac]
mov edx, dword [0x42eab0]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x42eab4]
mov dword [eax + 4], edx
mov edx, dword [0x42eab8]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
call fcn.00401eb0
add esp, 0x10
test eax, eax
je 0x40311d
push 0x208
lea eax, [ebp - 0x210]
push 0
push eax
call fcn.0041d650
add esp, 0xc
push str.SystemCurrentControlSetServicesBTHPORTParametersLocalServices_s
lea ecx, [ebp - 0x418]
push 0x104
push ecx
call fcn.00415b9a
add esp, 0xc
push str.E8AD5CB4_FB2B_4a43_8FD7_A28367D00E0A
lea edx, [ebp - 0x418]
push edx
lea eax, [ebp - 0x210]
push 0x104
push eax
call fcn.00415638
add esp, 0x10
lea ecx, [ebp - 0x41c]
push ecx
push 1
push 0
lea edx, [ebp - 0x210]
push edx
push 0x80000002
call esi
test eax, eax
je 0x403110
cmp eax, 2
jne 0x40311d
mov ecx, dword [0x428678]
mov edx, dword [0x42867c]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x428680]
mov dword [eax + 4], edx
mov edx, dword [0x428684]
mov dword [eax + 8], ecx
push 1
mov ebx, 0xa
mov ecx, str.HID_Interface
mov dword [eax + 0xc], edx
call fcn.00402300
add esp, 0x14
test eax, eax
je 0x40311d
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.Fail_to_set_BT_service_info__error___d_n
lea ecx, [ebx - 9]
call fcn.00415320
add esp, 8
jmp 0x40311d
mov eax, dword [ebp - 0x41c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [0x42eabc]
mov edx, dword [0x42eac0]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x42eac4]
mov dword [eax + 4], edx
mov edx, dword [0x42eac8]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
call fcn.00401eb0
add esp, 0x10
test eax, eax
je 0x40322c
push 0x208
lea eax, [ebp - 0x210]
push 0
push eax
call fcn.0041d650
add esp, 0xc
push str.SystemCurrentControlSetServicesBTHPORTParametersLocalServices_s
lea ecx, [ebp - 0x418]
push 0x104
push ecx
call fcn.00415b9a
add esp, 0xc
push str.8855C1D2_9BFE_4b96_BCBF_CBB9682C76BD
lea edx, [ebp - 0x418]
push edx
lea eax, [ebp - 0x210]
push 0x104
push eax
call fcn.00415638
add esp, 0x10
lea ecx, [ebp - 0x41c]
push ecx
push 1
push 0
lea edx, [ebp - 0x210]
push edx
push 0x80000002
call esi
test eax, eax
je 0x40321f
cmp eax, 2
jne 0x40322c
mov ecx, dword [0x428628]
mov edx, dword [0x42862c]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x428630]
mov dword [eax + 4], edx
mov edx, dword [0x428634]
mov dword [eax + 8], ecx
push 1
mov ebx, 0xa
mov ecx, str.Hcrp_Interface
mov dword [eax + 0xc], edx
call fcn.00402300
add esp, 0x14
test eax, eax
je 0x40322c
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.Fail_to_set_BT_service_info__error___d_n
lea ecx, [ebx - 9]
call fcn.00415320
add esp, 8
jmp 0x40322c
mov eax, dword [ebp - 0x41c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push 0
lea ecx, [ebp - 0x41c]
push ecx
push 0
push 0x20006
push 0
push 0
push 0
push str.SoftwareAtherosVMDevice
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
jne 0x403263
mov edx, dword [ebp - 0x41c]
push edx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0041558a
mov esp, ebp
pop ebp
ret