Function at 0x4bb3a0
Capabilities:
Encode data using base64
Resolve function by parsing pe exports

Disassembly:
lea r12, [rsp - 0x1e0]
cmp r12, qword [r14 + 0x10]
jbe 0x4bc496
sub rsp, 0x260
mov qword [rsp + 0x258], rbp
lea rbp, [rsp + 0x258]
mov qword [rsp + 0x320], rax
mov qword [rsp + 0x328], rbx
mov rax, qword [rsp + 0x260]
call fcn.0049e0c0
movups xmmword [rsp + 0x268], xmm15
lea rdi, [rsp + 0x270]
lea rdi, [rdi - 0x10]
nop dword [rax + rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0049be0f
mov rbp, qword [rbp]
lea rax, [0x00530de0]
call fcn.00449800
mov qword [rsp + 0x168], rax
mov word [rsp + 0x34], 0
movups xmmword [rsp + 0x210], xmm15
movups xmmword [rsp + 0x218], xmm15
movups xmmword [rsp + 0x228], xmm15
movups xmmword [rsp + 0x238], xmm15
movups xmmword [rsp + 0x248], xmm15
mov rbx, qword [rsp + 0x328]
test rbx, rbx
jne 0x4bb46f
xor ecx, ecx
jmp 0x4bb8af
lea rax, [rsp + 0x210]
call fcn.004b9ea0
nop dword [rax]
test rax, rax
je 0x4bb89f
test bl, bl
je 0x4bb69d
mov rax, qword [rsp + 0x168]
call fcn.0049ce80
mov rcx, qword [rsp + 0x168]
mov edx, dword [rcx]
test edx, 7
jne 0x4bb5a2
lea rax, [rcx + 8]
mov qword [rsp + 0x1b8], rax
call fcn.0049ce80
mov rcx, qword [rsp + 0x168]
mov rdx, qword [rcx + 0x10]
mov rdi, qword [rcx + 0x18]
mov rbx, rdi
sub rdi, rdx
mov rsi, qword [rcx + 8]
nop
cmp rdi, 1
jge 0x4bb50e
lea r8, [rdx + 1]
lea rax, [0x0052a1a0]
mov rcx, rdx
mov rdi, rbx
mov rbx, rsi
mov rsi, r8
nop dword [rax]
call fcn.004839c0
mov rsi, rax
mov rdx, rbx
mov rbx, rcx
mov qword [rsp + 0xd0], rbx
mov qword [rsp + 0xc8], rdx
mov qword [rsp + 0x1b0], rsi
lea rax, [rsi + rdx]
call fcn.0049cec0
mov rcx, qword [rsp + 0xc8]
mov rdx, qword [rsp + 0x1b0]
mov byte [rdx + rcx], 0
mov rax, qword [rsp + 0x1b8]
call fcn.0049cec0
mov rcx, qword [rsp + 0xc8]
inc rcx
mov rdx, qword [rsp + 0x168]
mov qword [rdx + 0x10], rcx
mov rcx, qword [rsp + 0xd0]
mov qword [rdx + 0x18], rcx
cmp dword [0x006b6e40], 0
jne 0x4bb58a
mov rcx, qword [rsp + 0x1b0]
mov qword [rdx + 8], rcx
jmp 0x4bb59f
mov rdi, qword [rsp + 0x1b8]
mov rcx, qword [rsp + 0x1b0]
call fcn.0049b7c0
mov rcx, rdx
lea rax, [rcx + 8]
call fcn.0049ce80
mov rax, qword [rsp + 0x168]
mov rcx, qword [rax + 8]
mov qword [rsp + 0x1b0], rcx
mov rdx, qword [rax + 0x10]
mov qword [rsp + 0xd0], rdx
call fcn.0049ce80
mov rcx, qword [rsp + 0x168]
mov eax, dword [rcx]
shr eax, 3
mov rdx, qword [rsp + 0xd0]
cmp rdx, rax
jbe 0x4bc48d
mov dword [rsp + 0x3c], eax
mov rcx, qword [rsp + 0x1b0]
lea rdx, [rcx + rax]
mov qword [rsp + 0x1a8], rdx
mov rax, rdx
call fcn.0049ce80
mov rcx, qword [rsp + 0x1b0]
mov edx, dword [rsp + 0x3c]
movzx ebx, byte [rdx + rcx]
mov byte [rsp + 0x2f], bl
mov rax, qword [rsp + 0x168]
call fcn.0049ce80
mov rcx, qword [rsp + 0x168]
mov edx, dword [rcx]
mov dword [rsp + 0x38], edx
mov rax, qword [rsp + 0x1a8]
call fcn.0049cec0
mov ecx, dword [rsp + 0x38]
and ecx, 7
movzx edx, byte [rsp + 0x2f]
bts edx, ecx
mov ecx, dword [rsp + 0x3c]
mov rbx, qword [rsp + 0x1b0]
mov byte [rbx + rcx], dl
mov rax, qword [rsp + 0x168]
call fcn.0049ce80
mov rax, qword [rsp + 0x168]
mov ecx, dword [rax]
mov dword [rsp + 0x3c], ecx
call fcn.0049cec0
mov ecx, dword [rsp + 0x3c]
inc ecx
mov rdx, qword [rsp + 0x168]
mov dword [rdx], ecx
jmp 0x4bb89b
nop
mov rax, qword [rsp + 0x168]
call fcn.0049ce80
mov rcx, qword [rsp + 0x168]
mov edx, dword [rcx]
nop word [rax + rax]
nop
test edx, 7
jne 0x4bb7ba
lea rax, [rcx + 8]
mov qword [rsp + 0x1b8], rax
call fcn.0049ce80
mov rcx, qword [rsp + 0x168]
mov rdx, qword [rcx + 0x10]
mov rdi, qword [rcx + 0x18]
mov rbx, rdi
sub rdi, rdx
mov rsi, qword [rcx + 8]
cmp rdi, 1
jge 0x4bb722
lea r8, [rdx + 1]
lea rax, [0x0052a1a0]
mov rcx, rdx
mov rdi, rbx
mov rbx, rsi
mov rsi, r8
call fcn.004839c0
mov rsi, rax
mov rdx, rbx
mov rbx, rcx
mov qword [rsp + 0xd0], rbx
mov qword [rsp + 0xc8], rdx
mov qword [rsp + 0x1b0], rsi
lea rax, [rsi + rdx]
nop
call fcn.0049cec0
mov rcx, qword [rsp + 0xc8]
mov rdx, qword [rsp + 0x1b0]
mov byte [rdx + rcx], 0
mov rax, qword [rsp + 0x1b8]
call fcn.0049cec0
mov rcx, qword [rsp + 0xc8]
inc rcx
mov rdx, qword [rsp + 0x168]
mov qword [rdx + 0x10], rcx
mov rcx, qword [rsp + 0xd0]
mov qword [rdx + 0x18], rcx
cmp dword [0x006b6e40], 0
jne 0x4bb7a2
mov rcx, qword [rsp + 0x1b0]
mov qword [rdx + 8], rcx
nop
jmp 0x4bb7b7
mov rdi, qword [rsp + 0x1b8]
mov rcx, qword [rsp + 0x1b0]
call fcn.0049b7c0
mov rcx, rdx
lea rax, [rcx + 8]
nop
call fcn.0049ce80
mov rax, qword [rsp + 0x168]
mov rcx, qword [rax + 8]
mov qword [rsp + 0x1b0], rcx
mov rdx, qword [rax + 0x10]
mov qword [rsp + 0xd0], rdx
call fcn.0049ce80
mov rcx, qword [rsp + 0x168]
mov eax, dword [rcx]
shr eax, 3
mov rdx, qword [rsp + 0xd0]
nop
cmp rdx, rax
jbe 0x4bc485
mov dword [rsp + 0x3c], eax
mov rcx, qword [rsp + 0x1b0]
lea rdx, [rcx + rax]
mov qword [rsp + 0x1a8], rdx
mov rax, rdx
call fcn.0049ce80
mov rcx, qword [rsp + 0x1b0]
mov edx, dword [rsp + 0x3c]
movzx ebx, byte [rdx + rcx]
mov byte [rsp + 0x2f], bl
mov rax, qword [rsp + 0x168]
call fcn.0049ce80
mov rax, qword [rsp + 0x1a8]
call fcn.0049cec0
mov ecx, dword [rsp + 0x3c]
movzx edx, byte [rsp + 0x2f]
mov rbx, qword [rsp + 0x1b0]
mov byte [rbx + rcx], dl
mov rax, qword [rsp + 0x168]
call fcn.0049ce80
mov rax, qword [rsp + 0x168]
mov ecx, dword [rax]
mov dword [rsp + 0x3c], ecx
call fcn.0049cec0
mov ecx, dword [rsp + 0x3c]
inc ecx
mov rdx, qword [rsp + 0x168]
mov dword [rdx], ecx
xor eax, eax
jmp 0x4bb8ac
mov rdx, qword [rsp + 0x168]
mov eax, 8
mov rcx, rax
mov qword [rsp + 0x80], rcx
mov rdx, qword [rsp + 0x320]
test byte [rdx], al
lea rax, [rdx + 0x14]
mov qword [rsp + 0x1a0], rax
call fcn.0049ce80
mov rcx, qword [rsp + 0x320]
movzx edx, byte [rcx + 0x14]
nop
test dl, 1
je 0x4bb8ec
mov eax, 0x48
jmp 0x4bb8f1
mov eax, 0x38
mov qword [rsp + 0x70], rax
lea rdx, [rcx + 0x30]
mov qword [rsp + 0x198], rdx
mov rax, rdx
call fcn.0049ce80
mov rcx, qword [rsp + 0x320]
cmp word [rcx + 0x30], 0
jne 0x4bb925
xor eax, eax
xor edx, edx
nop dword [rax]
jmp 0x4bb9ea
mov qword [rsp + 0x180], 0
mov qword [rsp + 0x180], rcx
mov rdx, qword [rsp + 0x70]
lea rax, [rdx + rcx]
mov qword [rsp + 0x150], rax
lea rbx, [rsp + 0x180]
mov edi, 1
mov rcx, rdi
call fcn.00443060
mov rax, qword [rsp + 0x198]
call fcn.0049ce80
mov rdx, qword [rsp + 0x320]
movzx esi, word [rdx + 0x30]
mov qword [rsp + 0xd0], rsi
mov rax, qword [rsp + 0x198]
call fcn.0049ce80
mov rdx, qword [rsp + 0x320]
movzx ecx, word [rdx + 0x30]
nop dword [rax]
cmp rcx, 0x100000
ja 0x4bc477
mov rsi, qword [rsp + 0xd0]
cmp rsi, rcx
ja 0x4bc46d
mov rax, qword [rsp + 0x150]
lea rbx, [0x0053d060]
call fcn.00442f00
mov rcx, qword [rsp + 0x320]
mov rax, qword [rsp + 0x150]
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x140], rax
xor ebx, ebx
mov rsi, qword [rsp + 0x80]
jmp 0x4bba27
mov rdi, qword [rsp + 0xa0]
lea rbx, [rdi + 1]
mov rcx, qword [rsp + 0x320]
mov rdx, qword [rsp + 0x58]
mov rsi, rax
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x80], rsi
cmp rdx, rbx
jle 0x4bbc85
mov qword [rsp + 0xa0], rbx
lea rcx, [rax + rbx*8]
mov rax, rcx
call fcn.0049ce80
mov rcx, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0x140]
mov rbx, qword [rdx + rcx*8]
mov qword [rsp + 0x178], rbx
lea rax, [rsp + 0x210]
call fcn.004b98e0
test rax, rax
je 0x4bbabc
mov qword [rsp + 0x160], rax
lea rcx, [rax + 0x18]
mov rax, rcx
call fcn.0049ce80
mov rcx, qword [rsp + 0x160]
mov rbx, qword [rcx + 0x18]
mov rax, qword [rsp + 0x168]
mov rcx, qword [rsp + 0x178]
call fcn.004bf280
mov rax, qword [rsp + 0x80]
jmp 0x4bba03
mov rcx, qword [rsp + 0x178]
test byte [rcx], al
lea rax, [rcx + 0x15]
call fcn.0049ce80
mov rax, qword [rsp + 0x178]
movzx ecx, byte [rax + 0x15]
mov qword [rsp + 0xc0], rcx
call fcn.0049ce80
mov rcx, qword [rsp + 0xc0]
mov rdx, qword [rsp + 0x80]
lea rdx, [rdx + rcx]
lea rdx, [rdx - 1]
neg rcx
and rcx, rdx
mov rdx, qword [rsp + 0x178]
add rcx, qword [rdx]
mov rdx, qword [rsp + 0x228]
mov rbx, qword [rsp + 0x230]
mov rax, qword [rsp + 0xa0]
cmp rax, rbx
jae 0x4bc465
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x190], rdx
lea rcx, [rdx + rax*8]
mov rax, rcx
call fcn.0049ce80
mov rcx, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0x190]
mov rdx, qword [rdx + rcx*8]
mov qword [rsp + 0x90], rdx
lea rax, [rsp + 0x228]
call fcn.0049ce80
mov rcx, qword [rsp + 0x230]
dec rcx
mov rdx, qword [rsp + 0xa0]
cmp rdx, rcx
jne 0x4bbba9
lea rax, [rsp + 0x210]
call fcn.0049ce80
mov rcx, qword [rsp + 0x218]
mov rdx, rcx
jmp 0x4bbc05
lea rax, [rsp + 0x228]
call fcn.0049ce80
mov rcx, qword [rsp + 0x228]
mov rdx, qword [rsp + 0x230]
mov rbx, qword [rsp + 0xa0]
lea rax, [rbx + 1]
cmp rdx, rax
jbe 0x4bc459
mov qword [rsp + 0x190], rcx
lea rax, [rcx + rbx*8]
lea rax, [rax + 8]
call fcn.0049ce80
mov rcx, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0x190]
mov rdx, qword [rdx + rcx*8 + 8]
mov qword [rsp + 0xb0], rdx
lea rax, [rsp + 0x210]
call fcn.0049ce80
mov rdx, qword [rsp + 0x220]
mov rcx, qword [rsp + 0x210]
mov rbx, qword [rsp + 0xb0]
cmp rbx, rdx
ja 0x4bc451
mov rax, qword [rsp + 0x90]
cmp rbx, rax
jb 0x4bc449
sub rbx, rax
mov rsi, rax
sub rax, rdx
lea rdx, [rsi + rsi*2]
shl rdx, 4
sar rax, 0x3f
and rdx, rax
add rcx, rdx
test rbx, rbx
je 0x4bbc78
mov qword [rsp + 0x50], rbx
xor eax, eax
jmp 0x4bc339
mov rax, qword [rsp + 0x80]
jmp 0x4bba03
nop
mov rcx, qword [rsp + 0x240]
mov qword [rsp + 0x78], rcx
nop
mov word [rsp + 0x30], 0
movups xmmword [rsp + 0x1c8], xmm15
movups xmmword [rsp + 0x1d0], xmm15
movups xmmword [rsp + 0x1e0], xmm15
movups xmmword [rsp + 0x1f0], xmm15
movups xmmword [rsp + 0x200], xmm15
lea rdx, [rcx + 7]
and rdx, 0xfffffffffffffff8
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x1f8], rdx
mov rax, qword [rsp + 0x1a0]
call fcn.0049ce80
mov rcx, qword [rsp + 0x320]
movzx edx, byte [rcx + 0x14]
test dl, 1
je 0x4bbd02
mov eax, 0x48
jmp 0x4bbd07
mov eax, 0x38
mov qword [rsp + 0x68], rax
lea rdx, [rcx + 0x32]
mov rax, rdx
call fcn.0049ce80
mov rcx, qword [rsp + 0x320]
movzx edx, word [rcx + 0x32]
and edx, 0x7fff
test dx, dx
jne 0x4bbd38
xor esi, esi
xor edx, edx
jmp 0x4bbe67
mov word [rsp + 0x32], dx
mov qword [rsp + 0x1c0], 0
mov qword [rsp + 0x1c0], rcx
mov rdx, qword [rsp + 0x68]
lea rax, [rdx + rcx]
mov qword [rsp + 0x148], rax
lea rbx, [rsp + 0x1c0]
mov edi, 1
mov rcx, rdi
call fcn.00443060
mov rax, qword [rsp + 0x198]
nop
call fcn.0049ce80
mov rdx, qword [rsp + 0x320]
movzx esi, word [rdx + 0x30]
mov qword [rsp + 0xd0], rsi
mov rax, qword [rsp + 0x198]
call fcn.0049ce80
mov rdx, qword [rsp + 0x320]
movzx esi, word [rdx + 0x30]
mov word [rsp + 0x36], si
mov rax, qword [rsp + 0x198]
nop
call fcn.0049ce80
movzx edx, word [rsp + 0x32]
movzx esi, word [rsp + 0x36]
add esi, edx
mov r8, qword [rsp + 0x320]
movzx r8d, word [r8 + 0x30]
add edx, r8d
movzx ecx, si
movzx esi, dx
cmp rcx, rsi
ja 0x4bc32a
mov rax, qword [rsp + 0xd0]
nop dword [rax + rax]
cmp rax, rcx
ja 0x4bc325
mov qword [rsp + 0xc8], rsi
mov qword [rsp + 0xb8], rcx
movzx ecx, dx
mov rax, qword [rsp + 0x148]
lea rbx, [0x0053d060]
call fcn.00442f00
mov rdx, qword [rsp + 0xb8]
mov rsi, qword [rsp + 0xd0]
sub rdx, rsi
mov rdi, qword [rsp + 0xc8]
mov r8, rsi
sub rsi, rdi
shl r8, 3
sar rsi, 0x3f
and r8, rsi
mov rsi, qword [rsp + 0x148]
add rsi, r8
mov qword [rsp + 0x138], rsi
mov qword [rsp + 0x48], rdx
xor eax, eax
jmp 0x4bbe91
mov rcx, qword [rsp + 0x98]
lea rax, [rcx + 1]
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x138]
cmp rdx, rax
jle 0x4bc093
mov qword [rsp + 0x98], rax
lea rcx, [rsi + rax*8]
mov rax, rcx
call fcn.0049ce80
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0x138]
mov rbx, qword [rdx + rcx*8]
mov qword [rsp + 0x170], rbx
lea rax, [rsp + 0x1c8]
call fcn.004b98e0
nop word [rax + rax]
test rax, rax
jne 0x4bc059
mov rdx, qword [rsp + 0x1e0]
mov rcx, qword [rsp + 0x1e8]
mov rax, qword [rsp + 0x98]
cmp rax, rcx
jae 0x4bc320
mov qword [rsp + 0x190], rdx
lea rcx, [rdx + rax*8]
mov rax, rcx
call fcn.0049ce80
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0x190]
mov rdx, qword [rdx + rcx*8]
mov qword [rsp + 0x88], rdx
lea rax, [rsp + 0x1e0]
call fcn.0049ce80
mov rcx, qword [rsp + 0x1e8]
dec rcx
mov rdx, qword [rsp + 0x98]
cmp rdx, rcx
jne 0x4bbf79
lea rax, [rsp + 0x1c8]
call fcn.0049ce80
mov rcx, qword [rsp + 0x1d0]
mov rdx, rcx
jmp 0x4bbfda
lea rax, [rsp + 0x1e0]
call fcn.0049ce80
mov rcx, qword [rsp + 0x1e0]
mov rdx, qword [rsp + 0x1e8]
mov rbx, qword [rsp + 0x98]
lea rax, [rbx + 1]
cmp rdx, rax
jbe 0x4bc315
mov qword [rsp + 0x190], rcx
lea rax, [rcx + rbx*8]
lea rax, [rax + 8]
nop dword [rax + rax]
call fcn.0049ce80
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0x190]
mov rdx, qword [rdx + rcx*8 + 8]
mov qword [rsp + 0xa8], rdx
lea rax, [rsp + 0x1c8]
call fcn.0049ce80
mov rdx, qword [rsp + 0x1d8]
mov rcx, qword [rsp + 0x1c8]
mov rbx, qword [rsp + 0xa8]
cmp rbx, rdx
ja 0x4bc30d
mov rax, qword [rsp + 0x88]
nop dword [rax + rax]
cmp rbx, rax
jb 0x4bc305
sub rbx, rax
mov rsi, rax
sub rax, rdx
lea rdx, [rsi + rsi*2]
shl rdx, 4
sar rax, 0x3f
and rdx, rax
add rcx, rdx
test rbx, rbx
je 0x4bbe78
mov qword [rsp + 0x40], rbx
xor eax, eax
jmp 0x4bc1e6
mov qword [rsp + 0x158], rax
lea rcx, [rax + 0x18]
mov rax, rcx
call fcn.0049ce80
mov rcx, qword [rsp + 0x158]
mov rbx, qword [rcx + 0x18]
mov rax, qword [rsp + 0x168]
mov rcx, qword [rsp + 0x170]
call fcn.004bf280
jmp 0x4bbe78
mov rax, qword [rsp + 0x60]
sub qword [rsp + 0x1f8], rax
movups xmmword [rsp + 0x268], xmm15
lea rdi, [rsp + 0x270]
lea rdi, [rdi - 0x10]
nop word [rax + rax]
nop
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0049be0f
mov rbp, qword [rbp]
mov rcx, qword [rsp + 0x210]
mov qword [rsp + 0x268], rcx
movups xmm0, xmmword [rsp + 0x218]
movups xmmword [rsp + 0x270], xmm0
movups xmm0, xmmword [rsp + 0x228]
movups xmmword [rsp + 0x280], xmm0
movups xmm0, xmmword [rsp + 0x238]
movups xmmword [rsp + 0x290], xmm0
movups xmm0, xmmword [rsp + 0x248]
movups xmmword [rsp + 0x2a0], xmm0
mov rcx, qword [rsp + 0x1c8]
mov qword [rsp + 0x2b0], rcx
movups xmm0, xmmword [rsp + 0x1d0]
movups xmmword [rsp + 0x2b8], xmm0
movups xmm0, xmmword [rsp + 0x1e0]
movups xmmword [rsp + 0x2c8], xmm0
movups xmm0, xmmword [rsp + 0x1f0]
movups xmmword [rsp + 0x2d8], xmm0
movups xmm0, xmmword [rsp + 0x200]
movups xmmword [rsp + 0x2e8], xmm0
mov rcx, qword [rsp + 0x78]
mov qword [rsp + 0x2f8], rcx
mov qword [rsp + 0x300], rax
mov rax, qword [rsp + 0x80]
add rax, 7
and rax, 0xfffffffffffffff8
mov qword [rsp + 0x308], rax
mov rax, qword [rsp + 0x168]
mov qword [rsp + 0x310], rax
movzx eax, word [rsp + 0x34]
mov word [rsp + 0x318], ax
movzx eax, word [rsp + 0x30]
mov word [rsp + 0x31a], ax
call fcn.0049e100
mov rbp, qword [rsp + 0x258]
add rsp, 0x260
ret
add rcx, 0x30
mov rax, rdx
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0x188], rcx
mov ebx, 0x30
mov rax, rcx
nop
call fcn.0049e120
mov rcx, qword [rsp + 0x188]
movups xmm0, xmmword [rcx]
movups xmmword [rsp + 0xd8], xmm0
movups xmm0, xmmword [rcx + 0x10]
movups xmmword [rsp + 0xe8], xmm0
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rsp + 0xf8], xmm0
cmp qword [rsp + 0xd8], 3
jne 0x4bc2d7
mov rdx, qword [rsp + 0xf8]
mov rbx, rdx
sar rdx, 0x3f
shr rdx, 0x3d
lea rax, [rbx + rdx]
sar rax, 3
nop word [rax + rax]
cmp rax, 2
jae 0x4bc2fa
movzx edx, byte [rsp + rax + 0x30]
lea rsi, [rsp + rax + 0x30]
mov rdi, rax
shl rax, 3
sub rbx, rax
nop
test rbx, rbx
jl 0x4bc2f5
mov qword [rsp + 0xc8], rdi
mov byte [rsp + 0x2e], dl
mov qword [rsp + 0xb8], rbx
mov rax, rsi
nop dword [rax]
call fcn.0049cec0
mov rcx, qword [rsp + 0xb8]
cmp rcx, 0x20
sbb edx, edx
mov ebx, 1
shl ebx, cl
and edx, ebx
movzx ecx, byte [rsp + 0x2e]
or ecx, edx
mov rdx, qword [rsp + 0xc8]
mov byte [rsp + rdx + 0x30], cl
mov rcx, qword [rsp + 0x188]
mov rdx, qword [rsp + 0xd0]
inc rdx
mov rsi, qword [rsp + 0x40]
cmp rsi, rdx
jg 0x4bc1df
jmp 0x4bbe78
call fcn.0046ef40
mov ecx, 2
nop
call fcn.0049bb60
mov rcx, rbx
call fcn.0049bc20
mov rcx, rbx
call fcn.0049bbe0
mov rcx, rdx
call fcn.0049bb60
nop dword [rax]
call fcn.0049bb60
call fcn.0049bcc0
mov rdx, rsi
call fcn.0049bca0
add rcx, 0x30
mov rax, rdx
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0x188], rcx
mov ebx, 0x30
mov rax, rcx
call fcn.0049e120
mov rcx, qword [rsp + 0x188]
movups xmm0, xmmword [rcx]
movups xmmword [rsp + 0x108], xmm0
movups xmm0, xmmword [rcx + 0x10]
movups xmmword [rsp + 0x118], xmm0
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rsp + 0x128], xmm0
cmp qword [rsp + 0x108], 3
jne 0x4bc41c
mov rdx, qword [rsp + 0x128]
mov rbx, rdx
sar rdx, 0x3f
shr rdx, 0x3d
lea rax, [rbx + rdx]
sar rax, 3
cmp rax, 2
jae 0x4bc43f
movzx edx, byte [rsp + rax + 0x34]
lea rsi, [rsp + rax + 0x34]
mov rdi, rax
shl rax, 3
sub rbx, rax
test rbx, rbx
jl 0x4bc43a
mov qword [rsp + 0xc8], rdi
mov byte [rsp + 0x2e], dl
mov qword [rsp + 0xb8], rbx
mov rax, rsi
call fcn.0049cec0
mov rcx, qword [rsp + 0xb8]
cmp rcx, 0x20
sbb edx, edx
mov ebx, 1
shl ebx, cl
and ebx, edx
movzx ecx, byte [rsp + 0x2e]
or ecx, ebx
mov rdx, qword [rsp + 0xc8]
mov byte [rsp + rdx + 0x34], cl
mov rcx, qword [rsp + 0x188]
mov rdx, qword [rsp + 0xd0]
inc rdx
mov rsi, qword [rsp + 0x50]
cmp rsi, rdx
jg 0x4bc332
jmp 0x4bbc78
call fcn.0046ef40
mov ecx, 2
call fcn.0049bb60
mov rcx, rbx
call fcn.0049bc20
mov rcx, rbx
call fcn.0049bbe0
mov rcx, rdx
nop dword [rax]
call fcn.0049bb60
mov rcx, rbx
call fcn.0049bb60
mov edx, ecx
mov rcx, rsi
call fcn.0049bca0
mov edx, ecx
mov ebx, 0x100000
nop
call fcn.0049bc60
mov rcx, rdx
call fcn.0049bb60
mov rcx, rdx
call fcn.0049bb60
nop
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xc8], rbx
call fcn.00499460
mov rax, qword [rsp + 0xc0]
mov rbx, qword [rsp + 0xc8]
nop dword [rax + rax]
jmp fcn.004bb3a0