Function at 0x47c1f0
Capabilities:
Write file on windows

Disassembly:
push 0xffffffffffffffff
push 0x4d5f36
mov eax, dword fs:[0]
push eax
mov eax, 0x3074
call fcn.004c1c40
mov eax, dword [0x4ec0b4]
xor eax, esp
mov dword [esp + 0x3070], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4ec0b4]
xor eax, esp
push eax
lea eax, [esp + 0x3088]
mov dword fs:[0], eax
mov esi, dword [esp + 0x3098]
mov ebx, ecx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x1c], esi
call fcn.0043ba40
mov dword [esp + 0x3090], 0
push 0x800
lea eax, [esp + 0x1088]
push eax
lea ecx, [esp + 0x208c]
push ecx
mov ecx, 0x544fb8
mov byte [ebx + 0x3028], 0
call fcn.004815c0
cmp word [esi + 0x83c2], 0
lea eax, [esi + 0x83c2]
je 0x47c29f
lea edx, [esp + 0x2084]
sub edx, eax
nop
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x47c290
cmp word [esi + 0x93c2], 0
lea eax, [esi + 0x93c2]
je 0x47c2cf
lea edx, [esp + 0x1084]
sub edx, eax
jmp 0x47c2c0
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x47c2c0
push 6
lea ebp, [esi + 0x1010]
push str.WinCon
push ebp
mov dword [esp + 0x3c], ebp
call fcn.00460c50
push eax
call fcn.004876b0
test eax, eax
jne 0x47c2fa
xor edx, edx
mov word [esp + 0x1084], dx
xor eax, eax
mov word [ebx + 0x1024], ax
cmp word [ebp], ax
je 0x47c619
cmp word [esp + 0x2084], ax
jne 0x47c32d
cmp word [esp + 0x1084], ax
jne 0x47c32d
cmp byte [esi + 0xa3c2], al
je 0x47c619
push ebp
call fcn.0043d340
test al, al
je 0x47c619
lea edx, [ebx + 0x2024]
mov eax, ebp
sub edx, ebp
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x47c345
push 0x800
lea edi, [ebx + 0x1024]
push edi
push str.Rar_SF
mov dword [ebx + 0x3024], ebp
call fcn.0049faf0
mov esi, eax
test esi, esi
je 0x47c5ff
push ebp
mov ecx, ebx
call fcn.00479ca0
test al, al
je 0x47c3aa
push 0x5f5
call fcn.00475cc0
push eax
call fcn.004ad8e0
add esp, 4
push 1
mov ecx, 0x51ff10
call fcn.00433d70
jmp 0x47c5ff
push esi
push ebp
mov ecx, ebx
call fcn.00479d50
test al, al
je 0x47c619
push esi
call fcn.004c4622
add esp, 4
push 0x10000
lea ecx, [esp + 0x24]
call fcn.00402120
mov byte [esp + 0x3090], 1
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x20]
push ecx
push edx
push ebp
mov ecx, ebx
call fcn.00479e00
push 0
push edi
mov dword [esp + 0x20], eax
call dword [sym.imp.KERNEL32.dll_BeginUpdateResourceW]
mov esi, eax
test esi, esi
je 0x47c567
push 3
push 0
push edi
mov byte [esp + 0x22], 0
mov byte [esp + 0x23], 0
call dword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov edi, eax
test edi, edi
je 0x47c4a8
cmp word [esp + 0x2084], 0
mov ebp, dword [sym.imp.KERNEL32.dll_EnumResourceNamesW]
je 0x47c45f
push esi
push 0x479c70
push 3
push edi
call ebp
push esi
push 0x479c70
push 0xe
push edi
call ebp
push 0x64
lea eax, [esp + 0x2088]
push eax
push esi
mov ecx, ebx
call fcn.00479930
mov byte [esp + 0x16], al
cmp word [esp + 0x1084], 0
je 0x47c49d
cmp word [esp + 0x2084], 0
je 0x47c47c
cmp byte [esp + 0x16], 0
je 0x47c49d
push esi
push 0x479c70
push 2
push edi
call ebp
push 0x65
lea ecx, [esp + 0x1088]
push ecx
push esi
mov ecx, ebx
call fcn.00479b30
mov byte [esp + 0x17], al
push edi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov ebp, dword [esp + 0x30]
push 0
push esi
call dword [sym.imp.KERNEL32.dll_EndUpdateResourceW]
test eax, eax
je 0x47c567
cmp word [esp + 0x1084], 0
je 0x47c4cf
cmp byte [esp + 0x17], 0
je 0x47c567
cmp byte [esp + 0x16], 0
jne 0x47c4ee
cmp byte [esp + 0x17], 0
jne 0x47c4ee
mov edx, dword [esp + 0x1c]
cmp byte [edx + 0xa3c2], 0
je 0x47c595
mov eax, dword [esp + 0x1c]
cmp byte [eax + 0xa3c2], 0
je 0x47c509
lea eax, [ebx + 0x1024]
push eax
mov ecx, ebx
call fcn.00479fc0
lea ecx, [esp + 0x3c]
call fcn.00401550
push 0
lea ecx, [esp + 0x40]
push ecx
lea esi, [ebx + 0x1024]
push esi
call fcn.00441e10
test al, al
je 0x47c589
mov eax, dword [esp + 0x18]
xor edx, edx
add eax, dword [esp + 0x103c]
adc edx, dword [esp + 0x1040]
mov dword [esp + 0x34], edx
jne 0x47c54a
cmp eax, 0x100000
jbe 0x47c589
push 0x100000
push 0x5a0
call fcn.00475cc0
push eax
push 0x55147a
call fcn.004adf30
add esp, 0xc
mov byte [esp + 0x3090], 0
mov eax, dword [esp + 0x20]
test eax, eax
je 0x47c619
push eax
call fcn.004c23c4
add esp, 4
jmp 0x47c619
push 0x800
push esi
push ebp
call fcn.0047fbe0
cmp dword [esp + 0x18], 0
mov edi, dword [esp + 0x20]
je 0x47c5ea
mov eax, dword [esp + 0x24]
push eax
push edi
lea esi, [ebx + 0x1024]
push esi
mov ecx, ebx
call fcn.00479e00
test eax, eax
jne 0x47c5ea
push 0x4dc9dc
push esi
call fcn.0049fac0
mov esi, eax
test esi, esi
je 0x47c5ea
push 2
push 0
push esi
call fcn.004c59b1
mov ecx, dword [esp + 0x24]
push esi
push ecx
push 1
push edi
call fcn.004c4800
push esi
call fcn.004c4622
add esp, 0x20
mov byte [esp + 0x3090], 0
test edi, edi
je 0x47c5ff
push edi
call fcn.004c23c4
add esp, 4
cmp word [ebx + 0x1024], 0
lea eax, [ebx + 0x1024]
je 0x47c619
push 4
push eax
mov ecx, ebx
call fcn.0043ba80
mov dword [esp + 0x3090], 0xffffffff
mov eax, ebx
mov ecx, dword [esp + 0x3088]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x3070]
xor ecx, esp
call fcn.004c1c22
add esp, 0x3080
ret 4