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

Disassembly:
push 0xffffffffffffffff
push 0x4c4557
mov eax, dword fs:[0]
push eax
mov eax, 0x735c
call fcn.004af740
mov eax, dword [0x4d88f0]
xor eax, esp
mov dword [esp + 0x7358], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4d88f0]
xor eax, esp
push eax
lea eax, [esp + 0x7370]
mov dword fs:[0], eax
mov esi, dword [esp + 0x7380]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push eax
mov eax, dword [str.InterfaceConvertProfile]
push eax
push str._s_u
push 0x53de18
mov edx, 0xc8
call fcn.00407130
add esp, 0x10
lea ecx, [esp + 0x394]
call fcn.004447b0
mov ebx, 1
mov dword [esp + 0x7378], ebx
xor ebp, ebp
cmp byte [0x519779], 0
mov byte [esp + 0xc68], 0
je 0x49a968
push 0x400
lea ecx, [esp + 0x6b70]
push ecx
mov ecx, 0x5209d0
call fcn.00413200
push 0x830
lea edx, [esp + 0xc70]
push ebp
push edx
call fcn.004afbb0
add esp, 0xc
xor eax, eax
jmp 0x49a8d0
movzx ecx, word [esp + eax + 0x6b6c]
mov word [esp + eax + 0xc6c], cx
add eax, 2
cmp cx, bp
jne 0x49a8d0
lea ecx, [esp + 0x20b0]
call fcn.004128a0
lea ecx, [esp + 0x20d4]
call fcn.004128a0
lea ecx, [esp + 0x20f8]
call fcn.004128a0
push ebp
lea eax, [esp + 0x14a0]
push eax
lea ecx, [esp + 0x6b74]
push ecx
push ebp
call fcn.0043a670
test al, al
je 0x49a943
mov edx, dword [esp + 0x209c]
mov eax, dword [esp + 0x20a0]
mov dword [esp + 0x146c], edx
mov dword [esp + 0x1470], eax
lea ecx, [esp + 0xc6c]
push ecx
lea ecx, [esp + 0x398]
call fcn.004443c0
lea ecx, [esp + 0x394]
call fcn.00444630
jmp 0x49aa1c
lea ecx, [esp + 0x4c]
call fcn.0046fac0
mov byte [esp + 0x7378], 2
lea edi, [esp + 0x4c]
cmp esi, ebp
je 0x49a985
mov edi, esi
jmp 0x49a995
push ebp
lea edx, [esp + 0x50]
push edx
mov ecx, 0x5200a8
call fcn.00445c40
push ebp
push ebp
push ebp
push ebx
push ebx
lea eax, [esp + 0x3a8]
push eax
push 3
push edi
call fcn.00468540
test al, al
jne 0x49a9db
mov byte [esp + 0x7378], 1
lea ecx, [esp + 0x4c]
call fcn.00401e20
mov dword [esp + 0x7378], 0xffffffff
lea ecx, [esp + 0x394]
call fcn.00497700
jmp 0x49bb71
xor esi, esi
cmp dword [esp + 0x448], ebp
jbe 0x49aa0b
jmp 0x49a9f0
push esi
lea ecx, [esp + 0x398]
call fcn.00444750
add esi, ebx
mov dword [eax + 4], ebp
cmp esi, dword [esp + 0x448]
jb 0x49a9f0
mov byte [esp + 0x7378], 1
lea ecx, [esp + 0x4c]
call fcn.00401e20
mov ecx, dword [str.InterfaceConvertProfile]
push 0x53de18
push ecx
call fcn.0045ff60
mov edx, dword [0x51a8cc]
push edx
mov byte [esp + 0x1a], 0
call dword [sym.imp.USER32.dll_IsWindowVisible]
mov edx, dword [0x5062f0]
neg eax
lea ecx, [esp + 0x394]
push ecx
sbb eax, eax
and eax, dword [0x51a8cc]
push 0x497750
push eax
push str.CONVERTARC
push edx
mov dword [esp + 0x38], ebp
call dword [sym.imp.USER32.dll_DialogBoxParamW]
test eax, eax
je 0x49bb29
push ebp
push 0x4cb020
push 0x53de18
call fcn.0045fc40
test eax, eax
jne 0x49aaa0
cmp dword [0x519f94], ebx
jne 0x49aa99
cmp byte [0x527c2b], al
jne 0x49aaa0
mov byte [esp + 0x1c], 0
jmp 0x49aaa5
mov byte [esp + 0x1c], 1
mov eax, dword [esp + 0x1c]
push ebp
push eax
push ebp
push 8
call fcn.0048e310
push 0x400
lea ecx, [esp + 0xc70]
push ecx
call fcn.0048b890
xor edi, edi
xor esi, esi
mov dword [esp + 0x38], ebp
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x30], ebp
mov dword [esp + 0x34], ebp
mov dword [0x51a010], ebp
mov dword [0x51a014], ebp
mov dword [esp + 0x44], edi
cmp dword [esp + 0x448], ebp
jbe 0x49ab28
push esi
lea ecx, [esp + 0x398]
call fcn.00444750
test byte [eax + 4], 2
je 0x49ab19
mov edx, dword [eax + 8]
add dword [0x51a010], edx
mov eax, dword [eax + 0xc]
adc dword [0x51a014], eax
add edi, ebx
add esi, ebx
cmp esi, dword [esp + 0x448]
jb 0x49aaf2
mov dword [esp + 0x44], edi
push 0x480
lea ecx, [esp + 0x2940]
push ecx
push ebp
push edi
call fcn.0044b9d0
mov eax, dword [0x519774]
mov esi, dword [sym.imp.USER32.dll_SetDlgItemTextW]
lea edx, [esp + 0x293c]
push edx
push 0x65
push eax
call esi
or edi, 0xffffffff
cmp byte [0x51a848], 0
mov dword [0x51a838], ebp
mov dword [0x51a83c], ebp
mov dword [esp + 0x20], ebp
jne 0x49b325
cmp byte [0x519778], 0
jne 0x49b33c
mov edx, dword [esp + 0x24]
push 0x480
lea ecx, [esp + 0x2940]
push ecx
push ebp
push edx
call fcn.0044b9d0
mov ecx, dword [0x519774]
lea eax, [esp + 0x293c]
push eax
push 0x66
push ecx
call esi
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x38]
push 0x480
lea edx, [esp + 0x2940]
push edx
push eax
push ecx
call fcn.0044b9d0
mov eax, dword [0x519774]
lea edx, [esp + 0x293c]
push edx
push 0x67
push eax
call esi
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x30]
push 0x480
lea ecx, [esp + 0x2940]
push ecx
push edx
push eax
call fcn.0044b9d0
mov edx, dword [0x519774]
lea ecx, [esp + 0x293c]
push ecx
push 0x68
push edx
call esi
cmp edi, 0xffffffff
je 0x49ac3e
push edi
lea eax, [esp + 0x6340]
push eax
lea ecx, [esp + 0x39c]
call fcn.00444580
mov ecx, dword [eax + 0x800]
add dword [0x51a838], ecx
mov edx, dword [eax + 0x804]
adc dword [0x51a83c], edx
or edi, 0xffffffff
call fcn.0048d540
mov eax, dword [esp + 0x20]
cmp eax, dword [esp + 0x448]
jge 0x49b325
mov ecx, eax
push ecx
lea ecx, [esp + 0x398]
call fcn.00444750
mov ebx, eax
test byte [ebx + 4], 2
mov dword [esp + 0x18], ebx
je 0x49b314
cmp byte [esp + 0xc61], 0
mov edi, dword [esp + 0x20]
mov dword [esp + 0x48], edi
je 0x49aca6
test byte [ebx + 0x24], 0x40
je 0x49aca6
push 0x50e
call fcn.00465ff0
mov edx, dword [ebx]
push eax
push edx
call fcn.00499570
add esp, 8
jmp 0x49b314
mov eax, dword [ebx]
push 1
push ebp
push eax
mov ecx, 0x5209d0
call fcn.004169d0
cmp eax, 1
jne 0x49b314
lea ecx, [esp + 0xf4]
push ecx
mov ecx, 0x5209d0
call fcn.00413230
lea ecx, [esp + 0x20b0]
call fcn.004128a0
lea ecx, [esp + 0x20d4]
call fcn.004128a0
lea ecx, [esp + 0x20f8]
call fcn.004128a0
mov eax, dword [ebx]
push ebp
lea edx, [esp + 0x14a0]
push edx
push eax
push ebp
call fcn.0043a670
test al, al
je 0x49b314
cmp byte [esp + 0xc61], 0
je 0x49ad47
cmp dword [esp + 0x230], ebp
jne 0x49ad2c
cmp byte [esp + 0x23a], 0
je 0x49ad47
push 0x50e
call fcn.00465ff0
mov ecx, dword [ebx]
push eax
push ecx
call fcn.00499570
add esp, 8
jmp 0x49b314
push 1
lea edx, [esp + 0x5340]
push edx
push str.Rar_CV
call fcn.0048b040
test al, al
je 0x49b314
lea eax, [esp + 0x533c]
push eax
call fcn.0048b870
push 1
call fcn.00487070
mov ecx, dword [esp + 0x44]
push 0x400
mov dword [0x51a01c], ecx
push 0x528c92
mov ecx, 0x5209d0
call fcn.00413200
mov edx, dword [0x520bdc]
mov ecx, dword [0x529494]
mov eax, 4
push 0x4c57ac
mov dword [0x526c24], edx
mov dword [0x5261f8], 1
mov dword [0x526810], eax
mov dword [0x526814], eax
call fcn.0046fb60
push 0x528c92
push 0x20a
call fcn.00465ff0
push eax
lea eax, [esp + 0x2944]
push eax
mov edx, 0x480
call fcn.00407130
add esp, 0xc
lea ecx, [esp + 0x293c]
push ecx
call fcn.0048bca0
cmp byte [0x52680a], 0
mov edx, dword [0x53f7b0]
mov dword [esp + 0x1c], edx
je 0x49ae1b
mov byte [0x52680a], 0
mov byte [esp + 0x16], 1
push 1
push ebp
mov ecx, 0x5209d0
call fcn.00417d80
cmp byte [0x519778], 0
jne 0x49b2f0
mov eax, dword [esp + 0x1c]
cmp eax, dword [0x53f7b0]
jne 0x49b2f0
push 0x53de18
call fcn.00487470
mov ecx, dword [0x526244]
mov dword [esp + 0x40], ecx
mov byte [0x526342], 0
cmp word [0x5248e2], bp
jne 0x49aec9
push ebp
lea edx, [esp + 0x2c]
push edx
lea eax, [esp + 0x34]
push eax
mov ecx, 0x5209d0
mov dword [esp + 0x38], ebp
mov dword [esp + 0x34], ebp
call fcn.004133e0
cmp dword [esp + 0x28], ebp
jbe 0x49aebc
push 0x5248e2
push str.Rar_CM
call fcn.0048af50
mov esi, eax
cmp esi, ebp
je 0x49aebc
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
push esi
push ecx
push 1
push edx
call fcn.004b20f8
push esi
call fcn.004b24ae
add esp, 0x14
mov eax, dword [esp + 0x2c]
push eax
call fcn.004aff95
add esp, 4
mov esi, dword [esp + 0x18]
mov edx, dword [esi]
push 0x400
lea ecx, [esp + 0x6340]
push ecx
push edx
call fcn.00455c80
xor eax, eax
jmp 0x49aef0
movzx ecx, word [esp + eax + 0x460]
mov word [esp + eax + 0x4b3c], cx
add eax, 2
cmp cx, bp
jne 0x49aef0
cmp word [esp + 0x4b3c], bp
je 0x49af1f
lea eax, [esp + 0x4b3c]
push eax
call fcn.004550c0
mov ecx, dword [esi]
push ecx
call fcn.00445430
mov byte [esp + 0x17], al
mov ebx, 0x4c5e30
cmp dword [0x526c24], ebp
je 0x49af3d
mov ebx, 0x4c5acc
cmp word [0x5230e0], bp
je 0x49af4b
mov ebx, 0x4c5e10
mov esi, dword [esp + 0x18]
mov edx, dword [esi]
push ebx
push edx
call fcn.00455b40
test al, al
je 0x49b064
cmp word [esp + 0x4b3c], bp
je 0x49af87
lea eax, [esp + 0x633c]
push eax
lea ecx, [esp + 0x4b40]
push ecx
call fcn.00476b80
test eax, eax
jne 0x49b064
mov byte [esp + 0x15], 1
xor eax, eax
mov edi, edi
movzx ecx, word [esp + eax + 0x533c]
mov word [eax + 0x528c92], cx
add eax, 2
cmp cx, bp
jne 0x49af90
push 0x528c92
call fcn.004550c0
mov edx, dword [esi]
push edx
call fcn.00455740
mov edx, eax
jmp 0x49afc0
mov cx, word [eax]
add eax, 2
cmp cx, bp
jne 0x49afc0
mov edi, 0x528c92
sub eax, edx
add edi, 0xfffffffe
mov cx, word [edi + 2]
add edi, 2
cmp cx, bp
jne 0x49afd5
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
push 0x528c92
rep movsb byte es:[edi], byte [esi]
call fcn.00455ad0
mov esi, eax
cmp esi, ebp
je 0x49b17a
xor eax, eax
push 0x528c92
mov word [esi], ax
call fcn.00455ad0
mov ecx, 0x2e
mov word [esi], cx
cmp eax, ebp
je 0x49b17a
cmp byte [esp + 0x17], 0
je 0x49b17a
cmp dword [esp + 0x174], ebp
jne 0x49b17a
cmp dword [esp + 0x218], ebp
je 0x49b17a
mov edx, eax
mov ecx, esi
sub edx, esi
nop
movzx eax, word [ecx]
mov word [edx + ecx], ax
add ecx, 2
cmp ax, bp
jne 0x49b050
jmp 0x49b17a
mov byte [esp + 0x15], 0
cmp word [esp + 0x4b3c], bp
je 0x49b0d4
xor eax, eax
jmp 0x49b080
movzx ecx, word [esp + eax + 0x4b3c]
mov word [eax + 0x528c92], cx
add eax, 2
cmp cx, bp
jne 0x49b080
mov edx, dword [esi]
push edx
call fcn.00455740
mov edx, eax
mov cx, word [eax]
add eax, 2
cmp cx, bp
jne 0x49b0a1
mov edi, 0x528c92
sub eax, edx
add edi, 0xfffffffe
mov cx, word [edi + 2]
add edi, 2
cmp cx, bp
jne 0x49b0b6
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 0x49b0f1
mov ecx, dword [esi]
mov edx, 0x528c92
jmp 0x49b0e0
movzx eax, word [ecx]
mov word [edx], ax
add ecx, 2
add edx, 2
cmp ax, bp
jne 0x49b0e0
push 0x528c92
call fcn.00455ad0
mov esi, eax
cmp esi, ebp
je 0x49b144
xor eax, eax
push 0x528c92
mov word [esi], ax
call fcn.00455ad0
cmp eax, ebp
je 0x49b13c
push str..tar
push eax
call fcn.00476b80
test eax, eax
je 0x49b144
cmp byte [esp + 0x17], 0
je 0x49b13c
cmp dword [esp + 0x174], ebp
jne 0x49b13c
cmp dword [esp + 0x218], ebp
jne 0x49b144
mov ecx, 0x2e
mov word [esi], cx
push ebx
push 0x528c92
call fcn.004576c0
push 0x528c92
call fcn.00434f20
test al, al
je 0x49b17a
push 0x50d
call fcn.00465ff0
push eax
push 0x528c92
call fcn.00499570
add esp, 8
mov byte [esp + 0x15], 1
mov esi, dword [esp + 0x1c]
cmp esi, dword [0x53f7b0]
jne 0x49b221
lea edx, [esp + 0x533c]
push edx
call fcn.0048b870
mov ecx, dword [0x529494]
push 0x4c57ac
mov dword [0x526220], 3
mov dword [0x52621c], 2
mov byte [0x52625a], 0
mov byte [0x52625e], 0
call fcn.0046fb60
push 0x528c92
call fcn.00455740
push eax
push 0x208
call fcn.00465ff0
push eax
lea eax, [esp + 0x2944]
push eax
mov edx, 0x480
call fcn.00407130
add esp, 0xc
lea ecx, [esp + 0x293c]
push ecx
call fcn.0048bca0
cmp byte [0x52680a], 0
je 0x49b216
mov byte [0x52680a], 0
mov byte [esp + 0x16], 1
push ebp
mov ecx, 0x5209d0
call fcn.00417930
cmp word [0x5248e2], bp
je 0x49b234
push 0x5248e2
call fcn.0048b270
cmp byte [0x519778], 0
jne 0x49b2df
cmp esi, dword [0x53f7b0]
jne 0x49b2df
push 1
push ebp
push 0x528c92
mov ecx, 0x5209d0
call fcn.004169d0
cmp eax, 1
jne 0x49b2df
lea edx, [esp + 0x244]
push edx
mov ecx, 0x5209d0
call fcn.00413230
mov eax, dword [esp + 0x204]
mov ecx, dword [esp + 0x208]
cmp eax, dword [esp + 0x354]
jne 0x49b29a
cmp ecx, dword [esp + 0x358]
je 0x49b36c
or eax, ecx
je 0x49b36c
push 0x4c5b20
lea eax, [esp + 0xf8]
push eax
call fcn.00476b80
test eax, eax
jne 0x49b2c5
cmp dword [esp + 0x218], ebp
jne 0x49b36c
push 0x50a
call fcn.00465ff0
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx]
push eax
push edx
call fcn.00499570
add esp, 8
cmp byte [esp + 0x15], 0
jne 0x49b2f0
push 0x528c92
call fcn.00435220
lea eax, [esp + 0xc6c]
push eax
call fcn.0048b870
lea ecx, [esp + 0x533c]
push ecx
call fcn.0048b4e0
mov edi, dword [esp + 0x48]
mov esi, dword [sym.imp.USER32.dll_SetDlgItemTextW]
inc dword [esp + 0x20]
cmp byte [0x51a848], 0
je 0x49ab74
cmp byte [0x519778], 0
jne 0x49b33c
cmp byte [0x51a848], 0
mov eax, 0x4d0
je 0x49b341
mov eax, 0x271
push eax
call fcn.00465ff0
push eax
call fcn.0048bca0
cmp byte [0x51a848], 0
je 0x49bac1
mov edx, dword [0x519774]
push edx
call dword [sym.imp.USER32.dll_DestroyWindow]
jmp 0x49bad5
mov eax, dword [esp + 0xc64]
cmp eax, ebp
je 0x49b3f2
mov ecx, dword [esp + 0x210]
push ecx
mov ecx, dword [esp + 0x210]
cdq
push ecx
push edx
push eax
call fcn.004b01d0
push ebp
mov esi, edx
mov edx, dword [esp + 0x364]
push 0x64
mov edi, eax
mov eax, dword [esp + 0x364]
push edx
push eax
call fcn.004b01d0
cmp esi, edx
jg 0x49b3f2
jl 0x49b3b5
cmp edi, eax
jae 0x49b3f2
push 0x528c92
call fcn.00455740
push eax
push 0x50f
call fcn.00465ff0
push eax
lea ecx, [esp + 0x2944]
push ecx
mov edx, 0x480
call fcn.00407130
add esp, 0xc
lea edx, [esp + 0x293c]
push edx
call fcn.0048bca0
jmp 0x49b2df
xor eax, eax
jmp 0x49b400
movzx ecx, word [eax + 0x525cec]
mov word [esp + eax + 0x323c], cx
add eax, 2
cmp cx, bp
jne 0x49b400
push 1
call fcn.00487070
xor eax, eax
movzx ecx, word [esp + eax + 0x323c]
mov word [eax + 0x525cec], cx
add eax, 2
cmp cx, bp
jne 0x49b420
push 0x400
push 0x528c92
mov ecx, 0x5209d0
call fcn.00413200
mov eax, dword [0x520bdc]
mov ecx, dword [0x529494]
push 0x4c57ac
mov dword [0x526c24], eax
mov byte [0x526342], 1
mov dword [0x5262e4], ebp
mov dword [0x526308], ebp
call fcn.0046fb60
push 0x528c92
call fcn.00455740
push eax
push 0x20b
call fcn.00465ff0
push eax
lea ecx, [esp + 0x2944]
push ecx
mov edx, 0x480
call fcn.00407130
add esp, 0xc
lea edx, [esp + 0x293c]
push edx
call fcn.0048bca0
cmp byte [0x52680a], 0
je 0x49b4c5
mov byte [0x52680a], 0
mov byte [esp + 0x16], 1
push ebp
push ebp
mov ecx, 0x5209d0
call fcn.00417d80
cmp byte [0x519778], 0
jne 0x49b2df
mov eax, dword [esp + 0x1c]
cmp eax, dword [0x53f7b0]
jne 0x49b2df
mov ecx, dword [esp + 0x354]
or ecx, dword [esp + 0x358]
jne 0x49b524
cmp dword [esp + 0x20a0], ebp
jl 0x49b524
jg 0x49b516
cmp dword [esp + 0x209c], 0x200
jb 0x49b524
cmp dword [esp + 0x1fc], 1
jbe 0x49b2df
mov eax, dword [esp + 0xc64]
cmp eax, ebp
je 0x49b575
mov ecx, dword [esp + 0x210]
push ecx
mov ecx, dword [esp + 0x210]
cdq
push ecx
push edx
push eax
call fcn.004b01d0
push ebp
mov esi, edx
mov edx, dword [esp + 0x364]
push 0x64
mov edi, eax
mov eax, dword [esp + 0x364]
push edx
push eax
call fcn.004b01d0
cmp esi, edx
jl 0x49b2df
jg 0x49b575
cmp edi, eax
jb 0x49b2df
push 0x528c92
call fcn.00455740
push eax
push 0x25a
call fcn.00465ff0
push eax
lea ecx, [esp + 0x2944]
push ecx
mov edx, 0x480
call fcn.00407130
add esp, 0xc
lea edx, [esp + 0x293c]
push edx
call fcn.0048bca0
inc dword [esp + 0x24]
mov eax, dword [esp + 0x20c]
add dword [esp + 0x38], eax
mov ecx, dword [esp + 0x210]
mov edx, dword [esp + 0x35c]
adc dword [esp + 0x3c], ecx
add dword [esp + 0x30], edx
mov eax, dword [esp + 0x360]
adc dword [esp + 0x34], eax
cmp byte [esp + 0x15], 0
je 0x49b93b
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx]
push ebp
push 1
push edx
mov ecx, 0x5209d0
call fcn.004169d0
cmp eax, 1
jne 0x49b2f0
lea ecx, [esp + 0x4c]
call fcn.0046fac0
mov byte [esp + 0x7378], 3
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
lea edx, [esp + 0x433c]
sub edx, eax
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
cmp cx, bp
jne 0x49b625
mov esi, dword [sym.imp.KERNEL32.dll_MoveFileW]
mov byte [esp + 0x15], 0
nop
lea ecx, [esp + 0x433c]
push ecx
lea edx, [esp + 0x3b40]
push str._s._cvtbackup_
push edx
mov edx, 0x400
call fcn.00407130
add esp, 0xc
lea eax, [esp + 0x3b3c]
push eax
lea ecx, [esp + 0x4340]
push ecx
call esi
test eax, eax
je 0x49b7ea
lea edx, [esp + 0x433c]
push edx
lea ecx, [esp + 0x50]
call fcn.0046fb70
lea eax, [esp + 0x3b3c]
push eax
lea ecx, [esp + 0x50]
call fcn.0046fb70
push 0x400
lea ecx, [esp + 0x4340]
push ecx
mov ecx, 0x5209d0
call fcn.00413630
test al, al
je 0x49b6ce
lea edx, [esp + 0x433c]
push edx
call fcn.00434f20
test al, al
jne 0x49b640
push ebp
push 1
push 0x528c92
mov ecx, 0x5209d0
call fcn.004169d0
cmp eax, 1
jne 0x49b7ef
xor eax, eax
jmp 0x49b6f0
movzx ecx, word [eax + 0x528c92]
mov word [esp + eax + 0x433c], cx
add eax, 2
cmp cx, bp
jne 0x49b6f0
mov edi, dword [sym.imp.KERNEL32.dll_CreateFileW]
mov ebx, dword [esp + 0x40]
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
lea edx, [esp + 0x3b3c]
sub edx, eax
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
cmp cx, bp
jne 0x49b720
lea ecx, [esp + 0x433c]
push ecx
call fcn.00455740
lea edx, [esp + 0x3b3c]
push edx
mov esi, eax
call fcn.00455740
jmp 0x49b750
movzx ecx, word [esi]
mov word [eax], cx
add esi, 2
add eax, 2
cmp cx, bp
jne 0x49b750
lea eax, [esp + 0x3b3c]
push eax
lea ecx, [esp + 0x4340]
push ecx
call dword [sym.imp.KERNEL32.dll_MoveFileW]
test eax, eax
je 0x49b7ea
cmp ebx, ebp
je 0x49b784
cmp ebx, 1
jne 0x49b7b8
push ebp
push ebp
push 3
push ebp
push ebp
push 0x40000000
lea edx, [esp + 0x3b54]
push edx
call edi
mov esi, eax
cmp esi, 0xffffffff
je 0x49b7b8
lea eax, [esp + 0x292c]
push eax
push ebp
push ebp
push esi
call dword [sym.imp.KERNEL32.dll_SetFileTime]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0x400
lea ecx, [esp + 0x4340]
push ecx
mov ecx, 0x5209d0
call fcn.00413630
test al, al
je 0x49b7ef
lea edx, [esp + 0x433c]
push edx
call fcn.00434f20
test al, al
jne 0x49b711
jmp 0x49b7ef
mov byte [esp + 0x15], 1
xor bl, bl
cmp byte [esp + 0xc60], bl
jne 0x49b872
push 0x400
lea eax, [esp + 0x3340]
push eax
lea ecx, [esp + 0x54]
mov bl, 1
call fcn.0046fe80
test al, al
je 0x49b869
jmp 0x49b820
push 0x400
lea ecx, [esp + 0x5b40]
push ecx
lea ecx, [esp + 0x54]
call fcn.0046fe80
test al, al
je 0x49b869
lea edx, [esp + 0x333c]
push edx
call fcn.00434f20
test al, al
jne 0x49b867
push 0x400
lea eax, [esp + 0x3340]
push eax
lea ecx, [esp + 0x54]
call fcn.0046fe80
test al, al
jne 0x49b820
jmp 0x49b869
xor bl, bl
lea ecx, [esp + 0x4c]
call fcn.0046f720
push 0x400
lea ecx, [esp + 0x3340]
push ecx
lea ecx, [esp + 0x54]
call fcn.0046fe80
test al, al
je 0x49b925
mov esi, dword [sym.imp.KERNEL32.dll_MoveFileW]
jmp 0x49b8a0
push 0x400
lea edx, [esp + 0x5b40]
push edx
lea ecx, [esp + 0x54]
call fcn.0046fe80
test al, al
je 0x49b925
cmp byte [esp + 0x15], 0
jne 0x49b8e3
test bl, bl
jne 0x49b8f5
lea eax, [esp + 0x5b3c]
push eax
push ebp
call fcn.00435d30
lea ecx, [esp + 0x5b3c]
push ecx
push ebp
call fcn.00435240
jmp 0x49b907
test bl, bl
jne 0x49b8f5
lea edx, [esp + 0x333c]
push edx
push ebp
call fcn.00435240
lea eax, [esp + 0x333c]
push eax
lea ecx, [esp + 0x5b40]
push ecx
call esi
push 0x400
lea edx, [esp + 0x3340]
push edx
lea ecx, [esp + 0x54]
call fcn.0046fe80
test al, al
jne 0x49b8a0
mov byte [esp + 0x7378], 1
lea ecx, [esp + 0x4c]
call fcn.00401e20
jmp 0x49b2f0
cmp byte [esp + 0xc60], 0
je 0x49ba07
mov esi, dword [esp + 0x18]
mov eax, dword [esi]
push ebp
push 1
push eax
mov ecx, 0x5209d0
call fcn.004169d0
cmp eax, 1
jne 0x49ba07
mov eax, dword [esi]
lea edx, [esp + 0x333c]
sub edx, eax
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
cmp cx, bp
jne 0x49b971
lea ecx, [esp + 0x333c]
push ecx
call fcn.00455740
push eax
push 0x258
call fcn.00465ff0
push eax
lea edx, [esp + 0x2944]
push edx
mov edx, 0x480
call fcn.00407130
add esp, 0xc
lea eax, [esp + 0x293c]
push eax
call fcn.0048bca0
lea ecx, [esp + 0x333c]
push ecx
push ebp
call fcn.00435d30
lea edx, [esp + 0x333c]
push edx
push ebp
call fcn.00435240
push 0x400
lea eax, [esp + 0x3340]
push eax
mov ecx, 0x5209d0
call fcn.00413630
test al, al
je 0x49ba07
lea ecx, [esp + 0x333c]
push ecx
call fcn.00434f20
test al, al
jne 0x49b980
push ebp
push 1
push 0x528c92
mov ecx, 0x5209d0
call fcn.004169d0
cmp eax, 1
jne 0x49b2f0
xor eax, eax
jmp 0x49ba30
movzx ecx, word [eax + 0x528c92]
mov word [esp + eax + 0x3b3c], cx
add eax, 2
cmp cx, bp
jne 0x49ba30
mov eax, dword [esp + 0x40]
cmp eax, ebp
je 0x49ba54
cmp eax, 1
jne 0x49ba8c
push ebp
push ebp
push 3
push ebp
push ebp
push 0x40000000
lea edx, [esp + 0x3b54]
push edx
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov esi, eax
cmp esi, 0xffffffff
je 0x49ba8c
lea eax, [esp + 0x292c]
push eax
push ebp
push ebp
push esi
call dword [sym.imp.KERNEL32.dll_SetFileTime]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0x400
lea ecx, [esp + 0x3b40]
push ecx
mov ecx, 0x5209d0
call fcn.00413630
test al, al
je 0x49b2f0
lea edx, [esp + 0x3b3c]
push edx
call fcn.00434f20
test al, al
jne 0x49ba47
jmp 0x49b2f0
push ebp
push ebp
push ebp
push ebp
push ebp
push 1
push ebp
push 1
call fcn.0048c930
call fcn.0048bd40
cmp byte [0x519779], 0
je 0x49bb0e
push ebp
push ebp
lea eax, [esp + 0x6b74]
push eax
mov ecx, 0x5209d0
call fcn.004169d0
cmp eax, 1
je 0x49bb05
mov ecx, 0x5200a8
call fcn.00447da0
test al, al
jne 0x49bb14
cmp byte [0x519779], 0
jne 0x49bb29
cmp dword [esp + 0x24], ebp
jbe 0x49bb29
push 0x528c92
call fcn.00455740
push eax
mov ecx, 0x5200a8
call fcn.00448520
cmp byte [esp + 0xc68], 0
je 0x49bb44
mov ecx, dword [str.InterfaceConvertProfile]
push ecx
push 0x53de18
call fcn.0045ff60
push 0x53de18
call fcn.00460040
cmp byte [esp + 0x16], 0
je 0x49bb5a
call fcn.0048aba0
mov dword [esp + 0x7378], 0xffffffff
lea ecx, [esp + 0x394]
call fcn.00414f40
mov ecx, dword [esp + 0x7370]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x7358]
xor ecx, esp
call fcn.004af72c
add esp, 0x7368
ret 4