Function at 0x406c50
Capabilities:
Hide graphical window
Inspect load icon resource
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x416546
mov eax, dword fs:[0]
push eax
sub esp, 0x98
mov eax, dword [0x42001c]
xor eax, esp
mov dword [esp + 0x90], eax
push ebx
push esi
push edi
mov eax, dword [0x42001c]
xor eax, esp
push eax
lea eax, [esp + 0xa8]
mov dword fs:[0], eax
push 0x80
push 0
mov edi, ecx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call dword [sym.imp.USER32.dll_LoadIconW]
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
mov ebx, eax
mov eax, dword [edi + 4]
push ebx
push 1
push 0x80
push eax
call esi
mov ecx, dword [edi + 4]
push ebx
mov ebx, 1
push ebx
push 0x80
push ecx
call esi
mov ecx, edi
call fcn.004078e0
call fcn.004010b0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
test eax, eax
mov esi, dword [sym.imp.USER32.dll_SendDlgItemMessageW]
jne 0x406d0b
call fcn.004010b0
push eax
call fcn.00404e40
test eax, eax
je 0x406d0b
mov eax, dword [edi + 4]
push 0
push ebx
push 0xf1
push 0x3e8
push eax
call esi
mov eax, edi
call fcn.00407c20
mov ecx, dword [edi + 4]
push 0
push ebx
push 0xf1
push 0x41a
push ecx
call esi
mov eax, dword [edi + 4]
xor edx, edx
cmp dword [edi + 0xc], edx
push 0
setne dl
push edx
push 0xf1
push 0x41b
push eax
call esi
cmp dword [0x420688], 0
jne 0x406d59
call fcn.004106e0
mov dword [0x420684], eax
mov dword [0x420688], ebx
mov edx, dword [edi + 4]
mov esi, dword [sym.imp.USER32.dll_GetDlgItem]
xor ecx, ecx
cmp dword [0x420684], ecx
sete cl
push ecx
push 0x41a
push edx
call esi
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
cmp dword [0x420688], 0
jne 0x406d96
call fcn.004106e0
mov dword [0x420684], eax
mov dword [0x420688], ebx
cmp dword [0x420684], 0
jne 0x406db2
mov eax, dword [edi + 4]
push 0
push 0x1388
push 0x64
push eax
call dword [sym.imp.USER32.dll_SetTimer]
mov ecx, dword [edi + 4]
push 0
push 0x3f5
push ecx
call esi
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
mov ebx, edi
call fcn.004073a0
push 0
push 0
push 0
push 1
push 0x81
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call dword [sym.imp.USER32.dll_LoadImageW]
test eax, eax
mov dword [edi + 0x28], eax
je 0x406e0e
mov edx, dword [edi + 4]
push 0x419
push edx
call esi
push 0x16
push 0x40
push 0x40
push 0
push 0
push 0
push eax
call dword [sym.imp.USER32.dll_SetWindowPos]
lea ecx, [esp + 0x78]
call dword [sym.imp.Common.dll_public:_void___thiscall_CFmtString::constructor_void_]
mov dword [esp + 0xb0], 0
call fcn.004010b0
lea esi, [esp + 0x10]
call fcn.00401140
mov ecx, eax
mov byte [esp + 0xb0], 1
call dword [sym.imp.Common.dll_public:_wchar_t_const____thiscall_CTXStringW::operator_wchar_t_const__void_const]
push eax
push 0x417df8
lea ecx, [esp + 0x80]
call dword [sym.imp.Common.dll_public:_int___thiscall_CFmtString::PropertyStr_wchar_t_const___wchar_t_const__]
mov byte [esp + 0xb0], 0
mov ebx, dword [sym.imp.Common.dll_public:_void___thiscall_CTXStringW::destructor_void_]
mov ecx, esi
call ebx
call fcn.004010b0
lea esi, [esp + 0x10]
call fcn.00401120
mov ecx, eax
mov byte [esp + 0xb0], 2
call dword [sym.imp.Common.dll_public:_wchar_t_const____thiscall_CTXStringW::operator_wchar_t_const__void_const]
push eax
push 0x418ac8
lea ecx, [esp + 0x80]
call dword [sym.imp.Common.dll_public:_int___thiscall_CFmtString::PropertyStr_wchar_t_const___wchar_t_const__]
mov ecx, esi
mov byte [esp + 0xb0], 0
call ebx
xor eax, eax
mov dword [esp + 0x34], 3
mov dword [esp + 0x38], str.BR_SEND
mov dword [esp + 0x3c], 4
mov dword [esp + 0x40], str.BR_RESTART
mov dword [esp + 0x44], 5
mov dword [esp + 0x48], str.BR_ASSIST
mov dword [esp + 0x4c], 6
mov dword [esp + 0x50], str.BR_QQACOUNT
mov dword [esp + 0x54], 8
mov dword [esp + 0x58], str.BR_CONTACT2
mov dword [esp + 0x5c], 0xa
mov dword [esp + 0x60], str.BR_REASON
mov dword [esp + 0x64], 0xe
mov dword [esp + 0x68], str.BR_OK
mov dword [esp + 0x6c], 0xf
mov dword [esp + 0x70], str.BR_ERRINFO
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], eax
mov byte [esp + 0xb0], 3
mov eax, dword [edi + 4]
push 5
push eax
call dword [sym.imp.USER32.dll_GetWindow]
mov esi, eax
test esi, esi
mov dword [esp + 0x10], esi
je 0x406fc0
mov ecx, dword [esp + 0x24]
test ecx, ecx
mov edx, dword [esp + 0x28]
je 0x406f82
mov eax, edx
sub eax, ecx
mov ecx, dword [esp + 0x2c]
sub ecx, dword [esp + 0x24]
sar eax, 2
sar ecx, 2
cmp eax, ecx
jae 0x406f7e
mov eax, edx
add eax, 4
mov dword [edx], esi
mov dword [esp + 0x28], eax
jmp 0x406fad
mov ecx, dword [esp + 0x24]
cmp ecx, edx
mov dword [esp + 0x1c], edx
jbe 0x406f90
call dword [sym.imp.MSVCR80.dll__invalid_parameter_noinfo]
mov ecx, dword [esp + 0x1c]
push ecx
lea eax, [esp + 0x24]
push eax
lea edx, [esp + 0x18]
push edx
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x30]
call fcn.00408d10
push 2
push esi
call dword [sym.imp.USER32.dll_GetWindow]
mov esi, eax
test esi, esi
mov dword [esp + 0x10], esi
jne 0x406f4f
xor esi, esi
mov ecx, dword [esp + esi*8 + 0x38]
push ecx
lea edx, [esp + 0x18]
push edx
call fcn.00411990
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x18], eax
mov eax, dword [esp + esi*8 + 0x3c]
sub eax, 1
add esp, 8
test ecx, ecx
mov dword [esp + 0x1c], eax
je 0x406ff8
mov edx, dword [esp + 0x28]
sub edx, ecx
sar edx, 2
cmp eax, edx
jb 0x407006
call dword [sym.imp.MSVCR80.dll__invalid_parameter_noinfo]
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x1c]
lea eax, [ecx + eax*4]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x1c], eax
call dword [sym.imp.Common.dll_public:_wchar_t_const____thiscall_CTXStringW::operator_wchar_t_const__void_const]
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx]
push eax
push edx
call dword [sym.imp.USER32.dll_SetWindowTextW]
lea ecx, [esp + 0x14]
call ebx
add esi, 1
cmp esi, 8
jb 0x406fc2
lea eax, [esp + 0x14]
push str.BR_HELP
push eax
call fcn.00411990
add esp, 8
mov ecx, eax
mov byte [esp + 0xb0], 4
call dword [sym.imp.Common.dll_public:_wchar_t_const____thiscall_CTXStringW::operator_wchar_t_const__void_const]
mov esi, dword [sym.imp.Common.dll_public:_wchar_t_const____thiscall_CFmtString::DoFormat_wchar_t_const__]
push eax
lea ecx, [esp + 0x7c]
call esi
mov ecx, dword [edi + 4]
push eax
push 0x3e8
push ecx
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
lea ecx, [esp + 0x14]
mov byte [esp + 0xb0], 3
call ebx
lea edx, [esp + 0x14]
push str.BR_TIP
push edx
call fcn.00411990
add esp, 8
mov ecx, eax
mov byte [esp + 0xb0], 5
call dword [sym.imp.Common.dll_public:_wchar_t_const____thiscall_CTXStringW::operator_wchar_t_const__void_const]
push eax
lea ecx, [esp + 0x7c]
call esi
push eax
mov eax, dword [edi + 4]
push 0x3ee
push eax
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
lea ecx, [esp + 0x14]
mov byte [esp + 0xb0], 3
call ebx
test byte [0x4205e8], 1
jne 0x4070f9
or dword [0x4205e8], 1
mov byte [esp + 0xb0], 6
call fcn.00401ce0
push 0x416c40
call fcn.00413eea
add esp, 4
mov byte [esp + 0xb0], 3
lea esi, [esp + 0x30]
mov eax, 0x4205ec
call fcn.00406a90
mov ecx, esi
mov byte [esp + 0xb0], 7
call dword [sym.imp.Common.dll_public:_bool___thiscall_CTXStringW::IsEmpty_void_const]
test al, al
je 0x40716a
lea ecx, [esp + 0x14]
push str.BR_INPUTACCOUNT
push ecx
call fcn.00411990
add esp, 8
mov byte [esp + 0xb0], 8
mov esi, dword [sym.imp.Common.dll_public:_wchar_t_const____thiscall_CTXStringW::operator_wchar_t_const__void_const]
mov ecx, eax
call esi
push eax
lea ecx, [esp + 0x7c]
call dword [sym.imp.Common.dll_public:_wchar_t_const____thiscall_CFmtString::DoFormat_wchar_t_const__]
mov edx, dword [edi + 4]
push eax
push 0x3eb
push edx
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
lea ecx, [esp + 0x14]
mov byte [esp + 0xb0], 7
call ebx
jmp 0x407191
lea ecx, [esp + 0x30]
mov dword [edi + 0x18], 1
call dword [sym.imp.Common.dll_public:_wchar_t_const____thiscall_CTXStringW::operator_wchar_t_const__void_const]
push eax
mov eax, dword [edi + 4]
push 0x3eb
push eax
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
mov esi, dword [sym.imp.Common.dll_public:_wchar_t_const____thiscall_CTXStringW::operator_wchar_t_const__void_const]
lea ecx, [esp + 0x14]
push str.BR_CONTACT1
push ecx
call fcn.00411990
add esp, 8
mov ecx, eax
call esi
mov edx, dword [edi + 4]
push eax
push 0x3e9
push edx
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
lea ecx, [esp + 0x14]
call ebx
lea eax, [esp + 0x14]
push str.BR_CRASH_SIGNATURE
push eax
call fcn.00411990
add esp, 8
mov ecx, eax
mov byte [esp + 0xb0], 9
call esi
push eax
lea ecx, [esp + 0x7c]
call dword [sym.imp.Common.dll_public:_wchar_t_const____thiscall_CFmtString::DoFormat_wchar_t_const__]
mov ecx, dword [edi + 4]
push eax
push 0x3f4
push ecx
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
lea ecx, [esp + 0x14]
mov byte [esp + 0xb0], 7
call ebx
lea edx, [esp + 0x14]
push str.BR_APP_TITLE
push edx
call fcn.00411990
add esp, 8
mov ecx, eax
call esi
push eax
mov eax, dword [edi + 4]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
lea ecx, [esp + 0x14]
call ebx
lea ecx, [esp + 0x30]
mov byte [esp + 0xb0], 3
call ebx
mov eax, dword [esp + 0x24]
xor esi, esi
cmp eax, esi
je 0x40724c
push eax
call sub.MSVCR80.dll_void___cdecl_operator_delete_void__
add esp, 4
lea ecx, [esp + 0x78]
mov dword [esp + 0x24], esi
mov dword [esp + 0x28], esi
mov dword [esp + 0x2c], esi
mov dword [esp + 0xb0], 0xffffffff
call dword [sym.imp.Common.dll_public:_void___thiscall_CFmtString::destructor_void_]
mov ecx, dword [esp + 0xa8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x90]
xor ecx, esp
call fcn.00413efc
mov esp, ebp
pop ebp
ret 8