Function at 0x1400506a0
Capabilities:
Inspect section memory permissions

Disassembly:
movzx eax, word [r8]
cmp ax, 8
je 0x14004df7b
cmp ax, 0x10
je 0x14004df76
cmp ax, 0x20
je 0x14004df71
cmp ax, 0x40
je 0x14004df6c
mov r10, qword [rcx]
test al, 0x70
je 0x14004df65
mov r9, r8
mov r8, rdx
mov edx, 4
jmp qword [r10 + 0x1a0]
jmp qword [r10 + 0x190]
jmp 0x14004f860
jmp 0x140050f50
jmp 0x1400506a0
jmp 0x14004e630
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x60
xor esi, esi
mov r12, rdx
cmp byte [rdx + 2], 1
mov r15, r8
mov r14, rcx
cmovne rdx, rsi
movzx eax, word [r12]
add eax, 0xfffffffe
cmp eax, 0x7e
ja case.0x14004e688.3
lea r8, [0x140000000]
cdqe
movzx eax, byte [r8 + rax + 0x4eb90]
mov ecx, dword [r8 + rax*4 + 0x4eb7c]
add rcx, r8
jmp rcx
cmp byte [r15 + 2], 1
mov rax, r15
mov ebx, 5
cmovne rax, rsi
test rax, rax
je 0x14004e6b9
mov ecx, dword [rax + 4]
mov eax, ecx
and eax, 0xe0000000
cmp eax, 0x40000000
jne 0x14004e6b9
mov ebx, ecx
and ebx, 0xfffffff
mov rcx, qword [r14 + 0x68]
mov r8d, ebx
mov rdx, r12
call fcn.140064e20
mov rcx, qword [r14 + 0x68]
mov edx, eax
mov r8d, ebx
call fcn.14005c300
mov rcx, qword [r14 + 0x68]
mov r9d, esi
mov r8d, ebx
mov dword [rsp + 0x20], ebx
mov edx, 1
call fcn.14004c910
mov edx, ebx
jmp 0x14004eb56
test rdx, rdx
je 0x14004e716
mov r8d, dword [rdx + 4]
mov eax, r8d
and eax, 0xe0000000
cmp eax, 0x40000000
jne 0x14004e716
and r8d, 0xfffffff
jmp 0x14004e72b
mov rcx, qword [r14 + 0x68]
mov r8d, 1
mov rdx, r12
call fcn.140064ba0
mov r8d, eax
mov rcx, qword [r14 + 0x68]
lea rdx, [rbp - 0x28]
xor r9d, r9d
call fcn.140045a80
mov rcx, qword [r14 + 0x68]
mov r8, r15
xor edx, edx
call fcn.140061830
mov rdi, qword [r14 + 0x68]
lea rdx, [rbp + 0x48]
mov rcx, rdi
call fcn.140059820
mov r8d, 0xc
mov edx, esi
mov rcx, rdi
call fcn.14005c700
mov edx, dword [rdi + 0x24]
mov ecx, dword [rdi + 0x20]
lea eax, [rdx + 2]
cmp eax, ecx
jle 0x14004e79c
mov eax, ecx
mov r8, rdi
cdq
sub eax, edx
sar eax, 1
add ecx, eax
mov dword [rdi + 0x20], ecx
movsxd rdx, ecx
mov rcx, rdi
call fcn.14003c9a0
mov rcx, qword [rdi]
mov edx, dword [rdi + 0x24]
mov qword [rdi + 0x18], rcx
jmp 0x14004e7a0
mov rcx, qword [rdi + 0x18]
movsxd rax, edx
mov r13d, 0x51
mov edx, 0x4760
mov word [rax + rcx], dx
mov eax, 0x53
add dword [rdi + 0x24], 2
lea rdx, [rbp + 0x48]
cmp byte [rdi + 0x50], sil
mov ebx, dword [rdi + 0x24]
mov rdi, qword [r14 + 0x68]
cmovne r13d, eax
mov rcx, rdi
call fcn.140059820
mov edx, dword [rbp - 0x20]
mov rcx, rdi
mov r9d, dword [rbp - 0x24]
mov dword [rsp + 0x20], edx
mov r8d, dword [rax]
mov edx, dword [rbp - 0x28]
call fcn.140059e40
mov rcx, qword [r14 + 0x68]
mov r8, r15
mov dl, 1
call fcn.140061830
mov rdi, qword [r14 + 0x68]
lea rdx, [rbp + 0x48]
mov rcx, rdi
call fcn.140059820
mov r9d, r13d
mov dword [rsp + 0x20], 0xf
mov edx, ebx
mov rcx, rdi
mov r8d, dword [rax]
call fcn.140059e40
jmp 0x14004eb62
mov rcx, qword [r14 + 0x68]
mov r8, r15
xor edx, edx
call fcn.140061830
jmp 0x14004eb62
mov rcx, qword [r14 + 0x68]
lea r9, str.Runtime::toBoolean
mov dword [rbp + 0x48], 0xa
xor r8d, r8d
mov dword [rbp + 0x4c], 0x154
mov dl, 1
mov rax, qword [rbp + 0x48]
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], rax
call fcn.140040b90
mov rcx, qword [r14 + 0x68]
mov r8, r15
xor edx, edx
call fcn.140061700
mov rcx, qword [r14 + 0x68]
lea rdx, [rbp - 0x30]
mov r9, r12
mov r8d, 5
call fcn.1400915a0
mov rax, qword [rbp - 0x30]
xor r8d, r8d
mov rcx, qword [r14 + 0x68]
mov qword [rbp + 0x48], rax
shr rax, 0x20
add eax, 4
mov dword [rbp + 0x4c], eax
mov eax, dword [rbp + 0x48]
mov dword [rbp + 0x58], eax
mov rax, qword [rbp + 0x48]
shr rax, 0x20
mov dword [rbp + 0x5c], eax
mov rdx, qword [rbp + 0x58]
call fcn.14005a450
mov rcx, qword [r14 + 0x68]
lea rdx, [rbp - 0x28]
xor r9d, r9d
mov dword [rsp + 0x20], 0x7fff4000
lea r8d, [r9 + 1]
call fcn.140045190
mov rax, qword [rbp - 0x30]
xor r8d, r8d
mov rcx, qword [r14 + 0x68]
mov dword [rbp + 0x48], eax
shr rax, 0x20
mov dword [rbp + 0x4c], eax
mov rdx, qword [rbp + 0x48]
call fcn.14005a450
mov rbx, qword [r14 + 0x68]
lea rdx, [rbp + 0x48]
mov rcx, rbx
call fcn.140059820
mov r8d, 0xc
mov edx, esi
mov rcx, rbx
call fcn.14005c700
mov edx, dword [rbx + 0x24]
mov ecx, dword [rbx + 0x20]
lea eax, [rdx + 2]
cmp eax, ecx
jle 0x14004e952
mov eax, ecx
mov r8, rbx
cdq
sub eax, edx
sar eax, 1
add ecx, eax
mov dword [rbx + 0x20], ecx
movsxd rdx, ecx
mov rcx, rbx
call fcn.14003c9a0
mov rcx, qword [rbx]
mov edx, dword [rbx + 0x24]
mov qword [rbx + 0x18], rcx
jmp 0x14004e956
mov rcx, qword [rbx + 0x18]
movsxd rax, edx
mov r13d, 0x51
mov edx, 0x4760
mov word [rax + rcx], dx
mov ecx, r13d
add dword [rbx + 0x24], 2
lea rdx, [rbp + 0x58]
cmp byte [rbx + 0x50], sil
mov eax, 0x53
mov edi, dword [rbx + 0x24]
mov rbx, qword [r14 + 0x68]
cmovne ecx, eax
mov dword [rbp + 0x48], ecx
mov rcx, rbx
call fcn.140059820
mov edx, dword [rbp - 0x20]
mov rcx, rbx
mov r9d, dword [rbp - 0x24]
mov dword [rsp + 0x20], edx
mov r8d, dword [rax]
mov edx, dword [rbp - 0x28]
call fcn.140059e40
mov rcx, qword [r14 + 0x68]
lea r8d, [r13 - 0x50]
xor r9d, r9d
mov dword [rsp + 0x20], 0x7fff2000
lea rdx, [rbp - 0x28]
call fcn.140045190
mov rax, qword [rbp - 0x30]
xor r8d, r8d
mov rcx, qword [r14 + 0x68]
mov dword [rbp + 0x58], eax
shr rax, 0x20
mov dword [rbp + 0x5c], eax
mov rdx, qword [rbp + 0x58]
call fcn.14005a450
mov rcx, qword [r14 + 0x68]
lea rdx, [rbp - 0x18]
xor r9d, r9d
mov dword [rsp + 0x20], esi
xor r8d, r8d
call fcn.140045190
mov rcx, qword [r14 + 0x68]
lea edx, [r13 - 0x50]
xor r8d, r8d
call fcn.14005bdf0
mov rsi, qword [r14 + 0x68]
lea rdx, [rbp + 0x58]
mov rcx, rsi
call fcn.140059820
xor edx, edx
lea r8d, [r13 - 0x45]
mov rcx, rsi
call fcn.14005c700
mov edx, dword [rsi + 0x24]
mov ecx, dword [rsi + 0x20]
lea eax, [rdx + 2]
cmp eax, ecx
jle 0x14004ea5c
mov eax, ecx
mov r8, rsi
cdq
sub eax, edx
sar eax, 1
add ecx, eax
mov dword [rsi + 0x20], ecx
movsxd rdx, ecx
mov rcx, rsi
call fcn.14003c9a0
mov rcx, qword [rsi]
mov edx, dword [rsi + 0x24]
mov qword [rsi + 0x18], rcx
jmp 0x14004ea60
mov rcx, qword [rsi + 0x18]
movsxd rax, edx
mov edx, 0x4760
mov word [rax + rcx], dx
mov eax, 0x53
add dword [rsi + 0x24], 2
lea rdx, [rbp + 0x58]
cmp byte [rsi + 0x50], 0
mov ebx, dword [rsi + 0x24]
mov rsi, qword [r14 + 0x68]
cmovne r13d, eax
mov rcx, rsi
call fcn.140059820
mov edx, dword [rbp - 0x20]
mov rcx, rsi
mov r9d, dword [rbp - 0x24]
mov dword [rsp + 0x20], edx
mov r8d, dword [rax]
mov edx, dword [rbp - 0x28]
call fcn.140059e40
mov rcx, qword [r14 + 0x68]
lea r9, str.Runtime::toBoolean
mov dword [rbp + 0x58], 0xa
xor r8d, r8d
mov dword [rbp + 0x5c], 0x154
mov dl, 1
mov rax, qword [rbp + 0x58]
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], rax
call fcn.140040b90
mov rsi, qword [r14 + 0x68]
lea rdx, [rbp + 0x58]
mov rcx, rsi
call fcn.140059820
mov edx, dword [rbp - 0x10]
mov rcx, rsi
mov r9d, dword [rbp - 0x14]
mov dword [rsp + 0x20], edx
mov r8d, dword [rax]
mov edx, dword [rbp - 0x18]
call fcn.140059e40
mov rsi, qword [r14 + 0x68]
lea rdx, [rbp + 0x58]
mov rcx, rsi
call fcn.140059820
mov r9d, r13d
mov dword [rsp + 0x20], 0xf
mov edx, ebx
mov rcx, rsi
mov r8d, dword [rax]
call fcn.140059e40
mov rbx, qword [r14 + 0x68]
lea rdx, [rbp + 0x58]
mov rcx, rbx
call fcn.140059820
mov r9d, dword [rbp + 0x48]
mov edx, edi
mov rcx, rbx
mov dword [rsp + 0x20], 0xf
mov r8d, dword [rax]
call fcn.140059e40
xor edx, edx
mov rcx, qword [r14 + 0x68]
mov r8, r15
call fcn.140061700
mov rbx, qword [rsp + 0xa0]
add rsp, 0x60
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
push rbp
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
mov r14, rcx
mov r15, r8
movzx ecx, word [rdx]
mov r12, rdx
cmp ecx, 0x10
ja 0x14004f8f6
je 0x14004f893
cmp ecx, 2
je 0x14004f8a8
lea eax, [rcx - 4]
test eax, 0xfffffffb
jne 0x14004f90c
mov rcx, r14
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rbp
jmp fcn.14004db70
mov rcx, qword [r14 + 0x68]
lea rdx, [rbp + 0x48]
mov r9, r12
mov r8d, 5
call fcn.1400915a0
mov rcx, qword [r14 + 0x68]
xor r8d, r8d
mov rax, qword [rax]
mov dword [rbp + 0x38], eax
shr rax, 0x20
mov dword [rbp + 0x3c], eax
mov rdx, qword [rbp + 0x38]
call fcn.14005acc0
mov rcx, qword [r14 + 0x68]
mov r8, r15
xor edx, edx
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rbp
jmp fcn.140061c30
sub ecx, 0x20
je 0x14004fd39
sub ecx, 0x60
je 0x14004f94b
cmp ecx, 0x180
je 0x14004f94b
test byte [r8], 0x70
mov rcx, r14
mov rax, qword [r14]
je 0x14004f937
mov r9, r15
mov r8, r12
mov edx, 4
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rbp
jmp qword [rax + 0x1a0]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rbp
jmp qword [rax + 0x190]
mov rcx, qword [r14 + 0x68]
lea rdx, [rbp - 0x38]
mov qword [rsp + 0xa0], rbx
mov r9, r12
mov qword [rsp + 0x68], rsi
mov r8d, 5
mov qword [rsp + 0x60], rdi
call fcn.1400915a0
mov eax, dword [rbp - 0x38]
mov r8d, 5
add dword [rbp - 0x34], 4
mov rcx, qword [r14 + 0x68]
mov dword [rbp + 0x38], eax
mov rax, qword [rbp - 0x38]
shr rax, 0x20
mov dword [rbp + 0x3c], eax
mov rdx, qword [rbp + 0x38]
call fcn.14005a450
mov rcx, qword [r14 + 0x68]
lea rdx, [rbp - 0x28]
mov r9d, 5
mov dword [rsp + 0x20], 0x7fff2000
lea r8d, [r9 - 4]
call fcn.140045190
mov r8, r15
mov rdx, r12
mov rcx, r14
call fcn.14004db70
mov rbx, qword [r14 + 0x68]
lea rdx, [rbp + 0x38]
mov rcx, rbx
call fcn.140059820
xor r13d, r13d
mov rcx, rbx
mov edx, r13d
lea r8d, [r13 + 0xc]
call fcn.14005c700
mov edx, dword [rbx + 0x24]
mov ecx, dword [rbx + 0x20]
lea eax, [rdx + 2]
cmp eax, ecx
jle 0x14004fa1d
mov eax, ecx
mov r8, rbx
cdq
sub eax, edx
sar eax, 1
add ecx, eax
mov dword [rbx + 0x20], ecx
movsxd rdx, ecx
mov rcx, rbx
call fcn.14003c9a0
mov rcx, qword [rbx]
mov edx, dword [rbx + 0x24]
mov qword [rbx + 0x18], rcx
jmp 0x14004fa21
mov rcx, qword [rbx + 0x18]
movsxd rax, edx
mov edx, 0x4760
mov word [rax + rcx], dx
mov eax, 0x51
add dword [rbx + 0x24], 2
lea rdx, [rbp + 0x38]
cmp byte [rbx + 0x50], r13b
mov ecx, 0x53
mov edi, dword [rbx + 0x24]
mov rbx, qword [r14 + 0x68]
cmovne eax, ecx
mov rcx, rbx
mov dword [rbp + 0x48], eax
call fcn.140059820
mov edx, dword [rbp - 0x20]
mov rcx, rbx
mov r9d, dword [rbp - 0x24]
mov dword [rsp + 0x20], edx
mov r8d, dword [rax]
mov edx, dword [rbp - 0x28]
call fcn.140059e40
mov rbx, qword [r14 + 0x68]
mov r9d, 5
mov r8d, r9d
mov edx, 0x7ffa0000
mov rcx, rbx
call fcn.1400447f0
mov r9d, 5
mov dword [rsp + 0x20], 0x7ffa0000
lea rdx, [rbp - 0x28]
mov rcx, rbx
lea r8d, [r9 - 4]
call fcn.140045190
mov rsi, qword [r14 + 0x68]
mov rdx, r12
mov rcx, rsi
mov dword [rbp - 0x40], 0xa
mov dword [rbp - 0x3c], 0x158
call fcn.140042620
mov ebx, dword [0x1400cd210]
lea rdx, [rbp + 0x38]
mov r9, r12
mov dword [rsp + 0x20], r13d
mov r8d, ebx
mov rcx, rsi
call fcn.1400647f0
mov r8d, dword [rbp + 0x38]
mov r9d, ebx
mov edx, dword [rbp + 0x3c]
mov rcx, rsi
call fcn.140043df0
mov rax, qword [rbp - 0x40]
mov r8d, 0xc
shr rax, 0x20
mov rcx, rsi
mov dword [rbp + 0x3c], eax
mov dword [rbp + 0x38], 0xa
mov rdx, qword [rbp + 0x38]
call fcn.14005a450
mov edx, dword [rsi + 0x24]
mov ecx, dword [rsi + 0x20]
lea eax, [rdx + 2]
cmp eax, ecx
jle 0x14004fb4c
mov eax, ecx
mov r8, rsi
cdq
sub eax, edx
sar eax, 1
add ecx, eax
mov dword [rsi + 0x20], ecx
movsxd rdx, ecx
mov rcx, rsi
call fcn.14003c9a0
mov rcx, qword [rsi]
mov edx, dword [rsi + 0x24]
mov qword [rsi + 0x18], rcx
jmp 0x14004fb50
mov rcx, qword [rsi + 0x18]
movsxd rax, edx
mov edx, 0x47e0
mov word [rax + rcx], dx
mov rcx, rsi
add dword [rsi + 0x24], 2
call fcn.14004c1c0
mov rdx, r15
mov rcx, rsi
call fcn.140062650
mov rsi, qword [r14 + 0x68]
lea rdx, [rbp + 0x38]
mov rcx, rsi
call fcn.140059820
mov r8d, 0xc
mov edx, r13d
mov rcx, rsi
call fcn.14005c700
mov edx, dword [rsi + 0x24]
mov ecx, dword [rsi + 0x20]
lea eax, [rdx + 2]
cmp eax, ecx
jle 0x14004fbc7
mov eax, ecx
mov r8, rsi
cdq
sub eax, edx
sar eax, 1
add ecx, eax
mov dword [rsi + 0x20], ecx
movsxd rdx, ecx
mov rcx, rsi
call fcn.14003c9a0
mov rcx, qword [rsi]
mov edx, dword [rsi + 0x24]
mov qword [rsi + 0x18], rcx
jmp 0x14004fbcb
mov rcx, qword [rsi + 0x18]
movsxd rax, edx
mov edx, 0x4760
mov word [rax + rcx], dx
mov eax, 0x51
add dword [rsi + 0x24], 2
lea rdx, [rbp - 0x40]
cmp byte [rsi + 0x50], r13b
mov ecx, 0x53
mov ebx, dword [rsi + 0x24]
mov rsi, qword [r14 + 0x68]
cmovne eax, ecx
mov rcx, rsi
mov dword [rbp + 0x38], eax
call fcn.140059820
mov edx, dword [rbp - 0x20]
mov rcx, rsi
mov r9d, dword [rbp - 0x24]
mov dword [rsp + 0x20], edx
mov r8d, dword [rax]
mov edx, dword [rbp - 0x28]
call fcn.140059e40
mov rcx, qword [r14 + 0x68]
lea rdx, [rbp - 0x30]
mov r9, r12
mov r8d, 5
call fcn.1400915a0
cmp byte [r15 + 2], 1
mov rax, r15
cmovne rax, r13
test rax, rax
je 0x14004fc79
mov r8d, dword [rax + 4]
mov eax, r8d
and eax, 0xe0000000
cmp eax, 0x60000000
je 0x14004fc79
mov rax, qword [rbp - 0x30]
and r8d, 0xfffffff
mov rcx, qword [r14 + 0x68]
mov dword [rbp - 0x40], eax
shr rax, 0x20
mov dword [rbp - 0x3c], eax
mov rdx, qword [rbp - 0x40]
call fcn.14005acc0
jmp 0x14004fcc7
mov rax, qword [rbp - 0x30]
xor r8d, r8d
mov rsi, qword [r14 + 0x68]
mov dword [rbp - 0x40], eax
mov rcx, rsi
shr rax, 0x20
mov dword [rbp - 0x3c], eax
mov rdx, qword [rbp - 0x40]
call fcn.14005acc0
mov r9, r15
lea rdx, [rbp - 0x28]
xor r8d, r8d
mov rcx, rsi
call fcn.1400915a0
xor edx, edx
mov rcx, rsi
mov rax, qword [rax]
mov dword [rbp - 0x40], eax
shr rax, 0x20
mov dword [rbp - 0x3c], eax
mov r8, qword [rbp - 0x40]
call fcn.140061fa0
mov rsi, qword [r14 + 0x68]
lea rdx, [rbp - 0x40]
mov rcx, rsi
call fcn.140059820
mov r9d, dword [rbp + 0x38]
mov edx, ebx
mov rcx, rsi
mov dword [rsp + 0x20], 0xf
mov r8d, dword [rax]
call fcn.140059e40
mov rbx, qword [r14 + 0x68]
lea rdx, [rbp + 0x38]
mov rcx, rbx
call fcn.140059820
mov r9d, dword [rbp + 0x48]
mov edx, edi
mov rcx, rbx
mov dword [rsp + 0x20], 0xf
mov r8d, dword [rax]
call fcn.140059e40
mov rdi, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
mov rbx, qword [rsp + 0xa0]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov rcx, qword [r14 + 0x68]
mov r8d, 5
call fcn.140064e20
xor r13d, r13d
mov rcx, r15
cmp byte [r15 + 2], 1
cmovne rcx, r13
test rcx, rcx
je 0x14004fd94
mov r8d, dword [rcx + 4]
mov ecx, r8d
and ecx, 0xe0000000
cmp ecx, 0x40000000
jne 0x14004fd94
mov rcx, qword [r14 + 0x68]
lea r9d, [r13 + 5]
and r8d, 0xfffffff
mov edx, eax
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rbp
jmp fcn.1400518c0
mov rcx, qword [r14 + 0x68]
mov r8d, 5
mov rdx, r12
call fcn.140065430
mov rcx, qword [r14 + 0x68]
mov edx, eax
mov r9d, 5
xor r8d, r8d
call fcn.1400518c0
mov rcx, qword [r14 + 0x68]
lea rdx, [rbp + 0x48]
mov r9, r15
mov r8d, 5
call fcn.1400915a0
mov rcx, qword [r14 + 0x68]
xor edx, edx
mov rax, qword [rax]
mov dword [rbp + 0x38], eax
shr rax, 0x20
mov dword [rbp + 0x3c], eax
mov r8, qword [rbp + 0x38]
call fcn.140061fa0
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
push rbp
push rsi
push rdi
sub rsp, 0x50
mov rdi, rcx
mov rbp, r8
movzx ecx, word [rdx]
mov rsi, rdx
cmp cx, 0x20
ja 0x140050737
je 0x140050716
lea eax, [rcx - 2]
mov edx, 0xfffd
test dx, ax
je 0x1400506f3
cmp cx, 8
jne 0x14005074b
mov rcx, qword [rdi + 0x68]
xor r8d, r8d
mov rdx, rsi
call fcn.140064e20
mov rcx, qword [rdi + 0x68]
mov edx, eax
mov r8, rbp
add rsp, 0x50
pop rdi
pop rsi
pop rbp
jmp fcn.140062290
mov rcx, qword [rdi + 0x68]
xor r8d, r8d
xor edx, edx
call fcn.14005bdf0
mov rcx, qword [rdi + 0x68]
mov r8, rbp
xor edx, edx
add rsp, 0x50
pop rdi
pop rsi
pop rbp
jmp fcn.140062290
mov rcx, qword [rdi + 0x68]
xor r8d, r8d
call fcn.140065430
mov rcx, qword [rdi + 0x68]
mov edx, eax
mov r8, rbp
add rsp, 0x50
pop rdi
pop rsi
pop rbp
jmp fcn.140062290
cmp cx, 0x40
je 0x1400507c1
mov eax, 0x200
cmp cx, ax
je 0x1400507b1
mov rcx, qword [rdi + 0x68]
lea rdx, [rsp + 0x88]
mov r9, rsi
mov dword [rsp + 0x78], 0xa
mov r8d, 5
mov dword [rsp + 0x7c], 0x15c
call fcn.1400915a0
lea r9, str.Runtime::toInt
xor r8d, r8d
mov dl, 1
mov rcx, qword [rax]
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x28], rcx
mov rcx, qword [rdi + 0x68]
mov qword [rsp + 0x20], rax
call fcn.140040ac0
mov rcx, qword [rdi + 0x68]
mov r8, rbp
xor edx, edx
add rsp, 0x50
pop rdi
pop rsi
pop rbp
jmp fcn.140062290
mov rcx, qword [rdi + 0x68]
add rsp, 0x50
pop rdi
pop rsi
pop rbp
jmp 0x140051cb0
mov rcx, qword [rdi + 0x68]
xor r8d, r8d
mov qword [rsp + 0x70], rbx
call fcn.140064ba0
mov rbx, qword [rdi + 0x68]
mov r8d, eax
mov rcx, rbx
mov edx, 0xe
call fcn.140066180
xor edx, edx
mov rcx, rbx
lea r8d, [rdx + 0xe]
call fcn.1400698f0
xor r9d, r9d
mov dword [rsp + 0x28], 0xc
xor r8d, r8d
mov dword [rsp + 0x20], 0
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.140045590
mov r9d, 0xc
mov dword [rsp + 0x20], 0xfffffffe
lea rdx, [rsp + 0x40]
mov rcx, rbx
lea r8d, [r9 - 0xb]
call fcn.140045190
lea rdx, [rsp + 0x78]
mov rcx, rbx
call fcn.140059820
mov edx, dword [rsp + 0x38]
mov rcx, rbx
mov r9d, dword [rsp + 0x34]
mov dword [rsp + 0x20], edx
mov r8d, dword [rax]
mov edx, dword [rsp + 0x30]
call fcn.140059e40
mov rcx, qword [rdi + 0x68]
lea r9, str.Runtime::doubleToInt
mov dword [rsp + 0x78], 0xa
xor r8d, r8d
mov dword [rsp + 0x7c], 0x160
mov dl, 1
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rax
call fcn.140040b90
mov rbx, qword [rdi + 0x68]
lea rdx, [rsp + 0x78]
mov rcx, rbx
call fcn.140059820
mov edx, dword [rsp + 0x48]
mov rcx, rbx
mov r9d, dword [rsp + 0x44]
mov dword [rsp + 0x20], edx
mov r8d, dword [rax]
mov edx, dword [rsp + 0x40]
call fcn.140059e40
mov rcx, qword [rdi + 0x68]
mov r8, rbp
xor edx, edx
mov rbx, qword [rsp + 0x70]
add rsp, 0x50
pop rdi
pop rsi
pop rbp
jmp fcn.140062290
push rbp
push r12
push r14
push r15
mov rbp, rsp
sub rsp, 0x58
movzx r9d, word [rdx]
mov r12, r8
mov r15, rdx
mov r14, rcx
cmp r9d, 0x10
ja 0x140050fd5
je 0x140050f89
lea eax, [r9 - 2]
test eax, 0xfffffffd
je 0x140050fae
cmp r9d, 8
jne 0x140051312
mov rcx, qword [rcx + 0x68]
xor r8d, r8d
call fcn.140064e20
mov rcx, qword [r14 + 0x68]
mov edx, eax
mov r8, r12
add rsp, 0x58
pop r15
pop r14
pop r12
pop rbp
jmp fcn.140062cd0
mov rcx, qword [rcx + 0x68]
xor r8d, r8d
xor edx, edx
call fcn.14005bdf0
mov rcx, qword [r14 + 0x68]
mov r8, r12
xor edx, edx
add rsp, 0x58
pop r15
pop r14
pop r12
pop rbp
jmp fcn.140062cd0
mov qword [rsp + 0x80], rbx
sub r9d, 0x40
je 0x14005121a
sub r9d, 0x40
je 0x1400511e4
cmp r9d, 0x180
jne 0x14005130a
mov rcx, qword [rcx + 0x68]
lea rdx, [rbp + 0x40]
mov qword [rsp + 0x90], rsi
mov r9, r15
mov r8d, 5
mov qword [rsp + 0x50], rdi
call fcn.1400915a0
mov eax, dword [rbp + 0x40]
mov r8d, 5
add dword [rbp + 0x44], 4
mov rcx, qword [r14 + 0x68]
mov dword [rbp + 0x30], eax
mov rax, qword [rbp + 0x40]
shr rax, 0x20
mov dword [rbp + 0x34], eax
mov rdx, qword [rbp + 0x30]
call fcn.14005a450
mov rcx, qword [r14 + 0x68]
lea rdx, [rbp - 0x18]
mov r9d, 5
mov dword [rsp + 0x20], 0x7fff2000
lea r8d, [r9 - 4]
call fcn.140045190
mov rcx, qword [r14 + 0x68]
lea rdx, [rbp - 0x28]
mov r9, r15
mov r8d, 5
call fcn.1400915a0
mov rax, qword [rbp - 0x28]
mov r8d, 5
mov rcx, qword [r14 + 0x68]
mov dword [rbp + 0x30], eax
shr rax, 0x20
mov dword [rbp + 0x34], eax
mov rdx, qword [rbp + 0x30]
call fcn.14005a450
mov rcx, qword [r14 + 0x68]
mov r8, r12
mov edx, 5
call fcn.140062cd0
mov rdi, qword [r14 + 0x68]
lea rdx, [rbp + 0x30]
mov rcx, rdi
call fcn.140059820
xor edx, edx
mov rcx, rdi
lea r8d, [rdx + 0xc]
call fcn.14005c700
mov edx, dword [rdi + 0x24]
mov ecx, dword [rdi + 0x20]
lea eax, [rdx + 2]
cmp eax, ecx
jle 0x140051101
mov eax, ecx
mov r8, rdi
cdq
sub eax, edx
sar eax, 1
add ecx, eax
mov dword [rdi + 0x20], ecx
movsxd rdx, ecx
mov rcx, rdi
call fcn.14003c9a0
mov rcx, qword [rdi]
mov edx, dword [rdi + 0x24]
mov qword [rdi + 0x18], rcx
jmp 0x140051105
mov rcx, qword [rdi + 0x18]
movsxd rax, edx
mov esi, 0x51
mov edx, 0x4760
mov word [rax + rcx], dx
mov eax, 0x53
add dword [rdi + 0x24], 2
lea rdx, [rbp + 0x30]
cmp byte [rdi + 0x50], 0
mov ebx, dword [rdi + 0x24]
mov rdi, qword [r14 + 0x68]
cmovne esi, eax
mov rcx, rdi
call fcn.140059820
mov edx, dword [rbp - 0x10]
mov rcx, rdi
mov r9d, dword [rbp - 0x14]
mov dword [rsp + 0x20], edx
mov r8d, dword [rax]
mov edx, dword [rbp - 0x18]
call fcn.140059e40
mov rcx, qword [r14 + 0x68]
lea rdx, [rbp - 0x18]
mov r9, r15
mov dword [rbp + 0x30], 0xa
mov r8d, 5
mov dword [rbp + 0x34], 0x164
call fcn.1400915a0
lea r9, str.Runtime::toUInt
xor r8d, r8d
mov dl, 1
mov rcx, qword [rax]
mov rax, qword [rbp + 0x30]
mov qword [rsp + 0x28], rcx
mov rcx, qword [r14 + 0x68]
mov qword [rsp + 0x20], rax
call fcn.140040ac0
mov rcx, qword [r14 + 0x68]
mov r8, r12
xor edx, edx
call fcn.140062290
mov rdi, qword [r14 + 0x68]
lea rdx, [rbp + 0x30]
mov rcx, rdi
call fcn.140059820
mov r9d, esi
mov dword [rsp + 0x20], 0xf
mov edx, ebx
mov rcx, rdi
mov r8d, dword [rax]
call fcn.140059e40
mov rdi, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x90]
jmp 0x14005130a
mov rcx, qword [rcx + 0x68]
lea r9, str.Runtime::toUInt
mov dword [rbp + 0x30], 0xa
xor r8d, r8d
mov dword [rbp + 0x34], 0x164
mov dl, 1
mov rax, qword [rbp + 0x30]
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rax
call fcn.140040b90
jmp 0x1400512fc
mov rcx, qword [rcx + 0x68]
xor r8d, r8d
call fcn.140064ba0
mov rbx, qword [r14 + 0x68]
mov r8d, eax
mov rcx, rbx
mov edx, 0xe
call fcn.140066180
xor edx, edx
mov rcx, rbx
lea r8d, [rdx + 0xe]
call fcn.1400698f0
xor r9d, r9d
mov dword [rsp + 0x20], 0x7fffffff
xor r8d, r8d
lea rdx, [rbp - 0x18]
mov rcx, rbx
call fcn.140045190
xor r9d, r9d
mov dword [rsp + 0x20], 0
lea rdx, [rbp - 0x28]
mov rcx, rbx
lea r8d, [r9 + 0xa]
call fcn.140045190
lea rdx, [rbp + 0x30]
mov rcx, rbx
call fcn.140059820
mov edx, dword [rbp - 0x10]
mov rcx, rbx
mov r9d, dword [rbp - 0x14]
mov dword [rsp + 0x20], edx
mov r8d, dword [rax]
mov edx, dword [rbp - 0x18]
call fcn.140059e40
mov rcx, qword [r14 + 0x68]
lea r9, str.Runtime::doubleToUInt
mov dword [rbp + 0x30], 0xa
xor r8d, r8d
mov dword [rbp + 0x34], 0x168
mov dl, 1
mov rax, qword [rbp + 0x30]
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rax
call fcn.140040b90
mov rbx, qword [r14 + 0x68]
lea rdx, [rbp + 0x30]
mov rcx, rbx
call fcn.140059820
mov edx, dword [rbp - 0x20]
mov rcx, rbx
mov r9d, dword [rbp - 0x24]
mov dword [rsp + 0x20], edx
mov r8d, dword [rax]
mov edx, dword [rbp - 0x28]
call fcn.140059e40
mov rcx, qword [r14 + 0x68]
mov r8, r12
xor edx, edx
call fcn.140062cd0
mov rbx, qword [rsp + 0x80]
add rsp, 0x58
pop r15
pop r14
pop r12
pop rbp
ret
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r14
push r15
mov rbp, rsp
sub rsp, 0x40
mov rsi, r8
mov r15, rdx
mov r9, rdx
mov r8d, 5
lea rdx, [rbp + 0x40]
mov rdi, rcx
call fcn.1400915a0
mov rax, qword [rbp + 0x40]
xor r8d, r8d
mov qword [rbp + 0x30], rax
mov rcx, rdi
shr rax, 0x20
add eax, 4
mov dword [rbp + 0x34], eax
mov eax, dword [rbp + 0x30]
mov dword [rbp + 0x48], eax
mov rax, qword [rbp + 0x30]
shr rax, 0x20
mov dword [rbp + 0x4c], eax
mov rdx, qword [rbp + 0x48]
call fcn.14005a450
xor r9d, r9d
mov dword [rsp + 0x20], 0x7fff2000
lea rdx, [rbp - 0x10]
mov rcx, rdi
lea r8d, [r9 + 1]
call fcn.140045190
xor ebx, ebx
mov rax, rsi
cmp byte [rsi + 2], 1
cmovne rax, rbx
test rax, rax
je 0x140051d73
mov r8d, dword [rax + 4]
mov eax, r8d
and eax, 0xe0000000
cmp eax, 0x60000000
je 0x140051d73
mov rax, qword [rbp + 0x40]
and r8d, 0xfffffff
mov dword [rbp + 0x30], eax
mov rcx, rdi
shr rax, 0x20
mov dword [rbp + 0x34], eax
mov rdx, qword [rbp + 0x30]
call fcn.14005a450
jmp 0x140051dea
mov rax, qword [rbp + 0x40]
xor r8d, r8d
mov dword [rbp + 0x30], eax
mov rcx, rdi
shr rax, 0x20
mov dword [rbp + 0x34], eax
mov rdx, qword [rbp + 0x30]
call fcn.14005a450
mov r9, rsi
lea rdx, [rbp + 0x30]
mov r8d, 5
mov rcx, rdi
call fcn.1400915a0
mov eax, dword [rbp + 0x30]
xor edx, edx
mov dword [rbp + 0x48], eax
mov rcx, rdi
mov rax, qword [rbp + 0x30]
shr rax, 0x20
mov dword [rbp + 0x4c], eax
mov r8, qword [rbp + 0x48]
call fcn.140061280
mov eax, dword [rbp + 0x30]
mov edx, 0x7fff2000
add dword [rbp + 0x34], 4
mov rcx, rdi
mov dword [rbp + 0x48], eax
mov rax, qword [rbp + 0x30]
shr rax, 0x20
mov dword [rbp + 0x4c], eax
mov r8, qword [rbp + 0x48]
call fcn.1400611f0
lea rdx, [rbp + 0x30]
mov rcx, rdi
call fcn.140059820
mov r8d, 0xc
mov edx, ebx
mov rcx, rdi
call fcn.14005c700
mov edx, dword [rdi + 0x24]
mov ecx, dword [rdi + 0x20]
lea eax, [rdx + 2]
cmp eax, ecx
jle 0x140051e39
mov eax, ecx
mov r8, rdi
cdq
sub eax, edx
sar eax, 1
add ecx, eax
mov dword [rdi + 0x20], ecx
movsxd rdx, ecx
mov rcx, rdi
call fcn.14003c9a0
mov rcx, qword [rdi]
mov edx, dword [rdi + 0x24]
mov qword [rdi + 0x18], rcx
jmp 0x140051e3d
mov rcx, qword [rdi + 0x18]
movsxd rax, edx
mov r14d, 0x51
mov edx, 0x4760
mov word [rax + rcx], dx
mov eax, 0x53
add dword [rdi + 0x24], 2
lea rdx, [rbp + 0x30]
cmp byte [rdi + 0x50], 0
mov rcx, rdi
mov ebx, dword [rdi + 0x24]
cmovne r14d, eax
call fcn.140059820
mov ecx, dword [rbp - 8]
mov r9d, dword [rbp - 0xc]
mov edx, dword [rbp - 0x10]
mov r8d, dword [rax]
mov dword [rsp + 0x20], ecx
mov rcx, rdi
call fcn.140059e40
mov r9, r15
mov dword [rbp + 0x30], 0xa
mov r8d, 5
mov dword [rbp + 0x34], 0x15c
lea rdx, [rbp - 0x10]
mov rcx, rdi
call fcn.1400915a0
mov r9d, dword [0x1400cd210]
mov rcx, rdi
mov rax, qword [rax]
mov rdx, rax
mov r8d, eax
shr rdx, 0x20
call fcn.140043df0
mov rax, qword [rbp + 0x30]
mov r8d, 0xc
shr rax, 0x20
mov rcx, rdi
mov dword [rbp + 0x4c], eax
mov dword [rbp + 0x48], 0xa
mov rdx, qword [rbp + 0x48]
call fcn.14005a450
mov edx, dword [rdi + 0x24]
mov ecx, dword [rdi + 0x20]
lea eax, [rdx + 2]
cmp eax, ecx
jle 0x140051f1e
mov eax, ecx
mov r8, rdi
cdq
sub eax, edx
sar eax, 1
add ecx, eax
mov dword [rdi + 0x20], ecx
movsxd rdx, ecx
mov rcx, rdi
call fcn.14003c9a0
mov rcx, qword [rdi]
mov edx, dword [rdi + 0x24]
mov qword [rdi + 0x18], rcx
jmp 0x140051f22
mov rcx, qword [rdi + 0x18]
movsxd rax, edx
mov edx, 0x47e0
mov word [rax + rcx], dx
mov rcx, rdi
add dword [rdi + 0x24], 2
call fcn.14004c1c0
xor r8d, r8d
xor edx, edx
mov rcx, rdi
call fcn.14005c300
mov r8, rsi
xor edx, edx
mov rcx, rdi
call fcn.140062290
lea rdx, [rbp + 0x30]
mov rcx, rdi
call fcn.140059820
mov r9d, r14d
mov dword [rsp + 0x20], 0xf
mov edx, ebx
mov rcx, rdi
mov r8d, dword [rax]
call fcn.140059e40
mov rbx, qword [rsp + 0x78]
add rsp, 0x40
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret