Function at 0x426104
Capabilities:
Copy file

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
push edi
push 0x133f
sub esp, 0x70
push fcn.00426104
xor esi, esi
xor edi, edi
mov ecx, 0x151
push esi
dec ecx
jne 0x426120
push 0
push 0
push 0
push 0
mov eax, 2
lea ebx, [esp + 0xc]
push ebx
mov dword [ebx], eax
lea ebx, [ebp - 0x9c]
push ebx
mov edx, 0x1862e14
call fcn.0045d0ba
lea ebx, [esp + 0x10]
push ebx
call fcn.0045c2a9
mov edx, 0x1862de8
call fcn.0045d0ba
lea ebx, [esp + 0x10]
push ebx
call fcn.0045c2a9
fild qword [0x186d0cc]
call fcn.0045c2a2
lea ebx, [esp + 0x10]
push ebx
mov dword [ebx], eax
call fcn.00430952
push eax
mov ebx, esp
mov eax, dword [ebx + 0xc]
call fcn.00457d88
mov eax, dword [ebx + 8]
call fcn.00457d88
pop eax
add esp, 0x10
mov edx, dword [ebp - 0x9c]
call fcn.0045d0a3
xor eax, eax
call fcn.00452fc5
lea ebx, [ebp - 0x9c]
call fcn.0045c2a9
mov edx, 0x1862e24
call fcn.0045d0ba
mov edx, 0x1862e34
call fcn.0045d0ba
lea ebx, [ebp - 0x9c]
push ebx
mov edx, dword [ebx]
call fcn.0045d0a3
call fcn.0045ab3c
pop ebx
call fcn.0045c2a9
mov edx, 0x1862e44
call fcn.0045d0ba
mov edx, dword [ebp - 0x9c]
call fcn.0045d0a3
call fcn.0045c56d
push 0
mov ebx, esp
call fcn.0045c2a9
call fcn.00417148
fild dword [0x186d720]
mov eax, dword [0x45fedc]
call fcn.0045c27b
fcompp
fnstsw ax
sahf
jne 0x4262cd
lea ebx, [ebp - 0xa0]
mov dword [ebx], esi
push ebx
call dword [sym.imp.KERNEL32.DLL_Wow64DisableWow64FsRedirection]
mov esi, dword [ebp - 0xa0]
fldcw word [ebp - 0x10]
push 0
push 0
push 0
mov eax, 4
call fcn.0045a309
mov edx, 0x1862c14
call fcn.0045d0ba
call fcn.0045c56d
lea ebx, [esp + 8]
call fcn.0045c36b
mov edx, dword [ebp - 0x9c]
call fcn.0045d0a3
mov eax, 4
call fcn.0045c6ad
mov edx, 0x1862c14
call fcn.0045d0ba
call fcn.0045c56d
lea ebx, [esp + 8]
call fcn.0045c36b
call dword [sym.imp.KERNEL32.DLL_CopyFileA]
push eax
mov ebx, esp
mov eax, dword [ebx + 8]
call fcn.00457d88
mov eax, dword [ebx + 4]
call fcn.00457d88
pop eax
add esp, 8
fldcw word [ebp - 0x10]
lea ebx, [ebp - 0xa0]
mov dword [ebx], esi
push ebx
call dword [sym.imp.KERNEL32.DLL_Wow64RevertWow64FsRedirection]
mov esi, dword [ebp - 0xa0]
fldcw word [ebp - 0x10]
jmp 0x426576
push 0
mov edx, 0x1862e5c
call fcn.0045d0ba
lea ebx, [esp]
call fcn.0045c36b
call dword [sym.imp.KERNEL32.DLL_LoadLibraryA]
push eax
mov ebx, esp
mov eax, dword [ebx + 4]
call fcn.00457d88
pop eax
add esp, 4
fldcw word [ebp - 0x10]
mov dword [ebp - 0xa8], eax
fild dword [0x186d6a4]
mov eax, dword [ebp - 0xa8]
call fcn.0045c27b
fcompp
fnstsw ax
sahf
jne 0x42631d
jmp 0x426576
push 0
mov edx, 0x1862e70
call fcn.0045d0ba
lea ebx, [esp]
call fcn.0045c36b
push dword [ebp - 0xa8]
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
push eax
mov ebx, esp
mov eax, dword [ebx + 4]
call fcn.00457d88
pop eax
add esp, 4
fldcw word [ebp - 0x10]
mov dword [ebp - 0xac], eax
fild dword [0x186d6a4]
mov eax, dword [ebp - 0xac]
call fcn.0045c27b
fcompp
fnstsw ax
sahf
jne 0x426386
push dword [ebp - 0xa8]
call dword [sym.imp.KERNEL32.DLL_FreeLibrary]
fldcw word [ebp - 0x10]
jmp 0x426576
push 0
push 0
push pe_nt_image_headers32
push 3
push 0
push 1
push 0x80000000
mov edx, dword [ebp - 0x9c]
call fcn.0045d0a3
mov edx, 0x18609c8
call fcn.0045d0ba
call fcn.0045c56d
lea ebx, [esp + 0x18]
call fcn.0045c36b
call dword [sym.imp.KERNEL32.DLL_CreateFileA]
push eax
mov ebx, esp
mov eax, dword [ebx + 4]
call fcn.00457d88
pop eax
add esp, 4
fldcw word [ebp - 0x10]
mov edi, eax
fild qword [0x186cd80]
mov dword [ebp - 0x6c], edi
mov dword [ebp - 0x68], 0
fild qword [ebp - 0x6c]
fcompp
fnstsw ax
sahf
je 0x42654f
fild dword [0x186d740]
fimul dword [0x186ce2c]
call fcn.0045c2a2
mov dword [ebp - 0xb4], eax
push 0
push dword [ebp - 0xb4]
lea ebx, [ebp - 0x5c8]
push ebx
mov eax, edi
push eax
call dword [ebp - 0xac]
mov dword [ebp - 0xb0], eax
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x426543
mov eax, dword [ebp - 0xb4]
call fcn.0045c27b
mov eax, dword [ebp - 0xb0]
call fcn.0045c27b
fcompp
fnstsw ax
sahf
jae 0x426543
lea ebx, [ebp - 0x5c8]
call fcn.0045ce8d
mov eax, 4
call fcn.0045c6ad
lea ebx, [ebp - 0x5c8]
mov ecx, 0x514
call fcn.0045ced6
lea ebx, [ebp - 0x5c8]
call fcn.0045ce8d
mov eax, 1
mov ecx, 4
xchg ecx, eax
call fcn.00454232
mov edx, 0x1862e90
call fcn.0045d0ba
call fcn.0045c602
jne 0x4264d4
lea ebx, [ebp - 0x5c8]
call fcn.0045ce8d
mov ecx, 5
mov eax, 0x7fffffff
call fcn.00454232
lea ebx, [ebp - 0x5c8]
mov ecx, 0x514
call fcn.0045ced6
lea ebx, [ebp - 0x5c8]
call fcn.0045ce8d
mov edx, 0x1862c14
call fcn.0045d0ba
call fcn.0045c56d
lea ebx, [ebp - 0x5c8]
mov ecx, 0x514
call fcn.0045ced6
push 0
push 0
mov eax, 4
call fcn.0045a309
mov edx, 0x1862c14
call fcn.0045d0ba
call fcn.0045c56d
lea ebx, [esp + 4]
call fcn.0045c36b
lea ebx, [ebp - 0x5c8]
push ebx
call dword [sym.imp.KERNEL32.DLL_CopyFileA]
push eax
mov ebx, esp
mov eax, dword [ebx + 4]
call fcn.00457d88
pop eax
add esp, 4
fldcw word [ebp - 0x10]
mov eax, edi
push eax
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
fldcw word [ebp - 0x10]
lea ebx, [ebp - 0xa0]
mov dword [ebx], esi
push ebx
call dword [sym.imp.KERNEL32.DLL_Wow64RevertWow64FsRedirection]
mov esi, dword [ebp - 0xa0]
fldcw word [ebp - 0x10]
push dword [ebp - 0xa8]
call dword [sym.imp.KERNEL32.DLL_FreeLibrary]
fldcw word [ebp - 0x10]
call fcn.0045cf2c
mov eax, dword [ebp - 0x98]
lea esp, [ebp - 0xc]
pop edi
pop esi
pop ebx
pop ebp
ret