Function at 0x40e680
Capabilities:
Get process heap flags
Get process heap force flags
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4c8f85
mov eax, dword fs:[0]
push eax
sub esp, 0x68
mov eax, dword [0x50a8c8]
xor eax, esp
mov dword [esp + 0x60], eax
push ebx
push esi
push edi
mov eax, dword [0x50a8c8]
xor eax, esp
push eax
lea eax, [esp + 0x78]
mov dword fs:[0], eax
mov dword [esp + 0x30], ecx
push 1
push 0
push 0
push 0
lea ebx, [ecx + 0x2c]
mov dword [esp + 0x4c], 0
push 0xc
push 0x4ec3b8
mov ecx, ebx
call fcn.00452e30
push 1
push 0
push 0
push 0
push 0xc
push 0x4ec3b8
push 0
mov ecx, ebx
call fcn.0044d4a0
push 1
push 0
push 0
push 0
push 0xe
push 0x4ec3b8
push 1
mov ecx, ebx
call fcn.0044d4a0
push 1
push 0
push 0
push 0
push 0x10
push 0x4ec3b8
push 2
mov ecx, ebx
call fcn.0044d4a0
push 1
push 0
push 0
push 0
push 0x12
push 0x4ec3b8
push 3
mov ecx, ebx
call fcn.0044d4a0
push 1
push 0
push 0
push 0
push 0x14
push 0x4ec3b8
push 4
mov ecx, ebx
call fcn.0044d4a0
push 1
push 0
push 0
push 0
push 0x16
push 0x4ec3b8
push 5
mov ecx, ebx
call fcn.0044d4a0
push 1
push 0
push 0
push 0
push 0x18
push 0x4ec3b8
push 6
mov ecx, ebx
call fcn.0044d4a0
mov eax, dword [0x513bb8]
test eax, eax
jne 0x40e7c5
push 0x38
call fcn.00493c52
add esp, 4
mov dword [esp + 0x14], eax
mov dword [esp + 0x80], 0
test eax, eax
je 0x40e7b3
mov ecx, eax
call fcn.0040c1b0
jmp 0x40e7b5
xor eax, eax
mov dword [esp + 0x80], 0xffffffff
mov dword [0x513bb8], eax
lea ecx, [esp + 0x58]
push ecx
mov ecx, eax
call fcn.0040c8d0
mov dword [esp + 0x80], 1
xor edi, edi
mov edi, edi
cmp dword [esp + 0x6c], 8
lea eax, [esp + 0x58]
cmovae eax, dword [esp + 0x58]
push eax
push str.load_language__s
push 0x58
push str.DNDownloaderMainFrame::InitWindow
call fcn.0040b300
cmp dword [esp + 0x7c], 8
lea ecx, [esp + 0x4c]
lea eax, [esp + 0x68]
cmovae eax, dword [esp + 0x68]
push ecx
push eax
call fcn.0044e7c0
mov ebx, eax
add esp, 0x18
mov dword [esp + 0x38], ebx
test ebx, ebx
je 0x40e964
mov ecx, dword [esp + 0x3c]
inc ecx
push ecx
call fcn.00448ad9
mov ecx, dword [esp + 0x40]
add esp, 4
inc ecx
mov esi, eax
push ecx
push 0
push esi
call fcn.0049fd20
add esp, 0xc
push dword [esp + 0x3c]
push ebx
push esi
call fcn.0049cf30
add esp, 0xc
mov dword [esp + 0x2c], 0xf
cmp byte [esi], 0
mov dword [esp + 0x28], 0
mov byte [esp + 0x18], 0
jne 0x40e877
xor ecx, ecx
jmp 0x40e889
mov ecx, esi
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40e880
sub ecx, edx
push ecx
push esi
lea ecx, [esp + 0x20]
call fcn.00406e20
lea edx, [esp + 0x18]
mov byte [esp + 0x80], 2
lea ecx, [esp + 0x40]
call fcn.004089b0
mov byte [esp + 0x80], 4
cmp dword [esp + 0x2c], 0x10
jb 0x40e8c4
push dword [esp + 0x18]
call fcn.0047ad70
add esp, 4
mov eax, dword [0x5132ac]
mov dword [esp + 0x2c], 0xf
mov dword [esp + 0x28], 0
mov byte [esp + 0x18], 0
test eax, eax
jne 0x40e929
push 0x4b0
call fcn.00493c52
mov esi, eax
add esp, 4
mov dword [esp + 0x14], esi
mov byte [esp + 0x80], 5
test esi, esi
je 0x40e91a
push 0x4b0
push 0
push esi
call fcn.0049fd20
add esp, 0xc
mov ecx, esi
call fcn.00415cd0
jmp 0x40e91c
xor eax, eax
mov byte [esp + 0x80], 4
mov dword [0x5132ac], eax
lea ecx, [esp + 0x40]
push ecx
mov ecx, eax
call fcn.0041cdc0
push dword [esp + 0x38]
mov bl, al
call fcn.0049522e
add esp, 4
mov byte [esp + 0x80], 1
test bl, bl
jne 0x40e993
cmp dword [esp + 0x54], 8
jb 0x40e97f
push dword [esp + 0x40]
call fcn.0047ad70
add esp, 4
jmp 0x40e97f
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.get_resource_error.__d
push 0x67
push str.DNDownloaderMainFrame::InitWindow
call fcn.0040b300
add esp, 0x10
push 0
call dword [sym.imp.KERNEL32.dll_Sleep]
inc edi
cmp edi, 3
jl 0x40e7e0
jmp 0x40e9a6
cmp dword [esp + 0x54], 8
jb 0x40e9a6
push dword [esp + 0x40]
call fcn.0047ad70
add esp, 4
mov esi, dword [esp + 0x30]
mov ecx, esi
call fcn.004840b0
mov edi, eax
mov dword [esp + 0x2c], 7
push 0xe
xor eax, eax
mov dword [esp + 0x2c], 0
push str.Title_wndTitle
lea ecx, [esp + 0x20]
mov word [esp + 0x20], ax
call fcn.00406060
mov byte [esp + 0x80], 6
mov eax, dword [0x5132ac]
test eax, eax
jne 0x40ea36
push 0x4b0
call fcn.00493c52
mov esi, eax
add esp, 4
mov dword [esp + 0x14], esi
mov byte [esp + 0x80], 7
test esi, esi
je 0x40ea23
push 0x4b0
push 0
push esi
call fcn.0049fd20
add esp, 0xc
mov ecx, esi
call fcn.00415cd0
jmp 0x40ea25
xor eax, eax
mov esi, dword [esp + 0x30]
mov byte [esp + 0x80], 6
mov dword [0x5132ac], eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, eax
call fcn.0041ccf0
push eax
push edi
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov byte [esp + 0x80], 1
cmp dword [esp + 0x2c], 8
jb 0x40ea65
push dword [esp + 0x18]
call fcn.0047ad70
add esp, 4
mov ecx, esi
call fcn.00410720
mov ecx, esi
call fcn.004118f0
lea ebx, [esi + 0x2c]
push str.pathedit
mov ecx, ebx
call fcn.0044df90
mov edi, eax
mov eax, dword [0x5132ac]
test eax, eax
jne 0x40ead4
push 0x4b0
call fcn.00493c52
mov esi, eax
add esp, 4
mov dword [esp + 0x14], esi
mov byte [esp + 0x80], 8
test esi, esi
je 0x40eac5
push 0x4b0
push 0
push esi
call fcn.0049fd20
add esp, 0xc
mov ecx, esi
call fcn.00415cd0
jmp 0x40eac7
xor eax, eax
mov byte [esp + 0x80], 1
mov dword [0x5132ac], eax
lea ecx, [esp + 0x40]
push ecx
mov ecx, eax
call fcn.00417fe0
mov ecx, eax
mov byte [esp + 0x80], 9
cmp dword [ecx + 0x14], 8
jb 0x40eaf2
mov ecx, dword [ecx]
mov eax, dword [edi]
push ecx
mov ecx, edi
call dword [eax + 0x3c]
mov byte [esp + 0x80], 1
cmp dword [esp + 0x54], 8
jb 0x40eb15
push dword [esp + 0x40]
call fcn.0047ad70
add esp, 4
push str.addQQGroupBtn
mov ecx, ebx
call fcn.0044df90
push str.joinfacebookBtn
mov ecx, ebx
mov dword [esp + 0x3c], eax
call fcn.0044df90
mov esi, dword [0x513bb8]
mov dword [esp + 0x14], eax
test esi, esi
jne 0x40ebc4
push 0x38
call fcn.00493c52
mov esi, eax
add esp, 4
mov dword [esp + 0x34], esi
mov byte [esp + 0x80], 0xa
test esi, esi
je 0x40ebb4
push 2
xor eax, eax
mov dword [esi + 0x14], 7
mov dword [esi + 0x10], 0
mov ecx, esi
push 0x4eafc4
mov word [esi], ax
call fcn.00406060
mov byte [esp + 0x80], 0xb
lea ecx, [esi + 0x1c]
mov byte [esi + 0x18], 1
xor eax, eax
push 0x12
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], 0
push str.LDPlayer_Installer
mov word [ecx], ax
call fcn.00406060
mov byte [esi + 0x34], 0
jmp 0x40ebb6
xor esi, esi
mov byte [esp + 0x80], 1
mov dword [0x513bb8], esi
cmp dword [esi + 0x14], 8
mov ebx, dword [esi + 0x10]
jb 0x40ebcf
mov esi, dword [esi]
mov edi, 2
mov edx, edi
cmp ebx, edx
cmovb edx, ebx
test edx, edx
je 0x40ebf3
mov ecx, 0x4eaff4
mov ax, word [esi]
cmp ax, word [ecx]
jne 0x40ec02
add esi, edi
add ecx, edi
dec edx
jne 0x40ebe4
xor eax, eax
test eax, eax
jne 0x40ec19
cmp ebx, edi
jae 0x40ec10
or eax, 0xffffffff
jmp 0x40ec17
movzx eax, word [esi]
cmp ax, word [ecx]
sbb eax, eax
and eax, 0xfffffffe
inc eax
jmp 0x40ebf5
xor eax, eax
cmp ebx, edi
setne al
test eax, eax
mov ecx, dword [esp + 0x38]
sete al
test al, al
setne byte [esp + 0x34]
mov eax, dword [ecx]
push dword [esp + 0x34]
call dword [eax + 0xe0]
mov esi, dword [0x513bb8]
test esi, esi
jne 0x40ecc2
push 0x38
call fcn.00493c52
mov esi, eax
add esp, 4
mov dword [esp + 0x34], esi
mov byte [esp + 0x80], 0xc
test esi, esi
je 0x40ecb2
push 2
xor eax, eax
mov dword [esi + 0x14], 7
mov dword [esi + 0x10], 0
mov ecx, esi
push 0x4eafc4
mov word [esi], ax
call fcn.00406060
mov byte [esp + 0x80], 0xd
lea ecx, [esi + 0x1c]
mov byte [esi + 0x18], 1
xor eax, eax
push 0x12
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], 0
push str.LDPlayer_Installer
mov word [ecx], ax
call fcn.00406060
mov byte [esi + 0x34], 0
jmp 0x40ecb4
xor esi, esi
mov byte [esp + 0x80], 1
mov dword [0x513bb8], esi
cmp dword [esi + 0x14], 8
mov edx, dword [esi + 0x10]
jb 0x40eccd
mov esi, dword [esi]
cmp edx, 2
cmovb edi, edx
test edi, edi
je 0x40ecf1
mov ecx, 0x4eaff4
lea esp, [esp]
mov ax, word [esi]
cmp ax, word [ecx]
jne 0x40ed01
add esi, 2
add ecx, 2
dec edi
jne 0x40ece0
xor eax, eax
test eax, eax
jne 0x40ed19
cmp edx, 2
jae 0x40ed0f
or eax, 0xffffffff
jmp 0x40ed17
movzx eax, word [esi]
cmp ax, word [ecx]
sbb eax, eax
and eax, 0xfffffffe
inc eax
jmp 0x40ecf3
xor eax, eax
cmp edx, 2
setne al
test eax, eax
mov ebx, dword [esp + 0x14]
sete al
test al, al
mov ecx, ebx
setne al
mov edx, dword [ebx]
test al, al
sete al
movzx eax, al
push eax
call dword [edx + 0xe0]
push 8
xor eax, eax
mov dword [esp + 0x30], 7
push str.facebook
lea ecx, [esp + 0x20]
mov dword [esp + 0x30], 0
mov word [esp + 0x20], ax
call fcn.00406060
mov byte [esp + 0x80], 0xe
mov eax, dword [0x5132ac]
test eax, eax
jne 0x40edb7
push 0x4b0
call fcn.00493c52
mov esi, eax
add esp, 4
mov dword [esp + 0x14], esi
mov byte [esp + 0x80], 0xf
test esi, esi
je 0x40eda8
push 0x4b0
push 0
push esi
call fcn.0049fd20
add esp, 0xc
mov ecx, esi
call fcn.00415cd0
jmp 0x40edaa
xor eax, eax
mov byte [esp + 0x80], 0xe
mov dword [0x5132ac], eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, eax
call fcn.0041ccf0
mov edx, dword [ebx]
mov ecx, ebx
push eax
call dword [edx + 0xb0]
mov byte [esp + 0x80], 1
cmp dword [esp + 0x2c], 8
jb 0x40ede9
push dword [esp + 0x18]
call fcn.0047ad70
add esp, 4
mov ebx, dword [esp + 0x30]
add ebx, 0x2c
push str.titlename
mov ecx, ebx
call fcn.0044df90
mov edi, eax
mov dword [esp + 0x2c], 7
push 9
xor eax, eax
mov dword [esp + 0x2c], 0
push str.titlename
lea ecx, [esp + 0x20]
mov word [esp + 0x20], ax
call fcn.00406060
mov byte [esp + 0x80], 0x10
mov eax, dword [0x5132ac]
test eax, eax
jne 0x40ee7d
push 0x4b0
call fcn.00493c52
mov esi, eax
add esp, 4
mov dword [esp + 0x14], esi
mov byte [esp + 0x80], 0x11
test esi, esi
je 0x40ee6e
push 0x4b0
push 0
push esi
call fcn.0049fd20
add esp, 0xc
mov ecx, esi
call fcn.00415cd0
jmp 0x40ee70
xor eax, eax
mov byte [esp + 0x80], 0x10
mov dword [0x5132ac], eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, eax
call fcn.0041ccf0
mov edx, dword [edi]
mov ecx, edi
push eax
call dword [edx + 0x3c]
mov byte [esp + 0x80], 1
cmp dword [esp + 0x2c], 8
jb 0x40eeac
push dword [esp + 0x18]
call fcn.0047ad70
add esp, 4
push str.installFinishLabel
mov ecx, ebx
call fcn.0044df90
mov edi, eax
mov dword [esp + 0x2c], 7
push 0xd
xor eax, eax
mov dword [esp + 0x2c], 0
push str.installSucess
lea ecx, [esp + 0x20]
mov word [esp + 0x20], ax
call fcn.00406060
mov byte [esp + 0x80], 0x12
mov eax, dword [0x5132ac]
test eax, eax
jne 0x40ef39
push 0x4b0
call fcn.00493c52
mov esi, eax
add esp, 4
mov dword [esp + 0x14], esi
mov byte [esp + 0x80], 0x13
test esi, esi
je 0x40ef2a
push 0x4b0
push 0
push esi
call fcn.0049fd20
add esp, 0xc
mov ecx, esi
call fcn.00415cd0
jmp 0x40ef2c
xor eax, eax
mov byte [esp + 0x80], 0x12
mov dword [0x5132ac], eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, eax
call fcn.0041ccf0
mov edx, dword [edi]
mov ecx, edi
push eax
call dword [edx + 0x3c]
mov byte [esp + 0x80], 1
cmp dword [esp + 0x2c], 8
jb 0x40ef68
push dword [esp + 0x18]
call fcn.0047ad70
add esp, 4
push str.protocoledit
mov ecx, ebx
call fcn.0044df90
mov esi, eax
lea eax, [esp + 0x40]
push eax
call fcn.004148b0
mov ecx, eax
mov byte [esp + 0x80], 0x14
cmp dword [ecx + 0x14], 8
jb 0x40ef92
mov ecx, dword [ecx]
mov eax, dword [esi]
push ecx
mov ecx, esi
call dword [eax + 0x3c]
mov byte [esp + 0x80], 1
cmp dword [esp + 0x54], 8
jb 0x40efb5
push dword [esp + 0x40]
call fcn.0047ad70
add esp, 4
push str.confirmprotocolbtn
mov ecx, ebx
call fcn.0044df90
mov edi, eax
mov dword [esp + 0x2c], 7
push 0xf
xor eax, eax
mov dword [esp + 0x2c], 0
push str.accept_protocol
lea ecx, [esp + 0x20]
mov word [esp + 0x20], ax
call fcn.00406060
mov byte [esp + 0x80], 0x15
mov eax, dword [0x5132ac]
test eax, eax
jne 0x40f042
push 0x4b0
call fcn.00493c52
mov esi, eax
add esp, 4
mov dword [esp + 0x14], esi
mov byte [esp + 0x80], 0x16
test esi, esi
je 0x40f033
push 0x4b0
push 0
push esi
call fcn.0049fd20
add esp, 0xc
mov ecx, esi
call fcn.00415cd0
jmp 0x40f035
xor eax, eax
mov byte [esp + 0x80], 0x15
mov dword [0x5132ac], eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, eax
call fcn.0041ccf0
mov edx, dword [edi]
mov ecx, edi
push eax
call dword [edx + 0x3c]
mov byte [esp + 0x80], 1
cmp dword [esp + 0x2c], 8
jb 0x40f071
push dword [esp + 0x18]
call fcn.0047ad70
add esp, 4
xor eax, eax
mov dword [esp + 0x2c], 7
mov word [esp + 0x18], ax
mov eax, dword [0x5132ac]
mov dword [esp + 0x28], 0
test eax, eax
jne 0x40f0d8
push 0x4b0
call fcn.00493c52
mov esi, eax
add esp, 4
mov dword [esp + 0x14], esi
mov byte [esp + 0x80], 0x17
test esi, esi
je 0x40f0c9
push 0x4b0
push 0
push esi
call fcn.0049fd20
add esp, 0xc
mov ecx, esi
call fcn.00415cd0
jmp 0x40f0cb
xor eax, eax
mov byte [esp + 0x80], 1
mov dword [0x5132ac], eax
mov ecx, dword [eax + 0x30]
lea esi, [eax + 0x20]
test ecx, ecx
je 0x40f0fc
mov edx, dword [ecx]
cmp ecx, esi
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
mov eax, dword [0x5132ac]
mov dword [esi + 0x10], 0
mov ebx, dword [esp + 0x30]
mov dword [esi], vtable.._AV___Func_impl_U___Callable_obj_V_lambda_e3d382b6db333b24740d5d95a0516bdf____0A__std__V__allocator_V___Func_class_X___V_std___2_X___V_std__.0
mov dword [esi + 4], ebx
mov dword [esi + 0x10], esi
test eax, eax
jne 0x40f157
push 0x4b0
call fcn.00493c52
mov esi, eax
add esp, 4
mov dword [esp + 0x14], esi
mov byte [esp + 0x80], 0x18
test esi, esi
je 0x40f148
push 0x4b0
push 0
push esi
call fcn.0049fd20
add esp, 0xc
mov ecx, esi
call fcn.00415cd0
jmp 0x40f14a
xor eax, eax
mov byte [esp + 0x80], 1
mov dword [0x5132ac], eax
mov ecx, dword [eax + 0x48]
lea esi, [eax + 0x38]
test ecx, ecx
je 0x40f17b
mov edx, dword [ecx]
cmp ecx, esi
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
mov eax, dword [0x5132ac]
mov dword [esi + 0x10], 0
mov dword [esi], vtable.._AV___Func_impl_U___Callable_obj_V_lambda_634e97093d995e6b32ea56e903534d54____0A__std__V__allocator_V___Func_class_X___V_std___2_X___V_std__.0
mov dword [esi + 4], ebx
mov dword [esi + 0x10], esi
test eax, eax
jne 0x40f1d2
push 0x4b0
call fcn.00493c52
mov esi, eax
add esp, 4
mov dword [esp + 0x14], esi
mov byte [esp + 0x80], 0x19
test esi, esi
je 0x40f1c3
push 0x4b0
push 0
push esi
call fcn.0049fd20
add esp, 0xc
mov ecx, esi
call fcn.00415cd0
jmp 0x40f1c5
xor eax, eax
mov byte [esp + 0x80], 1
mov dword [0x5132ac], eax
mov ecx, dword [eax + 0x18]
lea esi, [eax + 8]
test ecx, ecx
je 0x40f1f6
mov edx, dword [ecx]
cmp ecx, esi
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
mov eax, dword [0x5132ac]
mov dword [esi + 0x10], 0
mov dword [esi], vtable.std::_Func_impl_struct_std::_Callable_obj_class__lambda_ea7814ff5302f79dcd408350077fb924___0___class_std::allocator_class_std::_Func_class_void__int__int__int____void__int__int__int_.0
mov dword [esi + 4], ebx
mov dword [esi + 0x10], esi
test eax, eax
jne 0x40f24d
push 0x4b0
call fcn.00493c52
mov esi, eax
add esp, 4
mov dword [esp + 0x14], esi
mov byte [esp + 0x80], 0x1a
test esi, esi
je 0x40f23e
push 0x4b0
push 0
push esi
call fcn.0049fd20
add esp, 0xc
mov ecx, esi
call fcn.00415cd0
jmp 0x40f240
xor eax, eax
mov byte [esp + 0x80], 1
mov dword [0x5132ac], eax
mov ecx, dword [eax + 0x60]
lea esi, [eax + 0x50]
test ecx, ecx
je 0x40f271
mov edx, dword [ecx]
cmp ecx, esi
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
mov eax, dword [0x5132ac]
mov dword [esi + 0x10], 0
mov dword [esi], vtable.std::_Func_impl_struct_std::_Callable_obj_class__lambda_232943b05ee3541c0e8036c1d4b6e866___0___class_std::allocator_class_std::_Func_class_void__bool____void__bool_.0
mov dword [esi + 4], ebx
mov dword [esi + 0x10], esi
test eax, eax
jne 0x40f2c8
push 0x4b0
call fcn.00493c52
mov esi, eax
add esp, 4
mov dword [esp + 0x14], esi
mov byte [esp + 0x80], 0x1b
test esi, esi
je 0x40f2b9
push 0x4b0
push 0
push esi
call fcn.0049fd20
add esp, 0xc
mov ecx, esi
call fcn.00415cd0
jmp 0x40f2bb
xor eax, eax
mov byte [esp + 0x80], 1
mov dword [0x5132ac], eax
mov ecx, dword [eax + 0x78]
lea esi, [eax + 0x68]
test ecx, ecx
je 0x40f2e7
mov edx, dword [ecx]
cmp ecx, esi
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
mov dword [esi + 0x10], 0
mov dword [esi], vtable.std::_Func_impl_struct_std::_Callable_obj_class__lambda_e0293c7fed3785db53f8fe0d603ae14e___0___class_std::allocator_class_std::_Func_class_void__bool____void__bool_.0
mov dword [esi + 4], ebx
mov dword [esi + 0x10], esi
cmp dword [esp + 0x6c], 8
jb 0x40f306
push dword [esp + 0x58]
call fcn.0047ad70
add esp, 4
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x60]
xor ecx, esp
call fcn.00493b03
mov esp, ebp
pop ebp
ret