Function at 0x4cbe20
Capabilities:
Encode data using base64

Disassembly:
lea r12, [rsp - 0x148]
cmp r12, qword [r14 + 0x10]
jbe 0x4cec56
sub rsp, 0x1c8
mov qword [rsp + 0x1c0], rbp
lea rbp, [rsp + 0x1c0]
mov qword [rsp + 0x1d8], rbx
mov qword [rsp + 0x1e0], rcx
mov rdx, qword [rax + 0x30]
mov r10, qword [rax + 0x38]
cmp qword [rax + 0x378], 1
jne 0x4cbf2e
test sil, sil
jne 0x4cbf2e
mov r11, qword [0x005c2f60]
mov r12, qword [0x005c2f68]
cmp rdi, r12
jae 0x4cec4a
shl rdi, 5
mov r12, qword [r11 + rdi]
mov r13, qword [r11 + rdi + 8]
mov r15, qword [r11 + rdi + 0x10]
mov r11, qword [r11 + rdi + 0x18]
sub rdx, r15
lea rdx, [r12 + rdx]
lea rdx, [rdx - 1]
test r12, r12
je 0x4cec45
mov rdi, rax
mov rax, rdx
cmp r12, 0xffffffffffffffff
je 0x4cbecd
cqo
idiv r12
jmp 0x4cbed2
neg rax
xor edx, edx
sub r10, r11
lea rdx, [r13 + r10]
lea rdx, [rdx - 1]
nop
test r13, r13
je 0x4cec40
mov r8, rax
mov rax, rdx
cmp r13, 0xffffffffffffffff
je 0x4cbefc
cqo
idiv r13
jmp 0x4cbf01
neg rax
xor edx, edx
test r8, r8
je 0x4cbf0b
test rax, rax
jne 0x4cbf25
xor eax, eax
xor ebx, ebx
mov rcx, rax
mov rdi, rbx
mov rbp, qword [rsp + 0x1c0]
add rsp, 0x1c8
ret
mov rdx, r8
mov r10, rax
mov rax, rdi
mov qword [rsp + 0x1d0], rax
mov byte [rsp + 0x1f0], sil
mov qword [rsp + 0x1e0], rcx
mov qword [rsp + 0x1d8], rbx
mov qword [rsp + 0x90], rdx
mov qword [rsp + 0xd8], r10
mov r11, qword [rax + 0x60]
cmp r11, 0xa
jg 0x4cc2c8
cmp r11, 5
jg 0x4cc125
lea r8, [r11 - 1]
nop word [rax + rax]
cmp r8, 3
ja 0x4cc073
mov r8, qword [rax + 0x40]
mov qword [rsp + 0xf0], r8
cmp byte [rax + 0x380], 0
je 0x4cbfdd
test rdx, rdx
mov eax, 0
cmovl rax, rdx
mov ebx, 0
mov rcx, rdx
cmovl rcx, rbx
test r10, r10
cmovl rbx, r10
mov esi, 0
mov rdi, r10
cmovl rdi, rsi
call fcn.004c36e0
lea rcx, [0x00528780]
mov rdx, rax
xor ebx, ebx
jmp 0x4cc019
test rdx, rdx
mov eax, 0
cmovl rax, rdx
mov ebx, 0
mov rcx, rdx
cmovl rcx, rbx
test r10, r10
cmovl rbx, r10
mov esi, 0
mov rdi, r10
cmovl rdi, rsi
call fcn.004c3a20
lea rcx, [0x00528720]
xor edx, edx
mov rbx, rax
movzx esi, byte [rsp + 0x1f0]
mov r10, qword [rsp + 0xd8]
mov rdi, rbx
mov r8, rdx
xor r9d, r9d
xor r11d, r11d
xor r12d, r12d
xor r13d, r13d
xor r15d, r15d
mov qword [rsp + 0xc8], rcx
mov qword [rsp + 0x188], rax
mov rax, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x1e0]
mov rdx, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x1d8]
jmp 0x4cc6eb
cmp r11, 5
jne 0x4cc56d
test rdx, rdx
mov eax, 0
cmovl rax, rdx
mov ebx, 0
mov rcx, rdx
cmovl rcx, rbx
test r10, r10
cmovl rbx, r10
mov esi, 0
mov rdi, r10
cmovl rdi, rsi
call fcn.004c36e0
mov rcx, qword [rsp + 0x1e0]
mov rdx, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x1d8]
movzx esi, byte [rsp + 0x1f0]
mov r10, qword [rsp + 0xd8]
xor edi, edi
mov r8, rax
xor r9d, r9d
xor r11d, r11d
xor r12d, r12d
xor r13d, r13d
xor r15d, r15d
lea rax, [0x00528780]
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0x188], r8
mov ecx, 0x10
mov qword [rsp + 0xf0], rcx
mov rax, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x1e0]
nop dword [rax]
jmp 0x4cc6eb
cmp r11, 6
jne 0x4cc218
cmp byte [rax + 0x380], 0
je 0x4cc176
test rdx, rdx
mov eax, 0
cmovl rax, rdx
mov ebx, 0
mov rcx, rdx
cmovl rcx, rbx
test r10, r10
cmovl rbx, r10
mov esi, 0
mov rdi, r10
cmovl rdi, rsi
call fcn.004c36e0
lea rcx, [0x00528780]
mov rdx, rax
xor ebx, ebx
jmp 0x4cc1b2
test rdx, rdx
mov eax, 0
cmovl rax, rdx
mov ebx, 0
mov rcx, rdx
cmovl rcx, rbx
test r10, r10
cmovl rbx, r10
mov esi, 0
mov rdi, r10
cmovl rdi, rsi
call fcn.004c3300
lea rcx, [0x00528810]
xor edx, edx
mov rbx, rax
movzx esi, byte [rsp + 0x1f0]
mov r10, qword [rsp + 0xd8]
xor edi, edi
mov r8, rdx
mov r9, rbx
xor r11d, r11d
xor r12d, r12d
xor r13d, r13d
xor r15d, r15d
mov qword [rsp + 0xc8], rcx
mov qword [rsp + 0x188], rax
mov edx, 0x18
mov qword [rsp + 0xf0], rdx
mov rax, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x1e0]
mov rdx, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x1d8]
jmp 0x4cc6eb
test rdx, rdx
mov ebx, 0
cmovl rbx, rdx
mov r11d, 0
mov rcx, rdx
cmovl rcx, r11
test r10, r10
cmovl r11, r10
mov r12d, 0
mov rdi, r10
cmovl rdi, r12
mov r12, qword [rax + 0x40]
mov qword [rsp + 0xf0], r12
mov rsi, qword [rax + 0x48]
mov r8, qword [rax + 0x50]
mov r9, qword [rax + 0x58]
mov rax, rbx
mov rbx, r11
call fcn.004c3d40
mov rcx, qword [rsp + 0x1e0]
mov rdx, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x1d8]
movzx esi, byte [rsp + 0x1f0]
mov r10, qword [rsp + 0xd8]
xor edi, edi
xor r8d, r8d
xor r9d, r9d
mov r11, rax
xor r12d, r12d
xor r13d, r13d
xor r15d, r15d
lea rax, [0x005287e0]
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0x188], r11
mov rax, qword [rsp + 0x1d0]
jmp 0x4cc6eb
cmp r11, 0xc
jg 0x4cc46a
cmp r11, 0xb
je 0x4cc3c5
cmp byte [rax + 0x380], 0
je 0x4cc323
test rdx, rdx
mov eax, 0
cmovl rax, rdx
mov ebx, 0
mov rcx, rdx
cmovl rcx, rbx
test r10, r10
cmovl rbx, r10
mov esi, 0
mov rdi, r10
cmovl rdi, rsi
call fcn.004c38e0
lea rcx, [0x005287b0]
mov rdx, rax
xor ebx, ebx
jmp 0x4cc35f
test rdx, rdx
mov eax, 0
cmovl rax, rdx
mov ebx, 0
mov rcx, rdx
cmovl rcx, rbx
test r10, r10
cmovl rbx, r10
mov esi, 0
mov rdi, r10
cmovl rdi, rsi
call fcn.004c3c00
lea rcx, [0x00528750]
xor edx, edx
mov rbx, rax
movzx esi, byte [rsp + 0x1f0]
mov r10, qword [rsp + 0xd8]
xor edi, edi
xor r8d, r8d
xor r9d, r9d
xor r11d, r11d
mov r12, rbx
xor r13d, r13d
mov r15, rdx
mov qword [rsp + 0xc8], rcx
mov qword [rsp + 0x188], rax
mov edx, 0x10
mov qword [rsp + 0xf0], rdx
mov rax, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x1e0]
mov rdx, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x1d8]
jmp 0x4cc6eb
test rdx, rdx
mov eax, 0
cmovl rax, rdx
mov ebx, 0
mov rcx, rdx
cmovl rcx, rbx
test r10, r10
cmovl rbx, r10
mov esi, 0
mov rdi, r10
cmovl rdi, rsi
call fcn.004c36e0
mov rcx, qword [rsp + 0x1e0]
mov rdx, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x1d8]
movzx esi, byte [rsp + 0x1f0]
mov r10, qword [rsp + 0xd8]
xor edi, edi
mov r8, rax
xor r9d, r9d
xor r11d, r11d
xor r12d, r12d
xor r13d, r13d
xor r15d, r15d
lea rax, [0x00528780]
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0x188], r8
mov ecx, 0x20
mov qword [rsp + 0xf0], rcx
mov rax, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x1e0]
jmp 0x4cc6eb
cmp r11, 0xd
je 0x4cc64b
cmp r11, 0xe
jne 0x4cc567
cmp byte [rax + 0x380], 0
je 0x4cc4c5
test rdx, rdx
mov eax, 0
cmovl rax, rdx
mov ebx, 0
mov rcx, rdx
cmovl rcx, rbx
test r10, r10
cmovl rbx, r10
mov esi, 0
mov rdi, r10
cmovl rdi, rsi
call fcn.004c38e0
lea rcx, [0x005287b0]
mov rdx, rax
xor ebx, ebx
jmp 0x4cc501
test rdx, rdx
mov eax, 0
cmovl rax, rdx
mov ebx, 0
mov rcx, rdx
cmovl rcx, rbx
test r10, r10
cmovl rbx, r10
mov esi, 0
mov rdi, r10
cmovl rdi, rsi
call fcn.004c3500
lea rcx, [0x00528840]
xor edx, edx
mov rbx, rax
movzx esi, byte [rsp + 0x1f0]
mov r10, qword [rsp + 0xd8]
xor edi, edi
xor r8d, r8d
xor r9d, r9d
xor r11d, r11d
xor r12d, r12d
mov r13, rbx
mov r15, rdx
mov qword [rsp + 0xc8], rcx
mov qword [rsp + 0x188], rax
mov edx, 0x30
mov qword [rsp + 0xf0], rdx
mov rax, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x1e0]
mov rdx, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x1d8]
jmp 0x4cc6eb
cmp r11, 0xf
je 0x4cc5a6
xor edi, edi
xor r8d, r8d
xor r9d, r9d
xor r11d, r11d
xor r12d, r12d
xor r13d, r13d
xor r15d, r15d
xor edi, edi
mov qword [rsp + 0xc8], rdi
xor edi, edi
mov qword [rsp + 0x188], rdi
xor edi, edi
mov qword [rsp + 0xf0], rdi
xor edi, edi
jmp 0x4cc6eb
test rdx, rdx
mov eax, 0
cmovl rax, rdx
mov ebx, 0
mov rcx, rdx
cmovl rcx, rbx
test r10, r10
cmovl rbx, r10
mov esi, 0
mov rdi, r10
cmovl rdi, rsi
call fcn.004c38e0
mov rcx, qword [rsp + 0x1e0]
mov rdx, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x1d8]
movzx esi, byte [rsp + 0x1f0]
mov r10, qword [rsp + 0xd8]
xor edi, edi
xor r8d, r8d
xor r9d, r9d
xor r11d, r11d
xor r12d, r12d
xor r13d, r13d
mov r15, rax
lea rax, [0x005287b0]
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0x188], r15
mov ecx, 0x40
mov qword [rsp + 0xf0], rcx
mov rax, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x1e0]
jmp 0x4cc6eb
test rdx, rdx
mov eax, 0
cmovl rax, rdx
mov ebx, 0
mov rcx, rdx
cmovl rcx, rbx
test r10, r10
cmovl rbx, r10
mov esi, 0
mov rdi, r10
cmovl rdi, rsi
call fcn.004c38e0
mov rcx, qword [rsp + 0x1e0]
mov rdx, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x1d8]
movzx esi, byte [rsp + 0x1f0]
mov r10, qword [rsp + 0xd8]
xor edi, edi
xor r8d, r8d
xor r9d, r9d
xor r11d, r11d
xor r12d, r12d
xor r13d, r13d
mov r15, rax
lea rax, [0x005287b0]
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0x188], r15
mov ecx, 0x20
mov qword [rsp + 0xf0], rcx
mov rax, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x1e0]
test sil, sil
jne 0x4cc7c2
mov qword [rsp + 0x170], r11
mov qword [rsp + 0x180], r8
mov qword [rsp + 0x198], rdi
mov qword [rsp + 0x160], r9
mov qword [rsp + 0x178], r15
mov qword [rsp + 0x190], r12
mov qword [rsp + 0x158], r13
mov rsi, qword [rsp + 0xf0]
imul rsi, rdx
lea r8, [rsi + 7]
sar r8, 0x3f
shr r8, 0x3d
lea rsi, [r8 + rsi]
lea rsi, [rsi + 7]
sar rsi, 3
lea rcx, [rsi + 1]
mov qword [rsp + 0x98], rcx
lea rax, [0x004db960]
mov rbx, rcx
call fcn.004456e0
mov qword [rsp + 0x1b8], rax
mov rbx, qword [rsp + 0x98]
mov rcx, rbx
lea rax, [0x004db960]
call fcn.004456e0
mov rdx, qword [rsp + 0xf0]
lea rsi, [rdx + 7]
sar rsi, 0x3f
shr rsi, 0x3d
lea rdx, [rdx + rsi]
lea rdx, [rdx + 7]
sar rdx, 3
mov qword [rsp + 0xe8], rdx
xor ecx, ecx
xor ebx, ebx
mov rsi, qword [rsp + 0x1b8]
nop
jmp 0x4cc805
mov rax, qword [rsp + 0xc8]
mov rbx, qword [rsp + 0x188]
xor ecx, ecx
xor edi, edi
mov rbp, qword [rsp + 0x1c0]
add rsp, 0x1c8
ret
mov r12, qword [rsp + 0xb0]
inc r12
mov rdx, qword [rsp + 0xe8]
mov rcx, r12
mov rbx, r9
mov rsi, r11
mov rax, r10
mov r9, qword [rsp + 0xd8]
cmp rcx, r9
jge 0x4ccfeb
mov qword [rsp + 0x1a0], rax
mov qword [rsp + 0x1b0], rsi
mov qword [rsp + 0xb0], rcx
mov qword [rsp + 0xa0], rbx
nop
mov rax, qword [rsp + 0x1d8]
mov rbx, qword [rsp + 0x1e0]
mov rcx, rsi
mov rdi, qword [rsp + 0x98]
mov rsi, rdi
mov r8, rsi
call fcn.0047f9e0
nop dword [rax]
test rbx, rbx
jne 0x4ccf32
mov rcx, qword [rsp + 0x98]
cmp rcx, 1
jb 0x4cec32
lea r8, [rcx - 1]
mov rsi, r8
neg r8
sar r8, 0x3f
and r8, 1
mov r10, qword [rsp + 0x1b0]
lea rax, [r10 + r8]
nop dword [rax]
cmp rcx, 1
jb 0x4cec28
mov qword [rsp + 0x150], rsi
mov qword [rsp + 0x1a8], rax
mov r11, qword [rsp + 0x1a0]
lea rdi, [r11 + r8]
movzx r12d, byte [r10]
cmp r12b, 1
ja 0x4cc8e5
test r12b, r12b
je 0x4cc94f
mov rdx, qword [rsp + 0xe8]
mov rbx, rdx
jmp 0x4cebf6
cmp r12b, 2
jne 0x4cc8f2
xor edx, edx
jmp 0x4cebcb
cmp r12b, 3
jne 0x4cc907
mov r12, qword [rsp + 0xe8]
xor edx, edx
jmp 0x4ceb18
cmp r12b, 4
jne 0x4ccf10
mov rbx, rsi
mov rcx, rbx
mov r8, rcx
mov r9, qword [rsp + 0xe8]
call fcn.004ca720
mov rax, qword [rsp + 0x1a8]
mov rcx, qword [rsp + 0x98]
mov rsi, qword [rsp + 0x150]
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r12, qword [rsp + 0x1d0]
mov r13, qword [r12 + 0x60]
nop dword [rax]
cmp r13, 7
jg 0x4ccca5
cmp r13, 3
jg 0x4cca8d
cmp r13, 1
jne 0x4cc9d0
cmp byte [r12 + 0x380], 0
je 0x4cc9b1
movzx edx, byte [r12 + 0x382]
mov byte [rsp + 0x39], dl
mov r13, qword [rsp + 0x180]
mov r15, qword [rsp + 0x90]
mov rbx, qword [rsp + 0xb0]
xor edi, edi
jmp 0x4ce9a2
mov rdx, qword [rsp + 0x90]
mov r9, qword [rsp + 0x198]
mov r13, qword [rsp + 0xb0]
xor ebx, ebx
jmp 0x4ce870
cmp r13, 2
jne 0x4cca2d
cmp byte [r12 + 0x380], 0
nop
je 0x4cca0e
movzx edx, byte [r12 + 0x382]
mov byte [rsp + 0x3a], dl
mov r13, qword [rsp + 0x180]
mov r15, qword [rsp + 0x90]
mov rbx, qword [rsp + 0xb0]
xor edi, edi
jmp 0x4ce706
mov rdx, qword [rsp + 0x90]
mov r9, qword [rsp + 0x198]
mov r13, qword [rsp + 0xb0]
xor ebx, ebx
jmp 0x4ce5da
cmp r13, 3
jne 0x4ccef8
cmp byte [r12 + 0x380], 0
je 0x4cca6e
movzx edx, byte [r12 + 0x382]
mov byte [rsp + 0x3c], dl
mov r13, qword [rsp + 0x180]
mov r15, qword [rsp + 0x90]
mov rbx, qword [rsp + 0xb0]
xor edi, edi
jmp 0x4ce46d
mov rdx, qword [rsp + 0x90]
mov r9, qword [rsp + 0x198]
mov r13, qword [rsp + 0xb0]
xor ebx, ebx
jmp 0x4ce340
cmp r13, 5
jg 0x4ccb94
nop word [rax + rax]
cmp r13, 4
jne 0x4ccb75
cmp byte [r12 + 0x380], 0
je 0x4ccae5
movzx edx, byte [r12 + 0x382]
mov byte [rsp + 0x3b], dl
mov r13, qword [rsp + 0x90]
mov r15, qword [rsp + 0x180]
mov rbx, qword [rsp + 0xb0]
xor edi, edi
nop dword [rax]
jmp 0x4ce2ea
mov rdx, qword [rsp + 0x198]
mov r9, qword [rdx + 8]
mov r13, qword [rdx]
mov r15, qword [rdx + 0x10]
mov rbx, r12
mov r12, qword [rsp + 0xa0]
cmp r12, r9
ja 0x4ce249
sub r9, r12
cmp r9, rsi
cmovg r9, rsi
mov rsi, r12
sub r12, r15
sar r12, 0x3f
and r12, rsi
add r12, r13
cmp r12, rax
je 0x4ccb69
mov rbx, rax
mov rcx, r9
mov rax, r12
call fcn.0045ef80
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0x198]
mov rbx, qword [rsp + 0x1d0]
mov rsi, qword [rsp + 0xa0]
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r9, qword [rdx + 0x18]
add r9, rsi
jmp 0x4ce23c
mov rdx, qword [rsp + 0x90]
mov r13, qword [rsp + 0x180]
mov r15, qword [rsp + 0xb0]
xor ebx, ebx
jmp 0x4ce1e6
cmp r13, 6
jne 0x4ccc85
cmp byte [r12 + 0x380], 0
je 0x4ccc4a
mov rdx, qword [rsp + 0x180]
mov r9, qword [rdx + 8]
mov qword [rsp + 0xa8], r9
mov r13, qword [rdx]
mov qword [rsp + 0x168], r13
movzx r15d, byte [r12 + 0x382]
mov byte [rsp + 0x3d], r15b
mov rbx, r10
movzx r10d, byte [r12 + 0x384]
mov byte [rsp + 0x3e], r10b
mov rdi, r12
movzx r12d, byte [r12 + 0x386]
mov byte [rsp + 0x3f], r12b
mov r8, qword [rsp + 0x90]
mov qword [rsp + 0x130], rax
xor eax, eax
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0x128], rcx
xor ecx, ecx
mov qword [rsp + 0xb8], rcx
mov rax, qword [rsp + 0x130]
mov rcx, qword [rsp + 0x128]
jmp 0x4cdffb
mov rdx, qword [rsp + 0x160]
mov r9, qword [rdx + 8]
mov r13, qword [rdx]
mov r15, qword [rsp + 0x90]
mov rbx, qword [rsp + 0xa0]
mov rdi, rbx
xor r8d, r8d
xor ebx, ebx
mov qword [rsp + 0xc0], rbx
mov rbx, rdi
nop dword [rax]
jmp 0x4cdeb8
mov r9, qword [rsp + 0x90]
mov r13, qword [rsp + 0x170]
mov r15, qword [rsp + 0xb0]
xor edx, edx
nop
jmp 0x4cdd20
cmp r13, 0xb
jg 0x4ccdb5
cmp r13, 9
jg 0x4cccf9
cmp r13, 8
jne 0x4cccda
mov r9, qword [rsp + 0x90]
mov r13, qword [rsp + 0x170]
mov r15, qword [rsp + 0xb0]
xor edx, edx
jmp 0x4cdbb2
mov r9, qword [rsp + 0x90]
mov r13, qword [rsp + 0x170]
mov r15, qword [rsp + 0xb0]
xor edx, edx
jmp 0x4cda42
cmp r13, 0xa
jne 0x4ccd25
mov r9, qword [rsp + 0x170]
cmp qword [r9 + 0x48], 0x100
je 0x4cd946
mov r13, qword [rsp + 0x90]
xor edx, edx
nop
jmp 0x4cd9ee
mov rdx, qword [rsp + 0x180]
mov r9, qword [rdx + 8]
mov r13, qword [rdx]
mov r15, qword [rdx + 0x10]
mov rbx, r12
mov r12, qword [rsp + 0xa0]
cmp r12, r9
ja 0x4cd93b
sub r9, r12
cmp r9, rsi
cmovg r9, rsi
mov rsi, r12
sub r12, r15
sar r12, 0x3f
and r12, rsi
add r12, r13
cmp r12, rax
je 0x4ccda9
mov rbx, rax
mov rcx, r9
mov rax, r12
call fcn.0045ef80
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0x180]
mov rbx, qword [rsp + 0x1d0]
mov rsi, qword [rsp + 0xa0]
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r9, qword [rdx + 0x18]
add r9, rsi
jmp 0x4cc7e6
cmp r13, 0xd
jg 0x4cce45
nop
cmp r13, 0xc
jne 0x4cce25
cmp byte [r12 + 0x380], 0
je 0x4cce05
movzx edx, word [r12 + 0x381]
rol dx, 8
mov word [rsp + 0x56], dx
mov r13, qword [rsp + 0x90]
mov r15, qword [rsp + 0x178]
mov rbx, qword [rsp + 0xb0]
xor edi, edi
nop dword [rax]
jmp 0x4cd8e5
mov rdx, qword [rsp + 0x90]
mov r9, qword [rsp + 0x190]
mov r13, qword [rsp + 0xb0]
xor ebx, ebx
nop
jmp 0x4cd7cf
mov rdx, qword [rsp + 0x90]
mov r13, qword [rsp + 0x178]
mov r15, qword [rsp + 0xb0]
xor ebx, ebx
nop
jmp 0x4cd68f
cmp r13, 0xe
jne 0x4cced3
cmp byte [r12 + 0x380], 0
je 0x4cceb4
movzx edx, word [r12 + 0x381]
rol dx, 8
mov word [rsp + 0x56], dx
movzx r13d, word [r12 + 0x383]
rol r13w, 8
mov word [rsp + 0x54], r13w
movzx r15d, word [r12 + 0x385]
rol r15w, 8
mov word [rsp + 0x52], r15w
mov rbx, qword [rsp + 0x90]
mov rdi, qword [rsp + 0x178]
mov r8, qword [rsp + 0xb0]
xor r9d, r9d
jmp 0x4cd460
mov rdx, qword [rsp + 0x90]
mov r13, qword [rsp + 0x158]
mov r15, qword [rsp + 0xb0]
xor ebx, ebx
jmp 0x4cd294
cmp r13, 0xf
jne 0x4ccef8
mov rdx, qword [rsp + 0x90]
mov r13, qword [rsp + 0x178]
mov r15, qword [rsp + 0xb0]
xor ebx, ebx
jmp 0x4cd0af
mov rdx, qword [rsp + 0x180]
mov rbx, r12
mov r9, qword [rsp + 0xa0]
jmp 0x4cc7e6
xor eax, eax
xor ebx, ebx
lea rcx, [0x005273e0]
lea rdi, [0x005267a8]
mov rbp, qword [rsp + 0x1c0]
add rsp, 0x1c8
ret
mov qword [rsp + 0x1b0], rcx
mov qword [rsp + 0xe0], rbx
mov rdx, qword [0x005cb688]
cmp qword [0x005cb680], rbx
je 0x4ccf56
xor eax, eax
jmp 0x4ccf75
mov rax, rbx
mov rbx, rcx
mov rcx, rdx
nop
call fcn.00403060
mov rcx, qword [rsp + 0x1b0]
mov rbx, qword [rsp + 0xe0]
test al, al
jne 0x4ccfaf
mov rdx, qword [0x005cb6d8]
cmp qword [0x005cb6d0], rbx
je 0x4ccf8d
xor eax, eax
jmp 0x4ccfab
mov rax, rbx
mov rbx, rcx
mov rcx, rdx
call fcn.00403060
mov rcx, qword [rsp + 0x1b0]
mov rbx, qword [rsp + 0xe0]
test al, al
je 0x4ccfd1
xor eax, eax
xor ebx, ebx
lea rcx, [0x005273e0]
lea rdi, [0x00526778]
mov rbp, qword [rsp + 0x1c0]
add rsp, 0x1c8
ret
xor eax, eax
mov rdi, rcx
mov rcx, rbx
xor ebx, ebx
mov rbp, qword [rsp + 0x1c0]
add rsp, 0x1c8
ret
mov rax, qword [rsp + 0xc8]
mov rbx, qword [rsp + 0x188]
xor ecx, ecx
xor edi, edi
mov rbp, qword [rsp + 0x1c0]
add rsp, 0x1c8
ret
mov qword [rsp + 0x148], rdi
shl r12d, 8
lea rdx, [rax + rdi*8]
lea rdx, [rdx + 7]
movzx r9d, byte [rdx]
or r9d, r12d
mov rbx, rdi
mov rcx, r15
mov edi, r10d
mov esi, r11d
movzx r8d, word [rsp + 0x4e]
mov rax, r13
nop
call fcn.004c3820
mov rdx, qword [rsp + 0x148]
lea rbx, [rdx + 1]
mov rdx, qword [rsp + 0x90]
mov rax, qword [rsp + 0x178]
mov rcx, qword [rsp + 0xb0]
mov r10, qword [rsp + 0x1a8]
mov r11, qword [rsp + 0x150]
mov rax, r10
mov rcx, qword [rsp + 0x98]
mov rsi, r11
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r12, qword [rsp + 0x1d0]
mov r13, qword [rsp + 0x178]
mov r15, qword [rsp + 0xb0]
cmp rbx, rdx
jge 0x4cd18e
mov rdi, rbx
shl rbx, 3
nop
cmp rbx, rsi
jae 0x4cd1f3
lea r12, [rax + rdi*8]
movzx r12d, byte [r12]
lea r10, [rbx + 1]
cmp r10, rsi
jae 0x4cd1e8
shl r12d, 8
lea r10, [rax + rdi*8]
lea r10, [r10 + 1]
movzx r10d, byte [r10]
or r10d, r12d
lea r12, [rbx + 2]
cmp r12, rsi
jae 0x4cd1dd
lea r12, [rax + rdi*8]
lea r12, [r12 + 2]
movzx r12d, byte [r12]
lea r11, [rbx + 3]
cmp r11, rsi
jae 0x4cd1d2
shl r12d, 8
lea r11, [rax + rdi*8]
lea r11, [r11 + 3]
movzx r11d, byte [r11]
or r11d, r12d
lea r12, [rbx + 4]
cmp r12, rsi
jae 0x4cd1c7
lea r12, [rax + rdi*8]
lea r12, [r12 + 4]
movzx r12d, byte [r12]
lea rdx, [rbx + 5]
cmp rdx, rsi
jae 0x4cd1bc
shl r12d, 8
lea rdx, [rax + rdi*8]
lea rdx, [rdx + 5]
movzx edx, byte [rdx]
or edx, r12d
lea r12, [rbx + 6]
cmp r12, rsi
jae 0x4cd1b1
mov word [rsp + 0x4e], dx
lea r12, [rax + rdi*8]
lea r12, [r12 + 6]
movzx r12d, byte [r12]
lea rdx, [rbx + 7]
cmp rdx, rsi
jb 0x4cd00f
jmp 0x4cd1a6
mov rdx, qword [rsp + 0x180]
mov rbx, r12
mov r9, qword [rsp + 0xa0]
jmp 0x4cc7e6
mov rax, rdx
mov rcx, rsi
call fcn.0045e620
mov rax, r12
mov rcx, rsi
call fcn.0045e620
mov rax, rdx
mov rcx, rsi
call fcn.0045e620
mov rax, r12
mov rcx, rsi
call fcn.0045e620
mov rax, r11
mov rcx, rsi
call fcn.0045e620
mov rax, r12
mov rcx, rsi
call fcn.0045e620
mov rax, r10
mov rcx, rsi
call fcn.0045e620
mov rax, rbx
mov rcx, rsi
call fcn.0045e620
mov qword [rsp + 0x78], rbx
shl r12d, 8
lea rdx, [rax + r8*2]
lea rdx, [rdx + 5]
movzx r8d, byte [rdx]
or r8d, r12d
mov rcx, r15
mov edi, r10d
mov esi, r11d
mov r9d, 0xffffffff
mov rax, r13
call fcn.004c3440
mov rdx, qword [rsp + 0x78]
lea rbx, [rdx + 1]
mov rdx, qword [rsp + 0x90]
mov rax, qword [rsp + 0x158]
mov rcx, qword [rsp + 0xb0]
mov r10, qword [rsp + 0x1a8]
mov r11, qword [rsp + 0x150]
mov rax, r10
mov rcx, qword [rsp + 0x98]
mov rsi, r11
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r12, qword [rsp + 0x1d0]
mov r13, qword [rsp + 0x158]
mov r15, qword [rsp + 0xb0]
cmp rbx, rdx
jge 0x4cd34c
lea r12, [rbx + rbx*2]
mov r8, r12
shl r12, 1
cmp r12, rsi
jae 0x4cd39c
lea r12, [rax + r8*2]
movzx r12d, byte [r12]
lea r10, [r8 + r8]
lea r10, [r10 + 1]
cmp r10, rsi
jae 0x4cd391
shl r12d, 8
lea r10, [rax + r8*2]
lea r10, [r10 + 1]
movzx r10d, byte [r10]
or r10d, r12d
lea r12, [r8 + r8]
lea r12, [r12 + 2]
cmp r12, rsi
jae 0x4cd386
lea r12, [rax + r8*2]
lea r12, [r12 + 2]
movzx r12d, byte [r12]
lea r11, [r8 + r8]
lea r11, [r11 + 3]
cmp r11, rsi
jae 0x4cd37b
shl r12d, 8
lea r11, [rax + r8*2]
lea r11, [r11 + 3]
movzx r11d, byte [r11]
or r11d, r12d
lea r12, [r8 + r8]
lea r12, [r12 + 4]
cmp r12, rsi
jae 0x4cd370
lea r12, [rax + r8*2]
lea r12, [r12 + 4]
movzx r12d, byte [r12]
lea rdx, [r8 + r8]
lea rdx, [rdx + 5]
cmp rdx, rsi
jb 0x4cd1fe
jmp 0x4cd365
mov rdx, qword [rsp + 0x180]
mov rbx, r12
mov r9, qword [rsp + 0xa0]
nop
jmp 0x4cc7e6
mov rax, rdx
mov rcx, rsi
call fcn.0045e620
mov rax, r12
mov rcx, rsi
call fcn.0045e620
mov rax, r11
mov rcx, rsi
call fcn.0045e620
mov rax, r12
mov rcx, rsi
call fcn.0045e620
mov rax, r10
mov rcx, rsi
call fcn.0045e620
mov rax, r12
mov rcx, rsi
call fcn.0045e620
mov qword [rsp + 0x88], r9
mov rax, rdi
mov rbx, r9
mov rcx, r8
mov edi, r11d
mov esi, r15d
mov r8d, r12d
movzx r9d, word [rsp + 0x50]
call fcn.004c3820
mov rdx, qword [rsp + 0x88]
lea r9, [rdx + 1]
mov rdx, qword [rsp + 0x90]
mov rax, qword [rsp + 0x178]
mov rcx, qword [rsp + 0xb0]
mov r10, qword [rsp + 0x1a8]
mov r11, qword [rsp + 0x150]
movzx r12d, word [rsp + 0x56]
movzx r13d, word [rsp + 0x52]
movzx r15d, word [rsp + 0x54]
mov rax, r10
mov rcx, qword [rsp + 0x98]
mov edx, r12d
mov rbx, qword [rsp + 0x90]
mov rsi, r11
mov rdi, qword [rsp + 0x178]
mov r8, qword [rsp + 0xb0]
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r12, qword [rsp + 0x1d0]
mov r13d, r15d
movzx r15d, word [rsp + 0x52]
nop dword [rax]
cmp r9, rbx
jge 0x4cd59e
lea r12, [r9 + r9*2]
mov qword [rsp + 0x148], r12
shl r12, 1
nop dword [rax + rax]
cmp r12, rsi
jae 0x4cd5e8
mov r12, qword [rsp + 0x148]
lea r10, [rax + r12*2]
movzx r10d, byte [r10]
lea r11, [r12 + r12]
lea r11, [r11 + 1]
cmp r11, rsi
jae 0x4cd5dd
shl r10d, 8
lea r11, [rax + r12*2]
lea r11, [r11 + 1]
movzx r11d, byte [r11]
or r11d, r10d
lea r10, [r12 + r12]
lea r10, [r10 + 2]
cmp r10, rsi
jae 0x4cd5d2
lea r10, [rax + r12*2]
lea r10, [r10 + 2]
movzx r10d, byte [r10]
lea r15, [r12 + r12]
lea r15, [r15 + 3]
cmp r15, rsi
jae 0x4cd5c7
shl r10d, 8
lea r15, [rax + r12*2]
lea r15, [r15 + 3]
movzx r15d, byte [r15]
or r15d, r10d
lea r10, [r12 + r12]
lea r10, [r10 + 4]
cmp r10, rsi
jae 0x4cd5bc
lea r10, [rax + r12*2]
lea r10, [r10 + 4]
movzx r10d, byte [r10]
lea r13, [r12 + r12]
lea r13, [r13 + 5]
cmp r13, rsi
jae 0x4cd5b1
shl r10d, 8
lea r12, [rax + r12*2]
lea r12, [r12 + 5]
movzx r12d, byte [r12]
or r12d, r10d
cmp dx, r11w
jne 0x4cd57b
movzx r10d, word [rsp + 0x54]
cmp r10w, r15w
jne 0x4cd573
movzx r13d, word [rsp + 0x52]
cmp r13w, r12w
jne 0x4cd587
mov qword [rsp + 0x140], rax
xor eax, eax
mov word [rsp + 0x50], ax
jmp 0x4cd3a7
movzx r13d, word [rsp + 0x52]
jmp 0x4cd587
movzx r10d, word [rsp + 0x54]
movzx r13d, word [rsp + 0x52]
mov qword [rsp + 0x138], rax
mov eax, 0xffffffff
mov word [rsp + 0x50], ax
jmp 0x4cd3a7
mov rdx, rbx
mov r13, qword [rsp + 0x158]
mov r15, r8
jmp 0x4cd34c
mov rax, r13
mov rcx, rsi
call fcn.0045e620
mov rax, r10
mov rcx, rsi
call fcn.0045e620
mov rax, r15
mov rcx, rsi
call fcn.0045e620
mov rax, r10
mov rcx, rsi
call fcn.0045e620
mov rax, r11
mov rcx, rsi
call fcn.0045e620
mov rax, r12
mov rcx, rsi
call fcn.0045e620
mov qword [rsp + 0x148], rdi
shl r12d, 8
lea rdx, [rax + rdi*4]
lea rdx, [rdx + 3]
movzx r9d, byte [rdx]
or r9d, r12d
mov rbx, rdi
mov rcx, r15
mov edi, r10d
mov esi, edi
mov r8d, esi
mov rax, r13
nop
call fcn.004c3820
mov rdx, qword [rsp + 0x148]
lea rbx, [rdx + 1]
mov rdx, qword [rsp + 0x90]
mov rax, qword [rsp + 0x178]
mov rcx, qword [rsp + 0xb0]
mov r10, qword [rsp + 0x150]
mov r11, qword [rsp + 0x1a8]
mov rax, r11
mov rcx, qword [rsp + 0x98]
mov rsi, r10
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r12, qword [rsp + 0x1d0]
mov r13, qword [rsp + 0x178]
mov r15, qword [rsp + 0xb0]
cmp rbx, rdx
jge 0x4cd6f4
mov rdi, rbx
shl rbx, 2
nop dword [rax + rax]
cmp rbx, rsi
jae 0x4cd730
lea r12, [rax + rdi*4]
movzx r12d, byte [r12]
lea r10, [rbx + 1]
cmp r10, rsi
jae 0x4cd725
shl r12d, 8
lea r10, [rax + rdi*4]
lea r10, [r10 + 1]
movzx r10d, byte [r10]
or r10d, r12d
lea r12, [rbx + 2]
cmp r12, rsi
jae 0x4cd717
lea r12, [rax + rdi*4]
lea r12, [r12 + 2]
movzx r12d, byte [r12]
lea r11, [rbx + 3]
cmp r11, rsi
jb 0x4cd5f3
jmp 0x4cd70c
mov rdx, qword [rsp + 0x180]
mov rbx, r12
mov r9, qword [rsp + 0xa0]
jmp 0x4cc7e6
mov rax, r11
mov rcx, rsi
call fcn.0045e620
mov rax, r12
mov rcx, rsi
nop dword [rax]
call fcn.0045e620
mov rax, r10
mov rcx, rsi
call fcn.0045e620
mov rax, rbx
mov rcx, rsi
call fcn.0045e620
mov qword [rsp + 0x148], r8
shl edi, 8
lea rdx, [rax + r8*2]
lea rdx, [rdx + 1]
movzx edx, byte [rdx]
or edi, edx
mov rbx, r8
mov rcx, r13
mov rax, r9
nop dword [rax]
call fcn.004c3b60
mov rdx, qword [rsp + 0x148]
lea rbx, [rdx + 1]
mov rdx, qword [rsp + 0x90]
mov rax, qword [rsp + 0x190]
mov rcx, qword [rsp + 0xb0]
mov rsi, qword [rsp + 0x1a8]
mov r8, qword [rsp + 0x150]
mov rax, rsi
mov rcx, qword [rsp + 0x98]
mov rsi, r8
mov r9, qword [rsp + 0x190]
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r12, qword [rsp + 0x1d0]
mov r13, qword [rsp + 0xb0]
cmp rbx, rdx
jge 0x4cd7fa
mov r8, rbx
shl rbx, 1
cmp rbx, rsi
jae 0x4cd81d
lea r15, [rax + r8*2]
movzx edi, byte [r15]
lea r15, [r8 + r8]
lea r15, [r15 + 1]
cmp r15, rsi
jb 0x4cd73b
jmp 0x4cd812
mov rdx, qword [rsp + 0x180]
mov rbx, r12
mov r9, qword [rsp + 0xa0]
jmp 0x4cc7e6
mov rax, r15
mov rcx, rsi
call fcn.0045e620
mov rax, rbx
mov rcx, rsi
call fcn.0045e620
mov qword [rsp + 0x148], r8
shl r12d, 8
lea r10, [rax + r8*2]
lea r10, [r10 + 1]
movzx esi, byte [r10]
or esi, r12d
cmp dx, si
mov r9d, 0xffffffff
mov r10d, 0
cmove r9w, r10w
mov rcx, rbx
mov edi, esi
mov rbx, r8
mov r8d, esi
mov rax, r15
call fcn.004c3820
mov rdx, qword [rsp + 0x148]
lea rdi, [rdx + 1]
mov rdx, qword [rsp + 0x90]
mov rax, qword [rsp + 0x178]
mov rcx, qword [rsp + 0xb0]
movzx r10d, word [rsp + 0x56]
mov r11, qword [rsp + 0x1a8]
mov r12, qword [rsp + 0x150]
mov rax, r11
mov rcx, qword [rsp + 0x98]
mov edx, r10d
mov rbx, qword [rsp + 0xb0]
mov rsi, r12
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r12, qword [rsp + 0x1d0]
mov r13, qword [rsp + 0x90]
mov r15, qword [rsp + 0x178]
cmp rdi, r13
jge 0x4cd911
mov r8, rdi
shl rdi, 1
cmp rdi, rsi
jae 0x4cd930
lea r12, [rax + r8*2]
movzx r12d, byte [r12]
lea r10, [r8 + r8]
lea r10, [r10 + 1]
cmp r10, rsi
jb 0x4cd828
jmp 0x4cd925
mov rdx, r13
mov r9, qword [rsp + 0x190]
mov r13, rbx
nop
jmp 0x4cd7fa
mov rax, r10
mov rcx, rsi
call fcn.0045e620
mov rax, rdi
mov rcx, rsi
call fcn.0045e620
mov rax, r12
mov rcx, r9
call fcn.0045e6e0
mov rdx, qword [r9 + 8]
mov r13, qword [r9]
mov r15, qword [r9 + 0x10]
mov rbx, r12
mov r12, qword [rsp + 0xa0]
nop dword [rax]
cmp r12, rdx
ja 0x4cd9da
sub rdx, r12
cmp rdx, rsi
cmovg rdx, rsi
mov rsi, r12
sub r12, r15
sar r12, 0x3f
and r12, rsi
add r12, r13
nop
cmp r12, rax
je 0x4cd9c3
mov rbx, rax
mov rcx, rdx
mov rax, r12
call fcn.0045ef80
mov rcx, qword [rsp + 0x98]
mov rbx, qword [rsp + 0x1d0]
mov rsi, qword [rsp + 0xa0]
mov r9, qword [rsp + 0x170]
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r12, qword [r9 + 0x18]
add r12, rsi
mov rdx, qword [rsp + 0x180]
mov r9, r12
jmp 0x4cc7e6
mov rax, r12
mov rcx, rdx
call fcn.0045e6e0
inc rdx
mov r10, rdi
mov r12, rbx
cmp rdx, r13
jge 0x4cd946
mov r15, qword [r9 + 0x50]
mov rbx, r12
mov r12, qword [r9 + 0x48]
cmp rdx, rsi
jae 0x4cda2d
mov rdi, r10
movzx r10d, byte [rdx + rax]
cmp r12, r10
jg 0x4cd9e5
inc r10
cmp r15, r10
jb 0x4cda22
mov qword [r9 + 0x48], r10
jmp 0x4cd9e5
mov rcx, r10
mov rdx, r15
call fcn.0045e6a0
mov rax, rdx
mov rcx, rsi
call fcn.0045e620
lea rdx, [rbx + 2]
mov r10, r8
mov r12, rdi
cmp rdx, r9
jge 0x4cda77
mov rbx, rdx
shr rdx, 0x3f
mov rdi, r12
lea r12, [rbx + rdx]
sar r12, 1
nop dword [rax + rax]
cmp r12, rsi
jae 0x4cdb9d
movzx r12d, byte [r12 + rax]
xor edx, edx
jmp 0x4cdac2
mov r8, r10
jmp 0x4cda38
mov rdx, qword [rsp + 0x180]
mov rbx, r12
mov r9, qword [rsp + 0xa0]
jmp 0x4cc7e6
inc rdx
movzx r12d, byte [rsp + 0x41]
shl r12d, 4
mov r10, qword [rsp + 0x90]
mov r15, qword [rsp + 0xb0]
mov r9, r10
mov r10, r8
mov r11, qword [rsp + 0x1a0]
mov r13, qword [rsp + 0x170]
cmp rdx, 2
jge 0x4cda72
mov r8, r10
lea r10, [rdx + rbx]
cmp r9, r10
jle 0x4cda38
mov byte [rsp + 0x41], r12b
shr r12b, 4
mov byte [rsp + 0x4d], r12b
mov r11, qword [r13 + 0x50]
movzx r12d, r12b
cmp qword [r13 + 0x48], r12
jg 0x4cdb0d
inc r12
nop word [rax + rax]
cmp r11, r12
jb 0x4cdb92
mov qword [r13 + 0x48], r12
mov r11, qword [r13 + 0x20]
mov r12, qword [r13 + 0x28]
mov r9, qword [r13 + 0x30]
mov r13, qword [r13 + 0x38]
nop dword [rax]
cmp r11, r10
jg 0x4cdb7a
cmp r9, r10
jle 0x4cdb7a
cmp r15, r12
jl 0x4cdb7a
cmp r15, r13
jge 0x4cdb7a
nop
mov r9, qword [rsp + 0x170]
mov r13, qword [r9 + 8]
mov qword [rsp + 0x150], r13
mov r13, qword [r9]
sub r15, r12
mov r12, qword [r9 + 0x18]
imul r12, r15
sub r10, r11
add r10, r12
mov r11, qword [rsp + 0x150]
cmp r11, r10
jbe 0x4cdb87
movzx r11d, byte [rsp + 0x4d]
mov byte [r13 + r10], r11b
jmp 0x4cda8f
mov r9, qword [rsp + 0x170]
jmp 0x4cda8f
mov rax, r10
mov rcx, r11
call fcn.0045e620
mov rcx, r12
mov rdx, r11
call fcn.0045e6a0
mov rax, r12
mov rcx, rsi
call fcn.0045e620
lea rdx, [rbx + 4]
mov r10, r8
mov r12, rdi
cmp rdx, r9
jge 0x4cdbe4
mov rbx, rdx
sar rdx, 0x3f
shr rdx, 0x3e
mov rdi, r12
lea r12, [rbx + rdx]
sar r12, 2
cmp r12, rsi
jae 0x4cdd08
movzx r12d, byte [r12 + rax]
xor edx, edx
jmp 0x4cdc2f
mov r8, r10
jmp 0x4cdba8
mov rdx, qword [rsp + 0x180]
mov rbx, r12
mov r9, qword [rsp + 0xa0]
jmp 0x4cc7e6
inc rdx
movzx r12d, byte [rsp + 0x45]
shl r12d, 2
mov r10, qword [rsp + 0x90]
mov r15, qword [rsp + 0xb0]
mov r9, r10
mov r10, r8
mov r11, qword [rsp + 0x1a0]
mov r13, qword [rsp + 0x170]
cmp rdx, 4
jge 0x4cdbdf
mov r8, r10
lea r10, [rdx + rbx]
nop dword [rax]
cmp r9, r10
jle 0x4cdba8
mov byte [rsp + 0x45], r12b
shr r12b, 6
mov byte [rsp + 0x4d], r12b
mov r11, qword [r13 + 0x50]
movzx r12d, r12b
nop
cmp qword [r13 + 0x48], r12
jg 0x4cdc76
inc r12
cmp r11, r12
jb 0x4cdcfd
mov qword [r13 + 0x48], r12
mov r11, qword [r13 + 0x20]
mov r12, qword [r13 + 0x28]
mov r9, qword [r13 + 0x30]
mov r13, qword [r13 + 0x38]
cmp r11, r10
jg 0x4cdce5
cmp r9, r10
jle 0x4cdce5
cmp r15, r12
jl 0x4cdce5
cmp r15, r13
jge 0x4cdce5
nop
mov r9, qword [rsp + 0x170]
mov r13, qword [r9 + 8]
mov qword [rsp + 0x150], r13
mov r13, qword [r9]
sub r15, r12
mov r12, qword [r9 + 0x18]
imul r12, r15
sub r10, r11
add r10, r12
mov r11, qword [rsp + 0x150]
cmp r11, r10
jbe 0x4cdcf2
movzx r11d, byte [rsp + 0x4d]
mov byte [r13 + r10], r11b
nop dword [rax + rax]
jmp 0x4cdbfc
mov r9, qword [rsp + 0x170]
jmp 0x4cdbfc
mov rax, r10
mov rcx, r11
call fcn.0045e620
mov rcx, r12
mov rdx, r11
call fcn.0045e6a0
mov rax, r12
mov rcx, rsi
call fcn.0045e620
lea rdx, [rbx + 8]
mov r10, r8
mov r12, rdi
nop dword [rax]
cmp rdx, r9
jge 0x4cdd57
mov rbx, rdx
sar rdx, 0x3f
shr rdx, 0x3d
mov rdi, r12
lea r12, [rbx + rdx]
sar r12, 3
nop dword [rax + rax]
cmp r12, rsi
jae 0x4cde7b
movzx r12d, byte [r12 + rax]
xor edx, edx
jmp 0x4cdda1
mov r8, r10
jmp 0x4cdd13
mov rdx, qword [rsp + 0x180]
mov rbx, r12
mov r9, qword [rsp + 0xa0]
jmp 0x4cc7e6
inc rdx
movzx r12d, byte [rsp + 0x44]
shl r12d, 1
mov r10, qword [rsp + 0x90]
mov r15, qword [rsp + 0xb0]
mov r9, r10
mov r10, r8
mov r11, qword [rsp + 0x1a0]
mov r13, qword [rsp + 0x170]
cmp rdx, 8
jge 0x4cdd52
mov r8, r10
lea r10, [rdx + rbx]
cmp r9, r10
jle 0x4cdd13
mov byte [rsp + 0x44], r12b
shr r12b, 7
mov byte [rsp + 0x4d], r12b
mov r11, qword [r13 + 0x50]
movzx r12d, r12b
cmp qword [r13 + 0x48], r12
jg 0x4cdde3
inc r12
cmp r11, r12
jb 0x4cde70
mov qword [r13 + 0x48], r12
mov r11, qword [r13 + 0x20]
mov r12, qword [r13 + 0x28]
mov r9, qword [r13 + 0x30]
mov r13, qword [r13 + 0x38]
cmp r11, r10
jg 0x4cde55
cmp r9, r10
jle 0x4cde55
nop dword [rax]
cmp r15, r12
jl 0x4cde55
cmp r15, r13
jge 0x4cde55
nop
mov r9, qword [rsp + 0x170]
mov r13, qword [r9 + 8]
mov qword [rsp + 0x150], r13
mov r13, qword [r9]
sub r15, r12
mov r12, qword [r9 + 0x18]
imul r12, r15
sub r10, r11
add r10, r12
mov r11, qword [rsp + 0x150]
nop dword [rax + rax]
cmp r11, r10
jbe 0x4cde65
movzx r11d, byte [rsp + 0x4d]
mov byte [r13 + r10], r11b
jmp 0x4cdd6f
mov r9, qword [rsp + 0x170]
nop dword [rax]
jmp 0x4cdd6f
mov rax, r10
mov rcx, r11
call fcn.0045e620
mov rcx, r12
mov rdx, r11
call fcn.0045e6a0
mov rax, r12
mov rcx, rsi
call fcn.0045e620
mov byte [rbx + r13 + 3], 0xff
inc r8
add rbx, 4
lea r10, [r12 + 3]
mov r11, qword [rsp + 0x1a0]
mov r12, qword [rsp + 0x1d0]
mov qword [rsp + 0xc0], r10
mov r10, qword [rsp + 0x1b0]
cmp r8, r15
jge 0x4cdf30
mov r12, qword [rsp + 0xc0]
cmp r12, rsi
jae 0x4cdf89
movzx r10d, byte [r12 + rax]
cmp rbx, r9
jae 0x4cdf7e
mov byte [r13 + rbx], r10b
lea r10, [r12 + 1]
cmp r10, rsi
jae 0x4cdf73
lea r10, [rbx + 1]
movzx r11d, byte [r12 + rax + 1]
cmp r9, r10
jbe 0x4cdf68
mov byte [rbx + r13 + 1], r11b
lea r10, [r12 + 2]
cmp r10, rsi
jae 0x4cdf5d
lea r10, [rbx + 2]
movzx r11d, byte [r12 + rax + 2]
cmp r9, r10
jbe 0x4cdf52
mov byte [rbx + r13 + 2], r11b
lea r10, [rbx + 3]
cmp r9, r10
ja 0x4cde86
jmp 0x4cdf47
mov r9, qword [rdx + 0x18]
add r9, rdi
mov rdx, qword [rsp + 0x180]
mov rbx, r12
jmp 0x4cc7e6
mov rax, r10
mov rcx, r9
call fcn.0045e620
mov rax, r10
mov rcx, r9
call fcn.0045e620
mov rax, r10
mov rcx, rsi
call fcn.0045e620
mov rax, r10
mov rcx, r9
call fcn.0045e620
mov rax, r10
mov rcx, rsi
call fcn.0045e620
mov rax, rbx
mov rcx, r9
call fcn.0045e620
mov rax, r12
mov rcx, rsi
call fcn.0045e620
movzx r9d, byte [rsp + 0x4c]
mov byte [r12 + r15 + 3], r9b
mov r9, qword [rsp + 0x70]
inc r9
lea r11, [r12 + 4]
add rdx, 3
movzx r12d, byte [rsp + 0x3d]
movzx r13d, byte [rsp + 0x3f]
movzx r10d, byte [rsp + 0x3e]
mov r12d, r13d
mov r13, r15
movzx r15d, byte [rsp + 0x3d]
mov qword [rsp + 0x70], r9
mov qword [rsp + 0xd0], r11
mov qword [rsp + 0xb8], rdx
mov rdx, qword [rsp + 0x180]
mov r9, qword [rsp + 0xa8]
mov r11, qword [rsp + 0x1a0]
mov r11, qword [rsp + 0x70]
cmp r11, r8
jge 0x4ce0da
mov rdx, qword [rsp + 0xb8]
cmp rdx, rsi
jae 0x4ce14a
movzx r11d, byte [rdx + rax]
lea r13, [rdx + 1]
cmp r13, rsi
jae 0x4ce13f
movzx r13d, byte [rdx + rax + 1]
lea r9, [rdx + 2]
cmp r9, rsi
jae 0x4ce134
movzx r9d, byte [rdx + rax + 2]
cmp r11b, r15b
jne 0x4ce06c
cmp r13b, r10b
jne 0x4ce06c
cmp r9b, r12b
jne 0x4ce06c
mov qword [rsp + 0x120], rax
xor eax, eax
mov byte [rsp + 0x4c], al
mov rax, qword [rsp + 0x120]
jmp 0x4ce085
mov qword [rsp + 0x118], rax
mov eax, 0xffffffff
mov byte [rsp + 0x4c], al
mov rax, qword [rsp + 0x118]
mov r12, qword [rsp + 0xd0]
mov r10, qword [rsp + 0xa8]
cmp r12, r10
jae 0x4ce129
mov r15, qword [rsp + 0x168]
mov byte [r15 + r12], r11b
lea r11, [r12 + 1]
cmp r10, r11
jbe 0x4ce11e
mov byte [r12 + r15 + 1], r13b
lea r11, [r12 + 2]
nop
cmp r10, r11
jbe 0x4ce113
mov byte [r12 + r15 + 2], r9b
lea r9, [r12 + 3]
cmp r10, r9
ja 0x4cdf94
jmp 0x4ce108
mov r13, qword [rdx + 0x18]
mov rax, qword [rsp + 0xa0]
lea r9, [rax + r13]
mov rdx, qword [rsp + 0x160]
mov r10, rbx
mov r11, qword [rsp + 0x1a0]
mov r12, rdi
mov r15, r8
jmp 0x4cdf37
mov rax, r9
mov rcx, r10
call fcn.0045e620
mov rax, r11
mov rcx, r10
call fcn.0045e620
mov rax, r11
mov rcx, r10
call fcn.0045e620
mov rax, r12
mov rcx, r10
call fcn.0045e620
mov rax, r9
mov rcx, rsi
call fcn.0045e620
mov rax, r13
mov rcx, rsi
call fcn.0045e620
mov rax, rdx
mov rcx, rsi
call fcn.0045e620
mov qword [rsp + 0x148], rdi
lea rdx, [rax + rdi*2]
lea rdx, [rdx + 1]
movzx r9d, byte [rdx]
mov rbx, rdi
mov rcx, r15
mov edi, r8d
mov esi, edi
mov rax, r13
call fcn.004c3640
mov rdx, qword [rsp + 0x148]
lea rbx, [rdx + 1]
mov rdx, qword [rsp + 0x90]
mov rax, qword [rsp + 0x180]
mov rcx, qword [rsp + 0xb0]
mov r10, qword [rsp + 0x150]
mov r11, qword [rsp + 0x1a8]
mov rax, r11
mov rcx, qword [rsp + 0x98]
mov rsi, r10
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r12, qword [rsp + 0x1d0]
mov r13, qword [rsp + 0x180]
mov r15, qword [rsp + 0xb0]
cmp rbx, rdx
jge 0x4ce213
mov rdi, rbx
shl rbx, 1
cmp rbx, rsi
jae 0x4ce231
lea r12, [rax + rdi*2]
movzx r8d, byte [r12]
lea r12, [rdi + rdi]
lea r12, [r12 + 1]
cmp r12, rsi
jb 0x4ce155
jmp 0x4ce226
mov rdx, r13
mov rbx, r12
mov r9, qword [rsp + 0xa0]
jmp 0x4cc7e6
mov rax, r12
mov rcx, rsi
call fcn.0045e620
mov rax, rbx
mov rcx, rsi
call fcn.0045e620
mov rdx, qword [rsp + 0x180]
jmp 0x4cc7e6
mov rax, r12
mov rcx, r9
call fcn.0045e6e0
mov qword [rsp + 0x80], rdi
mov rax, r15
mov rcx, rbx
mov esi, r8d
mov rbx, rdi
mov edi, esi
call fcn.004c3640
mov rdx, qword [rsp + 0x80]
lea rdi, [rdx + 1]
mov rdx, qword [rsp + 0x90]
mov rax, qword [rsp + 0x180]
mov rcx, qword [rsp + 0xb0]
movzx r10d, byte [rsp + 0x3b]
mov r11, qword [rsp + 0x1a8]
mov r12, qword [rsp + 0x150]
mov rax, r11
mov rcx, qword [rsp + 0x98]
mov edx, r10d
mov rbx, qword [rsp + 0xb0]
mov rsi, r12
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r12, qword [rsp + 0x1d0]
mov r13, qword [rsp + 0x90]
mov r15, qword [rsp + 0x180]
cmp rdi, r13
jge 0x4ce311
cmp rdi, rsi
jae 0x4ce329
movzx r8d, byte [rdi + rax]
cmp r8b, dl
jne 0x4ce306
xor r9d, r9d
jmp 0x4ce254
mov r9d, 0xffffffff
jmp 0x4ce254
mov rdx, qword [rsp + 0x198]
mov rbx, r12
mov r9, qword [rsp + 0xa0]
jmp 0x4ce23c
mov rax, rdi
mov rcx, rsi
call fcn.0045e620
lea rbx, [r15 + 2]
mov r10, r8
mov r12, rdi
nop
cmp rbx, rdx
jge 0x4ce375
mov r15, rbx
shr rbx, 0x3f
mov rdi, r12
lea r12, [r15 + rbx]
sar r12, 1
cmp r12, rsi
jae 0x4ce45b
mov qword [rsp + 0x150], r15
movzx r12d, byte [r12 + rax]
xor ebx, ebx
jmp 0x4ce3b5
mov r8, r10
jmp 0x4ce334
mov rdx, qword [rsp + 0x180]
mov rbx, r12
mov r9, qword [rsp + 0xa0]
jmp 0x4cc7e6
inc rbx
movzx r12d, byte [rsp + 0x47]
shl r12d, 4
mov r15, qword [rsp + 0x150]
mov rdx, qword [rsp + 0x90]
mov r10, r8
mov r11, qword [rsp + 0x1a0]
cmp rbx, 2
jge 0x4ce370
mov r8, r10
lea r10, [rbx + r15]
cmp rdx, r10
jle 0x4ce334
mov byte [rsp + 0x47], r12b
shr r12b, 4
mov byte [rsp + 0x4d], r12b
shl r12d, 4
movzx r11d, byte [rsp + 0x4d]
lea r11d, [r11 + r12]
mov byte [rsp + 0x40], r11b
mov r12, qword [r9 + 0x20]
mov r11, qword [r9 + 0x28]
mov rdx, qword [r9 + 0x30]
mov r15, qword [r9 + 0x38]
nop dword [rax]
cmp r12, r10
jg 0x4ce38d
cmp rdx, r10
jle 0x4ce38d
cmp r13, r11
jl 0x4ce38d
cmp r13, r15
jge 0x4ce38d
nop
mov rdx, qword [r9 + 8]
mov r15, qword [r9]
sub r13, r11
mov r11, qword [r9 + 0x18]
imul r11, r13
sub r10, r12
add r10, r11
cmp rdx, r10
jbe 0x4ce450
movzx edx, byte [rsp + 0x40]
mov byte [r15 + r10], dl
mov r13, qword [rsp + 0xb0]
jmp 0x4ce38d
mov rax, r10
mov rcx, rdx
call fcn.0045e620
mov rax, r12
mov rcx, rsi
call fcn.0045e620
lea rdi, [r8 + 2]
mov r12, r9
cmp rdi, r15
jge 0x4ce4af
mov r8, rdi
shr rdi, 0x3f
mov r9, r12
lea r12, [r8 + rdi]
sar r12, 1
cmp r12, rsi
jae 0x4ce5c5
mov qword [rsp + 0x148], r8
movzx r12d, byte [r12 + rax]
xor edi, edi
nop dword [rax + rax]
jmp 0x4ce56a
mov r10, qword [rsp + 0x1b0]
jmp 0x4ce466
mov rdx, r15
mov r9, qword [rsp + 0x198]
mov r13, rbx
nop dword [rax]
jmp 0x4ce375
mov rax, r13
mov rcx, rbx
mov edi, r11d
mov esi, edi
mov r8d, esi
mov r9d, r12d
mov rbx, r10
call fcn.004c3640
mov rdx, qword [rsp + 0x58]
lea rdi, [rdx + 1]
movzx r12d, byte [rsp + 0x42]
shl r12d, 4
mov rdx, qword [rsp + 0x148]
movzx r10d, byte [rsp + 0x3c]
mov rax, qword [rsp + 0x180]
mov r11, qword [rsp + 0x90]
mov rcx, qword [rsp + 0xb0]
mov rax, qword [rsp + 0x1a8]
mov rcx, qword [rsp + 0x98]
mov edx, r10d
mov rbx, qword [rsp + 0xb0]
mov rsi, qword [rsp + 0x150]
mov r8, qword [rsp + 0x148]
mov r9, qword [rsp + 0x1d0]
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r13, qword [rsp + 0x180]
mov r15, qword [rsp + 0x90]
cmp rdi, 2
jge 0x4ce466
lea r10, [rdi + r8]
nop dword [rax + rax]
cmp r15, r10
jle 0x4ce4a5
mov qword [rsp + 0x58], rdi
mov byte [rsp + 0x42], r12b
shr r12b, 4
mov byte [rsp + 0x4d], r12b
shl r12d, 4
movzx r11d, byte [rsp + 0x4d]
lea r11d, [r11 + r12]
cmp dl, r11b
jne 0x4ce5b7
xor r12d, r12d
jmp 0x4ce4c5
mov r12d, 0xffffffff
nop dword [rax]
jmp 0x4ce4c5
mov rax, r12
mov rcx, rsi
call fcn.0045e620
lea rbx, [r15 + 4]
mov r10, r8
mov r12, rdi
cmp rbx, rdx
jge 0x4ce614
mov r15, rbx
sar rbx, 0x3f
shr rbx, 0x3e
mov rdi, r12
lea r12, [r15 + rbx]
sar r12, 2
cmp r12, rsi
jae 0x4ce6f4
mov qword [rsp + 0x150], r15
movzx r12d, byte [r12 + rax]
xor ebx, ebx
jmp 0x4ce659
mov r8, r10
jmp 0x4ce5d0
mov rdx, qword [rsp + 0x180]
mov rbx, r12
mov r9, qword [rsp + 0xa0]
jmp 0x4cc7e6
inc rbx
shl r11d, 2
mov r15, qword [rsp + 0x150]
mov rdx, qword [rsp + 0x90]
mov r13, qword [rsp + 0xb0]
mov r10, r8
mov r12d, r11d
mov r11, qword [rsp + 0x1a0]
cmp rbx, 4
jge 0x4ce60f
mov r8, r10
lea r10, [rbx + r15]
cmp rdx, r10
jle 0x4ce5d0
mov r11, qword [r9 + 0x20]
mov rdx, qword [r9 + 0x28]
mov r15, qword [r9 + 0x30]
mov r9, qword [r9 + 0x38]
nop
cmp r11, r10
jg 0x4ce6d9
cmp r15, r10
jle 0x4ce6d9
cmp r13, rdx
jl 0x4ce6d9
cmp r13, r9
jge 0x4ce6d9
mov byte [rsp + 0x48], r12b
nop
mov r9, qword [rsp + 0x198]
mov r15, qword [r9 + 8]
mov r12, qword [r9]
sub r13, rdx
mov rdx, qword [r9 + 0x18]
imul rdx, r13
sub r10, r11
add rdx, r10
cmp r15, rdx
jbe 0x4ce6e9
movzx r10d, byte [rsp + 0x48]
mov r11d, r10d
shr r10b, 6
imul r10d, r10d, 0x55
mov byte [r12 + rdx], r10b
jmp 0x4ce62c
mov r9, qword [rsp + 0x198]
mov r11d, r12d
jmp 0x4ce62c
mov rax, rdx
mov rcx, r15
call fcn.0045e620
mov rax, r12
mov rcx, rsi
call fcn.0045e620
lea rdi, [r8 + 4]
mov r12, r9
cmp rdi, r15
jge 0x4ce748
mov r8, rdi
sar rdi, 0x3f
shr rdi, 0x3e
mov r9, r12
lea r12, [r8 + rdi]
sar r12, 2
cmp r12, rsi
jae 0x4ce85b
mov qword [rsp + 0x148], r8
movzx r12d, byte [r12 + rax]
xor edi, edi
jmp 0x4ce803
mov r10, qword [rsp + 0x1b0]
jmp 0x4ce6ff
mov rdx, r15
mov r9, qword [rsp + 0x198]
mov r13, rbx
jmp 0x4ce614
mov rax, r13
mov rcx, rbx
mov edi, r12d
mov esi, edi
mov r8d, esi
movzx r9d, byte [rsp + 0x4b]
mov rbx, r10
call fcn.004c3640
mov rdx, qword [rsp + 0x68]
lea rdi, [rdx + 1]
movzx r12d, byte [rsp + 0x46]
shl r12d, 2
mov rdx, qword [rsp + 0x148]
movzx r10d, byte [rsp + 0x3a]
mov rax, qword [rsp + 0x180]
mov r11, qword [rsp + 0x90]
mov rcx, qword [rsp + 0xb0]
mov rax, qword [rsp + 0x1a8]
mov rcx, qword [rsp + 0x98]
mov edx, r10d
mov rbx, qword [rsp + 0xb0]
mov rsi, qword [rsp + 0x150]
mov r8, qword [rsp + 0x148]
mov r9, qword [rsp + 0x1d0]
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r13, qword [rsp + 0x180]
mov r15, qword [rsp + 0x90]
cmp rdi, 4
jge 0x4ce6ff
lea r10, [rdi + r8]
cmp r15, r10
jle 0x4ce73e
mov qword [rsp + 0x68], rdi
mov byte [rsp + 0x46], r12b
shr r12b, 6
imul r12d, r12d, 0x55
cmp dl, r12b
jne 0x4ce845
mov qword [rsp + 0x108], rax
xor eax, eax
mov byte [rsp + 0x4b], al
nop
jmp 0x4ce75b
mov qword [rsp + 0x110], rax
mov eax, 0xffffffff
mov byte [rsp + 0x4b], al
jmp 0x4ce75b
mov rax, r12
mov rcx, rsi
call fcn.0045e620
lea rbx, [r15 + 8]
mov r10, r8
mov r12, rdi
cmp rbx, rdx
jge 0x4ce8aa
mov r15, rbx
sar rbx, 0x3f
shr rbx, 0x3d
mov rdi, r12
lea r12, [r15 + rbx]
sar r12, 3
cmp r12, rsi
jae 0x4ce990
mov qword [rsp + 0x150], r15
movzx r12d, byte [r12 + rax]
xor ebx, ebx
jmp 0x4ce8f1
mov r8, r10
jmp 0x4ce866
mov rdx, qword [rsp + 0x180]
mov rbx, r12
mov r9, qword [rsp + 0xa0]
nop dword [rax]
jmp 0x4cc7e6
inc rbx
shl r11d, 1
mov r15, qword [rsp + 0x150]
mov rdx, qword [rsp + 0x90]
mov r13, qword [rsp + 0xb0]
mov r10, r8
mov r12d, r11d
mov r11, qword [rsp + 0x1a0]
cmp rbx, 8
jge 0x4ce8a5
mov r8, r10
lea r10, [rbx + r15]
nop
cmp rdx, r10
jle 0x4ce866
mov r11, qword [r9 + 0x20]
mov rdx, qword [r9 + 0x28]
mov r15, qword [r9 + 0x30]
mov r9, qword [r9 + 0x38]
cmp r11, r10
jg 0x4ce973
nop
cmp r15, r10
jle 0x4ce973
cmp r13, rdx
jl 0x4ce973
cmp r13, r9
jge 0x4ce973
mov byte [rsp + 0x43], r12b
nop
mov r9, qword [rsp + 0x198]
mov r15, qword [r9 + 8]
mov r12, qword [r9]
sub r13, rdx
mov rdx, qword [r9 + 0x18]
imul rdx, r13
sub r10, r11
add rdx, r10
cmp r15, rdx
jbe 0x4ce985
movzx r10d, byte [rsp + 0x43]
mov r11d, r10d
shr r10b, 7
neg r10d
mov byte [r12 + rdx], r10b
jmp 0x4ce8c5
mov r9, qword [rsp + 0x198]
mov r11d, r12d
nop
jmp 0x4ce8c5
mov rax, rdx
mov rcx, r15
call fcn.0045e620
mov rax, r12
mov rcx, rsi
call fcn.0045e620
lea rdi, [r8 + 8]
mov r12, r9
cmp rdi, r15
jge 0x4ce9e7
mov r8, rdi
sar rdi, 0x3f
shr rdi, 0x3d
mov r9, r12
lea r12, [r8 + rdi]
sar r12, 3
nop dword [rax]
cmp r12, rsi
jae 0x4ceafb
mov qword [rsp + 0x148], r8
movzx r12d, byte [r12 + rax]
xor edi, edi
jmp 0x4ceaa1
mov r10, qword [rsp + 0x1b0]
jmp 0x4ce99b
mov rdx, r15
mov r9, qword [rsp + 0x198]
mov r13, rbx
jmp 0x4ce8aa
mov rax, r13
mov rcx, rbx
mov edi, r12d
mov esi, edi
mov r8d, esi
movzx r9d, byte [rsp + 0x4a]
mov rbx, r10
call fcn.004c3640
mov rdx, qword [rsp + 0x60]
lea rdi, [rdx + 1]
movzx r12d, byte [rsp + 0x49]
shl r12d, 1
mov rdx, qword [rsp + 0x148]
movzx r10d, byte [rsp + 0x39]
mov rax, qword [rsp + 0x180]
mov r11, qword [rsp + 0x90]
mov rcx, qword [rsp + 0xb0]
mov rax, qword [rsp + 0x1a8]
mov rcx, qword [rsp + 0x98]
mov edx, r10d
mov rbx, qword [rsp + 0xb0]
mov rsi, qword [rsp + 0x150]
mov r8, qword [rsp + 0x148]
mov r9, qword [rsp + 0x1d0]
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r13, qword [rsp + 0x180]
mov r15, qword [rsp + 0x90]
cmp rdi, 8
jge 0x4ce99b
lea r10, [rdi + r8]
cmp r15, r10
jle 0x4ce9dd
mov qword [rsp + 0x60], rdi
mov byte [rsp + 0x49], r12b
shr r12b, 7
neg r12d
cmp dl, r12b
jne 0x4ceae5
mov qword [rsp + 0xf8], rax
xor eax, eax
mov byte [rsp + 0x4a], al
nop dword [rax]
jmp 0x4ce9fa
mov qword [rsp + 0x100], rax
mov eax, 0xffffffff
mov byte [rsp + 0x4a], al
jmp 0x4ce9fa
mov rax, r12
mov rcx, rsi
call fcn.0045e620
movzx r15d, byte [rdx + rdi]
shr r15b, 1
add r13d, r15d
mov byte [rax + rdx], r13b
inc rdx
cmp rdx, r12
jge 0x4ceb32
nop dword [rax]
cmp rdx, rsi
jae 0x4cebb1
movzx r13d, byte [rdx + rax]
jb 0x4ceb06
jmp 0x4ceba6
mov rdx, r12
jmp 0x4ceb60
mov rbx, r15
movzx r15d, byte [r15 + rdi]
add r15, r12
mov r8, r15
shr r15, 0x3f
add r15, r8
sar r15, 1
add r13d, r15d
mov byte [rax + rbx], r13b
lea r12, [rbx + 1]
nop word [rax + rax]
cmp r12, rsi
jge 0x4cc94f
jae 0x4ceb9b
movzx r13d, byte [r12 + rax]
mov r15, r12
sub r12, rdx
cmp r12, rsi
jae 0x4ceb90
movzx r12d, byte [r12 + rax]
cmp r15, rsi
jb 0x4ceb37
mov rax, r15
mov rcx, rsi
call fcn.0045e620
mov rax, r12
mov rcx, rsi
call fcn.0045e620
mov rax, r12
mov rcx, rsi
call fcn.0045e620
mov rax, rdx
mov rcx, rsi
call fcn.0045e620
mov rax, rdx
mov rcx, rsi
call fcn.0045e620
movzx r13d, byte [rdx + rax]
add r12d, r13d
mov byte [rax + rdx], r12b
inc rdx
cmp rdx, rsi
jge 0x4cc94f
movzx r12d, byte [rdx + rdi]
jb 0x4cebbc
mov rax, rdx
mov rcx, rsi
call fcn.0045e620
movzx r15d, byte [rdx + rax]
add r12d, r15d
mov byte [rax + r13], r12b
lea rdx, [r13 + 1]
cmp rdx, rsi
jge 0x4cc94f
nop
jae 0x4cec1d
movzx r12d, byte [rdx + rax]
mov r13, rdx
sub rdx, rbx
cmp rdx, rsi
jb 0x4cebe6
mov rax, rdx
mov rcx, rsi
call fcn.0045e620
mov rax, rdx
mov rcx, rsi
call fcn.0045e620
mov eax, 1
call fcn.0045e6e0
mov eax, 1
call fcn.0045e6e0
nop dword [rax]
call fcn.004314a0
call fcn.004314a0
mov rax, rdi
mov rcx, r12
call fcn.0045e620
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov byte [rsp + 0x28], sil
call fcn.0045bf20
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
movzx esi, byte [rsp + 0x28]
jmp fcn.004cbe20