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

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x1c8]
sub rsp, 0x290
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
movaps xmmword [rax - 0xb8], xmm13
mov rax, qword [0x140064040]
xor rax, rsp
mov qword [rbp + 0xe0], rax
mov r15, qword [0x140064838]
mov r14, rcx
mov dword [rbp - 0x50], r9d
mov qword [rsp + 0x78], r8
mov qword [rbp - 0x18], rcx
mov rax, qword [r15 + 0x4008]
mov qword [rbp - 0x80], r15
mov byte [rax + 0xb8], 1
mov r13, qword [r15 + 0x4008]
cmp byte [r13 + 0xbb], 0
jne 0x14003c113
mov esi, dword [rbp + 0x1f8]
mov eax, esi
shr eax, 0xe
mov ebx, esi
and al, 1
shr ebx, 0x1a
mov dword [rsp + 0x68], eax
and bl, 1
mov eax, esi
mov dword [rsp + 0x6c], ebx
shr eax, 0xf
and al, 1
mov dword [rbp - 0x4c], eax
mov eax, esi
shr eax, 0x10
not al
and al, 1
mov dword [rsp + 0x74], eax
mov eax, esi
shr eax, 0x12
and al, 1
mov dword [rbp - 0x70], eax
test bl, bl
je 0x14003bd58
call fcn.140013b60
movsxd rax, dword [r13 + 0xf0]
xor edx, edx
mov r8, qword [r13 + 0xf8]
mov rcx, r14
mov r8d, dword [r8 + rax*4 - 4]
call fcn.140003890
mov rcx, qword [r13]
mov r12d, eax
mov dword [rbp - 0x74], eax
cmp dword [rcx + 0x4050], eax
jne 0x14003bd96
mov r8, r14
mov edx, 0xb
mov ecx, eax
call fcn.14001be00
mov r8, qword [0x140064838]
mov rcx, r14
cmp r14, 0xffffffffffffffff
jae 0x14003bdc3
movzx edx, byte [rcx]
test dl, dl
je 0x14003bdc3
lea rax, [rcx + 1]
cmp dl, 0x23
jne 0x14003bdba
cmp byte [rax], dl
je 0x14003bdc3
mov rcx, rax
cmp rax, 0xffffffffffffffff
jb 0x14003bda6
movss xmm1, dword [0x14005c308]
xorps xmm11, xmm11
movss xmm0, dword [r8 + 0x3d40]
movss xmm9, dword [0x14005c2dc]
movss dword [rbp - 0x2c], xmm1
cmp r14, rcx
jne 0x14003bdf0
xorps xmm7, xmm7
jmp 0x14003be34
mov qword [rsp + 0x30], rcx
lea rdx, [rbp - 0x60]
mov rcx, qword [r8 + 0x3d38]
movaps xmm3, xmm9
mov qword [rsp + 0x28], r14
movaps xmm2, xmm0
movss dword [rsp + 0x20], xmm1
call fcn.14002cf60
movss xmm0, dword [rbp - 0x60]
addss xmm0, dword [0x14005c17c]
cvttss2si eax, xmm0
movss xmm0, dword [rbp - 0x5c]
movd xmm7, eax
cvtdq2ps xmm7, xmm7
movss dword [rbp - 0x20], xmm7
test bl, bl
je 0x14003be4e
movss xmm0, dword [r15 + 0x3d40]
mulss xmm0, dword [0x14005c234]
movss xmm6, dword [r15 + 0x3930]
movaps xmm3, xmm6
addss xmm3, xmm6
addss xmm3, xmm0
call fcn.1400139d0
mov rdx, qword [rbp + 0x1f0]
lea rcx, [rbp - 0x60]
movaps xmm2, xmm0
mov rdx, qword [rdx]
call fcn.140013a50
comiss xmm7, xmm11
jbe 0x14003be91
movaps xmm1, xmm7
addss xmm1, dword [r15 + 0x3944]
jmp 0x14003be94
xorps xmm1, xmm1
movss xmm8, dword [r13 + 0x100]
lea rcx, [rbp - 0x60]
movss xmm12, dword [r13 + 0x104]
movaps xmm13, xmm8
movss xmm7, dword [rbp - 0x5c]
movaps xmm0, xmm12
movss xmm10, dword [rbp - 0x60]
addss xmm0, xmm7
addss xmm1, xmm10
movss dword [rbp - 0x30], xmm8
movaps xmm2, xmm12
movss dword [rbp - 0x40], xmm12
addss xmm2, xmm7
movss dword [rbp - 0x24], xmm7
addss xmm13, xmm10
movss dword [rbp - 0x10], xmm8
movss dword [rbp - 4], xmm0
mov rdi, r13
addss xmm1, xmm8
movss dword [rbp - 0xc], xmm12
xorps xmm0, xmm0
movss dword [rbp + 0x88], xmm8
movss dword [rbp + 0x94], xmm2
subss xmm2, xmm12
movss dword [rbp - 0x28], xmm13
movss dword [rbp - 8], xmm13
movss dword [rbp + 0x90], xmm1
subss xmm1, xmm8
movss dword [rbp + 0x8c], xmm12
movss dword [rbp - 0x5c], xmm2
mov qword [rbp - 0x38], r13
movups xmmword [rbp + 0xa0], xmm0
movss dword [rbp - 0x60], xmm1
movaps xmm1, xmm6
call fcn.140013550
test bl, bl
je 0x14003c1ca
mov r9d, 0x400
lea r8, [rbp - 0x10]
mov edx, r12d
lea rcx, [rbp + 0x88]
call fcn.1400136c0
test al, al
je 0x14003c10e
movups xmm0, xmmword [r15 + 0x4978]
mov esi, dword [r15 + 0x4980]
movss dword [r13 + 0x100], xmm8
movss dword [r13 + 0x104], xmm12
mov edi, dword [r15 + 0x4ae8]
movups xmmword [rbp + 0xa0], xmm0
cmp dword [r15 + 0x4068], r12d
jne 0x14003bfc1
mov dword [r15 + 0x4ae8], 0
mov rbx, qword [0x140064838]
lea rdx, [rbp + 0x88]
mov dword [rbp + 0x88], 3
movups xmm0, xmmword [rbx + 0x3a04]
lea rcx, [rbx + 0x4a30]
movups xmmword [rbp + 0x8c], xmm0
call fcn.14001c930
movups xmm0, xmmword [r15 + 0x3a44]
mov ecx, 7
movups xmmword [rbx + 0x3a04], xmm0
movss xmm1, dword [r15 + 0x3934]
call fcn.1400043e0
movss xmm1, dword [r15 + 0x3938]
mov ecx, 8
call fcn.1400043e0
mov rbx, qword [0x140064838]
lea rdx, [rbp - 0x60]
mov dword [rbp - 0x60], 2
movss xmm1, dword [rbx + 0x38f8]
lea rcx, [rbx + 0x4a40]
movss xmm0, dword [rbx + 0x38fc]
movss dword [rbp - 0x5c], xmm1
movss dword [rbp - 0x58], xmm0
call fcn.14001c7f0
movss xmm6, dword [rbp - 8]
lea r8, [rbp - 0x60]
movss xmm8, dword [rbp - 0x10]
movaps xmm0, xmm6
movss xmm1, dword [rbp - 4]
subss xmm0, xmm8
movss xmm12, dword [rbp - 0xc]
xor eax, eax
subss xmm1, xmm12
movss dword [rbp - 0x28], xmm6
mov edx, r12d
movss dword [rbp - 0x30], xmm8
mov rcx, r14
movss dword [rbp - 0x40], xmm12
movss dword [rbp - 0x60], xmm0
mov qword [rbx + 0x38f8], rax
movss dword [rbp - 0x5c], xmm1
call fcn.14000afb0
mov ecx, 3
mov dword [r15 + 0x4ae8], edi
movzx ebx, al
call fcn.140004460
mov r8, qword [0x140064838]
movsxd rcx, dword [r8 + 0x4a30]
cmp ecx, 1
jl 0x14003c105
lea rdx, [rcx + rcx*4]
mov rcx, qword [r8 + 0x4a38]
movsxd rax, dword [rcx + rdx*4 - 0x14]
movups xmm0, xmmword [rcx + rdx*4 - 0x10]
add rax, rax
movups xmmword [r8 + rax*8 + 0x39d4], xmm0
dec dword [r8 + 0x4a30]
test bl, bl
jne 0x14003c167
call fcn.14000b200
call fcn.140013ca0
xor al, al
mov rcx, qword [rbp + 0xe0]
xor rcx, rsp
call fcn.140052a00
lea r11, [rsp + 0x290]
mov rbx, qword [r11 + 0x48]
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]
movaps xmm13, xmmword [r11 - 0x80]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rdi, qword [r15 + 0x4008]
mov ebx, dword [rsp + 0x6c]
mov qword [rbp - 0x38], rdi
movsx ecx, word [rdi + 0x15e]
movss xmm0, dword [rdi + 0x100]
mov eax, dword [rdi + 0x158]
bts ecx, eax
subss xmm10, dword [rdi + 0xac]
mov word [rdi + 0x15e], cx
addss xmm0, dword [r15 + 0x392c]
movss dword [rdi + 0x100], xmm0
movss xmm1, dword [r15 + 0x3930]
addss xmm1, dword [rdi + 0x104]
movss dword [rdi + 0x104], xmm1
jmp 0x14003c21a
bt esi, 0x1c
jb 0x14003c213
mov r9d, 0x400
lea r8, [rbp - 0x10]
mov edx, r12d
lea rcx, [rbp + 0x88]
call fcn.1400136c0
test al, al
je 0x14003c113
movss xmm0, dword [rbp - 8]
movss xmm12, dword [rbp - 0xc]
movss xmm8, dword [rbp - 0x10]
movss dword [rbp - 0x28], xmm0
movss dword [rbp - 0x40], xmm12
movss dword [rbp - 0x30], xmm8
mov esi, dword [r15 + 0x4980]
mov r8d, dword [r15 + 0x497c]
lea rcx, [rbp - 0x10]
mov edx, r12d
call fcn.140007b90
mov byte [rsp + 0x70], al
movzx ecx, al
test al, al
je 0x14003c243
mov dword [r15 + 0x4e78], 1
mov r14, qword [0x140064838]
test r12d, r12d
je 0x14003c261
cmp dword [r14 + 0x4e90], r12d
jne 0x14003c261
add r14, 0x4e88
jmp 0x14003c264
xor r14d, r14d
mov eax, dword [r15 + 0x4068]
shr esi, 8
and sil, 1
mov qword [rbp - 0x60], r14
mov dword [rsp + 0x60], esi
cmp eax, r12d
je 0x14003c2a3
cmp dword [r15 + 0x4ae8], r12d
jne 0x14003c2a3
test byte [r15 + 0x4af4], 1
jne 0x14003c29c
cmp dword [r15 + 0x4b0c], 2
jne 0x14003c2a3
mov byte [rsp + 0x51], 1
jmp 0x14003c2a8
mov byte [rsp + 0x51], 0
test cl, cl
je 0x14003c2bb
cmp byte [r15 + 0x3868], 0
je 0x14003c2bb
mov r12b, 1
jmp 0x14003c2be
xor r12b, r12b
mov byte [rsp + 0x52], r12b
test bl, bl
je 0x14003c323
test r14, r14
je 0x14003c323
test eax, eax
jne 0x14003c323
movsxd rax, dword [rdi + 0xf0]
lea rcx, str.SCROLLY
mov r8, qword [rdi + 0xf8]
xor edx, edx
mov r8d, dword [r8 + rax*4 - 4]
call fcn.140003890
mov rcx, qword [rdi]
mov ebx, eax
cmp dword [rcx + 0x4050], eax
jne 0x14003c311
lea r8, str.SCROLLY
mov edx, 0xb
mov ecx, eax
call fcn.14001be00
cmp dword [r15 + 0x4098], ebx
jne 0x14003c31f
mov dil, 1
jmp 0x14003c32f
mov ebx, dword [rsp + 0x6c]
xor dil, dil
test bl, bl
je 0x14003c3a4
test r14, r14
je 0x14003c3a4
mov rcx, qword [rbp - 0x38]
xor edx, edx
movsxd rax, dword [rcx + 0xf0]
mov r8, qword [rcx + 0xf8]
lea rcx, str.SCROLLY
mov r8d, dword [r8 + rax*4 - 4]
call fcn.140003890
mov rcx, qword [rbp - 0x38]
mov ebx, eax
mov rcx, qword [rcx]
cmp dword [rcx + 0x4050], eax
jne 0x14003c378
lea r8, str.SCROLLY
mov edx, 0xb
mov ecx, eax
call fcn.14001be00
cmp dword [r15 + 0x4068], ebx
mov ebx, dword [rsp + 0x6c]
jne 0x14003c3a4
mov rax, qword [rbp - 0x38]
mov cl, 1
mov byte [rsp + 0x53], cl
mov byte [rsp + 0x5c], 0
mov byte [rsp + 0x58], 0
movss xmm9, dword [rax + 0x88]
jmp 0x14003c3cb
xor cl, cl
mov byte [rsp + 0x5c], 0
mov byte [rsp + 0x58], 0
mov byte [rsp + 0x53], cl
test bl, bl
je 0x14003c3c7
mov rax, qword [rbp - 0x38]
movss xmm9, dword [rax + 0x88]
jmp 0x14003c3cb
mov byte [rsp + 0x53], cl
test r14, r14
je 0x14003c3e0
movzx eax, bl
xor al, 1
cmp byte [r14 + 0x6b], al
je 0x14003c3e0
mov r15b, 1
jmp 0x14003c3e3
xor r15b, r15b
test r12b, r12b
jne 0x14003c40c
test dil, dil
jne 0x14003c40c
cmp byte [rsp + 0x51], dil
jne 0x14003c40c
test sil, sil
jne 0x14003c40c
mov byte [rsp + 0x54], sil
test cl, cl
jne 0x14003c411
mov rax, qword [rbp - 0x80]
mov byte [rsp + 0x64], cl
jmp 0x14003c425
mov byte [rsp + 0x54], 1
mov rax, qword [rbp - 0x80]
mov edx, dword [rbp - 0x74]
mov byte [rsp + 0x64], 1
cmp dword [rax + 0x4068], edx
jne 0x14003c42e
test r15b, r15b
je 0x14003c6a2
lea r14, [rax + 0x4e88]
mov dword [r14 + 0xe80], 0xbe99999a
mov ecx, dword [r14 + 8]
mov qword [rbp - 0x60], r14
call fcn.14003bb90
mov rdx, qword [rsp + 0x78]
mov rbx, 0xffffffffffffffff
nop dword [rax]
inc rbx
cmp byte [rdx + rbx], 0
jne 0x14003c460
mov ecx, dword [r14 + 0x3c]
lea edi, [rbx + 1]
cmp edi, ecx
jle 0x14003c498
test ecx, ecx
je 0x14003c483
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x14003c488
mov eax, 8
cmp eax, edi
lea rcx, [r14 + 0x38]
mov edx, edi
cmovg edx, eax
call fcn.14001cef0
mov dword [r14 + 0x38], edi
mov rcx, qword [r14 + 0x40]
movsxd r8, edi
mov rdi, qword [rsp + 0x78]
mov rdx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov esi, dword [rbp - 0x74]
cmp dword [r14 + 8], esi
jne 0x14003c4e1
test r15b, r15b
jne 0x14003c4e1
mov r12b, 1
cmp dword [r14 + 0x10], ebx
jne 0x14003c4e1
cmp byte [r14 + 0x48], r15b
je 0x14003c4e4
mov rcx, qword [r14 + 0x30]
mov rdx, rdi
movsxd r8, ebx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
test eax, eax
je 0x14003c4e4
xor r12b, r12b
mov dword [r14 + 8], esi
movsxd rsi, dword [rbp - 0x50]
mov ecx, dword [r14 + 0x1c]
lea ebx, [rsi + 1]
cmp ebx, ecx
jle 0x14003c51b
test ecx, ecx
je 0x14003c506
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x14003c50b
mov eax, 8
cmp eax, ebx
lea rcx, [r14 + 0x18]
mov edx, ebx
cmovg edx, eax
call fcn.14001cfd0
mov dword [r14 + 0x18], ebx
mov ecx, dword [r14 + 0x2c]
test ecx, ecx
jns 0x14003c540
mov eax, ecx
cdq
sub eax, edx
xor edx, edx
sar eax, 1
add eax, ecx
lea rcx, [r14 + 0x28]
test eax, eax
cmovg edx, eax
call fcn.14001cef0
mov rcx, qword [rsp + 0x78]
xor edx, edx
mov dword [r14 + 0x28], edx
dec rsi
mov r15, qword [r14 + 0x20]
mov rdi, rcx
mov byte [r14 + 0x48], dl
mov rbx, r15
lea rsi, [r15 + rsi*2]
cmp r15, rsi
jae 0x14003c596
cmp byte [rdi], 0
je 0x14003c58f
xor r8d, r8d
lea rcx, [rbp - 0x68]
mov rdx, rdi
call fcn.140003bd0
movsxd rcx, eax
movzx eax, word [rbp - 0x68]
add rdi, rcx
mov word [rbx], ax
add rbx, 2
cmp rbx, rsi
jb 0x14003c565
mov rcx, qword [rsp + 0x78]
xor edx, edx
mov word [rbx], dx
sub edi, ecx
sub rbx, r15
mov dword [r14 + 0x10], edi
sar rbx, 1
mov dword [r14 + 0xc], ebx
test r12b, r12b
je 0x14003c5df
cmp dword [r14 + 0x54], ebx
mov ecx, ebx
cmovl ecx, dword [r14 + 0x54]
cmp dword [r14 + 0x58], ebx
mov dword [r14 + 0x54], ecx
mov ecx, ebx
cmovl ecx, dword [r14 + 0x58]
cmp dword [r14 + 0x5c], ebx
mov dword [r14 + 0x58], ecx
cmovl ebx, dword [r14 + 0x5c]
mov dword [r14 + 0x5c], ebx
mov ebx, dword [rsp + 0x6c]
jmp 0x14003c632
mov ebx, dword [rsp + 0x6c]
movzx eax, bl
xor al, 1
mov qword [r14 + 0x50], 0
mov byte [r14 + 0x6b], al
mov dword [r14 + 0xe72], 0x630000
mov dword [r14 + 0xe78], edx
mov dword [r14 + 0xe7c], 0x3e7
mov qword [r14 + 0x58], 0
mov word [r14 + 0x69], 1
mov dword [r14 + 0x70], edx
mov byte [r14 + 0x68], 0
mov byte [r14 + 0x60], 0
mov dword [r14 + 0x64], edx
test bl, bl
jne 0x14003c68b
mov eax, dword [rsp + 0x58]
mov ecx, 1
mov r8d, dword [rbp + 0x1f8]
test r8b, 0x10
movzx eax, al
cmovne eax, ecx
mov dword [rsp + 0x58], eax
mov rax, qword [rbp - 0x80]
cmp byte [rsp + 0x51], bl
je 0x14003c670
test r12b, r12b
je 0x14003c66c
test byte [rax + 0x4af4], 4
jne 0x14003c670
mov byte [rsp + 0x58], cl
cmp byte [rsp + 0x60], 0
jne 0x14003c687
cmp byte [rsp + 0x52], 0
je 0x14003c68b
cmp byte [rax + 0xe64], 0
je 0x14003c68b
mov byte [rsp + 0x58], cl
test dword [rbp + 0x1f8], 0x2000
movzx r12d, byte [rsp + 0x52]
je 0x14003c6a2
mov byte [r14 + 0x60], 1
mov rdi, qword [rbp - 0x80]
mov esi, dword [rbp - 0x74]
movzx ebx, byte [rsp + 0x54]
movzx r15d, byte [rdi + 0x59]
mov byte [rbp - 0x78], r15b
cmp dword [rdi + 0x4068], esi
je 0x14003c6ed
test bl, bl
je 0x14003c6e1
mov rdx, r13
mov ecx, esi
call fcn.1400077b0
mov rdx, r13
mov ecx, esi
call fcn.140015980
xor edx, edx
mov rcx, r13
call fcn.1400102f0
cmp dword [rdi + 0x4068], esi
jne 0x14003c822
test r12b, r12b
je 0x14003c70e
mov rax, qword [0x140064838]
mov dword [rax + 0x4768], esi
mov dword [rax + 0x4764], esi
mov word [rax + 0x476c], 0
mov eax, dword [rdi + 0x4940]
mov ecx, dword [rsp + 0x6c]
or eax, 3
mov edx, dword [rbp + 0x1f8]
mov dword [rdi + 0x4940], eax
test cl, cl
jne 0x14003c72f
test dl, dl
jns 0x14003c738
or eax, 0xc
mov dword [rdi + 0x4940], eax
mov rax, qword [0x140064838]
mov dword [rax + 0x4108], esi
mov dword [rax + 0x4104], esi
mov word [rax + 0x410c], 0
mov dword [rax + 0x4114], esi
mov dword [rax + 0x4110], esi
mov word [rax + 0x4118], 0
test cl, cl
je 0x14003c797
mov dword [rax + 0x40f0], esi
mov dword [rax + 0x40ec], esi
mov word [rax + 0x40f4], 0
mov dword [rax + 0x40fc], esi
mov dword [rax + 0x40f8], esi
mov word [rax + 0x4100], 0
test r15b, r15b
je 0x14003c7b1
mov dword [rax + 0x47d4], esi
mov dword [rax + 0x47d0], esi
mov word [rax + 0x47d8], 0
test edx, 0x440
je 0x14003c7e7
mov ecx, 0x200
call fcn.1400111e0
mov rdx, qword [0x140064838]
lea ecx, [rsi - 1]
cmp ecx, 0xfffffffd
mov ecx, esi
jbe 0x14003c7da
mov ecx, dword [rdx + 0x494c]
cmp byte [rax + 4], 0
jbe 0x14003c7e7
mov dword [rax + 0xc], ecx
mov byte [rax + 4], 0
cmp dword [rdi + 0x4068], esi
jne 0x14003c822
test r14, r14
jne 0x14003c7fd
xor edx, edx
xor ecx, ecx
call fcn.1400077b0
cmp dword [rdi + 0x4068], esi
jne 0x14003c822
cmp byte [rdi + 0x3868], 0
je 0x14003c82e
cmp byte [rsp + 0x64], 0
jne 0x14003c82e
test bl, bl
jne 0x14003c82e
mov byte [rsp + 0x5c], 1
mov cl, 1
jmp 0x14003c834
test r14, r14
je 0x14003c832
cmp byte [rsp + 0x53], 0
je 0x14003c832
mov cl, 1
jmp 0x14003c834
xor cl, cl
mov r13d, dword [rsp + 0x58]
mov byte [rsp + 0x50], cl
test r14, r14
je 0x14003c859
mov eax, dword [r14 + 0x5c]
cmp dword [r14 + 0x58], eax
jne 0x14003c851
test r13b, r13b
je 0x14003c859
test cl, cl
je 0x14003c859
mov dl, 1
jmp 0x14003c85b
xor dl, dl
mov eax, dword [rsp + 0x68]
mov dword [rsp + 0x60], edx
movzx r12d, dl
mov byte [rsp + 0x52], 0
mov byte [rsp + 0x64], 0
test al, al
je 0x14003c96b
test r14, r14
je 0x14003c96b
test cl, cl
jne 0x14003c88e
test dl, dl
je 0x14003c973
mov esi, dword [rbp - 0x50]
mov ecx, dword [r14 + 0x1c]
inc esi
cmp esi, ecx
jle 0x14003c8bf
test ecx, ecx
je 0x14003c8aa
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x14003c8af
mov eax, 8
cmp eax, esi
lea rcx, [r14 + 0x18]
mov edx, esi
cmovg edx, eax
call fcn.14001cfd0
mov rcx, qword [rsp + 0x78]
mov dword [r14 + 0x18], esi
mov rdi, rcx
mov r15, qword [r14 + 0x20]
movsxd rsi, esi
mov rbx, r15
dec rsi
lea rsi, [r15 + rsi*2]
cmp r15, rsi
jae 0x14003c910
cmp byte [rdi], 0
je 0x14003c90b
xor r8d, r8d
lea rcx, [rbp - 0x68]
mov rdx, rdi
call fcn.140003bd0
movsxd rcx, eax
movzx eax, word [rbp - 0x68]
add rdi, rcx
mov word [rbx], ax
add rbx, 2
cmp rbx, rsi
jb 0x14003c8e1
mov rcx, qword [rsp + 0x78]
mov esi, dword [rbp - 0x74]
sub edi, ecx
mov eax, dword [rsp + 0x68]
xor edx, edx
mov word [rbx], dx
sub rbx, r15
movzx r15d, byte [rbp - 0x78]
sar rbx, 1
cmp dword [r14 + 0x54], ebx
mov ecx, ebx
mov dword [r14 + 0xc], ebx
cmovl ecx, dword [r14 + 0x54]
cmp dword [r14 + 0x58], ebx
mov dword [r14 + 0x54], ecx
mov ecx, ebx
cmovl ecx, dword [r14 + 0x58]
cmp dword [r14 + 0x5c], ebx
mov dword [r14 + 0x58], ecx
cmovl ebx, dword [r14 + 0x5c]
cmp ecx, ebx
mov dword [r14 + 0x10], edi
movzx ecx, byte [rsp + 0x50]
cmovne edx, r12d
mov dword [r14 + 0x5c], ebx
mov dword [rsp + 0x60], edx
test cl, cl
jne 0x14003c983
test dl, dl
jne 0x14003c983
mov r12, qword [rbp - 0x80]
cmp dword [r12 + 0x4068], esi
jne 0x14003c99a
jmp 0x14003c987
mov r12, qword [rbp - 0x80]
test al, al
jne 0x14003c99a
test r14, r14
je 0x14003c99a
mov byte [rbp - 0x76], 1
cmp byte [r14 + 0x48], al
jne 0x14003c99e
mov byte [rbp - 0x76], 0
mov ebx, dword [rbp - 0x4c]
test bl, bl
je 0x14003ca39
mov rdx, qword [r12 + 0x3d38]
cmp dword [rdx + 0x18], 0x2a
ja 0x14003c9bd
mov r8, qword [rdx + 0x38]
jmp 0x14003c9e1
mov rax, qword [rdx + 0x20]
movzx ecx, word [rax + 0x54]
mov eax, 0xffff
cmp cx, ax
jne 0x14003c9d5
mov r8, qword [rdx + 0x38]
jmp 0x14003c9e1
mov rax, qword [rdx + 0x30]
lea rcx, [rcx + rcx*4]
lea r8, [rax + rcx*8]
mov eax, dword [rdx + 0x14]
lea rcx, [r12 + 0x5d30]
mov dword [rcx + 0x14], eax
mov rax, qword [r12 + 0x3d38]
mov edx, dword [rax + 0x64]
mov dword [rcx + 0x64], edx
mov rax, qword [r12 + 0x3d38]
mov edx, dword [rax + 0x68]
mov dword [rcx + 0x68], edx
mov rax, qword [r12 + 0x3d38]
mov edx, dword [rax + 0x6c]
mov dword [rcx + 0x6c], edx
mov rax, qword [r12 + 0x3d38]
mov rdx, qword [rax + 0x40]
mov qword [rcx + 0x40], rdx
mov qword [rcx + 0x38], r8
mov eax, dword [r8 + 4]
mov dword [rcx + 0x10], eax
call fcn.140010850
movss xmm0, dword [0x14005c134]
xor eax, eax
mov dword [rbp - 0x68], eax
cmp dword [r12 + 0x4068], esi
jne 0x14003cfef
mov eax, dword [r14 + 0x10]
mov edi, dword [rbp + 0x1f8]
mov byte [r14 + 0xe86], 0
mov dword [r14 + 0xe88], edi
mov dword [rbp - 0x68], eax
mov eax, dword [rbp - 0x50]
mov dword [r14 + 0x4c], eax
cmp byte [r12 + 0xe50], 0
sete al
cmp byte [rsp + 0x6c], 0
mov byte [r12 + 0x4075], al
movss xmm6, dword [r12 + 0xe48]
subss xmm6, xmm8
subss xmm6, dword [r12 + 0x392c]
addss xmm6, dword [r14 + 0x50]
je 0x14003cac9
mov rax, qword [rbp - 0x38]
movss xmm2, dword [r12 + 0xe4c]
subss xmm2, dword [rax + 0x104]
jmp 0x14003cad7
movss xmm2, dword [r12 + 0x3d40]
mulss xmm2, xmm0
test r13b, r13b
je 0x14003cb00
mov eax, dword [r14 + 0xc]
xor r13d, r13d
mov dword [r14 + 0x58], r13d
mov byte [r14 + 0x6a], r13b
mov dword [r14 + 0x5c], eax
mov dword [r14 + 0x54], eax
mov byte [r14 + 0xe85], 1
jmp 0x14003ce46
movzx eax, byte [rsp + 0x70]
test al, al
je 0x14003ccda
cmp word [r12 + 0x3872], 2
jb 0x14003ccda
cmp byte [r12 + 0xe65], 0
jne 0x14003ccda
cmp byte [r14 + 0x6b], 0
je 0x14003cb4d
xor r8d, r8d
lea rcx, [rbp + 0x88]
mov rdx, r14
call fcn.140039700
movss xmm2, dword [rbp + 0x94]
movaps xmm1, xmm6
mov rcx, r14
call fcn.140039ca0
mov dword [r14 + 0x54], eax
mov dword [r14 + 0x58], eax
mov dword [r14 + 0x5c], eax
mov byte [r14 + 0x6a], 0
test byte [r12 + 0x3872], 1
jne 0x14003cc3f
test eax, eax
je 0x14003cb8f
movsxd rcx, eax
mov rax, qword [r14 + 0x20]
cmp word [rax + rcx*2 - 2], 0xa
je 0x14003cb8f
xor cl, cl
jmp 0x14003cb91
mov cl, 1
mov eax, dword [r14 + 0x5c]
cmp dword [r14 + 0x58], eax
jne 0x14003cb9f
test cl, cl
jne 0x14003cbc4
lea rdx, [r14 + 0x54]
mov r8d, 0x20000c
mov rcx, r14
call fcn.14003a150
mov byte [r14 + 0xe84], 1
mov dword [r14 + 0xe80], 0xbe99999a
mov eax, dword [r14 + 0x5c]
cmp dword [r14 + 0x58], eax
jne 0x14003cbe6
cmp dword [r14 + 0x58], eax
jne 0x14003cbe2
mov eax, dword [r14 + 0x54]
mov dword [r14 + 0x5c], eax
mov dword [r14 + 0x58], eax
jmp 0x14003cbe6
mov dword [r14 + 0x54], eax
mov edx, dword [r14 + 0x54]
mov rcx, r14
call fcn.1400398e0
mov dword [r14 + 0x54], eax
mov dword [r14 + 0x5c], eax
mov edx, dword [r14 + 0x5c]
mov ecx, dword [r14 + 0x58]
mov eax, dword [r14 + 0xc]
cmp ecx, edx
je 0x14003cc26
cmp ecx, eax
jle 0x14003cc14
mov dword [r14 + 0x58], eax
mov ecx, eax
cmp edx, eax
jle 0x14003cc1e
mov dword [r14 + 0x5c], eax
mov edx, eax
cmp ecx, edx
jne 0x14003cc26
mov dword [r14 + 0x54], ecx
cmp dword [r14 + 0x54], eax
jle 0x14003cccf
mov edi, dword [rbp + 0x1f8]
mov dword [r14 + 0x54], eax
jmp 0x14003ce38
movsxd rcx, eax
lea rdx, [r14 + 0x54]
mov rax, qword [r14 + 0x20]
mov r8d, 0x200004
movzx ebx, word [rax + rcx*2]
mov rcx, r14
call fcn.14003a150
mov r8d, 0x600005
mov byte [r14 + 0xe84], 1
lea rdx, [r14 + 0x54]
mov dword [r14 + 0xe80], 0xbe99999a
mov rcx, r14
call fcn.14003a150
mov r8d, 0x600001
mov byte [r14 + 0xe84], 1
lea rdx, [r14 + 0x54]
mov dword [r14 + 0xe80], 0xbe99999a
mov rcx, r14
call fcn.14003a150
cmp bx, 0xa
je 0x14003ccc7
cmp byte [rsp + 0x6c], 0
je 0x14003ccc7
mov ecx, dword [r14 + 0x58]
mov eax, dword [r14 + 0x5c]
mov dword [r14 + 0x58], eax
mov dword [r14 + 0x5c], ecx
mov dword [r14 + 0x54], ecx
mov byte [r14 + 0xe84], 0
mov edi, dword [rbp + 0x1f8]
jmp 0x14003ce38
cmp byte [r12 + 0x3868], 0
je 0x14003cda9
cmp byte [r14 + 0xe85], 0
jne 0x14003cda9
test al, al
je 0x14003ce43
cmp byte [r12 + 0xe65], 0
je 0x14003cd5e
cmp byte [r14 + 0x6b], 0
je 0x14003cd2b
xor r8d, r8d
lea rcx, [rbp + 0x88]
mov rdx, r14
call fcn.140039700
movss xmm2, dword [rbp + 0x94]
mov eax, dword [r14 + 0x5c]
lea rbx, [r14 + 0x5c]
cmp dword [r14 + 0x58], eax
jne 0x14003cd41
mov eax, dword [r14 + 0x54]
mov dword [r14 + 0x58], eax
movaps xmm1, xmm6
mov rcx, r14
call fcn.140039ca0
mov ecx, 0x54
mov dword [rbx], eax
mov rdx, r14
mov dword [rdx + rcx], eax
jmp 0x14003ce38
cmp byte [r14 + 0x6b], 0
je 0x14003cd7f
xor r8d, r8d
lea rcx, [rbp + 0x88]
mov rdx, r14
call fcn.140039700
movss xmm2, dword [rbp + 0x94]
movaps xmm1, xmm6
mov rcx, r14
call fcn.140039ca0
mov dword [r14 + 0x58], eax
lea rbx, [r14 + 0x5c]
mov byte [r14 + 0x6a], 0
mov ecx, 0x54
mov dword [rbx], eax
mov rdx, r14
mov dword [rdx + rcx], eax
jmp 0x14003ce38
cmp byte [r12 + 0xe50], 0
je 0x14003ce43
cmp byte [r14 + 0xe85], 0
jne 0x14003ce43
movss xmm0, dword [r12 + 0xe8]
ucomiss xmm0, xmm11
jp 0x14003cdea
jne 0x14003cdea
movss xmm0, dword [r12 + 0xec]
ucomiss xmm0, xmm11
jp 0x14003cdea
je 0x14003ce43
cmp byte [r14 + 0x6b], 0
je 0x14003ce0b
xor r8d, r8d
lea rcx, [rbp + 0x88]
mov rdx, r14
call fcn.140039700
movss xmm2, dword [rbp + 0x94]
mov eax, dword [r14 + 0x5c]
cmp dword [r14 + 0x58], eax
jne 0x14003ce1d
mov eax, dword [r14 + 0x54]
mov dword [r14 + 0x58], eax
movaps xmm1, xmm6
mov rcx, r14
call fcn.140039ca0
mov dword [r14 + 0x5c], eax
mov dword [r14 + 0x54], eax
mov byte [r14 + 0xe84], 1
mov dword [r14 + 0xe80], 0xbe99999a
xor r13d, r13d
cmp byte [r14 + 0xe85], 0
je 0x14003ce63
cmp byte [r12 + 0xe50], 0
jne 0x14003ce63
mov byte [r14 + 0xe85], 0
bt edi, 0xa
jae 0x14003cee5
mov r8d, 0x100
mov edx, esi
mov ecx, 0x200
call fcn.1400113a0
test al, al
je 0x14003cee5
mov r8d, 0x100
mov edx, esi
mov ecx, 0x200
call fcn.140013480
mov ecx, dword [rsp + 0x68]
test al, al
je 0x14003cee9
test cl, cl
jne 0x14003cee9
mov r8d, edi
mov dword [rsp + 0x58], 9
lea rdx, [rsp + 0x58]
mov dword [rsp + 0x28], 2
mov rcx, r12
call fcn.14003b6b0
test al, al
je 0x14003cee5
mov r8d, dword [rsp + 0x58]
lea rdx, [r14 + 0x54]
mov rcx, r14
call fcn.14003a150
mov byte [r14 + 0xe84], 1
mov dword [r14 + 0xe80], 0xbe99999a
mov ecx, dword [rsp + 0x68]
cmp byte [r12 + 0xe64], 0
je 0x14003ceff
cmp byte [r12 + 0xe66], 0
je 0x14003cf0f
test r15b, r15b
je 0x14003cf13
cmp byte [r12 + 0xe67], 0
je 0x14003cf13
mov al, 1
jmp 0x14003cf15
xor al, al
cmp dword [r12 + 0x38e0], 0
jle 0x14003cfec
test al, al
jne 0x14003cfba
test cl, cl
jne 0x14003cfba
cmp byte [rsp + 0x51], cl
jne 0x14003cfba
mov r15d, dword [rbp + 0x1f8]
mov edi, r13d
mov rbx, r13
nop dword [rax + rax]
mov rax, qword [r12 + 0x38e8]
movzx ecx, word [rax + rbx]
mov dword [rsp + 0x58], ecx
cmp ecx, 9
je 0x14003cfa5
mov r8d, r15d
mov dword [rsp + 0x28], 2
lea rdx, [rsp + 0x58]
mov rcx, r12
call fcn.14003b6b0
test al, al
je 0x14003cfa5
mov r8d, dword [rsp + 0x58]
lea rdx, [r14 + 0x54]
mov rcx, r14
call fcn.14003a150
mov byte [r14 + 0xe84], 1
mov dword [r14 + 0xe80], 0xbe99999a
inc edi
add rbx, 2
cmp edi, dword [r12 + 0x38e0]
jl 0x14003cf50
movzx r15d, byte [rbp - 0x78]
mov ecx, dword [r12 + 0x38e4]
test ecx, ecx
jns 0x14003cfe4
mov eax, ecx
cdq
sub eax, edx
mov edx, r13d
sar eax, 1
add eax, ecx
lea rcx, [r12 + 0x38e0]
test eax, eax
cmovg edx, eax
call fcn.14001cfd0
mov dword [r12 + 0x38e0], r13d
mov ebx, dword [rbp - 0x4c]
mov edi, dword [rbp - 0x74]
xor sil, sil
mov byte [rbp - 0x77], sil
cmp dword [r12 + 0x4068], edi
jne 0x14003ddd0
cmp byte [r12 + 0x4074], sil
jne 0x14003ddd0
cmp byte [rsp + 0x5c], sil
jne 0x14003ddd0
movaps xmm0, xmm7
mov ecx, 1
subss xmm0, dword [r12 + 0x3930]
divss xmm0, dword [r12 + 0x3d40]
cvttss2si eax, xmm0
cmp eax, ecx
cmovge ecx, eax
mov dword [r14 + 0x64], ecx
movzx eax, byte [r12 + 0xe65]
neg al
mov dword [rsp + 0x58], ecx
sbb esi, esi
and esi, 0x400000
test r15b, r15b
je 0x14003d093
cmp byte [r12 + 0xe67], 0
movzx eax, byte [r12 + 0xe66]
mov byte [rsp + 0x51], al
je 0x14003d0a0
cmp byte [r12 + 0xe64], 0
jne 0x14003d0a0
test al, al
jne 0x14003d0a0
mov byte [rsp + 0x53], 1
jmp 0x14003d0a5
movzx eax, byte [r12 + 0xe64]
mov byte [rsp + 0x51], al
mov byte [rsp + 0x53], 0
mov r8d, 0x101
mov edx, edi
mov ecx, 0xa39
call fcn.1400113a0
test al, al
je 0x14003d0d1
mov r8d, 0x101
mov edx, edi
mov ecx, 0xa39
call fcn.140013480
test al, al
jne 0x14003d0fd
mov r8d, 0x101
mov edx, edi
mov ecx, 0x220a
call fcn.1400113a0
test al, al
je 0x14003d124
mov r8d, 0x101
mov edx, edi
mov ecx, 0x220a
call fcn.140013480
test al, al
je 0x14003d124
mov r12d, dword [rsp + 0x68]
test r12b, r12b
jne 0x14003d129
test bl, bl
mov ebx, dword [rsp + 0x6c]
jne 0x14003d12d
test bl, bl
je 0x14003d11d
mov eax, dword [r14 + 0x5c]
cmp dword [r14 + 0x58], eax
je 0x14003d12d
mov byte [rsp + 0x54], 1
jmp 0x14003d132
mov r12d, dword [rsp + 0x68]
mov ebx, dword [rsp + 0x6c]
mov byte [rsp + 0x54], 0
mov r8d, 0x100
mov edx, edi
mov ecx, 0xa24
call fcn.1400113a0
test al, al
je 0x14003d15e
mov r8d, 0x100
mov edx, edi
mov ecx, 0xa24
call fcn.140013480
test al, al
jne 0x14003d18a
mov r8d, 0x100
mov edx, edi
mov ecx, 0x1209
call fcn.1400113a0
test al, al
je 0x14003d1a4
mov r8d, 0x100
mov edx, edi
mov ecx, 0x1209
call fcn.140013480
test al, al
je 0x14003d1a4
cmp byte [rbp - 0x4c], 0
jne 0x14003d1a4
test bl, bl
je 0x14003d19e
mov eax, dword [r14 + 0x5c]
cmp dword [r14 + 0x58], eax
je 0x14003d1a4
mov byte [rbp - 0x6b], 1
jmp 0x14003d1a8
mov byte [rbp - 0x6b], 0
mov r8d, 0x101
mov edx, edi
mov ecx, 0xa37
call fcn.1400113a0
test al, al
je 0x14003d1d4
mov r8d, 0x101
mov edx, edi
mov ecx, 0xa37
call fcn.140013480
test al, al
jne 0x14003d200
mov r8d, 0x101
mov edx, edi
mov ecx, 0x2209
call fcn.1400113a0
test al, al
je 0x14003d20a
mov r8d, 0x101
mov edx, edi
mov ecx, 0x2209
call fcn.140013480
test al, al
je 0x14003d20a
mov byte [rsp + 0x70], 1
test r12b, r12b
je 0x14003d20f
mov byte [rsp + 0x70], 0
mov r8d, 0x101
mov edx, edi
mov ecx, 0xa3b
call fcn.1400113a0
test al, al
je 0x14003d24e
mov r8d, 0x101
mov edx, edi
mov ecx, 0xa3b
call fcn.140013480
mov ebx, dword [rsp + 0x74]
test al, al
je 0x14003d252
test r12b, r12b
jne 0x14003d252
test bl, bl
je 0x14003d252
mov byte [rbp - 0x6c], 1
jmp 0x14003d256
mov ebx, dword [rsp + 0x74]
mov byte [rbp - 0x6c], 0
mov r8d, 0x101
mov edx, edi
mov ecx, 0xa3a
call fcn.1400113a0
test al, al
je 0x14003d282
mov r8d, 0x101
mov edx, edi
mov ecx, 0xa3a
call fcn.140013480
test al, al
jne 0x14003d2b3
test r15b, r15b
je 0x14003d2c1
mov r8d, 0x101
mov edx, edi
mov ecx, 0x2a3b
call fcn.1400113a0
test al, al
je 0x14003d2c1
mov r8d, 0x101
mov edx, edi
mov ecx, 0x2a3b
call fcn.140013480
test al, al
je 0x14003d2c1
test r12b, r12b
jne 0x14003d2c1
test bl, bl
je 0x14003d2c1
mov r13b, 1
jmp 0x14003d2c4
xor r13b, r13b
mov r8d, 0x100
mov edx, edi
mov ecx, 0xa22
call fcn.1400113a0
test al, al
jne 0x14003d2df
xor r12b, r12b
jmp 0x14003d2f7
mov r8d, 0x100
mov edx, edi
mov ecx, 0xa22
call fcn.140013480
test al, al
setne r12b
mov rax, qword [rbp - 0x80]
test byte [rax + 8], 2
je 0x14003d30b
test byte [rax + 0xc], 1
je 0x14003d30b
mov bl, 1
jmp 0x14003d30d
xor bl, bl
mov edi, 1
xor edx, edx
mov r8d, edi
mov ecx, 0x20d
call fcn.140011540
test al, al
jne 0x14003d33d
mov r8d, edi
xor edx, edx
mov ecx, 0x273
call fcn.140011540
test al, al
jne 0x14003d33d
xor r15b, r15b
jmp 0x14003d341
movzx r15d, dil
test bl, bl
je 0x14003d36b
xor r8d, r8d
xor edx, edx
mov ecx, 0x27c
call fcn.140011540
test al, al
jne 0x14003d36e
xor r8d, r8d
xor edx, edx
mov ecx, 0x27b
call fcn.140011540
test al, al
jne 0x14003d36e
xor dil, dil
mov edx, dword [rbp - 0x74]
mov r8d, 0x101
mov ecx, 0x20e
call fcn.1400113a0
test al, al
je 0x14003d39c
mov edx, dword [rbp - 0x74]
mov r8d, 0x101
mov ecx, 0x20e
call fcn.140013480
test al, al
jne 0x14003d3cf
test bl, bl
je 0x14003d3d3
mov ebx, dword [rbp - 0x74]
mov r8d, 0x101
mov edx, ebx
mov ecx, 0x27a
call fcn.1400113a0
test al, al
je 0x14003d3d3
mov r8d, 0x101
mov edx, ebx
mov ecx, 0x27a
call fcn.140013480
test al, al
je 0x14003d3d3
mov bl, 1
jmp 0x14003d3d5
xor bl, bl
xor edx, edx
mov ecx, 0x201
mov r8d, 1
call fcn.140011540
test al, al
je 0x14003d438
cmp byte [rsp + 0x53], 0
je 0x14003d3f9
mov eax, 0x200004
jmp 0x14003d40b
cmp byte [rsp + 0x51], 0
mov eax, 0x200000
mov ecx, 0x20000c
cmovne eax, ecx
or esi, eax
lea rdx, [r14 + 0x54]
mov r8d, esi
mov rcx, r14
call fcn.14003a150
mov dword [r14 + 0xe80], 0xbe99999a
mov byte [r14 + 0xe84], 1
mov r12, qword [rbp - 0x80]
jmp 0x14003dd95
xor edx, edx
mov ecx, 0x202
mov r8d, 1
call fcn.140011540
test al, al
je 0x14003d474
cmp byte [rsp + 0x53], 0
je 0x14003d45e
mov ecx, 0x200005
or esi, ecx
jmp 0x14003d40d
cmp byte [rsp + 0x51], 0
mov ecx, 0x200001
mov eax, 0x20000d
cmovne ecx, eax
or esi, ecx
jmp 0x14003d40d
xor edx, edx
mov ecx, 0x203
mov r8d, 1
call fcn.140011540
test al, al
je 0x14003d512
cmp byte [rsp + 0x6c], 0
je 0x14003d512
mov r12, qword [rbp - 0x80]
cmp byte [r12 + 0xe64], 0
je 0x14003d4de
mov r9, qword [rbp - 0x38]
xor eax, eax
movss xmm0, dword [r9 + 0x88]
subss xmm0, dword [r12 + 0x3d40]
mov dword [r9 + 0xa0], eax
mov dword [r9 + 0xa8], eax
maxss xmm0, xmm11
movss dword [r9 + 0x98], xmm0
jmp 0x14003dd95
movzx eax, byte [rsp + 0x53]
lea r8d, [rax*4 + 0x200002]
or r8d, esi
lea rdx, [r14 + 0x54]
mov rcx, r14
call fcn.14003a150
mov byte [r14 + 0xe84], 1
mov dword [r14 + 0xe80], 0xbe99999a
jmp 0x14003dd95
xor edx, edx
mov ecx, 0x204
mov r8d, 1
call fcn.140011540
test al, al
je 0x14003d597
cmp byte [rsp + 0x6c], 0
je 0x14003d597
mov r12, qword [rbp - 0x80]
cmp byte [r12 + 0xe64], 0
je 0x14003d585
mov rdx, qword [rbp - 0x38]
movss xmm0, dword [r12 + 0x3d40]
mov rax, qword [0x140064838]
addss xmm0, dword [rdx + 0x88]
mov rcx, qword [rax + 0x4008]
xor eax, eax
minss xmm0, dword [rcx + 0x90]
mov dword [rdx + 0xa0], eax
mov dword [rdx + 0xa8], eax
movss dword [rdx + 0x98], xmm0
jmp 0x14003dd95
movzx eax, byte [rsp + 0x53]
lea r8d, [rax*4 + 0x200003]
jmp 0x14003d4eb
xor edx, edx
mov ecx, 0x205
mov r8d, 1
call fcn.140011540
test al, al
je 0x14003d5fd
cmp byte [rsp + 0x6c], 0
je 0x14003d5fd
or esi, 0x20000e
lea rdx, [r14 + 0x54]
mov r8d, esi
mov rcx, r14
call fcn.14003a150
movd xmm0, dword [rsp + 0x58]
mov r12, qword [rbp - 0x80]
cvtdq2ps xmm0, xmm0
mov byte [r14 + 0xe84], 1
mov dword [r14 + 0xe80], 0xbe99999a
mulss xmm0, dword [r12 + 0x3d40]
subss xmm9, xmm0
jmp 0x14003dd95
xor edx, edx
mov ecx, 0x206
mov r8d, 1
call fcn.140011540
test al, al
je 0x14003d663
cmp byte [rsp + 0x6c], 0
je 0x14003d663
or esi, 0x20000f
lea rdx, [r14 + 0x54]
mov r8d, esi
mov rcx, r14
call fcn.14003a150
movd xmm0, dword [rsp + 0x58]
mov r12, qword [rbp - 0x80]
cvtdq2ps xmm0, xmm0
mov byte [r14 + 0xe84], 1
mov dword [r14 + 0xe80], 0xbe99999a
mulss xmm0, dword [r12 + 0x3d40]
addss xmm9, xmm0
jmp 0x14003dd95
xor edx, edx
mov ecx, 0x207
mov r8d, 1
call fcn.140011540
test al, al
je 0x14003d69e
mov r12, qword [rbp - 0x80]
mov eax, esi
or eax, 0x200006
or esi, 0x200004
cmp byte [r12 + 0xe64], 0
cmovne esi, eax
mov r8d, esi
jmp 0x14003d4ee
xor edx, edx
mov ecx, 0x208
mov r8d, 1
call fcn.140011540
test al, al
je 0x14003d6da
mov r12, qword [rbp - 0x80]
mov eax, esi
or eax, 0x200007
mov r8d, 0x200005
or r8d, esi
cmp byte [r12 + 0xe64], 0
cmovne r8d, eax
jmp 0x14003d4ee
xor edx, edx
mov ecx, 0x20a
mov r8d, 1
call fcn.140011540
test al, al
je 0x14003d73f
cmp byte [rsp + 0x68], 0
jne 0x14003d73f
cmp byte [rsp + 0x54], 0
jne 0x14003d73f
mov eax, dword [r14 + 0x5c]
cmp dword [r14 + 0x58], eax
jne 0x14003d734
cmp byte [rsp + 0x51], 0
je 0x14003d734
lea rdx, [r14 + 0x54]
mov r8d, 0x60000d
mov rcx, r14
call fcn.14003a150
mov byte [r14 + 0xe84], 1
mov dword [r14 + 0xe80], 0xbe99999a
or esi, 0x200008
jmp 0x14003d40d
xor edx, edx
mov ecx, 0x20b
mov r8d, 1
call fcn.140011540
mov r8d, dword [rsp + 0x68]
test al, al
je 0x14003d80d
test r8b, r8b
jne 0x14003d80d
mov eax, dword [r14 + 0x5c]
cmp dword [r14 + 0x58], eax
jne 0x14003d79d
cmp byte [rsp + 0x51], r8b
je 0x14003d7af
lea rdx, [r14 + 0x54]
mov r8d, 0x60000c
mov rcx, r14
call fcn.14003a150
mov byte [r14 + 0xe84], 1
mov dword [r14 + 0xe80], 0xbe99999a
mov r12, qword [rbp - 0x80]
or esi, 0x200009
mov r8d, esi
jmp 0x14003d4ee
cmp byte [rbp - 0x78], 0
je 0x14003d79d
mov r12, qword [rbp - 0x80]
cmp byte [r12 + 0xe67], 0
je 0x14003d7a1
cmp byte [r12 + 0xe66], 0
jne 0x14003d7a1
cmp byte [r12 + 0xe64], 0
jne 0x14003d7a1
lea rdx, [r14 + 0x54]
mov r8d, 0x600004
mov rcx, r14
call fcn.14003a150
or esi, 0x200009
mov byte [r14 + 0xe84], 1
mov r8d, esi
mov dword [r14 + 0xe80], 0xbe99999a
jmp 0x14003d4ee
test r15b, r15b
jne 0x14003dcf5
test dil, dil
jne 0x14003dcf5
test bl, bl
je 0x14003d87f
test dword [rbp + 0x1f8], 0x100000
mov rdx, qword [rsp + 0x78]
je 0x14003d860
movzx eax, byte [rdx]
test al, al
jne 0x14003d84f
xor r12b, r12b
mov byte [rsp + 0x5c], 1
mov dword [rsp + 0x60], r12d
test al, al
mov byte [rsp + 0x50], r12b
mov r12, qword [rbp - 0x80]
setne sil
mov byte [rbp - 0x77], sil
jmp 0x14003dd9d
mov r12, qword [rbp - 0x80]
mov sil, 1
xor cl, cl
mov byte [rbp - 0x77], sil
xor r8b, r8b
mov byte [rsp + 0x5c], sil
mov byte [rsp + 0x50], r8b
jmp 0x14003dda7
movzx eax, byte [rbp - 0x6c]
test al, al
jne 0x14003dcca
test r13b, r13b
jne 0x14003dcca
test r12b, r12b
je 0x14003d8c0
mov r12, qword [rbp - 0x80]
xor eax, eax
mov dword [r14 + 0x58], eax
mov eax, dword [r14 + 0xc]
mov dword [r14 + 0x5c], eax
mov dword [r14 + 0x54], eax
mov byte [r14 + 0x6a], r13b
mov byte [r14 + 0xe84], 1
jmp 0x14003dd95
movzx r12d, byte [rsp + 0x54]
test r12b, r12b
jne 0x14003dac4
cmp byte [rbp - 0x6b], r12b
jne 0x14003dac4
cmp byte [rsp + 0x70], r12b
je 0x14003d42f
mov rcx, qword [0x140064838]
mov rax, qword [rcx + 0xa8]
test rax, rax
je 0x14003d90e
mov rcx, qword [rcx + 0xb8]
call rax
mov rbx, rax
test rax, rax
je 0x14003d42f
jmp 0x14003d915
lea rbx, [0x1400547a6]
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [rbx + rax], 0
jne 0x14003d920
movsxd rcx, eax
lea rcx, [rcx*2 + 2]
call fcn.140007d70
mov r12, qword [rbp - 0x80]
xor r13d, r13d
mov r15, rax
mov qword [rbp - 0x48], rax
mov esi, r13d
cmp byte [rbx], r13b
je 0x14003d9a9
mov r15d, dword [rbp + 0x1f8]
mov rdi, rax
nop dword [rax]
xor r8d, r8d
lea rcx, [rsp + 0x74]
mov rdx, rbx
call fcn.140003bd0
movsxd rcx, eax
lea rdx, [rsp + 0x74]
add rbx, rcx
mov dword [rsp + 0x28], 4
mov rcx, r12
mov r8d, r15d
call fcn.14003b6b0
test al, al
je 0x14003d9a0
movzx eax, word [rsp + 0x74]
inc esi
mov word [rdi], ax
add rdi, 2
cmp byte [rbx], r13b
jne 0x14003d960
mov r15, qword [rbp - 0x48]
movsxd rax, esi
mov word [r15 + rax*2], r13w
test esi, esi
jle 0x14003da45
mov edx, dword [r14 + 0x5c]
mov ecx, dword [r14 + 0x58]
mov eax, dword [r14 + 0xc]
cmp ecx, edx
je 0x14003d9e5
cmp ecx, eax
jle 0x14003d9d3
mov dword [r14 + 0x58], eax
mov ecx, eax
cmp edx, eax
jle 0x14003d9dd
mov dword [r14 + 0x5c], eax
mov edx, eax
cmp ecx, edx
jne 0x14003d9e5
mov dword [r14 + 0x54], ecx
cmp dword [r14 + 0x54], eax
jle 0x14003d9ef
mov dword [r14 + 0x54], eax
lea rdx, [r14 + 0x54]
mov rcx, r14
call fcn.14003a0b0
mov edx, dword [r14 + 0x54]
mov r9d, esi
mov r8, r15
mov rcx, r14
call fcn.140039b10
test al, al
je 0x14003da3d
mov edi, dword [r14 + 0x54]
lea rcx, [r14 + 0x74]
xor edx, edx
call fcn.14003b1a0
test rax, rax
je 0x14003da35
mov dword [rax], edi
mov dword [rax + 4], r13d
mov dword [rax + 8], esi
mov dword [rax + 0xc], 0xffffffff
add dword [r14 + 0x54], esi
mov byte [r14 + 0x6a], r13b
mov byte [r14 + 0xe84], 1
test r15, r15
je 0x14003dab6
mov r8, qword [0x140064838]
test r8, r8
je 0x14003dab6
movsx rdx, word [r8 + 0x6030]
lea rcx, [r8 + 0x6034]
mov r9d, dword [r8 + 0x3f60]
lea rcx, [rcx + rdx*8]
cmp dword [rcx], r9d
je 0x14003daab
lea ecx, [rdx + 1]
mov eax, 0x2aaaaaab
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
add eax, eax
sub ecx, eax
mov word [r8 + 0x6030], cx
movsx rax, cx
lea rcx, [r8 + 0x6034]
lea rcx, [rcx + rax*8]
mov dword [rcx], r9d
mov dword [rcx + 4], r13d
inc word [rcx + 6]
inc dword [r8 + 0x602c]
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x14003dd95
mov rax, qword [rbp - 0x80]
cmp qword [rax + 0xb0], 0
je 0x14003dc6f
mov edi, dword [r14 + 0x5c]
mov eax, dword [r14 + 0x58]
cmp eax, edi
je 0x14003daef
mov esi, edi
cmovge edi, eax
cmovl esi, eax
xor r13d, r13d
jmp 0x14003daf9
mov edi, dword [r14 + 0xc]
xor r13d, r13d
mov esi, r13d
mov rcx, qword [r14 + 0x20]
mov r9d, 0x800
movsxd rax, edi
mov r10d, 0x80
lea r8, [rcx + rax*2]
movsxd rax, esi
lea rdx, [rcx + rax*2]
mov ecx, r13d
nop word [rax + rax]
test r8, r8
je 0x14003db2a
cmp rdx, r8
jae 0x14003db4d
movzx eax, word [rdx]
test ax, ax
je 0x14003db4d
add rdx, 2
cmp ax, r10w
jae 0x14003db40
inc ecx
jmp 0x14003db20
cmp ax, r9w
sbb eax, eax
add eax, 3
add ecx, eax
jmp 0x14003db20
lea eax, [rcx + 1]
movsxd rbx, eax
mov rcx, rbx
call fcn.140007d70
mov rdx, qword [r14 + 0x20]
mov r15, rax
movsxd rcx, edi
mov r9, rax
lea rdi, [rbx + rax]
lea rbx, [rdi - 1]
lea r11, [rdx + rcx*2]
movsxd rcx, esi
lea r10, [rdx + rcx*2]
cmp rax, rbx
jae 0x14003dbcd
mov r12d, 0x80
test r11, r11
je 0x14003db90
cmp r10, r11
jae 0x14003dbc7
movzx eax, word [r10]
test ax, ax
je 0x14003dbc7
add r10, 2
mov r8d, eax
cmp eax, r12d
jae 0x14003dbad
mov byte [r9], r8b
inc r9
jmp 0x14003dbc2
mov edx, edi
mov rcx, r9
sub edx, r9d
dec edx
call fcn.140003d80
movsxd rcx, eax
add r9, rcx
cmp r9, rbx
jb 0x14003db86
movzx r12d, byte [rsp + 0x54]
mov r8, qword [0x140064838]
mov byte [r9], 0
mov rax, qword [r8 + 0xb0]
test rax, rax
je 0x14003dbf7
mov rcx, qword [r8 + 0xb8]
mov rdx, r15
call rax
mov r8, qword [0x140064838]
test r15, r15
je 0x14003dc64
test r8, r8
je 0x14003dc64
movsx rdx, word [r8 + 0x6030]
mov r9d, dword [r8 + 0x3f60]
lea rcx, [rdx*8 + 0x6034]
add rcx, r8
cmp dword [rcx], r9d
je 0x14003dc59
lea ecx, [rdx + 1]
mov eax, 0x2aaaaaab
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
add eax, eax
sub ecx, eax
mov word [r8 + 0x6030], cx
movsx rax, cx
lea rcx, [rax*8 + 0x6034]
add rcx, r8
mov dword [rcx], r9d
mov dword [rcx + 4], 0
inc word [rcx + 6]
inc dword [r8 + 0x602c]
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x14003dc72
xor r13d, r13d
test r12b, r12b
je 0x14003d42f
mov eax, dword [r14 + 0x5c]
cmp dword [r14 + 0x58], eax
jne 0x14003dc9a
mov eax, dword [r14 + 0xc]
mov dword [r14 + 0x5c], eax
mov dword [r14 + 0x54], eax
mov dword [r14 + 0x58], r13d
mov byte [r14 + 0x6a], 0
mov byte [r14 + 0xe84], 1
mov eax, dword [r14 + 0x5c]
cmp dword [r14 + 0x58], eax
je 0x14003d42f
lea rdx, [r14 + 0x54]
mov rcx, r14
call fcn.14003a0b0
mov r12, qword [rbp - 0x80]
mov byte [r14 + 0x6a], 0
jmp 0x14003dd95
mov r8d, eax
lea rdx, [r14 + 0x54]
xor r8d, 1
mov rcx, r14
add r8d, 0x20000a
call fcn.14003a150
mov eax, dword [r14 + 0x54]
mov dword [r14 + 0x5c], eax
mov dword [r14 + 0x58], eax
jmp 0x14003d41c
mov edx, dword [rbp + 0x1f8]
mov eax, edx
mov ecx, dword [rsp + 0x6c]
mov r12, qword [rbp - 0x80]
shr eax, 0xb
and al, 1
test cl, cl
je 0x14003dd21
test dil, dil
jne 0x14003dd21
test al, al
je 0x14003dd4a
cmp byte [r12 + 0xe64], dil
jne 0x14003dd55
cmp byte [r12 + 0x5c], 0
mov byte [rsp + 0x64], 1
je 0x14003dd90
test cl, cl
jne 0x14003dd90
xor eax, eax
mov byte [r14 + 0x6a], cl
mov dword [r14 + 0x58], eax
mov eax, dword [r14 + 0xc]
mov dword [r14 + 0x5c], eax
mov dword [r14 + 0x54], eax
jmp 0x14003dd95
cmp byte [r12 + 0xe64], 0
jne 0x14003dd21
test r8b, r8b
jne 0x14003d42f
mov r8d, edx
mov dword [rsp + 0x74], 0xa
lea rdx, [rsp + 0x74]
mov dword [rsp + 0x28], 2
mov rcx, r12
call fcn.14003b6b0
test al, al
je 0x14003d42f
mov r8d, dword [rsp + 0x74]
jmp 0x14003d4ee
mov byte [rsp + 0x5c], 1
mov rdx, qword [rsp + 0x78]
xor sil, sil
mov ecx, dword [rsp + 0x60]
movzx r8d, byte [rsp + 0x50]
mov eax, dword [r14 + 0x5c]
cmp dword [r14 + 0x58], eax
je 0x14003ddc3
test r8b, r8b
je 0x14003ddc3
mov edi, dword [rbp - 0x74]
mov al, 1
or cl, al
mov dword [rsp + 0x60], ecx
jmp 0x14003ddd5
mov edi, dword [rbp - 0x74]
xor al, al
or cl, al
mov dword [rsp + 0x60], ecx
jmp 0x14003ddd5
mov rdx, qword [rsp + 0x78]
xor r10d, r10d
mov qword [rbp - 0x48], r10
mov dword [rsp + 0x58], r10d
cmp dword [r12 + 0x4068], edi
jne 0x14003e589
mov r15d, dword [rsp + 0x68]
test r15b, r15b
jne 0x14003e0dc
test sil, sil
je 0x14003e038
test dword [rbp + 0x1f8], 0x100000
je 0x14003de82
movsxd rbx, dword [r14 + 0xc]
lea rax, [0x1400547a6]
mov r8d, ebx
mov qword [rbp - 0x48], rax
lea rcx, [r14 + 0x74]
mov dword [rsp + 0x58], r10d
xor r9d, r9d
mov byte [rsp + 0x52], 1
xor edx, edx
call fcn.14003b2f0
mov r9, rax
test rax, rax
je 0x14003de65
test ebx, ebx
jle 0x14003de65
xor eax, eax
mov edx, eax
nop dword [rax]
mov rax, qword [r14 + 0x20]
movzx ecx, word [rax + rdx*2]
mov word [r9 + rdx*2], cx
inc rdx
cmp rdx, rbx
jl 0x14003de50
mov r8d, dword [r14 + 0xc]
xor edx, edx
mov rcx, r14
call fcn.140039a40
xor eax, eax
mov qword [r14 + 0x58], rax
mov dword [r14 + 0x54], eax
jmp 0x14003e038
mov r9, qword [r14 + 0x40]
mov rax, rdx
mov r8, r9
sub r8, rdx
nop
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x14003dea3
inc rax
test ecx, ecx
jne 0x14003de90
test edx, edx
je 0x14003e038
mov edx, dword [r14 + 0x38]
mov r12, r9
dec edx
mov qword [rbp - 0x48], r9
mov dword [rsp + 0x58], edx
mov r15d, r10d
mov byte [rsp + 0x52], 1
mov r13, r10
test edx, edx
jle 0x14003df9a
movsxd rdi, edx
mov rbx, r9
add rdi, r9
mov esi, r10d
nop dword [rax + rax]
test rdi, rdi
je 0x14003deea
cmp rbx, rdi
jae 0x14003df09
cmp byte [rbx], r13b
je 0x14003df09
mov r8, rdi
lea rcx, [rsp + 0x74]
mov rdx, rbx
call fcn.140003bd0
movsxd rcx, eax
add rbx, rcx
inc esi
jmp 0x14003dee0
lea r15d, [rsi + 1]
test r15d, r15d
jle 0x14003df33
cmp r15d, 8
mov eax, r15d
mov ecx, 8
cmovl eax, ecx
test eax, eax
jle 0x14003df33
movsxd rcx, eax
add rcx, rcx
call fcn.140007d70
mov r13, rax
movsxd rdx, dword [rsp + 0x58]
mov rbx, r12
movsxd rcx, r15d
mov rsi, r13
lea rdi, [r12 + rdx]
lea r12, [rcx*2 - 2]
add r12, r13
cmp r13, r12
jae 0x14003df8f
test rdi, rdi
je 0x14003df5f
cmp rbx, rdi
jae 0x14003df8b
cmp byte [rbx], 0
je 0x14003df8b
mov r8, rdi
lea rcx, [rsp + 0x74]
mov rdx, rbx
call fcn.140003bd0
movsxd rcx, eax
movzx eax, word [rsp + 0x74]
add rbx, rcx
mov word [rsi], ax
add rsi, 2
cmp rsi, r12
jb 0x14003df55
mov edx, dword [rsp + 0x58]
xor r10d, r10d
mov word [rsi], r10w
movzx esi, byte [rbp - 0x77]
test edx, edx
lea r9d, [r15 - 1]
lea rdx, [r14 + 0x54]
mov r8, r13
cmovle r9d, r10d
mov rcx, r14
call fcn.14003b5f0
test r13, r13
je 0x14003e02f
mov r8, qword [0x140064838]
test r8, r8
je 0x14003e026
movsx r10, word [r8 + 0x6030]
lea rdx, [r8 + 0x6034]
mov r9d, dword [r8 + 0x3f60]
lea rdx, [rdx + r10*8]
cmp dword [rdx], r9d
je 0x14003e01b
lea ecx, [r10 + 1]
mov eax, 0x2aaaaaab
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
add eax, eax
lea rdx, [r8 + 0x6034]
sub ecx, eax
movsx rax, cx
lea rdx, [rdx + rax*8]
mov word [r8 + 0x6030], cx
xor eax, eax
mov dword [rdx], r9d
mov dword [rdx + 4], eax
inc word [rdx + 6]
inc dword [r8 + 0x602c]
mov rcx, r13
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov r15d, dword [rsp + 0x68]
mov r12, qword [rbp - 0x80]
mov eax, dword [r14 + 0x18]
mov byte [r14 + 0x48], 1
mov ecx, dword [r14 + 0x2c]
lea ebx, [rax*4 + 1]
cmp ebx, ecx
jle 0x14003e074
test ecx, ecx
je 0x14003e05f
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x14003e064
mov eax, 8
cmp eax, ebx
lea rcx, [r14 + 0x28]
mov edx, ebx
cmovg edx, eax
call fcn.14001cef0
mov dword [r14 + 0x28], ebx
mov r9, qword [r14 + 0x30]
mov r10, qword [r14 + 0x20]
movsxd r11, ebx
add r11, r9
lea rbx, [r11 - 1]
cmp r9, rbx
jae 0x14003e0d2
mov r15d, 0x80
movzx eax, word [r10]
test ax, ax
je 0x14003e0cd
add r10, 2
mov r8d, eax
cmp eax, r15d
jae 0x14003e0b2
mov byte [r9], r8b
inc r9
jmp 0x14003e0c8
mov edx, r11d
mov rcx, r9
sub edx, r9d
dec edx
call fcn.140003d80
movsxd rcx, eax
add r9, rcx
cmp r9, rbx
jb 0x14003e095
mov r15d, dword [rsp + 0x68]
mov edi, dword [rbp - 0x74]
xor r10d, r10d
mov byte [r9], 0
test sil, sil
je 0x14003e14d
cmp byte [rsp + 0x64], 0
je 0x14003e0f4
mov esi, dword [rbp + 0x1f8]
test sil, 0x20
jne 0x14003e153
mov r12d, dword [rbp - 0x70]
mov r15, qword [rsp + 0x78]
mov r8d, dword [rsp + 0x68]
mov r11, qword [rbp - 0x48]
mov r10d, dword [rsp + 0x58]
mov r13, qword [rbp - 0x80]
mov edi, dword [rbp - 0x74]
cmp dword [r13 + 0x5d18], edi
jne 0x14003e628
cmp dword [r13 + 0x4068], edi
je 0x14003e61d
mov rax, qword [0x140064838]
mov ecx, dword [rax + 0x4980]
test cl, 0x20
je 0x14003e59f
shr ecx, 6
test cl, 1
jmp 0x14003e5b9
mov esi, dword [rbp + 0x1f8]
test esi, 0x801c0
je 0x14003e530
mov ebx, r10d
mov r13d, 0x100
test sil, 0x40
je 0x14003e1a3
mov r8d, r13d
mov edx, edi
mov ecx, 0x200
call fcn.1400113a0
test al, al
je 0x14003e1a3
mov r8d, r13d
mov edx, edi
mov ecx, 0x200
call fcn.140013480
test al, al
je 0x14003e1a3
mov eax, 0x40
mov ebx, 0x200
xor r10d, r10d
jmp 0x14003e221
test sil, sil
jns 0x14003e1f9
mov edi, 1
xor edx, edx
mov r8d, edi
mov ecx, 0x203
call fcn.140011540
test al, al
je 0x14003e1d3
mov r11d, 0x80
mov ebx, 0x203
mov eax, r11d
xor r10d, r10d
jmp 0x14003e227
mov r8d, edi
xor edx, edx
mov ecx, 0x204
call fcn.140011540
test al, al
je 0x14003e1f9
mov r11d, 0x80
mov ebx, 0x204
mov eax, r11d
xor r10d, r10d
jmp 0x14003e227
mov eax, 0x80000
test eax, esi
je 0x14003e211
cmp byte [r14 + 0xe86], 0
je 0x14003e211
xor r10d, r10d
jmp 0x14003e221
mov r10d, 0
test r13d, esi
mov eax, r10d
cmovne eax, r13d
mov r11d, 0x80
test eax, eax
je 0x14003e530
mov dword [rbp + 8], eax
mov rax, qword [rsp + 0x78]
mov dword [rbp + 0x18], r10d
mov qword [rbp + 0x31], r10
mov dword [rbp + 0x39], r10d
mov word [rbp + 0x3d], r10w
mov byte [rbp + 0x3f], 0
mov qword [rbp], r12
mov dword [rbp + 0xc], esi
mov qword [rbp + 0x10], r10
test r15b, r15b
jne 0x14003e260
mov rax, qword [r14 + 0x30]
mov rdx, qword [r14 + 0x20]
mov r9d, 0x800
mov qword [rbp + 0x20], rax
mov rcx, rdx
mov eax, dword [r14 + 0x10]
mov dword [rbp + 0x28], eax
mov eax, dword [r14 + 0x4c]
mov dword [rbp + 0x2c], eax
movsxd rax, dword [r14 + 0x54]
mov dword [rbp + 0x1c], ebx
mov ebx, r10d
mov byte [rbp + 0x30], 0
lea r8, [rdx + rax*2]
test r8, r8
je 0x14003e29b
cmp rcx, r8
jae 0x14003e2be
movzx eax, word [rcx]
test ax, ax
je 0x14003e2be
add rcx, 2
cmp ax, r11w
jae 0x14003e2b1
inc ebx
jmp 0x14003e291
cmp ax, r9w
sbb eax, eax
add eax, 3
add ebx, eax
jmp 0x14003e291
movsxd rax, dword [r14 + 0x58]
mov rcx, rdx
mov dword [rbp + 0x34], ebx
mov r12d, r10d
lea r8, [rdx + rax*2]
nop
test r8, r8
je 0x14003e2da
cmp rcx, r8
jae 0x14003e2ff
movzx eax, word [rcx]
test ax, ax
je 0x14003e2ff
add rcx, 2
cmp ax, r11w
jae 0x14003e2f1
inc r12d
jmp 0x14003e2d0
cmp ax, r9w
sbb eax, eax
add eax, 3
add r12d, eax
jmp 0x14003e2d0
movsxd rax, dword [r14 + 0x5c]
mov r15d, r10d
mov dword [rbp + 0x38], r12d
lea rcx, [rdx + rax*2]
nop
test rcx, rcx
je 0x14003e31a
cmp rdx, rcx
jae 0x14003e33f
movzx eax, word [rdx]
test ax, ax
je 0x14003e33f
add rdx, 2
cmp ax, r11w
jae 0x14003e331
inc r15d
jmp 0x14003e310
cmp ax, r9w
sbb eax, eax
add eax, 3
add r15d, eax
jmp 0x14003e310
lea rcx, [rbp]
mov dword [rbp + 0x3c], r15d
call r10
movsxd rax, dword [rbp + 0x34]
mov rcx, qword [rbp + 0x20]
movzx edx, byte [rbp + 0x30]
cmp eax, ebx
jne 0x14003e35e
test dl, dl
je 0x14003e3b0
xor r8d, r8d
lea rdi, [rcx + rax]
mov esi, r8d
mov rbx, rcx
nop dword [rax + rax]
test rdi, rdi
je 0x14003e37a
cmp rbx, rdi
jae 0x14003e399
cmp byte [rbx], 0
je 0x14003e399
mov r8, rdi
lea rcx, [rsp + 0x74]
mov rdx, rbx
call fcn.140003bd0
movsxd rcx, eax
add rbx, rcx
inc esi
jmp 0x14003e370
mov eax, dword [rbp + 0x34]
mov rcx, qword [rbp + 0x20]
movzx edx, byte [rbp + 0x30]
mov dword [r14 + 0x54], esi
mov byte [r14 + 0xe84], 1
movsxd r13, dword [rbp + 0x38]
cmp r13d, r12d
jne 0x14003e3bd
test dl, dl
je 0x14003e408
cmp r13d, eax
jne 0x14003e3c8
mov esi, dword [r14 + 0x54]
jmp 0x14003e404
xor eax, eax
lea rdi, [rcx + r13]
mov esi, eax
mov rbx, rcx
test rdi, rdi
je 0x14003e3dd
cmp rbx, rdi
jae 0x14003e3fc
cmp byte [rbx], 0
je 0x14003e3fc
mov r8, rdi
lea rcx, [rsp + 0x74]
mov rdx, rbx
call fcn.140003bd0
movsxd rcx, eax
add rbx, rcx
inc esi
jmp 0x14003e3d3
mov rcx, qword [rbp + 0x20]
movzx edx, byte [rbp + 0x30]
mov dword [r14 + 0x58], esi
movsxd rax, dword [rbp + 0x3c]
cmp eax, r15d
jne 0x14003e419
test dl, dl
je 0x14003e530
cmp eax, r13d
jne 0x14003e427
mov esi, dword [r14 + 0x58]
xor r13d, r13d
jmp 0x14003e465
xor r13d, r13d
lea rdi, [rcx + rax]
mov esi, r13d
mov rbx, rcx
test rdi, rdi
je 0x14003e43e
cmp rbx, rdi
jae 0x14003e45d
cmp byte [rbx], r13b
je 0x14003e45d
mov r8, rdi
lea rcx, [rsp + 0x74]
mov rdx, rbx
call fcn.140003bd0
movsxd rcx, eax
add rbx, rcx
inc esi
jmp 0x14003e434
mov rcx, qword [rbp + 0x20]
movzx edx, byte [rbp + 0x30]
mov dword [r14 + 0x5c], esi
test dl, dl
je 0x14003e530
mov r8d, dword [rbp + 0x28]
mov rdx, rcx
mov rcx, r14
call fcn.14003b8f0
mov eax, dword [rbp - 0x68]
mov ebx, dword [rbp + 0x28]
mov r12d, dword [rbp - 0x70]
cmp ebx, eax
jle 0x14003e4c9
test r12b, r12b
je 0x14003e4c9
mov ecx, dword [r14 + 0x1c]
sub ebx, eax
add ebx, dword [r14 + 0x18]
cmp ebx, ecx
jle 0x14003e4c5
test ecx, ecx
je 0x14003e4b0
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x14003e4b5
mov eax, 8
cmp eax, ebx
lea rcx, [r14 + 0x18]
mov edx, ebx
cmovg edx, eax
call fcn.14001cfd0
mov dword [r14 + 0x18], ebx
mov r15, qword [r14 + 0x20]
movsxd rsi, dword [r14 + 0x18]
mov rbx, r15
mov rdi, qword [rbp + 0x20]
dec rsi
lea rsi, [r15 + rsi*2]
cmp r15, rsi
jae 0x14003e50e
cmp byte [rdi], 0
je 0x14003e50e
xor r8d, r8d
lea rcx, [rbp - 0x68]
mov rdx, rdi
call fcn.140003bd0
movsxd rcx, eax
movzx eax, word [rbp - 0x68]
add rdi, rcx
mov word [rbx], ax
add rbx, 2
cmp rbx, rsi
jb 0x14003e4e4
mov word [rbx], r13w
sub rbx, r15
mov eax, dword [rbp + 0x28]
sar rbx, 1
mov dword [r14 + 0xc], ebx
mov dword [r14 + 0x10], eax
mov dword [r14 + 0xe80], 0xbe99999a
jmp 0x14003e534
mov r12d, dword [rbp - 0x70]
mov r8d, dword [rsp + 0x68]
mov r15, qword [rsp + 0x78]
test r8b, r8b
jne 0x14003e102
mov r9, qword [r14 + 0x30]
mov r8, r15
mov rax, r9
sub r8, r9
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x14003e567
inc rax
test ecx, ecx
jne 0x14003e554
mov r8d, dword [rsp + 0x68]
test edx, edx
je 0x14003e102
mov r10d, dword [r14 + 0x10]
mov r11, r9
mov qword [rbp - 0x48], r9
mov byte [rsp + 0x52], 1
jmp 0x14003e10b
mov r12d, dword [rbp - 0x70]
mov r11, r10
mov r15, qword [rsp + 0x78]
mov r8d, dword [rsp + 0x68]
jmp 0x14003e10b
mov edx, dword [rax + 0x4978]
mov ecx, dword [rax + 0x4098]
cmp ecx, edx
jne 0x14003e61d
test ecx, ecx
je 0x14003e61d
cmp dword [rax + 0x4068], edx
je 0x14003e61d
cmp byte [rax + 0x409d], 0
jne 0x14003e5d6
cmp dword [rax + 0x4068], 0
jne 0x14003e61d
cmp byte [rax + 0x4078], 0
je 0x14003e61d
test r8b, r8b
jne 0x14003e61d
mov r9, qword [r13 + 0x5d28]
mov r8, r15
mov rax, r9
sub r8, r9
nop dword [rax + rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x14003e603
inc rax
test ecx, ecx
jne 0x14003e5f0
test edx, edx
je 0x14003e61d
mov r10d, dword [r13 + 0x5d20]
mov r11, r9
dec r10d
mov qword [rbp - 0x48], r9
mov byte [rsp + 0x52], 1
xor esi, esi
mov dword [r13 + 0x5d18], esi
jmp 0x14003e62a
xor esi, esi
test r11, r11
je 0x14003e6c4
test r12b, r12b
je 0x14003e697
mov eax, dword [rbp + 0x1f8]
lea rcx, [rbp + 0x40]
mov dword [rbp + 0x4c], eax
xorps xmm0, xmm0
lea eax, [r10 + 1]
mov qword [rbp + 0x58], rsi
cmp dword [rbp - 0x50], eax
movdqa xmmword [rbp + 0x70], xmm0
cmovge eax, dword [rbp - 0x50]
mov dword [rbp + 0x6c], eax
mov qword [rbp + 0x40], r13
mov dword [rbp + 0x48], 0x40000
mov qword [rbp + 0x60], r15
mov dword [rbp + 0x68], r10d
mov qword [rbp + 0x50], rsi
call rsi
mov ecx, dword [rbp + 0x6c]
mov r15, qword [rbp + 0x60]
mov r11, qword [rbp - 0x48]
mov qword [rsp + 0x78], r15
lea r10d, [rcx - 1]
cmp dword [rbp + 0x68], r10d
cmovl r10d, dword [rbp + 0x68]
jmp 0x14003e69a
mov ecx, dword [rbp - 0x50]
lea eax, [r10 + 1]
cmp eax, ecx
cmovl ecx, eax
movsxd rbx, ecx
cmp rbx, 1
jb 0x14003e6c4
jbe 0x14003e6be
lea r8, [rbx - 1]
mov rdx, r11
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov byte [rbx + r15 - 1], 0
cmp dword [r13 + 0x4068], edi
jne 0x14003e6e1
cmp byte [rsp + 0x5c], 0
je 0x14003e7c9
xor edx, edx
xor ecx, ecx
call fcn.1400077b0
mov eax, 1
mov r10d, dword [rsp + 0x6c]
movaps xmmword [rsp + 0x200], xmm14
movaps xmmword [rsp + 0x1f0], xmm15
test r10b, r10b
jne 0x14003e7da
mov r8d, eax
lea rcx, [rbp - 0x10]
mov edx, edi
call fcn.140005550
mov rax, qword [0x140064838]
lea rcx, [rbp + 0x88]
movups xmm0, xmmword [rax + 0x3a44]
movups xmmword [rbp + 0x88], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x38f0]
movss dword [rbp + 0x94], xmm0
call fcn.140003e40
movss xmm0, dword [r13 + 0x3934]
mov r8d, eax
mov rdx, qword [rbp - 8]
mov r9b, 1
movss dword [rsp + 0x20], xmm0
movaps xmm0, xmm8
unpcklps xmm0, xmm12
movq rcx, xmm0
call fcn.140005260
mov r8, qword [rbp - 0x38]
movaps xmm15, xmm8
mov r10d, dword [rsp + 0x6c]
addss xmm15, xmm10
movaps xmm14, xmm7
movaps xmm13, xmm8
addss xmm13, dword [r13 + 0x392c]
addss xmm14, xmm12
movaps xmm0, xmm12
addss xmm0, dword [r13 + 0x3930]
movss dword [rbp + 0x90], xmm15
movss dword [rbp - 0x70], xmm15
movss dword [rbp + 0x94], xmm14
movss dword [rbp - 0x68], xmm14
jmp 0x14003e823
mov eax, 1
mov dword [r13 + 0x6168], eax
jmp 0x14003e6e6
mov r8, qword [rbp - 0x38]
movaps xmm2, xmm10
addss xmm2, xmm8
movaps xmm1, xmm12
addss xmm1, xmm7
movss xmm13, dword [r8 + 0x100]
movss xmm0, dword [r8 + 0x104]
movss dword [rbp - 0x70], xmm2
movaps xmm15, xmm2
movss dword [rbp + 0x90], xmm2
movaps xmm14, xmm1
movss dword [rbp - 0x68], xmm1
movss dword [rbp + 0x94], xmm1
cmp byte [rbp - 0x76], 0
xorps xmm4, xmm4
xorps xmm7, xmm7
movss dword [rsp + 0x58], xmm4
movss dword [rbp - 0x50], xmm7
movss dword [rbp + 0x8c], xmm12
movss dword [rbp + 0x88], xmm8
movss dword [rbp + 0x80], xmm13
movss dword [rbp + 0x84], xmm0
je 0x14003e866
mov r15, qword [r14 + 0x30]
mov qword [rsp + 0x78], r15
movzx eax, byte [rsp + 0x50]
mov r12d, dword [rsp + 0x60]
test al, al
jne 0x14003ea60
test r12b, r12b
jne 0x14003ea60
test r10b, r10b
je 0x14003e8e1
movzx edx, byte [r15]
mov ecx, esi
lea rsi, [r15 + 1]
test dl, dl
je 0x14003e8b5
nop dword [rax]
nop dword [rax + rax]
cmp dl, 0xa
lea eax, [rcx + 1]
movzx edx, byte [rsi]
cmovne eax, ecx
inc rsi
mov ecx, eax
test dl, dl
jne 0x14003e8a0
movzx eax, byte [rsi - 1]
dec rsi
cmp al, 0xa
je 0x14003e8c6
cmp al, 0xd
je 0x14003e8c6
inc ecx
movd xmm7, ecx
movaps xmm6, xmm10
cvtdq2ps xmm7, xmm7
mulss xmm7, dword [r13 + 0x3d40]
movss dword [rbp - 0x50], xmm7
jmp 0x14003e925
cmp dword [r13 + 0x4068], edi
jne 0x14003e8f0
movsxd rsi, dword [r14 + 0x10]
jmp 0x14003e90a
mov rsi, 0xffffffffffffffff
nop word [rax + rax]
inc rsi
cmp byte [r15 + rsi], 0
jne 0x14003e900
movss xmm6, dword [rsp + 0x58]
add rsi, r15
mov rax, rsi
sub rax, r15
cmp rax, 0x200000
jge 0x14003f371
mov rax, qword [0x140064838]
lea rcx, [rbp - 0x10]
movups xmm0, xmmword [rax + 0x39d4]
movups xmmword [rbp - 0x10], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x38f0]
movss dword [rbp - 4], xmm0
call fcn.140003e40
mov r8, qword [r8 + 0x298]
lea rdx, [rbp + 0x88]
movss xmm2, dword [r13 + 0x3d40]
test r10b, r10b
mov r10, qword [r13 + 0x3d38]
mov r12d, 0
cmovne rdx, r12
mov r9d, eax
mov rcx, rsi
test eax, 0xff000000
je 0x14003f385
test rsi, rsi
jne 0x14003e9ac
mov rcx, 0xffffffffffffffff
nop dword [rax]
inc rcx
cmp byte [r15 + rcx], r12b
jne 0x14003e9a0
add rcx, r15
cmp r15, rcx
je 0x14003f385
test r10, r10
jne 0x14003e9c2
mov rax, qword [r8 + 0x38]
mov r10, qword [rax + 8]
xorps xmm11, xmm11
ucomiss xmm2, xmm11
jp 0x14003e9d7
jne 0x14003e9d7
mov rax, qword [r8 + 0x38]
movss xmm2, dword [rax + 0x10]
movups xmm0, xmmword [r8 + 0x88]
movups xmmword [rbp - 0x10], xmm0
test rdx, rdx
je 0x14003ea23
movss xmm0, dword [rbp - 0x10]
movss xmm1, dword [rbp - 0xc]
maxss xmm0, dword [rdx]
maxss xmm1, dword [rdx + 4]
movss dword [rbp - 0x10], xmm0
movss xmm0, dword [rbp - 8]
minss xmm0, dword [rdx + 8]
movss dword [rbp - 0xc], xmm1
movss xmm1, dword [rbp - 4]
minss xmm1, dword [rdx + 0xc]
movss dword [rbp - 8], xmm0
movss dword [rbp - 4], xmm1
setne al
mov rdx, r8
mov byte [rsp + 0x48], al
lea rax, [rbp - 0x10]
movss dword [rsp + 0x40], xmm11
mov qword [rsp + 0x38], rcx
mov rcx, r10
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r9d
lea r9, [rbp + 0x80]
call fcn.14002d180
jmp 0x14003f389
movsxd rsi, dword [r14 + 0x10]
xor r11d, r11d
add rsi, r15
mov r8d, 0xfffffc18
mov r15, qword [r14 + 0x20]
xorps xmm8, xmm8
mov qword [rbp - 0x48], rsi
xorps xmm6, xmm6
mov r9d, r11d
mov ebx, r11d
mov edi, r8d
mov edx, r11d
test al, al
je 0x14003eaa2
movsxd rax, dword [r14 + 0x54]
mov edx, 1
mov r8d, 0xffffffff
lea r9, [r15 + rax*2]
test r12b, r12b
je 0x14003eac2
mov ecx, dword [r14 + 0x5c]
mov edi, 0xffffffff
cmp dword [r14 + 0x58], ecx
cmovl ecx, dword [r14 + 0x58]
inc edx
movsxd rax, ecx
lea rbx, [r15 + rax*2]
movzx ecx, word [r15]
movzx eax, r10b
add edx, eax
mov rax, r15
test cx, cx
je 0x14003eb11
cmp cx, 0xa
jne 0x14003eb04
inc r11d
cmp r8d, 0xffffffff
jne 0x14003eaf1
cmp rax, r9
jb 0x14003eaf1
dec edx
mov r8d, r11d
test edx, edx
jle 0x14003eb11
cmp edi, 0xffffffff
jne 0x14003eb04
cmp rax, rbx
jb 0x14003eb04
dec edx
mov edi, r11d
test edx, edx
jle 0x14003eb11
movzx ecx, word [rax + 2]
add rax, 2
test cx, cx
jne 0x14003ead4
inc r11d
mov rdx, r9
cmp r8d, 0xffffffff
mov r10d, r11d
cmovne r10d, r8d
cmp edi, 0xffffffff
cmove edi, r11d
cmp r9, r15
jbe 0x14003eb43
nop
cmp word [rdx - 2], 0xa
lea rax, [rdx - 2]
je 0x14003eb43
mov rdx, rax
cmp rax, r15
ja 0x14003eb30
mov r8, qword [r13 + 0x3d38]
movaps xmm11, xmm4
movss xmm2, dword [r13 + 0x3d40]
movaps xmm1, xmm4
movss dword [rsp + 0x74], xmm4
divss xmm2, dword [r8 + 0x14]
cmp rdx, r9
jae 0x14003ebc5
nop dword [rax + rax]
movzx ecx, word [rdx]
add rdx, 2
cmp ecx, 0xa
jne 0x14003eb86
maxss xmm11, xmm1
movaps xmm1, xmm4
jmp 0x14003eba9
cmp ecx, 0xd
je 0x14003eba9
cmp ecx, dword [r8]
jge 0x14003eb9b
mov rax, qword [r8 + 8]
movss xmm0, dword [rax + rcx*4]
jmp 0x14003eba1
movss xmm0, dword [r8 + 0x10]
mulss xmm0, xmm2
addss xmm1, xmm0
cmp rdx, r9
jb 0x14003eb70
comiss xmm1, xmm11
movss dword [rsp + 0x74], xmm11
jbe 0x14003ebc5
movss dword [rsp + 0x74], xmm1
movaps xmm11, xmm1
movss xmm0, dword [r13 + 0x3d40]
movd xmm12, r10d
cvtdq2ps xmm12, xmm12
mulss xmm12, xmm0
movss dword [rsp + 0x60], xmm12
test edi, edi
js 0x14003ec7c
mov rdx, rbx
cmp rbx, r15
jbe 0x14003ec06
cmp word [rdx - 2], 0xa
lea rax, [rdx - 2]
je 0x14003ec06
mov rdx, rax
cmp rax, r15
ja 0x14003ebf3
movaps xmm2, xmm0
movaps xmm8, xmm4
movaps xmm1, xmm4
divss xmm2, dword [r8 + 0x14]
cmp rdx, rbx
jae 0x14003ec68
nop dword [rax + rax]
movzx ecx, word [rdx]
add rdx, 2
cmp ecx, 0xa
jne 0x14003ec36
maxss xmm8, xmm1
movaps xmm1, xmm4
jmp 0x14003ec59
cmp ecx, 0xd
je 0x14003ec59
cmp ecx, dword [r8]
jge 0x14003ec4b
mov rax, qword [r8 + 8]
movss xmm0, dword [rax + rcx*4]
jmp 0x14003ec51
movss xmm0, dword [r8 + 0x10]
mulss xmm0, xmm2
addss xmm1, xmm0
cmp rdx, rbx
jb 0x14003ec20
comiss xmm1, xmm8
jbe 0x14003ec68
movaps xmm8, xmm1
movss xmm0, dword [r13 + 0x3d40]
movd xmm6, edi
cvtdq2ps xmm6, xmm6
mulss xmm6, xmm0
mov r10d, dword [rsp + 0x6c]
test r10b, r10b
je 0x14003ec9e
movd xmm7, r11d
cvtdq2ps xmm7, xmm7
movss dword [rsp + 0x58], xmm10
mulss xmm7, xmm0
movss dword [rbp - 0x50], xmm7
movzx r8d, byte [rsp + 0x50]
test r8b, r8b
je 0x14003ede2
cmp byte [r14 + 0xe84], 0
je 0x14003ede2
test dword [rbp + 0x1f8], 0x1000
jne 0x14003ed1a
movss xmm2, dword [r14 + 0x50]
movaps xmm0, xmm10
comiss xmm2, xmm11
mulss xmm0, dword [0x14005c11c]
movaps xmm1, xmm11
subss xmm10, dword [r13 + 0x392c]
jbe 0x14003ecf9
subss xmm1, xmm0
movaps xmm0, xmm4
maxss xmm0, xmm1
jmp 0x14003ed07
subss xmm1, xmm10
comiss xmm1, xmm2
jb 0x14003ed20
addss xmm0, xmm1
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [r14 + 0x50], xmm0
jmp 0x14003ed20
xor eax, eax
mov dword [r14 + 0x50], eax
test r10b, r10b
je 0x14003edd1
movss xmm3, dword [rbp - 0x24]
movaps xmm0, xmm12
subss xmm0, dword [r13 + 0x3d40]
comiss xmm9, xmm0
jbe 0x14003ed4c
movaps xmm9, xmm4
maxss xmm9, xmm0
jmp 0x14003ed7c
movss xmm2, dword [r13 + 0x3930]
movaps xmm1, xmm3
addss xmm2, xmm2
movaps xmm0, xmm12
subss xmm1, xmm2
subss xmm0, xmm1
comiss xmm0, xmm9
jb 0x14003ed7c
movaps xmm9, xmm12
subss xmm9, xmm3
addss xmm9, xmm2
comiss xmm4, xmm9
movss xmm2, dword [r13 + 0x3930]
jbe 0x14003ed90
movaps xmm2, xmm4
jmp 0x14003eda5
addss xmm2, xmm2
addss xmm2, xmm7
subss xmm2, xmm3
maxss xmm2, xmm4
minss xmm2, xmm9
movss xmm1, dword [rbp + 0x84]
mov rax, qword [rbp - 0x38]
movss xmm0, dword [rax + 0x88]
subss xmm0, xmm2
addss xmm1, xmm0
movss dword [rbp + 0x84], xmm1
movss dword [rax + 0x88], xmm2
mov byte [r14 + 0xe84], 0
movss xmm13, dword [rbp + 0x80]
movss xmm10, dword [r14 + 0x50]
test r12b, r12b
je 0x14003f05c
mov edx, dword [r14 + 0x5c]
mov eax, edx
mov ecx, dword [r14 + 0x58]
cmp ecx, edx
cmovl eax, ecx
cmovge edx, ecx
cdqe
lea rbx, [r15 + rax*2]
movsxd rax, edx
lea rdi, [r15 + rax*2]
test r8b, r8b
je 0x14003ee1f
movss xmm1, dword [0x14005c184]
jmp 0x14003ee27
movss xmm1, dword [0x14005c13c]
mov rax, qword [0x140064838]
lea rcx, [rbp - 0x10]
movups xmm0, xmmword [rax + 0x3cc4]
mulss xmm1, dword [rax + 0x38f0]
movups xmmword [rbp - 0x10], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, xmm1
movss dword [rbp - 4], xmm0
call fcn.140003e40
mov r15d, eax
xorps xmm4, xmm4
test r10b, r10b
je 0x14003ee70
xorps xmm5, xmm5
xorps xmm9, xmm9
movss dword [rbp - 0x2c], xmm5
jmp 0x14003ee7e
movss xmm9, dword [0x14005c1e0]
movss xmm5, dword [rbp - 0x2c]
movss xmm7, dword [rbp + 0x84]
addss xmm8, xmm13
addss xmm7, xmm6
subss xmm8, xmm10
subss xmm7, xmm4
cmp rbx, rdi
jae 0x14003f05c
movss xmm6, dword [0x14005c134]
xor r14d, r14d
movss xmm12, dword [rbp - 0x30]
movss xmm11, dword [rbp - 0x40]
mov rsi, qword [rbp - 0x38]
nop dword [rax]
movss xmm2, dword [r13 + 0x3d40]
movaps xmm0, xmm2
addss xmm0, xmm14
comiss xmm7, xmm0
ja 0x14003f041
comiss xmm11, xmm7
jbe 0x14003ef0b
cmp rbx, rdi
jae 0x14003f021
nop dword [rax]
movzx eax, word [rbx]
add rbx, 2
cmp ax, 0xa
je 0x14003f021
cmp rbx, rdi
jb 0x14003eef0
jmp 0x14003f021
mov rdx, qword [r13 + 0x3d38]
movaps xmm3, xmm4
movaps xmm1, xmm4
divss xmm2, dword [rdx + 0x14]
cmp rbx, rdi
jae 0x14003ef60
movzx ecx, word [rbx]
add rbx, 2
cmp ecx, 0xa
je 0x14003ef56
cmp ecx, 0xd
je 0x14003ef4f
cmp ecx, dword [rdx]
jge 0x14003ef42
mov rax, qword [rdx + 8]
movss xmm0, dword [rax + rcx*4]
jmp 0x14003ef47
movss xmm0, dword [rdx + 0x10]
mulss xmm0, xmm2
addss xmm1, xmm0
cmp rbx, rdi
jb 0x14003ef22
jmp 0x14003ef60
movaps xmm3, xmm4
maxss xmm3, xmm1
movaps xmm1, xmm4
maxss xmm1, xmm3
comiss xmm4, xmm1
jb 0x14003ef90
cmp dword [rdx], 0x20
jle 0x14003ef7c
mov rax, qword [rdx + 8]
movss xmm0, dword [rax + 0x80]
jmp 0x14003ef81
movss xmm0, dword [rdx + 0x10]
mulss xmm0, xmm6
cvttss2si eax, xmm0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
addss xmm1, xmm8
movaps xmm2, xmm5
subss xmm2, dword [r13 + 0x3d40]
movaps xmm0, xmm9
addss xmm8, xmm4
addss xmm0, xmm7
minss xmm1, xmm15
addss xmm2, xmm7
maxss xmm8, xmm12
minss xmm0, xmm14
movss dword [rbp - 8], xmm1
maxss xmm2, xmm11
movss dword [rbp - 0x10], xmm8
comiss xmm0, xmm11
movss dword [rbp - 0xc], xmm2
movss dword [rbp - 4], xmm0
jbe 0x14003f021
comiss xmm14, xmm2
jbe 0x14003f021
comiss xmm1, xmm12
jbe 0x14003f021
comiss xmm15, xmm8
jbe 0x14003f021
mov rcx, qword [rsi + 0x298]
lea r8, [rbp - 8]
mov dword [rsp + 0x28], r14d
lea rdx, [rbp - 0x10]
mov r9d, r15d
movss dword [rsp + 0x20], xmm4
call fcn.140028890
movss xmm13, dword [rbp + 0x80]
xorps xmm4, xmm4
movss xmm5, dword [rbp - 0x2c]
movaps xmm8, xmm13
subss xmm8, xmm10
addss xmm7, dword [r13 + 0x3d40]
cmp rbx, rdi
jb 0x14003eec0
movss xmm11, dword [rsp + 0x74]
movss xmm12, dword [rsp + 0x60]
mov rsi, qword [rbp - 0x48]
mov r14, qword [rbp - 0x60]
mov r10d, dword [rsp + 0x6c]
mov r15, qword [rsp + 0x78]
test r10b, r10b
jne 0x14003f078
mov rax, rsi
sub rax, r15
cmp rax, 0x200000
jge 0x14003f1c8
mov rax, qword [0x140064838]
lea rcx, [rbp - 0x10]
movups xmm0, xmmword [rax + 0x39d4]
movups xmmword [rbp - 0x10], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x38f0]
movss dword [rbp - 4], xmm0
call fcn.140003e40
cmp byte [rsp + 0x6c], 0
subss xmm13, xmm10
movss xmm0, dword [rbp + 0x84]
lea rdx, [rbp + 0x88]
mov rbx, qword [rbp - 0x38]
xorps xmm4, xmm4
movss xmm2, dword [r13 + 0x3d40]
subss xmm0, xmm4
mov r10, qword [r13 + 0x3d38]
mov r12d, 0
cmovne rdx, r12
movss dword [rbp - 0x60], xmm13
mov r8, qword [rbx + 0x298]
mov r9d, eax
mov rcx, rsi
movss dword [rbp - 0x5c], xmm0
test eax, 0xff000000
je 0x14003f1cf
test rsi, rsi
jne 0x14003f11d
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [r15 + rcx], r12b
jne 0x14003f111
add rcx, r15
cmp r15, rcx
je 0x14003f1cf
test r10, r10
jne 0x14003f133
mov rax, qword [r8 + 0x38]
mov r10, qword [rax + 8]
ucomiss xmm2, xmm4
jp 0x14003f143
jne 0x14003f143
mov rax, qword [r8 + 0x38]
movss xmm2, dword [rax + 0x10]
movups xmm0, xmmword [r8 + 0x88]
movups xmmword [rbp - 0x10], xmm0
test rdx, rdx
je 0x14003f18f
movss xmm0, dword [rbp - 0x10]
movss xmm1, dword [rbp - 0xc]
maxss xmm0, dword [rdx]
maxss xmm1, dword [rdx + 4]
movss dword [rbp - 0x10], xmm0
movss xmm0, dword [rbp - 8]
minss xmm0, dword [rdx + 8]
movss dword [rbp - 0xc], xmm1
movss xmm1, dword [rbp - 4]
minss xmm1, dword [rdx + 0xc]
movss dword [rbp - 8], xmm0
movss dword [rbp - 4], xmm1
setne al
mov rdx, r8
mov byte [rsp + 0x48], al
lea rax, [rbp - 0x10]
movss dword [rsp + 0x40], xmm4
mov qword [rsp + 0x38], rcx
mov rcx, r10
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r9d
lea r9, [rbp - 0x60]
call fcn.14002d180
xorps xmm4, xmm4
jmp 0x14003f1cf
mov rbx, qword [rbp - 0x38]
xor r12d, r12d
cmp byte [rsp + 0x50], 0
je 0x14003f376
movss xmm0, dword [r13 + 0x18]
addss xmm0, dword [r14 + 0xe80]
movss dword [r14 + 0xe80], xmm0
cmp byte [r13 + 0x5b], 0
je 0x14003f21c
comiss xmm4, xmm0
jae 0x14003f21c
movss xmm1, dword [0x14005c18c]
call sub.api_ms_win_crt_math_l1_1_0.dll_fmodf
movss xmm1, dword [0x14005c16c]
comiss xmm1, xmm0
jae 0x14003f21c
xor cl, cl
jmp 0x14003f21e
mov cl, 1
movss xmm0, dword [rbp + 0x84]
movss xmm8, dword [0x14005c184]
addss xmm0, xmm12
movss xmm12, dword [rbp - 0x40]
addss xmm11, dword [rbp + 0x80]
subss xmm11, xmm10
cvttss2si eax, xmm11
xorps xmm11, xmm11
subss xmm0, xmm11
movd xmm6, eax
cvtdq2ps xmm6, xmm6
cvttss2si eax, xmm0
movss dword [rbp + 0x88], xmm6
movaps xmm2, xmm6
addss xmm2, xmm8
movd xmm7, eax
cvtdq2ps xmm7, xmm7
movss dword [rbp + 0x90], xmm2
movaps xmm0, xmm7
movaps xmm1, xmm7
subss xmm0, dword [r13 + 0x3d40]
subss xmm1, dword [0x14005c198]
addss xmm0, dword [0x14005c134]
movss dword [rbp + 0x94], xmm1
movss dword [rbp + 0x8c], xmm0
test cl, cl
je 0x14003f32a
comiss xmm1, xmm12
jbe 0x14003f32a
movss xmm3, dword [rbp - 0x68]
comiss xmm3, xmm0
jbe 0x14003f32a
comiss xmm2, dword [rbp - 0x30]
jbe 0x14003f32a
movss xmm0, dword [rbp - 0x70]
comiss xmm0, xmm6
jbe 0x14003f32a
mov rax, qword [0x140064838]
lea rcx, [rbp - 0x10]
movss dword [rbp - 0x60], xmm6
movss dword [rbp - 0x5c], xmm1
movups xmm0, xmmword [rax + 0x39d4]
movups xmmword [rbp - 0x10], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x38f0]
movss dword [rbp - 4], xmm0
call fcn.140003e40
mov rcx, qword [rbx + 0x298]
lea rdx, [rbp + 0x88]
mov r9d, eax
movss dword [rsp + 0x20], xmm8
lea r8, [rbp - 0x60]
call fcn.140028620
cmp byte [rsp + 0x68], 0
mov edi, dword [rbp - 0x74]
jne 0x14003f369
movss xmm0, dword [r13 + 0x3d40]
subss xmm6, xmm8
subss xmm7, xmm0
movss dword [r13 + 0x5ebc], xmm0
mov byte [r13 + 0x5eb0], 1
movss dword [r13 + 0x5eb4], xmm6
movss dword [r13 + 0x5eb8], xmm7
movss xmm6, dword [rsp + 0x58]
jmp 0x14003f392
xor r12d, r12d
jmp 0x14003f385
movss xmm6, dword [rsp + 0x58]
movss xmm12, dword [rbp - 0x40]
mov edi, dword [rbp - 0x74]
xorps xmm11, xmm11
movss xmm8, dword [0x14005c184]
mov ebx, dword [rbp - 0x4c]
movaps xmm15, xmmword [rsp + 0x1f0]
movaps xmm14, xmmword [rsp + 0x200]
test bl, bl
je 0x14003f3b0
call fcn.1400108f0
cmp byte [rsp + 0x6c], 0
je 0x14003f429
movss xmm0, dword [rbp - 0x50]
lea rcx, [rbp - 0x60]
addss xmm0, dword [r13 + 0x3930]
movss dword [rbp - 0x60], xmm6
movss dword [rbp - 0x5c], xmm0
call fcn.1400367c0
or dword [r13 + 0x495c], 0x401
call fcn.14000b200
mov eax, dword [r13 + 0x4980]
mov ebx, dword [rbp + 0xa8]
and eax, 0x80
or ebx, eax
call fcn.140013ca0
cmp dword [r13 + 0x4978], 0
jne 0x14003f426
mov eax, dword [rbp + 0xa4]
mov dword [r13 + 0x497c], eax
mov dword [r13 + 0x4978], edi
mov dword [r13 + 0x4980], ebx
mov ebx, dword [rbp - 0x4c]
cmp byte [r13 + 0x5f70], 0
je 0x14003f5b4
test bl, bl
jne 0x14003f5b4
mov rdi, qword [0x140064838]
mov r14, qword [rdi + 0x4008]
mov qword [rdi + 0x5f98], r12
mov qword [rdi + 0x5f90], r12
test rsi, rsi
jne 0x14003f48d
mov rsi, r15
cmp r15, 0xffffffffffffffff
jae 0x14003f48d
nop dword [rax]
movzx ecx, byte [rsi]
test cl, cl
je 0x14003f48d
lea rax, [rsi + 1]
cmp cl, 0x23
jne 0x14003f484
cmp byte [rax], cl
je 0x14003f48d
mov rsi, rax
cmp rax, 0xffffffffffffffff
jb 0x14003f470
movss xmm1, dword [rbp + 0x84]
movss xmm0, dword [rdi + 0x3930]
addss xmm0, dword [rdi + 0x5fa0]
movss dword [rdi + 0x5fa0], xmm1
addss xmm0, xmm8
comiss xmm1, xmm0
jbe 0x14003f4ca
lea rcx, [0x14005560c]
call fcn.14001a740
mov byte [rdi + 0x5fa4], 1
lea r8, [0x14005b14d]
lea rdx, [0x14005b14c]
lea rcx, [rbp + 0x80]
call fcn.14001a780
mov eax, dword [r14 + 0x188]
mov ecx, dword [rdi + 0x5fa8]
cmp ecx, eax
jle 0x14003f4fd
mov dword [rdi + 0x5fa8], eax
mov ecx, eax
mov r14d, dword [r14 + 0x188]
mov r13d, 1
sub r14d, ecx
nop dword [rax]
mov r8, rsi
mov edx, 0xa
sub r8, r15
mov rcx, r15
call sub.VCRUNTIME140.dll_memchr
test rax, rax
mov rbx, rsi
cmovne rbx, rax
cmp r15, rbx
jne 0x14003f537
cmp rbx, rsi
je 0x14003f596
mov r9d, ebx
lea edx, [r14*4]
sub r9d, r15d
cmp byte [rdi + 0x5fa4], 0
jne 0x14003f551
mov edx, r13d
lea r8, [0x1400547a6]
mov qword [rsp + 0x20], r15
lea rcx, str._s_.s
call fcn.14001a740
mov byte [rdi + 0x5fa4], 0
cmp byte [rbx], 0xa
jne 0x14003f588
lea rcx, [0x14005560c]
call fcn.14001a740
mov byte [rdi + 0x5fa4], r13b
cmp rbx, rsi
je 0x14003f596
lea r15, [rbx + 1]
jmp 0x14003f510
lea r8, [0x14005b149]
lea rdx, [0x14005b148]
lea rcx, [rbp + 0x80]
call fcn.14001a780
mov r13, qword [rbp - 0x80]
movss xmm0, dword [rbp - 0x20]
comiss xmm0, xmm11
jbe 0x14003f5ee
movss xmm0, dword [rbp - 0x28]
mov r9b, 1
addss xmm0, dword [r13 + 0x3944]
addss xmm12, dword [r13 + 0x3930]
mov rdx, qword [rbp - 0x18]
xor r8d, r8d
unpcklps xmm0, xmm12
movq rcx, xmm0
call fcn.1400046d0
movzx r9d, byte [rsp + 0x52]
mov r8d, dword [rbp + 0x1f8]
test r9b, r9b
je 0x14003f637
bt r8d, 0x1b
jb 0x14003f637
mov rax, qword [0x140064838]
cmp word [rax + 0x5e22], 0
jg 0x14003f637
mov ecx, dword [rax + 0x4068]
cmp ecx, dword [rbp - 0x74]
je 0x14003f627
test ecx, ecx
jne 0x14003f630
mov word [rax + 0x4078], 0x101
or dword [rax + 0x4980], 4
movzx ecx, byte [rsp + 0x64]
test r8b, 0x20
mov eax, r9d
cmovne eax, ecx
jmp 0x14003c115