Function at 0x48e070
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
push 0xffffffffffffffff
push 0x4f3c2d
mov eax, dword fs:[0]
push eax
sub esp, 0x14c
mov eax, dword [section..data]
xor eax, esp
mov dword [esp + 0x144], eax
push esi
push edi
mov eax, dword [section..data]
xor eax, esp
push eax
lea eax, [esp + 0x158]
mov dword fs:[0], eax
mov edx, ecx
mov dword [esp + 0x28], edx
cmp dword [edx + 8], 1
mov eax, dword [ebp + 0x10]
mov dword [esp + 0x1c], 0
ja 0x48e0ca
mov ecx, eax
jmp 0x48e0d1
mov ecx, 1
sub ecx, eax
imul esi, eax, 0x168
imul eax, ecx, 0x168
add esi, 0x74
add eax, 0x74
add esi, edx
add eax, edx
mov dword [esp + 0x34], esi
mov dword [esp + 0x24], eax
mov cl, byte [eax + 0x164]
mov byte [esp + 0x1b], cl
mov byte [esp + 0x20], cl
mov byte [eax + 0x164], 0
mov dword [esp + 0x160], 0
mov al, byte [esi + 0x164]
mov dword [esp + 0x44], esi
mov byte [esp + 0x1a], al
mov byte [esp + 0x40], al
mov byte [esi + 0x164], 0
cmp byte [ebp + 8], 0
mov byte [esp + 0x160], 1
je 0x48e1b4
push 0x1771
mov ecx, esi
call fcn.004c1be0
test al, al
je 0x48edcb
xorps xmm0, xmm0
mov dword [esp + 0x74], 0
movq qword [esp + 0x6c], xmm0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov byte [esp + 0x160], 2
movq qword [esp + 0x60], xmm0
push 8
mov dword [esp + 0x6c], 0
mov dword [esp + 0x64], 0
call fcn.004df9b3
mov edi, eax
add esp, 4
test edi, edi
jne 0x48e1e6
mov byte [esp + 0x12], al
lea eax, [esp + 0x12]
push 0x51c2c8
push eax
call fcn.004ea58e
cmp dword [esi + 0xf8], 0
jne 0x48e14a
mov edx, 0x1778
lea ecx, [esp + 0x78]
call fcn.004a1ed0
push 0x10
push 0x502ee0
push dword [eax]
push dword [esi + 4]
call dword [sym.imp.USER32.dll_MessageBoxW]
push dword [esp + 0x78]
jmp 0x48edc3
xor eax, eax
mov dword [esp + 0x60], edi
mov dword [esp + 0x64], 0
mov dword [esp + 0x68], 3
mov word [edi], ax
mov byte [esp + 0x160], 3
mov byte [esp + 0x13], al
cmp byte [ebp + 0xc], al
je 0x48e298
push 1
push 0xffffffffffffffff
push 0x100c
push dword [esi + 0x68]
call dword [sym.imp.USER32.dll_SendMessageW]
test eax, eax
js 0x48eda6
push eax
mov ecx, esi
call fcn.0048c190
mov dword [esp + 0x14], eax
cmp eax, 0xffffffff
je 0x48eda6
lea ecx, [esp + 0x6c]
call fcn.00410b20
mov edx, dword [esp + 0x70]
mov ecx, dword [esp + 0x6c]
mov eax, dword [esp + 0x14]
push eax
mov dword [ecx + edx*4], eax
lea eax, [esp + 0x7c]
inc edx
mov ecx, esi
push eax
mov dword [esp + 0x78], edx
call fcn.004bd340
push eax
lea ecx, [esp + 0x64]
mov byte [esp + 0x164], 4
call fcn.004128e0
mov byte [esp + 0x160], 3
push dword [esp + 0x78]
call fcn.004df97b
add esp, 4
jmp 0x48e319
lea eax, [esp + 0x6c]
mov ecx, esi
push eax
call fcn.004bcea0
mov eax, dword [esp + 0x70]
test eax, eax
je 0x48e2ba
cmp eax, 1
jne 0x48e2ca
mov eax, dword [esp + 0x6c]
cmp dword [eax], 0xffffffff
jne 0x48e2d2
lea eax, [esp + 0x6c]
mov ecx, esi
push eax
call fcn.004bcf10
mov eax, dword [esp + 0x70]
test eax, eax
je 0x48eda6
mov ecx, dword [esp + 0x24]
lea eax, [esp + 0x78]
push eax
call fcn.004abd60
push eax
lea ecx, [esp + 0x64]
mov byte [esp + 0x164], 5
call fcn.004128e0
mov byte [esp + 0x160], 3
push dword [esp + 0x78]
call fcn.004df97b
mov eax, dword [esp + 0x2c]
add esp, 4
cmp dword [eax + 8], 1
jne 0x48e319
lea ecx, [esp + 0x60]
call fcn.0048d750
xorps xmm0, xmm0
mov dword [esp + 0xa4], 0
movq qword [esp + 0x9c], xmm0
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
lea edx, [esp + 0x9c]
mov byte [esp + 0x160], 6
mov ecx, str.CopyHistory
call fcn.004d27b0
push str.FSFolder
mov ecx, esi
call fcn.004abd10
test al, al
jne 0x48e39f
push str.FSDrives
mov ecx, esi
call fcn.004abd10
test al, al
jne 0x48e39f
push str.AltStreamsFolder
mov ecx, esi
call fcn.004abd10
mov byte [esp + 0x12], 0
test al, al
je 0x48e3a4
mov byte [esp + 0x12], 1
push 0x48
lea eax, [esp + 0xc8]
push 0
push eax
call fcn.004e3fe0
add esp, 0xc
lea ecx, [esp + 0xc4]
call fcn.0048ee10
lea eax, [esp + 0x9c]
mov byte [esp + 0x160], 7
push eax
lea ecx, [esp + 0x104]
call fcn.00415590
lea eax, [esp + 0x60]
push eax
lea ecx, [esp + 0xec]
call fcn.004128e0
xor eax, eax
mov ecx, 0x5236a4
cmp byte [ebp + 8], al
setne al
add eax, 0x1770
push eax
mov dword [esp + 0x18], eax
call fcn.00411750
test eax, eax
je 0x48e420
push eax
lea ecx, [esp + 0xd4]
call fcn.00412850
jmp 0x48e430
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0xd0]
call fcn.0041e240
xor eax, eax
mov ecx, 0x5236a4
cmp byte [ebp + 8], al
setne al
add eax, 0x1772
push eax
mov dword [esp + 0x18], eax
call fcn.00411750
test eax, eax
je 0x48e45f
push eax
lea ecx, [esp + 0xe0]
call fcn.00412850
jmp 0x48e46f
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0xdc]
call fcn.0041e240
lea eax, [esp + 0x6c]
mov ecx, esi
push eax
lea eax, [esp + 0x7c]
push eax
call fcn.0048da40
push eax
lea ecx, [esp + 0xf8]
mov byte [esp + 0x164], 8
call fcn.004128e0
mov byte [esp + 0x160], 7
push dword [esp + 0x78]
call fcn.004df97b
add esp, 4
push dword [esi + 4]
call dword [sym.imp.USER32.dll_GetParent]
test eax, eax
jne 0x48e4b9
mov eax, dword [esi + 0x38]
lea ecx, [esp + 0xc4]
push ecx
push 0x416220
push eax
push 0x60
push dword [0x52323c]
call dword [sym.imp.USER32.dll_DialogBoxParamW]
cmp eax, 1
je 0x48e4ef
lea ecx, [esp + 0xc4]
call fcn.0048ef70
mov edi, dword [esp + 0x60]
jmp 0x48ed9a
lea eax, [esp + 0xe8]
push eax
lea ecx, [esp + 0x64]
call fcn.004128e0
lea ecx, [esp + 0xc4]
mov byte [esp + 0x160], 6
call fcn.0048ef70
cmp dword [esp + 0x64], 0
jne 0x48e52b
mov ecx, esi
call fcn.004abbd0
mov edi, dword [esp + 0x60]
jmp 0x48ed9a
xorps xmm0, xmm0
mov dword [esp + 0x8c], 0
lea ecx, [esp + 0x84]
movq qword [esp + 0x84], xmm0
call fcn.00412560
lea eax, [esp + 0x84]
mov byte [esp + 0x160], 9
push eax
lea eax, [esp + 0x64]
mov ecx, esi
push eax
call fcn.004c3190
test al, al
jne 0x48e583
push 0x80070057
mov ecx, esi
call fcn.004ab9f0
mov edi, dword [esp + 0x60]
jmp 0x48eab7
mov ecx, dword [esp + 0x60]
call fcn.0041b5e0
test al, al
je 0x48e59f
xor eax, eax
mov dword [esp + 0x64], 0
mov word [ecx], ax
jmp 0x48e5d1
lea eax, [esp + 0x78]
mov ecx, esi
push eax
call fcn.004abd60
push eax
lea ecx, [esp + 0x64]
mov byte [esp + 0x164], 0xa
call fcn.004128e0
mov byte [esp + 0x160], 9
push dword [esp + 0x78]
call fcn.004df97b
add esp, 4
lea eax, [esp + 0x84]
push eax
lea ecx, [esp + 0x64]
call fcn.00412bd0
mov eax, dword [esp + 0x64]
mov edi, dword [esp + 0x60]
mov dword [esp + 0x14], edi
test eax, eax
je 0x48e60c
cmp word [edi], 0x5c
jne 0x48e60c
cmp eax, 1
je 0x48e9f0
cmp word [edi + 2], 0x5c
jne 0x48e9f0
mov ecx, dword [esp + 0x24]
lea eax, [esp + 0x78]
push eax
call fcn.004abd60
mov ecx, edi
mov edx, dword [eax]
call fcn.00413f10
push dword [esp + 0x78]
test eax, eax
sete byte [esp + 0x15]
call fcn.004df97b
add esp, 4
cmp byte [esp + 0x11], 0
je 0x48e9a8
mov eax, dword [esp + 0x28]
cmp dword [eax + 8], 1
je 0x48e671
lea eax, [esp + 0x78]
mov ecx, esi
push eax
call fcn.004abd60
mov ecx, edi
mov dword [esp + 0x1c], 1
mov edx, dword [eax]
call fcn.00413f10
mov byte [esp + 0x10], 0
test eax, eax
jne 0x48e676
mov byte [esp + 0x10], 1
test byte [esp + 0x1c], 1
je 0x48e689
push dword [esp + 0x78]
call fcn.004df97b
add esp, 4
cmp byte [esp + 0x10], 0
je 0x48e6aa
push 0x10
push 0x502ee0
push str.Can_not_copy_files_onto_itself
push dword [esi + 4]
call dword [sym.imp.USER32.dll_MessageBoxW]
jmp 0x48eab7
mov eax, dword [esp + 0x24]
cmp dword [eax + 0xf8], 0
je 0x48e9a8
push str.FSFolder
mov ecx, eax
call fcn.004abd10
test al, al
jne 0x48e70e
mov ecx, dword [esp + 0x24]
push str.AltStreamsFolder
call fcn.004abd10
test al, al
jne 0x48e70e
mov ecx, dword [esp + 0x24]
push str.FSDrives
call fcn.004abd10
test al, al
jne 0x48e9f0
mov ecx, dword [esp + 0x24]
push str.RootFolder
call fcn.004abd10
test al, al
jne 0x48e9f0
mov byte [esp + 0x13], 1
lea edx, [esp + 0x60]
lea ecx, [esp + 0x9c]
call fcn.0048f330
cmp dword [esp + 0xa0], 0x14
jbe 0x48e746
jmp 0x48e730
lea ecx, [esp + 0x9c]
call fcn.00415710
cmp dword [esp + 0xa0], 0x14
ja 0x48e730
lea edx, [esp + 0x9c]
mov ecx, str.CopyHistory
call fcn.004d26d0
mov byte [esp + 0x160], 6
push dword [esp + 0x84]
call fcn.004df97b
mov al, byte [esp + 0x17]
add esp, 4
test al, al
je 0x48ead7
mov ecx, esi
call fcn.0048c200
test al, al
je 0x48ead3
mov byte [esp + 0x11], 0
mov byte [esp + 0x10], 0
xorps xmm0, xmm0
lea ecx, [esp + 0xb4]
movdqa xmmword [esp + 0xb4], xmm0
call fcn.0047ace0
mov byte [esp + 0x160], 0xc
lea ecx, [esp + 0x90]
xorps xmm0, xmm0
mov dword [esp + 0x98], 0
movq qword [esp + 0x90], xmm0
call fcn.00412560
cmp byte [esp + 0x10], 0
mov byte [esp + 0x160], 0xd
je 0x48e816
push 0x503b48
lea ecx, [esp + 0xb8]
call fcn.00418960
lea eax, [esp + 0xb8]
push eax
lea ecx, [esp + 0x94]
call fcn.004128e0
lea ecx, [esp + 0x90]
call fcn.0041b210
lea ecx, [esp + 0x110]
call fcn.0048c0c0
lea ecx, [esp + 0x130]
mov byte [esp + 0x160], 0xe
call fcn.0048c0c0
lea eax, [esp + 0x110]
mov byte [esp + 0x160], 0xf
push eax
mov ecx, esi
call fcn.004bc0b0
mov edi, dword [esp + 0x24]
lea eax, [esp + 0x130]
push eax
mov ecx, edi
call fcn.004bc0b0
push edi
lea ecx, [esp + 0x3c]
call fcn.0048c250
push esi
lea ecx, [esp + 0x30]
call fcn.0048c250
cmp byte [esp + 0x11], 0
mov byte [esp + 0x160], 0x11
je 0x48e91a
lea ecx, [esp + 0xc4]
call fcn.0048c120
cmp byte [esp + 0x10], 0
lea ecx, [esp + 0x60]
lea eax, [esp + 0x90]
mov byte [esp + 0x160], 0x12
cmove eax, ecx
lea ecx, [esp + 0xcc]
push eax
call fcn.004128e0
mov eax, dword [ebp + 8]
mov ecx, esi
mov byte [esp + 0xc5], al
lea eax, [esp + 0x6c]
push 0
push eax
lea eax, [esp + 0xcc]
mov word [esp + 0xcf], 1
push eax
mov byte [esp + 0xd5], 1
call fcn.0048c2a0
lea ecx, [esp + 0xd8]
mov byte [esp + 0x160], 0x11
mov edi, eax
call fcn.00410a70
push dword [esp + 0xcc]
call fcn.004df97b
add esp, 4
test edi, edi
jne 0x48ec96
cmp byte [esp + 0x13], 0
je 0x48eca6
xorps xmm0, xmm0
mov dword [esp + 0x8c], 0
movq qword [esp + 0x84], xmm0
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
mov byte [esp + 0x160], 0x13
lea ecx, [esp + 0x78]
movq qword [esp + 0x78], xmm0
mov dword [esp + 0x80], 0
call fcn.00412560
cmp byte [esp + 0x10], 0
mov byte [esp + 0x160], 0x14
je 0x48eb03
lea eax, [esp + 0x90]
push eax
lea ecx, [esp + 0x7c]
call fcn.004128e0
jmp 0x48eb3b
mov ecx, edi
call fcn.0041b2a0
test al, al
jne 0x48e9f0
cmp dword [esp + 0x70], 1
jne 0x48ea88
mov eax, dword [esp + 0x64]
test eax, eax
je 0x48ea88
movzx ecx, word [edi + eax*2 - 2]
mov eax, ecx
cmp eax, 0x5c
je 0x48ea88
cmp eax, 0x2f
je 0x48ea88
lea ecx, [esp + 0x60]
call fcn.00412d20
test eax, eax
jns 0x48e9fc
mov ecx, esi
call fcn.004abbd0
jmp 0x48eab7
inc eax
mov dword [esp + 0x98], 0
push eax
lea eax, [esp + 0x94]
xorps xmm0, xmm0
push eax
lea ecx, [esp + 0x68]
movq qword [esp + 0x98], xmm0
call fcn.00452930
mov byte [esp + 0x160], 0xb
mov ecx, dword [esp + 0x90]
call fcn.00417bc0
test al, al
jne 0x48ea6c
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push dword [esp + 0x94]
mov ecx, esi
call fcn.004aba30
mov byte [esp + 0x160], 9
push dword [esp + 0x90]
call fcn.004df97b
add esp, 4
jmp 0x48eab7
mov byte [esp + 0x160], 9
push dword [esp + 0x90]
call fcn.004df97b
add esp, 4
jmp 0x48e70e
lea ecx, [esp + 0x60]
call fcn.0041b210
mov edi, dword [esp + 0x60]
mov ecx, edi
mov dword [esp + 0x14], edi
call fcn.00417bc0
test al, al
jne 0x48e70e
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push edi
mov ecx, esi
call fcn.004aba30
mov byte [esp + 0x160], 6
push dword [esp + 0x84]
call fcn.004df97b
add esp, 4
jmp 0x48ed9a
mov al, byte [esp + 0x13]
mov byte [esp + 0x11], 1
test al, al
je 0x48e78e
mov eax, dword [esp + 0x28]
mov byte [esp + 0x10], 1
cmp dword [eax + 8], 1
jne 0x48e793
mov ecx, esi
call fcn.004abbd0
jmp 0x48ed9a
lea eax, [esp + 0xa8]
mov ecx, esi
push eax
call fcn.004abd60
push eax
lea ecx, [esp + 0x7c]
mov byte [esp + 0x164], 0x15
call fcn.004128e0
mov byte [esp + 0x160], 0x14
push dword [esp + 0xa8]
call fcn.004df97b
add esp, 4
lea ecx, [esp + 0x84]
call fcn.00410ab0
push dword [esp + 0x70]
lea ecx, [esp + 0x88]
call fcn.0041ec00
xor edi, edi
cmp dword [esp + 0x70], edi
jbe 0x48ec49
jmp 0x48eb70
mov eax, dword [esp + 0x6c]
lea ecx, [esp + 0xa8]
xorps xmm0, xmm0
mov dword [esp + 0xb0], 0
movq qword [esp + 0xa8], xmm0
mov eax, dword [eax + edi*4]
mov dword [esp + 0x1c], eax
call fcn.00412560
push dword [esp + 0x1c]
mov byte [esp + 0x164], 0x16
mov ecx, esi
cmp byte [esp + 0x16], 0
je 0x48ebe0
lea eax, [esp + 0x58]
push eax
call fcn.004bd8c0
push eax
lea ecx, [esp + 0xac]
mov byte [esp + 0x164], 0x17
call fcn.004128e0
mov byte [esp + 0x160], 0x16
push dword [esp + 0x54]
jmp 0x48ec0b
lea eax, [esp + 0x4c]
push eax
call fcn.004bd430
push eax
lea ecx, [esp + 0xac]
mov byte [esp + 0x164], 0x18
call fcn.004128e0
mov byte [esp + 0x160], 0x16
push dword [esp + 0x48]
call fcn.004df97b
add esp, 4
lea eax, [esp + 0xa8]
lea ecx, [esp + 0x84]
push eax
call fcn.0041eb70
mov byte [esp + 0x160], 0x14
push dword [esp + 0xa8]
call fcn.004df97b
inc edi
add esp, 4
cmp edi, dword [esp + 0x70]
jb 0x48eb70
mov ecx, dword [esp + 0x24]
lea eax, [esp + 0x84]
sub esp, 8
push eax
lea eax, [esp + 0x84]
push eax
push dword [ebp + 8]
call fcn.004ada20
mov byte [esp + 0x160], 0x13
mov edi, eax
push dword [esp + 0x78]
call fcn.004df97b
add esp, 4
mov byte [esp + 0x160], 0x11
lea ecx, [esp + 0x84]
call fcn.00410a70
test edi, edi
je 0x48eca6
cmp edi, 0x80004004
je 0x48eca6
push edi
mov ecx, esi
call fcn.004ab9f0
mov ecx, dword [esp + 0x28]
push 1
call fcn.0048f220
cmp byte [ebp + 0xc], 0
jne 0x48ecbd
cmp byte [ebp + 8], 0
je 0x48ecd2
lea eax, [esp + 0x110]
mov ecx, esi
push eax
call fcn.004bc220
cmp byte [ebp + 0xc], 0
jne 0x48ecea
mov ecx, dword [esp + 0x24]
lea eax, [esp + 0x130]
push eax
call fcn.004bc220
mov ecx, esi
call fcn.004c4c50
mov edi, dword [esp + 0x3c]
mov al, byte [esp + 0x38]
mov esi, dword [esp + 0x30]
mov byte [edi + 0x165], al
mov al, byte [esp + 0x39]
mov byte [edi + 0x166], al
mov al, byte [esp + 0x2c]
mov byte [esi + 0x165], al
mov al, byte [esp + 0x2d]
mov byte [esi + 0x166], al
mov eax, dword [esp + 0x34]
push dword [eax + 0x68]
call dword [sym.imp.USER32.dll_SetFocus]
mov al, byte [esp + 0x2c]
lea ecx, [esp + 0x130]
mov byte [esi + 0x165], al
mov al, byte [esp + 0x2d]
mov byte [esi + 0x166], al
mov al, byte [esp + 0x38]
mov byte [edi + 0x165], al
mov al, byte [esp + 0x39]
mov byte [edi + 0x166], al
call fcn.0048c3c0
lea ecx, [esp + 0x110]
call fcn.0048c3c0
mov byte [esp + 0x160], 0xc
push dword [esp + 0x90]
call fcn.004df97b
add esp, 4
mov byte [esp + 0x160], 6
lea ecx, [esp + 0xb4]
call fcn.0047ad30
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x14]
lea ecx, [esp + 0x9c]
call fcn.00410a70
push edi
mov byte [esp + 0x164], 2
call fcn.004df97b
add esp, 4
mov byte [esp + 0x160], 1
push dword [esp + 0x6c]
call fcn.004df97b
add esp, 4
mov al, byte [esp + 0x1a]
mov cl, byte [esp + 0x1b]
mov byte [esi + 0x164], al
mov eax, dword [esp + 0x24]
mov byte [eax + 0x164], cl
mov ecx, dword [esp + 0x158]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [esp + 0x144]
xor ecx, esp
call fcn.004df96c
mov esp, ebp
pop ebp
ret 0xc