Function at 0x14024c724
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xe8
movaps xmmword [rsp + 0xd0], xmm6
mov r12, r9
mov r10d, edx
mov rbx, rcx
mov rax, qword [0x14030c028]
xor rax, rsp
mov qword [rsp + 0xc8], rax
movaps xmm6, xmmword [0x14029de10]
movups xmmword [rsp + 0x90], xmm6
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0xc0], rax
movups xmmword [rsp + 0xb0], xmm6
movups xmmword [rsp + 0xa0], xmm6
lea rax, vtable.icu_71::UnicodeString.0
mov qword [rsp + 0x88], rax
mov word [rsp + 0x90], 2
movzx eax, word [rcx + 8]
cmp ax, 0x7f
jbe 0x14024c7c1
movzx ecx, ax
mov r13b, 0xe0
cmp ecx, 0x7ff
ja 0x14024c7c4
shr eax, 6
add al, 0xc0
mov r13d, eax
mov rax, qword [rsp + 0x160]
mov r9, qword [rsp + 0x158]
mov r11, qword [rsp + 0x150]
cmp r8, r12
je 0x14024cd68
mov dword [rsp + 0x38], 0
mov qword [rsp + 0x40], r8
mov r14, r8
mov rdi, r14
movzx eax, byte [rdi]
lea rsi, [rdi + 1]
cmp al, r13b
jb 0x14024c97b
test al, al
jns 0x14024c956
mov rcx, r12
cmp rsi, r12
je 0x14024c94a
cmp al, 0xe0
jb 0x14024c887
cmp al, 0xef
ja 0x14024c8b9
and eax, 0xf
lea rcx, str._000000000000
movzx ecx, byte [rax + rcx]
movzx edx, byte [rsi]
mov ebp, edx
shr ebp, 5
bt ecx, ebp
mov rcx, rsi
jae 0x14024c94a
lea rsi, [rdi + 2]
mov rcx, r12
cmp rsi, r12
je 0x14024c94a
movzx ecx, byte [rsi]
xor ecx, 0x80
cmp cl, 0x3f
ja 0x14024c947
mov rbp, qword [rbx + 0x20]
mov rbp, qword [rbp]
mov eax, eax
shl rax, 6
and edx, 0x3f
or rdx, rax
movzx eax, word [rbp + rdx*2]
jmp 0x14024c8af
cmp al, 0xc2
jb 0x14024c947
movzx ecx, byte [rsi]
xor ecx, 0x80
cmp cl, 0x3f
ja 0x14024c947
mov rdx, qword [rbx + 0x20]
mov rdx, qword [rdx]
and eax, 0x1f
movzx eax, word [rdx + rax*2]
add eax, ecx
inc rsi
jmp 0x14024c956
cmp al, 0xf4
ja 0x14024c947
add eax, 0xffffff10
movzx edx, byte [rsi]
mov rcx, rdx
shr rcx, 4
lea rbp, [0x1402b30e2]
movsx ecx, byte [rcx + rbp]
bt ecx, eax
mov rcx, rsi
jae 0x14024c94a
lea rbp, [rdi + 2]
mov rcx, r12
cmp rbp, r12
je 0x14024c94a
mov r8b, byte [rbp]
add r8b, 0x80
mov rcx, rbp
cmp r8b, 0x3f
ja 0x14024c94a
lea rsi, [rdi + 3]
mov rcx, r12
cmp rsi, r12
je 0x14024c94a
mov r15, r9
mov r9b, byte [rsi]
add r9b, 0x80
cmp r9b, 0x3f
ja 0x14024c98c
shl eax, 6
and edx, 0x3f
or edx, eax
mov rcx, qword [rbx + 0x20]
movzx eax, word [rcx + 0x1c]
cmp edx, eax
jge 0x14024c994
mov dword [rsp + 0x3c], r10d
mov rbp, r11
call fcn.14024b5bd
mov r11, rbp
mov r10d, dword [rsp + 0x3c]
jmp 0x14024c99a
mov rcx, rsi
mov rax, qword [rbx + 0x20]
mov eax, dword [rax + 0x14]
dec eax
mov rsi, rcx
mov rcx, qword [rbx + 0x20]
mov rcx, qword [rcx + 8]
cdqe
movzx r15d, word [rcx + rax*2]
mov eax, r15d
and eax, 0xfdff
cmp eax, 0xfc00
je 0x14024c97b
cmp word [rbx + 0xe], r15w
jbe 0x14024c9a2
mov rdi, rsi
cmp rsi, r12
jne 0x14024c7f8
jmp 0x14024cd56
mov rcx, rsi
mov r9, r15
jmp 0x14024c94a
mov eax, dword [rcx + 0x14]
add eax, 0xfffffffe
mov r9, r15
jmp 0x14024c8b1
mov r8, rdi
cmp rdi, r14
mov rcx, qword [rsp + 0x40]
cmove r8, rcx
movzx ebp, byte [rsp + 0x38]
mov eax, 0
cmovne ebp, eax
je 0x14024ca08
test r11, r11
mov rdx, qword [rsp + 0x160]
je 0x14024ca10
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], r9
mov rdx, rdi
mov r8, r11
mov r14d, r10d
mov r9d, r10d
call fcn.1402554fc
test al, al
je 0x14024cd90
xor ebp, ebp
mov r8, rdi
mov r10d, r14d
mov r11, qword [rsp + 0x150]
mov r9, qword [rsp + 0x158]
mov rdx, qword [rsp + 0x160]
cmp word [rbx + 0x1e], r15w
ja 0x14024ca36
movzx ecx, r15w
mov eax, ecx
shr eax, 1
cmp ecx, 0xfc00
mov ecx, 0
cmovae ecx, eax
test cl, cl
je 0x14024caa7
cmp bpl, cl
jbe 0x14024caa7
test r11, r11
je 0x14024cdcc
mov dword [rsp + 0x38], ebp
mov rbp, r9
mov dword [rsp + 0x3c], r10d
mov qword [rsp + 0x40], rdi
cmp r8, rdi
je 0x14024cb11
mov r14, r8
mov rcx, rbx
mov edx, r15d
call fcn.14024cdd2
test al, al
je 0x14024cb0c
mov rax, qword [rsp + 0x160]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbp
mov rcx, r14
mov rdx, rdi
mov r8, qword [rsp + 0x150]
mov r9d, dword [rsp + 0x3c]
call fcn.1402554fc
mov qword [rsp + 0x40], rdi
test al, al
jne 0x14024cb11
jmp 0x14024cd90
movzx ebp, al
movzx eax, cl
cmp cl, 2
cmovae eax, ebp
mov rbp, rsi
cmovae rbp, r8
jae 0x14024cc94
test r11, r11
je 0x14024cc94
mov dword [rsp + 0x38], ecx
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], r9
mov rcx, r8
mov rdx, rsi
mov r8, r11
mov r14, r9
mov r9d, r10d
mov edi, r10d
mov rbp, r11
call fcn.1402554fc
mov r9, r14
mov r11, rbp
mov r10d, edi
mov qword [rsp + 0x40], rsi
test al, al
jne 0x14024cc83
jmp 0x14024cd90
mov qword [rsp + 0x40], r14
lea rax, [rsp + 0x58]
movups xmmword [rax + 0x20], xmm6
movups xmmword [rax + 0x10], xmm6
movups xmmword [rax], xmm6
mov qword [rsp + 0x48], rbx
lea rcx, [rsp + 0x88]
mov qword [rsp + 0x50], rcx
mov edx, 8
call fcn.140243336
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rax
mov rdx, qword [rsp + 0x50]
mov ecx, 0x1b
test byte [rdx + 8], 2
jne 0x14024cb5f
mov ecx, dword [rdx + 0x10]
mov dword [rsp + 0x70], ecx
mov byte [rsp + 0x74], 0
mov rcx, qword [rsp + 0x160]
mov ecx, dword [rcx]
test rax, rax
mov r10d, dword [rsp + 0x3c]
mov r11, qword [rsp + 0x150]
mov r9, rbp
mov edx, dword [rsp + 0x38]
jne 0x14024cba2
test ecx, ecx
jg 0x14024cba2
mov rax, qword [rsp + 0x160]
mov dword [rax], 7
jmp 0x14024cc43
test ecx, ecx
jg 0x14024cc43
mov r14, qword [rsp + 0x160]
mov qword [rsp + 0x30], r14
lea rax, [rsp + 0x48]
mov qword [rsp + 0x28], rax
mov byte [rsp + 0x20], 0
mov rcx, rbx
mov rdx, qword [rsp + 0x40]
mov r8, rsi
xor r9d, r9d
call fcn.14024ce1c
cmp byte [rsp + 0x74], 2
jb 0x14024cc0b
mov qword [rsp + 0x30], r14
lea rax, [rsp + 0x48]
mov qword [rsp + 0x28], rax
mov byte [rsp + 0x20], 0
mov rcx, rbx
mov rdx, rsi
mov r8, r12
mov r9d, 1
call fcn.14024ce1c
mov rsi, rax
mov r11, qword [rsp + 0x150]
cmp dword [r14], 0
mov r10d, dword [rsp + 0x3c]
mov r9, rbp
mov edx, dword [rsp + 0x38]
jg 0x14024cc43
mov rax, rsi
sub rax, rdi
mov ecx, 0x80000000
cmp rax, rcx
jl 0x14024cc9f
mov rax, qword [rsp + 0x160]
mov dword [rax], 8
xor edi, edi
mov eax, edx
mov dword [rsp + 0x38], eax
mov rax, qword [rsp + 0x58]
test rax, rax
je 0x14024cc7a
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x68]
sub rdx, rax
shr rdx, 1
call fcn.14024338e
mov r9, rbp
mov r11, qword [rsp + 0x150]
mov r10d, dword [rsp + 0x3c]
test dil, dil
je 0x14024cd90
mov r14, rsi
cmp rsi, r12
jne 0x14024c7f5
jmp 0x14024cd56
mov qword [rsp + 0x40], rbp
mov dword [rsp + 0x38], eax
jmp 0x14024cc83
cmp word [rbx + 0x1e], r15w
ja 0x14024cced
lea rcx, [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
mov r8, rsi
call fcn.14024b80e
mov r11, qword [rsp + 0x150]
test al, al
je 0x14024cced
mov rax, qword [rsp + 0x160]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbp
mov rcx, qword [rsp + 0x40]
mov rdx, rsi
mov r8, r11
mov r9d, dword [rsp + 0x3c]
call fcn.1402554fc
jmp 0x14024cd21
mov r8, qword [rsp + 0x58]
mov r9, qword [rsp + 0x68]
sub r9, r8
shr r9, 1
mov rax, qword [rsp + 0x160]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rbp
mov qword [rsp + 0x20], r11
mov rcx, qword [rsp + 0x40]
mov rdx, rsi
call fcn.1402553c6
test al, al
je 0x14024cd37
mov dil, 1
mov dword [rsp + 0x38], 0
mov qword [rsp + 0x40], rsi
jmp 0x14024cd41
xor edi, edi
mov eax, dword [rsp + 0x38]
mov dword [rsp + 0x38], eax
mov r10d, dword [rsp + 0x3c]
mov r11, qword [rsp + 0x150]
mov r9, rbp
jmp 0x14024cc4b
mov rsi, r12
mov rax, qword [rsp + 0x160]
mov r8, qword [rsp + 0x40]
jmp 0x14024cd6b
mov rsi, r8
test r11, r11
je 0x14024cd90
cmp r8, r12
je 0x14024cd90
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r9
mov rcx, r8
mov rdx, r12
mov r8, r11
mov r9d, r10d
call fcn.1402554fc
lea rcx, [rsp + 0x88]
call fcn.140242868
mov rcx, qword [rsp + 0xc8]
xor rcx, rsp
call fcn.140257200
mov rax, rsi
movaps xmm6, xmmword [rsp + 0xd0]
add rsp, 0xe8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rsi, r8
jmp 0x14024cd90