Function at 0x407253
Capabilities:
Hide graphical window
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x68
mov eax, dword [0x426014]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
push 0x64
push 0x426698
push 0x64
push edi
call dword [sym.imp.USER32.dll_LoadStringW]
push 0x42667c
push 0xf003f
push 0
push str.SoftwareWolichengWOMic
push closesocket
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov eax, dword [0x42667c]
mov ebx, dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov dword [ebp - 8], 0x409
mov dword [ebp - 0x14], 4
mov dword [ebp - 0xc], 4
test eax, eax
je 0x4072f3
lea ecx, [ebp - 0xc]
push ecx
lea ecx, [ebp - 8]
push ecx
lea ecx, [ebp - 0x14]
push ecx
push 0
push str.language
push eax
call ebx
mov eax, dword [ebp - 8]
cmp eax, 0x419
je 0x4072e8
cmp eax, 0x804
jne 0x4072f3
push 0x22
push 0
push str.Resource_cn.dll
jmp 0x4072fc
push 0x22
push 0
push str.Resource_ru.dll
jmp 0x4072fc
push 0x22
push 0
push str.Resource_en.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov esi, dword [sym.imp.USER32.dll_LoadIconW]
push 0xe6
push edi
mov dword [0x426684], eax
mov dword [ebp - 0x4c], 0x30
mov dword [ebp - 0x48], 3
mov dword [ebp - 0x44], 0x407570
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], edi
call esi
push 0xe7
push edi
mov dword [ebp - 0x34], eax
call esi
push 0x7f00
push 0
mov dword [ebp - 0x20], eax
call dword [sym.imp.USER32.dll_LoadCursorW]
mov dword [ebp - 0x30], eax
lea eax, [ebp - 0x4c]
push eax
mov dword [ebp - 0x2c], 6
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x24], str.WO_Mic_Window_Class
call dword [sym.imp.USER32.dll_RegisterClassExW]
cmp dword [0x426760], 0xb7
jne 0x4073c3
push 0x426698
push str.WO_Mic_Window_Class
call dword [sym.imp.USER32.dll_FindWindowW]
mov esi, eax
test esi, esi
je 0x4074c5
push 5
push esi
call dword [sym.imp.USER32.dll_ShowWindow]
push esi
call dword [sym.imp.USER32.dll_SetForegroundWindow]
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0041c5a7
mov esp, ebp
pop ebp
ret 0x10
mov eax, dword [0x42667c]
mov dword [0x426688], edi
mov dword [ebp - 8], 4
mov dword [ebp - 0x10], 4
mov dword [ebp - 0xc], 0x1f4
mov dword [ebp - 0x14], 0x1f4
mov dword [ebp - 0x1c], 0x258
mov dword [ebp - 0x18], 0x190
test eax, eax
je 0x407463
lea ecx, [ebp - 0x10]
push ecx
lea ecx, [ebp - 0xc]
push ecx
lea ecx, [ebp - 8]
push ecx
push 0
push str.xywh
push eax
call ebx
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 8]
push eax
push 0
push 0x422a80
push dword [0x42667c]
call ebx
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp - 8]
push eax
push 0
push 0x422a84
push dword [0x42667c]
call ebx
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 8]
push eax
push 0
push 0x422a88
push dword [0x42667c]
call ebx
push 0xd2
push dword [0x426684]
call dword [sym.imp.USER32.dll_LoadMenuW]
mov esi, eax
push 2
push esi
call dword [sym.imp.USER32.dll_GetSubMenu]
test eax, eax
je 0x407491
push 0x400
push 1
push eax
call dword [sym.imp.USER32.dll_DeleteMenu]
push 0
push dword [0x426688]
push esi
push 0
push dword [ebp - 0x18]
push dword [ebp - 0x1c]
push dword [ebp - 0x14]
push dword [ebp - 0xc]
push 0xcf0000
push 0x426698
push str.WO_Mic_Window_Class
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
mov esi, eax
test esi, esi
jne 0x4074da
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0041c5a7
mov esp, ebp
pop ebp
ret 0x10
push dword [ebp + 0x14]
push esi
call dword [sym.imp.USER32.dll_ShowWindow]
push esi
call dword [sym.imp.USER32.dll_UpdateWindow]
push 0xe8
push edi
call dword [sym.imp.USER32.dll_LoadAcceleratorsW]
mov esi, dword [sym.imp.USER32.dll_GetMessageW]
push 0
push 0
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0x68]
push 0
push eax
call esi
test eax, eax
je 0x407550
mov edi, dword [sym.imp.USER32.dll_TranslateMessage]
mov ebx, dword [sym.imp.USER32.dll_DispatchMessageW]
nop dword [eax]
lea eax, [ebp - 0x68]
push eax
push dword [ebp - 0xc]
push dword [ebp - 0x68]
call dword [sym.imp.USER32.dll_TranslateAcceleratorW]
test eax, eax
jne 0x407540
lea eax, [ebp - 0x68]
push eax
call edi
lea eax, [ebp - 0x68]
push eax
call ebx
push 0
push 0
push 0
lea eax, [ebp - 0x68]
push eax
call esi
test eax, eax
jne 0x407520
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x60]
xor ecx, ebp
pop edi
pop esi
pop ebx
call fcn.0041c5a7
mov esp, ebp
pop ebp
ret 0x10