Function at 0x75ab1431
Capabilities:
Move file

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x18
push ebx
push esi
mov esi, dword [ebp + 8]
xor ebx, ebx
push edi
mov edi, dword [ebp + 0xc]
mov dword [ebp - 8], ecx
mov dword [ebp - 4], ebx
mov eax, dword [esi]
add eax, 0x34
mov dword [ebp + 8], eax
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp - 0x10]
push eax
mov eax, dword [edi]
push edi
call dword [eax + 0x20]
push eax
mov eax, dword [ebp + 8]
push esi
call dword [eax]
push eax
lea ecx, [ebp - 4]
call fcn.759cbe5f
cmp dword [eax], ebx
je 0x75ab14c7
cmp dword [ebp + 0x20], 2
mov ecx, dword [ebp - 8]
je 0x75ab14a5
push 1
push dword [ebp - 4]
push 0x1000102
call fcn.75a9e84e
sub eax, 4
je 0x75ab144a
dec eax
je 0x75ab14b2
mov eax, dword [ebp - 4]
cmp eax, ebx
je 0x75ab14a1
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push 3
jmp 0x75ab14c1
push dword [ebp - 4]
push 0x4000000
call fcn.759d598c
mov eax, dword [ebp - 4]
cmp eax, ebx
je 0x75ab14bf
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push 0xfffffffffffffff5
pop eax
jmp 0x75ab18dc
cmp dword [ebp - 0x10], ebx
jne 0x75ab1525
cmp dword [ebp - 0xc], 2
je 0x75ab1506
cmp dword [ebp - 0xc], 3
je 0x75ab1506
cmp dword [0x75bc8ca8], ebx
je 0x75ab1506
push ebx
push ebx
mov eax, 0x759b7ff8
push eax
push eax
push eax
push eax
mov eax, dword [edi]
push edi
call dword [eax + 0x20]
push eax
push dword [ebp - 0xc]
push 0x75ab1988
push ebx
push ebx
push 9
call fcn.759c26bf
add esp, 0x30
cmp dword [ebp + 0x1c], ebx
je 0x75ab151d
mov ecx, dword [ebp - 8]
push ebx
push ebx
push esi
call fcn.75a9bac8
mov esi, eax
jmp 0x75ab18cd
xor esi, esi
inc esi
jmp 0x75ab18cd
mov eax, dword [esi]
add eax, 0x3c
lea ecx, [ebp + 0xc]
mov dword [ebp + 0xc], 0x75bc8fe0
mov dword [ebp + 8], eax
call fcn.759c6ee9
push eax
mov eax, dword [edi]
push edi
call dword [eax + 0x20]
push eax
mov eax, dword [ebp + 8]
push esi
call dword [eax]
push eax
lea ecx, [ebp - 4]
call fcn.759cbe5f
cmp dword [eax], ebx
jne 0x75ab15cc
cmp byte [ebp + 0x14], bl
jne 0x75ab15cc
cmp dword [0x75bcca4c], 0xffffffff
je 0x75ab15cc
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push eax
push dword [0x75bcca4c]
call dword [0x75bc8374]
cmp eax, ebx
je 0x75ab15cc
cmp dword [0x75bc8ca8], ebx
je 0x75ab15ae
push ebx
push ebx
mov eax, 0x759b7ff8
push eax
push eax
push eax
push eax
push eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push eax
push 0x75ab18f0
push ebx
push ebx
push 9
call fcn.759c26bf
add esp, 0x30
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 4]
cmp eax, ebx
je 0x75ab15c4
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
xor eax, eax
inc eax
jmp 0x75ab18dc
cmp dword [ebp + 0x10], ebx
je 0x75ab1618
mov ecx, dword [ebp - 8]
cmp dword [ecx + 0x10], ebx
je 0x75ab1618
push ebx
push ebx
push dword [ebp + 0x24]
push dword [ebp + 0x18]
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push 1
push edi
push esi
call fcn.75ac461a
mov edi, eax
cmp edi, 1
je 0x75ab18ad
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 4]
cmp eax, ebx
je 0x75ab1611
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, edi
jmp 0x75ab18dc
mov ecx, dword [ebp - 8]
lea eax, [ebp + 0x17]
push eax
push esi
mov byte [ebp + 0x17], bl
call fcn.75ab034d
mov dword [ebp + 8], eax
cmp eax, 1
je 0x75ab164e
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 4]
cmp eax, ebx
je 0x75ab1646
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp + 8]
jmp 0x75ab18dc
cmp byte [ebp + 0x17], bl
je 0x75ab169e
push 1
lea ecx, [ebp - 0x18]
call fcn.759b87f0
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push ebx
push eax
call fcn.75b313fc
pop ecx
pop ecx
push eax
lea ecx, [ebp - 4]
call fcn.759cbe5f
cmp dword [eax], ebx
je 0x75ab1696
push dword [ebp - 4]
mov ecx, dword [ebp - 8]
call fcn.75aa516f
lea ecx, [ebp - 0x18]
mov esi, eax
call fcn.759b87d1
jmp 0x75ab18c4
lea ecx, [ebp - 0x18]
call fcn.759b87d1
mov eax, dword [esi]
add eax, 0x58
mov dword [ebp + 0x14], eax
mov eax, dword [edi]
push edi
call dword [eax + 0x20]
push eax
mov eax, dword [ebp + 0x14]
push esi
call dword [eax]
push eax
lea ecx, [ebp - 4]
call fcn.759cbe5f
cmp dword [ebp - 4], ebx
je 0x75ab18ad
push dword [ebp + 0x20]
mov eax, dword [edi]
push 0x10000
push edi
call dword [eax + 0x20]
mov ecx, dword [ebp - 8]
push eax
push esi
call fcn.75aa1790
mov dword [ebp + 8], eax
cmp eax, 1
jne 0x75ab1630
mov eax, dword [esi]
add eax, 0x3c
lea ecx, [ebp + 0x14]
mov dword [ebp + 0x14], 0x75bc8fe0
mov dword [ebp + 8], eax
call fcn.759c6ee9
push eax
mov eax, dword [edi]
push edi
call dword [eax + 0x20]
push eax
mov eax, dword [ebp + 8]
push esi
call dword [eax]
push eax
lea ecx, [ebp - 4]
call fcn.759cbe5f
cmp dword [eax], ebx
je 0x75ab1742
push dword [ebp - 4]
mov ecx, dword [ebp - 8]
push 0x1000000
call fcn.759d598c
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x75ab1494
cmp byte [ebp + 0x18], bl
je 0x75ab1844
mov edi, dword [esi]
mov eax, 0x75bc8fe0
push ebx
lea ecx, [ebp + 0x18]
mov dword [ebp + 8], eax
mov dword [ebp + 0x18], eax
add edi, 0x90
call fcn.759c6ee9
push eax
push 1
push ebx
push 0x75ab18e4
push esi
call dword [edi]
push eax
lea ecx, [ebp - 4]
call fcn.759cbe5f
cmp dword [eax], ebx
je 0x75ab17ad
push dword [ebp - 4]
mov ecx, dword [ebp - 8]
call fcn.75aa516f
mov esi, eax
mov eax, dword [ebp + 0x18]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x75ab18c4
mov eax, dword [ebp + 0x18]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
mov edi, dword [esi]
lea ecx, [ebp + 8]
mov dword [ebp + 0x10], eax
add edi, 0x3c
call fcn.759c6ee9
push eax
push dword [ebp + 0x10]
push esi
call dword [edi]
push eax
lea ecx, [ebp - 4]
call fcn.759cbe5f
cmp dword [eax], ebx
jne 0x75ab1780
mov eax, dword [ebp + 0x18]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
mov ecx, dword [esi]
push eax
push esi
call dword [ecx + 0x58]
push eax
lea ecx, [ebp - 4]
call fcn.759cbe5f
cmp dword [eax], ebx
jne 0x75ab1780
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
mov edi, eax
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push edi
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileW]
test eax, eax
je 0x75ab1825
lea eax, [ebp + 8]
push eax
lea ecx, [ebp + 0x14]
call fcn.759cea0e
jmp 0x75ab1832
mov eax, dword [ebp - 8]
mov dword [eax + 0x114], 1
mov eax, dword [ebp + 0x18]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push dword [ebp + 0x20]
mov ecx, dword [ebp - 8]
push ebx
push ebx
push eax
call fcn.75aa1d9f
test eax, eax
jne 0x75ab1882
push dword [ebp + 0x14]
mov ecx, dword [ebp - 8]
push 0xb60
push 0x4000000
call fcn.75a9e9a2
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x75ab15ae
mov eax, dword [0x75bcc938]
cmp eax, ebx
je 0x75ab18a4
cmp byte [eax + 0x3c], bl
jne 0x75ab18a4
mov eax, dword [eax + 8]
shr eax, 0x1f
test al, 1
je 0x75ab18a4
mov eax, dword [ebp + 0x28]
cmp eax, ebx
je 0x75ab18a4
mov byte [eax], 1
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
cmp dword [ebp + 0x1c], ebx
je 0x75ab18c1
mov ecx, dword [ebp - 8]
push ebx
push ebx
push esi
call fcn.75a9bac8
mov esi, eax
jmp 0x75ab18c4
xor esi, esi
inc esi
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 4]
cmp eax, ebx
je 0x75ab18da
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, esi
pop edi
pop esi
pop ebx
leave
ret 0x24