Function at 0x4c44a0
Capabilities:
Move file
Write file on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4ff90e
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x12aa4
call fcn.004e6b50
mov eax, dword [0x519bc0]
xor eax, esp
mov dword [esp + 0x12aa0], eax
push ebx
push esi
push edi
mov eax, dword [0x519bc0]
xor eax, esp
push eax
lea eax, [esp + 0x12ab8]
mov dword fs:[0], eax
mov esi, dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push eax
mov eax, dword [str.InterfaceConvertProfile]
push eax
push str._s_u
push 0x572b78
mov edx, 0xc8
call fcn.004a63e0
add esp, 0x10
lea ecx, [esp + 0x6fc]
call fcn.0048fb30
mov dword [esp + 0x12ac0], 1
xor ebx, ebx
mov byte [esp + 0x178c], bl
cmp byte [0x53d329], bl
je 0x4c460d
push 0x800
lea ecx, [esp + 0xfab0]
push ecx
mov ecx, 0x54be08
call fcn.0047b190
push 0x10e8
lea edx, [esp + 0x27e0]
push ebx
push edx
call fcn.004e7df0
add esp, 0xc
xor eax, eax
jmp 0x4c4570
movzx ecx, word [esp + eax + 0xfaac]
mov word [esp + eax + 0x27dc], cx
add eax, 2
cmp cx, bx
jne 0x4c4570
push ebx
lea eax, [esp + 0x1798]
push eax
lea ecx, [esp + 0xfab4]
push ecx
mov dword [esp + 0x27b0], ebx
mov dword [esp + 0x27b4], ebx
mov dword [esp + 0x27b8], ebx
mov dword [esp + 0x27bc], ebx
mov dword [esp + 0x27c0], ebx
mov dword [esp + 0x27c4], ebx
call fcn.00447040
test al, al
je 0x4c45e8
mov edx, dword [esp + 0x2794]
mov eax, dword [esp + 0x2798]
mov dword [esp + 0x385c], edx
mov dword [esp + 0x3860], eax
lea ecx, [esp + 0x27dc]
push ecx
lea ecx, [esp + 0x700]
call fcn.0048f8f0
lea ecx, [esp + 0x6fc]
call fcn.0048fa50
jmp 0x4c46c3
lea ecx, [esp + 0x4c]
call fcn.00469a70
mov byte [esp + 0x12ac0], 2
lea edi, [esp + 0x4c]
cmp esi, ebx
je 0x4c462a
mov edi, esi
jmp 0x4c463b
push 1
lea edx, [esp + 0x50]
push edx
mov ecx, 0x549cb8
call fcn.00493e30
push ebx
push ebx
push ebx
push ebx
push 1
push 1
lea eax, [esp + 0x714]
push eax
push 3
push edi
call fcn.0049fe80
test al, al
jne 0x4c4684
mov byte [esp + 0x12ac0], 1
lea ecx, [esp + 0x4c]
call fcn.0041e100
mov dword [esp + 0x12ac0], 0xffffffff
lea ecx, [esp + 0x6fc]
call fcn.004c1c10
jmp 0x4c58d1
xor esi, esi
cmp dword [esp + 0x768], ebx
jbe 0x4c46aa
nop
push esi
lea ecx, [esp + 0x700]
call fcn.0048faf0
inc esi
mov dword [eax + 4], ebx
cmp esi, dword [esp + 0x768]
jb 0x4c4690
mov byte [esp + 0x12ac0], 1
mov eax, dword [esp + 0x4c]
cmp eax, ebx
je 0x4c46c3
push eax
call fcn.004e7061
add esp, 4
mov ecx, dword [str.InterfaceConvertProfile]
push 0x572b78
push ecx
call fcn.0049ca50
mov edx, dword [0x53f484]
push edx
mov byte [esp + 0x19], 0
call dword [sym.imp.USER32.dll_IsWindowVisible]
mov edx, dword [0x531154]
neg eax
lea ecx, [esp + 0x6fc]
push ecx
sbb eax, eax
and eax, dword [0x53f484]
push 0x4c1c60
push eax
push str.CONVERTARC
push edx
mov dword [esp + 0x38], ebx
call dword [sym.imp.USER32.dll_DialogBoxParamW]
test eax, eax
je 0x4c5889
push ebx
push 0x5083a4
push 0x572b78
call fcn.0049c560
test eax, eax
jne 0x4c4748
cmp dword [0x53e344], 1
jne 0x4c4741
cmp byte [0x559bb3], al
jne 0x4c4748
mov byte [esp + 0x1c], 0
jmp 0x4c474d
mov byte [esp + 0x1c], 1
mov eax, dword [esp + 0x1c]
push ebx
push eax
push ebx
push 9
call fcn.004b7e20
push 0x800
lea ecx, [esp + 0x10ab0]
push ecx
call fcn.004b4e40
lea ecx, [esp + 0x4ec]
call fcn.00466b60
mov byte [esp + 0x12ac0], 4
cmp byte [0x53d329], 0
je 0x4c479f
mov ecx, 0x40
mov esi, 0x54c1a2
lea edi, [esp + 0x4ec]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
xor edi, edi
xor esi, esi
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], ebx
mov dword [0x53e3c8], ebx
mov dword [0x53e3cc], ebx
mov dword [esp + 0x3c], edi
cmp dword [esp + 0x768], ebx
jbe 0x4c4804
lea esp, [esp]
push esi
lea ecx, [esp + 0x700]
call fcn.0048faf0
test byte [eax + 4], 2
je 0x4c47f6
mov edx, dword [eax + 8]
add dword [0x53e3c8], edx
mov eax, dword [eax + 0xc]
adc dword [0x53e3cc], eax
inc edi
inc esi
cmp esi, dword [esp + 0x768]
jb 0x4c47d0
mov dword [esp + 0x3c], edi
mov edx, dword [esp + 0x3c]
push 0x880
lea ecx, [esp + 0xd9b0]
push ecx
xor esi, esi
push esi
push edx
call fcn.004a3bb0
mov ecx, dword [0x53d324]
mov ebx, dword [sym.imp.USER32.dll_SetDlgItemTextW]
lea eax, [esp + 0xd9ac]
push eax
push 0x65
push ecx
call ebx
or edi, 0xffffffff
cmp byte [0x53e3e9], 0
mov dword [0x53f3f8], esi
mov dword [0x53f3fc], esi
mov dword [esp + 0x20], esi
jne 0x4c5783
cmp byte [0x53d328], 0
jne 0x4c579a
mov eax, dword [esp + 0x24]
push 0x880
lea edx, [esp + 0xd9b0]
push edx
push 0
push eax
call fcn.004a3bb0
mov edx, dword [0x53d324]
lea ecx, [esp + 0xd9ac]
push ecx
push 0x66
push edx
call ebx
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x2c]
push 0x880
lea eax, [esp + 0xd9b0]
push eax
push ecx
push edx
call fcn.004a3bb0
mov ecx, dword [0x53d324]
lea eax, [esp + 0xd9ac]
push eax
push 0x67
push ecx
call ebx
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x34]
push 0x880
lea edx, [esp + 0xd9b0]
push edx
push eax
push ecx
call fcn.004a3bb0
mov eax, dword [0x53d324]
lea edx, [esp + 0xd9ac]
push edx
push 0x68
push eax
call ebx
cmp edi, 0xffffffff
je 0x4c4922
push edi
lea ecx, [esp + 0x27e0]
push ecx
lea ecx, [esp + 0x704]
call fcn.0048fc20
mov edx, dword [eax + 0x1080]
add dword [0x53f3f8], edx
mov eax, dword [eax + 0x1084]
adc dword [0x53f3fc], eax
or edi, 0xffffffff
call fcn.004b7040
mov ecx, dword [esp + 0x20]
cmp ecx, dword [esp + 0x768]
jge 0x4c5783
mov edx, ecx
push edx
lea ecx, [esp + 0x700]
call fcn.0048faf0
mov esi, eax
test byte [esi + 4], 2
mov dword [esp + 0x18], esi
je 0x4c5772
cmp byte [esp + 0x1785], 0
mov edi, dword [esp + 0x20]
mov dword [esp + 0x48], edi
je 0x4c498a
test byte [esi + 0x28], 0x10
je 0x4c498a
push 0x50e
call fcn.00463400
push eax
mov eax, dword [esi]
push eax
call fcn.004c3030
add esp, 8
jmp 0x4c5772
cmp byte [0x53d329], 0
je 0x4c49b7
mov ecx, 0x40
lea esi, [esp + 0x4ec]
mov edi, 0x54c1a2
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov edi, dword [esp + 0x48]
mov esi, dword [esp + 0x18]
mov byte [0x54c2a4], 1
mov ecx, dword [esi]
push 1
push 0
push ecx
mov ecx, 0x54be08
call fcn.0047c7b0
cmp eax, 1
jne 0x4c5772
lea edx, [esp + 0x10c]
push edx
mov ecx, 0x54be08
call fcn.0047b1c0
xor eax, eax
push eax
mov dword [esp + 0x27a8], eax
mov dword [esp + 0x27ac], eax
mov dword [esp + 0x27b0], eax
mov dword [esp + 0x27b4], eax
mov dword [esp + 0x27b8], eax
mov dword [esp + 0x27bc], eax
mov ecx, dword [esi]
lea eax, [esp + 0x1798]
push eax
push ecx
call fcn.00447040
test al, al
je 0x4c5772
cmp byte [esp + 0x1785], 0
je 0x4c4a61
cmp byte [esp + 0x2f8], 0
jne 0x4c4a46
cmp byte [esp + 0x247], 0
je 0x4c4a61
push 0x50e
call fcn.00463400
mov edx, dword [esi]
push eax
push edx
call fcn.004c3030
add esp, 8
jmp 0x4c5772
push 1
push 0x800
lea eax, [esp + 0xeab4]
push eax
push str.Rar_CV
call fcn.004b4490
test al, al
je 0x4c5772
lea ecx, [esp + 0xeaac]
push ecx
call fcn.004b4de0
push 1
call fcn.004b0320
mov edx, dword [esp + 0x3c]
push 0x800
push 0x55abfa
mov ecx, 0x54be08
mov dword [0x53e3d4], edx
call fcn.0047b190
mov eax, dword [0x54be0c]
mov dword [0x557ba8], eax
mov eax, 4
push 0x502a28
mov ecx, 0x55bbfc
mov dword [0x55591c], 1
mov dword [0x556b98], eax
mov dword [0x556b9c], eax
call fcn.004698e0
push 0x55abfa
push 0x20f
call fcn.00463400
push eax
call fcn.004b56e0
mov ecx, dword [0x575d10]
add esp, 8
cmp byte [0x556b91], 0
mov dword [esp + 0x1c], ecx
je 0x4c4b1d
mov byte [0x556b91], 0
mov byte [esp + 0x15], 1
push 1
push 0
mov ecx, 0x54be08
call fcn.0047d470
cmp byte [0x53d328], 0
jne 0x4c574e
mov edx, dword [esp + 0x1c]
cmp edx, dword [0x575d10]
jne 0x4c574e
push 0x572b78
call fcn.004b0790
mov eax, dword [0x555970]
xor edi, edi
mov dword [esp + 0x44], eax
mov byte [0x555ac9], 0
cmp word [0x5527fe], di
jne 0x4c4bd2
push edi
lea ecx, [esp + 0x44]
push ecx
lea edx, [esp + 0x30]
push edx
mov ecx, 0x54be08
mov dword [esp + 0x34], edi
mov dword [esp + 0x4c], edi
call fcn.0047ba00
cmp dword [esp + 0x40], edi
jbe 0x4c4bc5
push 0x800
push 0x5527fe
push str.Rar_CM
call fcn.004b43c0
mov esi, eax
cmp esi, edi
je 0x4c4bc5
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x28]
push esi
push eax
push 1
push ecx
call fcn.004eb049
push esi
call fcn.004eae6b
add esp, 0x14
mov edx, dword [esp + 0x28]
push edx
call fcn.004e6904
add esp, 4
mov esi, dword [esp + 0x18]
mov ecx, dword [esi]
push 0x800
lea eax, [esp + 0x11ab0]
push eax
push ecx
call fcn.00453720
push 0x800
lea edx, [esp + 0x788]
push edx
lea eax, [esp + 0xb9b4]
push eax
call fcn.004694b0
cmp word [esp + 0xb9ac], di
je 0x4c4c21
push 0x800
lea ecx, [esp + 0xb9b0]
push ecx
call fcn.00452c60
mov edx, dword [esi]
push edx
call fcn.00490c70
mov byte [esp + 0x14], al
mov ebx, 0x502a38
cmp dword [0x557ba8], edi
je 0x4c4c3f
mov ebx, 0x502284
cmp word [0x5507f8], 0
je 0x4c4c4e
mov ebx, 0x502a40
mov esi, dword [esp + 0x18]
mov ecx, dword [esi]
push ebx
xor eax, eax
push ecx
mov word [esp + 0xa9b4], ax
call fcn.004536e0
test al, al
je 0x4c4d47
cmp word [esp + 0xb9ac], 0
je 0x4c4c95
lea edx, [esp + 0x11aac]
push edx
lea eax, [esp + 0xb9b0]
push eax
call fcn.0046cb00
test eax, eax
jne 0x4c4d47
push 1
push 0x800
lea ecx, [esp + 0xa9b4]
push ecx
push str.Rar_CV
mov byte [esp + 0x26], 1
call fcn.004b4490
mov edx, dword [esi]
push 0x800
push 0x55abfa
push edx
call fcn.004534c0
push eax
lea eax, [esp + 0xa9b8]
push eax
call fcn.00452cb0
push 0x55abfa
call fcn.004536c0
mov esi, eax
test esi, esi
je 0x4c4e61
xor ecx, ecx
push 0x55abfa
mov word [esi], cx
call fcn.004536c0
mov edx, 0x2e
mov word [esi], dx
test eax, eax
je 0x4c4e61
cmp byte [esp + 0x14], 0
je 0x4c4e61
cmp dword [esp + 0x24c], 0
jne 0x4c4e61
cmp byte [esp + 0x22e], 0
je 0x4c4e61
mov edx, eax
mov ecx, esi
sub edx, esi
movzx eax, word [ecx]
mov word [edx + ecx], ax
add ecx, 2
test ax, ax
jne 0x4c4d33
jmp 0x4c4e61
cmp word [esp + 0xb9ac], 0
mov byte [esp + 0x16], 0
je 0x4c4db4
xor eax, eax
lea esp, [esp]
movzx ecx, word [esp + eax + 0xb9ac]
mov word [eax + 0x55abfa], cx
add eax, 2
test cx, cx
jne 0x4c4d60
mov eax, dword [esi]
push eax
call fcn.004534c0
mov edx, eax
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4c4d81
mov edi, 0x55abfa
sub eax, edx
add edi, 0xfffffffe
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4c4d96
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x4c4dd1
mov ecx, dword [esi]
mov edx, 0x55abfa
jmp 0x4c4dc0
movzx eax, word [ecx]
mov word [edx], ax
add ecx, 2
add edx, 2
test ax, ax
jne 0x4c4dc0
push 0x55abfa
call fcn.004536c0
mov esi, eax
test esi, esi
je 0x4c4e26
xor ecx, ecx
push 0x55abfa
mov word [esi], cx
call fcn.004536c0
test eax, eax
je 0x4c4e1e
push str..tar
push eax
call fcn.0046cb00
test eax, eax
je 0x4c4e26
cmp byte [esp + 0x14], 0
je 0x4c4e1e
cmp dword [esp + 0x24c], 0
jne 0x4c4e1e
cmp byte [esp + 0x22e], 0
jne 0x4c4e26
mov edx, 0x2e
mov word [esi], dx
push 0x800
push ebx
push 0x55abfa
call fcn.00453ec0
push 0x55abfa
call fcn.00445470
test al, al
je 0x4c4e61
push 0x50d
call fcn.00463400
push eax
push 0x55abfa
call fcn.004c3030
add esp, 8
mov byte [esp + 0x16], 1
mov esi, dword [esp + 0x1c]
cmp esi, dword [0x575d10]
jne 0x4c4ec5
lea eax, [esp + 0xeaac]
push eax
call fcn.004b4de0
push 0x502a28
mov ecx, 0x55bbfc
mov dword [0x555948], 3
mov dword [0x555944], 2
mov byte [0x555986], 0
call fcn.004698e0
cmp byte [0x556b91], 0
je 0x4c4eb9
mov byte [0x556b91], 0
mov byte [esp + 0x15], 1
push 0
mov ecx, 0x54be08
call fcn.0047d0d0
cmp word [0x5527fe], 0
je 0x4c4ed9
push 0x5527fe
call fcn.004b46b0
cmp byte [0x53d328], 0
mov byte [esp + 0x17], 0
jne 0x4c5725
cmp esi, dword [0x575d10]
jne 0x4c5725
mov ecx, 0x40
mov esi, 0x554810
mov edi, 0x54c1a2
rep movsd dword es:[edi], dword [esi]
push 1
push 0
movsw word es:[edi], word [esi]
push 0x55abfa
mov ecx, 0x54be08
mov byte [0x54c2a4], 1
call fcn.0047c7b0
cmp eax, 1
jne 0x4c5725
lea ecx, [esp + 0x2fc]
push ecx
mov ecx, 0x54be08
call fcn.0047b1c0
mov eax, dword [esp + 0x2e4]
mov ecx, dword [esp + 0x2e8]
cmp eax, dword [esp + 0x4d4]
jne 0x4c4f5f
cmp ecx, dword [esp + 0x4d8]
je 0x4c4fa1
or eax, ecx
je 0x4c4fa1
push 0x501bf4
lea edx, [esp + 0x110]
push edx
call fcn.0046cb00
test eax, eax
jne 0x4c4f82
cmp byte [esp + 0x22e], al
jne 0x4c4fa1
push 0x50a
call fcn.00463400
push eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax]
push ecx
call fcn.004c3030
add esp, 8
jmp 0x4c5725
mov eax, dword [esp + 0x1788]
xor ebx, ebx
cmp eax, ebx
je 0x4c500f
mov ecx, dword [esp + 0x2f0]
push ecx
mov ecx, dword [esp + 0x2f0]
cdq
push ecx
push edx
push eax
call fcn.004e68d0
push ebx
mov esi, edx
mov edx, dword [esp + 0x4e4]
push 0x64
mov edi, eax
mov eax, dword [esp + 0x4e4]
push edx
push eax
call fcn.004e68d0
cmp esi, edx
jg 0x4c500f
jl 0x4c4fec
cmp edi, eax
jae 0x4c500f
push 0x55abfa
call fcn.004534c0
push eax
push 0x50f
call fcn.00463400
push eax
call fcn.004b56e0
add esp, 8
jmp 0x4c5725
mov ecx, 0x40
mov esi, 0x554810
lea edi, [esp + 0x5f4]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov byte [esp + 0x12ac0], 5
push 1
call fcn.004b0320
mov ecx, 0x40
lea esi, [esp + 0x5f4]
mov edi, 0x554810
rep movsd dword es:[edi], dword [esi]
push 0x800
push 0x55abfa
mov ecx, 0x54be08
movsw word es:[edi], word [esi]
call fcn.0047b190
mov ecx, dword [0x54be0c]
mov dword [0x557ba8], ecx
push 0x502a28
mov ecx, 0x55bbfc
mov byte [0x555ac9], 1
mov dword [0x555aa8], ebx
mov dword [0x555aac], ebx
mov dword [0x555ab0], ebx
mov dword [0x555ab4], ebx
call fcn.004698e0
push 0x55abfa
call fcn.004534c0
push eax
push 0x210
call fcn.00463400
push eax
call fcn.004b56e0
add esp, 8
cmp byte [0x556b91], 0
je 0x4c50c9
mov byte [0x556b91], 0
mov byte [esp + 0x15], 1
push ebx
push ebx
mov ecx, 0x54be08
call fcn.0047d470
cmp byte [0x53d328], 0
jne 0x4c570a
mov edx, dword [esp + 0x1c]
cmp edx, dword [0x575d10]
jne 0x4c570a
mov eax, dword [esp + 0x4d4]
or eax, dword [esp + 0x4d8]
jne 0x4c5126
cmp dword [esp + 0x2798], ebx
ja 0x4c5118
cmp dword [esp + 0x2794], 0x200
jb 0x4c5126
cmp dword [esp + 0x2d4], 1
jbe 0x4c570a
mov eax, dword [esp + 0x1788]
cmp eax, ebx
je 0x4c5177
mov ecx, dword [esp + 0x2f0]
push ecx
mov ecx, dword [esp + 0x2f0]
cdq
push ecx
push edx
push eax
call fcn.004e68d0
push ebx
mov esi, edx
mov edx, dword [esp + 0x4e4]
push 0x64
mov edi, eax
mov eax, dword [esp + 0x4e4]
push edx
push eax
call fcn.004e68d0
cmp esi, edx
jl 0x4c570a
jg 0x4c5177
cmp edi, eax
jb 0x4c570a
push 0x55abfa
mov byte [esp + 0x1b], 1
call fcn.004534c0
push eax
push 0x25a
call fcn.00463400
push eax
call fcn.004b56e0
inc dword [esp + 0x2c]
mov ecx, dword [esp + 0x2f4]
mov edx, dword [esp + 0x2f8]
mov eax, dword [esp + 0x4e4]
add esp, 8
add dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x4e0]
adc dword [esp + 0x30], edx
add dword [esp + 0x34], eax
adc dword [esp + 0x38], ecx
cmp byte [esp + 0x16], 0
je 0x4c5584
mov esi, dword [esp + 0x18]
mov edx, dword [esi]
push ebx
push 1
push edx
mov ecx, 0x54be08
call fcn.0047c7b0
cmp eax, 1
jne 0x4c570a
lea ecx, [esp + 0x4c]
call fcn.00469a70
mov byte [esp + 0x12ac0], 6
mov eax, dword [esi]
lea edx, [esp + 0x89ac]
sub edx, eax
mov edi, edi
movzx ecx, word [eax]
mov word [eax + edx], cx
add eax, 2
cmp cx, bx
jne 0x4c5210
mov esi, dword [sym.imp.KERNEL32.dll_MoveFileW]
mov byte [esp + 0x14], 0
lea ebx, [ebx]
lea eax, [esp + 0x89ac]
push eax
lea ecx, [esp + 0x79b0]
push str._s._cvtbackup_
push ecx
mov edx, 0x800
call fcn.004a63e0
add esp, 0xc
lea edx, [esp + 0x79ac]
push edx
lea eax, [esp + 0x89b0]
push eax
call esi
test eax, eax
je 0x4c5414
lea ecx, [esp + 0x89ac]
push ecx
lea ecx, [esp + 0x50]
call fcn.004698e0
lea edx, [esp + 0x79ac]
push edx
lea ecx, [esp + 0x50]
call fcn.004698e0
mov ecx, 0x54be08
call fcn.0047b1b0
test eax, eax
je 0x4c52cc
push 0x800
lea eax, [esp + 0x89b0]
push eax
mov ecx, 0x54be08
call fcn.0047bc70
test al, al
je 0x4c52cc
lea ecx, [esp + 0x89ac]
push ecx
call fcn.00445470
test al, al
jne 0x4c5230
cmp word [esp + 0xa9ac], bx
je 0x4c5448
lea ecx, [esp + 0xac]
call fcn.00469a70
mov byte [esp + 0x12ac0], 7
lea edx, [esp + 0xa9ac]
push edx
lea ecx, [esp + 0xb0]
call fcn.004698e0
lea ecx, [esp + 0x27dc]
call fcn.00402470
push ebx
push ebx
push ebx
lea eax, [esp + 0xb8]
push eax
lea ecx, [esp + 0x38d4]
call fcn.00465890
mov byte [esp + 0x12ac0], 8
lea ecx, [esp + 0x27dc]
push ecx
lea ecx, [esp + 0x38c8]
call fcn.00466750
test eax, eax
jne 0x4c5420
mov edi, dword [sym.imp.KERNEL32.dll_CreateFileW]
mov ebx, dword [sym.imp.KERNEL32.dll_SetFileTime]
jmp 0x4c5360
mov edx, dword [esp + 0x18]
mov eax, dword [edx]
lea edx, [esp + 0x79ac]
sub edx, eax
nop
movzx ecx, word [eax]
mov word [eax + edx], cx
add eax, 2
test cx, cx
jne 0x4c5370
push 0x800
lea eax, [esp + 0x27e0]
push eax
call fcn.004534c0
push eax
lea ecx, [esp + 0x79b4]
push ecx
call fcn.00453690
lea edx, [esp + 0x79ac]
push edx
lea eax, [esp + 0x27e0]
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileW]
test eax, eax
je 0x4c541b
cmp dword [esp + 0x44], 1
jne 0x4c53f6
push 0
push 0
push 3
push 0
push 0
push 0x40000000
lea ecx, [esp + 0x79c4]
push ecx
call edi
mov esi, eax
cmp esi, 0xffffffff
je 0x4c53f6
lea edx, [esp + 0x3814]
push edx
push 0
push 0
push esi
call ebx
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea eax, [esp + 0x27dc]
push eax
lea ecx, [esp + 0x38c8]
call fcn.00466750
test eax, eax
je 0x4c5360
jmp 0x4c5420
mov byte [esp + 0x14], 1
jmp 0x4c5448
mov byte [esp + 0x14], 1
mov byte [esp + 0x12ac0], 7
lea ecx, [esp + 0x38c4]
call fcn.00465970
mov byte [esp + 0x12ac0], 6
lea ecx, [esp + 0xac]
call fcn.0041e100
xor bl, bl
cmp byte [esp + 0x1784], bl
jne 0x4c54c5
push 0x800
lea ecx, [esp + 0xc9b0]
push ecx
lea ecx, [esp + 0x54]
mov bl, 1
call fcn.00469af0
test al, al
je 0x4c54bc
push 0x800
lea edx, [esp + 0x99b0]
push edx
lea ecx, [esp + 0x54]
call fcn.00469af0
test al, al
je 0x4c54bc
lea eax, [esp + 0xc9ac]
push eax
call fcn.00445470
test al, al
jne 0x4c54ba
push 0x800
lea ecx, [esp + 0xc9b0]
push ecx
lea ecx, [esp + 0x54]
call fcn.00469af0
test al, al
jne 0x4c5473
jmp 0x4c54bc
xor bl, bl
lea ecx, [esp + 0x4c]
call fcn.00469860
push 0x800
lea edx, [esp + 0xc9b0]
push edx
lea ecx, [esp + 0x54]
call fcn.00469af0
test al, al
je 0x4c556e
mov esi, dword [sym.imp.KERNEL32.dll_MoveFileW]
lea esp, [esp]
push 0x800
lea eax, [esp + 0x99b0]
push eax
lea ecx, [esp + 0x54]
call fcn.00469af0
test al, al
je 0x4c556e
cmp byte [esp + 0x14], 0
jne 0x4c5531
test bl, bl
jne 0x4c5542
lea ecx, [esp + 0x99ac]
push ecx
call fcn.00445490
lea edx, [esp + 0x99ac]
push edx
call fcn.004450c0
jmp 0x4c5554
test bl, bl
jne 0x4c5542
lea eax, [esp + 0xc9ac]
push eax
call fcn.004450c0
lea ecx, [esp + 0xc9ac]
push ecx
lea edx, [esp + 0x99b0]
push edx
call esi
push 0x800
lea eax, [esp + 0xc9b0]
push eax
lea ecx, [esp + 0x54]
call fcn.00469af0
test al, al
jne 0x4c54f0
mov byte [esp + 0x12ac0], 5
lea ecx, [esp + 0x4c]
call fcn.0041e100
jmp 0x4c570a
cmp byte [esp + 0x1784], 0
je 0x4c5645
mov esi, dword [esp + 0x18]
mov ecx, dword [esi]
push ebx
push 1
push ecx
mov ecx, 0x54be08
call fcn.0047c7b0
cmp eax, 1
jne 0x4c5645
mov eax, dword [esi]
lea edx, [esp + 0x89ac]
sub edx, eax
lea ebx, [ebx]
movzx ecx, word [eax]
mov word [eax + edx], cx
add eax, 2
cmp cx, bx
jne 0x4c55c0
nop
lea edx, [esp + 0x89ac]
push edx
call fcn.004534c0
push eax
push 0x258
call fcn.00463400
push eax
call fcn.004b56e0
add esp, 8
lea eax, [esp + 0x89ac]
push eax
call fcn.00445490
lea ecx, [esp + 0x89ac]
push ecx
call fcn.004450c0
mov ecx, 0x54be08
call fcn.0047b1b0
test eax, eax
je 0x4c5645
push 0x800
lea edx, [esp + 0x89b0]
push edx
mov ecx, 0x54be08
call fcn.0047bc70
test al, al
je 0x4c5645
lea eax, [esp + 0x89ac]
push eax
call fcn.00445470
test al, al
jne 0x4c55d0
push ebx
push 1
push 0x55abfa
mov ecx, 0x54be08
call fcn.0047c7b0
cmp eax, 1
jne 0x4c570a
xor eax, eax
jmp 0x4c5670
movzx ecx, word [eax + 0x55abfa]
mov word [esp + eax + 0x79ac], cx
add eax, 2
cmp cx, bx
jne 0x4c5670
mov edi, dword [sym.imp.KERNEL32.dll_CreateFileW]
mov ebx, dword [sym.imp.KERNEL32.dll_SetFileTime]
cmp dword [esp + 0x44], 1
jne 0x4c56d0
push 0
push 0
push 3
push 0
push 0
push 0x40000000
lea ecx, [esp + 0x79c4]
push ecx
call edi
mov esi, eax
cmp esi, 0xffffffff
je 0x4c56d0
lea edx, [esp + 0x27cc]
push edx
push 0
push 0
push esi
call ebx
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, 0x54be08
call fcn.0047b1b0
test eax, eax
je 0x4c570a
push 0x800
lea eax, [esp + 0x79b0]
push eax
mov ecx, 0x54be08
call fcn.0047bc70
test al, al
je 0x4c570a
lea ecx, [esp + 0x79ac]
push ecx
call fcn.00445470
test al, al
jne 0x4c5693
mov byte [esp + 0x12ac0], 4
lea ecx, [esp + 0x5f4]
call fcn.00466b80
cmp byte [esp + 0x17], 0
jne 0x4c5736
cmp byte [esp + 0x16], 0
jne 0x4c5736
push 0x55abfa
call fcn.004450c0
cmp word [esp + 0xa9ac], 0
je 0x4c574e
lea edx, [esp + 0xa9ac]
push edx
call fcn.004b4a70
lea eax, [esp + 0x10aac]
push eax
call fcn.004b4de0
lea ecx, [esp + 0xeaac]
push ecx
call fcn.004b4a70
mov edi, dword [esp + 0x48]
mov ebx, dword [sym.imp.USER32.dll_SetDlgItemTextW]
inc dword [esp + 0x20]
cmp byte [0x53e3e9], 0
je 0x4c4857
cmp byte [0x53d328], 0
jne 0x4c579a
cmp byte [0x53e3e9], 0
mov eax, 0x4d0
je 0x4c579f
mov eax, 0x271
push eax
call fcn.00463400
push eax
call fcn.004b56e0
add esp, 4
cmp byte [0x53e3e9], 0
je 0x4c57c6
mov edx, dword [0x53d324]
push edx
call dword [sym.imp.USER32.dll_DestroyWindow]
jmp 0x4c57e0
push 0
push 0
push 0
push 0
push 0
push 1
push 0
push 1
call fcn.004b6440
call fcn.004b57f0
mov al, byte [0x53d329]
test al, al
je 0x4c5837
mov ecx, 0x40
lea esi, [esp + 0x4ec]
mov edi, 0x54c1a2
rep movsd dword es:[edi], dword [esi]
push 0
push 0
lea eax, [esp + 0xfab4]
movsw word es:[edi], word [esi]
push eax
mov ecx, 0x54be08
mov byte [0x54c2a4], 1
call fcn.0047c7b0
cmp eax, 1
je 0x4c582e
mov ecx, 0x549cb8
call fcn.004928d0
test al, al
jne 0x4c583e
mov al, byte [0x53d329]
test al, al
jne 0x4c5859
cmp dword [esp + 0x24], 0
jbe 0x4c5855
push 0x55abfa
call fcn.004534c0
push eax
mov ecx, 0x549cb8
call fcn.00494c40
jmp 0x4c5875
test al, al
je 0x4c5875
cmp dword [esp + 0x24], 0
jbe 0x4c5875
push 0x55abfa
call fcn.004534c0
push eax
mov ecx, 0x549cb8
call fcn.00494090
mov byte [esp + 0x12ac0], 1
lea ecx, [esp + 0x4ec]
call fcn.00466b80
cmp byte [esp + 0x178c], 0
je 0x4c58a4
mov ecx, dword [str.InterfaceConvertProfile]
push ecx
push 0x572b78
call fcn.0049ca50
push 0x572b78
call fcn.0049cb50
cmp byte [esp + 0x15], 0
je 0x4c58ba
call fcn.004b4700
mov dword [esp + 0x12ac0], 0xffffffff
lea ecx, [esp + 0x6fc]
call fcn.0047bce0
mov ecx, dword [esp + 0x12ab8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x12aa0]
xor ecx, esp
call fcn.004e6b3a
mov esp, ebp
pop ebp
ret 4