Function at 0x47c3e0
Capabilities:
Encode data using base64

Disassembly:
lea r12, [rsp - 0x390]
cmp r12, qword [r14 + 0x10]
jbe 0x47d54d
sub rsp, 0x410
mov qword [rsp + 0x408], rbp
lea rbp, [rsp + 0x408]
mov qword [rsp + 0x4d0], rax
mov qword [rsp + 0x4d8], rbx
movups xmmword [rsp + 0x418], xmm15
lea rdi, [rsp + 0x420]
lea rdi, [rdi - 0x10]
nop word [rax + rax]
nop word [rax + rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0045f18f
mov rbp, qword [rbp]
mov qword [rsp + 0xb8], 0
lea rax, [0x004f01c0]
call fcn.0040c880
mov qword [rsp + 0x250], rax
mov word [rsp + 0x50], 0
movups xmmword [rsp + 0x3c0], xmm15
movups xmmword [rsp + 0x3c8], xmm15
movups xmmword [rsp + 0x3d8], xmm15
movups xmmword [rsp + 0x3e8], xmm15
movups xmmword [rsp + 0x3f8], xmm15
cmp qword [rsp + 0x4d8], 0
jne 0x47c4b7
jmp 0x47c5c5
mov qword [rsp + 0x2c0], 0
mov rbx, qword [rsp + 0x4d8]
lea rax, [rsp + 0x3c0]
call fcn.0047b0a0
mov qword [rsp + 0x2c0], rax
mov byte [rsp + 0x4a], bl
mov rcx, qword [rsp + 0x2c0]
mov qword [rsp + 0x2b0], rcx
movzx ecx, byte [rsp + 0x4a]
mov byte [rsp + 0x4b], cl
mov rcx, qword [rsp + 0x2b0]
mov qword [rsp + 0x248], rcx
movzx ecx, byte [rsp + 0x4b]
mov byte [rsp + 0x47], cl
cmp qword [rsp + 0x248], 0
nop
jne 0x47c527
jmp 0x47c5b5
test cl, cl
jne 0x47c52d
jmp 0x47c571
mov r8, qword [rsp + 0x250]
mov qword [rsp + 0x278], r8
mov byte [rsp + 0x49], 1
mov r8, qword [rsp + 0x278]
test byte [r8], al
mov r8d, dword [r8]
test r8d, 0x3f
je 0x47c55b
jmp 0x47c56c
mov qword [rsp + 0x118], 0
jmp 0x47d4b2
jmp 0x47d40e
mov r8, qword [rsp + 0x250]
mov qword [rsp + 0x270], r8
mov byte [rsp + 0x48], 0
mov r8, qword [rsp + 0x270]
test byte [r8], al
mov r8d, dword [r8]
test r8d, 0x3f
je 0x47c59f
jmp 0x47c5b0
mov qword [rsp + 0x110], 0
jmp 0x47d377
jmp 0x47d2d4
add qword [rsp + 0xb8], 8
nop
jmp 0x47d2cf
jmp 0x47c5c7
mov rsi, qword [rsp + 0x4d0]
mov qword [rsp + 0x230], rsi
mov qword [rsp + 0x330], 0
movups xmmword [rsp + 0x338], xmm15
mov qword [rsp + 0xa8], 0x38
mov rsi, qword [rsp + 0x230]
test byte [rsi], al
movzx esi, byte [rsi + 0x14]
test sil, 1
jne 0x47c60e
jmp 0x47c61c
mov qword [rsp + 0xa8], 0x48
jmp 0x47c61e
jmp 0x47c61e
mov rsi, qword [rsp + 0x230]
test byte [rsi], al
cmp word [rsi + 0x30], 0
je 0x47c631
jmp 0x47c64b
mov qword [rsp + 0x330], 0
movups xmmword [rsp + 0x338], xmm15
jmp 0x47c723
mov rsi, qword [rsp + 0x230]
mov qword [rsp + 0x268], rsi
mov rsi, qword [rsp + 0xa8]
mov qword [rsp + 0x80], rsi
lea rsi, [0x004fec24]
mov qword [rsp + 0x2d8], rsi
mov qword [rsp + 0x2e0], 0xd
mov rsi, qword [rsp + 0x268]
add rsi, qword [rsp + 0x80]
mov qword [rsp + 0x220], rsi
nop
jmp 0x47c6a2
mov rsi, qword [rsp + 0x230]
test byte [rsi], al
movzx ecx, word [rsi + 0x30]
mov word [rsp + 0x56], cx
mov rsi, qword [rsp + 0x230]
test byte [rsi], al
movzx edx, word [rsi + 0x30]
mov word [rsp + 0x54], dx
mov rsi, qword [rsp + 0x220]
test byte [rsi], al
cmp rdx, 0x100000
jbe 0x47c6e5
nop dword [rax + rax]
jmp 0x47d2c5
cmp rdx, rcx
jae 0x47c6ef
jmp 0x47d2c0
jmp 0x47c6f1
mov qword [rsp + 0x360], rsi
mov qword [rsp + 0x368], rcx
mov qword [rsp + 0x370], rdx
mov qword [rsp + 0x330], rsi
mov qword [rsp + 0x338], rcx
mov qword [rsp + 0x340], rdx
jmp 0x47c723
mov rsi, qword [rsp + 0x338]
mov r8, qword [rsp + 0x330]
mov r9, qword [rsp + 0x340]
mov qword [rsp + 0x360], r8
mov qword [rsp + 0x368], rsi
mov qword [rsp + 0x370], r9
mov qword [rsp + 0x1a8], 0
mov qword [rsp + 0x1a0], rsi
jmp 0x47c769
mov rsi, qword [rsp + 0x1a8]
cmp qword [rsp + 0x1a0], rsi
jg 0x47c785
nop dword [rax + rax]
jmp 0x47c9e5
mov rcx, qword [rsp + 0x1a8]
mov qword [rsp + 0x128], rcx
mov rcx, qword [rsp + 0x1a8]
shl rcx, 3
add rcx, qword [rsp + 0x360]
mov rbx, qword [rcx]
mov qword [rsp + 0x290], rbx
lea rax, [rsp + 0x3c0]
nop dword [rax]
call fcn.0047ac60
mov qword [rsp + 0x240], rax
test rax, rax
jne 0x47c7d4
jmp 0x47c7fc
test byte [rax], al
mov rbx, qword [rax + 0x18]
mov qword [rsp + 0x198], rbx
mov rcx, qword [rsp + 0x290]
mov rax, qword [rsp + 0x250]
call fcn.00480e00
jmp 0x47d27c
mov rsi, qword [rsp + 0xb8]
mov qword [rsp + 0x98], rsi
mov r8, qword [rsp + 0x290]
test byte [r8], al
movzx r8d, byte [r8 + 0x15]
mov qword [rsp + 0xe8], r8
lea rsi, [rsi + r8]
lea rsi, [rsi - 1]
neg r8
and rsi, r8
mov qword [rsp + 0x70], rsi
jmp 0x47c839
mov qword [rsp + 0xb8], rsi
mov r8, qword [rsp + 0x290]
test byte [r8], al
mov r8, qword [r8]
add rsi, r8
mov qword [rsp + 0xb8], rsi
lea rsi, [rsp + 0x3c0]
mov qword [rsp + 0x2a0], rsi
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0x108], rax
test byte [rsi], al
mov rcx, qword [rsp + 0x3e0]
mov r8, qword [rsp + 0x3d8]
cmp rcx, rax
ja 0x47c896
jmp 0x47d2b7
lea r8, [r8 + rax*8]
mov r8, qword [r8]
mov qword [rsp + 0xc8], r8
mov qword [rsp + 0x138], 0
test byte [rsi], al
mov rsi, qword [rsp + 0x3e0]
mov qword [rsp + 0x1b0], rsi
dec rsi
cmp rax, rsi
je 0x47c8cd
jmp 0x47c8e5
mov rsi, qword [rsp + 0x2a0]
test byte [rsi], al
mov rsi, qword [rsi + 8]
mov qword [rsp + 0x138], rsi
jmp 0x47c91f
mov rsi, qword [rsp + 0x2a0]
test byte [rsi], al
mov rcx, qword [rsi + 0x20]
mov rsi, qword [rsi + 0x18]
lea r8, [rax + 1]
nop dword [rax + rax]
cmp rcx, r8
ja 0x47c90a
jmp 0x47d2af
lea rsi, [rsi + rax*8]
lea rsi, [rsi + 8]
mov rsi, qword [rsi]
mov qword [rsp + 0x138], rsi
jmp 0x47c91f
mov rsi, qword [rsp + 0x2a0]
test byte [rsi], al
mov rdx, qword [rsi + 0x10]
mov rsi, qword [rsi]
mov rax, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0x138]
cmp rdx, rcx
jae 0x47c94a
jmp 0x47d2aa
cmp rcx, rax
jae 0x47c954
jmp 0x47d2a5
sub rdx, rax
lea r8, [rax + rax*2]
mov r9, rdx
neg rdx
shl r8, 4
sar rdx, 0x3f
and r8, rdx
add rsi, r8
mov qword [rsp + 0x348], rsi
sub rcx, rax
mov qword [rsp + 0x350], rcx
mov qword [rsp + 0x358], r9
mov qword [rsp + 0x318], rsi
mov qword [rsp + 0x320], rcx
mov qword [rsp + 0x328], r9
jmp 0x47c9a4
mov qword [rsp + 0x348], rsi
mov qword [rsp + 0x350], rcx
mov qword [rsp + 0x358], r9
mov qword [rsp + 0x190], 0
mov qword [rsp + 0x188], rcx
mov rsi, qword [rsp + 0x348]
mov qword [rsp + 0x180], rsi
jmp 0x47d165
mov rsi, qword [rsp + 0xb8]
mov qword [rsp + 0x90], rsi
mov qword [rsp + 0xe0], 8
add rsi, 7
and rsi, 0xfffffffffffffff8
mov qword [rsp + 0x68], rsi
jmp 0x47ca10
mov qword [rsp + 0xb8], rsi
mov rsi, qword [rsp + 0x3f0]
mov qword [rsp + 0xb0], rsi
mov rsi, qword [rsp + 0x3f0]
mov qword [rsp + 0x88], rsi
mov qword [rsp + 0xd8], 8
add rsi, 7
and rsi, 0xfffffffffffffff8
mov qword [rsp + 0x60], rsi
jmp 0x47ca53
mov qword [rsp + 0xd0], rsi
mov word [rsp + 0x4c], 0
movups xmmword [rsp + 0x378], xmm15
movups xmmword [rsp + 0x380], xmm15
movups xmmword [rsp + 0x390], xmm15
movups xmmword [rsp + 0x3a0], xmm15
movups xmmword [rsp + 0x3b0], xmm15
mov rsi, qword [rsp + 0xd0]
mov qword [rsp + 0x3a8], rsi
mov rsi, qword [rsp + 0x4d0]
mov qword [rsp + 0x228], rsi
mov qword [rsp + 0x300], 0
movups xmmword [rsp + 0x308], xmm15
mov qword [rsp + 0xa0], 0x38
mov rsi, qword [rsp + 0x228]
test byte [rsi], al
movzx esi, byte [rsi + 0x14]
nop
test sil, 1
jne 0x47cae8
jmp 0x47caf6
mov qword [rsp + 0xa0], 0x48
jmp 0x47caf8
jmp 0x47caf8
mov rsi, qword [rsp + 0x228]
test byte [rsi], al
movzx esi, word [rsi + 0x32]
and esi, 0x7fff
mov word [rsp + 0x4e], si
test si, si
je 0x47cb18
jmp 0x47cb32
mov qword [rsp + 0x300], 0
movups xmmword [rsp + 0x308], xmm15
jmp 0x47cc49
mov rsi, qword [rsp + 0x228]
mov qword [rsp + 0x260], rsi
mov rsi, qword [rsp + 0xa0]
mov qword [rsp + 0x78], rsi
lea rsi, [0x004fe8d6]
mov qword [rsp + 0x2c8], rsi
mov qword [rsp + 0x2d0], 0xc
mov rsi, qword [rsp + 0x260]
add rsi, qword [rsp + 0x78]
mov qword [rsp + 0x218], rsi
nop
jmp 0x47cb82
mov rsi, qword [rsp + 0x228]
test byte [rsi], al
movzx eax, word [rsi + 0x30]
mov word [rsp + 0x54], ax
mov rsi, qword [rsp + 0x228]
test byte [rsi], al
movzx esi, word [rsi + 0x30]
movzx r8d, word [rsp + 0x4e]
add esi, r8d
mov word [rsp + 0x56], si
mov r8, qword [rsp + 0x228]
test byte [r8], al
movzx r8d, word [r8 + 0x30]
movzx r9d, word [rsp + 0x4e]
add r8d, r9d
mov word [rsp + 0x52], r8w
mov r9, qword [rsp + 0x218]
test byte [r9], al
movzx edx, r8w
nop
jmp 0x47cbe2
movzx ecx, si
cmp rcx, rdx
jbe 0x47cbef
jmp 0x47d160
cmp rax, rcx
jbe 0x47cbf9
jmp 0x47d157
sub rdx, rax
mov rsi, rdx
neg rdx
mov r8d, eax
shl rax, 3
sar rdx, 0x3f
and rax, rdx
lea rdx, [r9 + rax]
mov qword [rsp + 0x360], rdx
sub rcx, r8
mov qword [rsp + 0x368], rcx
mov qword [rsp + 0x370], rsi
mov qword [rsp + 0x300], rdx
mov qword [rsp + 0x308], rcx
mov qword [rsp + 0x310], rsi
jmp 0x47cc49
mov rcx, qword [rsp + 0x308]
mov rdx, qword [rsp + 0x300]
mov rsi, qword [rsp + 0x310]
mov qword [rsp + 0x360], rdx
mov qword [rsp + 0x368], rcx
mov qword [rsp + 0x370], rsi
mov qword [rsp + 0x170], 0
mov qword [rsp + 0x168], rcx
jmp 0x47cc8f
mov rcx, qword [rsp + 0x170]
nop word [rax + rax]
cmp qword [rsp + 0x168], rcx
jg 0x47ccaf
jmp 0x47ceb0
mov rcx, qword [rsp + 0x170]
mov qword [rsp + 0x120], rcx
mov rcx, qword [rsp + 0x170]
shl rcx, 3
add rcx, qword [rsp + 0x360]
mov rbx, qword [rcx]
mov qword [rsp + 0x258], rbx
lea rax, [rsp + 0x378]
call fcn.0047ac60
mov qword [rsp + 0x238], rax
test rax, rax
jne 0x47ccfa
jmp 0x47cd25
test byte [rax], al
mov rbx, qword [rax + 0x18]
mov qword [rsp + 0x160], rbx
mov rcx, qword [rsp + 0x258]
mov rax, qword [rsp + 0x250]
call fcn.00480e00
nop dword [rax]
jmp 0x47d111
lea rsi, [rsp + 0x378]
mov qword [rsp + 0x298], rsi
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0xf8], rax
test byte [rsi], al
mov rcx, qword [rsp + 0x398]
mov r8, qword [rsp + 0x390]
cmp rcx, rax
ja 0x47cd65
nop dword [rax]
jmp 0x47d152
lea r8, [r8 + rax*8]
mov r8, qword [r8]
mov qword [rsp + 0xc0], r8
mov qword [rsp + 0x130], 0
test byte [rsi], al
mov rsi, qword [rsp + 0x398]
mov qword [rsp + 0x1b0], rsi
dec rsi
cmp rax, rsi
je 0x47cd9c
jmp 0x47cdb4
mov rsi, qword [rsp + 0x298]
test byte [rsi], al
mov rsi, qword [rsi + 8]
mov qword [rsp + 0x130], rsi
jmp 0x47cde9
mov rsi, qword [rsp + 0x298]
test byte [rsi], al
mov rcx, qword [rsi + 0x20]
mov rsi, qword [rsi + 0x18]
lea r8, [rax + 1]
cmp rcx, r8
ja 0x47cdd4
jmp 0x47d14a
lea rsi, [rsi + rax*8]
lea rsi, [rsi + 8]
mov rsi, qword [rsi]
mov qword [rsp + 0x130], rsi
jmp 0x47cde9
mov rsi, qword [rsp + 0x298]
test byte [rsi], al
mov rdx, qword [rsi + 0x10]
mov rsi, qword [rsi]
mov rax, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0x130]
cmp rdx, rcx
jae 0x47ce14
jmp 0x47d145
cmp rcx, rax
jae 0x47ce1e
jmp 0x47d140
sub rdx, rax
lea r8, [rax + rax*2]
mov r9, rdx
neg rdx
shl r8, 4
sar rdx, 0x3f
and r8, rdx
lea rdx, [rsi + r8]
mov qword [rsp + 0x348], rdx
sub rcx, rax
mov qword [rsp + 0x350], rcx
mov qword [rsp + 0x358], r9
mov qword [rsp + 0x2e8], rdx
mov qword [rsp + 0x2f0], rcx
mov qword [rsp + 0x2f8], r9
jmp 0x47ce6f
mov qword [rsp + 0x348], rdx
mov qword [rsp + 0x350], rcx
mov qword [rsp + 0x358], r9
mov qword [rsp + 0x158], 0
mov qword [rsp + 0x150], rcx
mov rdx, qword [rsp + 0x348]
mov qword [rsp + 0x148], rdx
jmp 0x47cffd
mov rax, qword [rsp + 0x3a8]
sub rax, qword [rsp + 0xd0]
mov qword [rsp + 0x3a8], rax
movups xmmword [rsp + 0x418], xmm15
lea rdi, [rsp + 0x420]
lea rdi, [rdi - 0x10]
nop dword [rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0045f18f
mov rbp, qword [rbp]
mov rax, qword [rsp + 0x3c0]
mov qword [rsp + 0x418], rax
movups xmm0, xmmword [rsp + 0x3c8]
movups xmmword [rsp + 0x420], xmm0
movups xmm0, xmmword [rsp + 0x3d8]
movups xmmword [rsp + 0x430], xmm0
movups xmm0, xmmword [rsp + 0x3e8]
movups xmmword [rsp + 0x440], xmm0
movups xmm0, xmmword [rsp + 0x3f8]
movups xmmword [rsp + 0x450], xmm0
mov rax, qword [rsp + 0x378]
mov qword [rsp + 0x460], rax
movups xmm0, xmmword [rsp + 0x380]
movups xmmword [rsp + 0x468], xmm0
movups xmm0, xmmword [rsp + 0x390]
movups xmmword [rsp + 0x478], xmm0
movups xmm0, xmmword [rsp + 0x3a0]
movups xmmword [rsp + 0x488], xmm0
movups xmm0, xmmword [rsp + 0x3b0]
movups xmmword [rsp + 0x498], xmm0
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x4a8], rax
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x4b0], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x4b8], rax
mov rax, qword [rsp + 0x250]
mov qword [rsp + 0x4c0], rax
movzx eax, word [rsp + 0x50]
mov word [rsp + 0x4c8], ax
movzx eax, word [rsp + 0x4c]
mov word [rsp + 0x4ca], ax
mov rbp, qword [rsp + 0x408]
add rsp, 0x410
ret
mov rdx, qword [rsp + 0x158]
cmp qword [rsp + 0x150], rdx
jg 0x47d014
jmp 0x47d10f
mov rdx, qword [rsp + 0x148]
mov qword [rsp + 0x2a8], rdx
movups xmm0, xmmword [rdx]
movups xmmword [rsp + 0x1b8], xmm0
movups xmm0, xmmword [rdx + 0x10]
movups xmmword [rsp + 0x1c8], xmm0
movups xmm0, xmmword [rdx + 0x20]
movups xmmword [rsp + 0x1d8], xmm0
cmp qword [rsp + 0x1b8], 3
je 0x47d057
jmp 0x47d0ea
lea rdx, [rsp + 0x4c]
mov qword [rsp + 0x280], rdx
mov rcx, qword [rsp + 0x1d8]
mov qword [rsp + 0xf0], rcx
mov rsi, rcx
sar rcx, 0x3f
shr rcx, 0x3d
lea rax, [rsi + rcx]
sar rax, 3
mov qword [rsp + 0x140], rax
test byte [rdx], al
cmp rax, 2
jb 0x47d09c
jmp 0x47d134
lea r8, [rsp + rax + 0x4c]
movzx r8d, byte [r8]
mov rcx, rsi
sar rsi, 0x3f
shr rsi, 0x3d
add rsi, rcx
and rsi, 0xfffffffffffffff8
sub rcx, rsi
test rcx, rcx
jge 0x47d0c2
nop
jmp 0x47d12f
test byte [rdx], al
cmp rcx, 0x20
sbb edx, edx
mov esi, 1
shl esi, cl
and esi, edx
or r8d, esi
cmp rax, 2
jb 0x47d0de
jmp 0x47d125
lea rdx, [rsp + rax + 0x4c]
mov byte [rdx], r8b
jmp 0x47d0e8
jmp 0x47d0ec
jmp 0x47d0ec
jmp 0x47d0ee
inc qword [rsp + 0x158]
mov rdx, qword [rsp + 0x2a8]
add rdx, 0x30
mov qword [rsp + 0x148], rdx
jmp 0x47cffd
jmp 0x47d111
jmp 0x47d113
inc qword [rsp + 0x170]
nop dword [rax + rax]
jmp 0x47cc8f
mov ecx, 2
call fcn.0045eee0
call fcn.00432420
mov ecx, 2
call fcn.0045eee0
nop
call fcn.0045efa0
call fcn.0045ef60
mov rax, r8
call fcn.0045eee0
call fcn.0045eee0
call fcn.0045f040
nop dword [rax]
call fcn.0045f020
mov rsi, qword [rsp + 0x190]
cmp qword [rsp + 0x188], rsi
jg 0x47d17c
jmp 0x47d27a
mov rsi, qword [rsp + 0x180]
mov qword [rsp + 0x2b8], rsi
movups xmm0, xmmword [rsi]
movups xmmword [rsp + 0x1e8], xmm0
movups xmm0, xmmword [rsi + 0x10]
movups xmmword [rsp + 0x1f8], xmm0
movups xmm0, xmmword [rsi + 0x20]
movups xmmword [rsp + 0x208], xmm0
cmp qword [rsp + 0x1e8], 3
je 0x47d1bf
jmp 0x47d255
lea rsi, [rsp + 0x50]
mov qword [rsp + 0x288], rsi
mov rcx, qword [rsp + 0x208]
mov qword [rsp + 0x100], rcx
mov r8, rcx
sar rcx, 0x3f
shr rcx, 0x3d
lea rax, [r8 + rcx]
sar rax, 3
mov qword [rsp + 0x178], rax
test byte [rsi], al
cmp rax, 2
jb 0x47d205
nop
jmp 0x47d29a
lea r9, [rsp + rax + 0x50]
movzx r9d, byte [r9]
mov rcx, r8
sar r8, 0x3f
shr r8, 0x3d
add r8, rcx
and r8, 0xfffffffffffffff8
sub rcx, r8
test rcx, rcx
jge 0x47d22a
jmp 0x47d295
test byte [rsi], al
cmp rcx, 0x20
sbb esi, esi
mov r8d, 1
shl r8d, cl
and r8d, esi
or r9d, r8d
cmp rax, 2
jb 0x47d249
jmp 0x47d28b
lea rsi, [rsp + rax + 0x50]
mov byte [rsi], r9b
jmp 0x47d253
jmp 0x47d257
jmp 0x47d257
jmp 0x47d259
inc qword [rsp + 0x190]
mov rsi, qword [rsp + 0x2b8]
add rsi, 0x30
mov qword [rsp + 0x180], rsi
jmp 0x47d165
jmp 0x47d27c
jmp 0x47d27e
inc qword [rsp + 0x1a8]
jmp 0x47c769
mov ecx, 2
call fcn.0045eee0
call fcn.00432420
mov ecx, 2
nop
call fcn.0045eee0
call fcn.0045efa0
call fcn.0045ef60
mov rax, r8
call fcn.0045eee0
call fcn.0045eee0
nop dword [rax]
call fcn.0045f020
mov ebx, 0x100000
call fcn.0045efe0
jmp 0x47c5c7
mov rsi, qword [rsp + 0x270]
test byte [rsi], al
mov eax, dword [rsi]
shr eax, 3
mov dword [rsp + 0x58], eax
mov rsi, qword [rsp + 0x270]
test byte [rsi], al
mov rcx, qword [rsi + 0x10]
mov rsi, qword [rsi + 8]
cmp rcx, rax
ja 0x47d302
nop
jmp 0x47d372
mov r8, qword [rsp + 0x270]
test byte [r8], al
mov r9, qword [rsp + 0x270]
test byte [r9], al
mov r10, qword [r8 + 0x10]
mov r8, qword [r8 + 8]
add rsi, rax
movzx esi, byte [rsi]
movzx r11d, byte [rsp + 0x48]
mov ecx, dword [r9]
and ecx, 7
shl r11d, cl
or esi, r11d
cmp r10, rax
ja 0x47d33f
jmp 0x47d36a
add r8, rax
mov byte [r8], sil
mov rsi, qword [rsp + 0x270]
test byte [rsi], al
mov r8, qword [rsp + 0x270]
test byte [r8], al
mov esi, dword [rsi]
inc esi
mov dword [r8], esi
jmp 0x47d363
jmp 0x47d365
jmp 0x47d2cf
mov rcx, r10
call fcn.0045eee0
call fcn.0045eee0
cmp qword [rsp + 0x110], 8
jl 0x47d387
jmp 0x47d409
mov r8, qword [rsp + 0x270]
test byte [r8], al
mov rbx, qword [r8 + 0x10]
inc rbx
mov rcx, qword [r8 + 0x18]
mov rax, qword [r8 + 8]
cmp rcx, rbx
jae 0x47d3a8
jmp 0x47d3aa
jmp 0x47d3bd
mov edi, 1
lea rsi, [0x004e9a00]
call fcn.004461c0
jmp 0x47d3bd
lea r8, [rbx + rax]
lea r8, [r8 - 1]
mov byte [r8], 0
mov rdi, qword [rsp + 0x270]
test byte [rdi], al
mov qword [rdi + 0x10], rbx
mov qword [rdi + 0x18], rcx
lea r8, [rdi + 8]
cmp dword [0x005fe8e0], 0
je 0x47d3ea
jmp 0x47d3f0
mov qword [rdi + 8], rax
jmp 0x47d3fa
mov rdi, r8
call fcn.0045ea40
jmp 0x47d3fa
jmp 0x47d3fc
inc qword [rsp + 0x110]
jmp 0x47d377
jmp 0x47d2d4
mov rsi, qword [rsp + 0x278]
test byte [rsi], al
mov eax, dword [rsi]
shr eax, 3
mov dword [rsp + 0x5c], eax
mov rsi, qword [rsp + 0x278]
test byte [rsi], al
mov rcx, qword [rsi + 0x10]
mov rsi, qword [rsi + 8]
cmp rcx, rax
ja 0x47d43a
jmp 0x47d4ad
mov r8, qword [rsp + 0x278]
test byte [r8], al
mov r9, qword [rsp + 0x278]
test byte [r9], al
mov r10, qword [r8 + 0x10]
mov r8, qword [r8 + 8]
add rsi, rax
movzx esi, byte [rsi]
movzx r11d, byte [rsp + 0x49]
mov ecx, dword [r9]
and ecx, 7
shl r11d, cl
or esi, r11d
cmp r10, rax
ja 0x47d477
jmp 0x47d4a5
add r8, rax
mov byte [r8], sil
mov rsi, qword [rsp + 0x278]
test byte [rsi], al
mov r8, qword [rsp + 0x278]
test byte [r8], al
mov esi, dword [rsi]
inc esi
mov dword [r8], esi
jmp 0x47d4a0
jmp 0x47d365
mov rcx, r10
call fcn.0045eee0
call fcn.0045eee0
cmp qword [rsp + 0x118], 8
jl 0x47d4c5
nop dword [rax]
jmp 0x47d548
mov r8, qword [rsp + 0x278]
test byte [r8], al
mov rbx, qword [r8 + 0x10]
inc rbx
mov rcx, qword [r8 + 0x18]
mov rax, qword [r8 + 8]
nop
cmp rcx, rbx
jae 0x47d4e7
jmp 0x47d4e9
jmp 0x47d4fc
mov edi, 1
lea rsi, [0x004e9a00]
call fcn.004461c0
jmp 0x47d4fc
lea r8, [rbx + rax]
lea r8, [r8 - 1]
mov byte [r8], 0
mov rdi, qword [rsp + 0x278]
test byte [rdi], al
mov qword [rdi + 0x10], rbx
mov qword [rdi + 0x18], rcx
lea r8, [rdi + 8]
cmp dword [0x005fe8e0], 0
je 0x47d529
jmp 0x47d52f
mov qword [rdi + 8], rax
jmp 0x47d539
mov rdi, r8
call fcn.0045ea40
jmp 0x47d539
jmp 0x47d53b
inc qword [rsp + 0x118]
jmp 0x47d4b2
jmp 0x47d40e
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xc8], rbx
nop dword [rax]
call fcn.0045c880
mov rax, qword [rsp + 0xc0]
mov rbx, qword [rsp + 0xc8]
jmp fcn.0047c3e0