Function at 0x4d33d0
Capabilities:
Copy file
Delete file

Disassembly:
push ebp
lea ebp, [esp - 0x1e8]
sub esp, 0x1e8
push 0xffffffffffffffff
push 0x648708
mov eax, dword fs:[0]
push eax
sub esp, 0x64
mov eax, dword [0x74d890]
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 0x4d34c6
xor edi, edi
mov dword [ebp - 0x40], edi
mov dword [ebp - 0x54], esi
cmp esi, dword [ebx + 0x51c]
jge 0x4d3476
mov ebx, dword [ebp - 0x18]
add ebx, 0x514
push esi
mov ecx, ebx
call fcn.004c7aa0
mov ecx, dword [ebp + 0x1f0]
cmp dword [eax], ecx
jne 0x4d34ed
push esi
mov ecx, ebx
call fcn.004c7aa0
mov edi, dword [eax + 4]
mov dword [ebp - 0x40], edi
push 1
push esi
mov ecx, ebx
call fcn.004c6bb0
mov ebx, dword [ebp - 0x18]
test edi, edi
jne 0x4d3502
lea ecx, [ebp]
call fcn.0045d970
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.005df130
test al, al
je 0x4d34ba
mov eax, dword [ebp + 0x18]
test eax, eax
je 0x4d34ba
push eax
mov ecx, ebx
call fcn.004c6a50
mov edi, eax
mov dword [ebp - 0x40], edi
test edi, edi
jne 0x4d34f6
mov byte [ebp - 4], 0
lea ecx, [ebp]
call fcn.0045dac0
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.006157d3
add ebp, 0x1e8
mov esp, ebp
pop ebp
ret 0xc
inc esi
mov ebx, dword [ebp - 0x18]
jmp 0x4d3431
mov byte [ebp - 4], 0
lea ecx, [ebp]
call fcn.0045dac0
xor esi, esi
mov dword [edi + 8], esi
lea ecx, [ebp + 0xd4]
call fcn.0045d970
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.005df130
test al, al
je 0x4d3a6f
mov byte [ebp - 0x23], 0
mov byte [ebp - 0x11], 0
mov al, byte [ebx + 0x4ac]
test al, al
jne 0x4d355f
cmp byte [ebx + 0x4ad], al
je 0x4d364a
cmp byte [ebx + 0x4af], al
je 0x4d364a
mov ecx, dword [edi + 0xabc]
cmp ecx, 0x7573
je 0x4d3571
cmp ecx, esi
jne 0x4d3594
test al, al
je 0x4d3594
cmp byte [ebp + 0x116], 0
je 0x4d3594
cmp byte [edi + 0x363], 0
je 0x4d3594
cmp byte [ebp + 0x11e], 0
je 0x4d3594
mov byte [ebp - 0x23], 1
cmp ecx, 0x7573
jne 0x4d364a
mov dword [edi + 0xabc], esi
mov dword [edi + 0x944], 3
mov eax, dword [ebp + 0xdc]
mov dword [edi + 0x4f0], eax
mov ecx, dword [ebp + 0xe0]
mov dword [edi + 0x4f4], ecx
mov edx, dword [ebp + 0xdc]
mov dword [edi + 0x4f8], edx
mov eax, dword [ebp + 0xe0]
mov dword [edi + 0x4fc], eax
mov byte [ebp - 0x11], 1
cmp dword [edi + 0xdc], esi
je 0x4d3618
mov byte [ebp - 4], 3
mov eax, dword [edi + 0xdc]
push eax
call fcn.005e9ab2
add esp, 4
mov dword [ebp - 4], 2
jmp 0x4d3618
mov ecx, dword [ebp + 0x12c]
mov eax, dword [ecx - 0xc]
inc eax
push eax
call fcn.005e9aa7
add esp, 4
mov dword [edi + 0xdc], eax
test eax, eax
je 0x4d364a
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 0x4d3640
mov dl, byte [edi + 0x944]
mov byte [ebp + 0x110], dl
mov eax, dword [edi + 0x4f0]
mov dword [ebp + 0xdc], eax
mov ecx, dword [edi + 0x4f4]
mov dword [ebp + 0xe0], ecx
or eax, ecx
jne 0x4d3699
cmp dword [edi + 0x944], 3
jne 0x4d3699
mov eax, dword [edi + 0x4f8]
mov ecx, dword [edi + 0x4fc]
mov edx, eax
or edx, ecx
je 0x4d3699
mov dword [ebp + 0xdc], eax
mov dword [ebp + 0xe0], ecx
xor esi, esi
cmp dword [edi + 0x40], esi
je 0x4d36c8
mov edx, dword [edi + 0x40]
mov eax, edx
lea ebx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4d36a8
sub eax, ebx
je 0x4d36c8
push edx
push 0x66dea8
lea eax, [ebp + 0x17c]
push eax
call fcn.00402f70
add esp, 0xc
lea ecx, [ebp - 0x30]
call fcn.00402500
mov byte [ebp - 4], 5
lea ecx, [edi + 0x20]
push esi
lea edx, [ebp - 0x30]
push edx
call fcn.005886e0
mov eax, dword [ebp + 0x124]
push eax
lea ecx, [ebp - 0x30]
call fcn.00420dd0
test eax, eax
je 0x4d370c
mov ecx, dword [ebp - 0x30]
push ecx
push 0x66dea8
lea edx, [ebp + 0x178]
push edx
call fcn.00402f70
add esp, 0xc
mov ebx, dword [ebp - 0x18]
cmp byte [ebx + 0x504], 0
jne 0x4d3750
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.00402500
mov byte [ebp - 4], 7
mov esi, dword [edi + 0xabc]
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 0x4d37bb
inc dword [ebx + 0x4e4]
mov dl, byte [ebp + 0x111]
cmp byte [ebp + 0x11d], 0
jne 0x4d37c1
cmp dl, 1
je 0x4d37c1
mov byte [ebp - 0x2a], 0
jmp 0x4d37cb
mov dl, byte [ebp + 0x111]
cmp dl, 2
je 0x4d37d2
cmp dl, 1
je 0x4d37d2
mov esi, dword [ebp - 0x20]
mov byte [ebp - 0x19], 0
test esi, esi
je 0x4d3ae8
cmp esi, 0x7563
je 0x4d3ae8
cmp esi, 0x7540
jne 0x4d382d
mov ecx, dword [edi + 0x4f8]
mov dword [ebp + 0xe4], ecx
mov edx, dword [edi + 0x4fc]
mov dword [ebp + 0xe8], edx
mov esi, dword [ebp + 0x1f0]
cmp byte [ebp + 0x112], 5
jne 0x4d3821
mov byte [ebp + 0x112], 3
jmp 0x4d38ce
mov byte [ebp + 0x111], 1
jmp 0x4d38ce
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 0x4d3853
mov byte [ebp + 0x113], 2
jmp 0x4d3865
cmp ecx, 0x7566
setne cl
add cl, 3
mov byte [ebp + 0x113], cl
cmp byte [ebp - 0x19], 0
je 0x4d3890
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 0x4d38a0
mov byte [ebp + 0x112], 6
mov esi, dword [ebp + 0x1f0]
test esi, esi
jne 0x4d38ce
cmp al, 6
jne 0x4d38ce
cmp dword [edi + 0xacc], esi
jne 0x4d38ce
push 0x30
mov eax, dword [0x7540c4]
push eax
mov ecx, dword [edi + 0xc8]
push ecx
push esi
call fcn.0046f2a0
add esp, 0x10
mov byte [ebp + 0x11d], 0
mov byte [ebp + 0x11e], 0
cmp dword [edi + 0x4e8], 0
jne 0x4d3914
cmp byte [ebp + 0x112], 3
je 0x4d38f5
mov ecx, edi
call fcn.005afc90
cmp dword [edi + 0x948], 0
je 0x4d390b
push edi
mov ecx, 0x753320
call fcn.00437d60
jmp 0x4d3914
push 1
mov ecx, edi
call fcn.00420ce0
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.005b6960
mov eax, dword [ebp + 0x1b4]
test eax, eax
jne 0x4d3950
lea eax, [ebp + 0x1b8]
push 0x5c
push eax
call fcn.006152e7
add esp, 8
test eax, eax
je 0x4d3964
add eax, 2
jmp 0x4d3974
mov eax, dword [ebp + 0x1b4]
test eax, eax
jne 0x4d3974
lea eax, [ebp + 0x1b8]
test esi, esi
sete dl
movzx ecx, dl
push ecx
push eax
mov ecx, ebx
call fcn.004cb430
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x20], 0x7540
je 0x4d3a7e
test eax, eax
je 0x4d39c7
lea edx, [ebp + 0xd4]
push edx
mov ecx, ebx
call fcn.004c7120
mov dword [ebp - 0x48], eax
test eax, eax
je 0x4d39c7
lea eax, [ebp + 0xd4]
push eax
mov ecx, ebx
call fcn.004c6770
mov dword [ebp - 0x48], eax
test eax, eax
jne 0x4d3a7e
mov byte [ebp + 0x114], 0
lea edi, [ebx + 8]
lea ecx, [ebp + 0xd4]
push ecx
push esi
mov ecx, edi
call fcn.005ddf80
mov eax, dword [ebp + 0xe0]
test eax, eax
jl 0x4d3a07
jg 0x4d39f5
cmp dword [ebp + 0xdc], 0
jbe 0x4d3a07
push 1
push esi
push eax
mov edx, dword [ebp + 0xdc]
push edx
mov ecx, edi
call fcn.005dd140
cmp byte [ebp + 0x113], 0
je 0x4d3a21
push 1
push esi
mov eax, dword [ebp + 0x113]
push eax
mov ecx, edi
call fcn.005dd280
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.00401210
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x34]
call fcn.00402570
mov byte [ebp - 4], 5
lea ecx, [ebp + 0x1d8]
call fcn.00401210
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x30]
call fcn.00402570
mov byte [ebp - 4], 0
lea ecx, [ebp + 0xd4]
jmp 0x4d34c1
lea edi, [ebx + 8]
lea edx, [ebp + 0xd4]
push edx
push esi
mov ecx, edi
call fcn.005ddf80
mov eax, dword [ebp + 0xe0]
test eax, eax
jl 0x4d3ab7
jg 0x4d3aa5
cmp dword [ebp + 0xdc], 0
jbe 0x4d3ab7
push 1
push esi
push eax
mov eax, dword [ebp + 0xdc]
push eax
mov ecx, edi
call fcn.005dd140
cmp byte [ebp + 0x113], 0
je 0x4d3ad1
push 1
push esi
mov ecx, dword [ebp + 0x113]
push ecx
mov ecx, edi
call fcn.005dd280
push esi
push 0x1426
push 0x111
mov edx, dword [ebx + 0x414]
push edx
jmp 0x4d3a33
cmp dword [ebp + 0x1f0], 0
jne 0x4d3af8
mov byte [ebx + 0x479], 1
mov byte [ebp + 0x111], 4
cmp byte [ebp + 0x11e], 0
je 0x4d3b0c
mov byte [ebp - 0x22], 1
cmp byte [ebp - 0x19], 0
je 0x4d3b31
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 0x4d3b47
cmp byte [ebp + 0x11d], 0
mov byte [ebp - 0x21], 1
je 0x4d3b4b
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 0x4d3b6f
cmp al, 3
je 0x4d3b6f
cmp al, 4
jne 0x4d3b7a
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.005ddf80
mov eax, dword [ebp + 0xe0]
test eax, eax
jl 0x4d3bc2
jg 0x4d3baa
cmp dword [ebp + 0xdc], 0
jbe 0x4d3bc2
push 1
mov ecx, dword [ebp + 0x1f0]
push ecx
push eax
mov edx, dword [ebp + 0xdc]
push edx
mov ecx, esi
call fcn.005dd140
cmp byte [ebp - 0x29], 0
je 0x4d3bdf
push 1
mov eax, dword [ebp + 0x1f0]
push eax
mov ecx, dword [ebp + 0x113]
push ecx
mov ecx, esi
call fcn.005dd280
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 0x4d3c1d
mov eax, dword [ebp + 0x130]
push eax
lea ecx, [ebp + 0x1c0]
call fcn.004017f0
jmp 0x4d3d4c
cmp dword [edi + 0xcc], ecx
je 0x4d3c57
cmp dword [edi + 0x5c], ecx
je 0x4d3c57
cmp dword [edi + 0x54], ecx
je 0x4d3c43
mov eax, dword [edi + 0x54]
push eax
lea ecx, [ebp + 0x1c0]
call fcn.004017f0
jmp 0x4d3d4c
lea eax, [edi + 0x58]
push eax
lea ecx, [ebp + 0x1c0]
call fcn.004017f0
jmp 0x4d3d4c
cmp byte [ebp + 0x122], 0
je 0x4d3c90
mov ecx, dword [ebp + 0x130]
push ecx
lea ecx, [ebp + 0x1c0]
call fcn.004017f0
mov eax, dword [ebp + 0x1c0]
test eax, eax
jne 0x4d3c82
lea eax, [ebp + 0x1c4]
push eax
lea ecx, [edi + 0x20]
call fcn.005c35d0
jmp 0x4d3d4c
mov eax, dword [ebp + 0x130]
cmp eax, ecx
jne 0x4d3ca0
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.004d2f70
mov esi, eax
test esi, esi
jle 0x4d3d4c
lea ecx, [ebp]
call fcn.0045d970
mov byte [ebp - 4], 0xa
push 0
lea edx, [ebp]
push edx
push esi
mov ecx, dword [ebp - 0x20]
call fcn.005df130
test al, al
je 0x4d3d40
mov eax, dword [ebp + 8]
cmp eax, dword [ebp + 0xdc]
jne 0x4d3d40
mov ecx, dword [ebp + 0xc]
cmp ecx, dword [ebp + 0xe0]
jne 0x4d3d40
mov eax, dword [ebp + 0x13c]
test eax, eax
mov ecx, eax
jne 0x4d3d11
lea ecx, [ebp + 0x140]
mov eax, dword [ebp + 0x68]
test eax, eax
jne 0x4d3d1b
lea eax, [ebp + 0x6c]
push ecx
push eax
call fcn.0061acda
add esp, 8
test eax, eax
jne 0x4d3d40
mov dword [ebp + 0xf4], esi
cmp byte [ebx + 0x28f], al
je 0x4d3d40
mov dword [ebp - 0x28], eax
mov byte [ebp + 0x114], al
mov byte [ebp - 4], 9
lea ecx, [ebp]
call fcn.0045dac0
mov eax, dword [ebp + 0x1c0]
test eax, eax
jne 0x4d3d5c
lea eax, [ebp + 0x1c4]
push 0x5c
push eax
call fcn.006152e7
add esp, 8
mov ebx, eax
test ebx, ebx
je 0x4d3d72
add ebx, 2
jmp 0x4d3d84
mov eax, dword [ebp + 0x1c0]
test eax, eax
mov ebx, eax
jne 0x4d3d84
lea ebx, [ebp + 0x1c4]
push 0x2e
push ebx
call fcn.006152e7
add esp, 8
mov esi, eax
test esi, esi
je 0x4d3e05
push 0x67a32c
push esi
call fcn.0061acda
add esp, 8
test eax, eax
je 0x4d3db9
push 0x67fdf4
push esi
call fcn.0061acda
add esp, 8
test eax, eax
jne 0x4d3e05
mov byte [ebp + 0x11f], 1
cmp byte [ebp - 0x19], 0
jne 0x4d3dcc
cmp byte [ebp - 0x22], 0
jne 0x4d3def
cmp dword [ebp + 0x1f0], 0
je 0x4d3de8
lea edx, [ebp + 0xd4]
push edx
mov ecx, dword [ebp - 0x18]
call fcn.004c7000
test eax, eax
je 0x4d3def
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.005ddf80
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
test eax, eax
jge 0x4d3e5c
cmp dword [edi + 0x4e8], 0
jne 0x4d3e4d
mov ecx, edi
call fcn.005afc90
cmp dword [edi + 0x948], 0
je 0x4d3e44
push edi
mov ecx, 0x753320
call fcn.00437d60
mov byte [ebp - 4], 7
lea ecx, [ebp + 0x1c0]
jmp 0x4d3a43
push 1
mov ecx, edi
call fcn.00420ce0
mov byte [ebp - 4], 7
lea ecx, [ebp + 0x1c0]
jmp 0x4d3a43
lea ecx, [ebp - 0x38]
call fcn.00402500
mov byte [ebp - 4], 0xb
test esi, esi
mov eax, esi
jne 0x4d3e70
mov eax, ebx
push 0
push eax
lea edx, [ebp - 0x3c]
push edx
call fcn.00402a70
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.004ee480
mov dword [ebp + 0x108], eax
cmp byte [esi + 0x47a], 0
jne 0x4d4552
mov edx, dword [ebp - 0x38]
push edx
push 0x66dea8
lea eax, [ebp + 0x168]
push eax
call fcn.00402f70
add esp, 0xc
cmp dword [edi + 0xdc], 0
je 0x4d3eeb
cmp byte [ebp - 0x11], 0
jne 0x4d3eeb
mov ecx, dword [edi + 0xdc]
push ecx
push 0x66dea8
lea edx, [ebp + 0x12c]
push edx
call fcn.00402f70
add esp, 0xc
lea eax, [ebp + 0xd4]
push eax
mov esi, dword [ebp + 0x1f0]
push esi
mov ecx, dword [ebp - 0x20]
call fcn.005ddf80
push 1
push esi
mov ecx, dword [ebp + 0x108]
push ecx
mov ecx, dword [ebp - 0x20]
call fcn.005e0240
cmp dword [ebp - 0x28], 0
je 0x4d3f32
test esi, esi
sete dl
movzx eax, dl
push eax
push ebx
mov ecx, dword [ebp - 0x18]
call fcn.004cb430
mov dword [ebp - 0x28], eax
test eax, eax
jne 0x4d3f3e
mov byte [ebp + 0x114], 0
mov eax, dword [ebp - 0x28]
jmp 0x4d3f72
lea ecx, [ebp + 0xd4]
push ecx
mov ebx, dword [ebp - 0x18]
mov ecx, ebx
call fcn.004c7120
mov dword [ebp - 0x28], eax
test eax, eax
je 0x4d3f6b
lea edx, [ebp + 0xd4]
push edx
mov ecx, ebx
call fcn.004c6770
mov dword [ebp - 0x28], eax
test eax, eax
jne 0x4d3f8e
mov byte [ebp + 0x114], 0
test eax, eax
jne 0x4d3f8e
lea eax, [ebp + 0xd4]
push eax
push esi
mov ecx, dword [ebp - 0x20]
call fcn.005ddf80
mov ebx, dword [sym.imp.USER32.dll_PostMessageA]
jmp 0x4d3fe9
cmp byte [ebp - 0x2a], 0
je 0x4d3fbf
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 0x4d3fc5
mov ebx, dword [sym.imp.USER32.dll_PostMessageA]
cmp dword [ebp - 0x28], 0
je 0x4d3fe9
cmp byte [ebp - 0x22], 0
je 0x4d3fe9
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 0x4d4579
push esi
cmp dword [ebp - 0x28], 0
je 0x4d40a9
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 0x4d402d
cmp byte [ebp - 0x23], 0
je 0x4d40bf
cmp dword [edi + 0x944], 3
jne 0x4d40bf
cmp dword [edi + 0xcc], 0
jne 0x4d4052
cmp byte [ebp - 0x11], 0
jne 0x4d4052
push 0
mov ecx, edi
call fcn.005b1a10
mov byte [ebp + 0x112], 4
cmp dword [edi + 0x4e8], 0
jne 0x4d4069
mov ecx, edi
call fcn.005afc90
mov byte [ebp + 0x113], 1
lea ecx, [ebp + 0xd4]
push ecx
push esi
mov ecx, dword [ebp - 0x20]
call fcn.005ddf80
push 1
push esi
mov edx, dword [ebp + 0x113]
push edx
mov ecx, dword [ebp - 0x20]
call fcn.005dd280
push esi
push 0x1426
push 0x111
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax + 0x414]
push ecx
jmp 0x4d40bd
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 + 0x944]
mov al, byte [ebp + 0x112]
xor ebx, ebx
cmp ecx, 3
je 0x4d4131
cmp al, 5
je 0x4d40ec
mov edx, dword [ebp - 0x18]
cmp byte [edx + 0x290], bl
je 0x4d4112
cmp dword [ebp - 0x28], ebx
je 0x4d4112
cmp byte [ebp - 0x22], 0
je 0x4d4112
mov edx, dword [edi + 0x4f0]
or edx, dword [edi + 0x4f4]
jne 0x4d4112
mov edx, dword [edi + 0x4f8]
or edx, dword [edi + 0x4fc]
jne 0x4d4112
cmp ecx, ebx
je 0x4d4131
cmp al, 5
je 0x4d4125
cmp dword [edi + 0x4e8], ebx
jne 0x4d4125
mov ecx, edi
call fcn.005afc90
mov byte [ebp + 0x112], 1
jmp 0x4d44ce
cmp al, 5
jne 0x4d41bb
cmp dword [edi + 0xcc], ebx
jne 0x4d414f
cmp byte [ebp - 0x11], 0
jne 0x4d414f
push ebx
mov ecx, edi
call fcn.005b1a10
mov byte [ebp + 0x112], 4
cmp dword [edi + 0x4e8], ebx
jne 0x4d4165
mov ecx, edi
call fcn.005afc90
mov byte [ebp + 0x113], 1
lea eax, [ebp + 0xd4]
push eax
push esi
mov ebx, dword [ebp - 0x20]
mov ecx, ebx
call fcn.005ddf80
push 1
push esi
mov ecx, dword [ebp + 0x113]
push ecx
mov ecx, ebx
call fcn.005dd280
cmp dword [ebp - 0x28], 0
je 0x4d44be
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 0x4d44be
cmp al, 4
je 0x4d41c6
mov byte [ebp + 0x112], 2
cmp byte [ebp + 0x1f4], 0
je 0x4d4477
cmp byte [ebp - 0x11], 0
jne 0x4d4477
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 0x4d424a
push 9
push str.text_html
mov eax, dword [edi + 0xdc]
push eax
call fcn.0061a1ff
add esp, 0xc
test eax, eax
jne 0x4d424a
mov dword [ebp - 0x58], 1
cmp dword [edi + 0x50], ebx
je 0x4d42cf
push ebx
push 0x67fdf4
mov ecx, dword [edi + 0x50]
push ecx
push 0x66dde0
lea ecx, [ebp + 0x1cc]
call fcn.00402320
jmp 0x4d42cf
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 [0x752f4c]
add ecx, 0x81c
push ecx
mov ecx, edi
call fcn.005b6960
mov eax, dword [ebp + 0xc8]
cmp eax, ebx
jne 0x4d4290
lea eax, [ebp + 0xcc]
push 0x2e
push eax
call fcn.006152e7
add esp, 8
lea ecx, [ebp + 0x1cc]
cmp eax, ebx
je 0x4d42b7
push ebx
push eax
mov edx, dword [edi + 0x50]
push edx
push 0x66dde0
call fcn.00402320
jmp 0x4d42c0
mov eax, dword [edi + 0x50]
push eax
call fcn.004017f0
mov byte [ebp - 4], 0xd
lea ecx, [ebp + 0xc8]
call fcn.00401210
mov eax, dword [ebp + 0x1cc]
cmp eax, ebx
jne 0x4d42df
lea eax, [ebp + 0x1d0]
push eax
mov eax, dword [edi + 0x50]
push eax
call fcn.0061c15d
add esp, 8
mov eax, dword [ebp + 0x1cc]
cmp eax, ebx
jne 0x4d42fc
lea eax, [ebp + 0x1d0]
push 0x5c
push eax
call fcn.006152e7
add esp, 8
cmp eax, ebx
je 0x4d43bf
add eax, 2
cmp word [eax], bx
je 0x4d43bf
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 0x4d4347
mov ecx, dword [ecx + 0x41c]
jmp 0x4d434d
add ecx, 0x420
push ebx
push eax
push ecx
push 0x66dde0
lea ecx, [ebp + 0x1a8]
call fcn.00402320
mov eax, dword [ebp + 0x1a8]
cmp eax, ebx
jne 0x4d4370
lea eax, [ebp + 0x1ac]
mov ecx, dword [ebp + 0x1cc]
cmp ecx, ebx
jne 0x4d4380
lea ecx, [ebp + 0x1d0]
push eax
push ecx
call fcn.0061c15d
add esp, 8
test eax, eax
jne 0x4d43b0
mov eax, dword [ebp + 0x1a8]
cmp eax, ebx
jne 0x4d439e
lea eax, [ebp + 0x1ac]
push ebx
push eax
push 0x66dea8
lea ecx, [ebp + 0x1cc]
call fcn.004021b0
mov byte [ebp - 4], 0xd
lea ecx, [ebp + 0x1a8]
call fcn.00401210
mov eax, dword [ebp + 0x1cc]
cmp eax, ebx
jne 0x4d43cf
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.004215d0
mov eax, dword [ebp + 0x178]
cmp dword [eax - 0xc], 5
jle 0x4d4426
mov ecx, dword [ebp + 0x1cc]
test ecx, ecx
jne 0x4d4410
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.004215d0
mov byte [ebp + 0x11c], 1
mov eax, dword [ebp + 0x1cc]
test eax, eax
jne 0x4d443d
lea eax, [ebp + 0x1d0]
push 0
push eax
push 0x66dea8
lea ecx, [ebp + 0x16c]
call fcn.004021b0
lea edx, [ebp + 0xd4]
push edx
mov eax, dword [ebp + 0x1f0]
push eax
mov ecx, dword [ebp - 0x20]
call fcn.005ddf80
mov byte [ebp - 4], 0xc
lea ecx, [ebp + 0x1cc]
call fcn.00401210
jmp 0x4d44be
mov esi, dword [ebp - 0x4c]
test esi, esi
je 0x4d44be
cmp byte [ebp - 0x11], 0
jne 0x4d44be
mov ecx, dword [edi + 0x50]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov byte [ebp + 0x11c], 1
push 0
push esi
push 0x66dea8
lea ecx, [ebp + 0x16c]
call fcn.004021b0
lea edx, [ebp + 0xd4]
push edx
mov eax, dword [ebp + 0x1f0]
push eax
mov ecx, dword [ebp - 0x20]
call fcn.005ddf80
cmp dword [edi + 0x4e8], 0
jne 0x4d44ce
mov ecx, edi
call fcn.005afc90
mov esi, dword [ebp - 0x18]
cmp dword [esi + 0x4f8], 0
je 0x4d44ef
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 0x4d450d
push esi
push 0
push 0x13fc
mov edx, dword [esi + 0x54c]
push edx
call dword [sym.imp.USER32.dll_PostMessageA]
cmp dword [edi + 0x4e8], 0
jne 0x4d453c
mov ecx, edi
call fcn.005afc90
cmp dword [edi + 0x948], 0
je 0x4d4533
push edi
mov ecx, 0x753320
call fcn.00437d60
jmp 0x4d453c
push 1
mov ecx, edi
call fcn.00420ce0
lea eax, [ebp + 0xd4]
push eax
mov ecx, dword [ebp + 0x1f0]
push ecx
mov ecx, dword [ebp - 0x20]
call fcn.005ddf80
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x3c]
call fcn.00402570
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x38]
call fcn.00402570
mov byte [ebp - 4], 7
lea ecx, [ebp + 0x1c0]
jmp 0x4d3a43
mov byte [ebp + 0x112], 2
cmp dword [ebp - 0x28], 0
jne 0x4d459d
push esi
push 0x13fe
push 0x111
mov edx, dword [ebp - 0x18]
mov eax, dword [edx + 0x414]
push eax
call ebx
push 0
push 0x67fdf4
mov ecx, dword [edi + 0x50]
push ecx
push 0x66dde0
lea ecx, [ebp + 0x1d8]
call fcn.00402320
cmp byte [ebp - 0x11], 0
je 0x4d4669
cmp dword [0x747d18], 0
je 0x4d45f3
mov ecx, dword [ebp + 0x1d8]
test ecx, ecx
jne 0x4d45db
lea ecx, [ebp + 0x1dc]
mov eax, dword [ebp + 0x130]
test eax, eax
jne 0x4d45eb
lea eax, [ebp + 0x134]
push 0
push ecx
jmp 0x4d467f
mov eax, dword [ebp + 0x130]
test eax, eax
jne 0x4d4603
lea eax, [ebp + 0x134]
push 0
push eax
lea edx, [ebp - 0x44]
push edx
call fcn.00402a70
add esp, 0xc
mov bl, 0x10
mov byte [ebp - 4], bl
mov eax, dword [ebp + 0x1d8]
test eax, eax
jne 0x4d4627
lea eax, [ebp + 0x1dc]
push 0
push eax
lea eax, [ebp - 0x50]
push eax
call fcn.00402a70
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.00402570
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x44]
call fcn.00402570
mov ebx, dword [sym.imp.USER32.dll_PostMessageA]
jmp 0x4d4686
mov eax, dword [ebp + 0x1d8]
test eax, eax
jne 0x4d4679
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 0x4d4698
cmp byte [ebp - 0x23], 0
je 0x4d469e
cmp dword [ebp - 0x28], 0
jne 0x4d46ef
cmp byte [ebp - 0x21], 0
jne 0x4d46ef
cmp byte [ebp - 0x11], 0
je 0x4d46c7
mov eax, dword [ebp + 0x130]
test eax, eax
jne 0x4d46ba
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 0x66dea8
lea ecx, [ebp + 0x148]
call fcn.004021b0
lea ecx, [ebp + 0xd4]
push ecx
push esi
mov ecx, dword [ebp - 0x20]
call fcn.005ddf80
jmp 0x4d4745
cmp byte [ebp - 0x11], 0
jne 0x4d46fe
push 0
mov ecx, edi
call fcn.005b1a10
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.005ddf80
push 1
push esi
mov eax, dword [ebp + 0x113]
push eax
mov ecx, dword [ebp - 0x20]
call fcn.005dd280
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 0x4d475b
cmp byte [ebp - 0x21], 0
jne 0x4d475b
mov byte [edi + 0xaeb], 1
cmp byte [ebp + 0x1f4], 0
je 0x4d48e5
mov eax, dword [ebp + 0x1d8]
xor esi, esi
cmp eax, esi
jne 0x4d477a
lea eax, [ebp + 0x1dc]
push 0x5c
push eax
call fcn.006152e7
add esp, 8
cmp eax, esi
je 0x4d484c
add eax, 2
cmp word [eax], si
je 0x4d484c
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 0x4d47c5
mov ecx, dword [ecx + 0x41c]
jmp 0x4d47cb
add ecx, 0x420
push esi
push eax
push ecx
push 0x66dde0
lea ecx, [ebp + 0x19c]
call fcn.00402320
mov eax, dword [ebp + 0x19c]
cmp eax, esi
jne 0x4d47ee
lea eax, [ebp + 0x1a0]
mov ecx, dword [ebp + 0x1d8]
cmp ecx, esi
jne 0x4d47fe
lea ecx, [ebp + 0x1dc]
push eax
push ecx
call fcn.0061c15d
add esp, 8
test eax, eax
jne 0x4d483d
mov eax, dword [ebp + 0x19c]
cmp eax, esi
jne 0x4d481c
lea eax, [ebp + 0x1a0]
push esi
push eax
push 0x66dea8
lea ecx, [ebp + 0x1d8]
call fcn.004021b0
cmp dword [edi + 0x4e8], esi
jne 0x4d483d
mov ecx, edi
call fcn.005afc90
mov byte [ebp - 4], 0xc
lea ecx, [ebp + 0x19c]
call fcn.00401210
mov eax, dword [ebp + 0x1d8]
cmp eax, esi
jne 0x4d485c
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.004215d0
mov eax, dword [ebp + 0x178]
cmp dword [eax - 0xc], 5
jle 0x4d48b3
mov ecx, dword [ebp + 0x1d8]
test ecx, ecx
jne 0x4d489d
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.004215d0
mov byte [ebp + 0x11c], 1
mov eax, dword [ebp + 0x1d8]
test eax, eax
jne 0x4d48ca
lea eax, [ebp + 0x1dc]
push 0
push eax
push 0x66dea8
lea ecx, [ebp + 0x16c]
call fcn.004021b0
mov esi, dword [ebp + 0x1f0]
jmp 0x4d4916
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x4d4916
cmp dword [edi + 0x4e8], 0
jne 0x4d48fc
mov ecx, edi
call fcn.005afc90
mov byte [ebp + 0x11c], 1
push 0
push ebx
push 0x66dea8
lea ecx, [ebp + 0x16c]
call fcn.004021b0
cmp dword [edi + 0x4e8], 0
jne 0x4d4945
mov ecx, edi
call fcn.005afc90
cmp dword [edi + 0x948], 0
je 0x4d493c
push edi
mov ecx, 0x753320
call fcn.00437d60
jmp 0x4d4945
push 1
mov ecx, edi
call fcn.00420ce0
mov ecx, dword [ebp - 0x20]
cmp byte [ebp - 0x21], 0
je 0x4d495b
lea edx, [ebp + 0xd4]
push edx
push esi
jmp 0x4d454d
mov byte [ebp + 0x120], 1
lea eax, [ebp + 0xd4]
push eax
push esi
call fcn.005ddf80
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.00402570
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x38]
call fcn.00402570
mov byte [ebp - 4], 7
lea ecx, [ebp + 0x1c0]
call fcn.00401210
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x34]
call fcn.00402570
mov byte [ebp - 4], 5
lea ecx, [ebp + 0x1d8]
call fcn.00401210
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x30]
call fcn.00402570
mov byte [ebp - 4], 0
lea ecx, [ebp + 0xd4]
call fcn.0045dac0
mov dword [ebp - 4], 0xffffffff
jmp 0x4d34c6