Function at 0x47ba80
Capabilities:
Write file on windows

Disassembly:
push 0xffffffffffffffff
push 0x4d5646
mov eax, dword fs:[0]
push eax
mov eax, 0x3074
call fcn.004c1320
mov eax, dword [0x4eb0b4]
xor eax, esp
mov dword [esp + 0x3070], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4eb0b4]
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.0043b3a0
mov dword [esp + 0x3090], 0
push 0x800
lea eax, [esp + 0x1088]
push eax
lea ecx, [esp + 0x208c]
push ecx
mov ecx, 0x543fb0
mov byte [ebx + 0x3028], 0
call fcn.00480f00
cmp word [esi + 0x83c2], 0
lea eax, [esi + 0x83c2]
je 0x47bb2f
lea edx, [esp + 0x2084]
sub edx, eax
nop
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x47bb20
cmp word [esi + 0x93c2], 0
lea eax, [esi + 0x93c2]
je 0x47bb5f
lea edx, [esp + 0x1084]
sub edx, eax
jmp 0x47bb50
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x47bb50
push 6
lea ebp, [esi + 0x1010]
push str.WinCon
push ebp
mov dword [esp + 0x3c], ebp
call fcn.00460620
push eax
call fcn.00486ff0
test eax, eax
jne 0x47bb8a
xor edx, edx
mov word [esp + 0x1084], dx
xor eax, eax
mov word [ebx + 0x1024], ax
cmp word [ebp], ax
je 0x47bea9
cmp word [esp + 0x2084], ax
jne 0x47bbbd
cmp word [esp + 0x1084], ax
jne 0x47bbbd
cmp byte [esi + 0xa3c2], al
je 0x47bea9
push ebp
call fcn.0043ccc0
test al, al
je 0x47bea9
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 0x47bbd5
push 0x800
lea edi, [ebx + 0x1024]
push edi
push str.Rar_SF
mov dword [ebx + 0x3024], ebp
call fcn.0049f210
mov esi, eax
test esi, esi
je 0x47be8f
push ebp
mov ecx, ebx
call fcn.00479550
test al, al
je 0x47bc3a
push 0x5f5
call fcn.00475570
push eax
call fcn.004ad030
add esp, 4
push 1
mov ecx, 0x51ef08
call fcn.00433940
jmp 0x47be8f
push esi
push ebp
mov ecx, ebx
call fcn.00479600
test al, al
je 0x47bea9
push esi
call fcn.004c3d02
add esp, 4
push 0x10000
lea ecx, [esp + 0x24]
call fcn.0040c560
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.004796b0
push 0
push edi
mov dword [esp + 0x20], eax
call dword [sym.imp.KERNEL32.dll_BeginUpdateResourceW]
mov esi, eax
test esi, esi
je 0x47bdf7
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 0x47bd38
cmp word [esp + 0x2084], 0
mov ebp, dword [sym.imp.KERNEL32.dll_EnumResourceNamesW]
je 0x47bcef
push esi
push 0x479520
push 3
push edi
call ebp
push esi
push 0x479520
push 0xe
push edi
call ebp
push 0x64
lea eax, [esp + 0x2088]
push eax
push esi
mov ecx, ebx
call fcn.004791e0
mov byte [esp + 0x16], al
cmp word [esp + 0x1084], 0
je 0x47bd2d
cmp word [esp + 0x2084], 0
je 0x47bd0c
cmp byte [esp + 0x16], 0
je 0x47bd2d
push esi
push 0x479520
push 2
push edi
call ebp
push 0x65
lea ecx, [esp + 0x1088]
push ecx
push esi
mov ecx, ebx
call fcn.004793e0
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 0x47bdf7
cmp word [esp + 0x1084], 0
je 0x47bd5f
cmp byte [esp + 0x17], 0
je 0x47bdf7
cmp byte [esp + 0x16], 0
jne 0x47bd7e
cmp byte [esp + 0x17], 0
jne 0x47bd7e
mov edx, dword [esp + 0x1c]
cmp byte [edx + 0xa3c2], 0
je 0x47be25
mov eax, dword [esp + 0x1c]
cmp byte [eax + 0xa3c2], 0
je 0x47bd99
lea eax, [ebx + 0x1024]
push eax
mov ecx, ebx
call fcn.00479870
lea ecx, [esp + 0x3c]
call fcn.00401550
push 0
lea ecx, [esp + 0x40]
push ecx
lea esi, [ebx + 0x1024]
push esi
call fcn.00441780
test al, al
je 0x47be19
mov eax, dword [esp + 0x18]
xor edx, edx
add eax, dword [esp + 0x103c]
adc edx, dword [esp + 0x1040]
mov dword [esp + 0x34], edx
jne 0x47bdda
cmp eax, 0x100000
jbe 0x47be19
push 0x100000
push 0x5a0
call fcn.00475570
push eax
push 0x550472
call fcn.004ad680
add esp, 0xc
mov byte [esp + 0x3090], 0
mov eax, dword [esp + 0x20]
test eax, eax
je 0x47bea9
push eax
call fcn.004c1aa4
add esp, 4
jmp 0x47bea9
push 0x800
push esi
push ebp
call fcn.0047f480
cmp dword [esp + 0x18], 0
mov edi, dword [esp + 0x20]
je 0x47be7a
mov eax, dword [esp + 0x24]
push eax
push edi
lea esi, [ebx + 0x1024]
push esi
mov ecx, ebx
call fcn.004796b0
test eax, eax
jne 0x47be7a
push 0x4db9dc
push esi
call fcn.0049f1e0
mov esi, eax
test esi, esi
je 0x47be7a
push 2
push 0
push esi
call fcn.004c5091
mov ecx, dword [esp + 0x24]
push esi
push ecx
push 1
push edi
call fcn.004c3ee0
push esi
call fcn.004c3d02
add esp, 0x20
mov byte [esp + 0x3090], 0
test edi, edi
je 0x47be8f
push edi
call fcn.004c1aa4
add esp, 4
cmp word [ebx + 0x1024], 0
lea eax, [ebx + 0x1024]
je 0x47bea9
push 4
push eax
mov ecx, ebx
call fcn.0043b3e0
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.004c1302
add esp, 0x3080
ret 4