Function at 0x451170
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x128
mov rdi, rdx
mov rsi, rcx
cmp byte [rdx + 0x3a], 0
je 0x4511d0
movzx eax, byte [rdi + 0x141]
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
movups xmmword [rdi + 0x28], xmm0
mov qword [rdi + 0x10], 1
mov qword [rdi + 0x18], 1
mov qword [rdi + 0x20], 0
mov byte [rdi + 0x38], al
mov dword [rdi + 0x39], 0
mov rdx, qword [rdi + 0x48]
test rdx, rdx
jne 0x4511ef
jmp 0x452395
mov qword [rdi + 0x30], 0
mov byte [rdi + 0x39], 0
mov word [rdi + 0x3b], 0
mov rdx, qword [rdi + 0x48]
test rdx, rdx
je 0x452395
lea rax, [rdi + 0x50]
mov qword [rsp + 0x118], rax
lea r13, [rdi + 0x40]
lea rbp, [rdi + 0x48]
lea rax, [rdi + 0x120]
mov qword [rsp + 0x120], rax
mov r8d, 0x12
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x30], rax
jmp 0x45126d
movzx eax, byte [rsp + 0x30]
shl rax, 8
movzx ecx, r15b
or rcx, rax
shl r12, 0x10
or r12, rcx
mov rcx, rdi
mov rdx, r12
call fcn.004771e0
mov r8d, 0x12
nop dword [rax + rax]
mov rdx, qword [rbp]
test rdx, rdx
je 0x452395
mov rax, qword [r13]
lea r11, [rdx - 1]
lea r10, [rax + 1]
mov qword [r13], r10
mov qword [rbp], r11
movzx r9d, byte [rax]
test r9d, r9d
je 0x451340
mov r14d, 0x2e
cmp r9b, byte [rdi + 0x13c]
jae 0x4513a0
mov ecx, r9d
dec ecx
cmp ecx, 0xb
ja case.default.0x4512c3
mov r14d, 0x2f
lea r9, [0x00452770]
movsxd rcx, dword [r9 + rcx*4]
add rcx, r9
jmp rcx
test r11, r11
je 0x4523b2
mov r8d, 2
sub r8, rdx
lea r9, [rax + 2]
xor r15d, r15d
xor ecx, ecx
mov rbx, qword [rsp + 0xd8]
nop dword [rax + rax]
movzx r10d, byte [r9 - 1]
cmp ecx, 0x3f
jne 0x451304
cmp r10b, 2
jae 0x4523eb
movzx r10d, r10b
mov r11d, r10d
and r11d, 0x7f
shl r11, cl
or r15, r11
test r10b, r10b
jns 0x451a9e
add ecx, 7
inc r8
inc r9
cmp r8, 1
jne 0x4512f0
jmp 0x4523a0
test r11, r11
je 0x4523b2
lea r9, [rdx - 1]
xor r8d, r8d
xor r12d, r12d
xor ebx, ebx
xor ecx, ecx
nop word [rax + rax]
movzx r10d, byte [rax + r12 + 1]
cmp ecx, 0x3f
jne 0x451375
cmp r10b, 2
jae 0x4523c1
movzx r10d, r10b
mov r11d, r10d
and r11d, 0x7f
shl r11, cl
or rbx, r11
test r10b, r10b
jns 0x4513a8
add ecx, 7
inc r12
cmp r9, r12
jne 0x451360
jmp 0x4523a0
mov r15d, r9d
jmp case.0x4512c3.1
mov r9, rbp
mov rbp, rsi
lea r11, [rax + r12]
add r11, 2
mov qword [r13], r11
mov rcx, rdx
sub rcx, r12
add rcx, 0xfffffffffffffffe
mov qword [r9], rcx
cmp rcx, rbx
jb 0x45246a
sub rdx, rbx
sub rdx, r12
add rdx, 0xfffffffffffffffe
lea rsi, [r12 + rbx]
lea r10, [rax + rsi]
add r10, 2
mov qword [r13], r10
mov qword [r9], rdx
test rbx, rbx
je 0x45246a
mov qword [rsp + 0x28], r9
lea rdx, [rbx - 1]
lea r9, [rax + r12]
add r9, 3
mov qword [rsp + 0x70], r9
mov qword [rsp + 0x78], rdx
movzx ecx, byte [rax + r12 + 2]
lea r8d, [rcx - 1]
cmp r8d, 3
ja case.default.0x451439
mov r14d, 0x3e
lea r11, [0x004527a0]
movsxd rcx, dword [r11 + r8*4]
add rcx, r11
jmp rcx
movzx r8d, byte [rdi + 0x138]
lea rcx, [rsp + 0x60]
lea rdx, [rsp + 0x70]
call fcn.00457b20
movzx edx, byte [rsp + 0x60]
cmp dl, 0x4b
jne 0x452625
mov r15, qword [rsp + 0x68]
mov rax, r15
shr rax, 8
mov qword [rsp + 0x30], rax
mov rax, r15
shr rax, 0x10
mov qword [rsp + 0x38], rax
mov rax, r15
shr rax, 0x20
mov qword [rsp + 0x48], rax
mov r14d, 0x3f
jmp case.0x451439.1
mov qword [rsp + 0x28], rbp
mov rbp, rsi
mov rcx, qword [rdi + 0xa0]
mov r8, qword [rdi + 0xa8]
lea esi, [r9 - 1]
movzx esi, sil
cmp r8, rsi
jb 0x4525d1
add rcx, rsi
cmp r8, rsi
je 0x452613
movzx r14d, byte [rcx]
test r14d, r14d
je 0x451caa
cmp r14d, 1
jne 0x451cb8
test r11, r11
mov rsi, rbp
je 0x45251e
mov r10d, 2
sub r10, rdx
lea r11, [rax + 2]
xor r8d, r8d
xor r15d, r15d
xor ecx, ecx
movzx ebx, byte [r11 - 1]
cmp ecx, 0x3f
jne 0x451512
cmp bl, 2
jae 0x4524ef
movzx esi, bl
mov ebx, esi
and ebx, 0x7f
shl rbx, cl
or r15, rbx
test sil, sil
jns 0x451f87
add ecx, 7
inc r10
inc r11
cmp r10, 1
mov rsi, rbp
jne 0x4514ff
jmp 0x452508
lea r9, [rax + 1]
add rax, 2
add rdx, 0xfffffffffffffffe
xor r8d, r8d
xor ecx, ecx
xor r15d, r15d
mov rbx, qword [rsp + 0x108]
jmp 0x451582
mov r11d, r10d
and r11d, 0x7f
shl r11, cl
or r15, r11
add ecx, 7
inc r9
inc rax
dec rdx
test r10b, r10b
jns 0x451a0b
cmp rdx, 0xffffffffffffffff
je 0x4523df
mov qword [r13], rax
mov qword [rbp], rdx
movzx r10d, byte [rax - 1]
cmp ecx, 0x3f
jne 0x451560
cmp r10b, 0x7f
je 0x451560
test r10d, r10d
je 0x451560
jmp 0x4524e6
test r11, r11
je 0x4523b2
mov r8d, 2
sub r8, rdx
lea r9, [rax + 2]
xor r15d, r15d
xor ecx, ecx
mov rbx, qword [rsp + 0xf0]
nop word cs:[rax + rax]
movzx r10d, byte [r9 - 1]
cmp ecx, 0x3f
jne 0x4515f4
cmp r10b, 2
jae 0x4523d2
movzx r10d, r10b
mov r11d, r10d
and r11d, 0x7f
shl r11, cl
or r15, r11
test r10b, r10b
jns 0x451b20
add ecx, 7
inc r8
inc r9
cmp r8, 1
jne 0x4515e0
jmp 0x4523a0
test r11, r11
je 0x4523b2
mov r8d, 2
sub r8, rdx
lea r9, [rax + 2]
xor r15d, r15d
xor ecx, ecx
mov rbx, qword [rsp + 0xe8]
nop word cs:[rax + rax]
movzx r10d, byte [r9 - 1]
cmp ecx, 0x3f
jne 0x451664
cmp r10b, 2
jae 0x4523d2
movzx r10d, r10b
mov r11d, r10d
and r11d, 0x7f
shl r11, cl
or r15, r11
test r10b, r10b
jns 0x451ba2
add ecx, 7
inc r8
inc r9
cmp r8, 1
jne 0x451650
jmp 0x4523a0
mov r14d, 0x34
mov r12d, dword [rsp + 0x48]
movzx eax, word [rsp + 0x38]
shl r12, 0x10
or r12, rax
mov rax, qword [rsp + 0x50]
shl rax, 8
movzx ebx, byte [rsp + 0x40]
or rbx, rax
lea rax, [r14 - 0x2e]
cmp rax, 0x15
cmovae rax, r8
lea rcx, [0x004527b0]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov r14d, 0x35
mov r12d, dword [rsp + 0x48]
movzx eax, word [rsp + 0x38]
shl r12, 0x10
or r12, rax
mov rax, qword [rsp + 0x50]
shl rax, 8
movzx ebx, byte [rsp + 0x40]
or rbx, rax
lea rax, [r14 - 0x2e]
cmp rax, 0x15
cmovae rax, r8
lea rcx, [0x004527b0]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov r14d, 0x36
mov r12d, dword [rsp + 0x48]
movzx eax, word [rsp + 0x38]
shl r12, 0x10
or r12, rax
mov rax, qword [rsp + 0x50]
shl rax, 8
movzx ebx, byte [rsp + 0x40]
or rbx, rax
lea rax, [r14 - 0x2e]
cmp rax, 0x15
cmovae rax, r8
lea rcx, [0x004527b0]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
cmp r11, 1
jbe case.default.0x4517ca
add rdx, 0xfffffffffffffffd
lea rcx, [rax + 3]
mov qword [r13], rcx
mov qword [rbp], rdx
movzx r15d, word [rax + 1]
mov eax, r15d
shr eax, 8
mov qword [rsp + 0x30], rax
mov r14d, 0x37
mov r12d, dword [rsp + 0x48]
movzx eax, word [rsp + 0x38]
shl r12, 0x10
or r12, rax
mov rax, qword [rsp + 0x50]
shl rax, 8
movzx ebx, byte [rsp + 0x40]
or rbx, rax
lea rax, [r14 - 0x2e]
cmp rax, 0x15
cmovae rax, r8
lea rcx, [0x004527b0]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov r14d, 0x38
mov r12d, dword [rsp + 0x48]
movzx eax, word [rsp + 0x38]
shl r12, 0x10
or r12, rax
mov rax, qword [rsp + 0x50]
shl rax, 8
movzx ebx, byte [rsp + 0x40]
or rbx, rax
lea rax, [r14 - 0x2e]
cmp rax, 0x15
cmovae rax, r8
lea rcx, [0x004527b0]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov r14d, 0x39
mov r12d, dword [rsp + 0x48]
mov rax, qword [rsp + 0x38]
movzx eax, ax
shl r12, 0x10
mov qword [rsp + 0x38], rax
or r12, rax
mov rax, qword [rsp + 0x50]
shl rax, 8
movzx ebx, byte [rsp + 0x40]
or rbx, rax
lea rax, [r14 - 0x2e]
cmp rax, 0x15
cmovae rax, r8
lea rcx, [0x004527b0]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
test r11, r11
je 0x4523b2
mov r8d, 2
sub r8, rdx
lea r9, [rax + 2]
xor r15d, r15d
xor ecx, ecx
mov rbx, qword [rsp + 0xe0]
nop
movzx r10d, byte [r9 - 1]
cmp ecx, 0x3f
jne 0x451894
cmp r10b, 2
jae 0x4523d2
movzx r10d, r10b
mov r11d, r10d
and r11d, 0x7f
shl r11, cl
or r15, r11
test r10b, r10b
jns 0x451c24
add ecx, 7
inc r8
inc r9
cmp r8, 1
jne 0x451880
jmp 0x4523a0
lea r15, [rax + r12]
add r15, 3
mov rax, r15
shr rax, 8
mov qword [rsp + 0x30], rax
mov rax, r15
shr rax, 0x10
mov qword [rsp + 0x38], rax
mov rax, r15
shr rax, 0x20
mov qword [rsp + 0x48], rax
mov rax, rdx
shr rax, 8
mov qword [rsp + 0x50], rax
mov r14d, 0x42
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x58], rcx
jmp case.0x451439.1
cmp word [rdi + 0x13a], 5
jae 0x4519bc
test rdx, rdx
je 0x45247c
lea rdx, [rbx - 1]
lea rcx, [rax + r12]
lea r11, [rbx - 3]
lea r10, [rbx - 4]
xor r14d, r14d
nop dword [rax]
cmp byte [rcx + r14 + 3], 0
je 0x451efd
inc r14
dec r11
dec r10
cmp rdx, r14
jne 0x451940
jmp 0x45247c
test rdx, rdx
je 0x45264d
xor r8d, r8d
xor r15d, r15d
xor ecx, ecx
mov rsi, rbp
nop word cs:[rax + rax]
movzx eax, byte [r9]
cmp ecx, 0x3f
jne 0x451991
cmp al, 2
jae 0x452454
movzx eax, al
mov r11d, eax
and r11d, 0x7f
shl r11, cl
or r15, r11
test al, al
jns 0x451e11
dec rdx
inc r9
add ecx, 7
test rdx, rdx
jne 0x451980
jmp 0x4526f9
lea r15, [rax + r12]
add r15, 3
mov rax, r15
shr rax, 8
mov qword [rsp + 0x30], rax
mov rax, r15
shr rax, 0x10
mov qword [rsp + 0x38], rax
mov rax, r15
shr rax, 0x20
mov qword [rsp + 0x48], rax
mov rax, rdx
shr rax, 8
mov qword [rsp + 0x50], rax
mov al, 3
mov qword [rsp + 0x58], rax
mov r14d, 0x42
mov qword [rsp + 0x40], rdx
jmp case.0x451439.1
mov rax, 0xffffffffffffffff
shl rax, cl
test r10b, 0x40
mov edx, 0
cmove rax, rdx
cmp ecx, 0x40
cmovge rax, rdx
or r15, rax
mov rax, r15
shr rax, 8
mov qword [rsp + 0x30], rax
mov rax, r15
shr rax, 0x10
mov rcx, r15
shr rcx, 0x20
mov r14d, 0x31
mov qword [rsp + 0x48], rcx
mov r12d, ecx
movzx eax, ax
shl r12, 0x10
mov qword [rsp + 0x38], rax
or r12, rax
mov rax, qword [rsp + 0x50]
shl rax, 8
movzx ebx, byte [rsp + 0x40]
or rbx, rax
lea rax, [r14 - 0x2e]
cmp rax, 0x15
mov r8d, 0x12
cmovae rax, r8
lea rcx, [0x004527b0]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
mov qword [rsp + 0x108], r15
jmp rax
mov qword [r13], r9
neg r8
mov rax, r15
shr rax, 8
mov qword [rsp + 0x30], rax
mov rax, r15
shr rax, 0x10
mov rcx, r15
shr rcx, 0x20
mov r14d, 0x30
mov qword [rsp + 0x48], rcx
mov r12d, ecx
movzx eax, ax
shl r12, 0x10
mov qword [rsp + 0x38], rax
or r12, rax
mov rax, qword [rsp + 0x50]
shl rax, 8
movzx ebx, byte [rsp + 0x40]
or rbx, rax
lea rax, [r14 - 0x2e]
cmp rax, 0x15
mov ecx, 0x12
cmovae rax, rcx
mov qword [rbp], r8
mov r8d, 0x12
lea rcx, [0x004527b0]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
mov qword [rsp + 0xd8], r15
jmp rax
mov qword [r13], r9
neg r8
mov rax, r15
shr rax, 8
mov qword [rsp + 0x30], rax
mov rax, r15
shr rax, 0x10
mov rcx, r15
shr rcx, 0x20
mov r14d, 0x32
mov qword [rsp + 0x48], rcx
mov r12d, ecx
movzx eax, ax
shl r12, 0x10
mov qword [rsp + 0x38], rax
or r12, rax
mov rax, qword [rsp + 0x50]
shl rax, 8
movzx ebx, byte [rsp + 0x40]
or rbx, rax
lea rax, [r14 - 0x2e]
cmp rax, 0x15
mov ecx, 0x12
cmovae rax, rcx
mov qword [rbp], r8
mov r8d, 0x12
lea rcx, [0x004527b0]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
mov qword [rsp + 0xf0], r15
jmp rax
mov qword [r13], r9
neg r8
mov rax, r15
shr rax, 8
mov qword [rsp + 0x30], rax
mov rax, r15
shr rax, 0x10
mov rcx, r15
shr rcx, 0x20
mov r14d, 0x33
mov qword [rsp + 0x48], rcx
mov r12d, ecx
movzx eax, ax
shl r12, 0x10
mov qword [rsp + 0x38], rax
or r12, rax
mov rax, qword [rsp + 0x50]
shl rax, 8
movzx ebx, byte [rsp + 0x40]
or rbx, rax
lea rax, [r14 - 0x2e]
cmp rax, 0x15
mov ecx, 0x12
cmovae rax, rcx
mov qword [rbp], r8
mov r8d, 0x12
lea rcx, [0x004527b0]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
mov qword [rsp + 0xe8], r15
jmp rax
mov qword [r13], r9
neg r8
mov qword [rbp], r8
mov rax, r15
shr rax, 8
mov qword [rsp + 0x30], rax
mov rax, r15
shr rax, 0x10
mov rcx, r15
shr rcx, 0x20
mov r14d, 0x3a
mov qword [rsp + 0x48], rcx
mov r12d, ecx
movzx eax, ax
shl r12, 0x10
mov qword [rsp + 0x38], rax
or r12, rax
mov rax, qword [rsp + 0x50]
shl rax, 8
mov rdx, qword [rsp + 0x40]
movzx edx, dl
lea rcx, [r14 - 0x2e]
cmp rcx, 0x15
mov r8d, 0x12
cmovae rcx, r8
mov qword [rsp + 0x40], rdx
lea rbx, [rdx + rax]
lea rdx, [0x004527b0]
movsxd rax, dword [rdx + rcx*4]
add rax, rdx
mov qword [rsp + 0xe0], r15
jmp rax
mov r14d, 0x3b
mov r15d, r9d
jmp 0x451e4b
mov rcx, r10
mov r15, r11
xor edx, edx
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0xc8], r14
mov rsi, rcx
test r15, r15
je 0x4524cc
xor r8d, r8d
xor ebx, ebx
xor edx, edx
xor ecx, ecx
movzx r12d, byte [rsi + rbx]
cmp ecx, 0x3f
jne 0x451cf6
cmp r12b, 2
jae 0x4524a8
movzx r14d, r12b
mov r12d, r14d
and r12d, 0x7f
shl r12, cl
or rdx, r12
test r14b, r14b
jns 0x451d1c
add ecx, 7
inc rbx
cmp r15, rbx
jne 0x451ce2
jmp 0x4524b9
lea rcx, [rsi + rbx]
inc rcx
mov qword [r13], rcx
mov r8, rbx
not r8
add r15, r8
mov r8, qword [rsp + 0x28]
mov qword [r8], r15
mov r12, qword [rsp + 0x40]
inc r12
mov qword [rsp + 0x90], rdx
mov r14, qword [rsp + 0xc8]
mov r8, r12
mov qword [rsp + 0x40], r12
cmp r12, r14
mov r8d, 0x12
mov r12, qword [rsp + 0x38]
jne 0x451ccd
mov r14, rsi
sub r14, rax
add r14, rbx
cmp r11, r14
jb case.default.0x451e0f
mov rcx, r10
shr rcx, 8
mov qword [rsp + 0x30], rcx
mov rcx, r10
shr rcx, 0x10
mov r11, r10
shr r11, 0x20
sub sil, al
movzx eax, sil
add ebx, eax
shr r14, 8
mov rax, r14
mov r14d, 0x3d
mov qword [rsp + 0x48], r11
mov r12d, r11d
movzx ecx, cx
shl r12, 0x10
mov qword [rsp + 0x38], rcx
or r12, rcx
mov rcx, rax
mov qword [rsp + 0x50], rax
shl rax, 8
movzx ecx, bl
mov qword [rsp + 0x40], rcx
lea rbx, [rcx + rax]
lea rax, [r14 - 0x2e]
cmp rax, 0x15
cmovae rax, r8
lea rcx, [0x004527b0]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
mov r15d, r10d
mov qword [rsp + 0x58], r9
mov qword [rsp + 0x90], rdx
mov rsi, rbp
mov rbp, qword [rsp + 0x28]
jmp rax
mov rax, r15
shr rax, 8
mov qword [rsp + 0x30], rax
mov rax, r15
shr rax, 0x10
mov qword [rsp + 0x38], rax
mov rax, r15
shr rax, 0x20
mov qword [rsp + 0x48], rax
mov r14d, 0x41
mov qword [rsp + 0xd0], r15
mov qword [rsp + 0x110], rbx
mov rsi, rbp
mov rbp, qword [rsp + 0x28]
mov r8d, 0x12
mov r12d, dword [rsp + 0x48]
movzx eax, word [rsp + 0x38]
shl r12, 0x10
or r12, rax
mov rax, qword [rsp + 0x50]
shl rax, 8
movzx ebx, byte [rsp + 0x40]
or rbx, rax
lea rax, [r14 - 0x2e]
cmp rax, 0x15
cmovae rax, r8
lea rcx, [0x004527b0]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
movzx eax, byte [rsp + 0x30]
shl rax, 8
movzx ecx, r15b
or rcx, rax
shl r12, 0x10
or r12, rcx
movzx ecx, byte [rdi + 0x13d]
movzx r8d, byte [rdi + 0x13e]
cmp r8d, 1
jne 0x451ed7
imul r12, rcx
add qword [rdi], r12
mov qword [rdi + 8], 0
jmp 0x451255
test r8d, r8d
je 0x45270d
add r12, qword [rdi + 8]
mov rax, r12
shr rax, 0x20
je 0x451ef5
mov rax, r12
jmp 0x452227
mov eax, r12d
jmp 0x45222e
mov rdx, rbx
sub rdx, r14
add rdx, 0xfffffffffffffffe
lea r8, [rbx - 2]
mov r15, r14
add r14, rcx
add r14, 4
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x78], rdx
mov qword [rsp + 0x98], r15
cmp r8, r15
je 0x4526d3
xor r8d, r8d
xor r12d, r12d
xor ecx, ecx
movzx r15d, byte [r14]
mov dl, 6
cmp ecx, 0x3f
jne 0x451f4d
cmp r15b, 2
jae 0x452535
movzx r15d, r15b
mov qword [rsp + 0x58], r12
mov r12d, r15d
and r12d, 0x7f
shl r12, cl
or qword [rsp + 0x58], r12
mov r12, qword [rsp + 0x58]
test r15b, r15b
jns 0x452243
inc r14
add ecx, 7
dec r10
add r11, 0xffffffffffffffff
jb 0x451f38
jmp 0x45254a
mov qword [r13], r11
neg r10
mov rcx, qword [rsp + 0x28]
mov qword [rcx], r10
mov rax, r15
shr rax, 8
mov qword [rsp + 0x30], rax
mov rax, r15
shr rax, 0x10
mov rdx, r15
shr rdx, 0x20
mov r14d, 0x3c
mov qword [rsp + 0x48], rdx
mov r12d, edx
movzx eax, ax
shl r12, 0x10
mov qword [rsp + 0x38], rax
or r12, rax
mov rax, qword [rsp + 0x50]
shl rax, 8
movzx ebx, r9b
or rbx, rax
lea rax, [r14 - 0x2e]
cmp rax, 0x15
mov r8d, 0x12
cmovae rax, r8
lea rdx, [0x004527b0]
movsxd rax, dword [rdx + rax*4]
add rax, rdx
mov qword [rsp + 0x40], r9
mov qword [rsp + 0xb8], r15
mov rsi, rbp
mov rbp, rcx
jmp rax
movzx eax, byte [rsp + 0x30]
shl rax, 8
movzx ecx, r15b
or rcx, rax
shl r12, 0x10
or r12, rcx
mov qword [rdi + 0x10], r12
jmp case.0x451e95.13
movzx eax, byte [rsp + 0x30]
shl rax, 8
movzx ecx, r15b
or rcx, rax
shl r12, 0x10
or r12, rcx
mov qword [rdi + 0x20], r12
jmp case.0x451e95.13
xor byte [rdi + 0x38], 1
jmp case.0x451e95.13
mov byte [rdi + 0x39], 1
jmp case.0x451e95.13
movzx ecx, byte [rdi + 0x140]
test cl, cl
je 0x45271d
movzx eax, byte [rdi + 0x13c]
not al
movzx eax, al
div cl
movzx eax, al
movzx ecx, byte [rdi + 0x13d]
movzx r8d, byte [rdi + 0x13e]
cmp r8d, 1
jne 0x452211
imul rcx, rax
add qword [rdi], rcx
mov qword [rdi + 8], 0
jmp 0x451255
movzx eax, byte [rsp + 0x30]
shl rax, 8
movzx ecx, r15b
or rcx, rax
add qword [rdi], rcx
mov qword [rdi + 8], 0
jmp case.0x451e95.13
mov byte [rdi + 0x3b], 1
jmp case.0x451e95.13
mov byte [rdi + 0x3c], 1
jmp case.0x451e95.13
movzx eax, byte [rsp + 0x30]
shl rax, 8
movzx ecx, r15b
or rcx, rax
shl r12, 0x10
or r12, rcx
mov qword [rdi + 0x28], r12
jmp case.0x451e95.13
movzx eax, byte [rsp + 0x30]
shl rax, 8
movzx ecx, r15b
or rcx, rax
shl r12, 0x10
or r12, rcx
mov qword [rdi], r12
mov qword [rdi + 8], 0
jmp case.0x451e95.13
mov rdx, qword [rdi + 0x130]
cmp rdx, qword [rdi + 0x120]
jne 0x452154
mov rcx, qword [rsp + 0x120]
call fcn.00468300
mov r8d, 0x12
mov rdx, qword [rdi + 0x130]
movzx eax, byte [rsp + 0x30]
shl rax, 8
movzx ecx, r15b
or rcx, rax
shl r12, 0x10
or r12, rcx
mov rax, qword [rdi + 0x128]
shl rdx, 6
mov qword [rax + rdx], r12
mov qword [rax + rdx + 8], rbx
mov rcx, qword [rsp + 0x58]
mov byte [rax + rdx + 0x10], cl
mov r9, qword [rsp + 0x100]
mov rcx, r9
shr rcx, 0x30
mov byte [rax + rdx + 0x17], cl
mov rcx, r9
shr rcx, 0x20
mov word [rax + rdx + 0x15], cx
mov dword [rax + rdx + 0x11], r9d
mov rcx, qword [rsp + 0x88]
mov qword [rax + rdx + 0x18], rcx
mov rcx, qword [rsp + 0x80]
mov qword [rax + rdx + 0x20], rcx
mov qword [rax + rdx + 0x28], r14
mov rcx, qword [rsp + 0xf8]
mov qword [rax + rdx + 0x30], rcx
mov rcx, qword [rsp + 0x98]
mov qword [rax + rdx + 0x38], rcx
inc qword [rdi + 0x130]
jmp case.0x451e95.13
movzx eax, byte [rsp + 0x30]
shl rax, 8
movzx ecx, r15b
or rcx, rax
shl r12, 0x10
or r12, rcx
mov qword [rdi + 0x30], r12
jmp case.0x451e95.13
test r8d, r8d
je 0x45270d
add rax, qword [rdi + 8]
mov rdx, rax
shr rdx, 0x20
je 0x45222e
xor edx, edx
div r8
jmp 0x452233
xor edx, edx
div r8d
imul rax, rcx
add qword [rdi], rax
mov qword [rdi + 8], rdx
jmp 0x451255
lea rax, [r14 + 1]
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], r11
test r11, r11
mov r12, qword [rsp + 0xa8]
je 0x4526e8
xor r8d, r8d
xor ecx, ecx
mov qword [rsp + 0x88], rcx
xor ecx, ecx
movzx esi, byte [rax]
cmp ecx, 0x3f
jne 0x452283
cmp sil, 2
jae 0x45265a
movzx esi, sil
mov r15d, esi
and r15d, 0x7f
shl r15, cl
or qword [rsp + 0x88], r15
test sil, sil
jns 0x4522af
inc rax
add ecx, 7
add r10, 0xffffffffffffffff
jb 0x452271
jmp 0x45266f
lea r11, [rax + 1]
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r10
test r10, r10
je 0x4526f0
xor r8d, r8d
xor esi, esi
xor ecx, ecx
mov qword [rsp + 0x80], rcx
xor ecx, ecx
movzx r14d, byte [r11]
cmp ecx, 0x3f
jne 0x4522ea
cmp r14b, 2
jae 0x4526c1
movzx r14d, r14b
mov r15d, r14d
and r15d, 0x7f
shl r15, cl
or qword [rsp + 0x80], r15
test r14b, r14b
jns 0x452318
inc r11
add ecx, 7
inc rsi
cmp r10, rsi
jne 0x4522d7
jmp 0x4526cb
mov rcx, qword [rsp + 0x58]
mov rax, rcx
shr rax, 8
mov qword [rsp + 0x100], rax
mov r14d, 0x1f
xor eax, eax
mov qword [rsp + 0x30], rax
mov qword [rsp + 0xb0], rcx
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0xc0], r9
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0xa8], rax
mov qword [rsp + 0xf8], r9
xor r15d, r15d
xor eax, eax
mov qword [rsp + 0x48], rax
xor eax, eax
mov qword [rsp + 0x38], rax
xor eax, eax
mov qword [rsp + 0x50], rax
xor eax, eax
mov qword [rsp + 0x40], rax
jmp case.0x451439.1
xorps xmm0, xmm0
movups xmmword [rsi], xmm0
jmp 0x45243d
add rax, rdx
mov qword [r13], rax
mov qword [rbp], 0
mov r10, rax
xor eax, eax
mov dl, 0x13
xor r8d, r8d
xor r12d, r12d
mov r11, r10
jmp 0x4523fc
mov dl, 6
xor eax, eax
xor r12d, r12d
mov r11, qword [rsp + 0x110]
jmp 0x4523fc
mov qword [r13], r9
neg r8
mov qword [rbp], r8
jmp 0x4523ef
mov dl, 0x13
xor eax, eax
xor r12d, r12d
mov r11, r9
jmp 0x4523fc
mov qword [r13], r9
xor eax, eax
mov dl, 6
xor r8d, r8d
xor r12d, r12d
mov r11, rbx
movzx eax, al
shl rax, 8
movzx ecx, dl
or rcx, rax
movzx eax, r12w
shl r8, 0x20
shl rax, 0x10
or rax, r8
or rax, rcx
lea rcx, [0x004c8a40]
mov qword [r13], rcx
mov qword [rbp], 0
mov qword [rsi + 8], rax
mov qword [rsi + 0x10], r11
mov qword [rsi], 1
mov rax, rsi
add rsp, 0x128
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov dl, 6
xor eax, eax
xor r12d, r12d
mov rbp, qword [rsp + 0x28]
mov r11, qword [rsp + 0xd0]
jmp 0x4523fc
xor eax, eax
mov dl, 0x13
xor r8d, r8d
xor r12d, r12d
mov rsi, rbp
mov rbp, r9
jmp 0x4523fc
lea r10, [rax + r12]
add r10, 3
mov r8, qword [rsp + 0xc0]
mov rax, r8
shr rax, 8
mov r12, r8
shr r12, 0x10
shr r8, 0x20
mov dl, 0x13
mov rsi, rbp
jmp 0x452703
mov dl, 6
xor eax, eax
xor r12d, r12d
mov r11, qword [rsp + 0x90]
jmp 0x4524d9
add rsi, r15
mov qword [r13], rsi
mov rax, qword [rsp + 0x28]
mov qword [rax], 0
xor eax, eax
mov dl, 0x13
xor r8d, r8d
xor r12d, r12d
mov r11, rsi
mov rsi, rbp
mov rbp, qword [rsp + 0x28]
jmp 0x4523fc
xor eax, eax
mov dl, 7
jmp 0x4523f3
mov dl, 6
xor eax, eax
xor r12d, r12d
mov r11, qword [rsp + 0xb8]
mov rbp, qword [rsp + 0x28]
jmp 0x4523fc
add rax, rdx
mov qword [r13], rax
mov rcx, qword [rsp + 0x28]
mov qword [rcx], 0
mov r10, rax
xor eax, eax
mov dl, 0x13
xor r8d, r8d
xor r12d, r12d
mov r11, r10
mov rbp, qword [rsp + 0x28]
jmp 0x4523fc
xor eax, eax
xor r12d, r12d
mov r10, qword [rsp + 0xb0]
mov rsi, rbp
jmp 0x452703
lea r10, [rax + rsi]
add r10, 2
xor eax, eax
mov dl, 0x13
xor r8d, r8d
xor r12d, r12d
mov rsi, rbp
jmp 0x452703
movzx ecx, byte [rdi + 0x140]
test cl, cl
je 0x452753
sub r15b, byte [rdi + 0x13c]
movzx eax, r15b
div cl
mov ebx, eax
movzx edx, ah
movsx rax, byte [rdi + 0x13f]
add rdx, rax
mov rcx, rdi
call fcn.004771e0
movzx eax, bl
movzx ecx, byte [rdi + 0x13d]
movzx r8d, byte [rdi + 0x13e]
cmp r8d, 1
jne 0x452678
imul rcx, rax
add qword [rdi], rcx
mov qword [rdi + 8], 0
jmp case.0x451e95.1
mov byte [rdi + 0x3a], 1
jmp case.0x451e95.1
mov dl, 0x13
mov r8, qword [rsp + 0x48]
mov r11, rcx
mov rsi, rbp
mov rbp, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
mov r12, qword [rsp + 0x38]
jmp 0x4523fc
mov word [rsp + 0x60], 0
mov dword [rsp + 0x62], 0
movzx r12d, word [rsp + 0x61]
xor eax, eax
mov dl, 0x13
xor r8d, r8d
jmp 0x4523bc
xor eax, eax
mov dl, 0x13
xor r8d, r8d
xor r12d, r12d
mov r11, rcx
jmp 0x4524d9
movzx eax, byte [rsp + 0x61]
mov r12d, dword [rsp + 0x62]
movzx r8d, word [rsp + 0x66]
shl r8, 0x20
or r8, r12
shr r8, 0x10
mov r10, qword [rsp + 0x68]
mov rsi, rbp
jmp 0x452703
lea r10, [rax + r12]
add r10, 3
jmp 0x4526f6
xor eax, eax
xor r12d, r12d
mov r10, qword [rsp + 0xa0]
mov rsi, rbp
jmp 0x452703
lea r10, [r11 + r14]
inc r10
jmp 0x4526f6
test r8d, r8d
je 0x45270d
add rax, qword [rdi + 8]
mov rdx, rax
shr rdx, 0x20
je 0x452695
xor edx, edx
div r8
jmp 0x45269a
xor edx, edx
div r8d
imul rax, rcx
add qword [rdi], rax
mov qword [rdi + 8], rdx
mov rax, qword [rsp + 0x118]
mov qword [rsi + 8], rax
mov qword [rsi + 0x10], rdi
mov qword [rsi], 0
jmp 0x45243d
xor eax, eax
mov r10, r12
jmp 0x452559
add r10, rax
inc r10
jmp 0x4526f6
mov rax, qword [rsp + 0x98]
lea r10, [rax + rcx]
add r10, 4
jmp 0x452552
inc r14
mov r10, r14
jmp 0x4526f6
inc rax
mov r10, rax
mov rsi, rbp
xor eax, eax
mov dl, 0x13
xor r8d, r8d
xor r12d, r12d
mov rbp, qword [rsp + 0x28]
jmp 0x4523bc
lea rcx, str.attempt_to_divide_by_zero_repos_rust_1.70.0_library_core_src_num_mod.rs
lea r8, [0x004c8c28]
jmp 0x45272b
lea rcx, str.attempt_to_divide_by_zero_repos_rust_1.70.0_library_core_src_num_mod.rs
lea r8, [0x004c8c40]
mov edx, 0x19
call fcn.004ada10
ud2
mov dl, 0x13
mov r8, qword [rsp + 0x48]
mov r11, r10
mov rsi, rbp
mov rbp, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
jmp 0x4523fc
lea rcx, str.attempt_to_calculate_the_remainder_with_a_divisor_of_zero
lea r8, [0x004c8b88]
mov edx, 0x39
call fcn.004ada10
ud2