Function at 0x4a2fb0
Capabilities:
Write file on windows

Disassembly:
push 0xffffffffffffffff
push 0x4fef96
mov eax, dword fs:[0]
push eax
mov eax, 0x3074
call fcn.004e6b50
mov eax, dword [0x519bc0]
xor eax, esp
mov dword [esp + 0x3070], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x519bc0]
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.00443e50
mov dword [esp + 0x3090], 0
push 0x800
lea eax, [esp + 0x1088]
push eax
lea ecx, [esp + 0x208c]
push ecx
mov ecx, 0x54e740
mov byte [ebx + 0x3028], 0
call fcn.004a47a0
cmp word [esi + 0x83ca], 0
lea eax, [esi + 0x83ca]
je 0x4a305f
lea edx, [esp + 0x2084]
sub edx, eax
nop
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x4a3050
cmp word [esi + 0x93ca], 0
lea eax, [esi + 0x93ca]
je 0x4a308f
lea edx, [esp + 0x1084]
sub edx, eax
jmp 0x4a3080
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x4a3080
push 6
lea ebp, [esi + 0x1010]
push str.WinCon
push ebp
mov dword [esp + 0x3c], ebp
call fcn.004534c0
push eax
call fcn.0046cb30
test eax, eax
jne 0x4a30ba
xor edx, edx
mov word [esp + 0x1084], dx
xor eax, eax
mov word [ebx + 0x1024], ax
cmp word [ebp], ax
je 0x4a33db
cmp word [esp + 0x2084], ax
jne 0x4a30ed
cmp word [esp + 0x1084], ax
jne 0x4a30ed
cmp byte [esi + 0xa3ca], al
je 0x4a33db
push ebp
call fcn.00445470
test al, al
je 0x4a33db
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 0x4a3105
push 0x800
lea edi, [ebx + 0x1024]
push edi
push str.Rar_SF
mov dword [ebx + 0x3024], ebp
call fcn.004b43c0
mov esi, eax
test esi, esi
je 0x4a33bf
push ebp
mov ecx, ebx
call fcn.004a0550
test al, al
je 0x4a316a
push 0x5f5
call fcn.00463400
push eax
call fcn.004c2ab0
add esp, 4
push 1
mov ecx, 0x531158
call fcn.0043f180
jmp 0x4a33bf
push esi
push ebp
mov ecx, ebx
call fcn.004a0600
test al, al
je 0x4a33db
push esi
call fcn.004eae6b
add esp, 4
push 0x10000
lea ecx, [esp + 0x24]
call fcn.0040f5c0
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.004a06b0
push 0
push edi
mov dword [esp + 0x20], eax
call dword [sym.imp.KERNEL32.dll_BeginUpdateResourceW]
mov esi, eax
test esi, esi
je 0x4a3327
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 0x4a3268
cmp word [esp + 0x2084], 0
mov ebp, dword [sym.imp.KERNEL32.dll_EnumResourceNamesW]
je 0x4a321f
push esi
push 0x4a0520
push 3
push edi
call ebp
push esi
push 0x4a0520
push 0xe
push edi
call ebp
push 0x64
lea eax, [esp + 0x2088]
push eax
push esi
mov ecx, ebx
call fcn.004a01e0
mov byte [esp + 0x16], al
cmp word [esp + 0x1084], 0
je 0x4a325d
cmp word [esp + 0x2084], 0
je 0x4a323c
cmp byte [esp + 0x16], 0
je 0x4a325d
push esi
push 0x4a0520
push 2
push edi
call ebp
push 0x65
lea ecx, [esp + 0x1088]
push ecx
push esi
mov ecx, ebx
call fcn.004a03e0
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 0x4a3327
cmp word [esp + 0x1084], 0
je 0x4a328f
cmp byte [esp + 0x17], 0
je 0x4a3327
cmp byte [esp + 0x16], 0
jne 0x4a32ae
cmp byte [esp + 0x17], 0
jne 0x4a32ae
mov edx, dword [esp + 0x1c]
cmp byte [edx + 0xa3ca], 0
je 0x4a3355
mov eax, dword [esp + 0x1c]
cmp byte [eax + 0xa3ca], 0
je 0x4a32c9
lea eax, [ebx + 0x1024]
push eax
mov ecx, ebx
call fcn.004a0870
lea ecx, [esp + 0x3c]
call fcn.00402470
push 0
lea ecx, [esp + 0x40]
push ecx
lea esi, [ebx + 0x1024]
push esi
call fcn.00447040
test al, al
je 0x4a3349
mov eax, dword [esp + 0x18]
xor edx, edx
add eax, dword [esp + 0x103c]
adc edx, dword [esp + 0x1040]
mov dword [esp + 0x34], edx
jne 0x4a330a
cmp eax, 0x100000
jbe 0x4a3349
push 0x100000
push 0x5a0
call fcn.00463400
push eax
push 0x55abfa
call fcn.004c3030
add esp, 0xc
mov byte [esp + 0x3090], 0
mov eax, dword [esp + 0x20]
test eax, eax
je 0x4a33db
push eax
call fcn.004e7061
add esp, 4
jmp 0x4a33db
push 0x800
push esi
push ebp
call fcn.004694b0
cmp dword [esp + 0x18], 0
mov edi, dword [esp + 0x20]
je 0x4a33aa
mov eax, dword [esp + 0x24]
push eax
push edi
lea esi, [ebx + 0x1024]
push esi
mov ecx, ebx
call fcn.004a06b0
test eax, eax
jne 0x4a33aa
push 0x506a7c
push esi
call fcn.004b4390
mov esi, eax
test esi, esi
je 0x4a33aa
push 2
push 0
push esi
call fcn.004eb51e
mov ecx, dword [esp + 0x24]
push esi
push ecx
push 1
push edi
call fcn.004eb049
push esi
call fcn.004eae6b
add esp, 0x20
mov byte [esp + 0x3090], 0
test edi, edi
je 0x4a33bf
push edi
call fcn.004e7061
add esp, 4
cmp word [ebx + 0x1024], 0
lea eax, [ebx + 0x1024]
je 0x4a33db
mov edx, dword [ebx]
push 4
push eax
mov eax, dword [edx + 4]
mov ecx, ebx
call eax
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.004e6b3a
add esp, 0x3080
ret 4