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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4c6032
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x736c
call fcn.004b1040
mov eax, dword [0x4da8f0]
xor eax, esp
mov dword [esp + 0x7368], eax
push ebx
push esi
push edi
mov eax, dword [0x4da8f0]
xor eax, esp
push eax
lea eax, [esp + 0x7380]
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 0x53fe40
mov edx, 0xc8
call fcn.00483770
add esp, 0x10
lea ecx, [esp + 0x49c]
call fcn.00445480
mov dword [esp + 0x7388], 1
xor ebx, ebx
mov byte [esp + 0xd70], bl
cmp byte [0x51b789], bl
je 0x49c008
push 0x400
lea ecx, [esp + 0x6b78]
push ecx
mov ecx, 0x5229e0
call fcn.00413320
push 0x830
lea edx, [esp + 0xd78]
push ebx
push edx
call fcn.004b14b0
add esp, 0xc
xor eax, eax
jmp 0x49bf70
movzx ecx, word [esp + eax + 0x6b74]
mov word [esp + eax + 0xd74], cx
add eax, 2
cmp cx, bx
jne 0x49bf70
lea ecx, [esp + 0x21b8]
call fcn.004129c0
lea ecx, [esp + 0x21dc]
call fcn.004129c0
lea ecx, [esp + 0x2200]
call fcn.004129c0
push ebx
lea eax, [esp + 0x15a8]
push eax
lea ecx, [esp + 0x6b7c]
push ecx
push ebx
call fcn.0043b280
test al, al
je 0x49bfe3
mov edx, dword [esp + 0x21a4]
mov eax, dword [esp + 0x21a8]
mov dword [esp + 0x1574], edx
mov dword [esp + 0x1578], eax
lea ecx, [esp + 0xd74]
push ecx
lea ecx, [esp + 0x4a0]
call fcn.00445090
lea ecx, [esp + 0x49c]
call fcn.00445300
jmp 0x49c0bb
lea ecx, [esp + 0x4c]
call fcn.004710c0
mov byte [esp + 0x7388], 2
lea edi, [esp + 0x4c]
cmp esi, ebx
je 0x49c025
mov edi, esi
jmp 0x49c035
push ebx
lea edx, [esp + 0x50]
push edx
mov ecx, 0x5220b8
call fcn.004469d0
push ebx
push ebx
push ebx
push 1
push 1
lea eax, [esp + 0x4b0]
push eax
push 3
push edi
call fcn.00469720
test al, al
jne 0x49c07d
mov byte [esp + 0x7388], 1
lea ecx, [esp + 0x4c]
call fcn.00401bb0
mov dword [esp + 0x7388], 0xffffffff
lea ecx, [esp + 0x49c]
call fcn.00498da0
jmp 0x49d232
xor esi, esi
cmp dword [esp + 0x550], ebx
jbe 0x49c0aa
jmp 0x49c090
push esi
lea ecx, [esp + 0x4a0]
call fcn.00445420
inc esi
mov dword [eax + 4], ebx
cmp esi, dword [esp + 0x550]
jb 0x49c090
mov byte [esp + 0x7388], 1
lea ecx, [esp + 0x4c]
call fcn.00401bb0
mov ecx, dword [str.InterfaceConvertProfile]
push 0x53fe40
push ecx
call fcn.00461200
mov edx, dword [0x51c8dc]
push edx
mov byte [esp + 0x15], 0
call dword [sym.imp.USER32.dll_IsWindowVisible]
mov edx, dword [0x508300]
neg eax
lea ecx, [esp + 0x49c]
push ecx
sbb eax, eax
and eax, dword [0x51c8dc]
push 0x498df0
push eax
push str.CONVERTARC
push edx
mov dword [esp + 0x34], ebx
call dword [sym.imp.USER32.dll_DialogBoxParamW]
test eax, eax
je 0x49d1ea
push ebx
push 0x4cd0b0
push 0x53fe40
call fcn.00460ee0
test eax, eax
jne 0x49c140
cmp dword [0x51bfa4], 1
jne 0x49c139
cmp byte [0x529c3b], al
jne 0x49c140
mov byte [esp + 0x14], 0
jmp 0x49c145
mov byte [esp + 0x14], 1
mov eax, dword [esp + 0x14]
push ebx
push eax
push ebx
push 8
call fcn.0048f9f0
push 0x400
lea ecx, [esp + 0xd78]
push ecx
call fcn.0048cf70
xor edi, edi
xor esi, esi
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], ebx
mov dword [0x51c020], ebx
mov dword [0x51c024], ebx
mov dword [esp + 0x44], edi
cmp dword [esp + 0x550], ebx
jbe 0x49c1c6
push esi
lea ecx, [esp + 0x4a0]
call fcn.00445420
test byte [eax + 4], 2
je 0x49c1b8
mov edx, dword [eax + 8]
add dword [0x51c020], edx
mov eax, dword [eax + 0xc]
adc dword [0x51c024], eax
inc edi
inc esi
cmp esi, dword [esp + 0x550]
jb 0x49c192
mov dword [esp + 0x44], edi
push 0x480
lea ecx, [esp + 0x2a48]
push ecx
push ebx
push edi
call fcn.0044c730
mov eax, dword [0x51b784]
mov esi, dword [sym.imp.USER32.dll_SetDlgItemTextW]
lea edx, [esp + 0x2a44]
push edx
push 0x65
push eax
call esi
or edi, 0xffffffff
cmp byte [0x51c858], 0
mov dword [0x51c848], ebx
mov dword [0x51c84c], ebx
mov dword [esp + 0x1c], ebx
jne 0x49d142
cmp byte [0x51b788], 0
jne 0x49d159
mov edx, dword [esp + 0x20]
push 0x480
lea ecx, [esp + 0x2a48]
push ecx
push ebx
push edx
call fcn.0044c730
mov ecx, dword [0x51b784]
lea eax, [esp + 0x2a44]
push eax
push 0x66
push ecx
call esi
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x34]
push 0x480
lea edx, [esp + 0x2a48]
push edx
push eax
push ecx
call fcn.0044c730
mov eax, dword [0x51b784]
lea edx, [esp + 0x2a44]
push edx
push 0x67
push eax
call esi
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x2c]
push 0x480
lea ecx, [esp + 0x2a48]
push ecx
push edx
push eax
call fcn.0044c730
mov edx, dword [0x51b784]
lea ecx, [esp + 0x2a44]
push ecx
push 0x68
push edx
call esi
cmp edi, 0xffffffff
je 0x49c2dc
push edi
lea eax, [esp + 0x6348]
push eax
lea ecx, [esp + 0x4a4]
call fcn.00445250
mov ecx, dword [eax + 0x800]
add dword [0x51c848], ecx
mov edx, dword [eax + 0x804]
adc dword [0x51c84c], edx
or edi, 0xffffffff
call fcn.0048ec20
mov eax, dword [esp + 0x1c]
cmp eax, dword [esp + 0x550]
jge 0x49d142
mov ecx, eax
push ecx
lea ecx, [esp + 0x4a0]
call fcn.00445420
mov ebx, eax
test byte [ebx + 4], 2
mov dword [esp + 0x18], ebx
je 0x49d130
cmp byte [esp + 0xd69], 0
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x48], edi
je 0x49c344
test byte [ebx + 0x24], 0x40
je 0x49c344
push 0x50e
call fcn.004671c0
mov edx, dword [ebx]
push eax
push edx
call fcn.0049ac10
add esp, 8
jmp 0x49d130
mov eax, dword [ebx]
push 1
push 0
push eax
mov ecx, 0x5229e0
call fcn.00416a50
cmp eax, 1
jne 0x49d130
lea ecx, [esp + 0xf4]
push ecx
mov ecx, 0x5229e0
call fcn.00413350
lea ecx, [esp + 0x21b8]
call fcn.004129c0
lea ecx, [esp + 0x21dc]
call fcn.004129c0
lea ecx, [esp + 0x2200]
call fcn.004129c0
mov eax, dword [ebx]
push 0
lea edx, [esp + 0x15a8]
push edx
push eax
push 0
call fcn.0043b280
test al, al
je 0x49d130
cmp byte [esp + 0xd69], 0
je 0x49c3e9
cmp dword [esp + 0x230], 0
jne 0x49c3ce
cmp byte [esp + 0x23a], 0
je 0x49c3e9
push 0x50e
call fcn.004671c0
mov ecx, dword [ebx]
push eax
push ecx
call fcn.0049ac10
add esp, 8
jmp 0x49d130
push 1
lea edx, [esp + 0x5348]
push edx
push str.Rar_CV
call fcn.0048c720
test al, al
je 0x49d130
lea eax, [esp + 0x5344]
push eax
call fcn.0048cf50
push 1
call fcn.00488820
mov ecx, dword [esp + 0x44]
push 0x400
mov dword [0x51c02c], ecx
push 0x52aca2
mov ecx, 0x5229e0
call fcn.00413320
mov edx, dword [0x522bec]
mov ecx, dword [0x52b4a4]
mov eax, 4
push 0x4c77ac
mov dword [0x528c34], edx
mov dword [0x528208], 1
mov dword [0x528820], eax
mov dword [0x528824], eax
call fcn.00471160
push 0x52aca2
push 0x20a
call fcn.004671c0
push eax
lea eax, [esp + 0x2a4c]
push eax
mov edx, 0x480
call fcn.00483770
add esp, 0xc
lea ecx, [esp + 0x2a44]
push ecx
call fcn.0048d380
cmp byte [0x52881a], 0
mov edx, dword [0x5417d8]
mov dword [esp + 0x14], edx
je 0x49c4bd
mov byte [0x52881a], 0
mov byte [esp + 0x11], 1
push 1
push 0
mov ecx, 0x5229e0
call fcn.00417e10
cmp byte [0x51b788], 0
jne 0x49d10c
mov eax, dword [esp + 0x14]
cmp eax, dword [0x5417d8]
jne 0x49d10c
push 0x53fe40
call fcn.00488c20
mov ecx, dword [0x528254]
xor edi, edi
mov dword [esp + 0x40], ecx
mov byte [0x528352], 0
cmp word [0x5268f2], di
jne 0x49c56e
push edi
lea edx, [esp + 0x28]
push edx
lea eax, [esp + 0x30]
push eax
mov ecx, 0x5229e0
mov dword [esp + 0x34], edi
mov dword [esp + 0x30], edi
call fcn.00413500
cmp dword [esp + 0x24], edi
jbe 0x49c561
push 0x5268f2
push str.Rar_CM
call fcn.0048c630
mov esi, eax
cmp esi, edi
je 0x49c561
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push esi
push ecx
push 1
push edx
call fcn.004b39f8
push esi
call fcn.004b3dae
add esp, 0x14
mov eax, dword [esp + 0x28]
push eax
call fcn.004b1895
add esp, 4
mov esi, dword [esp + 0x18]
mov edx, dword [esi]
push 0x400
lea ecx, [esp + 0x6348]
push ecx
push edx
call fcn.00456d60
xor eax, eax
lea esp, [esp]
movzx ecx, word [esp + eax + 0x568]
mov word [esp + eax + 0x4b44], cx
add eax, 2
cmp cx, di
jne 0x49c590
cmp word [esp + 0x4b44], di
je 0x49c5bf
lea eax, [esp + 0x4b44]
push eax
call fcn.004561a0
mov ecx, dword [esi]
push ecx
call fcn.004461c0
mov byte [esp + 0x10], al
mov ebx, 0x4c7e30
cmp dword [0x528c34], edi
je 0x49c5dd
mov ebx, 0x4c7ad0
cmp word [0x5250f0], 0
je 0x49c5ec
mov ebx, 0x4c7e10
mov esi, dword [esp + 0x18]
mov edx, dword [esi]
push ebx
push edx
call fcn.00456c20
test al, al
je 0x49c705
cmp word [esp + 0x4b44], 0
je 0x49c629
lea eax, [esp + 0x6344]
push eax
lea ecx, [esp + 0x4b48]
push ecx
call fcn.00478290
test eax, eax
jne 0x49c705
mov byte [esp + 0x12], 1
xor eax, eax
movzx ecx, word [esp + eax + 0x5344]
mov word [eax + 0x52aca2], cx
add eax, 2
test cx, cx
jne 0x49c630
push 0x52aca2
call fcn.004561a0
mov edx, dword [esi]
push edx
call fcn.00456820
mov edx, eax
jmp 0x49c660
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x49c660
mov edi, 0x52aca2
sub eax, edx
add edi, 0xfffffffe
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x49c675
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
push 0x52aca2
rep movsb byte es:[edi], byte [esi]
call fcn.00456bb0
mov esi, eax
test esi, esi
je 0x49c81c
xor eax, eax
push 0x52aca2
mov word [esi], ax
call fcn.00456bb0
mov ecx, 0x2e
mov word [esi], cx
test eax, eax
je 0x49c81c
cmp byte [esp + 0x10], 0
je 0x49c81c
cmp dword [esp + 0x174], 0
jne 0x49c81c
cmp dword [esp + 0x218], 0
je 0x49c81c
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 0x49c6f1
jmp 0x49c81c
cmp word [esp + 0x4b44], 0
mov byte [esp + 0x12], 0
je 0x49c774
xor eax, eax
jmp 0x49c720
movzx ecx, word [esp + eax + 0x4b44]
mov word [eax + 0x52aca2], cx
add eax, 2
test cx, cx
jne 0x49c720
mov edx, dword [esi]
push edx
call fcn.00456820
mov edx, eax
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x49c741
mov edi, 0x52aca2
sub eax, edx
add edi, 0xfffffffe
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x49c756
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 0x49c791
mov ecx, dword [esi]
mov edx, 0x52aca2
jmp 0x49c780
movzx eax, word [ecx]
mov word [edx], ax
add ecx, 2
add edx, 2
test ax, ax
jne 0x49c780
push 0x52aca2
call fcn.00456bb0
mov esi, eax
test esi, esi
je 0x49c7e6
xor eax, eax
push 0x52aca2
mov word [esi], ax
call fcn.00456bb0
test eax, eax
je 0x49c7de
push str..tar
push eax
call fcn.00478290
test eax, eax
je 0x49c7e6
cmp byte [esp + 0x10], 0
je 0x49c7de
cmp dword [esp + 0x174], 0
jne 0x49c7de
cmp dword [esp + 0x218], 0
jne 0x49c7e6
mov ecx, 0x2e
mov word [esi], cx
push ebx
push 0x52aca2
call fcn.004587a0
push 0x52aca2
call fcn.00435ac0
test al, al
je 0x49c81c
push 0x50d
call fcn.004671c0
push eax
push 0x52aca2
call fcn.0049ac10
add esp, 8
mov byte [esp + 0x12], 1
mov esi, dword [esp + 0x14]
cmp esi, dword [0x5417d8]
jne 0x49c8c4
lea edx, [esp + 0x5344]
push edx
call fcn.0048cf50
mov ecx, dword [0x52b4a4]
push 0x4c77ac
mov dword [0x528230], 3
mov dword [0x52822c], 2
mov byte [0x52826a], 0
mov byte [0x52826e], 0
call fcn.00471160
push 0x52aca2
call fcn.00456820
push eax
push 0x208
call fcn.004671c0
push eax
lea eax, [esp + 0x2a4c]
push eax
mov edx, 0x480
call fcn.00483770
add esp, 0xc
lea ecx, [esp + 0x2a44]
push ecx
call fcn.0048d380
cmp byte [0x52881a], 0
je 0x49c8b8
mov byte [0x52881a], 0
mov byte [esp + 0x11], 1
push 0
mov ecx, 0x5229e0
call fcn.004179c0
cmp word [0x5268f2], 0
je 0x49c8d8
push 0x5268f2
call fcn.0048c950
cmp byte [0x51b788], 0
mov byte [esp + 0x13], 0
jne 0x49d0fb
cmp esi, dword [0x5417d8]
jne 0x49d0fb
push 1
push 0
push 0x52aca2
mov ecx, 0x5229e0
call fcn.00416a50
cmp eax, 1
jne 0x49d0fb
lea edx, [esp + 0x244]
push edx
mov ecx, 0x5229e0
call fcn.00413350
mov eax, dword [esp + 0x204]
mov ecx, dword [esp + 0x208]
cmp eax, dword [esp + 0x354]
jne 0x49c944
cmp ecx, dword [esp + 0x358]
je 0x49c986
or eax, ecx
je 0x49c986
push 0x4c7b24
lea eax, [esp + 0xf8]
push eax
call fcn.00478290
test eax, eax
jne 0x49c967
cmp dword [esp + 0x218], eax
jne 0x49c986
push 0x50a
call fcn.004671c0
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx]
push eax
push edx
call fcn.0049ac10
add esp, 8
jmp 0x49d0fb
mov eax, dword [esp + 0xd6c]
test eax, eax
je 0x49ca11
mov ecx, dword [esp + 0x210]
push ecx
mov ecx, dword [esp + 0x210]
cdq
push ecx
push edx
push eax
call fcn.004b1ad0
push 0
mov esi, edx
mov edx, dword [esp + 0x364]
push 0x64
mov edi, eax
mov eax, dword [esp + 0x364]
push edx
push eax
call fcn.004b1ad0
cmp esi, edx
jg 0x49ca11
jl 0x49c9d4
cmp edi, eax
jae 0x49ca11
push 0x52aca2
call fcn.00456820
push eax
push 0x50f
call fcn.004671c0
push eax
lea ecx, [esp + 0x2a4c]
push ecx
mov edx, 0x480
call fcn.00483770
add esp, 0xc
lea edx, [esp + 0x2a44]
push edx
call fcn.0048d380
jmp 0x49d0fb
mov ecx, 0x40
mov esi, 0x527cfc
lea edi, [esp + 0x394]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov byte [esp + 0x7388], 3
push 1
call fcn.00488820
mov ecx, 0x40
lea esi, [esp + 0x394]
mov edi, 0x527cfc
rep movsd dword es:[edi], dword [esi]
push 0x400
push 0x52aca2
mov ecx, 0x5229e0
movsw word es:[edi], word [esi]
call fcn.00413320
mov eax, dword [0x522bec]
mov ecx, dword [0x52b4a4]
xor ebx, ebx
push 0x4c77ac
mov dword [0x528c34], eax
mov byte [0x528352], 1
mov dword [0x5282f4], ebx
mov dword [0x528318], ebx
call fcn.00471160
push 0x52aca2
call fcn.00456820
push eax
push 0x20b
call fcn.004671c0
push eax
lea ecx, [esp + 0x2a4c]
push ecx
mov edx, 0x480
call fcn.00483770
add esp, 0xc
lea edx, [esp + 0x2a44]
push edx
call fcn.0048d380
cmp byte [0x52881a], bl
je 0x49cad8
mov byte [0x52881a], bl
mov byte [esp + 0x11], 1
push ebx
push ebx
mov ecx, 0x5229e0
call fcn.00417e10
cmp byte [0x51b788], 0
jne 0x49d0e0
mov eax, dword [esp + 0x14]
cmp eax, dword [0x5417d8]
jne 0x49d0e0
mov ecx, dword [esp + 0x354]
or ecx, dword [esp + 0x358]
jne 0x49cb37
cmp dword [esp + 0x21a8], ebx
jl 0x49cb37
jg 0x49cb29
cmp dword [esp + 0x21a4], 0x200
jb 0x49cb37
cmp dword [esp + 0x1fc], 1
jbe 0x49d0e0
mov eax, dword [esp + 0xd6c]
cmp eax, ebx
je 0x49cb88
mov ecx, dword [esp + 0x210]
push ecx
mov ecx, dword [esp + 0x210]
cdq
push ecx
push edx
push eax
call fcn.004b1ad0
push ebx
mov esi, edx
mov edx, dword [esp + 0x364]
push 0x64
mov edi, eax
mov eax, dword [esp + 0x364]
push edx
push eax
call fcn.004b1ad0
cmp esi, edx
jl 0x49d0e0
jg 0x49cb88
cmp edi, eax
jb 0x49d0e0
push 0x52aca2
mov byte [esp + 0x17], 1
call fcn.00456820
push eax
push 0x25a
call fcn.004671c0
push eax
lea ecx, [esp + 0x2a4c]
push ecx
mov edx, 0x480
call fcn.00483770
add esp, 0xc
lea edx, [esp + 0x2a44]
push edx
call fcn.0048d380
inc dword [esp + 0x20]
mov eax, dword [esp + 0x20c]
add dword [esp + 0x34], eax
mov ecx, dword [esp + 0x210]
mov edx, dword [esp + 0x35c]
adc dword [esp + 0x38], ecx
add dword [esp + 0x2c], edx
mov eax, dword [esp + 0x360]
adc dword [esp + 0x30], eax
cmp byte [esp + 0x12], 0
je 0x49cf5e
mov esi, dword [esp + 0x18]
mov ecx, dword [esi]
push ebx
push 1
push ecx
mov ecx, 0x5229e0
call fcn.00416a50
cmp eax, 1
jne 0x49d0e0
lea ecx, [esp + 0x4c]
call fcn.004710c0
mov byte [esp + 0x7388], 4
mov eax, dword [esi]
lea edx, [esp + 0x4344]
sub edx, eax
lea esp, [esp]
movzx ecx, word [eax]
mov word [eax + edx], cx
add eax, 2
cmp cx, bx
jne 0x49cc40
mov edi, dword [sym.imp.KERNEL32.dll_MoveFileW]
mov byte [esp + 0x10], 0
lea ebx, [ebx]
lea edx, [esp + 0x4344]
push edx
lea eax, [esp + 0x3b48]
push str._s._cvtbackup_
push eax
mov edx, 0x400
call fcn.00483770
add esp, 0xc
lea ecx, [esp + 0x3b44]
push ecx
lea edx, [esp + 0x4348]
push edx
call edi
test eax, eax
je 0x49ce11
lea eax, [esp + 0x4344]
push eax
lea ecx, [esp + 0x50]
call fcn.00471170
lea ecx, [esp + 0x3b44]
push ecx
lea ecx, [esp + 0x50]
call fcn.00471170
push 0x400
lea edx, [esp + 0x4348]
push edx
mov ecx, 0x5229e0
call fcn.00413750
test al, al
je 0x49ccee
lea eax, [esp + 0x4344]
push eax
call fcn.00435ac0
test al, al
jne 0x49cc60
push ebx
push 1
push 0x52aca2
mov ecx, 0x5229e0
call fcn.00416a50
cmp eax, 1
jne 0x49ce16
xor eax, eax
jmp 0x49cd10
movzx ecx, word [eax + 0x52aca2]
mov word [esp + eax + 0x4344], cx
add eax, 2
cmp cx, bx
jne 0x49cd10
mov edi, dword [sym.imp.KERNEL32.dll_CreateFileW]
lea ecx, [ecx]
mov eax, dword [esi]
lea edx, [esp + 0x3b44]
sub edx, eax
jmp 0x49cd40
movzx ecx, word [eax]
mov word [eax + edx], cx
add eax, 2
cmp cx, bx
jne 0x49cd40
lea ecx, [esp + 0x4344]
push ecx
call fcn.00456820
lea edx, [esp + 0x3b44]
push edx
mov esi, eax
call fcn.00456820
jmp 0x49cd70
movzx ecx, word [esi]
mov word [eax], cx
add esi, 2
add eax, 2
cmp cx, bx
jne 0x49cd70
lea eax, [esp + 0x3b44]
push eax
lea ecx, [esp + 0x4348]
push ecx
call dword [sym.imp.KERNEL32.dll_MoveFileW]
test eax, eax
je 0x49ce11
mov eax, dword [esp + 0x40]
cmp eax, ebx
je 0x49cda8
cmp eax, 1
jne 0x49cddc
push ebx
push ebx
push 3
push ebx
push ebx
push 0x40000000
lea edx, [esp + 0x3b5c]
push edx
call edi
mov esi, eax
cmp esi, 0xffffffff
je 0x49cddc
lea eax, [esp + 0x2a34]
push eax
push ebx
push ebx
push esi
call dword [sym.imp.KERNEL32.dll_SetFileTime]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0x400
lea ecx, [esp + 0x4348]
push ecx
mov ecx, 0x5229e0
call fcn.00413750
test al, al
je 0x49ce16
lea edx, [esp + 0x4344]
push edx
call fcn.00435ac0
test al, al
je 0x49ce16
mov esi, dword [esp + 0x18]
jmp 0x49cd30
mov byte [esp + 0x10], 1
xor bl, bl
cmp byte [esp + 0xd68], bl
jne 0x49ce92
push 0x400
lea eax, [esp + 0x3348]
push eax
lea ecx, [esp + 0x54]
mov bl, 1
call fcn.00471480
test al, al
je 0x49ce89
lea ecx, [ecx]
push 0x400
lea ecx, [esp + 0x5b48]
push ecx
lea ecx, [esp + 0x54]
call fcn.00471480
test al, al
je 0x49ce89
lea edx, [esp + 0x3344]
push edx
call fcn.00435ac0
test al, al
jne 0x49ce87
push 0x400
lea eax, [esp + 0x3348]
push eax
lea ecx, [esp + 0x54]
call fcn.00471480
test al, al
jne 0x49ce40
jmp 0x49ce89
xor bl, bl
lea ecx, [esp + 0x4c]
call fcn.00470d20
push 0x400
lea ecx, [esp + 0x3348]
push ecx
lea ecx, [esp + 0x54]
call fcn.00471480
test al, al
je 0x49cf48
mov esi, dword [sym.imp.KERNEL32.dll_MoveFileW]
jmp 0x49cec0
push 0x400
lea edx, [esp + 0x5b48]
push edx
lea ecx, [esp + 0x54]
call fcn.00471480
test al, al
je 0x49cf48
cmp byte [esp + 0x10], 0
jne 0x49cf05
test bl, bl
jne 0x49cf18
lea eax, [esp + 0x5b44]
push eax
push 0
call fcn.004368b0
lea ecx, [esp + 0x5b44]
push ecx
push 0
call fcn.00435dc0
jmp 0x49cf2a
test bl, bl
jne 0x49cf18
lea edx, [esp + 0x3344]
push edx
push 0
call fcn.00435dc0
lea eax, [esp + 0x3344]
push eax
lea ecx, [esp + 0x5b48]
push ecx
call esi
push 0x400
lea edx, [esp + 0x3348]
push edx
lea ecx, [esp + 0x54]
call fcn.00471480
test al, al
jne 0x49cec0
mov byte [esp + 0x7388], 3
lea ecx, [esp + 0x4c]
call fcn.00401bb0
jmp 0x49d0e0
cmp byte [esp + 0xd68], 0
je 0x49d02a
mov esi, dword [esp + 0x18]
mov eax, dword [esi]
push ebx
push 1
push eax
mov ecx, 0x5229e0
call fcn.00416a50
cmp eax, 1
jne 0x49d02a
mov eax, dword [esi]
lea edx, [esp + 0x3344]
sub edx, eax
movzx ecx, word [eax]
mov word [eax + edx], cx
add eax, 2
cmp cx, bx
jne 0x49cf94
lea ecx, [esp + 0x3344]
push ecx
call fcn.00456820
push eax
push 0x258
call fcn.004671c0
push eax
lea edx, [esp + 0x2a4c]
push edx
mov edx, 0x480
call fcn.00483770
add esp, 0xc
lea eax, [esp + 0x2a44]
push eax
call fcn.0048d380
lea ecx, [esp + 0x3344]
push ecx
push ebx
call fcn.004368b0
lea edx, [esp + 0x3344]
push edx
push ebx
call fcn.00435dc0
push 0x400
lea eax, [esp + 0x3348]
push eax
mov ecx, 0x5229e0
call fcn.00413750
test al, al
je 0x49d02a
lea ecx, [esp + 0x3344]
push ecx
call fcn.00435ac0
test al, al
jne 0x49cfa3
push ebx
push 1
push 0x52aca2
mov ecx, 0x5229e0
call fcn.00416a50
cmp eax, 1
jne 0x49d0e0
xor eax, eax
jmp 0x49d050
movzx ecx, word [eax + 0x52aca2]
mov word [esp + eax + 0x3b44], cx
add eax, 2
cmp cx, bx
jne 0x49d050
mov ebx, dword [esp + 0x40]
mov edi, dword [sym.imp.KERNEL32.dll_CreateFileW]
test ebx, ebx
je 0x49d07a
cmp ebx, 1
jne 0x49d0b4
push 0
push 0
push 3
push 0
push 0
push 0x40000000
lea edx, [esp + 0x3b5c]
push edx
call edi
mov esi, eax
cmp esi, 0xffffffff
je 0x49d0b4
lea eax, [esp + 0x2a34]
push eax
push 0
push 0
push esi
call dword [sym.imp.KERNEL32.dll_SetFileTime]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0x400
lea ecx, [esp + 0x3b48]
push ecx
mov ecx, 0x5229e0
call fcn.00413750
test al, al
je 0x49d0e0
lea edx, [esp + 0x3b44]
push edx
call fcn.00435ac0
test al, al
jne 0x49d071
mov byte [esp + 0x7388], 1
lea ecx, [esp + 0x394]
call fcn.0046a880
cmp byte [esp + 0x13], 0
jne 0x49d10c
cmp byte [esp + 0x12], 0
jne 0x49d10c
push 0x52aca2
call fcn.00435da0
lea eax, [esp + 0xd74]
push eax
call fcn.0048cf50
lea ecx, [esp + 0x5344]
push ecx
call fcn.0048cbc0
mov edi, dword [esp + 0x48]
mov esi, dword [sym.imp.USER32.dll_SetDlgItemTextW]
inc dword [esp + 0x1c]
xor ebx, ebx
cmp byte [0x51c858], bl
je 0x49c212
cmp byte [0x51b788], 0
jne 0x49d159
cmp byte [0x51c858], 0
mov eax, 0x4d0
je 0x49d15e
mov eax, 0x271
push eax
call fcn.004671c0
push eax
call fcn.0048d380
cmp byte [0x51c858], 0
je 0x49d182
mov edx, dword [0x51b784]
push edx
call dword [sym.imp.USER32.dll_DestroyWindow]
jmp 0x49d196
push ebx
push ebx
push ebx
push ebx
push ebx
push 1
push ebx
push 1
call fcn.0048e010
call fcn.0048d420
cmp byte [0x51b789], 0
je 0x49d1cf
push ebx
push ebx
lea eax, [esp + 0x6b7c]
push eax
mov ecx, 0x5229e0
call fcn.00416a50
cmp eax, 1
je 0x49d1c6
mov ecx, 0x5220b8
call fcn.00448b30
test al, al
jne 0x49d1d5
cmp byte [0x51b789], 0
jne 0x49d1ea
cmp dword [esp + 0x20], ebx
jbe 0x49d1ea
push 0x52aca2
call fcn.00456820
push eax
mov ecx, 0x5220b8
call fcn.004492b0
cmp byte [esp + 0xd70], 0
je 0x49d205
mov ecx, dword [str.InterfaceConvertProfile]
push ecx
push 0x53fe40
call fcn.00461200
push 0x53fe40
call fcn.004612e0
cmp byte [esp + 0x11], 0
je 0x49d21b
call fcn.0048c280
mov dword [esp + 0x7388], 0xffffffff
lea ecx, [esp + 0x49c]
call fcn.00415030
mov ecx, dword [esp + 0x7380]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x7368]
xor ecx, esp
call fcn.004b102c
mov esp, ebp
pop ebp
ret 4