Function at 0x45ea20
Capabilities:
Copy file

Disassembly:
push 0xffffffffffffffff
push 0x493ace
mov eax, dword fs:[0]
push eax
sub esp, 0x190
mov eax, dword [0x4d01d4]
xor eax, esp
mov dword [esp + 0x188], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4d01d4]
xor eax, esp
push eax
lea eax, [esp + 0x1a4]
mov dword fs:[0], eax
mov eax, dword [esp + 0x1b4]
lea esi, [esp + 0xb8]
mov dword [esp + 0x1c], eax
call fcn.0045f480
xor ebx, ebx
mov dword [esp + 0x1ac], ebx
lea ecx, [esp + 0xd4]
push ecx
call fcn.0040aed0
mov byte [esp + 0x1ac], 1
mov eax, dword [esp + 0x1b8]
lea edx, [esp + 0x12c]
push edx
push eax
lea edx, [esp + 0xf8]
lea ecx, [esp + 0xdc]
call fcn.0040c6a0
add esp, 8
test al, al
je 0x45eac7
lea ecx, [esp + 0xd4]
push ecx
call fcn.0040d6f0
mov edx, dword [esp + 0x10c]
lea eax, [esp + 0x28]
push eax
mov dword [esp + 0x110], edx
mov dword [esp + 0x114], ebx
mov dword [esp + 0x118], ebx
mov dword [esp + 0x128], ebx
mov dword [esp + 0x12c], ebx
mov dword [esp + 0x124], ebx
call fcn.0043dfe0
mov byte [esp + 0x1ac], 2
lea ebx, [ebx]
push ecx
mov eax, esp
mov dword [eax], 0x4b6774
lea eax, [esp + 0xd8]
mov dword [esp + 0x1c], esp
call fcn.0040ca50
cmp al, bl
je 0x45ef2f
mov esi, 7
xor ecx, ecx
mov dword [esp + 0x15c], esi
mov dword [esp + 0x158], ebx
mov word [esp + 0x148], cx
mov byte [esp + 0x1ac], 3
xor edx, edx
mov dword [esp + 0x178], esi
mov dword [esp + 0x174], ebx
mov word [esp + 0x164], dx
mov byte [esp + 0x1ac], 4
xor eax, eax
mov dword [esp + 0x194], esi
mov dword [esp + 0x190], ebx
mov word [esp + 0x180], ax
mov byte [esp + 0x1ac], 6
mov eax, dword [esp + 0x110]
cmp eax, ebx
je 0x45ebe1
cmp dword [esp + 0x120], 1
jne 0x45ebe1
mov ecx, dword [esp + 0x114]
cmp ecx, ebx
setne dl
mov dword [esp + 0x10c], eax
mov dword [esp + 0x110], ecx
mov dword [esp + 0x114], ebx
mov dword [esp + 0x124], ebx
mov dword [esp + 0x128], ebx
mov dword [esp + 0x120], edx
push ecx
mov eax, esp
mov dword [eax], str.ImgUrl
lea eax, [esp + 0xd8]
mov dword [esp + 0x1c], esp
call fcn.0040ca50
cmp al, bl
je 0x45ec51
lea eax, [esp + 0x48]
push eax
lea ecx, [esp + 0xd8]
call fcn.0045e460
mov byte [esp + 0x1ac], 7
push 0xffffffffffffffff
push ebx
lea ecx, [esp + 0x168]
call fcn.00403690
mov byte [esp + 0x1ac], 6
cmp dword [esp + 0x60], 8
jb 0x45ec42
mov ecx, dword [esp + 0x4c]
push ecx
call fcn.00471099
add esp, 4
xor edx, edx
mov dword [esp + 0x60], esi
mov dword [esp + 0x5c], ebx
mov word [esp + 0x4c], dx
push ecx
mov eax, esp
mov dword [eax], 0x4b678c
lea eax, [esp + 0xd8]
mov dword [esp + 0x1c], esp
call fcn.0040ca50
cmp al, bl
je 0x45ecd3
lea eax, [esp + 0x80]
push eax
lea ecx, [esp + 0xd8]
call fcn.0045e460
mov byte [esp + 0x1ac], 8
push 0xffffffffffffffff
push ebx
lea ecx, [esp + 0x14c]
call fcn.00403690
mov byte [esp + 0x1ac], 6
cmp dword [esp + 0x98], 8
jb 0x45ecbb
mov ecx, dword [esp + 0x84]
push ecx
call fcn.00471099
add esp, 4
xor edx, edx
mov dword [esp + 0x98], esi
mov dword [esp + 0x94], ebx
mov word [esp + 0x84], dx
mov eax, dword [esp + 0x10c]
cmp eax, ebx
je 0x45ed33
mov edi, dword [esp + 0x134]
mov edx, dword [esp + 0x110]
mov ecx, eax
mov esi, eax
and eax, 0xffff
sar esi, 0x10
mov esi, dword [edi + esi*4]
shl eax, 5
mov eax, dword [esi + eax + 0x10]
mov dword [esp + 0x10c], eax
xor eax, eax
cmp ecx, ebx
setne al
mov dword [esp + 0x110], ecx
mov dword [esp + 0x114], edx
mov dword [esp + 0x124], ebx
mov dword [esp + 0x128], ebx
mov dword [esp + 0x120], eax
or ecx, 0xffffffff
lea edi, [esp + 0x20]
lea ebx, [esp + 0x160]
mov dword [esp + 0x20], 0x2f
call fcn.0045f5b0
mov esi, eax
xor ebx, ebx
cmp esi, 0xffffffff
je 0x45edd4
push 0xffffffffffffffff
push ebx
lea eax, [esp + 0xc0]
lea ecx, [esp + 0x184]
call fcn.00403690
lea ecx, [esp + 0x64]
push ecx
lea eax, [esp + 0x164]
lea edx, [esi + 1]
push eax
or ecx, 0xffffffff
call fcn.0040f2b0
mov byte [esp + 0x1ac], 9
push ebx
push eax
or eax, 0xffffffff
lea esi, [esp + 0x184]
call fcn.00403f00
mov byte [esp + 0x1ac], 6
mov esi, 8
cmp dword [esp + 0x7c], esi
jb 0x45edbe
mov ecx, dword [esp + 0x68]
push ecx
call fcn.00471099
add esp, 4
mov ebp, 7
xor edx, edx
mov dword [esp + 0x7c], ebp
mov dword [esp + 0x78], ebx
mov word [esp + 0x68], dx
jmp 0x45eddc
mov ebp, 7
lea esi, [ebp + 1]
cmp byte [esp + 0x1bc], bl
je 0x45eede
xor eax, eax
push 0xffffffffffffffff
mov word [esp + 0xa4], ax
push ebx
lea eax, [esp + 0xc0]
lea ecx, [esp + 0xa4]
mov dword [esp + 0xbc], ebp
mov dword [esp + 0xb8], ebx
call fcn.00403690
mov byte [esp + 0x1ac], 0xa
push 0xa
push str.adtemp.jpg
lea eax, [esp + 0xa4]
call fcn.00403a30
mov edi, dword [esp + 0xa0]
cmp dword [esp + 0xb4], esi
jae 0x45ee49
lea edi, [esp + 0xa0]
mov ecx, dword [esp + 0x164]
cmp dword [esp + 0x178], esi
jae 0x45ee60
lea ecx, [esp + 0x164]
mov edx, dword [esp + 0x1c]
push edx
call fcn.0045e840
test eax, eax
je 0x45eea5
mov ecx, dword [esp + 0x180]
cmp dword [esp + 0x194], esi
jae 0x45ee85
lea ecx, [esp + 0x180]
mov eax, dword [esp + 0xa0]
cmp dword [esp + 0xb4], esi
jae 0x45ee9c
lea eax, [esp + 0xa0]
push ebx
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileW]
mov byte [esp + 0x1ac], 6
cmp dword [esp + 0xb4], esi
jb 0x45eec6
mov eax, dword [esp + 0xa0]
push eax
call fcn.00471099
add esp, 4
xor ecx, ecx
mov dword [esp + 0xb4], ebp
mov dword [esp + 0xb0], ebx
mov word [esp + 0xa0], cx
mov eax, dword [esp + 0x180]
cmp dword [esp + 0x194], esi
jae 0x45eef5
lea eax, [esp + 0x180]
push eax
call fcn.0048a660
add esp, 4
test al, al
je 0x45ef13
lea edx, [esp + 0x144]
push edx
lea edi, [esp + 0x2c]
call fcn.0045f510
mov byte [esp + 0x1ac], 2
lea eax, [esp + 0x144]
push eax
call fcn.0042edf0
xor ebx, ebx
jmp 0x45eb10
mov esi, dword [esp + 0x1c]
lea edi, [esi + 0x38]
mov dword [esp + 0x20], ebx
mov dword [esp + 0x20], edi
cmp edi, ebx
je 0x45ef4c
mov edx, dword [edi]
mov eax, dword [edx]
push 0xffffffffffffffff
mov ecx, edi
call eax
mov byte [esp + 0x1ac], 0xb
mov ecx, dword [esp + 0x38]
sub ecx, dword [esp + 0x34]
mov eax, 0x30c30c31
imul ecx
sar edx, 4
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
je 0x45f06b
add esi, 0x20
mov eax, esi
call fcn.0042eaf0
mov eax, dword [esi + 0x10]
mov dword [esp + 0x18], eax
cmp dword [esi + 0xc], eax
jbe 0x45ef8e
call fcn.0047198a
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x34]
mov edx, dword [esi]
mov dword [esp + 0x40], edx
mov dword [esp + 0x1c], eax
cmp ecx, eax
jbe 0x45efb1
call fcn.0047198a
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x34]
mov ebp, dword [esp + 0x28]
mov dword [esp + 0x24], ecx
cmp ecx, eax
jbe 0x45efc2
call fcn.0047198a
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
mov eax, dword [esp + 0x1c]
push ebp
push ecx
mov ecx, dword [esp + 0x4c]
push edx
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
mov ecx, esi
call fcn.0045fb20
call fcn.00403860
mov eax, dword [eax]
push ebx
push ebx
push 0x7eb
push eax
call dword [sym.imp.USER32.dll_PostMessageW]
mov byte [esp + 0x1ac], 2
cmp edi, ebx
je 0x45f012
mov eax, dword [edi]
mov edx, dword [eax + 8]
mov ecx, edi
call edx
mov byte [esp + 0x1ac], 1
lea eax, [esp + 0x28]
push eax
call fcn.0042ea60
mov byte [esp + 0x1ac], bl
lea ecx, [esp + 0xd4]
push ecx
call fcn.0040af80
mov dword [esp + 0x1ac], 0xffffffff
cmp dword [esp + 0xd0], 8
jb 0x45f05d
mov edx, dword [esp + 0xbc]
push edx
call fcn.00471099
add esp, 4
xor eax, eax
mov word [esp + 0xbc], ax
mov al, 1
jmp 0x45f0d7
mov byte [esp + 0x1ac], 2
cmp edi, ebx
je 0x45f080
mov edx, dword [edi]
mov eax, dword [edx + 8]
mov ecx, edi
call eax
mov byte [esp + 0x1ac], 1
lea ecx, [esp + 0x28]
push ecx
call fcn.0042ea60
mov byte [esp + 0x1ac], bl
lea edx, [esp + 0xd4]
push edx
call fcn.0040af80
mov dword [esp + 0x1ac], 0xffffffff
cmp dword [esp + 0xd0], 8
jb 0x45f0cb
mov eax, dword [esp + 0xbc]
push eax
call fcn.00471099
add esp, 4
xor ecx, ecx
mov word [esp + 0xbc], cx
xor al, al
mov dword [esp + 0xcc], ebx
mov dword [esp + 0xd0], 7
mov ecx, dword [esp + 0x1a4]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x188]
xor ecx, esp
call fcn.00470f4c
add esp, 0x19c
ret 0xc