Function at 0x140004440
Capabilities:
Terminate process

Disassembly:
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x40
mov rsi, rcx
mov rbx, rdx
mov rbp, rdx
test rdx, rdx
js 0x140004858
cmp rbx, 0x63
jbe 0x140004940
mov rcx, rbx
lea r9, str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
movabs r10, 0x28f5c28f5c28f5c3
shr rcx, 2
mov rax, rcx
mul r10
mov r11, rdx
mov rax, rdx
mov rcx, rdx
shr r11, 2
and rax, 0xfffffffffffffffc
add rax, r11
lea rdx, [rax + rax*4]
mov rax, rbx
shl rdx, 2
sub rax, rdx
lea eax, [rax + rax + 1]
movsx rax, ax
movzx eax, word [r9 + rax - 1]
mov word [rsp + 0x36], ax
cmp rbx, 0x270f
jbe 0x140004990
movabs rax, 0x346dc5d63886594b
shr rcx, 4
mul rbx
mov rax, rcx
mov rdi, rdx
mov r8, rdx
mul r10
shr rdi, 0xb
mov rax, rdx
and rdx, 0xfffffffffffffffc
shr rax, 2
lea rcx, [rdx + rax]
mov rax, r11
lea rdx, [rcx + rcx*4]
shl rdx, 2
sub rax, rdx
lea eax, [rax + rax + 1]
movsx rax, ax
movzx eax, word [r9 + rax - 1]
mov word [rsp + 0x34], ax
cmp rbx, 0xf423f
jbe 0x1400049d0
movabs rax, 0x431bde82d7b634db
shr r8, 0xd
mul rbx
mov rax, r8
mov r11, rdx
mov rcx, rdx
mul r10
shr r11, 0x12
mov rax, rdx
and rdx, 0xfffffffffffffffc
shr rax, 2
lea r8, [rdx + rax]
mov rax, rdi
lea rdx, [r8 + r8*4]
shl rdx, 2
sub rax, rdx
lea eax, [rax + rax + 1]
movsx rax, ax
movzx eax, word [r9 + rax - 1]
mov word [rsp + 0x32], ax
cmp rbx, 0x5f5e0ff
jbe 0x1400049e8
movabs rax, 0xabcc77118461cefd
shr rcx, 0x14
mul rbx
mov rax, rcx
mov rdi, rdx
mov r8, rdx
mul r10
shr rdi, 0x1a
mov rax, rdx
and rdx, 0xfffffffffffffffc
shr rax, 2
add rdx, rax
mov rax, r11
lea rdx, [rdx + rdx*4]
shl rdx, 2
sub rax, rdx
lea eax, [rax + rax + 1]
movsx rax, ax
movzx eax, word [r9 + rax - 1]
mov word [rsp + 0x30], ax
movabs rax, 0x2540be3ff
cmp rax, rbx
jae 0x140004a00
movabs rax, 0xdbe6fecebdedd5bf
shr r8, 0x1c
mul rbx
mov rax, r8
mov r11, rdx
mov rcx, rdx
mul r10
shr r11, 0x21
mov rax, rdx
and rdx, 0xfffffffffffffffc
shr rax, 2
lea r8, [rdx + rax]
mov rax, rdi
lea rdx, [r8 + r8*4]
shl rdx, 2
sub rax, rdx
lea eax, [rax + rax + 1]
movsx rax, ax
movzx eax, word [r9 + rax - 1]
mov word [rsp + 0x2e], ax
movabs rax, 0xe8d4a50fff
cmp rax, rbx
jae 0x140004a18
movabs rax, 0x232f33025bd42233
shr rcx, 0x23
mul rbx
mov rax, rcx
mov rdi, rdx
mov r8, rdx
mul r10
shr rdi, 0x25
mov rax, rdx
and rdx, 0xfffffffffffffffc
shr rax, 2
add rdx, rax
mov rax, r11
lea rdx, [rdx + rdx*4]
shl rdx, 2
sub rax, rdx
lea eax, [rax + rax + 1]
movsx rax, ax
movzx eax, word [r9 + rax - 1]
mov word [rsp + 0x2c], ax
movabs rax, 0x5af3107a3fff
cmp rax, rbx
jae 0x140004a30
movabs rax, 0xb424dc35095cd81
shr r8, 0x27
mul rbx
mov rax, r8
mov r11, rdx
mov rcx, rdx
mul r10
shr r11, 0x2a
mov rax, rdx
and rdx, 0xfffffffffffffffc
shr rax, 2
lea r8, [rdx + rax]
mov rax, rdi
lea rdx, [r8 + r8*4]
shl rdx, 2
sub rax, rdx
lea eax, [rax + rax + 1]
movsx rax, ax
movzx eax, word [r9 + rax - 1]
mov word [rsp + 0x2a], ax
movabs rax, 0x2386f26fc0ffff
cmp rax, rbx
jae 0x140004a48
movabs rax, 0x39a5652fb1137857
shr rcx, 0x2c
mul rbx
mov rax, rcx
mov rdi, rdx
mov r8, rdx
mul r10
shr rdi, 0x33
mov rax, rdx
and rdx, 0xfffffffffffffffc
shr rax, 2
add rdx, rax
mov rax, r11
lea rdx, [rdx + rdx*4]
shl rdx, 2
sub rax, rdx
lea eax, [rax + rax + 1]
movsx rax, ax
movzx eax, word [r9 + rax - 1]
mov word [rsp + 0x28], ax
movabs rax, 0xde0b6b3a763ffff
cmp rax, rbx
jae 0x140004a60
movabs rax, 0x49c97747490f
shr rbx, 0x12
mul rbx
shr r8, 0x35
mov rax, r8
shr rdx, 0x18
mov rbp, rdx
mul r10
mov rax, rdx
and rdx, 0xfffffffffffffffc
shr rax, 2
add rdx, rax
lea rax, [rdx + rdx*4]
shl rax, 2
sub rdi, rax
lea edi, [rdi + rdi + 1]
movsx rdi, di
movzx eax, word [r9 + rdi - 1]
mov edi, 5
mov word [rsp + 0x26], ax
mov r12d, 0x18
sub r12, rdi
add ebp, 0x30
mov byte [rsp + rdi + 0x20], bpl
mov rbx, qword [rsi]
mov rcx, rbx
add rcx, r12
jo 0x140004aa6
test rcx, rcx
js 0x1400048d0
mov rdx, rcx
mov rcx, rsi
call sym.setLengthStrV2
mov rdx, qword [rsi]
test rbx, rbx
js 0x1400048b8
cmp rbx, rdx
jge 0x1400048b8
mov rax, qword [rsi + 8]
lea rcx, [rsp + rdi + 0x20]
mov edx, r12d
lea rax, [rax + rbx + 8]
cmp r12d, 8
jae 0x1400048f0
test r12b, 4
jne 0x140004a75
test r12d, r12d
je 0x140004848
movzx edx, byte [rcx]
mov byte [rax], dl
test r12b, 2
jne 0x140004a88
add rsp, 0x40
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
mov rax, rdx
movabs rdx, 0x8000000000000000
neg rax
cmp rbx, rdx
mov edx, 1
cmovne rbx, rax
call sym.prepareAdd
mov rax, qword [rsi]
mov rdx, qword [rsi + 8]
mov rbp, rbx
mov byte [rdx + rax + 8], 0x2d
mov rax, qword [rsi]
add rax, 1
jo 0x140004a9c
mov rdx, qword [rsi + 8]
mov byte [rdx + rax + 8], 0
mov rax, qword [rsi]
add rax, 1
jo 0x140004a9c
mov qword [rsi], rax
jmp 0x14000445c
sub rdx, 1
mov rcx, rbx
add rsp, 0x40
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
jmp sym.raiseIndexError2
movabs r8, 0x7fffffffffffffff
xor edx, edx
add rsp, 0x40
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
jmp sym.raiseRangeErrorI
mov rdx, qword [rcx]
mov qword [rax], rdx
mov edx, r12d
mov r8, qword [rcx + rdx - 8]
mov qword [rax + rdx - 8], r8
lea r8, [rax + 8]
and r8, 0xfffffffffffffff8
sub rax, r8
lea edx, [r12 + rax]
sub rcx, rax
and edx, 0xfffffff8
cmp edx, 8
jb 0x140004848
and edx, 0xfffffff8
xor eax, eax
mov r9d, eax
add eax, 8
mov r10, qword [rcx + r9]
mov qword [r8 + r9], r10
cmp eax, edx
jb 0x140004926
jmp 0x140004848
mov r12d, 1
mov edi, 0x17
cmp rbx, 9
jbe 0x1400047cf
lea r11, [rbx + rbx]
mov r12d, 2
mov edi, 0x16
lea r9, str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
movzx eax, byte [r9 + r11 + 1]
mov byte [rsp + 0x37], al
nop dword [rax]
movzx eax, byte [r9 + r11]
mov byte [rsp + rdi + 0x20], al
jmp 0x1400047d7
mov edi, 0x15
mov eax, 0x17
nop word [rax + rax]
cmp rbp, 0x3e7
jbe 0x140004ab5
add r11, r11
mov r12d, 0x18
movzx edx, byte [r9 + r11 + 1]
mov byte [rsp + rdi + 0x20], dl
lea rdi, [rax - 3]
sub r12, rdi
jmp 0x140004978
mov rbp, r11
mov eax, 0x15
mov r11, rdi
mov edi, 0x13
jmp 0x1400049a0
mov rbp, rdi
mov eax, 0x13
mov edi, 0x11
jmp 0x1400049a0
mov rbp, r11
mov eax, 0x11
mov r11, rdi
mov edi, 0xf
jmp 0x1400049a0
mov rbp, rdi
mov eax, 0xf
mov edi, 0xd
jmp 0x1400049a0
mov rbp, r11
mov eax, 0xd
mov r11, rdi
mov edi, 0xb
jmp 0x1400049a0
mov rbp, rdi
mov eax, 0xb
mov edi, 9
jmp 0x1400049a0
mov rbp, r11
mov eax, 9
mov r11, rdi
mov edi, 7
jmp 0x1400049a0
mov r8d, dword [rcx]
mov dword [rax], r8d
mov ecx, dword [rcx + rdx - 4]
mov dword [rax + rdx - 4], ecx
jmp 0x140004848
mov r12d, r12d
movzx edx, word [rcx + r12 - 2]
mov word [rax + r12 - 2], dx
jmp 0x140004848
call sym.raiseOverflow
jmp 0x14000445c
add rsp, 0x40
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
jmp sym.raiseOverflow
mov rbp, r11
jmp 0x1400047c6