Function at 0x4d0038
Capabilities:
Copy file

Disassembly:
push ebp
mov ebp, esp
push ecx
mov ecx, 0x16
push 0
push 0
dec ecx
jne 0x4d0041
xchg dword [ebp - 4], ecx
push ebx
push esi
push edi
mov dword [ebp - 0xc], ecx
mov byte [ebp - 5], dl
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0xc]
call fcn.00404738
xor eax, eax
push ebp
push 0x4d0e75
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebp - 0xd], 1
mov dl, 1
mov eax, dword [0x417998]
call fcn.00403444
mov dword [ebp - 0x14], eax
cmp byte [ebp - 5], 0x41
jne 0x4d01c3
lea eax, [ebp - 0x18]
mov ecx, 0x4d0e90
mov edx, dword [0x4de1cc]
call fcn.00404594
mov edx, dword [ebp - 0x18]
mov eax, dword [ebp - 4]
call fcn.004cf200
lea eax, [ebp - 0x1c]
mov ecx, 0x4d0e90
mov edx, dword [0x4de1cc]
call fcn.00404594
mov eax, dword [ebp - 0x1c]
call fcn.00409294
xor eax, eax
push ebp
push 0x4d00fc
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x20]
mov ecx, 0x4d0e90
mov edx, dword [0x4de1cc]
call fcn.00404594
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 4]
call fcn.004cf500
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d010a
xor eax, eax
push ebp
push 0x4d014f
push dword fs:[eax]
mov dword fs:[eax], esp
push dword [0x4de1cc]
push 0x4d0e90
push 0x4d0ea0
push 0x4d0eb0
lea eax, [ebp - 0x24]
mov edx, 4
call fcn.00404608
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
call dword [ecx + 0x68]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d0159
mov edx, 0x20
mov eax, dword [0x4dded0]
call fcn.00409424
push 0
mov eax, dword [0x4dded0]
call fcn.00404748
push eax
push dword [0x4de1cc]
push 0x4d0e90
push 0x4d0ea0
push 0x4d0ec0
lea eax, [ebp - 0x28]
mov edx, 4
call fcn.00404608
mov eax, dword [ebp - 0x28]
call fcn.00404748
push eax
call sub.kernel32.dll_CopyFileA
lea eax, [ebp - 0x2c]
mov ecx, 0x4d0e90
mov edx, dword [0x4de1cc]
call fcn.00404594
mov edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 4]
call fcn.004cf200
cmp byte [ebp - 5], 0x52
jne 0x4d020c
xor eax, eax
push ebp
push 0x4d01fe
push dword fs:[eax]
mov dword fs:[eax], esp
lea ecx, [ebp - 0x30]
mov edx, 0x4d0ed0
mov eax, dword [0x4ddf9c]
call fcn.0043d0b0
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x14]
call fcn.0041be80
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d020c
xor eax, eax
push ebp
push 0x4d0245
push dword fs:[eax]
mov dword fs:[eax], esp
lea edx, [ebp - 0x38]
mov eax, dword [ebp - 0x14]
call fcn.0041b574
mov eax, dword [ebp - 0x38]
lea edx, [ebp - 0x34]
call fcn.0049c7d0
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x14]
call fcn.0041be80
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d024f
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x14]
test eax, eax
jle 0x4d0c55
lea ecx, [ebp - 0x3c]
xor edx, edx
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov edx, dword [ebp - 0x3c]
mov eax, 0x4ddf5c
call fcn.004042dc
cmp dword [0x4ddf5c], 0
je 0x4d02cc
mov eax, dword [0x4ddf5c]
call fcn.00404548
test eax, eax
jbe 0x4d02cc
mov ebx, 1
mov edx, dword [0x4ddf5c]
mov dl, byte [edx + ebx - 1]
add dl, 0xd0
sub dl, 0xa
jb 0x4d02c8
add dl, 0xf9
sub dl, 0x1a
jb 0x4d02c8
add dl, 0xfa
sub dl, 0x1a
jb 0x4d02c8
mov eax, 0x4ddf5c
mov edx, 0x4d0edc
call fcn.004042dc
jmp 0x4d02cc
inc ebx
dec eax
jne 0x4d0295
mov eax, dword [0x4ddf5c]
call fcn.00404548
cmp eax, 4
jl 0x4d02ea
mov eax, dword [0x4ddf5c]
call fcn.00404548
cmp eax, 0x14
jle 0x4d02f9
mov eax, 0x4ddf5c
mov edx, 0x4d0edc
call fcn.004042dc
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x14]
dec eax
jne 0x4d0325
xor ecx, ecx
mov dl, 0x52
mov eax, dword [ebp - 4]
call fcn.004cf5d8
mov ecx, dword [0x4ddecc]
mov dl, 0x41
mov eax, dword [ebp - 4]
call fcn.004cf5d8
jmp 0x4d0080
lea ecx, [ebp - 0x40]
mov edx, 1
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0x40]
mov edx, 0x4d0eec
call fcn.00404694
jne 0x4d034d
mov byte [0x4ddf61], 1
jmp 0x4d0354
mov byte [0x4ddf61], 0
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, 2
jne 0x4d0382
xor ecx, ecx
mov dl, 0x52
mov eax, dword [ebp - 4]
call fcn.004cf5d8
mov ecx, dword [0x4ddecc]
mov dl, 0x41
mov eax, dword [ebp - 4]
call fcn.004cf5d8
jmp 0x4d0080
lea ecx, [ebp - 0x44]
mov edx, 2
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov edx, dword [ebp - 0x44]
mov eax, dword [0x4ddf64]
call fcn.0041be80
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, 3
jne 0x4d03cd
xor ecx, ecx
mov dl, 0x52
mov eax, dword [ebp - 4]
call fcn.004cf5d8
mov ecx, dword [0x4ddecc]
mov dl, 0x41
mov eax, dword [ebp - 4]
call fcn.004cf5d8
jmp 0x4d0080
lea ecx, [ebp - 0x48]
mov edx, 3
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov edx, dword [ebp - 0x48]
mov eax, dword [0x4ddf68]
call fcn.0041be80
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, 4
jne 0x4d0418
xor ecx, ecx
mov dl, 0x52
mov eax, dword [ebp - 4]
call fcn.004cf5d8
mov ecx, dword [0x4ddecc]
mov dl, 0x41
mov eax, dword [ebp - 4]
call fcn.004cf5d8
jmp 0x4d0080
lea ecx, [ebp - 0x4c]
mov edx, 4
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov edx, dword [ebp - 0x4c]
mov eax, dword [0x4ddf6c]
call fcn.0041be80
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, 5
jne 0x4d0463
xor ecx, ecx
mov dl, 0x52
mov eax, dword [ebp - 4]
call fcn.004cf5d8
mov ecx, dword [0x4ddecc]
mov dl, 0x41
mov eax, dword [ebp - 4]
call fcn.004cf5d8
jmp 0x4d0080
lea ecx, [ebp - 0x50]
mov edx, 5
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0x50]
mov edx, 0x4d0eec
call fcn.00404694
jne 0x4d048b
mov byte [0x4ddf70], 1
jmp 0x4d0492
mov byte [0x4ddf70], 0
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, 6
jne 0x4d04c0
xor ecx, ecx
mov dl, 0x52
mov eax, dword [ebp - 4]
call fcn.004cf5d8
mov ecx, dword [0x4ddecc]
mov dl, 0x41
mov eax, dword [ebp - 4]
call fcn.004cf5d8
jmp 0x4d0080
xor eax, eax
push ebp
push 0x4d04f5
push dword fs:[eax]
mov dword fs:[eax], esp
lea ecx, [ebp - 0x54]
mov edx, 6
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0x54]
call fcn.00408d70
mov byte [0x4ddf71], al
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d0506
mov al, byte [0x4ddf71]
not al
sub al, 5
jae 0x4d0518
mov byte [0x4ddf71], 2
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, 7
jne 0x4d0546
xor ecx, ecx
mov dl, 0x52
mov eax, dword [ebp - 4]
call fcn.004cf5d8
mov ecx, dword [0x4ddecc]
mov dl, 0x41
mov eax, dword [ebp - 4]
call fcn.004cf5d8
jmp 0x4d0080
lea ecx, [ebp - 0x58]
mov edx, 7
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0x58]
mov edx, 0x4d0eec
call fcn.00404694
jne 0x4d056e
mov byte [0x4ddf72], 1
jmp 0x4d0575
mov byte [0x4ddf72], 0
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, 8
jne 0x4d05a3
xor ecx, ecx
mov dl, 0x52
mov eax, dword [ebp - 4]
call fcn.004cf5d8
mov ecx, dword [0x4ddecc]
mov dl, 0x41
mov eax, dword [ebp - 4]
call fcn.004cf5d8
jmp 0x4d0080
lea ecx, [ebp - 0x5c]
mov edx, 8
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov edx, dword [ebp - 0x5c]
mov eax, dword [0x4ddf74]
call fcn.0041be80
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, 9
jne 0x4d05ee
xor ecx, ecx
mov dl, 0x52
mov eax, dword [ebp - 4]
call fcn.004cf5d8
mov ecx, dword [0x4ddecc]
mov dl, 0x41
mov eax, dword [ebp - 4]
call fcn.004cf5d8
jmp 0x4d0080
lea ecx, [ebp - 0x60]
mov edx, 9
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov edx, dword [ebp - 0x60]
mov eax, dword [0x4ddf78]
call fcn.0041be80
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, 0xa
jne 0x4d0639
xor ecx, ecx
mov dl, 0x52
mov eax, dword [ebp - 4]
call fcn.004cf5d8
mov ecx, dword [0x4ddecc]
mov dl, 0x41
mov eax, dword [ebp - 4]
call fcn.004cf5d8
jmp 0x4d0080
lea ecx, [ebp - 0x64]
mov edx, 0xa
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0x64]
mov edx, 0x4d0eec
call fcn.00404694
jne 0x4d0661
mov byte [0x4ddf7c], 1
jmp 0x4d0668
mov byte [0x4ddf7c], 0
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, 0xb
jne 0x4d0696
xor ecx, ecx
mov dl, 0x52
mov eax, dword [ebp - 4]
call fcn.004cf5d8
mov ecx, dword [0x4ddecc]
mov dl, 0x41
mov eax, dword [ebp - 4]
call fcn.004cf5d8
jmp 0x4d0080
lea ecx, [ebp - 0x68]
mov edx, 0xb
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov edx, dword [ebp - 0x68]
mov eax, dword [0x4ddf80]
call fcn.0041be80
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, 0xc
jne 0x4d06e1
xor ecx, ecx
mov dl, 0x52
mov eax, dword [ebp - 4]
call fcn.004cf5d8
mov ecx, dword [0x4ddecc]
mov dl, 0x41
mov eax, dword [ebp - 4]
call fcn.004cf5d8
jmp 0x4d0080
lea ecx, [ebp - 0x6c]
mov edx, 0xc
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0x6c]
mov edx, 0x4d0eec
call fcn.00404694
jne 0x4d0709
mov byte [0x4ddf84], 1
jmp 0x4d0710
mov byte [0x4ddf84], 0
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, 0xd
jne 0x4d073e
xor ecx, ecx
mov dl, 0x52
mov eax, dword [ebp - 4]
call fcn.004cf5d8
mov ecx, dword [0x4ddecc]
mov dl, 0x41
mov eax, dword [ebp - 4]
call fcn.004cf5d8
jmp 0x4d0080
lea ecx, [ebp - 0x70]
mov edx, 0xd
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0x70]
mov edx, 0x4d0eec
call fcn.00404694
jne 0x4d0766
mov byte [0x4ddf85], 1
jmp 0x4d076d
mov byte [0x4ddf85], 0
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, 0xe
jne 0x4d079b
xor ecx, ecx
mov dl, 0x52
mov eax, dword [ebp - 4]
call fcn.004cf5d8
mov ecx, dword [0x4ddecc]
mov dl, 0x41
mov eax, dword [ebp - 4]
call fcn.004cf5d8
jmp 0x4d0080
xor eax, eax
push ebp
push 0x4d07d0
push dword fs:[eax]
mov dword fs:[eax], esp
lea ecx, [ebp - 0x74]
mov edx, 0xe
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0x74]
call fcn.00408d70
mov byte [0x4ddf86], al
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d07e1
mov al, byte [0x4ddf86]
not al
dec eax
sub al, 0x15
jae 0x4d07f4
mov byte [0x4ddf86], 7
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, 0xf
jne 0x4d0822
xor ecx, ecx
mov dl, 0x52
mov eax, dword [ebp - 4]
call fcn.004cf5d8
mov ecx, dword [0x4ddecc]
mov dl, 0x41
mov eax, dword [ebp - 4]
call fcn.004cf5d8
jmp 0x4d0080
lea ecx, [ebp - 0x78]
mov edx, 0xf
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0x78]
mov edx, 0x4d0eec
call fcn.00404694
jne 0x4d084a
mov byte [0x4ddf87], 1
jmp 0x4d0851
mov byte [0x4ddf87], 0
cmp byte [0x4ddf45], 0
jne 0x4d0969
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, 0x10
jne 0x4d088c
xor ecx, ecx
mov dl, 0x52
mov eax, dword [ebp - 4]
call fcn.004cf5d8
mov ecx, dword [0x4ddecc]
mov dl, 0x41
mov eax, dword [ebp - 4]
call fcn.004cf5d8
jmp 0x4d0080
lea ecx, [ebp - 0x7c]
mov edx, 0x10
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0x7c]
mov edx, 0x4d0eec
call fcn.00404694
jne 0x4d08b4
mov byte [0x4ddf88], 1
jmp 0x4d08bb
mov byte [0x4ddf88], 0
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, 0x11
jne 0x4d08e9
xor ecx, ecx
mov dl, 0x52
mov eax, dword [ebp - 4]
call fcn.004cf5d8
mov ecx, dword [0x4ddecc]
mov dl, 0x41
mov eax, dword [ebp - 4]
call fcn.004cf5d8
jmp 0x4d0080
lea ecx, [ebp - 0x80]
mov edx, 0x11
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov edx, dword [ebp - 0x80]
mov eax, 0x4ddf8c
call fcn.004042dc
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, 0x12
jne 0x4d0934
xor ecx, ecx
mov dl, 0x52
mov eax, dword [ebp - 4]
call fcn.004cf5d8
mov ecx, dword [0x4ddecc]
mov dl, 0x41
mov eax, dword [ebp - 4]
call fcn.004cf5d8
jmp 0x4d0080
lea ecx, [ebp - 0x84]
mov edx, 0x12
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0x84]
mov edx, 0x4d0eec
call fcn.00404694
jne 0x4d0962
mov byte [0x4ddf90], 1
jmp 0x4d0969
mov byte [0x4ddf90], 0
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, 0x13
jne 0x4d0997
xor ecx, ecx
mov dl, 0x52
mov eax, dword [ebp - 4]
call fcn.004cf5d8
mov ecx, dword [0x4ddecc]
mov dl, 0x41
mov eax, dword [ebp - 4]
call fcn.004cf5d8
jmp 0x4d0080
lea ecx, [ebp - 0x88]
mov edx, 0x13
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0x88]
mov edx, 0x4d0eec
call fcn.00404694
jne 0x4d09c5
mov byte [0x4ddf98], 1
jmp 0x4d09cc
mov byte [0x4ddf98], 0
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, 0x14
jne 0x4d09fa
xor ecx, ecx
mov dl, 0x52
mov eax, dword [ebp - 4]
call fcn.004cf5d8
mov ecx, dword [0x4ddecc]
mov dl, 0x41
mov eax, dword [ebp - 4]
call fcn.004cf5d8
jmp 0x4d0080
lea ecx, [ebp - 0x8c]
mov edx, 0x14
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0x8c]
mov edx, 0x4d0eec
call fcn.00404694
jne 0x4d0a28
mov byte [0x4ddf99], 1
jmp 0x4d0a2f
mov byte [0x4ddf99], 0
cmp byte [0x4ddf45], 0
jne 0x4d0b39
cmp byte [ebp - 5], 0x41
jne 0x4d0b39
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, 0x15
jne 0x4d0a74
xor ecx, ecx
mov dl, 0x52
mov eax, dword [ebp - 4]
call fcn.004cf5d8
mov ecx, dword [0x4ddecc]
mov dl, 0x41
mov eax, dword [ebp - 4]
call fcn.004cf5d8
jmp 0x4d0080
lea ecx, [ebp - 0x90]
mov edx, 0x15
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov edx, dword [ebp - 0x90]
mov eax, 0x4ddf48
call fcn.004042dc
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, 0x16
jne 0x4d0ac5
xor ecx, ecx
mov dl, 0x52
mov eax, dword [ebp - 4]
call fcn.004cf5d8
mov ecx, dword [0x4ddecc]
mov dl, 0x41
mov eax, dword [ebp - 4]
call fcn.004cf5d8
jmp 0x4d0080
lea ecx, [ebp - 0x94]
mov edx, 0x16
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov edx, dword [ebp - 0x94]
mov eax, 0x4ddf4c
call fcn.004042dc
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, 0x18
jg 0x4d0b16
xor ecx, ecx
mov dl, 0x52
mov eax, dword [ebp - 4]
call fcn.004cf5d8
mov ecx, dword [0x4ddecc]
mov dl, 0x41
mov eax, dword [ebp - 4]
call fcn.004cf5d8
jmp 0x4d0080
lea ecx, [ebp - 0x98]
mov edx, 0x18
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0x98]
call fcn.00408d70
mov dword [0x4ddf50], eax
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, 0x1e
jg 0x4d0b67
xor ecx, ecx
mov dl, 0x52
mov eax, dword [ebp - 4]
call fcn.004cf5d8
mov ecx, dword [0x4ddecc]
mov dl, 0x41
mov eax, dword [ebp - 4]
call fcn.004cf5d8
jmp 0x4d0080
lea ecx, [ebp - 0x9c]
mov edx, 0x1e
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0x9c]
mov edx, 0x4d0eec
call fcn.00404694
jne 0x4d0b95
mov byte [0x4ddf60], 1
jmp 0x4d0b9c
mov byte [0x4ddf60], 0
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, 0x1f
jg 0x4d0bca
xor ecx, ecx
mov dl, 0x52
mov eax, dword [ebp - 4]
call fcn.004cf5d8
mov ecx, dword [0x4ddecc]
mov dl, 0x41
mov eax, dword [ebp - 4]
call fcn.004cf5d8
jmp 0x4d0080
lea ecx, [ebp - 0xa0]
mov edx, 0x1f
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0xa0]
mov edx, 0x4d0eec
call fcn.00404694
jne 0x4d0bf8
mov byte [0x4ddfa8], 1
jmp 0x4d0bff
mov byte [0x4ddfa8], 0
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, 0x20
jne 0x4d0c2d
xor ecx, ecx
mov dl, 0x52
mov eax, dword [ebp - 4]
call fcn.004cf5d8
mov ecx, dword [0x4ddecc]
mov dl, 0x41
mov eax, dword [ebp - 4]
call fcn.004cf5d8
jmp 0x4d0080
lea ecx, [ebp - 0xa4]
mov edx, 0x20
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov edx, dword [ebp - 0xa4]
mov eax, dword [0x4ddfac]
call fcn.0041be80
jmp 0x4d0e47
cmp byte [0x4ddf45], 0
jne 0x4d0e47
mov eax, 0x4ddf5c
mov edx, 0x4d0edc
call fcn.004042dc
mov byte [0x4ddf60], 0
mov byte [0x4ddfa8], 0
mov eax, dword [0x4ddfac]
mov edx, dword [eax]
call dword [edx + 0x44]
mov byte [0x4ddf61], 1
mov eax, dword [0x4ddf64]
mov edx, dword [eax]
call dword [edx + 0x44]
mov eax, dword [0x4ddf68]
mov edx, dword [eax]
call dword [edx + 0x44]
mov edx, 0x4d0ef8
mov eax, dword [0x4ddf68]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov edx, 0x4d0f18
mov eax, dword [0x4ddf68]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov edx, 0x4d0f34
mov eax, dword [0x4ddf68]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov edx, 0x4d0f4c
mov eax, dword [0x4ddf68]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov edx, 0x4d0f6c
mov eax, dword [0x4ddf68]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, dword [0x4ddf6c]
mov edx, dword [eax]
call dword [edx + 0x44]
mov byte [0x4ddf70], 1
mov byte [0x4ddf71], 2
mov byte [0x4ddf72], 0
mov eax, dword [0x4ddf74]
mov edx, dword [eax]
call dword [edx + 0x44]
mov eax, dword [0x4ddf78]
mov edx, dword [eax]
call dword [edx + 0x44]
mov byte [0x4ddf7c], 0
mov eax, dword [0x4ddf80]
mov edx, dword [eax]
call dword [edx + 0x44]
mov byte [0x4ddf84], 0
mov byte [0x4ddf85], 0
mov byte [0x4ddf86], 7
mov byte [0x4ddf87], 1
mov edx, 0x20
mov eax, dword [0x4dded0]
call fcn.00409424
lea edx, [ebp - 0xa8]
mov eax, 1
call fcn.00402b20
mov eax, dword [ebp - 0xa8]
mov edx, 0x4d0f80
call fcn.00404694
jne 0x4d0dd7
lea edx, [ebp - 0xac]
mov eax, 2
call fcn.00402b20
mov eax, dword [ebp - 0xac]
mov edx, 0x4d0eec
call fcn.00404694
jne 0x4d0dd7
push 0
mov eax, dword [0x4dded0]
call fcn.00404748
push eax
lea ecx, [ebp - 0xb0]
mov edx, 0x4d0f94
mov eax, dword [0x4ddfa4]
call fcn.0043d0b0
mov eax, dword [ebp - 0xb0]
call fcn.00404748
push eax
call sub.kernel32.dll_CopyFileA
jmp 0x4d0e15
push 0
mov eax, dword [0x4dded0]
call fcn.00404748
push eax
push dword [0x4ddec8]
push 0x4d0ea0
push 0x4d0ec0
lea eax, [ebp - 0xb4]
mov edx, 3
call fcn.00404608
mov eax, dword [ebp - 0xb4]
call fcn.00404748
push eax
call sub.kernel32.dll_CopyFileA
mov byte [0x4ddf88], 0
mov eax, 0x4ddf8c
call fcn.00404288
mov byte [0x4ddf90], 0
mov byte [0x4ddf98], 0
mov byte [0x4ddf99], 0
xor ecx, ecx
mov dl, 0x52
mov eax, dword [ebp - 4]
call fcn.004cf5d8
mov eax, dword [ebp - 0x14]
call fcn.00403474
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4d0e7c
lea eax, [ebp - 0xb4]
mov edx, 0x28
call fcn.004042ac
lea eax, [ebp - 0xc]
call fcn.00404288
ret