Function at 0x415020
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x501e6d
mov eax, dword fs:[0]
push eax
sub esp, 0x3d8
mov eax, dword [0x5364a8]
xor eax, esp
mov dword [esp + 0x3d0], eax
push ebx
push esi
push edi
mov eax, dword [0x5364a8]
xor eax, esp
push eax
lea eax, [esp + 0x3e8]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov esi, ecx
mov ecx, dword [eax + 0x108]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
lea edx, [esp + 0x14c]
push edx
call eax
mov dword [esp + 0x3f0], 0
mov edi, dword [sym.imp.LibDui.dll_public:_bool___thiscall_DuiLib::CDuiString::operator_wchar_t_const__const]
push str.routeListBtn
lea ecx, [esp + 0x150]
call edi
test al, al
jne 0x415356
push str.yuyanListBtn
lea ecx, [esp + 0x150]
call edi
test al, al
je 0x41519e
push str.yuyanlist
lea ecx, [esi + 0x30]
call dword [sym.imp.LibDui.dll_public:_class_DuiLib::CControlUI____thiscall_DuiLib::CPaintManagerUI::FindControl_wchar_t_const__const]
push str.lan_id
mov ebx, 0x5147fc
lea edi, [esp + 0x18]
mov dword [esp + 0x14], eax
call fcn.004380d0
add esp, 4
mov ecx, dword [esp + 0x10]
mov bl, 1
mov byte [esp + 0x3f0], bl
mov edx, dword [ecx + 0x6c0]
mov eax, dword [edx + 8]
add ecx, 0x6c0
call eax
lea ecx, [esp + 0xc4]
mov edi, eax
call dword [sym.imp.LibDui.dll_public:_void___thiscall_DuiLib::CDuiString::constructor_void_]
push edi
lea ecx, [esp + 0xc8]
push 0x514bbc
push ecx
mov byte [esp + 0x3fc], 2
call dword [sym.imp.LibDui.dll_public:_int___cdecl_DuiLib::CDuiString::Format_wchar_t_const__]
add esp, 0xc
lea ecx, [esp + 0xc4]
call dword [sym.imp.LibDui.dll_public:_wchar_t_const____thiscall_DuiLib::CDuiString::GetData_void_const]
push eax
mov edi, str.lan_id
call fcn.00438230
add esp, 4
lea ecx, [esp + 0xc4]
call dword [sym.imp.LibDui.dll_public:_wchar_t_const____thiscall_DuiLib::CDuiString::operator_wchar_t_const__void_const]
push eax
lea ecx, [esp + 0x18]
call dword [sym.imp.LibDui.dll_public:_bool___thiscall_DuiLib::CDuiString::operator__wchar_t_const__const]
test al, al
je 0x415175
mov ecx, esi
call fcn.00412c40
mov edi, esi
call fcn.0044cd30
call fcn.00414660
mov byte [esp + 0x3f0], bl
mov esi, dword [sym.imp.LibDui.dll_public:_void___thiscall_DuiLib::CDuiString::destructor_void_]
lea ecx, [esp + 0xc4]
call esi
lea ecx, [esp + 0x14]
mov byte [esp + 0x3f0], 0
call esi
jmp 0x415356
push str.ggListBtn
lea ecx, [esp + 0x150]
call edi
test al, al
je 0x415356
lea ecx, [esi + 0x30]
push str.gonggaolist
mov dword [esp + 0x14], ecx
call dword [sym.imp.LibDui.dll_public:_class_DuiLib::CControlUI____thiscall_DuiLib::CPaintManagerUI::FindControl_wchar_t_const__const]
mov edx, dword [eax + 0x6c0]
mov ebx, dword [eax + 0x550]
lea ecx, [eax + 0x6c0]
lea edi, [eax + 0x550]
mov eax, dword [edx + 8]
call eax
mov edx, dword [ebx]
push eax
mov ecx, edi
call edx
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xec]
call eax
mov edi, eax
lea ebx, [esi + 0x1b70]
push edi
mov ecx, ebx
call fcn.0045db70
lea eax, [esp + 0x14]
call fcn.004153a0
push edi
lea ecx, [esp + 0x18]
push ecx
mov ecx, ebx
mov byte [esp + 0x3f8], 3
call fcn.0045d930
cmp dword [esp + 0x18], 1
jne 0x415232
mov ecx, esi
call fcn.0041d610
cmp dword [esp + 0x78], 0
je 0x41526e
cmp dword [esp + 0x7c], 0x10
mov eax, dword [esp + 0x68]
jae 0x415248
lea eax, [esp + 0x68]
mov edx, dword [esi + 4]
push 5
push 0x5131a8
push 0x5131a8
push eax
push 0x514d04
push edx
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
lea eax, [esp + 0x14]
push eax
jmp 0x415349
mov ecx, dword [esp + 0x14]
mov dword [esi + 0x2170], ecx
lea ecx, [esi + 0x2174]
call fcn.00425ff0
call fcn.0044c7a0
push 0xd
push esi
call fcn.00413c90
xor edx, edx
push 0x206
push edx
lea eax, [esp + 0x1de]
push eax
mov word [esp + 0x1e0], dx
call fcn.0048e2b0
add esp, 0xc
push 0x104
lea ecx, [esp + 0x1d8]
push ecx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea ecx, [esp + 0xc4]
call dword [sym.imp.LibDui.dll_public:_void___thiscall_DuiLib::CDuiString::constructor_void_]
push 0x73
lea edx, [esp + 0x1d8]
push edx
lea eax, [esp + 0xcc]
push str.res:___s__d
push eax
mov byte [esp + 0x400], 4
call dword [sym.imp.LibDui.dll_public:_int___cdecl_DuiLib::CDuiString::Format_wchar_t_const__]
mov ecx, dword [esp + 0x20]
add esp, 0x10
push str.ggShowBrowser
call dword [sym.imp.LibDui.dll_public:_class_DuiLib::CControlUI____thiscall_DuiLib::CPaintManagerUI::FindControl_wchar_t_const__const]
mov esi, eax
mov edx, dword [esi]
mov eax, dword [edx + 0x16c]
push 0
mov ecx, esi
call eax
lea ecx, [esp + 0xc4]
call dword [sym.imp.LibDui.dll_public:_wchar_t_const____thiscall_DuiLib::CDuiString::operator_wchar_t_const__void_const]
push eax
mov ecx, esi
call dword [sym.imp.LibDui.dll_public:_void___thiscall_DuiLib::CWebBrowserUI::NavigateUrl_wchar_t_const__]
lea ecx, [esp + 0xc4]
mov byte [esp + 0x3f0], 3
call dword [sym.imp.LibDui.dll_public:_void___thiscall_DuiLib::CDuiString::destructor_void_]
lea ecx, [esp + 0x14]
push ecx
mov byte [esp + 0x3f4], 0
call fcn.00415400
lea ecx, [esp + 0x14c]
mov dword [esp + 0x3f0], 0xffffffff
call dword [sym.imp.LibDui.dll_public:_void___thiscall_DuiLib::CDuiString::destructor_void_]
mov ecx, dword [esp + 0x3e8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x3d0]
xor ecx, esp
call fcn.0047bfe0
mov esp, ebp
pop ebp
ret 4