Function at 0x5814f7
Capabilities:
Copy file
Delete file

Disassembly:
push ebp
sub esp, 0x4c
mov eax, 0x6ae366
call fcn.00640244
sub esp, 0x15c
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
xor ecx, ecx
sub esp, 0x18
mov byte [ebp + 0x4f], cl
mov eax, esp
mov dword [ebp + 0x18], esp
mov dword [eax + 0x14], 0xf
mov dword [eax + 0x10], ecx
cmp dword [eax + 0x14], 0x10
jb 0x581530
mov eax, dword [eax]
mov byte [eax], cl
mov esi, dword [ebp + 0x58]
lea eax, [ebp - 0x40]
push esi
push eax
mov dword [ebp - 4], ecx
call fcn.0047dece
xor ebx, ebx
inc ebx
cmp dword [eax + 0x14], 0x10
mov byte [ebp - 4], bl
jb 0x581550
mov eax, dword [eax]
lea ecx, [ebp + 0x4f]
mov byte [ebp - 4], 2
push ecx
push 0
push eax
lea ecx, [ebp - 0x168]
call fcn.004446f4
push 0
push ebx
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 4
call fcn.0040f52f
mov edi, dword [ebp + 0x60]
mov eax, str.NULL
mov ecx, edi
test edi, edi
jne 0x581585
mov ecx, eax
cmp dword [ebp + 0x5c], 0
je 0x58158e
mov eax, dword [ebp + 0x5c]
push ecx
push eax
push esi
push str.LoadKnownFileType_called_with__s___s___s_n
call fcn.0040e2b4
add esp, 0x10
push 0x6caa54
push esi
call fcn.0047e15a
test al, al
je 0x581830
test edi, edi
je 0x5815c4
push str.torrent
push edi
call fcn.0047e15a
test al, al
jne 0x5815f6
cmp byte [ebp + 0x4f], 0
je 0x5816ab
cmp dword [ebp - 0x124], 0x10
mov eax, dword [ebp - 0x138]
jae 0x5815e3
lea eax, [ebp - 0x138]
push 0x6cedb0
push eax
call fcn.0047dbdd
test al, al
je 0x5816ab
push dword [ebp + 0x64]
push 0xa0
push 4
push dword [ebp + 0x74]
push dword [ebp + 0x70]
push dword [ebp + 0x5c]
push esi
xor esi, esi
push esi
push 0x57e588
call fcn.005813b1
push 0x74471c
lea ecx, [ebp + 0x1c]
call fcn.0040eeff
push str.success
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 5
call fcn.0040eeff
push str.http_add_torrent
lea ecx, [ebp]
mov byte [ebp - 4], 6
call fcn.0040eeff
push str.AddTorrent
lea ecx, [ebp + 0x34]
mov byte [ebp - 4], 7
call fcn.0040eeff
fld dword [0x70f800]
lea eax, [ebp + 0x1c]
push ecx
fstp dword [esp]
push esi
push eax
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 8
push eax
lea eax, [ebp]
push eax
lea eax, [ebp + 0x34]
push eax
push esi
call fcn.00691667
push esi
push ebx
lea ecx, [ebp + 0x34]
call fcn.0040f52f
push esi
push ebx
lea ecx, [ebp]
call fcn.0040f52f
push esi
push ebx
lea ecx, [ebp - 0x28]
call fcn.0040f52f
lea ecx, [ebp + 0x1c]
push esi
push ebx
call fcn.0040f52f
push esi
push esi
jmp 0x581a90
test edi, edi
je 0x5816be
push str.btkey
push edi
call fcn.0047e1d7
test al, al
jne 0x5816e8
cmp byte [ebp + 0x4f], 0
je 0x58170a
cmp dword [ebp - 0x124], 0x10
mov eax, dword [ebp - 0x138]
jae 0x5816d9
lea eax, [ebp - 0x138]
push str..btkey
push eax
call fcn.0047dbdd
test al, al
je 0x58170a
xor eax, eax
push eax
push 0xa0
push 4
push eax
push dword [ebp + 0x70]
push dword [ebp + 0x5c]
push esi
push eax
push 0x57e4a8
call fcn.005813b1
jmp 0x581aa1
test edi, edi
je 0x58171d
push str.btinstall
push edi
call fcn.0047e1d7
test al, al
jne 0x58174b
cmp byte [ebp + 0x4f], 0
je 0x5817c3
cmp dword [ebp - 0x124], 0x10
mov eax, dword [ebp - 0x138]
jae 0x58173c
lea eax, [ebp - 0x138]
push str..btinstall
push eax
call fcn.0047dbdd
test al, al
je 0x5817c3
push 0x38
call fcn.0063ffa4
pop ecx
mov dword [ebp + 0x64], eax
mov byte [ebp - 4], 9
test eax, eax
je 0x581771
push edi
push esi
push dword [ebp + 0x6c]
mov ecx, eax
push dword [ebp + 0x68]
call fcn.0057d814
mov edi, eax
jmp 0x581773
xor edi, edi
push esi
lea eax, [ebp + 0x1c]
mov byte [ebp - 4], 4
push eax
call fcn.0047dece
cmp dword [eax + 0x14], 0x10
mov byte [ebp - 4], 0xa
jb 0x58178d
mov eax, dword [eax]
push 0x57e857
push edi
xor edi, edi
push edi
push dword [ebp + 0x5c]
push eax
push edi
call fcn.005b4a01
push edi
push ebx
lea ecx, [ebp + 0x1c]
mov byte [ebp - 4], 4
mov esi, eax
call fcn.0040f52f
mov ecx, esi
call fcn.0057e742
push esi
push edi
push 0x801d
jmp 0x581a95
test edi, edi
je 0x5817d6
push 0x6d342c
push edi
call fcn.0047e1d7
test al, al
jne 0x581800
cmp byte [ebp + 0x4f], 0
je 0x58180e
cmp dword [ebp - 0x124], 0x10
mov eax, dword [ebp - 0x138]
jae 0x5817f1
lea eax, [ebp - 0x138]
push str..btapp
push eax
call fcn.0047dbdd
test al, al
je 0x58180e
push 0
push 0
push 0x8023
jmp 0x581a95
mov eax, dword [ebp + 0x64]
shr eax, 2
and al, 1
movzx eax, al
push eax
sub esp, 0x18
mov eax, esp
push esi
push eax
call fcn.00429352
call fcn.005ddb32
jmp 0x581aa1
push 0x6c19cc
push esi
call fcn.0047e1d7
test al, al
jne 0x581aa1
push 0x6c1a68
push esi
call fcn.0047e1d7
test al, al
je 0x581891
push 0
lea eax, [ebp + 0x5c]
push eax
push esi
call fcn.00463066
push dword [ebp + 0x5c]
mov esi, eax
mov byte [ebp - 4], 0xe
push esi
mov dword [ebp + 0x64], esi
call fcn.005a8814
jmp 0x58187e
push ebx
push esi
mov dword [ebp - 4], 4
call fcn.004600c9
jmp 0x581aa1
push str.magnet:
push esi
call fcn.0047e15a
test al, al
je 0x581953
xor eax, eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push fcn.004a3aa9
push eax
push dword [ebp + 0x5c]
mov eax, dword [ebp + 0x64]
or eax, 0x200
push eax
push esi
call fcn.004cec6a
push 0x74471c
lea ecx, [ebp + 0x34]
call fcn.0040eeff
push str.success
lea ecx, [ebp]
mov byte [ebp - 4], 0x10
call fcn.0040eeff
push str.add_magnetlink
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x11
call fcn.0040eeff
push str.AddTorrent
lea ecx, [ebp + 0x1c]
mov byte [ebp - 4], 0x12
call fcn.0040eeff
fld dword [0x70f800]
lea eax, [ebp + 0x34]
push ecx
fstp dword [esp]
xor esi, esi
mov byte [ebp - 4], 0x13
push esi
push eax
lea eax, [ebp]
push eax
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp + 0x1c]
push eax
push esi
call fcn.00691667
push esi
push ebx
lea ecx, [ebp + 0x1c]
call fcn.0040f52f
push esi
push ebx
lea ecx, [ebp - 0x28]
call fcn.0040f52f
push esi
push ebx
lea ecx, [ebp]
call fcn.0040f52f
lea ecx, [ebp + 0x34]
jmp 0x58169d
push 0x6c1ab4
push esi
call fcn.0047e1d7
test al, al
jne 0x581800
push 0x6c1b0c
push esi
call fcn.0047e1d7
test al, al
je 0x581994
push 0x74471c
push dword [ebp + 0x6c]
push dword [ebp + 0x68]
push dword [ebp + 0x64]
push edi
push dword [ebp + 0x5c]
push esi
push 0
call fcn.005811ff
jmp 0x581aa1
test edi, edi
je 0x5819a7
push 0x70eae0
push edi
call fcn.0047e1d7
test al, al
jne 0x5819ba
push 0x6c1a1c
push esi
call fcn.0047e1d7
test al, al
je 0x581a72
push str.current.btskin
lea eax, [ebp + 0x34]
push eax
call fcn.0047354f
test dword [ebp + 0x64], 0x400
mov byte [ebp - 4], 0x14
je 0x5819ed
mov edi, str.user_set
push edi
call fcn.0040f10e
pop ecx
push eax
push edi
mov ecx, 0x7ad1b0
call fcn.0040ee87
push str.default
push esi
call fcn.00665a8e
pop ecx
test eax, eax
mov eax, dword [ebp + 0x34]
pop ecx
jne 0x581a13
cmp dword [ebp + 0x48], 8
jae 0x581a0a
lea eax, [ebp + 0x34]
push eax
call dword [sym.imp.KERNEL32.DLL_DeleteFileW]
jmp 0x581a3f
cmp dword [ebp + 0x48], 8
jae 0x581a1c
lea eax, [ebp + 0x34]
push eax
push esi
call fcn.00665a8e
pop ecx
pop ecx
test eax, eax
je 0x581a3f
cmp dword [ebp + 0x48], 8
mov eax, dword [ebp + 0x34]
jae 0x581a35
lea eax, [ebp + 0x34]
push 0
push eax
push esi
call dword [sym.imp.KERNEL32.DLL_CopyFileW]
call fcn.005ebd55
call fcn.005bb51b
push ebx
push ebx
call fcn.005b3ec8
call fcn.005f5125
push dword [0x7bdc9c]
call fcn.005835b3
call fcn.00596c9b
push 0
push ebx
lea ecx, [ebp + 0x34]
call fcn.004281f2
jmp 0x581aa1
xor ebx, ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push fcn.004a3aa9
push ebx
push dword [ebp + 0x5c]
push dword [ebp + 0x64]
push esi
call fcn.004cec6a
push ebx
push ebx
push 0x803c
push dword [0x7e2568]
call dword [sym.imp.USER32.dll_PostMessageW]
lea ecx, [ebp - 0x168]
call fcn.00444876
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
lea esp, [ebp + 0x50]
pop ebp
ret 0x20