Function at 0x41b100
Capabilities:
Copy file
Get graphical window text

Disassembly:
sub esp, 0x494
mov dword [0x42fbd4], 0
lea eax, [esp + 8]
push ebx
mov ecx, dword [esp + 0x4a0]
push esi
push edi
push ebp
push eax
push ecx
call dword [sym.imp.SHELL32.dll_DragQueryPoint]
mov ecx, dword [esp + 0x4a8]
cmp ecx, dword [0x4376f8]
je 0x41b18f
cmp ecx, dword [0x437710]
je 0x41b18f
lea eax, [esp + 0x120]
push pe_nt_image_headers32
push eax
mov ecx, dword [0x438580]
push 0x36ca
mov ebp, dword [sym.imp.USER32.dll_LoadStringA]
push ecx
call ebp
lea ecx, [esp + 0x120]
push ecx
push str.__s
call fcn.0040cf50
mov eax, dword [esp + 0x4b4]
add esp, 8
push eax
call dword [sym.imp.SHELL32.dll_DragFinish]
xor eax, eax
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x494
ret
lea eax, [esp + 0x10]
lea ecx, [esp + 0x324]
mov edx, dword [esp + 0x4a8]
push eax
mov dword [0x42f090], 0
push ecx
push edx
call fcn.0041b020
mov ecx, dword [esp + 0x4b8]
add esp, 0xc
mov esi, eax
push 0
push 0
push 0xffffffffffffffff
push ecx
call dword [sym.imp.SHELL32.dll_DragQueryFileA]
mov ebx, eax
test ebx, ebx
je 0x41bafe
mov eax, dword [esp + 0x4a8]
cmp eax, dword [0x4376f8]
jne 0x41b33e
mov eax, dword [0x4376f8]
cmp dword [0x431714], eax
jne 0x41b33e
cmp esi, 0xffffffff
je 0x41bb34
cmp dword [esp + 0x10], 4
jne 0x41bb34
xor esi, esi
test ebx, ebx
je 0x41b329
mov ebp, dword [sym.imp.USER32.dll_LoadStringA]
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenA]
lea eax, [esp + 0x20]
push 0x100
mov ecx, dword [esp + 0x4b0]
push eax
push esi
push ecx
call dword [sym.imp.SHELL32.dll_DragQueryFileA]
test eax, eax
je 0x41b31b
lea eax, [esp + 0x20]
push eax
call edi
cmp byte [esp + eax + 0x1f], 0x2f
jne 0x41b25f
lea eax, [esp + 0x20]
push eax
call edi
mov byte [esp + eax + 0x1f], 0
lea eax, [esp + 0x20]
push eax
call fcn.0041aff0
lea ecx, [esp + 0x228]
add esp, 4
push eax
lea eax, [esp + 0x328]
push eax
push 0x43133c
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
lea ecx, [esp + 0x234]
lea edx, [esp + 0x30]
add esp, 0x10
push ecx
push edx
call fcn.00421280
add esp, 8
test eax, eax
push pe_nt_image_headers32
jne 0x41b2de
lea eax, [esp + 0x124]
mov ecx, dword [0x438580]
push eax
push 0x3761
push ecx
call ebp
lea ecx, [esp + 0x224]
lea edx, [esp + 0x20]
lea eax, [esp + 0x120]
push ecx
push edx
push eax
call fcn.0040cf50
add esp, 0xc
jmp 0x41b31b
lea eax, [esp + 0x428]
mov ecx, dword [0x438580]
push eax
push 0x3760
push ecx
call ebp
lea ecx, [esp + 0x224]
lea edx, [esp + 0x20]
lea eax, [esp + 0x424]
push ecx
push edx
push eax
call fcn.0040cf50
add esp, 0xc
push 1
call fcn.0040bb30
add esp, 4
add dword [esp + 0x1c], 0x14
inc esi
cmp esi, ebx
jb 0x41b224
mov eax, dword [esp + 0x4a8]
push eax
call fcn.0041ea00
add esp, 4
jmp 0x41bb34
mov eax, dword [esp + 0x4a8]
cmp eax, dword [0x4376f8]
jne 0x41b541
mov eax, dword [0x437710]
cmp dword [0x431714], eax
jne 0x41b3f3
lea eax, [esp + 0x224]
push 0x100
push eax
mov ecx, dword [0x437350]
push ecx
call dword [sym.imp.USER32.dll_GetWindowTextA]
cmp esi, 0xffffffff
je 0x41b3b8
cmp dword [esp + 0x10], 4
jne 0x41b3b8
lea eax, [esp + 0x324]
push eax
call fcn.00416af0
add esp, 4
cmp dword [0x431350], 0
jne 0x41b3aa
cmp dword [0x431354], 0
je 0x41b3b8
mov eax, dword [0x42f7d0]
push eax
call fcn.0041ea00
add esp, 4
mov eax, dword [esp + 0x4a8]
push eax
call fcn.00406120
add esp, 4
cmp dword [esp + 0x10], 4
jne 0x41b52c
lea eax, [esp + 0x224]
push eax
call fcn.00416af0
add esp, 4
mov eax, dword [0x42f7d0]
push eax
call fcn.0041ea00
jmp 0x41b529
xor edi, edi
test ebx, ebx
je 0x41b52c
mov ebp, dword [sym.imp.KERNEL32.dll_CopyFileA]
xor esi, esi
lea eax, [esp + 0x20]
push 0x100
mov ecx, dword [esp + 0x4b0]
push eax
push edi
push ecx
call dword [sym.imp.SHELL32.dll_DragQueryFileA]
mov ecx, dword [0x437710]
cmp dword [0x431714], ecx
jne 0x41b475
cmp dword [0x42f7dc], esi
je 0x41b4c2
cmp dword [0x42f7e0], esi
jne 0x41b4ec
call fcn.0041f010
push esi
mov eax, dword [0x42f808]
lea ecx, [esp + 0x24]
push eax
push ebx
push edi
push ecx
call fcn.00401770
add esp, 0x14
cmp eax, 2
jne 0x41b52c
cmp dword [0x42fbd4], esi
je 0x41b4b2
jmp 0x41b52c
mov eax, dword [0x4376f8]
cmp dword [0x431714], eax
je 0x41b4b2
lea eax, [esp + 0x20]
push 0x5c
push eax
call fcn.004202c0
add esp, 8
test eax, eax
jne 0x41b4a8
lea eax, [esp + 0x20]
push 0x2f
push eax
call fcn.004202c0
add esp, 8
test eax, eax
je 0x41b4b2
push esi
inc eax
lea ecx, [esp + 0x24]
push eax
push ecx
call ebp
add dword [esp + 0x1c], 0x14
inc edi
cmp edi, ebx
jb 0x41b405
jmp 0x41b52c
lea eax, [esp + 0x120]
push pe_nt_image_headers32
push eax
mov ecx, dword [0x438580]
push 0x36c9
mov ebp, dword [sym.imp.USER32.dll_LoadStringA]
push ecx
call ebp
lea ecx, [esp + 0x120]
jmp 0x41b514
lea eax, [esp + 0x120]
push pe_nt_image_headers32
push eax
mov ecx, dword [0x438580]
push 0x36c7
mov ebp, dword [sym.imp.USER32.dll_LoadStringA]
push ecx
call ebp
lea ecx, [esp + 0x120]
push ecx
push str.___s
call fcn.0040cf50
add esp, 8
push 1
call fcn.0040bb30
add esp, 4
mov eax, dword [esp + 0x4a8]
push eax
call fcn.0041ea00
add esp, 4
jmp 0x41bb34
mov eax, dword [esp + 0x4a8]
cmp eax, dword [0x437710]
jne 0x41b879
mov eax, dword [0x437710]
cmp dword [0x431714], eax
jne 0x41b879
lea eax, [esp + 0x20]
push 0x100
push eax
mov ecx, dword [0x438580]
push 0x278b
mov ebp, dword [sym.imp.USER32.dll_LoadStringA]
push ecx
call ebp
lea ecx, [esp + 0x324]
lea eax, [esp + 0x20]
lea edx, [esp + 0x224]
push ecx
push ebx
push eax
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
cmp esi, 0xffffffff
je 0x41bb34
cmp dword [esp + 0x10], 4
jne 0x41bb34
lea eax, [esp + 0x224]
push 0x10024
push str.WS_FTP_LE
mov ecx, dword [0x42f7d0]
push eax
push ecx
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp eax, 6
jne 0x41bb34
mov dword [esp + 0x14], 0
xor esi, esi
test ebx, ebx
je 0x41b74b
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenA]
lea eax, [esp + 0x20]
push 0x100
mov ecx, dword [esp + 0x4b0]
push eax
push esi
push ecx
call dword [sym.imp.SHELL32.dll_DragQueryFileA]
test eax, eax
je 0x41b73d
lea eax, [esp + 0x20]
push eax
call edi
cmp byte [esp + eax + 0x1f], 0x2f
jne 0x41b631
lea eax, [esp + 0x20]
push eax
call edi
mov byte [esp + eax + 0x1f], 0
lea eax, [esp + 0x20]
push eax
call fcn.0041aff0
lea ecx, [esp + 0x228]
add esp, 4
push eax
lea eax, [esp + 0x328]
push eax
push str._s__s
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
lea ecx, [esp + 0x30]
add esp, 0x10
push ecx
call fcn.0041aff0
add esp, 4
mov ecx, dword [0x42f864]
push eax
push str.RNFR__s
push ecx
call fcn.00415e20
add esp, 0xc
cmp eax, 3
jne 0x41b73d
lea eax, [esp + 0x224]
mov ecx, dword [0x42f864]
push eax
push str.RNTO__s
push ecx
call fcn.00415e20
add esp, 0xc
cmp eax, 2
push pe_nt_image_headers32
jne 0x41b6f4
lea eax, [esp + 0x124]
mov ecx, dword [0x438580]
push eax
push 0x3761
push ecx
call ebp
lea ecx, [esp + 0x224]
lea edx, [esp + 0x20]
push ecx
push edx
call fcn.0041aff0
lea ecx, [esp + 0x128]
add esp, 4
push eax
push ecx
call fcn.0040cf50
mov dword [esp + 0x20], 1
add esp, 0xc
jmp 0x41b73d
lea eax, [esp + 0x428]
mov ecx, dword [0x438580]
push eax
push 0x3760
push ecx
call ebp
lea ecx, [esp + 0x224]
lea edx, [esp + 0x324]
push ecx
push edx
call fcn.0041aff0
lea ecx, [esp + 0x42c]
add esp, 4
push eax
push ecx
call fcn.0040cf50
add esp, 0xc
push 1
call fcn.0040bb30
add esp, 4
add dword [esp + 0x1c], 0x14
inc esi
cmp esi, ebx
jb 0x41b5f6
cmp dword [esp + 0x14], 0
je 0x41bb34
lea eax, [esp + 0x120]
push 0x437960
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea ecx, [esp + 0x324]
push 0x42fc1c
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpA]
push 0x2f
test eax, eax
jne 0x41b7bb
lea eax, [esp + 0x124]
push eax
call fcn.004202c0
add esp, 8
test eax, eax
jne 0x41b7b6
lea eax, [esp + 0x120]
push 0x5c
push eax
call fcn.004202c0
add esp, 8
test eax, eax
jne 0x41b7b6
mov byte [esp + 0x120], 0
jmp 0x41b82b
mov byte [eax], 0
jmp 0x41b82b
push 0x437960
call fcn.00420180
add esp, 8
test eax, eax
jne 0x41b804
push 0x5c
push 0x437960
call fcn.00420180
add esp, 8
test eax, eax
jne 0x41b804
lea eax, [esp + 0x324]
lea ecx, [esp + 0x120]
push eax
push 0x437960
push str._s__s
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x41b82b
lea ecx, [esp + 0x324]
lea edx, [esp + 0x120]
movsx eax, byte [eax]
push ecx
push eax
push 0x437960
push str._s_c_s
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x14
cmp byte [esp + 0x120], 0
je 0x41b865
lea eax, [esp + 0x120]
push eax
call fcn.004174c0
add esp, 4
push 0
push 0x438990
call fcn.0042b790
add esp, 8
test eax, eax
jne 0x41b865
push 0x438990
call fcn.0042b810
add esp, 4
mov eax, dword [esp + 0x4a8]
push 1
push eax
call fcn.004176f0
jmp 0x41bb31
mov eax, dword [esp + 0x4a8]
cmp eax, dword [0x437710]
jne 0x41bb34
call fcn.0040c140
test eax, eax
jne 0x41bb34
cmp dword [0x42f7dc], 0
jne 0x41b8d5
lea eax, [esp + 0x120]
push pe_nt_image_headers32
push eax
mov ecx, dword [0x438580]
push 0x36c9
mov ebp, dword [sym.imp.USER32.dll_LoadStringA]
push ecx
call ebp
lea ecx, [esp + 0x120]
push ecx
push str.___s
jmp 0x41bb2c
cmp dword [0x42f7e0], 0
je 0x41b911
lea eax, [esp + 0x120]
push pe_nt_image_headers32
push eax
mov ecx, dword [0x438580]
push 0x36c7
mov ebp, dword [sym.imp.USER32.dll_LoadStringA]
push ecx
call ebp
lea ecx, [esp + 0x120]
push ecx
push str.___s
jmp 0x41bb2c
mov eax, dword [0x4376f8]
cmp dword [0x431714], eax
jne 0x41b9d1
lea eax, [esp + 0x224]
push 0x100
push eax
mov ecx, dword [0x437368]
push ecx
call dword [sym.imp.USER32.dll_GetWindowTextA]
cmp esi, 0xffffffff
je 0x41b986
cmp dword [esp + 0x10], 4
jne 0x41b986
lea eax, [esp + 0x324]
mov ecx, dword [0x42f864]
push eax
push ecx
call fcn.004161e0
add esp, 8
cmp eax, 2
jne 0x41b986
cmp dword [0x431350], 0
jne 0x41b976
cmp dword [0x431354], 0
je 0x41b986
push 1
mov eax, dword [0x42f7d0]
push eax
call fcn.00417970
add esp, 8
mov eax, dword [0x42f7d0]
push eax
call fcn.00405940
add esp, 4
cmp dword [esp + 0x10], 4
jne 0x41bb34
lea eax, [esp + 0x224]
mov ecx, dword [0x42f864]
push eax
push ecx
call fcn.004161e0
add esp, 8
cmp eax, 2
jne 0x41bb34
push 1
mov eax, dword [0x42f7d0]
push eax
call fcn.00417970
jmp 0x41bb31
mov eax, dword [0x437710]
cmp dword [0x431714], eax
je 0x41bb34
xor ebp, ebp
push 0x100
lea eax, [esp + 0x228]
mov ecx, dword [0x437368]
push eax
push ecx
call dword [sym.imp.USER32.dll_GetWindowTextA]
cmp esi, 0xffffffff
je 0x41ba46
cmp dword [esp + 0x10], 4
jne 0x41ba46
lea eax, [esp + 0x324]
mov ecx, dword [0x42f864]
push eax
push ecx
call fcn.004161e0
add esp, 8
cmp eax, 2
jne 0x41ba46
cmp dword [0x431350], ebp
jne 0x41ba36
cmp dword [0x431354], ebp
je 0x41ba46
push 1
mov eax, dword [0x42f7d0]
push eax
call fcn.00417970
add esp, 8
xor edi, edi
xor esi, esi
test ebx, ebx
je 0x41bac2
lea eax, [esp + 0x20]
push 0x100
mov ecx, dword [esp + 0x4b0]
push eax
push esi
push ecx
call dword [sym.imp.SHELL32.dll_DragQueryFileA]
call fcn.0041f010
cmp dword [0x431640], edi
je 0x41ba81
lea eax, [esp + 0x20]
push eax
call fcn.00420530
add esp, 4
push edi
mov eax, dword [0x42f808]
lea ecx, [esp + 0x24]
push eax
push ebx
push esi
push ecx
call fcn.004121f0
add esp, 0x14
cmp eax, 2
jne 0x41baab
cmp dword [0x42fbd4], edi
jne 0x41baab
mov ebp, 1
jmp 0x41bab8
cmp eax, 9
jne 0x41bac2
cmp dword [0x42fbd4], edi
jne 0x41bac2
add dword [esp + 0x1c], 0x14
inc esi
cmp esi, ebx
jb 0x41ba4e
cmp dword [esp + 0x10], 4
jne 0x41bae0
lea eax, [esp + 0x224]
mov ecx, dword [0x42f864]
push eax
push ecx
call fcn.004161e0
add esp, 8
test ebp, ebp
je 0x41bb34
cmp dword [0x42f820], 0
je 0x41bb34
mov eax, dword [esp + 0x4a8]
push 1
push eax
call fcn.004176f0
jmp 0x41bb31
lea eax, [esp + 0x120]
push pe_nt_image_headers32
push eax
mov ecx, dword [0x438580]
push 0x36c8
mov ebp, dword [sym.imp.USER32.dll_LoadStringA]
push ecx
call ebp
lea ecx, [esp + 0x120]
push ecx
push str.__s
call fcn.0040cf50
add esp, 8
mov dword [0x431714], 0
mov eax, dword [esp + 0x4ac]
push eax
call dword [sym.imp.SHELL32.dll_DragFinish]
xor eax, eax
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x494
ret