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

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x248]
sub rsp, 0x310
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
movaps xmmword [rax - 0x88], xmm10
movaps xmmword [rax - 0x98], xmm11
movaps xmmword [rax - 0xa8], xmm12
mov rax, qword [0x18016f040]
xor rax, rsp
mov qword [rbp + 0x190], rax
mov r12d, r8d
mov rsi, rdx
mov qword [rsp + 0x78], rdx
mov r13, rcx
xor r14d, r14d
cmp dword [rdx + 0x484], r14d
jge 0x180062723
mov dword [rbp - 0x44], 0xffffffff
mov qword [rbp - 0x40], r14
mov qword [rbp - 0x38], r14
mov qword [rbp - 0x30], r14
lea rcx, [rdx + 0x58]
test byte [rdx], 2
lea rdx, [rbp - 0x48]
mov dword [rbp - 0x48], 0x1b00d9
je 0x180062713
mov dword [rbp - 0x48], 0x20002
call fcn.180061600
mov eax, dword [rsi + 0x58]
dec eax
mov dword [rsi + 0x484], eax
cmp dword [rsi + 0x488], r14d
jge 0x180062763
test byte [rsi], 4
jne 0x180062763
mov dword [rbp - 0x44], 0xffffffff
mov qword [rbp - 0x40], r14
mov qword [rbp - 0x38], r14
mov qword [rbp - 0x30], r14
mov dword [rbp - 0x48], 0x400041
lea rdx, [rbp - 0x48]
lea rcx, [rsi + 0x58]
call fcn.180061600
mov eax, dword [rsi + 0x58]
dec eax
mov dword [rsi + 0x488], eax
mov qword [rsi + 8], r14
mov qword [rsi + 0x30], r14
mov qword [rsi + 0x38], r14
mov qword [rsi + 0x40], r14
mov rcx, qword [rsi + 0x20]
test rcx, rcx
je 0x180062793
mov rax, qword [0x180218ec0]
test rax, rax
je 0x18006278e
dec dword [rax + 0x3b4]
call fcn.1800f9bcc
mov rcx, qword [rsi + 0x28]
test rcx, rcx
je 0x1800627b3
mov rax, qword [0x180218ec0]
test rax, rax
je 0x1800627ae
dec dword [rax + 0x3b4]
call fcn.1800f9bcc
mov qword [rsi + 0x20], r14
mov qword [rsi + 0x28], r14
mov byte [rsi + 0x19], r14b
mov byte [rsp + 0x60], r14b
mov dword [rbp + 0x1c], r14d
mov rax, r14
mov qword [rbp - 0x80], rax
mov qword [rbp + 0x20], rax
mov dword [rbp - 4], r14d
mov r15, r14
mov qword [rbp - 0x60], r14
mov qword [rbp], r14
mov r14d, dword [rsi + 0x68]
mov dword [rsp + 0x74], r14d
mov eax, 8
test r14d, r14d
jle 0x180062830
mov ebx, r14d
cmp r14d, eax
cmovl ebx, eax
test ebx, ebx
jle 0x180062830
mov rax, qword [0x180218ec0]
test rax, rax
je 0x180062814
inc dword [rax + 0x3b4]
movsxd rax, ebx
imul rcx, rax, 0x70
call fcn.1800fc0b4
mov qword [rbp - 0x80], rax
mov qword [rbp + 0x20], rax
mov dword [rbp + 0x1c], ebx
mov eax, 8
mov dword [rbp + 0x18], r14d
mov edi, dword [rsi + 0x48]
mov dword [rsp + 0x68], edi
test edi, edi
jle 0x180062877
mov ebx, edi
cmp edi, 8
cmovl ebx, eax
test ebx, ebx
jle 0x180062877
mov rax, qword [0x180218ec0]
test rax, rax
je 0x18006285d
inc dword [rax + 0x3b4]
movsxd rcx, ebx
shl rcx, 5
call fcn.1800fc0b4
mov r15, rax
mov qword [rbp - 0x60], rax
mov qword [rbp], rax
mov dword [rbp - 4], ebx
mov dword [rbp - 8], edi
imul ecx, r14d, 0x70
movsxd r8, ecx
xor edx, edx
mov rbx, qword [rbp - 0x80]
mov rcx, rbx
call fcn.18011cca0
mov ecx, edi
shl ecx, 5
movsxd r8, ecx
xor edx, edx
mov rcx, r15
call fcn.18011cca0
xor ecx, ecx
mov r15d, ecx
cmp dword [rsi + 0x68], ecx
jle 0x1800629d2
mov r14d, ecx
add rbx, 0x44
nop word [rax + rax]
mov rdi, qword [rsi + 0x70]
add rdi, r14
mov dword [rbx - 4], 0xffffffff
mov r8d, ecx
cmp dword [rsi + 0x48], 0
jle 0x1800629cb
mov edx, 0xffffffff
mov r9, rcx
mov eax, edx
cmp edx, 0xffffffff
jne 0x180062911
mov rax, qword [rsi + 0x50]
mov rcx, qword [r9 + rax]
cmp qword [rdi + 0x80], rcx
jne 0x180062902
mov dword [rbx - 4], r8d
mov edx, r8d
inc r8d
add r9, 8
mov eax, edx
cmp r8d, dword [rsi + 0x48]
jl 0x1800628e3
cmp eax, 0xffffffff
je 0x1800629cb
mov r9d, r12d
mov r8, rdi
mov rdx, r13
lea rcx, [rbx - 0x44]
call fcn.180061880
test al, al
je 0x1800629cb
mov eax, dword [rdi + 0x4c]
shr eax, 8
and al, 1
or byte [rsp + 0x60], al
movsxd r8, dword [rbx - 4]
shl r8, 5
mov r9, qword [rbp - 0x60]
add r8, r9
mov rax, qword [rdi + 0x38]
lea rdx, [0x180150b14]
test rax, rax
cmovne rdx, rax
mov qword [rbx - 0xc], rdx
cmp word [rdx], 0
je 0x18006298c
nop dword [rax + rax]
movzx eax, word [rdx + 2]
test ax, ax
je 0x18006298c
mov ecx, eax
cmp dword [rbx], eax
cmovge ecx, dword [rbx]
mov dword [rbx], ecx
add rdx, 4
cmp word [rdx], 0
jne 0x180062970
inc dword [r8]
mov ecx, dword [rbx]
cmp dword [r8 + 4], ecx
cmovge ecx, dword [r8 + 4]
mov dword [r8 + 4], ecx
inc r15d
add rbx, 0x70
add r14, 0x88
mov rsi, qword [rsp + 0x78]
cmp r15d, dword [rsi + 0x68]
mov ecx, 0
jl 0x1800628c0
mov r14d, dword [rsp + 0x74]
mov rbx, qword [rbp - 0x80]
jmp 0x1800629d6
xor bl, bl
jmp 0x18006388e
mov r9, qword [rbp - 0x60]
xor r15d, r15d
mov r12d, r15d
mov esi, 1
mov dword [rsp + 0x70], esi
test r14d, r14d
jle 0x180062cbd
lea r14, [rbx + 0x48]
mov edi, dword [rsp + 0x74]
mov qword [rbp - 0x78], rdi
nop word [rax + rax]
movsxd r15, dword [r14 - 8]
shl r15, 5
add r15, r9
mov edx, dword [r14 - 4]
add edx, 0x20
sar edx, 5
lea rcx, [r14 + 8]
call fcn.180031dc0
movsxd r8, dword [r14 + 8]
shl r8, 2
xor edx, edx
mov rcx, qword [r14 + 0x10]
call fcn.18011cca0
cmp dword [r15 + 0x10], 0
jne 0x180062a5e
mov edx, dword [r15 + 4]
add edx, 0x20
sar edx, 5
lea rcx, [r15 + 0x10]
call fcn.180031dc0
movsxd r8, dword [r15 + 0x10]
shl r8, 2
xor edx, edx
mov rcx, qword [r15 + 0x18]
call fcn.18011cca0
mov r13, qword [r14 - 0x10]
cmp word [r13], 0
je 0x180062aee
nop
movzx eax, word [r13 + 2]
test ax, ax
je 0x180062aea
movzx edi, word [r13]
cmp edi, eax
ja 0x180062ade
nop dword [rax]
nop word [rax + rax]
mov ecx, edi
and ecx, 0x1f
shl esi, cl
movsxd rbx, edi
sar rbx, 5
mov rax, qword [r15 + 0x18]
test dword [rax + rbx*4], esi
jne 0x180062ace
mov edx, edi
mov rcx, qword [r14 - 0x30]
call sym.Deceitik.dll_FT_Get_Char_Index
test eax, eax
je 0x180062ace
inc dword [r14]
inc dword [r15 + 8]
mov rax, qword [r14 + 0x10]
or dword [rax + rbx*4], esi
mov rax, qword [r15 + 0x18]
or dword [rax + rbx*4], esi
inc r12d
inc edi
movzx eax, word [r13 + 2]
cmp edi, eax
mov esi, 1
jle 0x180062a90
add r13, 4
cmp word [r13], 0
jne 0x180062a70
mov rdi, qword [rbp - 0x78]
add r14, 0x70
sub rdi, 1
mov qword [rbp - 0x78], rdi
mov r9, qword [rbp - 0x60]
jne 0x180062a00
mov r14, qword [rbp - 0x80]
add r14, 0x68
mov r15d, dword [rsp + 0x74]
mov qword [rbp - 0x78], r15
mov dword [rsp + 0x6c], r12d
xor r12d, r12d
nop dword [rax]
movsxd rbx, dword [r14 - 0x20]
cmp ebx, dword [r14 - 4]
jle 0x180062b8e
mov rax, qword [0x180218ec0]
test rax, rax
je 0x180062b3c
inc dword [rax + 0x3b4]
lea rcx, [rbx + rbx*4]
shl rcx, 3
call fcn.1800fc0b4
mov rdi, rax
mov rdx, qword [r14]
test rdx, rdx
je 0x180062b87
movsxd rcx, dword [r14 - 8]
lea r8, [rcx + rcx*4]
shl r8, 3
mov rcx, rax
call fcn.18011c600
mov rcx, qword [r14]
test rcx, rcx
je 0x180062b82
mov rax, qword [0x180218ec0]
test rax, rax
je 0x180062b82
dec dword [rax + 0x3b4]
call fcn.1800f9bcc
mov qword [r14], rdi
mov dword [r14 - 4], ebx
mov r13, qword [r14 - 0x10]
movsxd rax, dword [r14 - 0x18]
lea rax, [rax*4]
add rax, r13
mov qword [rbp - 0x50], rax
mov rsi, r13
cmp r13, rax
jae 0x180062c71
mov r15d, dword [rsi]
test r15d, r15d
je 0x180062c60
mov edi, r12d
bt r15d, edi
jae 0x180062c51
xorps xmm6, xmm6
xor eax, eax
movups xmmword [rbp - 0x38], xmm6
mov qword [rbp - 0x28], rax
lea rcx, [rsi*8]
lea rax, [r13*8]
sub ecx, eax
and ecx, 0xffffffe0
add ecx, edi
movzx eax, cx
mov dword [rbp - 0x30], eax
mov r8d, dword [r14 - 4]
mov ecx, dword [r14 - 8]
cmp ecx, r8d
jne 0x180062c2a
inc ecx
test r8d, r8d
je 0x180062c15
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
add eax, r8d
jmp 0x180062c1a
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
mov edx, ecx
lea rcx, [r14 - 8]
call fcn.180063a90
movsxd rax, dword [r14 - 8]
lea rcx, [rax + rax*4]
mov rax, qword [r14]
movups xmmword [rax + rcx*8], xmm6
movups xmm0, xmmword [rbp - 0x38]
movups xmmword [rax + rcx*8 + 0x10], xmm0
movsd xmm1, qword [rbp - 0x28]
movsd qword [rax + rcx*8 + 0x20], xmm1
inc dword [r14 - 8]
inc edi
cmp edi, 0x20
jb 0x180062bc0
mov rax, qword [rbp - 0x50]
add rsi, 4
cmp rsi, rax
jb 0x180062bb1
mov r15, qword [rbp - 0x78]
mov rcx, qword [r14 - 0x10]
test rcx, rcx
je 0x180062c99
mov qword [r14 - 0x18], r12
mov rax, qword [0x180218ec0]
test rax, rax
je 0x180062c90
dec dword [rax + 0x3b4]
call fcn.1800f9bcc
mov qword [r14 - 0x10], r12
add r14, 0x70
sub r15, 1
mov qword [rbp - 0x78], r15
jne 0x180062b20
mov r12d, dword [rsp + 0x6c]
mov esi, 1
mov r14d, dword [rsp + 0x74]
xor r15d, r15d
mov eax, dword [rsp + 0x68]
test eax, eax
jle 0x180062d04
mov rbx, qword [rbp - 0x60]
add rbx, 0x18
mov edi, eax
nop
mov rcx, qword [rbx]
test rcx, rcx
je 0x180062cfa
mov qword [rbx - 8], 0
mov rax, qword [0x180218ec0]
test rax, rax
je 0x180062cf2
dec dword [rax + 0x3b4]
call fcn.1800f9bcc
mov qword [rbx], r15
add rbx, 0x20
sub rdi, 1
jne 0x180062cd0
mov rcx, qword [rbp - 0x60]
test rcx, rcx
je 0x180062d37
mov qword [rbp - 8], 0
mov rax, qword [0x180218ec0]
test rax, rax
je 0x180062d27
dec dword [rax + 0x3b4]
call fcn.1800f9bcc
mov rcx, r15
mov qword [rbp - 0x60], rcx
mov qword [rbp], rcx
mov dword [rbp - 0x44], r15d
mov rdi, r15
mov qword [rbp - 0x78], r15
mov qword [rbp - 0x40], r15
mov r13d, 8
test r12d, r12d
jle 0x180062d8b
mov ebx, r12d
cmp r12d, r13d
cmovl ebx, r13d
test ebx, ebx
jle 0x180062d8b
mov rax, qword [0x180218ec0]
test rax, rax
je 0x180062d71
inc dword [rax + 0x3b4]
movsxd rcx, ebx
shl rcx, 4
call fcn.1800fc0b4
mov rdi, rax
mov qword [rbp - 0x78], rax
mov qword [rbp - 0x40], rax
mov dword [rbp - 0x44], ebx
mov dword [rbp - 0x48], r12d
shl r12d, 4
movsxd r8, r12d
xor edx, edx
mov rcx, rdi
call fcn.18011cca0
mov dword [rsp + 0x64], r15d
mov dword [rbp + 0x2c], r15d
mov qword [rbp + 0x30], r15
mov rax, qword [0x180218ec0]
mov r12d, r13d
mov ecx, 0x40000
test rax, rax
je 0x180062dc7
inc dword [rax + 0x3b4]
call fcn.1800fc0b4
mov rbx, rax
mov rdx, qword [0x180218ec0]
test rdx, rdx
je 0x180062de1
inc dword [rdx + 0x3b4]
mov ecx, 0x40
call fcn.1800fc0b4
mov qword [rbp - 0x68], rax
mov qword [rbp + 0x30], rax
mov dword [rbp + 0x2c], r12d
mov qword [rax], rbx
mov dword [rbp + 0x28], esi
mov eax, r15d
mov dword [rbp - 0x70], eax
mov r9d, r15d
mov dword [rsp + 0x6c], r15d
movss xmm6, dword [0x180151fe0]
test r14d, r14d
jle 0x1800631ed
mov r8, r15
mov qword [rbp - 0x20], r15
mov rbx, qword [rbp - 0x80]
add rbx, 0x60
mov r10d, r14d
mov qword [rbp - 0x50], r10
mov r11, qword [rsp + 0x78]
nop word [rax + rax]
mov rdx, qword [r11 + 0x70]
mov ecx, dword [rbx - 0x18]
test ecx, ecx
je 0x1800631c0
movsxd rax, r9d
shl rax, 4
add rax, rdi
mov qword [rbx - 0x30], rax
add r9d, ecx
mov dword [rsp + 0x6c], r9d
movss xmm1, dword [r8 + rdx + 0x50]
ucomiss xmm1, xmm6
jp 0x180062e7a
jne 0x180062e7a
mov byte [rsp + 0x61], 0
jmp 0x180062ec8
mov byte [rsp + 0x61], 1
mov r8d, r15d
lea r9, [rbp + 0x90]
nop dword [rax]
mov eax, r8d
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm1
cvttss2si rcx, xmm0
mov edx, 0xff
movzx eax, cl
cmp ecx, edx
cmovbe edx, eax
mov byte [r9], dl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x100
jb 0x180062e90
mov r8, qword [rbp - 0x20]
mov eax, dword [r11 + 0x14]
mov dword [rbp - 0x58], eax
mov r13d, r15d
mov dword [rsp + 0x68], r15d
cmp dword [rbx], 0
jle 0x1800631bd
mov qword [rbp - 0x18], r15
xor ecx, ecx
mov edi, ecx
nop dword [rax + rax]
mov r14, qword [rbx + 8]
mov edx, dword [rdi + r14 + 0x18]
mov rcx, qword [rbx - 0x48]
call sym.Deceitik.dll_FT_Get_Char_Index
test eax, eax
je 0x180063187
mov r8d, dword [rbx - 0x3c]
mov edx, eax
mov rcx, qword [rbx - 0x48]
call sym.Deceitik.dll_FT_Load_Glyph
test eax, eax
jne 0x180063187
mov rax, qword [rbx - 0x48]
mov rsi, qword [rax + 0x78]
test byte [rbx - 0x40], 0x20
je 0x180062f37
mov rcx, rsi
call sym.Deceitik.dll_FT_GlyphSlot_Embolden
test byte [rbx - 0x40], 0x40
je 0x180062f45
mov rcx, rsi
call sym.Deceitik.dll_FT_GlyphSlot_Oblique
lea rax, [rsi + 0x30]
test rax, rax
je 0x180063187
mov rax, qword [rbx - 0x48]
mov rsi, qword [rax + 0x78]
mov edx, dword [rbx - 0x38]
mov rcx, rsi
call sym.Deceitik.dll_FT_Render_Glyph
test eax, eax
je 0x180062f70
xor ecx, ecx
mov r13d, ecx
jmp 0x180062fe4
mov rax, qword [rbx - 0x48]
mov r13, qword [rax + 0x78]
add r13, 0x68
mov eax, dword [r13 + 4]
mov dword [rdi + r14], eax
mov eax, dword [r13]
mov dword [rdi + r14 + 4], eax
mov rax, qword [rbx - 0x48]
mov rcx, qword [rax + 0x78]
mov eax, dword [rcx + 0x90]
mov dword [rdi + r14 + 8], eax
mov rax, qword [rbx - 0x48]
mov rcx, qword [rax + 0x78]
mov eax, dword [rcx + 0x94]
neg eax
mov dword [rdi + r14 + 0xc], eax
mov eax, dword [rsi + 0x58]
add eax, 0x3f
and eax, 0xffffffc0
cdq
and edx, 0x3f
add eax, edx
sar eax, 6
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rdi + r14 + 0x10], xmm0
cmp byte [r13 + 0x1a], 7
sete al
mov byte [rdi + r14 + 0x14], al
xor ecx, ecx
mov r15d, dword [rdi + r14 + 4]
imul r15d, dword [rdi + r14]
shl r15d, 2
mov esi, dword [rsp + 0x64]
lea eax, [r15 + rsi]
cmp eax, 0x40000
jle 0x1800630ee
mov esi, ecx
mov dword [rsp + 0x64], ecx
mov rax, qword [0x180218ec0]
test rax, rax
je 0x18006301d
inc dword [rax + 0x3b4]
mov ecx, 0x40000
call fcn.1800fc0b4
mov qword [rbp - 0x10], rax
mov r8d, dword [rsp + 0x70]
cmp r8d, r12d
jne 0x1800630d1
lea esi, [r8 + 1]
test r12d, r12d
je 0x18006304f
mov eax, r12d
cdq
sub eax, edx
sar eax, 1
add eax, r12d
jmp 0x180063054
mov eax, 8
cmp eax, esi
cmovg esi, eax
cmp esi, r12d
jle 0x1800630cd
mov rax, qword [0x180218ec0]
test rax, rax
je 0x180063070
inc dword [rax + 0x3b4]
movsxd rcx, esi
shl rcx, 3
call fcn.1800fc0b4
mov r12, rax
mov rax, qword [rbp - 0x68]
test rax, rax
je 0x1800630b7
movsxd r8, dword [rsp + 0x70]
shl r8, 3
mov rdx, rax
mov rcx, r12
call fcn.18011c600
mov rcx, qword [0x180218ec0]
test rcx, rcx
je 0x1800630ae
dec dword [rcx + 0x3b4]
mov rcx, qword [rbp - 0x68]
call fcn.1800f9bcc
mov rax, r12
mov qword [rbp - 0x68], rax
mov qword [rbp + 0x30], rax
mov r12d, esi
mov dword [rbp + 0x2c], esi
mov r8d, dword [rsp + 0x70]
mov esi, dword [rsp + 0x64]
movsxd rax, r8d
mov rcx, qword [rbp - 0x10]
mov rdx, qword [rbp - 0x68]
mov qword [rdx + rax*8], rcx
inc r8d
mov dword [rsp + 0x70], r8d
mov dword [rbp + 0x28], r8d
jmp 0x1800630f7
mov rdx, qword [rbp - 0x68]
mov r8d, dword [rsp + 0x70]
lea eax, [r8 - 1]
cdqe
movsxd rcx, esi
mov r8, qword [rdx + rax*8]
add r8, rcx
mov qword [rdi + r14 + 0x20], r8
add esi, r15d
mov dword [rsp + 0x64], esi
lea rax, [rbp + 0x90]
cmp byte [rsp + 0x61], 0
mov ecx, 0
cmove rax, rcx
mov qword [rsp + 0x20], rax
mov r9d, dword [rdi + r14]
mov rdx, r13
call fcn.180061a70
mov esi, dword [rbp - 0x58]
movzx ecx, si
add cx, word [rdi + r14]
mov rax, qword [rbx - 0x30]
mov r15, qword [rbp - 0x18]
mov word [rax + r15 + 4], cx
movzx ecx, si
add cx, word [rdi + r14 + 4]
mov rax, qword [rbx - 0x30]
mov word [rax + r15 + 6], cx
mov rax, qword [rbx - 0x30]
movzx ecx, word [rax + r15 + 6]
movzx eax, word [rax + r15 + 4]
imul ecx, eax
mov eax, dword [rbp - 0x70]
add eax, ecx
mov dword [rbp - 0x70], eax
mov r13d, dword [rsp + 0x68]
jmp 0x18006318a
mov eax, dword [rbp - 0x70]
inc r13d
mov dword [rsp + 0x68], r13d
add rdi, 0x28
add r15, 0x10
mov qword [rbp - 0x18], r15
cmp r13d, dword [rbx]
jl 0x180062ef0
mov r8, qword [rbp - 0x20]
mov r10, qword [rbp - 0x50]
mov r11, qword [rsp + 0x78]
mov rdi, qword [rbp - 0x78]
xor r15d, r15d
jmp 0x1800631c0
mov eax, dword [rbp - 0x70]
add rbx, 0x70
add r8, 0x88
mov qword [rbp - 0x20], r8
sub r10, 1
mov qword [rbp - 0x50], r10
mov r9d, dword [rsp + 0x6c]
jne 0x180062e40
mov r14d, dword [rsp + 0x74]
mov r13d, 8
movd xmm1, eax
cvtdq2ps xmm1, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x180063205
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x18006320d
movaps xmm0, xmm1
call fcn.18011ba88
cvttss2si eax, xmm0
inc eax
mov rsi, qword [rsp + 0x78]
mov dword [rsi + 0x34], r15d
mov ebx, dword [rsi + 0x10]
test ebx, ebx
jg 0x18006325e
movd xmm0, eax
cvtdq2ps xmm0, xmm0
comiss xmm0, dword [0x180152174]
jb 0x18006323a
mov ebx, 0x1000
jmp 0x18006325e
comiss xmm0, dword [0x180152170]
jb 0x18006324a
mov ebx, 0x800
jmp 0x18006325e
mov ebx, 0x200
mov eax, 0x400
comiss xmm0, dword [0x180152164]
cmovae ebx, eax
mov rax, rsi
mov dword [rax + 0x30], ebx
sub ebx, dword [rsi + 0x14]
mov dword [rbp + 0xc], r15d
mov qword [rbp + 0x10], r15
test ebx, ebx
jle 0x1800632a8
mov edi, ebx
cmp ebx, 8
cmovl edi, r13d
test edi, edi
jle 0x1800632a8
mov rax, qword [0x180218ec0]
test rax, rax
je 0x180063292
inc dword [rax + 0x3b4]
movsxd rcx, edi
shl rcx, 4
call fcn.1800fc0b4
mov r15, rax
mov qword [rbp + 0x10], rax
mov dword [rbp + 0xc], edi
mov dword [rbp + 8], ebx
mov dword [rsp + 0x20], ebx
mov r9, r15
mov edx, dword [rsi + 0x30]
lea rcx, [rbp + 0x40]
call fcn.180062440
lea rdx, [rbp + 0x40]
mov rcx, rsi
call fcn.18005ebb0
mov r13, qword [rbp - 0x80]
test r14d, r14d
jle 0x18006333b
lea rbx, [r13 + 0x48]
mov edi, r14d
xor r15d, r15d
nop dword [rax]
mov r8d, dword [rbx]
test r8d, r8d
je 0x18006332d
mov rdx, qword [rbx - 0x18]
lea rcx, [rbp + 0x40]
call fcn.180059460
mov r8d, r15d
cmp dword [rbx], r15d
jle 0x18006332d
mov rdx, r15
mov rax, qword [rbx - 0x18]
cmp dword [rdx + rax + 0xc], r15d
je 0x180063321
movzx ecx, word [rdx + rax + 0xa]
movzx eax, word [rdx + rax + 6]
add ecx, eax
cmp dword [rsi + 0x34], ecx
cmovge ecx, dword [rsi + 0x34]
mov dword [rsi + 0x34], ecx
inc r8d
add rdx, 0x10
cmp r8d, dword [rbx]
jl 0x180063300
add rbx, 0x70
sub rdi, 1
jne 0x1800632e0
mov r15, qword [rbp + 0x10]
mov eax, dword [rsi + 0x34]
test byte [rsi], 1
jne 0x180063368
lea ecx, [rax - 1]
mov eax, ecx
sar eax, 1
or ecx, eax
mov eax, ecx
sar eax, 2
or ecx, eax
mov eax, ecx
sar eax, 4
or ecx, eax
mov eax, ecx
sar eax, 8
or ecx, eax
mov eax, ecx
sar eax, 0x10
or eax, ecx
inc eax
mov dword [rsi + 0x34], eax
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movaps xmm1, xmm6
divss xmm1, xmm0
mov ecx, dword [rsi + 0x30]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
divss xmm6, xmm0
movss dword [rsi + 0x38], xmm6
movss dword [rsi + 0x3c], xmm1
imul ecx, eax
cmp byte [rsp + 0x60], 0
je 0x1800633ce
lea eax, [rcx*4]
movsxd rcx, eax
mov rax, qword [0x180218ec0]
test rax, rax
je 0x1800633b9
inc dword [rax + 0x3b4]
call fcn.1800fc0b4
mov qword [rsi + 0x28], rax
mov ecx, dword [rsi + 0x34]
imul ecx, dword [rsi + 0x30]
shl ecx, 2
jmp 0x1800633f3
movsxd rcx, ecx
mov rax, qword [0x180218ec0]
test rax, rax
je 0x1800633e3
inc dword [rax + 0x3b4]
call fcn.1800fc0b4
mov qword [rsi + 0x20], rax
mov ecx, dword [rsi + 0x34]
imul ecx, dword [rsi + 0x30]
movsxd r8, ecx
xor edx, edx
mov rcx, rax
call fcn.18011cca0
xor dl, dl
mov byte [rsp + 0x60], dl
test r14d, r14d
jle 0x180063771
xor r8d, r8d
mov r15d, r8d
mov qword [rbp - 0x18], r8
add r13, 8
mov qword [rbp - 0x50], r13
mov r12d, r14d
mov qword [rbp - 0x20], r12
movss xmm12, dword [0x180151fa8]
cmp dword [r13 + 0x40], 0
je 0x18006374c
mov r14, qword [rsi + 0x70]
add r14, r15
mov qword [rbp - 0x10], r14
mov rsi, qword [r14 + 0x80]
mov qword [rbp - 0x70], rsi
movss xmm6, dword [r13 - 4]
movss xmm7, dword [r13]
cmp byte [r14 + 0x48], 0
jne 0x180063498
mov rcx, rsi
call fcn.18005f760
mov eax, dword [r14 + 0x14]
mov dword [rsi + 0x14], eax
mov qword [rsi + 0x48], r14
xor r8d, r8d
mov word [rsi + 0x50], r8w
mov rax, qword [rsp + 0x78]
mov qword [rsi + 0x40], rax
movss dword [rsi + 0x5c], xmm6
movss dword [rsi + 0x60], xmm7
movzx edx, byte [rsp + 0x60]
inc word [rsi + 0x50]
movss xmm11, dword [r14 + 0x2c]
movss xmm0, dword [rsi + 0x5c]
addss xmm0, xmm12
cvttss2si eax, xmm0
movd xmm10, eax
cvtdq2ps xmm10, xmm10
addss xmm10, dword [r14 + 0x30]
mov rsi, qword [rsp + 0x78]
mov ecx, dword [rsi + 0x14]
mov dword [rsp + 0x6c], ecx
mov dword [rsp + 0x68], r8d
cmp dword [r13 + 0x40], 0
jle 0x180063748
mov r12, r8
mov rbx, r8
mov rdi, qword [r13 + 0x60]
mov rax, qword [r13 + 0x28]
cmp word [r12 + rax + 4], 0
jne 0x1800634ff
cmp word [r12 + rax + 6], 0
je 0x180063721
movzx r9d, word [r12 + rax + 8]
add r9d, ecx
mov dword [rbp - 0x58], r9d
movzx eax, word [r12 + rax + 0xa]
add eax, ecx
mov dword [rsp + 0x64], eax
movsxd rcx, dword [rbx + rdi]
mov r15, rcx
movsxd r14, dword [rsi + 0x30]
mov r11, qword [rbx + rdi + 0x20]
mov r8, qword [rsi + 0x20]
movsxd rdx, eax
imul rdx, r14
movsxd rax, r9d
add rdx, rax
test r8, r8
je 0x1800635a1
lea r10, [rdx + r8]
xor r8d, r8d
mov esi, r8d
mov edx, dword [rbx + rdi + 4]
test edx, edx
jle 0x18006361b
mov eax, ecx
add r11, 3
nop word [rax + rax]
mov r9d, r8d
mov ecx, eax
test eax, eax
jle 0x18006358c
mov rdx, r10
mov r8, r11
nop
movzx eax, byte [r8]
mov byte [rdx], al
inc r9d
lea r8, [r8 + 4]
lea rdx, [rdx + 1]
mov ecx, dword [rbx + rdi]
cmp r9d, ecx
jl 0x180063570
xor r8d, r8d
inc esi
add r10, r14
mov edx, dword [rbx + rdi + 4]
mov eax, ecx
lea r11, [r11 + r15*4]
cmp esi, edx
jl 0x180063560
jmp 0x18006361b
mov rax, qword [rsi + 0x28]
lea r10, [rax + rdx*4]
xor eax, eax
mov esi, eax
mov edx, dword [rbx + rdi + 4]
test edx, edx
jle 0x18006361b
mov eax, ecx
lea r14, [r14*4]
lea r15, [rcx*4]
xor r13d, r13d
nop word [rax + rax]
mov r8d, r13d
mov ecx, eax
test eax, eax
jle 0x180063605
mov rdx, r10
mov r9, r11
sub r9, r10
nop dword [rax]
nop word [rax + rax]
mov eax, dword [rdx + r9]
mov dword [rdx], eax
inc r8d
lea rdx, [rdx + 4]
mov ecx, dword [rbx + rdi]
cmp r8d, ecx
jl 0x1800635f0
inc esi
add r10, r14
add r11, r15
mov edx, dword [rbx + rdi + 4]
mov eax, ecx
cmp esi, edx
jl 0x1800635d0
mov r13, qword [rbp - 0x50]
movd xmm3, dword [rbx + rdi + 8]
cvtdq2ps xmm3, xmm3
addss xmm3, xmm11
movd xmm9, dword [rbx + rdi + 0xc]
cvtdq2ps xmm9, xmm9
addss xmm9, xmm10
movd xmm8, ecx
cvtdq2ps xmm8, xmm8
addss xmm8, xmm3
movd xmm7, edx
cvtdq2ps xmm7, xmm7
addss xmm7, xmm9
mov r8, qword [rsp + 0x78]
movd xmm0, dword [r8 + 0x30]
cvtdq2ps xmm0, xmm0
mov eax, dword [rbp - 0x58]
movd xmm6, eax
cvtdq2ps xmm6, xmm6
divss xmm6, xmm0
movd xmm2, dword [r8 + 0x34]
cvtdq2ps xmm2, xmm2
mov r8d, dword [rsp + 0x64]
movd xmm5, r8d
cvtdq2ps xmm5, xmm5
divss xmm5, xmm2
add eax, ecx
movd xmm4, eax
cvtdq2ps xmm4, xmm4
divss xmm4, xmm0
lea eax, [rdx + r8]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
divss xmm1, xmm2
movss xmm0, dword [rbx + rdi + 0x10]
movss dword [rsp + 0x58], xmm0
movss dword [rsp + 0x50], xmm1
movss dword [rsp + 0x48], xmm4
movss dword [rsp + 0x40], xmm5
movss dword [rsp + 0x38], xmm6
movss dword [rsp + 0x30], xmm7
movss dword [rsp + 0x28], xmm8
movss dword [rsp + 0x20], xmm9
movzx r8d, word [rbx + rdi + 0x18]
mov rdx, qword [rbp - 0x10]
mov rsi, qword [rbp - 0x70]
mov rcx, rsi
call fcn.18005fc00
movsxd rax, dword [rsi + 0x28]
lea rcx, [rax + rax*4]
mov rax, qword [rsi + 0x30]
mov rsi, qword [rsp + 0x78]
cmp byte [rbx + rdi + 0x14], 0
je 0x180063718
mov dl, 1
mov byte [rsp + 0x60], dl
or dword [rax + rcx*8 - 0x28], 1
jmp 0x18006371d
movzx edx, byte [rsp + 0x60]
mov ecx, dword [rsp + 0x6c]
mov eax, dword [rsp + 0x68]
inc eax
mov dword [rsp + 0x68], eax
add rbx, 0x28
add r12, 0x10
cmp eax, dword [r13 + 0x40]
jl 0x1800634e1
mov r15, qword [rbp - 0x18]
mov r12, qword [rbp - 0x20]
xor r8d, r8d
mov qword [r13 + 0x28], r8
add r13, 0x70
mov qword [rbp - 0x50], r13
add r15, 0x88
mov qword [rbp - 0x18], r15
sub r12, 1
mov qword [rbp - 0x20], r12
jne 0x180063431
mov r15, qword [rbp + 0x10]
mov byte [rsi + 0x19], dl
mov ecx, dword [rsp + 0x70]
mov r14, qword [rbp - 0x68]
test ecx, ecx
jle 0x1800637ae
mov rbx, r14
mov edi, ecx
mov rcx, qword [rbx]
test rcx, rcx
je 0x18006379f
mov rax, qword [0x180218ec0]
test rax, rax
je 0x18006379f
dec dword [rax + 0x3b4]
call fcn.1800f9bcc
add rbx, 8
sub rdi, 1
jne 0x180063785
mov eax, dword [rsp + 0x74]
test eax, eax
jle 0x180063823
mov rbx, qword [rbp - 0x80]
add rbx, 0x18
mov edi, eax
xor r14d, r14d
mov rcx, qword [rbx + 0x50]
test rcx, rcx
je 0x1800637e4
mov rax, qword [0x180218ec0]
test rax, rax
je 0x1800637de
dec dword [rax + 0x3b4]
call fcn.1800f9bcc
nop
mov rcx, qword [rbx + 0x40]
test rcx, rcx
je 0x180063805
mov rax, qword [0x180218ec0]
test rax, rax
je 0x1800637ff
dec dword [rax + 0x3b4]
call fcn.1800f9bcc
nop
mov rcx, qword [rbx]
test rcx, rcx
je 0x180063815
call sym.Deceitik.dll_FT_Done_Face
mov qword [rbx], r14
add rbx, 0x70
sub rdi, 1
jne 0x1800637c3
mov r14, qword [rbp - 0x68]
mov rcx, rsi
call fcn.18005f340
mov bl, 1
test r15, r15
je 0x18006384d
mov rax, qword [0x180218ec0]
test rax, rax
je 0x180063844
dec dword [rax + 0x3b4]
mov rcx, r15
call fcn.1800f9bcc
nop
test r14, r14
je 0x18006386d
mov rax, qword [0x180218ec0]
test rax, rax
je 0x180063864
dec dword [rax + 0x3b4]
mov rcx, r14
call fcn.1800f9bcc
nop
mov rcx, qword [rbp - 0x78]
test rcx, rcx
je 0x18006388e
mov rax, qword [0x180218ec0]
test rax, rax
je 0x180063888
dec dword [rax + 0x3b4]
call fcn.1800f9bcc
nop
mov rcx, qword [rbp - 0x60]
test rcx, rcx
je 0x1800638af
mov rax, qword [0x180218ec0]
test rax, rax
je 0x1800638a9
dec dword [rax + 0x3b4]
call fcn.1800f9bcc
nop
mov rax, qword [rbp - 0x80]
test rax, rax
je 0x1800638d3
mov rcx, qword [0x180218ec0]
test rcx, rcx
je 0x1800638ca
dec dword [rcx + 0x3b4]
mov rcx, rax
call fcn.1800f9bcc
nop
movzx eax, bl
mov rcx, qword [rbp + 0x190]
xor rcx, rsp
call fcn.1800e9960
lea r11, [rsp + 0x310]
mov rbx, qword [r11 + 0x50]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret