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

Disassembly:
push 0xffffffffffffffff
push 0x4c4e77
mov eax, dword fs:[0]
push eax
mov eax, 0x735c
call fcn.004b0000
mov eax, dword [0x4d98f0]
xor eax, esp
mov dword [esp + 0x7358], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4d98f0]
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 0x53ee18
mov edx, 0xc8
call fcn.00407130
add esp, 0x10
lea ecx, [esp + 0x394]
call fcn.00444e80
mov ebx, 1
mov dword [esp + 0x7378], ebx
xor ebp, ebp
cmp byte [0x51a779], 0
mov byte [esp + 0xc68], 0
je 0x49b1c8
push 0x400
lea ecx, [esp + 0x6b70]
push ecx
mov ecx, 0x5219d0
call fcn.00413210
push 0x830
lea edx, [esp + 0xc70]
push ebp
push edx
call fcn.004b0470
add esp, 0xc
xor eax, eax
jmp 0x49b130
movzx ecx, word [esp + eax + 0x6b6c]
mov word [esp + eax + 0xc6c], cx
add eax, 2
cmp cx, bp
jne 0x49b130
lea ecx, [esp + 0x20b0]
call fcn.004128b0
lea ecx, [esp + 0x20d4]
call fcn.004128b0
lea ecx, [esp + 0x20f8]
call fcn.004128b0
push ebp
lea eax, [esp + 0x14a0]
push eax
lea ecx, [esp + 0x6b74]
push ecx
push ebp
call fcn.0043ad50
test al, al
je 0x49b1a3
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.00444a90
lea ecx, [esp + 0x394]
call fcn.00444d00
jmp 0x49b27c
lea ecx, [esp + 0x4c]
call fcn.00470340
mov byte [esp + 0x7378], 2
lea edi, [esp + 0x4c]
cmp esi, ebp
je 0x49b1e5
mov edi, esi
jmp 0x49b1f5
push ebp
lea edx, [esp + 0x50]
push edx
mov ecx, 0x5210a8
call fcn.00446320
push ebp
push ebp
push ebp
push ebx
push ebx
lea eax, [esp + 0x3a8]
push eax
push 3
push edi
call fcn.00468dc0
test al, al
jne 0x49b23b
mov byte [esp + 0x7378], 1
lea ecx, [esp + 0x4c]
call fcn.00401e20
mov dword [esp + 0x7378], 0xffffffff
lea ecx, [esp + 0x394]
call fcn.00497f50
jmp 0x49c3d1
xor esi, esi
cmp dword [esp + 0x448], ebp
jbe 0x49b26b
jmp 0x49b250
push esi
lea ecx, [esp + 0x398]
call fcn.00444e20
add esi, ebx
mov dword [eax + 4], ebp
cmp esi, dword [esp + 0x448]
jb 0x49b250
mov byte [esp + 0x7378], 1
lea ecx, [esp + 0x4c]
call fcn.00401e20
mov ecx, dword [str.InterfaceConvertProfile]
push 0x53ee18
push ecx
call fcn.004607c0
mov edx, dword [0x51b8cc]
push edx
mov byte [esp + 0x1a], 0
call dword [sym.imp.USER32.dll_IsWindowVisible]
mov edx, dword [0x5072f0]
neg eax
lea ecx, [esp + 0x394]
push ecx
sbb eax, eax
and eax, dword [0x51b8cc]
push 0x497fb0
push eax
push str.CONVERTARC
push edx
mov dword [esp + 0x38], ebp
call dword [sym.imp.USER32.dll_DialogBoxParamW]
test eax, eax
je 0x49c389
push ebp
push str.Background
push 0x53ee18
call fcn.004604a0
test eax, eax
jne 0x49b300
cmp dword [0x51af94], ebx
jne 0x49b2f9
cmp byte [0x528c2b], al
jne 0x49b300
mov byte [esp + 0x1c], 0
jmp 0x49b305
mov byte [esp + 0x1c], 1
mov eax, dword [esp + 0x1c]
push ebp
push eax
push ebp
push 8
call fcn.0048eba0
push 0x400
lea ecx, [esp + 0xc70]
push ecx
call fcn.0048c120
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 [0x51b010], ebp
mov dword [0x51b014], ebp
mov dword [esp + 0x44], edi
cmp dword [esp + 0x448], ebp
jbe 0x49b388
push esi
lea ecx, [esp + 0x398]
call fcn.00444e20
test byte [eax + 4], 2
je 0x49b379
mov edx, dword [eax + 8]
add dword [0x51b010], edx
mov eax, dword [eax + 0xc]
adc dword [0x51b014], eax
add edi, ebx
add esi, ebx
cmp esi, dword [esp + 0x448]
jb 0x49b352
mov dword [esp + 0x44], edi
push 0x480
lea ecx, [esp + 0x2940]
push ecx
push ebp
push edi
call fcn.0044c0c0
mov eax, dword [0x51a774]
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 [0x51b848], 0
mov dword [0x51b838], ebp
mov dword [0x51b83c], ebp
mov dword [esp + 0x20], ebp
jne 0x49bb85
cmp byte [0x51a778], 0
jne 0x49bb9c
mov edx, dword [esp + 0x24]
push 0x480
lea ecx, [esp + 0x2940]
push ecx
push ebp
push edx
call fcn.0044c0c0
mov ecx, dword [0x51a774]
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.0044c0c0
mov eax, dword [0x51a774]
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.0044c0c0
mov edx, dword [0x51a774]
lea ecx, [esp + 0x293c]
push ecx
push 0x68
push edx
call esi
cmp edi, 0xffffffff
je 0x49b49e
push edi
lea eax, [esp + 0x6340]
push eax
lea ecx, [esp + 0x39c]
call fcn.00444c50
mov ecx, dword [eax + 0x800]
add dword [0x51b838], ecx
mov edx, dword [eax + 0x804]
adc dword [0x51b83c], edx
or edi, 0xffffffff
call fcn.0048ddd0
mov eax, dword [esp + 0x20]
cmp eax, dword [esp + 0x448]
jge 0x49bb85
mov ecx, eax
push ecx
lea ecx, [esp + 0x398]
call fcn.00444e20
mov ebx, eax
test byte [ebx + 4], 2
mov dword [esp + 0x18], ebx
je 0x49bb74
cmp byte [esp + 0xc61], 0
mov edi, dword [esp + 0x20]
mov dword [esp + 0x48], edi
je 0x49b506
test byte [ebx + 0x24], 0x40
je 0x49b506
push 0x50e
call fcn.00466860
mov edx, dword [ebx]
push eax
push edx
call fcn.00499dd0
add esp, 8
jmp 0x49bb74
mov eax, dword [ebx]
push 1
push ebp
push eax
mov ecx, 0x5219d0
call fcn.004169e0
cmp eax, 1
jne 0x49bb74
lea ecx, [esp + 0xf4]
push ecx
mov ecx, 0x5219d0
call fcn.00413240
lea ecx, [esp + 0x20b0]
call fcn.004128b0
lea ecx, [esp + 0x20d4]
call fcn.004128b0
lea ecx, [esp + 0x20f8]
call fcn.004128b0
mov eax, dword [ebx]
push ebp
lea edx, [esp + 0x14a0]
push edx
push eax
push ebp
call fcn.0043ad50
test al, al
je 0x49bb74
cmp byte [esp + 0xc61], 0
je 0x49b5a7
cmp dword [esp + 0x230], ebp
jne 0x49b58c
cmp byte [esp + 0x23a], 0
je 0x49b5a7
push 0x50e
call fcn.00466860
mov ecx, dword [ebx]
push eax
push ecx
call fcn.00499dd0
add esp, 8
jmp 0x49bb74
push 1
lea edx, [esp + 0x5340]
push edx
push str.Rar_CV
call fcn.0048b8d0
test al, al
je 0x49bb74
lea eax, [esp + 0x533c]
push eax
call fcn.0048c100
push 1
call fcn.004878e0
mov ecx, dword [esp + 0x44]
push 0x400
mov dword [0x51b01c], ecx
push 0x529c92
mov ecx, 0x5219d0
call fcn.00413210
mov edx, dword [0x521bdc]
mov ecx, dword [0x52a494]
mov eax, 4
push 0x4c67ac
mov dword [0x527c24], edx
mov dword [0x5271f8], 1
mov dword [0x527810], eax
mov dword [0x527814], eax
call fcn.004703e0
push 0x529c92
push 0x20a
call fcn.00466860
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.0048c530
cmp byte [0x52780a], 0
mov edx, dword [0x5407b0]
mov dword [esp + 0x1c], edx
je 0x49b67b
mov byte [0x52780a], 0
mov byte [esp + 0x16], 1
push 1
push ebp
mov ecx, 0x5219d0
call fcn.00417d90
cmp byte [0x51a778], 0
jne 0x49bb50
mov eax, dword [esp + 0x1c]
cmp eax, dword [0x5407b0]
jne 0x49bb50
push 0x53ee18
call fcn.00487ce0
mov ecx, dword [0x527244]
mov dword [esp + 0x40], ecx
mov byte [0x527342], 0
cmp word [0x5258e2], bp
jne 0x49b729
push ebp
lea edx, [esp + 0x2c]
push edx
lea eax, [esp + 0x34]
push eax
mov ecx, 0x5219d0
mov dword [esp + 0x38], ebp
mov dword [esp + 0x34], ebp
call fcn.004133f0
cmp dword [esp + 0x28], ebp
jbe 0x49b71c
push 0x5258e2
push str.Rar_CM
call fcn.0048b7e0
mov esi, eax
cmp esi, ebp
je 0x49b71c
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
push esi
push ecx
push 1
push edx
call fcn.004b29b8
push esi
call fcn.004b2d6e
add esp, 0x14
mov eax, dword [esp + 0x2c]
push eax
call fcn.004b0855
add esp, 4
mov esi, dword [esp + 0x18]
mov edx, dword [esi]
push 0x400
lea ecx, [esp + 0x6340]
push ecx
push edx
call fcn.004563d0
xor eax, eax
jmp 0x49b750
movzx ecx, word [esp + eax + 0x460]
mov word [esp + eax + 0x4b3c], cx
add eax, 2
cmp cx, bp
jne 0x49b750
cmp word [esp + 0x4b3c], bp
je 0x49b77f
lea eax, [esp + 0x4b3c]
push eax
call fcn.00455810
mov ecx, dword [esi]
push ecx
call fcn.00445b10
mov byte [esp + 0x17], al
mov ebx, 0x4c6e30
cmp dword [0x527c24], ebp
je 0x49b79d
mov ebx, 0x4c6acc
cmp word [0x5240e0], bp
je 0x49b7ab
mov ebx, 0x4c6e10
mov esi, dword [esp + 0x18]
mov edx, dword [esi]
push ebx
push edx
call fcn.00456290
test al, al
je 0x49b8c4
cmp word [esp + 0x4b3c], bp
je 0x49b7e7
lea eax, [esp + 0x633c]
push eax
lea ecx, [esp + 0x4b40]
push ecx
call fcn.00477400
test eax, eax
jne 0x49b8c4
mov byte [esp + 0x15], 1
xor eax, eax
mov edi, edi
movzx ecx, word [esp + eax + 0x533c]
mov word [eax + 0x529c92], cx
add eax, 2
cmp cx, bp
jne 0x49b7f0
push 0x529c92
call fcn.00455810
mov edx, dword [esi]
push edx
call fcn.00455e90
mov edx, eax
jmp 0x49b820
mov cx, word [eax]
add eax, 2
cmp cx, bp
jne 0x49b820
mov edi, 0x529c92
sub eax, edx
add edi, 0xfffffffe
mov cx, word [edi + 2]
add edi, 2
cmp cx, bp
jne 0x49b835
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
push 0x529c92
rep movsb byte es:[edi], byte [esi]
call fcn.00456220
mov esi, eax
cmp esi, ebp
je 0x49b9da
xor eax, eax
push 0x529c92
mov word [esi], ax
call fcn.00456220
mov ecx, 0x2e
mov word [esi], cx
cmp eax, ebp
je 0x49b9da
cmp byte [esp + 0x17], 0
je 0x49b9da
cmp dword [esp + 0x174], ebp
jne 0x49b9da
cmp dword [esp + 0x218], ebp
je 0x49b9da
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 0x49b8b0
jmp 0x49b9da
mov byte [esp + 0x15], 0
cmp word [esp + 0x4b3c], bp
je 0x49b934
xor eax, eax
jmp 0x49b8e0
movzx ecx, word [esp + eax + 0x4b3c]
mov word [eax + 0x529c92], cx
add eax, 2
cmp cx, bp
jne 0x49b8e0
mov edx, dword [esi]
push edx
call fcn.00455e90
mov edx, eax
mov cx, word [eax]
add eax, 2
cmp cx, bp
jne 0x49b901
mov edi, 0x529c92
sub eax, edx
add edi, 0xfffffffe
mov cx, word [edi + 2]
add edi, 2
cmp cx, bp
jne 0x49b916
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 0x49b951
mov ecx, dword [esi]
mov edx, 0x529c92
jmp 0x49b940
movzx eax, word [ecx]
mov word [edx], ax
add ecx, 2
add edx, 2
cmp ax, bp
jne 0x49b940
push 0x529c92
call fcn.00456220
mov esi, eax
cmp esi, ebp
je 0x49b9a4
xor eax, eax
push 0x529c92
mov word [esi], ax
call fcn.00456220
cmp eax, ebp
je 0x49b99c
push str..tar
push eax
call fcn.00477400
test eax, eax
je 0x49b9a4
cmp byte [esp + 0x17], 0
je 0x49b99c
cmp dword [esp + 0x174], ebp
jne 0x49b99c
cmp dword [esp + 0x218], ebp
jne 0x49b9a4
mov ecx, 0x2e
mov word [esi], cx
push ebx
push 0x529c92
call fcn.00457e10
push 0x529c92
call fcn.00435620
test al, al
je 0x49b9da
push 0x50d
call fcn.00466860
push eax
push 0x529c92
call fcn.00499dd0
add esp, 8
mov byte [esp + 0x15], 1
mov esi, dword [esp + 0x1c]
cmp esi, dword [0x5407b0]
jne 0x49ba81
lea edx, [esp + 0x533c]
push edx
call fcn.0048c100
mov ecx, dword [0x52a494]
push 0x4c67ac
mov dword [0x527220], 3
mov dword [0x52721c], 2
mov byte [0x52725a], 0
mov byte [0x52725e], 0
call fcn.004703e0
push 0x529c92
call fcn.00455e90
push eax
push 0x208
call fcn.00466860
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.0048c530
cmp byte [0x52780a], 0
je 0x49ba76
mov byte [0x52780a], 0
mov byte [esp + 0x16], 1
push ebp
mov ecx, 0x5219d0
call fcn.00417940
cmp word [0x5258e2], bp
je 0x49ba94
push 0x5258e2
call fcn.0048bb00
cmp byte [0x51a778], 0
jne 0x49bb3f
cmp esi, dword [0x5407b0]
jne 0x49bb3f
push 1
push ebp
push 0x529c92
mov ecx, 0x5219d0
call fcn.004169e0
cmp eax, 1
jne 0x49bb3f
lea edx, [esp + 0x244]
push edx
mov ecx, 0x5219d0
call fcn.00413240
mov eax, dword [esp + 0x204]
mov ecx, dword [esp + 0x208]
cmp eax, dword [esp + 0x354]
jne 0x49bafa
cmp ecx, dword [esp + 0x358]
je 0x49bbcc
or eax, ecx
je 0x49bbcc
push 0x4c6b20
lea eax, [esp + 0xf8]
push eax
call fcn.00477400
test eax, eax
jne 0x49bb25
cmp dword [esp + 0x218], ebp
jne 0x49bbcc
push 0x50a
call fcn.00466860
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx]
push eax
push edx
call fcn.00499dd0
add esp, 8
cmp byte [esp + 0x15], 0
jne 0x49bb50
push 0x529c92
call fcn.00435910
lea eax, [esp + 0xc6c]
push eax
call fcn.0048c100
lea ecx, [esp + 0x533c]
push ecx
call fcn.0048bd70
mov edi, dword [esp + 0x48]
mov esi, dword [sym.imp.USER32.dll_SetDlgItemTextW]
inc dword [esp + 0x20]
cmp byte [0x51b848], 0
je 0x49b3d4
cmp byte [0x51a778], 0
jne 0x49bb9c
cmp byte [0x51b848], 0
mov eax, 0x4d0
je 0x49bba1
mov eax, 0x271
push eax
call fcn.00466860
push eax
call fcn.0048c530
cmp byte [0x51b848], 0
je 0x49c321
mov edx, dword [0x51a774]
push edx
call dword [sym.imp.USER32.dll_DestroyWindow]
jmp 0x49c335
mov eax, dword [esp + 0xc64]
cmp eax, ebp
je 0x49bc52
mov ecx, dword [esp + 0x210]
push ecx
mov ecx, dword [esp + 0x210]
cdq
push ecx
push edx
push eax
call fcn.004b0a90
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.004b0a90
cmp esi, edx
jg 0x49bc52
jl 0x49bc15
cmp edi, eax
jae 0x49bc52
push 0x529c92
call fcn.00455e90
push eax
push 0x50f
call fcn.00466860
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.0048c530
jmp 0x49bb3f
xor eax, eax
jmp 0x49bc60
movzx ecx, word [eax + 0x526cec]
mov word [esp + eax + 0x323c], cx
add eax, 2
cmp cx, bp
jne 0x49bc60
push 1
call fcn.004878e0
xor eax, eax
movzx ecx, word [esp + eax + 0x323c]
mov word [eax + 0x526cec], cx
add eax, 2
cmp cx, bp
jne 0x49bc80
push 0x400
push 0x529c92
mov ecx, 0x5219d0
call fcn.00413210
mov eax, dword [0x521bdc]
mov ecx, dword [0x52a494]
push 0x4c67ac
mov dword [0x527c24], eax
mov byte [0x527342], 1
mov dword [0x5272e4], ebp
mov dword [0x527308], ebp
call fcn.004703e0
push 0x529c92
call fcn.00455e90
push eax
push 0x20b
call fcn.00466860
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.0048c530
cmp byte [0x52780a], 0
je 0x49bd25
mov byte [0x52780a], 0
mov byte [esp + 0x16], 1
push ebp
push ebp
mov ecx, 0x5219d0
call fcn.00417d90
cmp byte [0x51a778], 0
jne 0x49bb3f
mov eax, dword [esp + 0x1c]
cmp eax, dword [0x5407b0]
jne 0x49bb3f
mov ecx, dword [esp + 0x354]
or ecx, dword [esp + 0x358]
jne 0x49bd84
cmp dword [esp + 0x20a0], ebp
jl 0x49bd84
jg 0x49bd76
cmp dword [esp + 0x209c], 0x200
jb 0x49bd84
cmp dword [esp + 0x1fc], 1
jbe 0x49bb3f
mov eax, dword [esp + 0xc64]
cmp eax, ebp
je 0x49bdd5
mov ecx, dword [esp + 0x210]
push ecx
mov ecx, dword [esp + 0x210]
cdq
push ecx
push edx
push eax
call fcn.004b0a90
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.004b0a90
cmp esi, edx
jl 0x49bb3f
jg 0x49bdd5
cmp edi, eax
jb 0x49bb3f
push 0x529c92
call fcn.00455e90
push eax
push 0x25a
call fcn.00466860
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.0048c530
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 0x49c19b
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx]
push ebp
push 1
push edx
mov ecx, 0x5219d0
call fcn.004169e0
cmp eax, 1
jne 0x49bb50
lea ecx, [esp + 0x4c]
call fcn.00470340
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 0x49be85
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 0x49c04a
lea edx, [esp + 0x433c]
push edx
lea ecx, [esp + 0x50]
call fcn.004703f0
lea eax, [esp + 0x3b3c]
push eax
lea ecx, [esp + 0x50]
call fcn.004703f0
push 0x400
lea ecx, [esp + 0x4340]
push ecx
mov ecx, 0x5219d0
call fcn.00413640
test al, al
je 0x49bf2e
lea edx, [esp + 0x433c]
push edx
call fcn.00435620
test al, al
jne 0x49bea0
push ebp
push 1
push 0x529c92
mov ecx, 0x5219d0
call fcn.004169e0
cmp eax, 1
jne 0x49c04f
xor eax, eax
jmp 0x49bf50
movzx ecx, word [eax + 0x529c92]
mov word [esp + eax + 0x433c], cx
add eax, 2
cmp cx, bp
jne 0x49bf50
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 0x49bf80
lea ecx, [esp + 0x433c]
push ecx
call fcn.00455e90
lea edx, [esp + 0x3b3c]
push edx
mov esi, eax
call fcn.00455e90
jmp 0x49bfb0
movzx ecx, word [esi]
mov word [eax], cx
add esi, 2
add eax, 2
cmp cx, bp
jne 0x49bfb0
lea eax, [esp + 0x3b3c]
push eax
lea ecx, [esp + 0x4340]
push ecx
call dword [sym.imp.KERNEL32.dll_MoveFileW]
test eax, eax
je 0x49c04a
cmp ebx, ebp
je 0x49bfe4
cmp ebx, 1
jne 0x49c018
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 0x49c018
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, 0x5219d0
call fcn.00413640
test al, al
je 0x49c04f
lea edx, [esp + 0x433c]
push edx
call fcn.00435620
test al, al
jne 0x49bf71
jmp 0x49c04f
mov byte [esp + 0x15], 1
xor bl, bl
cmp byte [esp + 0xc60], bl
jne 0x49c0d2
push 0x400
lea eax, [esp + 0x3340]
push eax
lea ecx, [esp + 0x54]
mov bl, 1
call fcn.00470700
test al, al
je 0x49c0c9
jmp 0x49c080
push 0x400
lea ecx, [esp + 0x5b40]
push ecx
lea ecx, [esp + 0x54]
call fcn.00470700
test al, al
je 0x49c0c9
lea edx, [esp + 0x333c]
push edx
call fcn.00435620
test al, al
jne 0x49c0c7
push 0x400
lea eax, [esp + 0x3340]
push eax
lea ecx, [esp + 0x54]
call fcn.00470700
test al, al
jne 0x49c080
jmp 0x49c0c9
xor bl, bl
lea ecx, [esp + 0x4c]
call fcn.0046ffa0
push 0x400
lea ecx, [esp + 0x3340]
push ecx
lea ecx, [esp + 0x54]
call fcn.00470700
test al, al
je 0x49c185
mov esi, dword [sym.imp.KERNEL32.dll_MoveFileW]
jmp 0x49c100
push 0x400
lea edx, [esp + 0x5b40]
push edx
lea ecx, [esp + 0x54]
call fcn.00470700
test al, al
je 0x49c185
cmp byte [esp + 0x15], 0
jne 0x49c143
test bl, bl
jne 0x49c155
lea eax, [esp + 0x5b3c]
push eax
push ebp
call fcn.00436420
lea ecx, [esp + 0x5b3c]
push ecx
push ebp
call fcn.00435930
jmp 0x49c167
test bl, bl
jne 0x49c155
lea edx, [esp + 0x333c]
push edx
push ebp
call fcn.00435930
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.00470700
test al, al
jne 0x49c100
mov byte [esp + 0x7378], 1
lea ecx, [esp + 0x4c]
call fcn.00401e20
jmp 0x49bb50
cmp byte [esp + 0xc60], 0
je 0x49c267
mov esi, dword [esp + 0x18]
mov eax, dword [esi]
push ebp
push 1
push eax
mov ecx, 0x5219d0
call fcn.004169e0
cmp eax, 1
jne 0x49c267
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 0x49c1d1
lea ecx, [esp + 0x333c]
push ecx
call fcn.00455e90
push eax
push 0x258
call fcn.00466860
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.0048c530
lea ecx, [esp + 0x333c]
push ecx
push ebp
call fcn.00436420
lea edx, [esp + 0x333c]
push edx
push ebp
call fcn.00435930
push 0x400
lea eax, [esp + 0x3340]
push eax
mov ecx, 0x5219d0
call fcn.00413640
test al, al
je 0x49c267
lea ecx, [esp + 0x333c]
push ecx
call fcn.00435620
test al, al
jne 0x49c1e0
push ebp
push 1
push 0x529c92
mov ecx, 0x5219d0
call fcn.004169e0
cmp eax, 1
jne 0x49bb50
xor eax, eax
jmp 0x49c290
movzx ecx, word [eax + 0x529c92]
mov word [esp + eax + 0x3b3c], cx
add eax, 2
cmp cx, bp
jne 0x49c290
mov eax, dword [esp + 0x40]
cmp eax, ebp
je 0x49c2b4
cmp eax, 1
jne 0x49c2ec
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 0x49c2ec
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, 0x5219d0
call fcn.00413640
test al, al
je 0x49bb50
lea edx, [esp + 0x3b3c]
push edx
call fcn.00435620
test al, al
jne 0x49c2a7
jmp 0x49bb50
push ebp
push ebp
push ebp
push ebp
push ebp
push 1
push ebp
push 1
call fcn.0048d1c0
call fcn.0048c5d0
cmp byte [0x51a779], 0
je 0x49c36e
push ebp
push ebp
lea eax, [esp + 0x6b74]
push eax
mov ecx, 0x5219d0
call fcn.004169e0
cmp eax, 1
je 0x49c365
mov ecx, 0x5210a8
call fcn.00448480
test al, al
jne 0x49c374
cmp byte [0x51a779], 0
jne 0x49c389
cmp dword [esp + 0x24], ebp
jbe 0x49c389
push 0x529c92
call fcn.00455e90
push eax
mov ecx, 0x5210a8
call fcn.00448c00
cmp byte [esp + 0xc68], 0
je 0x49c3a4
mov ecx, dword [str.InterfaceConvertProfile]
push ecx
push 0x53ee18
call fcn.004607c0
push 0x53ee18
call fcn.004608a0
cmp byte [esp + 0x16], 0
je 0x49c3ba
call fcn.0048b430
mov dword [esp + 0x7378], 0xffffffff
lea ecx, [esp + 0x394]
call fcn.00414f50
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.004affec
add esp, 0x7368
ret 4