Function at 0x4c1b10
Capabilities:
Create thread

Disassembly:
push ebp
lea ebp, [esp - 0x3018]
mov eax, 0x3018
call fcn.004df840
push 0xffffffffffffffff
push 0x4f81a8
mov eax, dword fs:[0]
push eax
sub esp, 0x14
mov eax, dword [0x50fb70]
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.00467330
push 0x8005
call dword [sym.imp.KERNEL32.dll_SetErrorMode]
mov ecx, 0x545770
call fcn.00436a60
mov byte [0x535459], 0
xor edi, edi
mov dword [0x533380], edi
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov dword [0x5354d8], eax
push edi
push edi
push 1
push edi
call dword [sym.imp.KERNEL32.dll_CreateEventW]
mov dword [0x535440], eax
push str.WMUser_DisplayError
call dword [sym.imp.USER32.dll_RegisterWindowMessageW]
mov dword [0x53338c], eax
push str.General
call fcn.00496770
test al, al
sete byte [ebp - 0x12]
push 1
push 0x800
lea eax, [ebp]
push eax
call fcn.00451530
push 0x800
lea ecx, [ebp]
push ecx
call fcn.00450c80
push 0x800
lea edx, [ebp]
push edx
push 0x533390
call fcn.00466b20
push 0x800
push 0x4fabbc
push 0x533390
call fcn.00466ba0
push edi
push esi
mov ecx, 0x5275fc
call fcn.00461370
push str.winrar.lng
mov ecx, 0x5275d8
call fcn.00461110
push esi
call fcn.004c1630
test eax, eax
je 0x4c225e
lea ecx, [ebp - 0x20]
call fcn.004b4510
mov dword [ebp - 4], edi
mov dword [0x5275b0], esi
mov ecx, 0x541e38
call fcn.004782b0
call fcn.004ab180
call fcn.004aa430
call fcn.004bfb10
push str.WinRAR_Busy
push edi
push edi
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov dword [0x5354d4], 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 0x4fafa0
push str.WinRarWindow
push 0x10
call dword [sym.imp.USER32.dll_CreateWindowExW]
mov dword [0x5354dc], eax
cmp eax, edi
je 0x4c224f
push eax
mov ecx, 0x5275d8
call fcn.00460150
push edi
call fcn.004bf700
call fcn.004bfa60
cmp byte [ebp - 0x12], 0
je 0x4c1cdf
push 1
push edi
call fcn.0047fbb0
test al, al
mov byte [ebp - 0x11], 1
je 0x4c1ce3
mov byte [ebp - 0x11], 0
lea eax, [ebp + 0x3000]
push eax
call fcn.0047baa0
movzx ecx, word [ebp + 0x3000]
push ecx
call fcn.0046a090
movzx esi, ax
push 0x8c
push edi
push 0x544638
call fcn.004e0730
add esp, 0xc
push edi
push edi
push 1
mov ecx, 0x545770
call fcn.00438a70
cmp si, di
je 0x4c1d8e
cmp byte [0x547784], 0
jne 0x4c1d8e
push esi
push str.AFUMD
call fcn.004e28c5
add esp, 8
test eax, eax
jne 0x4c1d4f
cmp si, 0x43
jne 0x4c1d6b
cmp word [ebp + 0x3002], di
jne 0x4c1d6b
call fcn.004aa170
cmp si, 0x44
je 0x4c1d60
cmp si, 0x43
jne 0x4c1d94
xor edx, edx
mov word [0x546780], dx
jmp 0x4c1d94
cmp byte [0x547784], 0
jne 0x4c1d8e
push esi
push 0x501e8c
call fcn.004e28c5
add esp, 8
test eax, eax
je 0x4c1d8e
push edi
call fcn.004b1eb0
jmp 0x4c1d94
push edi
call fcn.004a9ff0
push edi
push edi
push 1
mov ecx, 0x545770
call fcn.00438a70
push 0x545770
mov ecx, 0x535910
call fcn.004193c0
xor eax, eax
jmp 0x4c1dc0
movzx ecx, word [eax + 0x550b7a]
mov word [eax + 0x534440], cx
add eax, 2
cmp cx, di
jne 0x4c1dc0
xor eax, eax
mov word [0x550b7a], ax
push 0x800
lea ecx, [ebp + 0x1000]
push ecx
call fcn.004ae940
lea edx, [ebp + 0x1000]
push edx
mov ecx, 0x53fd10
call fcn.0048be50
mov dword [0x5343a4], edi
mov byte [ebp - 4], 1
call fcn.0047cd90
mov dword [ebp - 4], edi
mov eax, dword [0x5354dc]
push eax
call fcn.004bf7b0
cmp word [0x54a898], di
je 0x4c1e68
push 0x54a898
call fcn.00451140
cmp eax, 0x54a898
jne 0x4c1e4d
push 0x800
push 0x54a898
push 0x533390
call fcn.00451310
jmp 0x4c1e68
mov ecx, 0x54a898
mov edx, 0x533390
movzx eax, word [ecx]
mov word [edx], ax
add ecx, 2
add edx, 2
cmp ax, di
jne 0x4c1e57
push edi
push edi
push 0x8003
mov ecx, dword [0x5354dc]
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [0x5354dc], edi
je 0x4c2004
cmp word [0x54fb5a], di
jne 0x4c21d1
xor bl, bl
cmp word [0x550b7a], di
je 0x4c21ad
push 0x550b7a
call fcn.00442fd0
cmp eax, 0xffffffff
je 0x4c1eb9
test al, 0x10
je 0x4c1eb9
mov bl, 1
cmp word [0x550b7a], di
je 0x4c218e
test bl, bl
jne 0x4c2192
push edi
push str.ReuseWindow
push str.General
call fcn.00496890
test eax, eax
je 0x4c1fce
cmp dword [ebp - 0x18], edi
je 0x4c1fce
push edi
push 0x800
lea edx, [ebp + 0x2000]
push edx
call fcn.004ad670
push 0x800
lea eax, [ebp + 0x2000]
push eax
call fcn.00450c80
push 0x800
push str.Rar_
lea ecx, [ebp + 0x2000]
push ecx
call fcn.00466ba0
lea eax, [ebp + 0x2000]
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, di
jne 0x4c1f31
sub eax, edx
sar eax, 1
push eax
lea edx, [ebp + 0x2000]
push edx
push 0x550b7a
call fcn.00469f30
test eax, eax
je 0x4c1fce
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 0x550b7a
mov ecx, 0x53fd10
call fcn.0048bea0
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 0x4c2170
xor edi, edi
push 0x550b7a
mov ecx, 0x53fd10
call fcn.00491290
test al, al
je 0x4c2170
cmp byte [0x533389], 0
jne 0x4c2004
cmp dword [0x534430], edi
je 0x4c215e
mov ecx, 0x53fd10
call fcn.004919e0
mov esi, dword [ebp - 0x18]
push esi
push 0x10000
push 0x4bbb00
call fcn.004e4d01
add esp, 0xc
mov ecx, dword [0x5354dc]
push ecx
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
jne 0x4c2039
cmp esi, edi
setne dl
movzx eax, dl
push eax
call fcn.004bf800
mov ecx, dword [0x5354dc]
push ecx
call dword [sym.imp.USER32.dll_UpdateWindow]
cmp byte [ebp - 0x11], 0
je 0x4c2075
cmp byte [ebp - 0x12], 0
je 0x4c2075
push str.Setup
call fcn.00496770
test al, al
jne 0x4c2075
push str..rar
call fcn.00489360
test al, al
jne 0x4c2075
push 6
call fcn.0047f9a0
push edi
push str.ExportedSettings
push 0x4f9a98
call fcn.00496890
test eax, eax
je 0x4c208e
call fcn.0047f8a0
push edi
push 1
call fcn.004970f0
push edi
push str.WizardMode
push str.General
call fcn.00496890
test eax, eax
je 0x4c20d0
mov edx, dword [0x5354dc]
push edx
call fcn.004c65b0
test al, al
je 0x4c20d0
cmp dword [0x534430], edi
jne 0x4c20d0
mov eax, dword [0x5354dc]
push eax
call dword [sym.imp.USER32.dll_DestroyWindow]
mov edi, edi
push edi
push edi
call fcn.004c1790
test al, al
jne 0x4c20d0
mov ecx, 0x53fd0c
call fcn.004c2320
call fcn.004b5810
mov byte [0x535459], 1
mov ecx, dword [0x535440]
push ecx
call dword [sym.imp.KERNEL32.dll_SetEvent]
xor esi, esi
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [0x533380], 0
jle 0x4c211c
push 0x64
call edi
dec esi
cmp esi, 0xc8
jl 0x4c2106
mov edx, dword [0x535440]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [0x5343a0], 0
je 0x4c2228
mov dword [0x5343a0], 0xffffffff
xor esi, esi
cmp dword [0x5343a0], 0
je 0x4c2245
push 0x64
call edi
inc esi
cmp esi, 0xa
jl 0x4c2142
jmp 0x4c2245
mov ecx, dword [0x5354dc]
push ecx
call dword [sym.imp.USER32.dll_DestroyWindow]
jmp 0x4c2004
call fcn.004b5990
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x20]
call fcn.004b4580
mov eax, 1
jmp 0x4c228f
test bl, bl
je 0x4c21ad
push 0x550b7a
call fcn.004bf8b0
push 0x550b7a
mov ecx, 0x53fd10
call fcn.004913b0
jmp 0x4c21b7
mov ecx, 0x53fd10
call fcn.0048ca50
push edi
mov ecx, 0x53fd10
call fcn.00490780
mov ecx, 0x53fd00
call fcn.004763a0
jmp 0x4c2004
push 0x544638
call fcn.0047d900
call fcn.004b5990
cmp dword [0x5343a4], 1
jne 0x4c2004
push edi
push str.WinRarWindow
call ebx
test eax, eax
sete dl
movzx eax, dl
push eax
push 1
call fcn.004b8fb0
mov ecx, 0x5275c8
call fcn.004460a0
mov esi, dword [0x5275b8]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x20]
call fcn.004b4580
mov eax, esi
jmp 0x4c228f
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.004b8fb0
mov ecx, 0x5275c8
call fcn.004460a0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x20]
call fcn.004b4580
xor eax, eax
jmp 0x4c228f
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.004df824
add ebp, 0x3018
mov esp, ebp
pop ebp
ret 0x10