Function at 0x4cacf0
Capabilities:
Copy file
Delete file

Disassembly:
push ebp
lea ebp, [esp - 0x1e8]
sub esp, 0x1e8
push 0xffffffffffffffff
push 0x62afb8
mov eax, dword fs:[0]
push eax
sub esp, 0x64
mov eax, dword [0x70a308]
xor eax, ebp
mov dword [ebp + 0x1e4], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov ebx, ecx
mov dword [ebp - 0x18], ebx
mov eax, dword [ebp + 0x1f8]
mov dword [ebp - 0x4c], eax
xor esi, esi
mov dword [ebp - 4], esi
cmp byte [ebx + 0x47a], 0
jne 0x4cade6
xor edi, edi
mov dword [ebp - 0x40], edi
mov dword [ebp - 0x54], esi
cmp esi, dword [ebx + 0x51c]
jge 0x4cad96
mov ebx, dword [ebp - 0x18]
add ebx, 0x514
push esi
mov ecx, ebx
call fcn.004bf240
mov ecx, dword [ebp + 0x1f0]
cmp dword [eax], ecx
jne 0x4cae0d
push esi
mov ecx, ebx
call fcn.004bf240
mov edi, dword [eax + 4]
mov dword [ebp - 0x40], edi
push 1
push esi
mov ecx, ebx
call fcn.004be2a0
mov ebx, dword [ebp - 0x18]
test edi, edi
jne 0x4cae22
lea ecx, [ebp]
call fcn.0045a180
mov byte [ebp - 4], 1
push edi
lea edx, [ebp]
push edx
mov eax, dword [ebp + 0x1f0]
push eax
lea ecx, [ebx + 8]
call fcn.005cba30
test al, al
je 0x4cadda
mov eax, dword [ebp + 0x18]
test eax, eax
je 0x4cadda
push eax
mov ecx, ebx
call fcn.004be1b0
mov edi, eax
mov dword [ebp - 0x40], edi
test edi, edi
jne 0x4cae16
mov byte [ebp - 4], 0
lea ecx, [ebp]
call fcn.0045a2d0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x1e4]
xor ecx, ebp
call fcn.005f85e7
add ebp, 0x1e8
mov esp, ebp
pop ebp
ret 0xc
inc esi
mov ebx, dword [ebp - 0x18]
jmp 0x4cad51
mov byte [ebp - 4], 0
lea ecx, [ebp]
call fcn.0045a2d0
xor esi, esi
mov dword [edi + 8], esi
lea ecx, [ebp + 0xd4]
call fcn.0045a180
mov byte [ebp - 4], 2
push esi
lea ecx, [ebp + 0xd4]
push ecx
mov edx, dword [ebp + 0x1f0]
push edx
lea ecx, [ebx + 8]
call fcn.005cba30
test al, al
je 0x4cb38f
mov byte [ebp - 0x23], 0
mov byte [ebp - 0x11], 0
mov al, byte [ebx + 0x4ac]
test al, al
jne 0x4cae7f
cmp byte [ebx + 0x4ad], al
je 0x4caf6a
cmp byte [ebx + 0x4af], al
je 0x4caf6a
mov ecx, dword [edi + 0xa94]
cmp ecx, 0x7573
je 0x4cae91
cmp ecx, esi
jne 0x4caeb4
test al, al
je 0x4caeb4
cmp byte [ebp + 0x116], 0
je 0x4caeb4
cmp byte [edi + 0x353], 0
je 0x4caeb4
cmp byte [ebp + 0x11e], 0
je 0x4caeb4
mov byte [ebp - 0x23], 1
cmp ecx, 0x7573
jne 0x4caf6a
mov dword [edi + 0xa94], esi
mov dword [edi + 0x91c], 3
mov eax, dword [ebp + 0xdc]
mov dword [edi + 0x4c8], eax
mov ecx, dword [ebp + 0xe0]
mov dword [edi + 0x4cc], ecx
mov edx, dword [ebp + 0xdc]
mov dword [edi + 0x4d0], edx
mov eax, dword [ebp + 0xe0]
mov dword [edi + 0x4d4], eax
mov byte [ebp - 0x11], 1
cmp dword [edi + 0xdc], esi
je 0x4caf38
mov byte [ebp - 4], 3
mov eax, dword [edi + 0xdc]
push eax
call fcn.005cfa9b
add esp, 4
mov dword [ebp - 4], 2
jmp 0x4caf38
mov ecx, dword [ebp + 0x12c]
mov eax, dword [ecx - 0xc]
inc eax
push eax
call fcn.005cfaa6
add esp, 4
mov dword [edi + 0xdc], eax
test eax, eax
je 0x4caf6a
mov ecx, dword [ebp + 0x12c]
mov edx, eax
lea ecx, [ecx]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x4caf60
mov dl, byte [edi + 0x91c]
mov byte [ebp + 0x110], dl
mov eax, dword [edi + 0x4c8]
mov dword [ebp + 0xdc], eax
mov ecx, dword [edi + 0x4cc]
mov dword [ebp + 0xe0], ecx
or eax, ecx
jne 0x4cafb9
cmp dword [edi + 0x91c], 3
jne 0x4cafb9
mov eax, dword [edi + 0x4d0]
mov ecx, dword [edi + 0x4d4]
mov edx, eax
or edx, ecx
je 0x4cafb9
mov dword [ebp + 0xdc], eax
mov dword [ebp + 0xe0], ecx
xor esi, esi
cmp dword [edi + 0x40], esi
je 0x4cafe8
mov edx, dword [edi + 0x40]
mov eax, edx
lea ebx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4cafc8
sub eax, ebx
je 0x4cafe8
push edx
push 0x64edec
lea eax, [ebp + 0x17c]
push eax
call fcn.00402f60
add esp, 0xc
lea ecx, [ebp - 0x30]
call fcn.004024e0
mov byte [ebp - 4], 5
lea ecx, [edi + 0x20]
push esi
lea edx, [ebp - 0x30]
push edx
call fcn.0057a620
mov eax, dword [ebp + 0x124]
push eax
lea ecx, [ebp - 0x30]
call fcn.004208f0
test eax, eax
je 0x4cb02c
mov ecx, dword [ebp - 0x30]
push ecx
push 0x64edec
lea edx, [ebp + 0x178]
push edx
call fcn.00402f60
add esp, 0xc
mov ebx, dword [ebp - 0x18]
cmp byte [ebx + 0x504], 0
jne 0x4cb070
mov dword [ebp - 0x70], esi
mov dword [ebp - 0x68], 0x190
mov dword [ebp - 0x64], esi
mov dword [ebp - 0x60], 0xfffffffb
mov eax, dword [ebx + 0x4b0]
mov dword [ebp - 0x6c], eax
lea ecx, [ebp - 0x70]
push ecx
push 0x13c1
push 0x111
mov edx, dword [ebx + 0x418]
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
xor eax, eax
mov dword [ebp + 0x1d8], eax
mov dword [ebp + 0x1e0], eax
mov word [ebp + 0x1dc], ax
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x34]
call fcn.004024e0
mov byte [ebp - 4], 7
mov esi, dword [edi + 0xa94]
mov dword [ebp - 0x20], esi
mov ecx, esi
mov dword [ebp + 0xfc], ecx
mov byte [ebp - 0x2a], 1
mov byte [ebp - 0x22], 0
mov byte [ebp - 0x19], 1
cmp byte [ebp + 0x11e], 0
je 0x4cb0db
inc dword [ebx + 0x4e4]
mov dl, byte [ebp + 0x111]
cmp byte [ebp + 0x11d], 0
jne 0x4cb0e1
cmp dl, 1
je 0x4cb0e1
mov byte [ebp - 0x2a], 0
jmp 0x4cb0eb
mov dl, byte [ebp + 0x111]
cmp dl, 2
je 0x4cb0f2
cmp dl, 1
je 0x4cb0f2
mov esi, dword [ebp - 0x20]
mov byte [ebp - 0x19], 0
test esi, esi
je 0x4cb408
cmp esi, 0x7563
je 0x4cb408
cmp esi, 0x7540
jne 0x4cb14d
mov ecx, dword [edi + 0x4d0]
mov dword [ebp + 0xe4], ecx
mov edx, dword [edi + 0x4d4]
mov dword [ebp + 0xe8], edx
mov esi, dword [ebp + 0x1f0]
cmp byte [ebp + 0x112], 5
jne 0x4cb141
mov byte [ebp + 0x112], 3
jmp 0x4cb1ee
mov byte [ebp + 0x111], 1
jmp 0x4cb1ee
xor eax, eax
cmp dl, 2
setne al
dec eax
and eax, 0xfffffffd
add eax, 6
mov byte [ebp + 0x111], al
cmp ecx, 0x7565
jne 0x4cb173
mov byte [ebp + 0x113], 2
jmp 0x4cb185
cmp ecx, 0x7566
setne cl
add cl, 3
mov byte [ebp + 0x113], cl
cmp byte [ebp - 0x19], 0
je 0x4cb1b0
inc dword [ebx + 0x4ec]
push 0
push 0x1430
push 0x111
mov edx, dword [ebx + 0x414]
push edx
call dword [sym.imp.USER32.dll_PostMessageA]
mov al, byte [ebp + 0x111]
cmp byte [ebp + 0x112], 5
jne 0x4cb1c0
mov byte [ebp + 0x112], 6
mov esi, dword [ebp + 0x1f0]
test esi, esi
jne 0x4cb1ee
cmp al, 6
jne 0x4cb1ee
cmp dword [edi + 0xaa4], esi
jne 0x4cb1ee
push 0x30
mov eax, dword [0x710a1c]
push eax
mov ecx, dword [edi + 0xc8]
push ecx
push esi
call fcn.00469b60
add esp, 0x10
mov byte [ebp + 0x11d], 0
mov byte [ebp + 0x11e], 0
cmp dword [edi + 0x4c0], 0
jne 0x4cb234
cmp byte [ebp + 0x112], 3
je 0x4cb215
mov ecx, edi
call fcn.0059e710
cmp dword [edi + 0x920], 0
je 0x4cb22b
push edi
mov ecx, 0x70fcc0
call fcn.00436830
jmp 0x4cb234
push 1
mov ecx, edi
call fcn.00420800
xor eax, eax
mov dword [ebp + 0x1b4], eax
mov dword [ebp + 0x1bc], eax
xor edx, edx
mov word [ebp + 0x1b8], dx
mov byte [ebp - 4], 8
push 1
lea ecx, [ebp + 0x1b4]
push ecx
push eax
mov ecx, edi
call fcn.005a45d0
mov eax, dword [ebp + 0x1b4]
test eax, eax
jne 0x4cb270
lea eax, [ebp + 0x1b8]
push 0x5c
push eax
call fcn.005f80fb
add esp, 8
test eax, eax
je 0x4cb284
add eax, 2
jmp 0x4cb294
mov eax, dword [ebp + 0x1b4]
test eax, eax
jne 0x4cb294
lea eax, [ebp + 0x1b8]
test esi, esi
sete dl
movzx ecx, dl
push ecx
push eax
mov ecx, ebx
call fcn.004c2c90
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x20], 0x7540
je 0x4cb39e
test eax, eax
je 0x4cb2e7
lea edx, [ebp + 0xd4]
push edx
mov ecx, ebx
call fcn.004be8c0
mov dword [ebp - 0x48], eax
test eax, eax
je 0x4cb2e7
lea eax, [ebp + 0xd4]
push eax
mov ecx, ebx
call fcn.004bdd40
mov dword [ebp - 0x48], eax
test eax, eax
jne 0x4cb39e
mov byte [ebp + 0x114], 0
lea edi, [ebx + 8]
lea ecx, [ebp + 0xd4]
push ecx
push esi
mov ecx, edi
call fcn.005ca880
mov eax, dword [ebp + 0xe0]
test eax, eax
jl 0x4cb327
jg 0x4cb315
cmp dword [ebp + 0xdc], 0
jbe 0x4cb327
push 1
push esi
push eax
mov edx, dword [ebp + 0xdc]
push edx
mov ecx, edi
call fcn.005c9a40
cmp byte [ebp + 0x113], 0
je 0x4cb341
push 1
push esi
mov eax, dword [ebp + 0x113]
push eax
mov ecx, edi
call fcn.005c9b80
push esi
push 0x13fe
push 0x111
mov ecx, dword [ebx + 0x414]
push ecx
call dword [sym.imp.USER32.dll_PostMessageA]
mov byte [ebp - 4], 7
lea ecx, [ebp + 0x1b4]
call fcn.004011f0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x34]
call fcn.00402550
mov byte [ebp - 4], 5
lea ecx, [ebp + 0x1d8]
call fcn.004011f0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x30]
call fcn.00402550
mov byte [ebp - 4], 0
lea ecx, [ebp + 0xd4]
jmp 0x4cade1
lea edi, [ebx + 8]
lea edx, [ebp + 0xd4]
push edx
push esi
mov ecx, edi
call fcn.005ca880
mov eax, dword [ebp + 0xe0]
test eax, eax
jl 0x4cb3d7
jg 0x4cb3c5
cmp dword [ebp + 0xdc], 0
jbe 0x4cb3d7
push 1
push esi
push eax
mov eax, dword [ebp + 0xdc]
push eax
mov ecx, edi
call fcn.005c9a40
cmp byte [ebp + 0x113], 0
je 0x4cb3f1
push 1
push esi
mov ecx, dword [ebp + 0x113]
push ecx
mov ecx, edi
call fcn.005c9b80
push esi
push 0x1426
push 0x111
mov edx, dword [ebx + 0x414]
push edx
jmp 0x4cb353
cmp dword [ebp + 0x1f0], 0
jne 0x4cb418
mov byte [ebx + 0x479], 1
mov byte [ebp + 0x111], 4
cmp byte [ebp + 0x11e], 0
je 0x4cb42c
mov byte [ebp - 0x22], 1
cmp byte [ebp - 0x19], 0
je 0x4cb451
inc dword [ebx + 0x4ec]
push 0
push 0x1430
push 0x111
mov eax, dword [ebx + 0x414]
push eax
call dword [sym.imp.USER32.dll_PostMessageA]
cmp byte [ebp + 0x11e], 0
je 0x4cb467
cmp byte [ebp + 0x11d], 0
mov byte [ebp - 0x21], 1
je 0x4cb46b
mov byte [ebp - 0x21], 0
mov byte [ebp + 0x11d], 0
mov byte [ebp + 0x11e], 0
mov byte [ebp - 0x29], 0
mov al, byte [ebp + 0x113]
cmp al, 2
je 0x4cb48f
cmp al, 3
je 0x4cb48f
cmp al, 4
jne 0x4cb49a
mov byte [ebp - 0x29], 1
mov byte [ebp + 0x113], 0
lea esi, [ebx + 8]
mov dword [ebp - 0x20], esi
lea ecx, [ebp + 0xd4]
push ecx
mov edx, dword [ebp + 0x1f0]
push edx
mov ecx, esi
call fcn.005ca880
mov eax, dword [ebp + 0xe0]
test eax, eax
jl 0x4cb4e2
jg 0x4cb4ca
cmp dword [ebp + 0xdc], 0
jbe 0x4cb4e2
push 1
mov ecx, dword [ebp + 0x1f0]
push ecx
push eax
mov edx, dword [ebp + 0xdc]
push edx
mov ecx, esi
call fcn.005c9a40
cmp byte [ebp - 0x29], 0
je 0x4cb4ff
push 1
mov eax, dword [ebp + 0x1f0]
push eax
mov ecx, dword [ebp + 0x113]
push ecx
mov ecx, esi
call fcn.005c9b80
xor ecx, ecx
mov dword [ebp + 0x1c0], ecx
mov dword [ebp + 0x1c8], ecx
xor edx, edx
mov word [ebp + 0x1c4], dx
mov byte [ebp - 4], 9
mov dword [ebp - 0x28], 1
cmp byte [ebp - 0x11], dl
je 0x4cb53d
mov eax, dword [ebp + 0x130]
push eax
lea ecx, [ebp + 0x1c0]
call fcn.004017d0
jmp 0x4cb66c
cmp dword [edi + 0xcc], ecx
je 0x4cb577
cmp dword [edi + 0x5c], ecx
je 0x4cb577
cmp dword [edi + 0x54], ecx
je 0x4cb563
mov eax, dword [edi + 0x54]
push eax
lea ecx, [ebp + 0x1c0]
call fcn.004017d0
jmp 0x4cb66c
lea eax, [edi + 0x58]
push eax
lea ecx, [ebp + 0x1c0]
call fcn.004017d0
jmp 0x4cb66c
cmp byte [ebp + 0x122], 0
je 0x4cb5b0
mov ecx, dword [ebp + 0x130]
push ecx
lea ecx, [ebp + 0x1c0]
call fcn.004017d0
mov eax, dword [ebp + 0x1c0]
test eax, eax
jne 0x4cb5a2
lea eax, [ebp + 0x1c4]
push eax
lea ecx, [edi + 0x20]
call fcn.005b1480
jmp 0x4cb66c
mov eax, dword [ebp + 0x130]
cmp eax, ecx
jne 0x4cb5c0
lea eax, [ebp + 0x134]
push 0
push eax
lea edx, [ebp + 0x1c0]
push edx
mov eax, dword [ebp + 0x1f0]
push eax
push edi
lea ecx, [ebp + 0xd4]
push ecx
mov ecx, ebx
call fcn.004ca890
mov esi, eax
test esi, esi
jle 0x4cb66c
lea ecx, [ebp]
call fcn.0045a180
mov byte [ebp - 4], 0xa
push 0
lea edx, [ebp]
push edx
push esi
mov ecx, dword [ebp - 0x20]
call fcn.005cba30
test al, al
je 0x4cb660
mov eax, dword [ebp + 8]
cmp eax, dword [ebp + 0xdc]
jne 0x4cb660
mov ecx, dword [ebp + 0xc]
cmp ecx, dword [ebp + 0xe0]
jne 0x4cb660
mov eax, dword [ebp + 0x13c]
test eax, eax
mov ecx, eax
jne 0x4cb631
lea ecx, [ebp + 0x140]
mov eax, dword [ebp + 0x68]
test eax, eax
jne 0x4cb63b
lea eax, [ebp + 0x6c]
push ecx
push eax
call fcn.005fdd2a
add esp, 8
test eax, eax
jne 0x4cb660
mov dword [ebp + 0xf4], esi
cmp byte [ebx + 0x28f], al
je 0x4cb660
mov dword [ebp - 0x28], eax
mov byte [ebp + 0x114], al
mov byte [ebp - 4], 9
lea ecx, [ebp]
call fcn.0045a2d0
mov eax, dword [ebp + 0x1c0]
test eax, eax
jne 0x4cb67c
lea eax, [ebp + 0x1c4]
push 0x5c
push eax
call fcn.005f80fb
add esp, 8
mov ebx, eax
test ebx, ebx
je 0x4cb692
add ebx, 2
jmp 0x4cb6a4
mov eax, dword [ebp + 0x1c0]
test eax, eax
mov ebx, eax
jne 0x4cb6a4
lea ebx, [ebp + 0x1c4]
push 0x2e
push ebx
call fcn.005f80fb
add esp, 8
mov esi, eax
test esi, esi
je 0x4cb725
push 0x65b258
push esi
call fcn.005fdd2a
add esp, 8
test eax, eax
je 0x4cb6d9
push 0x66092c
push esi
call fcn.005fdd2a
add esp, 8
test eax, eax
jne 0x4cb725
mov byte [ebp + 0x11f], 1
cmp byte [ebp - 0x19], 0
jne 0x4cb6ec
cmp byte [ebp - 0x22], 0
jne 0x4cb70f
cmp dword [ebp + 0x1f0], 0
je 0x4cb708
lea edx, [ebp + 0xd4]
push edx
mov ecx, dword [ebp - 0x18]
call fcn.004be7a0
test eax, eax
je 0x4cb70f
mov byte [ebp + 0x111], 0
lea eax, [ebp + 0xd4]
push eax
mov ecx, dword [ebp + 0x1f0]
push ecx
mov ecx, dword [ebp - 0x20]
call fcn.005ca880
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
test eax, eax
jge 0x4cb77c
cmp dword [edi + 0x4c0], 0
jne 0x4cb76d
mov ecx, edi
call fcn.0059e710
cmp dword [edi + 0x920], 0
je 0x4cb764
push edi
mov ecx, 0x70fcc0
call fcn.00436830
mov byte [ebp - 4], 7
lea ecx, [ebp + 0x1c0]
jmp 0x4cb363
push 1
mov ecx, edi
call fcn.00420800
mov byte [ebp - 4], 7
lea ecx, [ebp + 0x1c0]
jmp 0x4cb363
lea ecx, [ebp - 0x38]
call fcn.004024e0
mov byte [ebp - 4], 0xb
test esi, esi
mov eax, esi
jne 0x4cb790
mov eax, ebx
push 0
push eax
lea edx, [ebp - 0x3c]
push edx
call fcn.00402a50
add esp, 0xc
mov byte [ebp - 4], 0xc
lea eax, [ebp - 0x38]
push eax
mov ecx, dword [ebp - 0x3c]
push ecx
mov esi, dword [ebp - 0x18]
lea ecx, [esi + 0x10]
call fcn.004e5a20
mov dword [ebp + 0x108], eax
cmp byte [esi + 0x47a], 0
jne 0x4cbe72
mov edx, dword [ebp - 0x38]
push edx
push 0x64edec
lea eax, [ebp + 0x168]
push eax
call fcn.00402f60
add esp, 0xc
cmp dword [edi + 0xdc], 0
je 0x4cb80b
cmp byte [ebp - 0x11], 0
jne 0x4cb80b
mov ecx, dword [edi + 0xdc]
push ecx
push 0x64edec
lea edx, [ebp + 0x12c]
push edx
call fcn.00402f60
add esp, 0xc
lea eax, [ebp + 0xd4]
push eax
mov esi, dword [ebp + 0x1f0]
push esi
mov ecx, dword [ebp - 0x20]
call fcn.005ca880
push 1
push esi
mov ecx, dword [ebp + 0x108]
push ecx
mov ecx, dword [ebp - 0x20]
call fcn.005ccb40
cmp dword [ebp - 0x28], 0
je 0x4cb852
test esi, esi
sete dl
movzx eax, dl
push eax
push ebx
mov ecx, dword [ebp - 0x18]
call fcn.004c2c90
mov dword [ebp - 0x28], eax
test eax, eax
jne 0x4cb85e
mov byte [ebp + 0x114], 0
mov eax, dword [ebp - 0x28]
jmp 0x4cb892
lea ecx, [ebp + 0xd4]
push ecx
mov ebx, dword [ebp - 0x18]
mov ecx, ebx
call fcn.004be8c0
mov dword [ebp - 0x28], eax
test eax, eax
je 0x4cb88b
lea edx, [ebp + 0xd4]
push edx
mov ecx, ebx
call fcn.004bdd40
mov dword [ebp - 0x28], eax
test eax, eax
jne 0x4cb8ae
mov byte [ebp + 0x114], 0
test eax, eax
jne 0x4cb8ae
lea eax, [ebp + 0xd4]
push eax
push esi
mov ecx, dword [ebp - 0x20]
call fcn.005ca880
mov ebx, dword [sym.imp.USER32.dll_PostMessageA]
jmp 0x4cb909
cmp byte [ebp - 0x2a], 0
je 0x4cb8df
mov ecx, dword [ebp - 0x18]
inc dword [ecx + 0x4d8]
mov eax, dword [ecx + 0x4d8]
push eax
push 0x1401
push 0x111
mov ecx, dword [ecx + 0x414]
push ecx
mov ebx, dword [sym.imp.USER32.dll_PostMessageA]
call ebx
jmp 0x4cb8e5
mov ebx, dword [sym.imp.USER32.dll_PostMessageA]
cmp dword [ebp - 0x28], 0
je 0x4cb909
cmp byte [ebp - 0x22], 0
je 0x4cb909
push 0
push 0x1415
push 0x111
mov edx, dword [ebp - 0x18]
mov eax, dword [edx + 0x410]
push eax
call ebx
cmp byte [ebp + 0x111], 0
je 0x4cbe99
push esi
cmp dword [ebp - 0x28], 0
je 0x4cb9c9
push 0x13fd
push 0x111
mov ecx, dword [ebp - 0x18]
mov edx, dword [ecx + 0x414]
push edx
call ebx
mov eax, dword [ebp - 0x18]
cmp byte [eax + 0x290], 0
jne 0x4cb94d
cmp byte [ebp - 0x23], 0
je 0x4cb9df
cmp dword [edi + 0x91c], 3
jne 0x4cb9df
cmp dword [edi + 0xcc], 0
jne 0x4cb972
cmp byte [ebp - 0x11], 0
jne 0x4cb972
push 0
mov ecx, edi
call fcn.005a01e0
mov byte [ebp + 0x112], 4
cmp dword [edi + 0x4c0], 0
jne 0x4cb989
mov ecx, edi
call fcn.0059e710
mov byte [ebp + 0x113], 1
lea ecx, [ebp + 0xd4]
push ecx
push esi
mov ecx, dword [ebp - 0x20]
call fcn.005ca880
push 1
push esi
mov edx, dword [ebp + 0x113]
push edx
mov ecx, dword [ebp - 0x20]
call fcn.005c9b80
push esi
push 0x1426
push 0x111
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax + 0x414]
push ecx
jmp 0x4cb9dd
push 0x13fe
push 0x111
mov edx, dword [ebp - 0x18]
mov eax, dword [edx + 0x414]
push eax
call ebx
call dword [sym.imp.ole32.dll_CoUninitialize]
mov ecx, dword [edi + 0x91c]
mov al, byte [ebp + 0x112]
xor ebx, ebx
cmp ecx, 3
je 0x4cba51
cmp al, 5
je 0x4cba0c
mov edx, dword [ebp - 0x18]
cmp byte [edx + 0x290], bl
je 0x4cba32
cmp dword [ebp - 0x28], ebx
je 0x4cba32
cmp byte [ebp - 0x22], 0
je 0x4cba32
mov edx, dword [edi + 0x4c8]
or edx, dword [edi + 0x4cc]
jne 0x4cba32
mov edx, dword [edi + 0x4d0]
or edx, dword [edi + 0x4d4]
jne 0x4cba32
cmp ecx, ebx
je 0x4cba51
cmp al, 5
je 0x4cba45
cmp dword [edi + 0x4c0], ebx
jne 0x4cba45
mov ecx, edi
call fcn.0059e710
mov byte [ebp + 0x112], 1
jmp 0x4cbdee
cmp al, 5
jne 0x4cbadb
cmp dword [edi + 0xcc], ebx
jne 0x4cba6f
cmp byte [ebp - 0x11], 0
jne 0x4cba6f
push ebx
mov ecx, edi
call fcn.005a01e0
mov byte [ebp + 0x112], 4
cmp dword [edi + 0x4c0], ebx
jne 0x4cba85
mov ecx, edi
call fcn.0059e710
mov byte [ebp + 0x113], 1
lea eax, [ebp + 0xd4]
push eax
push esi
mov ebx, dword [ebp - 0x20]
mov ecx, ebx
call fcn.005ca880
push 1
push esi
mov ecx, dword [ebp + 0x113]
push ecx
mov ecx, ebx
call fcn.005c9b80
cmp dword [ebp - 0x28], 0
je 0x4cbdde
mov edx, esi
push edx
push 0x1426
push 0x111
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax + 0x414]
push ecx
call dword [sym.imp.USER32.dll_PostMessageA]
jmp 0x4cbdde
cmp al, 4
je 0x4cbae6
mov byte [ebp + 0x112], 2
cmp byte [ebp + 0x1f4], 0
je 0x4cbd97
cmp byte [ebp - 0x11], 0
jne 0x4cbd97
mov dword [ebp + 0x1cc], ebx
mov dword [ebp + 0x1d4], ebx
xor edx, edx
mov word [ebp + 0x1d0], dx
mov byte [ebp - 4], 0xd
mov dword [ebp - 0x58], ebx
cmp dword [edi + 0xdc], ebx
je 0x4cbb6a
push 9
push str.text_html
mov eax, dword [edi + 0xdc]
push eax
call fcn.005fd020
add esp, 0xc
test eax, eax
jne 0x4cbb6a
mov dword [ebp - 0x58], 1
cmp dword [edi + 0x50], ebx
je 0x4cbbef
push ebx
push 0x66092c
mov ecx, dword [edi + 0x50]
push ecx
push 0x64ed70
lea ecx, [ebp + 0x1cc]
call fcn.00402300
jmp 0x4cbbef
mov dword [ebp + 0xc8], ebx
mov dword [ebp + 0xd0], ebx
xor edx, edx
mov word [ebp + 0xcc], dx
mov byte [ebp - 4], 0xe
push 1
lea eax, [ebp + 0xc8]
push eax
mov ecx, dword [0x70f97c]
add ecx, 0x7f8
push ecx
mov ecx, edi
call fcn.005a45d0
mov eax, dword [ebp + 0xc8]
cmp eax, ebx
jne 0x4cbbb0
lea eax, [ebp + 0xcc]
push 0x2e
push eax
call fcn.005f80fb
add esp, 8
lea ecx, [ebp + 0x1cc]
cmp eax, ebx
je 0x4cbbd7
push ebx
push eax
mov edx, dword [edi + 0x50]
push edx
push 0x64ed70
call fcn.00402300
jmp 0x4cbbe0
mov eax, dword [edi + 0x50]
push eax
call fcn.004017d0
mov byte [ebp - 4], 0xd
lea ecx, [ebp + 0xc8]
call fcn.004011f0
mov eax, dword [ebp + 0x1cc]
cmp eax, ebx
jne 0x4cbbff
lea eax, [ebp + 0x1d0]
push eax
mov eax, dword [edi + 0x50]
push eax
call fcn.005fef7d
add esp, 8
mov eax, dword [ebp + 0x1cc]
cmp eax, ebx
jne 0x4cbc1c
lea eax, [ebp + 0x1d0]
push 0x5c
push eax
call fcn.005f80fb
add esp, 8
cmp eax, ebx
je 0x4cbcdf
add eax, 2
cmp word [eax], bx
je 0x4cbcdf
mov dword [ebp + 0x1a8], ebx
mov dword [ebp + 0x1b0], ebx
xor ecx, ecx
mov word [ebp + 0x1ac], cx
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x18]
cmp dword [ecx + 0x41c], ebx
je 0x4cbc67
mov ecx, dword [ecx + 0x41c]
jmp 0x4cbc6d
add ecx, 0x420
push ebx
push eax
push ecx
push 0x64ed70
lea ecx, [ebp + 0x1a8]
call fcn.00402300
mov eax, dword [ebp + 0x1a8]
cmp eax, ebx
jne 0x4cbc90
lea eax, [ebp + 0x1ac]
mov ecx, dword [ebp + 0x1cc]
cmp ecx, ebx
jne 0x4cbca0
lea ecx, [ebp + 0x1d0]
push eax
push ecx
call fcn.005fef7d
add esp, 8
test eax, eax
jne 0x4cbcd0
mov eax, dword [ebp + 0x1a8]
cmp eax, ebx
jne 0x4cbcbe
lea eax, [ebp + 0x1ac]
push ebx
push eax
push 0x64edec
lea ecx, [ebp + 0x1cc]
call fcn.00402190
mov byte [ebp - 4], 0xd
lea ecx, [ebp + 0x1a8]
call fcn.004011f0
mov eax, dword [ebp + 0x1cc]
cmp eax, ebx
jne 0x4cbcef
lea eax, [ebp + 0x1d0]
mov esi, dword [ebp - 0x18]
add esi, 0x2f8
push 0
mov edx, dword [edi + 0xdc]
push edx
push eax
mov eax, dword [edi + 0x3c]
push eax
mov ecx, dword [ebp + 0x124]
push ecx
mov ecx, esi
call fcn.00421090
mov eax, dword [ebp + 0x178]
cmp dword [eax - 0xc], 5
jle 0x4cbd46
mov ecx, dword [ebp + 0x1cc]
test ecx, ecx
jne 0x4cbd30
lea ecx, [ebp + 0x1d0]
push 0
mov edx, dword [edi + 0xdc]
push edx
push ecx
mov ecx, dword [edi + 0x3c]
push ecx
push eax
mov ecx, esi
call fcn.00421090
mov byte [ebp + 0x11c], 1
mov eax, dword [ebp + 0x1cc]
test eax, eax
jne 0x4cbd5d
lea eax, [ebp + 0x1d0]
push 0
push eax
push 0x64edec
lea ecx, [ebp + 0x16c]
call fcn.00402190
lea edx, [ebp + 0xd4]
push edx
mov eax, dword [ebp + 0x1f0]
push eax
mov ecx, dword [ebp - 0x20]
call fcn.005ca880
mov byte [ebp - 4], 0xc
lea ecx, [ebp + 0x1cc]
call fcn.004011f0
jmp 0x4cbdde
mov esi, dword [ebp - 0x4c]
test esi, esi
je 0x4cbdde
cmp byte [ebp - 0x11], 0
jne 0x4cbdde
mov ecx, dword [edi + 0x50]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov byte [ebp + 0x11c], 1
push 0
push esi
push 0x64edec
lea ecx, [ebp + 0x16c]
call fcn.00402190
lea edx, [ebp + 0xd4]
push edx
mov eax, dword [ebp + 0x1f0]
push eax
mov ecx, dword [ebp - 0x20]
call fcn.005ca880
cmp dword [edi + 0x4c0], 0
jne 0x4cbdee
mov ecx, edi
call fcn.0059e710
mov esi, dword [ebp - 0x18]
cmp dword [esi + 0x4f8], 0
je 0x4cbe0f
push esi
push 0
push 0x140c
mov ecx, dword [esi + 0x54c]
push ecx
call dword [sym.imp.USER32.dll_PostMessageA]
cmp dword [esi + 0x4f4], 0
je 0x4cbe2d
push esi
push 0
push 0x13fc
mov edx, dword [esi + 0x54c]
push edx
call dword [sym.imp.USER32.dll_PostMessageA]
cmp dword [edi + 0x4c0], 0
jne 0x4cbe5c
mov ecx, edi
call fcn.0059e710
cmp dword [edi + 0x920], 0
je 0x4cbe53
push edi
mov ecx, 0x70fcc0
call fcn.00436830
jmp 0x4cbe5c
push 1
mov ecx, edi
call fcn.00420800
lea eax, [ebp + 0xd4]
push eax
mov ecx, dword [ebp + 0x1f0]
push ecx
mov ecx, dword [ebp - 0x20]
call fcn.005ca880
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x3c]
call fcn.00402550
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x38]
call fcn.00402550
mov byte [ebp - 4], 7
lea ecx, [ebp + 0x1c0]
jmp 0x4cb363
mov byte [ebp + 0x112], 2
cmp dword [ebp - 0x28], 0
jne 0x4cbebd
push esi
push 0x13fe
push 0x111
mov edx, dword [ebp - 0x18]
mov eax, dword [edx + 0x414]
push eax
call ebx
push 0
push 0x66092c
mov ecx, dword [edi + 0x50]
push ecx
push 0x64ed70
lea ecx, [ebp + 0x1d8]
call fcn.00402300
cmp byte [ebp - 0x11], 0
je 0x4cbf89
cmp dword [0x704d14], 0
je 0x4cbf13
mov ecx, dword [ebp + 0x1d8]
test ecx, ecx
jne 0x4cbefb
lea ecx, [ebp + 0x1dc]
mov eax, dword [ebp + 0x130]
test eax, eax
jne 0x4cbf0b
lea eax, [ebp + 0x134]
push 0
push ecx
jmp 0x4cbf9f
mov eax, dword [ebp + 0x130]
test eax, eax
jne 0x4cbf23
lea eax, [ebp + 0x134]
push 0
push eax
lea edx, [ebp - 0x44]
push edx
call fcn.00402a50
add esp, 0xc
mov bl, 0x10
mov byte [ebp - 4], bl
mov eax, dword [ebp + 0x1d8]
test eax, eax
jne 0x4cbf47
lea eax, [ebp + 0x1dc]
push 0
push eax
lea eax, [ebp - 0x50]
push eax
call fcn.00402a50
add esp, 0xc
mov byte [ebp - 4], 0x11
push 0
mov ecx, dword [ebp - 0x50]
push ecx
mov edx, dword [ebp - 0x44]
push edx
call dword [sym.imp.KERNEL32.dll_CopyFileA]
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x50]
call fcn.00402550
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x44]
call fcn.00402550
mov ebx, dword [sym.imp.USER32.dll_PostMessageA]
jmp 0x4cbfa6
mov eax, dword [ebp + 0x1d8]
test eax, eax
jne 0x4cbf99
lea eax, [ebp + 0x1dc]
push 0
push eax
mov eax, dword [edi + 0x50]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileW]
mov ecx, dword [ebp - 0x18]
cmp byte [ecx + 0x290], 0
jne 0x4cbfb8
cmp byte [ebp - 0x23], 0
je 0x4cbfbe
cmp dword [ebp - 0x28], 0
jne 0x4cc00f
cmp byte [ebp - 0x21], 0
jne 0x4cc00f
cmp byte [ebp - 0x11], 0
je 0x4cbfe7
mov eax, dword [ebp + 0x130]
test eax, eax
jne 0x4cbfda
lea eax, [ebp + 0x134]
push 0
mov edx, dword [edi + 0x50]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileW]
push 0
mov eax, dword [edi + 0x50]
push eax
push 0x64edec
lea ecx, [ebp + 0x148]
call fcn.00402190
lea ecx, [ebp + 0xd4]
push ecx
push esi
mov ecx, dword [ebp - 0x20]
call fcn.005ca880
jmp 0x4cc065
cmp byte [ebp - 0x11], 0
jne 0x4cc01e
push 0
mov ecx, edi
call fcn.005a01e0
mov byte [ebp + 0x112], 4
mov byte [ebp + 0x113], 1
lea edx, [ebp + 0xd4]
push edx
push esi
mov ecx, dword [ebp - 0x20]
call fcn.005ca880
push 1
push esi
mov eax, dword [ebp + 0x113]
push eax
mov ecx, dword [ebp - 0x20]
call fcn.005c9b80
push esi
push 0x1426
push 0x111
mov ecx, dword [ebp - 0x18]
mov edx, dword [ecx + 0x414]
push edx
call ebx
cmp byte [ebp + 0x112], 4
je 0x4cc07b
cmp byte [ebp - 0x21], 0
jne 0x4cc07b
mov byte [edi + 0xac2], 1
cmp byte [ebp + 0x1f4], 0
je 0x4cc205
mov eax, dword [ebp + 0x1d8]
xor esi, esi
cmp eax, esi
jne 0x4cc09a
lea eax, [ebp + 0x1dc]
push 0x5c
push eax
call fcn.005f80fb
add esp, 8
cmp eax, esi
je 0x4cc16c
add eax, 2
cmp word [eax], si
je 0x4cc16c
mov dword [ebp + 0x19c], esi
mov dword [ebp + 0x1a4], esi
xor ecx, ecx
mov word [ebp + 0x1a0], cx
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp - 0x18]
cmp dword [ecx + 0x41c], esi
je 0x4cc0e5
mov ecx, dword [ecx + 0x41c]
jmp 0x4cc0eb
add ecx, 0x420
push esi
push eax
push ecx
push 0x64ed70
lea ecx, [ebp + 0x19c]
call fcn.00402300
mov eax, dword [ebp + 0x19c]
cmp eax, esi
jne 0x4cc10e
lea eax, [ebp + 0x1a0]
mov ecx, dword [ebp + 0x1d8]
cmp ecx, esi
jne 0x4cc11e
lea ecx, [ebp + 0x1dc]
push eax
push ecx
call fcn.005fef7d
add esp, 8
test eax, eax
jne 0x4cc15d
mov eax, dword [ebp + 0x19c]
cmp eax, esi
jne 0x4cc13c
lea eax, [ebp + 0x1a0]
push esi
push eax
push 0x64edec
lea ecx, [ebp + 0x1d8]
call fcn.00402190
cmp dword [edi + 0x4c0], esi
jne 0x4cc15d
mov ecx, edi
call fcn.0059e710
mov byte [ebp - 4], 0xc
lea ecx, [ebp + 0x19c]
call fcn.004011f0
mov eax, dword [ebp + 0x1d8]
cmp eax, esi
jne 0x4cc17c
lea eax, [ebp + 0x1dc]
mov esi, dword [ebp - 0x18]
add esi, 0x2f8
push 0
mov edx, dword [edi + 0xdc]
push edx
push eax
mov eax, dword [edi + 0x3c]
push eax
mov ecx, dword [ebp + 0x124]
push ecx
mov ecx, esi
call fcn.00421090
mov eax, dword [ebp + 0x178]
cmp dword [eax - 0xc], 5
jle 0x4cc1d3
mov ecx, dword [ebp + 0x1d8]
test ecx, ecx
jne 0x4cc1bd
lea ecx, [ebp + 0x1dc]
push 0
mov edx, dword [edi + 0xdc]
push edx
push ecx
mov ecx, dword [edi + 0x3c]
push ecx
push eax
mov ecx, esi
call fcn.00421090
mov byte [ebp + 0x11c], 1
mov eax, dword [ebp + 0x1d8]
test eax, eax
jne 0x4cc1ea
lea eax, [ebp + 0x1dc]
push 0
push eax
push 0x64edec
lea ecx, [ebp + 0x16c]
call fcn.00402190
mov esi, dword [ebp + 0x1f0]
jmp 0x4cc236
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x4cc236
cmp dword [edi + 0x4c0], 0
jne 0x4cc21c
mov ecx, edi
call fcn.0059e710
mov byte [ebp + 0x11c], 1
push 0
push ebx
push 0x64edec
lea ecx, [ebp + 0x16c]
call fcn.00402190
cmp dword [edi + 0x4c0], 0
jne 0x4cc265
mov ecx, edi
call fcn.0059e710
cmp dword [edi + 0x920], 0
je 0x4cc25c
push edi
mov ecx, 0x70fcc0
call fcn.00436830
jmp 0x4cc265
push 1
mov ecx, edi
call fcn.00420800
mov ecx, dword [ebp - 0x20]
cmp byte [ebp - 0x21], 0
je 0x4cc27b
lea edx, [ebp + 0xd4]
push edx
push esi
jmp 0x4cbe6d
mov byte [ebp + 0x120], 1
lea eax, [ebp + 0xd4]
push eax
push esi
call fcn.005ca880
push esi
push 0
push 0x140e
mov ecx, dword [ebp - 0x18]
mov edx, dword [ecx + 0x54c]
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x3c]
call fcn.00402550
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x38]
call fcn.00402550
mov byte [ebp - 4], 7
lea ecx, [ebp + 0x1c0]
call fcn.004011f0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x34]
call fcn.00402550
mov byte [ebp - 4], 5
lea ecx, [ebp + 0x1d8]
call fcn.004011f0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x30]
call fcn.00402550
mov byte [ebp - 4], 0
lea ecx, [ebp + 0xd4]
call fcn.0045a2d0
mov dword [ebp - 4], 0xffffffff
jmp 0x4cade6