Function at 0x46b520
Capabilities:
Write file on windows

Disassembly:
push 0xffffffffffffffff
push 0x4c3336
mov eax, dword fs:[0]
push eax
mov eax, 0x24c8
call fcn.004af5f0
mov eax, dword [0x4d8620]
xor eax, esp
mov dword [esp + 0x24c4], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4d8620]
xor eax, esp
push eax
lea eax, [esp + 0x24dc]
mov dword fs:[0], eax
mov esi, dword [esp + 0x24ec]
mov ebx, ecx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x20], esi
call fcn.00430f40
mov dword [esp + 0x24e4], 0
lea eax, [esp + 0x1cd8]
push eax
lea ecx, [esp + 0x14dc]
push ecx
mov ecx, 0x52f5f8
mov byte [ebx + 0x1c24], 0
call fcn.00470db0
cmp word [esi + 0x435a], 0
lea eax, [esi + 0x435a]
je 0x46b5cf
lea edx, [esp + 0x14d8]
sub edx, eax
lea ebx, [ebx]
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x46b5c0
cmp word [esi + 0x4b5a], 0
lea eax, [esi + 0x4b5a]
je 0x46b5ff
lea edx, [esp + 0x1cd8]
sub edx, eax
jmp 0x46b5f0
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x46b5f0
xor edx, edx
lea edi, [esi + 0x810]
mov word [ebx + 0xc20], dx
mov dword [esp + 0x1c], edi
cmp word [edi], dx
je 0x46b93a
cmp word [esp + 0x14d8], dx
jne 0x46b63b
cmp word [esp + 0x1cd8], dx
jne 0x46b63b
cmp byte [esi + 0x535a], dl
je 0x46b93a
push edi
call fcn.00432420
test al, al
je 0x46b93a
lea edx, [ebx + 0x1420]
mov eax, edi
sub edx, edi
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x46b653
lea eax, [ebx + 0xc20]
push eax
push str.Rar_SF
mov dword [ebx + 0x1c20], edi
call fcn.0048a640
mov esi, eax
test esi, esi
je 0x46b91c
push edi
mov ecx, ebx
call fcn.00469ba0
test al, al
je 0x46b6b3
push 0x5f5
call fcn.00465ec0
push eax
call fcn.004985f0
add esp, 4
push 1
mov ecx, 0x513904
call fcn.00429810
jmp 0x46b91c
push esi
push edi
mov ecx, ebx
call fcn.00469c50
test al, al
je 0x46b93a
push esi
call fcn.004b203e
mov esi, 0x10000
push esi
call fcn.004aee96
mov ebp, eax
add esp, 8
mov dword [esp + 0x28], ebp
test ebp, ebp
jne 0x46b6ec
mov ecx, 0x513904
call fcn.004299a0
mov dword [esp + 0x2c], esi
mov dword [esp + 0x30], esi
mov byte [esp + 0x24e4], 1
push esi
push ebp
push edi
mov ecx, ebx
call fcn.00469d00
push 0
lea edi, [ebx + 0xc20]
push edi
mov dword [esp + 0x20], eax
call dword [sym.imp.KERNEL32.dll_BeginUpdateResourceW]
mov esi, eax
test esi, esi
je 0x46b88b
push 3
push 0
push edi
mov byte [esp + 0x23], 0
mov byte [esp + 0x22], 0
call dword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov edi, eax
test edi, edi
je 0x46b7c8
cmp word [esp + 0x14d8], 0
mov ebp, dword [sym.imp.KERNEL32.dll_EnumResourceNamesW]
je 0x46b77f
push esi
push 0x469b70
push 3
push edi
call ebp
push esi
push 0x469b70
push 0xe
push edi
call ebp
push 0x64
lea eax, [esp + 0x14dc]
push eax
push esi
mov ecx, ebx
call fcn.00469830
mov byte [esp + 0x17], al
cmp word [esp + 0x1cd8], 0
je 0x46b7bd
cmp word [esp + 0x14d8], 0
je 0x46b79c
cmp byte [esp + 0x17], 0
je 0x46b7bd
push esi
push 0x469b70
push 2
push edi
call ebp
push 0x65
lea ecx, [esp + 0x1cdc]
push ecx
push esi
mov ecx, ebx
call fcn.00469a30
mov byte [esp + 0x16], al
push edi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov ebp, dword [esp + 0x28]
push 0
push esi
call dword [sym.imp.KERNEL32.dll_EndUpdateResourceW]
test eax, eax
je 0x46b88b
cmp word [esp + 0x1cd8], 0
je 0x46b7ef
cmp byte [esp + 0x16], 0
je 0x46b88b
cmp byte [esp + 0x17], 0
jne 0x46b80e
cmp byte [esp + 0x16], 0
jne 0x46b80e
mov edx, dword [esp + 0x20]
cmp byte [edx + 0x535a], 0
je 0x46b8b9
mov eax, dword [esp + 0x20]
cmp byte [eax + 0x535a], 0
je 0x46b829
lea eax, [ebx + 0xc20]
push eax
mov ecx, ebx
call fcn.00469ec0
lea ecx, [esp + 0x38]
call fcn.00401190
push 0
lea ecx, [esp + 0x3c]
push ecx
lea esi, [ebx + 0xc20]
push esi
push 0
call fcn.00437b50
test al, al
je 0x46b8a9
mov eax, dword [esp + 0x18]
xor edx, edx
add eax, dword [esp + 0xc38]
adc edx, dword [esp + 0xc3c]
mov dword [esp + 0x24], edx
js 0x46b8a9
jg 0x46b86e
cmp eax, 0x100000
jbe 0x46b8a9
push 0x100000
push 0x5a0
call fcn.00465ec0
push eax
push 0x5362aa
call fcn.00498be0
add esp, 0xc
mov byte [esp + 0x24e4], 0
test ebp, ebp
je 0x46b93a
push ebp
call fcn.004aef60
add esp, 4
jmp 0x46b93a
mov eax, dword [esp + 0x1c]
push 0x400
push esi
push eax
call fcn.0046f260
mov edi, dword [esp + 0x18]
test edi, edi
je 0x46b907
push 0x10000
push ebp
lea esi, [ebx + 0xc20]
push esi
mov ecx, ebx
call fcn.00469d00
test eax, eax
jne 0x46b907
push 0x4c9c78
push esi
call fcn.0048a610
mov esi, eax
test esi, esi
je 0x46b907
push 2
push 0
push esi
call fcn.004b1123
push esi
push edi
push 1
push ebp
call fcn.004b1c88
push esi
call fcn.004b203e
add esp, 0x20
mov byte [esp + 0x24e4], 0
test ebp, ebp
je 0x46b91c
push ebp
call fcn.004aef60
add esp, 4
cmp word [ebx + 0xc20], 0
lea eax, [ebx + 0xc20]
je 0x46b93a
push 0
push 1
push eax
push 0
mov ecx, ebx
call fcn.004313a0
mov dword [esp + 0x24e4], 0xffffffff
mov eax, ebx
mov ecx, dword [esp + 0x24dc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x24c4]
xor ecx, esp
call fcn.004aedbb
add esp, 0x24d4
ret 4