Function at 0x46b9d0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x88
mov eax, dword [0x4af890]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
mov esi, dword [ebp + 8]
push esi
push str.trying_to_load__s_n
push 1
call dword [0x7b17e0]
call fcn.0046b790
push 0
lea eax, [ebp - 0x84]
push eax
push esi
call dword [0x7b1810]
mov eax, dword [ebp - 0x84]
add esp, 0x18
test eax, eax
jne 0x46ba39
push esi
push str.cant_open__s_n
call fcn.004452b0
add esp, 8
mov eax, 4
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0046cfaf
mov esp, ebp
pop ebp
ret
push eax
lea eax, [ebp - 0x80]
push 0x7c
push eax
call dword [0x7b1814]
add esp, 0xc
mov dword [ebp - 0x88], 0x7c
cmp dword [ebp - 0x80], 0x53414145
je 0x46ba8a
push esi
push str._s_is_not_an_AAS_file_n
call fcn.004452b0
push dword [ebp - 0x84]
call dword [0x7b181c]
add esp, 0xc
mov eax, 5
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0046cfaf
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x7c]
cmp eax, 4
je 0x46bae0
cmp eax, 5
je 0x46bac8
push 5
push eax
push esi
push str.aas_file__s_is_version__i__not__i_n
call fcn.004452b0
push dword [ebp - 0x84]
call dword [0x7b181c]
add esp, 0x14
mov eax, 6
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0046cfaf
mov esp, ebp
pop ebp
ret
xor ecx, ecx
lea ebx, [ebx]
movzx eax, cl
imul eax, eax, 0x77
xor byte [ebp + ecx - 0x78], al
inc ecx
cmp ecx, 0x74
jl 0x46bad0
push str.sv_mapChecksum
call fcn.00440790
push eax
call fcn.0046fbc9
add esp, 8
mov dword [0x7b12ec], eax
cmp dword [ebp - 0x78], eax
je 0x46bb2b
push esi
push str.aas_file__s_is_out_of_date_n
call fcn.004452b0
push dword [ebp - 0x84]
call dword [0x7b181c]
add esp, 0xc
mov eax, 6
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0046cfaf
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp - 0x70]
lea eax, [ebp - 0x88]
push 0x20
push eax
push esi
push dword [ebp - 0x74]
push dword [ebp - 0x84]
call fcn.0046bed0
shr esi, 5
add esp, 0x14
mov dword [0x7b137c], eax
mov dword [0x7b1378], esi
test esi, esi
je 0x46bb63
test eax, eax
je 0x46be85
mov esi, dword [ebp - 0x68]
lea eax, [ebp - 0x88]
push 0xc
push eax
push esi
push dword [ebp - 0x6c]
push dword [ebp - 0x84]
call fcn.0046bed0
mov ecx, eax
add esp, 0x14
mov eax, 0xaaaaaaab
mov dword [0x7b1384], ecx
mul esi
shr edx, 3
mov dword [0x7b1380], edx
test edx, edx
je 0x46bba5
test ecx, ecx
je 0x46be85
mov esi, dword [ebp - 0x60]
lea eax, [ebp - 0x88]
push 0x14
push eax
push esi
push dword [ebp - 0x64]
push dword [ebp - 0x84]
call fcn.0046bed0
mov ecx, eax
add esp, 0x14
mov eax, 0xcccccccd
mov dword [0x7b138c], ecx
mul esi
shr edx, 4
mov dword [0x7b1388], edx
test edx, edx
je 0x46bbe7
test ecx, ecx
je 0x46be85
mov esi, dword [ebp - 0x58]
lea eax, [ebp - 0x88]
push 8
push eax
push esi
push dword [ebp - 0x5c]
push dword [ebp - 0x84]
call fcn.0046bed0
shr esi, 3
add esp, 0x14
mov dword [0x7b1394], eax
mov dword [0x7b1390], esi
test esi, esi
je 0x46bc1f
test eax, eax
je 0x46be85
mov esi, dword [ebp - 0x50]
lea eax, [ebp - 0x88]
push 4
push eax
push esi
push dword [ebp - 0x54]
push dword [ebp - 0x84]
call fcn.0046bed0
shr esi, 2
add esp, 0x14
mov dword [0x7b139c], eax
mov dword [0x7b1398], esi
test esi, esi
je 0x46bc57
test eax, eax
je 0x46be85
mov esi, dword [ebp - 0x48]
lea eax, [ebp - 0x88]
push 0x18
push eax
push esi
push dword [ebp - 0x4c]
push dword [ebp - 0x84]
call fcn.0046bed0
mov ecx, eax
add esp, 0x14
mov eax, 0xaaaaaaab
mov dword [0x7b13a4], ecx
mul esi
shr edx, 4
mov dword [0x7b13a0], edx
test edx, edx
je 0x46bc99
test ecx, ecx
je 0x46be85
mov esi, dword [ebp - 0x40]
lea eax, [ebp - 0x88]
push 4
push eax
push esi
push dword [ebp - 0x44]
push dword [ebp - 0x84]
call fcn.0046bed0
shr esi, 2
add esp, 0x14
mov dword [0x7b13ac], eax
mov dword [0x7b13a8], esi
test esi, esi
je 0x46bcd1
test eax, eax
je 0x46be85
mov esi, dword [ebp - 0x38]
lea eax, [ebp - 0x88]
push 0x30
push eax
push esi
push dword [ebp - 0x3c]
push dword [ebp - 0x84]
call fcn.0046bed0
mov ecx, eax
add esp, 0x14
mov eax, 0xaaaaaaab
mov dword [0x7b13b4], ecx
mul esi
shr edx, 5
mov dword [0x7b13b0], edx
test edx, edx
je 0x46bd13
test ecx, ecx
je 0x46be85
mov esi, dword [ebp - 0x30]
lea eax, [ebp - 0x88]
push 0x1c
push eax
push esi
push dword [ebp - 0x34]
push dword [ebp - 0x84]
call fcn.0046bed0
mov ecx, eax
add esp, 0x14
mov eax, 0x24924925
mov dword [0x7b13bc], ecx
mul esi
sub esi, edx
shr esi, 1
add esi, edx
shr esi, 4
mov dword [0x7b13b8], esi
test esi, esi
je 0x46bd5b
test ecx, ecx
je 0x46be85
mov esi, dword [ebp - 0x28]
lea eax, [ebp - 0x88]
push 0x2c
push eax
push esi
push dword [ebp - 0x2c]
push dword [ebp - 0x84]
call fcn.0046bed0
mov ecx, eax
add esp, 0x14
mov eax, 0xba2e8ba3
mov dword [0x7b13c4], ecx
mul esi
shr edx, 5
mov dword [0x7b13c0], edx
test edx, edx
je 0x46bd9d
test ecx, ecx
je 0x46be85
mov esi, dword [ebp - 0x20]
lea eax, [ebp - 0x88]
push 0xc
push eax
push esi
push dword [ebp - 0x24]
push dword [ebp - 0x84]
call fcn.0046bed0
mov ecx, eax
add esp, 0x14
mov eax, 0xaaaaaaab
mov dword [0x7b13cc], ecx
mul esi
shr edx, 3
mov dword [0x7b13c8], edx
test edx, edx
je 0x46bddf
test ecx, ecx
je 0x46be85
mov esi, dword [ebp - 0x18]
lea eax, [ebp - 0x88]
push 0x14
push eax
push esi
push dword [ebp - 0x1c]
push dword [ebp - 0x84]
call fcn.0046bed0
mov ecx, eax
add esp, 0x14
mov eax, 0xcccccccd
mov dword [0x7b13d4], ecx
mul esi
shr edx, 4
mov dword [0x7b13d0], edx
test edx, edx
je 0x46be1d
test ecx, ecx
je 0x46be85
mov esi, dword [ebp - 0x10]
lea eax, [ebp - 0x88]
push 4
push eax
push esi
push dword [ebp - 0x14]
push dword [ebp - 0x84]
call fcn.0046bed0
shr esi, 2
add esp, 0x14
mov dword [0x7b13dc], eax
mov dword [0x7b13d8], esi
test esi, esi
je 0x46be51
test eax, eax
je 0x46be85
mov esi, dword [ebp - 8]
lea eax, [ebp - 0x88]
push 0x10
push eax
push esi
push dword [ebp - 0xc]
push dword [ebp - 0x84]
call fcn.0046bed0
shr esi, 4
add esp, 0x14
mov dword [0x7b13e4], eax
mov dword [0x7b13e0], esi
test esi, esi
je 0x46be99
test eax, eax
jne 0x46be99
mov eax, 7
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0046cfaf
mov esp, ebp
pop ebp
ret
call fcn.0046bf60
push dword [ebp - 0x84]
mov dword [0x7b12e0], 1
call dword [0x7b181c]
mov ecx, dword [ebp - 4]
add esp, 4
xor ecx, ebp
xor eax, eax
pop esi
call fcn.0046cfaf
mov esp, ebp
pop ebp
ret