Function at 0x4c86c0
Capabilities:
Create thread

Disassembly:
push ebp
lea ebp, [esp - 0x3018]
mov eax, 0x3018
call fcn.004e6b50
push 0xffffffffffffffff
push 0x4ff9d8
mov eax, dword fs:[0]
push eax
sub esp, 0x14
mov eax, dword [0x519bc0]
xor eax, ebp
mov dword [ebp + 0x3014], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov esi, dword [ebp + 0x3020]
push 1
call fcn.00469d30
push 0x8005
call dword [sym.imp.KERNEL32.dll_SetErrorMode]
mov ecx, 0x54f7e8
call fcn.00438800
mov byte [0x53e3ea], 0
xor edi, edi
mov dword [0x53d320], edi
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov dword [0x53f480], eax
push edi
push edi
push 1
push edi
call dword [sym.imp.KERNEL32.dll_CreateEventW]
mov dword [0x53f3f0], eax
push str.WMUser_DisplayError
call dword [sym.imp.USER32.dll_RegisterWindowMessageW]
mov dword [0x53d32c], eax
push 0x503a94
call fcn.0049c4a0
test al, al
sete byte [ebp - 0x12]
push 1
push 0x800
lea eax, [ebp]
push eax
call fcn.004537b0
push 0x800
lea ecx, [ebp]
push ecx
call fcn.00452c60
push 0x800
lea edx, [ebp]
push edx
push 0x53d330
call fcn.004694b0
push 0x800
push 0x502d6c
push 0x53d330
call fcn.00469530
push edi
push esi
mov ecx, 0x53119c
call fcn.004634c0
push str.winrar.lng
mov ecx, 0x531178
call fcn.00463260
push esi
call fcn.004c81d0
test eax, eax
je 0x4c8e10
lea ecx, [ebp - 0x20]
call fcn.004bab00
mov dword [ebp - 4], edi
mov dword [0x531150], esi
mov ecx, 0x54be08
call fcn.0047ae70
call fcn.004b1530
call fcn.004b07f0
call fcn.004c6770
push str.WinRAR_Busy
push edi
push edi
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov dword [0x53f47c], eax
push edi
push str.WinRarWindow
mov ebx, dword [sym.imp.USER32.dll_FindWindowW]
call ebx
mov dword [ebp - 0x18], eax
push edi
push esi
push edi
push edi
push SysReAllocString
push SysReAllocString
push SysReAllocString
push SysReAllocString
push 0x6cf0000
push 0x503130
push str.WinRarWindow
push 0x10
call dword [sym.imp.USER32.dll_CreateWindowExW]
mov dword [0x53f484], eax
cmp eax, edi
je 0x4c8e01
push eax
mov ecx, 0x531178
call fcn.00462220
push edi
call fcn.004c61a0
call fcn.004c66c0
cmp byte [ebp - 0x12], 0
je 0x4c8898
call fcn.0049af90
test al, al
jne 0x4c8898
push 1
push edi
call fcn.00482b30
test al, al
mov byte [ebp - 0x11], 1
je 0x4c889c
mov byte [ebp - 0x11], 0
lea eax, [ebp + 0x3000]
push eax
call fcn.0047e9d0
movzx ecx, word [ebp + 0x3000]
push ecx
call sub.USER32.dll_CharUpperW
movzx esi, ax
push 0x8c
push edi
push 0x54e6b0
call fcn.004e7df0
add esp, 0xc
push edi
push edi
push 1
mov ecx, 0x54f7e8
call fcn.0043a810
cmp si, di
je 0x4c8947
cmp byte [0x5517fc], 0
jne 0x4c8947
push esi
push str.AFUMD
call fcn.004e94f5
add esp, 8
test eax, eax
jne 0x4c8908
cmp si, 0x43
jne 0x4c8924
cmp word [ebp + 0x3002], di
jne 0x4c8924
call fcn.004b04c0
cmp si, 0x44
je 0x4c8919
cmp si, 0x43
jne 0x4c894d
xor edx, edx
mov word [0x5507f8], dx
jmp 0x4c894d
cmp byte [0x5517fc], 0
jne 0x4c8947
push esi
push 0x50a698
call fcn.004e94f5
add esp, 8
test eax, eax
je 0x4c8947
push edi
call fcn.004b8490
jmp 0x4c894d
push edi
call fcn.004b0320
push edi
push edi
push 1
mov ecx, 0x54f7e8
call fcn.0043a810
push 0x54f7e8
mov ecx, 0x53f8b8
call fcn.0041a180
xor eax, eax
lea esp, [esp]
movzx ecx, word [eax + 0x55abfa]
mov word [eax + 0x53e3f0], cx
add eax, 2
cmp cx, di
jne 0x4c8970
xor eax, eax
mov word [0x55abfa], ax
push 0x800
lea ecx, [ebp + 0x1000]
push ecx
call fcn.004b4e40
lea edx, [ebp + 0x1000]
push edx
mov ecx, 0x549cb8
call fcn.00490010
mov dword [0x53e344], edi
mov byte [ebp - 4], 1
call fcn.0047fcf0
mov dword [ebp - 4], edi
mov eax, dword [0x53f484]
push eax
call fcn.004c6250
cmp word [0x554914], di
je 0x4c8a18
push 0x554914
call fcn.004534c0
cmp eax, 0x554914
jne 0x4c89fd
push 0x800
push 0x554914
push 0x53d330
call fcn.00453690
jmp 0x4c8a18
mov ecx, 0x554914
mov edx, 0x53d330
movzx eax, word [ecx]
mov word [edx], ax
add ecx, 2
add edx, 2
cmp ax, di
jne 0x4c8a07
push edi
push edi
push 0x8003
mov ecx, dword [0x53f484]
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [0x53f484], edi
je 0x4c8bb4
cmp word [0x559bda], di
jne 0x4c8d83
xor bl, bl
cmp word [0x55abfa], di
je 0x4c8d5f
push 0x55abfa
call fcn.00444f30
cmp eax, 0xffffffff
je 0x4c8a69
test al, 0x10
je 0x4c8a69
mov bl, 1
cmp word [0x55abfa], di
je 0x4c8d3e
test bl, bl
jne 0x4c8d42
push edi
push str.ReuseWindow
push 0x503a94
call fcn.0049c560
test eax, eax
je 0x4c8b7e
cmp dword [ebp - 0x18], edi
je 0x4c8b7e
push edi
push 0x800
lea edx, [ebp + 0x2000]
push edx
call fcn.004b3b10
push 0x800
lea eax, [ebp + 0x2000]
push eax
call fcn.00452c60
push 0x800
push str.Rar_
lea ecx, [ebp + 0x2000]
push ecx
call fcn.00469530
lea eax, [ebp + 0x2000]
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, di
jne 0x4c8ae1
sub eax, edx
sar eax, 1
push eax
lea edx, [ebp + 0x2000]
push edx
push 0x55abfa
call fcn.0046cb30
test eax, eax
je 0x4c8b7e
push str.RarArchiveWideName
push 0x1000
push edi
push 0x8000004
push edi
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_CreateFileMappingW]
mov esi, eax
push 0x1000
push edi
push edi
push 2
push esi
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov edi, eax
push 0x800
push edi
push 0x55abfa
mov ecx, 0x549cb8
call fcn.00490060
push edi
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
push 0x7ae964f1
push 0xd489ac5e
push 0x8001
mov eax, dword [ebp - 0x18]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
test eax, eax
setne bl
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
test bl, bl
jne 0x4c8d20
xor edi, edi
push 0x55abfa
mov ecx, 0x549cb8
call fcn.00495770
test al, al
je 0x4c8d20
cmp byte [0x53d329], 0
jne 0x4c8bb4
cmp dword [0x53e3d8], edi
je 0x4c8d0e
mov ecx, 0x549cb8
call fcn.00496040
mov esi, dword [ebp - 0x18]
push esi
push 0x10000
push 0x4c1710
call fcn.004ebd16
add esp, 0xc
mov ecx, dword [0x53f484]
push ecx
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
jne 0x4c8be9
cmp esi, edi
setne dl
movzx eax, dl
push eax
call fcn.004c6460
mov ecx, dword [0x53f484]
push ecx
call dword [sym.imp.USER32.dll_UpdateWindow]
cmp byte [ebp - 0x11], 0
je 0x4c8c25
cmp byte [ebp - 0x12], 0
je 0x4c8c25
push 0x5039b8
call fcn.0049c4a0
test al, al
jne 0x4c8c25
push str..rar
call fcn.0048d440
test al, al
jne 0x4c8c25
push 6
call fcn.00482920
push edi
push str.ExportedSettings
push 0x501a20
call fcn.0049c560
test eax, eax
je 0x4c8c3e
call fcn.00482820
push edi
push 1
call fcn.0049cfb0
push edi
push str.WizardMode
push 0x503a94
call fcn.0049c560
test eax, eax
je 0x4c8c80
mov edx, dword [0x53f484]
push edx
call fcn.004cd240
test al, al
je 0x4c8c80
cmp dword [0x53e3d8], edi
jne 0x4c8c80
mov eax, dword [0x53f484]
push eax
call dword [sym.imp.USER32.dll_DestroyWindow]
mov edi, edi
push edi
push edi
call fcn.004c8330
test al, al
jne 0x4c8c80
mov ecx, 0x54be04
call fcn.004c8ed0
call fcn.004bbe10
mov byte [0x53e3ea], 1
mov ecx, dword [0x53f3f0]
push ecx
call dword [sym.imp.KERNEL32.dll_SetEvent]
xor esi, esi
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [0x53d320], 0
jle 0x4c8ccc
push 0x64
call edi
dec esi
cmp esi, 0xc8
jl 0x4c8cb6
mov edx, dword [0x53f3f0]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [0x53e340], 0
je 0x4c8dda
mov dword [0x53e340], 0xffffffff
xor esi, esi
cmp dword [0x53e340], 0
je 0x4c8df7
push 0x64
call edi
inc esi
cmp esi, 0xa
jl 0x4c8cf2
jmp 0x4c8df7
mov ecx, dword [0x53f484]
push ecx
call dword [sym.imp.USER32.dll_DestroyWindow]
jmp 0x4c8bb4
call fcn.004bbfa0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x20]
call fcn.004bab60
mov eax, 1
jmp 0x4c8e41
test bl, bl
je 0x4c8d5f
push 0x55abfa
call fcn.004c6510
push 1
push 0x55abfa
mov ecx, 0x549cb8
call fcn.00495890
jmp 0x4c8d69
mov ecx, 0x549cb8
call fcn.00490da0
push edi
mov ecx, 0x549cb8
call fcn.00494c40
mov ecx, 0x549cb0
call fcn.00478f80
jmp 0x4c8bb4
push 0x54e6b0
call fcn.00480870
call fcn.004bbfa0
cmp dword [0x53e344], 1
jne 0x4c8bb4
push edi
push str.WinRarWindow
call ebx
test eax, eax
sete dl
movzx eax, dl
push eax
push 1
call fcn.004be010
mov ecx, 0x531168
call fcn.00448010
mov esi, dword [0x531158]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x20]
call fcn.004bab60
mov eax, esi
jmp 0x4c8e41
push 0
push str.WinRarWindow
call dword [sym.imp.USER32.dll_FindWindowW]
test eax, eax
sete al
movzx ecx, al
push ecx
push 1
call fcn.004be010
mov ecx, 0x531168
call fcn.00448010
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x20]
call fcn.004bab60
xor eax, eax
jmp 0x4c8e41
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x3014]
xor ecx, ebp
call fcn.004e6b3a
add ebp, 0x3018
mov esp, ebp
pop ebp
ret 0x10