Function at 0x140035230
Capabilities:
Encode data using xor
Hash data using djb2

Disassembly:
mov rax, rsp
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x1d8]
sub rsp, 0x298
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
movaps xmmword [rax - 0x78], xmm8
movaps xmmword [rax - 0x88], xmm9
movaps xmmword [rax - 0x98], xmm10
movaps xmmword [rax - 0xa8], xmm11
movaps xmmword [rax - 0xb8], xmm12
movaps xmmword [rax - 0xc8], xmm13
movaps xmmword [rax - 0xd8], xmm14
movaps xmmword [rax - 0xe8], xmm15
mov rax, qword [0x1403768c0]
xor rax, rsp
mov qword [rbp + 0xe0], rax
mov dword [rbp - 0x50], r9d
mov rsi, r8
mov qword [rsp + 0x78], r8
mov qword [rbp - 0x70], rdx
mov rbx, rcx
mov rdi, qword [rbp + 0x200]
mov rax, qword [rbp + 0x210]
mov qword [rbp - 0x48], rax
mov rax, qword [rbp + 0x218]
mov qword [rbp - 0x38], rax
mov rcx, qword [0x140377ca0]
mov rax, qword [rcx + 0x4018]
mov byte [rax + 0xc0], 1
mov r12, qword [rcx + 0x4018]
mov qword [rbp + 0x70], r12
xor r14d, r14d
cmp byte [r12 + 0xc3], r14b
jne 0x14003560e
mov rcx, rbx
call fcn.1400304bc
movss xmm6, dword [0x140376040]
mulss xmm6, dword [0x1401ef670]
call fcn.1400137f8
movss xmm7, dword [rax + 0x50]
subss xmm7, xmm6
lea rcx, [rbp - 0x68]
call fcn.140012c18
movss xmm1, dword [rax + 4]
subss xmm1, xmm7
movss xmm0, dword [rax]
xorps xmm9, xmm9
subss xmm0, xmm9
movss dword [rbp - 0x80], xmm0
movss dword [rbp - 0x7c], xmm1
lea rcx, [rbp - 0x80]
call fcn.14001d02c
movss xmm10, dword [0x1401ef6bc]
movss dword [rbp - 0x28], xmm10
movss dword [rsp + 0x20], xmm10
xor r9d, r9d
xor r8d, r8d
mov rdx, rsi
lea rcx, [rbp - 0x68]
call fcn.14000f494
movss xmm6, dword [rdi + 4]
subss xmm6, dword [rax + 4]
movss dword [rsp + 0x20], xmm10
xor r9d, r9d
xor r8d, r8d
mov rdx, rsi
lea rcx, [rbp - 0x24]
call fcn.14000f494
movss xmm12, dword [0x1401ef638]
mulss xmm6, xmm12
movss xmm0, dword [rdi + 4]
subss xmm0, dword [rax + 4]
mulss xmm0, xmm12
movss dword [rbp - 0x80], xmm0
movss dword [rbp - 0x7c], xmm6
lea rdx, [rbp - 0x80]
lea ecx, [r14 + 0xb]
call fcn.14001a7dc
and dword [rbp - 0x80], r14d
and dword [rbp - 0x7c], r14d
lea rdx, [rbp - 0x80]
lea ecx, [r14 + 0xe]
call fcn.14001a7dc
mov r13, qword [0x140377ca0]
mov esi, dword [rbp + 0x208]
mov r15d, esi
shr r15d, 0x1a
and r15b, 1
mov dword [rsp + 0x60], r15d
test r15b, r15b
je 0x140035417
call fcn.14000ea38
xor r8d, r8d
mov rdx, rbx
mov rcx, r12
call fcn.140012e34
mov r14d, eax
mov dword [rsp + 0x70], eax
movss dword [rsp + 0x20], xmm10
mov r9d, 1
xor r8d, r8d
mov rdx, rbx
lea rcx, [rbp + 0x88]
call fcn.14000f494
test r15b, r15b
je 0x140035463
movss xmm0, dword [r13 + 0x3d50]
mulss xmm0, dword [0x1401ef67c]
jmp 0x14003546b
movss xmm0, dword [rbp + 0x8c]
movss xmm6, dword [r13 + 0x3928]
addss xmm6, xmm6
addss xmm6, xmm0
call fcn.14000f0f8
movss xmm1, dword [rdi + 4]
movaps xmm3, xmm6
movaps xmm2, xmm0
movss xmm0, dword [rdi]
unpcklps xmm0, xmm1
movq rdx, xmm0
lea rcx, [rbp + 0x80]
call fcn.14000efc4
movss xmm3, dword [rbp + 0x84]
movaps xmm2, xmm3
addss xmm2, dword [r12 + 0x114]
movss xmm0, dword [r12 + 0x110]
movaps xmm1, xmm0
addss xmm1, dword [rbp + 0x80]
movss dword [rbp + 0x40], xmm0
movss xmm0, dword [r12 + 0x114]
movss dword [rbp + 0x44], xmm0
movss dword [rbp + 0x48], xmm1
movss dword [rbp + 0x4c], xmm2
addss xmm3, dword [r12 + 0x114]
movss xmm0, dword [r12 + 0x110]
movaps xmm1, xmm0
addss xmm1, dword [rbp + 0x80]
movss dword [rbp + 0x50], xmm0
movss xmm0, dword [r12 + 0x114]
movss dword [rbp + 0x54], xmm0
movss dword [rbp + 0x58], xmm1
movss dword [rbp + 0x5c], xmm3
mov ecx, 1
call fcn.14001a42c
mov rdi, r12
mov qword [rbp - 0x68], r12
movss xmm11, dword [rbp + 0x80]
movss dword [rbp - 0x30], xmm11
movss xmm7, dword [rbp + 0x84]
movss dword [rbp - 0x2c], xmm7
and dword [rbp + 0x9c], 0
xorps xmm0, xmm0
movaps xmmword [rbp + 0xa0], xmm0
xorps xmm1, xmm1
movaps xmmword [rbp + 0xb0], xmm1
movaps xmmword [rbp + 0xc0], xmm0
and dword [rbp + 0xd0], 0
and dword [rbp + 0xd4], 0
and dword [rbp + 0xd8], 0
xor edx, edx
lea r8d, [rdx + 0x4c]
lea rcx, [rbp + 0x90]
call sub.VCRUNTIME140.dll_memset
movss xmm2, dword [rbp + 0x4c]
movss xmm0, dword [rbp + 0x48]
movss xmm1, dword [r13 + 0x3928]
lea rcx, [rbp - 0x80]
subss xmm2, dword [rbp + 0x44]
subss xmm0, dword [rbp + 0x40]
movss dword [rbp - 0x7c], xmm2
movss dword [rbp - 0x80], xmm0
test r15b, r15b
je 0x140035823
movss xmm6, dword [r12 + 0x110]
movss xmm7, dword [r12 + 0x114]
call fcn.1400158b8
mov r9d, 0x400
lea r8, [rbp + 0x40]
mov edx, r14d
lea rcx, [rbp + 0x40]
call fcn.1400154d0
xor r15d, r15d
test al, al
jne 0x140035672
call fcn.140011408
xor al, al
mov rcx, qword [rbp + 0xe0]
xor rcx, rsp
call fcn.14015a2d0
lea r11, [rsp + 0x298]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
movaps xmm9, xmmword [r11 - 0x48]
movaps xmm10, xmmword [r11 - 0x58]
movaps xmm11, xmmword [r11 - 0x68]
movaps xmm12, xmmword [r11 - 0x78]
movaps xmm13, xmmword [r11 - 0x88]
movaps xmm14, xmmword [r11 - 0x98]
movaps xmm15, xmmword [r11 - 0xa8]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
movups xmm0, xmmword [r13 + 0x49c8]
movaps xmmword [rbp + 0x90], xmm0
movups xmm1, xmmword [r13 + 0x49d8]
movaps xmmword [rbp + 0xa0], xmm1
movups xmm0, xmmword [r13 + 0x49e8]
movaps xmmword [rbp + 0xb0], xmm0
movups xmm1, xmmword [r13 + 0x49f8]
movaps xmmword [rbp + 0xc0], xmm1
movsd xmm0, qword [r13 + 0x4a08]
movsd qword [rbp + 0xd0], xmm0
mov eax, dword [r13 + 0x4a10]
mov dword [rbp + 0xd8], eax
movss dword [r12 + 0x110], xmm6
movss dword [r12 + 0x114], xmm7
mov eax, dword [r13 + 0x4b50]
mov edi, eax
mov r12d, 8
cmp eax, r14d
jne 0x14003570d
test byte [r13 + 0x4b5c], r12b
je 0x14003570d
bt esi, 0xa
jae 0x14003570d
mov dword [r13 + 0x4b50], r15d
mov edi, r15d
cmp dword [r13 + 0x407c], r14d
jne 0x14003571d
mov dword [r13 + 0x4b50], r15d
lea rdx, [r13 + 0x3a54]
mov ecx, 4
call fcn.14001a6a0
movss xmm1, dword [r13 + 0x392c]
mov ecx, 7
call fcn.14001a868
movss xmm1, dword [r13 + 0x3930]
mov ecx, r12d
call fcn.14001a868
movss xmm1, dword [rbp + 0x5c]
subss xmm1, dword [rbp + 0x54]
movss xmm0, dword [rbp + 0x58]
subss xmm0, dword [rbp + 0x50]
movss dword [rbp - 0x80], xmm0
movss dword [rbp - 0x7c], xmm1
mov dword [rsp + 0x20], 4
mov r12d, 1
mov r9d, r12d
lea r8, [rbp - 0x80]
mov edx, r14d
mov rcx, rbx
call fcn.14000e740
mov bl, al
mov dword [r13 + 0x4b50], edi
lea ecx, [r12 + 1]
call fcn.14001a42c
mov ecx, r12d
call fcn.14001a3d8
test bl, bl
jne 0x1400357b9
call fcn.140010f2c
jmp 0x140035609
mov rdi, qword [r13 + 0x4018]
mov qword [rbp - 0x68], rdi
movsx ecx, word [rdi + 0x16e]
mov eax, dword [rdi + 0x168]
bts ecx, eax
mov word [rdi + 0x16e], cx
movss xmm0, dword [rdi + 0x110]
addss xmm0, dword [r13 + 0x3924]
movss dword [rdi + 0x110], xmm0
movss xmm1, dword [r13 + 0x3928]
addss xmm1, dword [rdi + 0x114]
movss dword [rdi + 0x114], xmm1
subss xmm11, dword [rdi + 0xb4]
movss dword [rbp - 0x30], xmm11
movss xmm7, dword [rbp - 0x2c]
jmp 0x140035852
call fcn.1400158b8
bt esi, 0x1c
jb 0x14003584c
mov r9d, 0x400
lea r8, [rbp + 0x40]
mov edx, r14d
lea rcx, [rbp + 0x40]
call fcn.1400154d0
test al, al
je 0x14003560e
mov r12d, 1
mov r8d, dword [r13 + 0x49cc]
mov edx, r14d
lea rcx, [rbp + 0x50]
call fcn.140015744
mov cl, al
mov byte [rsp + 0x64], al
xor r10d, r10d
test al, al
je 0x140035879
mov dword [r13 + 0x4ed8], r12d
mov r15, qword [0x140377ca0]
test r14d, r14d
je 0x140035897
cmp dword [r15 + 0x4ef0], r14d
jne 0x140035897
add r15, 0x4ee8
jmp 0x14003589a
mov r15, r10
mov qword [rbp - 0x80], r15
mov edx, esi
bts edx, 0xe
test byte [r13 + 0x49cc], 0x80
cmove edx, esi
mov dword [rsp + 0x68], edx
mov eax, edx
shr eax, 0xe
mov esi, 1
and al, sil
mov dword [rsp + 0x5c], eax
mov eax, edx
shr eax, 0xf
and al, sil
mov dword [rbp - 0x40], eax
mov eax, edx
shr eax, 0x10
not al
and al, sil
mov dword [rbp + 0x30], eax
mov eax, edx
shr eax, 0x12
and al, sil
mov dword [rbp - 0x24], eax
mov eax, dword [r13 + 0x407c]
cmp eax, r14d
je 0x140035916
cmp dword [r13 + 0x4b50], r14d
jne 0x140035916
test byte [r13 + 0x4b5c], sil
jne 0x14003590f
cmp dword [r13 + 0x4b7c], 2
jne 0x140035916
mov byte [rsp + 0x53], sil
jmp 0x14003591b
mov byte [rsp + 0x53], r10b
test cl, cl
je 0x14003592b
cmp byte [r13 + 0x2b18], r10b
mov r12b, sil
jne 0x14003592e
mov r12b, r10b
movss xmm6, dword [0x1401ef6b8]
mov r14d, dword [rsp + 0x60]
test r14b, r14b
je 0x140035964
test r15, r15
je 0x140035964
test eax, eax
jne 0x140035964
mov edx, esi
mov rcx, rdi
call fcn.14002f48c
cmp dword [r13 + 0x40ac], eax
jne 0x140035961
mov bl, sil
jmp 0x140035971
xor r10d, r10d
mov bl, r10b
test r14b, r14b
je 0x14003599a
test r15, r15
je 0x14003599a
mov edx, esi
mov rcx, rdi
call fcn.14002f48c
xor r10d, r10d
cmp dword [r13 + 0x407c], eax
jne 0x14003599a
mov dil, sil
mov byte [rsp + 0x55], sil
mov byte [rsp + 0x57], r10b
mov byte [rbp - 0x60], r10b
jmp 0x1400359b0
mov byte [rsp + 0x57], r10b
mov byte [rbp - 0x60], r10b
mov dil, r10b
mov byte [rsp + 0x55], r10b
test r14b, r14b
je 0x1400359bf
mov rax, qword [rbp - 0x68]
movss xmm8, dword [rax + 0x90]
jmp 0x1400359c8
movaps xmm8, xmm6
mov byte [rsp + 0x55], r10b
test r15, r15
je 0x1400359d6
cmp byte [r15 + 0x1658], r10b
jne 0x1400359de
mov sil, r10b
test r15, r15
je 0x1400359f3
mov al, r14b
mov ecx, 1
xor al, cl
cmp byte [r15 + 0x6b], al
je 0x1400359f8
mov r14b, cl
jmp 0x1400359fb
mov ecx, 1
mov r14b, r10b
test r12b, r12b
jne 0x140035a1c
test bl, bl
jne 0x140035a1c
cmp byte [rsp + 0x53], r10b
jne 0x140035a1c
mov byte [rsp + 0x54], r10b
test dil, dil
jne 0x140035a20
mov byte [rsp + 0x58], r10b
jmp 0x140035a31
mov byte [rsp + 0x54], cl
mov byte [rsp + 0x58], cl
mov eax, dword [rsp + 0x70]
cmp dword [r13 + 0x407c], eax
jne 0x140035a3f
test r14b, r14b
jne 0x140035a3f
test sil, sil
je 0x140035c05
lea r15, [r13 + 0x4ee8]
mov qword [rbp - 0x80], r15
mov byte [r15 + 0x1658], r10b
mov ecx, dword [r15 + 8]
call fcn.14002f740
mov rcx, qword [rsp + 0x78]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov rdi, rax
xor ecx, ecx
test sil, sil
jne 0x140035a8f
lea rcx, [r15 + 0x38]
lea ebx, [rax + 1]
mov edx, ebx
call fcn.1400227f8
movsxd r8, ebx
mov rdx, qword [rsp + 0x78]
mov rcx, qword [r15 + 0x40]
call fcn.14015b5d0
xor ecx, ecx
mov eax, dword [rsp + 0x70]
cmp dword [r15 + 8], eax
jne 0x140035acc
test r14b, r14b
jne 0x140035acc
test sil, sil
jne 0x140035acc
mov ebx, 1
cmp dword [r15 + 0x10], edi
jne 0x140035acc
cmp byte [r15 + 0x48], cl
je 0x140035ace
movsxd r8, edi
mov rdx, qword [rsp + 0x78]
mov rcx, qword [r15 + 0x30]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
xor ecx, ecx
test eax, eax
je 0x140035ace
mov bl, cl
mov qword [rbp - 0x18], rcx
mov eax, dword [rsp + 0x70]
mov dword [r15 + 8], eax
lea rcx, [r15 + 0x18]
mov r14d, dword [rbp - 0x50]
lea edx, [r14 + 1]
call fcn.14002293c
lea rcx, [r15 + 0x28]
xor edx, edx
call fcn.1400227f8
mov byte [r15 + 0x48], 0
lea rax, [rbp - 0x18]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov rdi, qword [rsp + 0x78]
mov r8, rdi
mov edx, r14d
mov rcx, qword [r15 + 0x20]
call fcn.140014558
mov edx, eax
mov dword [r15 + 0xc], eax
mov ecx, dword [rbp - 0x18]
sub ecx, edi
mov dword [r15 + 0x10], ecx
lea r9, [r15 + 0x54]
xor r10d, r10d
lea r11d, [r10 + 1]
test bl, bl
je 0x140035b65
mov ecx, eax
cmp dword [r9], eax
cmovl ecx, dword [r9]
mov dword [r9], ecx
cmp dword [r15 + 0x58], eax
cmovl eax, dword [r15 + 0x58]
mov dword [r15 + 0x58], eax
cmp dword [r15 + 0x5c], edx
cmovl edx, dword [r15 + 0x5c]
mov dword [r15 + 0x5c], edx
mov eax, dword [rsp + 0x60]
jmp 0x140035b7b
mov dword [r15 + 0x50], r10d
mov eax, dword [rsp + 0x60]
movzx edx, al
xor edx, r11d
mov rcx, r9
call fcn.14003898c
test sil, sil
je 0x140035bab
mov edx, dword [r15 + 0xc]
mov eax, dword [r15 + 0x1660]
mov ecx, edx
cmp eax, edx
cmovl ecx, eax
mov dword [r9], ecx
mov eax, dword [r15 + 0x165c]
cmp eax, edx
cmovl edx, eax
mov dword [r15 + 0x58], edx
mov dword [r15 + 0x5c], ecx
jmp 0x140035bf2
test al, al
jne 0x140035bf2
test byte [rsp + 0x68], 0x10
mov eax, dword [rbp - 0x60]
movzx eax, al
cmovne eax, r11d
mov dword [rbp - 0x60], eax
cmp byte [rsp + 0x53], r10b
je 0x140035bdc
test bl, bl
je 0x140035bd6
test byte [r13 + 0x4b5c], 4
jne 0x140035bdc
mov al, r11b
mov dword [rbp - 0x60], eax
test r12b, r12b
je 0x140035bf2
movzx eax, al
cmp byte [r13 + 0x114], r10b
cmovne eax, r11d
mov byte [rbp - 0x60], al
mov dil, byte [rsp + 0x55]
test dword [rsp + 0x68], 0x2000
je 0x140035c05
mov byte [r15 + 0x60], r11b
mov r14b, byte [r13 + 0x59]
mov byte [rbp - 0x78], r14b
mov esi, dword [rsp + 0x70]
mov bl, byte [rsp + 0x54]
cmp dword [r13 + 0x407c], esi
je 0x140035c50
test bl, bl
je 0x140035c43
mov rdx, qword [rbp + 0x70]
mov ecx, esi
call fcn.14001cc84
mov rdx, qword [rbp + 0x70]
mov ecx, esi
call fcn.14001d134
xor edx, edx
mov rcx, qword [rbp + 0x70]
call fcn.140012550
cmp dword [r13 + 0x407c], esi
jne 0x140035d05
test r12b, r12b
je 0x140035c64
xor r8d, r8d
mov edx, esi
mov ecx, 0x28f
call fcn.14001d294
mov eax, dword [r13 + 0x4988]
or eax, 3
mov dword [r13 + 0x4988], eax
mov r12d, dword [rsp + 0x60]
test r12b, r12b
jne 0x140035c86
test byte [rsp + 0x68], 0x80
je 0x140035c90
or eax, 0xc
mov dword [r13 + 0x4988], eax
xor r8d, r8d
mov edx, esi
mov ecx, 0x20d
call fcn.14001d294
xor r8d, r8d
mov edx, esi
mov ecx, 0x273
call fcn.14001d294
xor r8d, r8d
mov edx, esi
mov ecx, 0x207
call fcn.14001d294
xor r8d, r8d
mov edx, esi
mov ecx, 0x208
call fcn.14001d294
test r12b, r12b
je 0x140035cef
xor r8d, r8d
mov edx, esi
mov ecx, 0x205
call fcn.14001d294
xor r8d, r8d
mov edx, esi
mov ecx, 0x206
call fcn.14001d294
test r14b, r14b
je 0x140035d0a
xor r8d, r8d
mov edx, esi
mov ecx, 0x4000
call fcn.14001d294
jmp 0x140035d0a
mov r12d, dword [rsp + 0x60]
cmp dword [r13 + 0x407c], esi
jne 0x140035d47
test r15, r15
jne 0x140035d1d
call fcn.14000fe1c
cmp dword [r13 + 0x407c], esi
jne 0x140035d47
xor r9d, r9d
lea ecx, [r9 + 1]
cmp byte [r13 + 0x2b18], r9b
je 0x140035d5d
cmp byte [rsp + 0x58], r9b
jne 0x140035d5d
test bl, bl
jne 0x140035d5d
mov byte [rsp + 0x57], cl
jmp 0x140035d5d
xor r9d, r9d
test r15, r15
je 0x140035d5a
test dil, dil
je 0x140035d5a
lea ecx, [r9 + 1]
jmp 0x140035d5d
mov cl, r9b
mov byte [rsp + 0x50], cl
mov edi, dword [rbp - 0x60]
test r15, r15
je 0x140035d83
mov eax, dword [r15 + 0x5c]
cmp dword [r15 + 0x58], eax
jne 0x140035d78
test dil, dil
je 0x140035d83
test cl, cl
je 0x140035d83
mov eax, 1
jmp 0x140035d86
mov al, r9b
mov byte [rsp + 0x51], al
mov byte [rsp + 0x54], r9b
mov byte [rsp + 0x58], r9b
mov edx, dword [rsp + 0x5c]
test dl, dl
je 0x140035e41
test r15, r15
je 0x140035e41
test cl, cl
jne 0x140035db5
test al, al
je 0x140035e49
mov qword [rbp - 0x18], r9
mov edx, dword [rbp - 0x50]
inc edx
lea rcx, [r15 + 0x18]
call fcn.14002293c
lea rax, [rbp - 0x18]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, qword [rsp + 0x78]
mov edx, dword [r15 + 0x18]
mov rcx, qword [r15 + 0x20]
call fcn.140014558
mov r8d, eax
mov dword [r15 + 0xc], eax
mov ecx, dword [rbp - 0x18]
sub ecx, dword [rsp + 0x78]
mov dword [r15 + 0x10], ecx
mov ecx, eax
cmp dword [r15 + 0x54], eax
cmovl ecx, dword [r15 + 0x54]
mov dword [r15 + 0x54], ecx
mov edx, eax
cmp dword [r15 + 0x58], eax
cmovl edx, dword [r15 + 0x58]
mov dword [r15 + 0x58], edx
cmp dword [r15 + 0x5c], eax
cmovl r8d, dword [r15 + 0x5c]
mov dword [r15 + 0x5c], r8d
xor r9d, r9d
mov ecx, r9d
movzx eax, byte [rsp + 0x51]
cmp edx, r8d
cmovne ecx, eax
mov al, cl
mov byte [rsp + 0x51], cl
mov cl, byte [rsp + 0x50]
mov edx, dword [rsp + 0x5c]
test cl, cl
jne 0x140035e52
test al, al
jne 0x140035e52
cmp dword [r13 + 0x407c], esi
jne 0x140035e6d
test dl, dl
jne 0x140035e6d
test r15, r15
je 0x140035e6d
cmp byte [r15 + 0x48], r9b
je 0x140035e6d
mov ecx, 1
mov al, cl
mov byte [rbp - 0x75], cl
jmp 0x140035e78
mov al, r9b
mov byte [rbp - 0x75], al
mov ecx, 1
cmp qword [rbp - 0x70], r9
je 0x140035e94
test al, al
je 0x140035e88
mov rax, qword [r15 + 0x30]
jmp 0x140035e8d
mov rax, qword [rsp + 0x78]
cmp byte [rax], r9b
mov al, cl
je 0x140035e97
mov al, r9b
mov byte [rsp + 0x56], al
cmp byte [rbp - 0x40], r9b
je 0x140035f25
test al, al
jne 0x140035f25
mov edx, Ordinal_46
mov rcx, qword [r13 + 0x3d48]
call fcn.1400268e8
mov r9, rax
lea r10, [r13 + 0x6568]
mov rcx, qword [r13 + 0x3d48]
mov edx, dword [rcx + 0x14]
mov dword [r10 + 0x14], edx
mov rdx, qword [r13 + 0x3d48]
mov r8d, dword [rdx + 0x6c]
mov dword [r10 + 0x6c], r8d
mov rdx, qword [r13 + 0x3d48]
mov r8d, dword [rdx + 0x70]
mov dword [r10 + 0x70], r8d
mov rdx, qword [r13 + 0x3d48]
mov r8d, dword [rdx + 0x74]
mov dword [r10 + 0x74], r8d
mov rdx, qword [r13 + 0x3d48]
mov rax, qword [rdx + 0x40]
mov qword [r10 + 0x40], rax
mov qword [r10 + 0x38], r9
mov eax, dword [r9 + 4]
mov dword [r10 + 0x10], eax
mov rcx, r10
call fcn.14001a5bc
xor r9d, r9d
mov dword [rbp - 0x18], r9d
cmp dword [r13 + 0x407c], esi
jne 0x1400362f9
mov eax, dword [r15 + 0x10]
mov dword [rbp - 0x18], eax
mov byte [r15 + 0x1652], r9b
mov eax, dword [rbp - 0x50]
mov dword [r15 + 0x4c], eax
mov ebx, dword [rsp + 0x68]
mov dword [r15 + 0x1654], ebx
cmp byte [r13 + 0x100], r9b
sete al
mov byte [r13 + 0x4089], al
movss xmm2, dword [r13 + 0xf8]
subss xmm2, dword [rbp + 0x50]
subss xmm2, dword [r13 + 0x3924]
addss xmm2, dword [r15 + 0x50]
test r12b, r12b
je 0x140035fa0
movss xmm3, dword [r13 + 0xfc]
mov rax, qword [rbp - 0x68]
subss xmm3, dword [rax + 0x114]
jmp 0x140035fae
movss xmm3, dword [r13 + 0x3d50]
mulss xmm3, xmm12
test dil, dil
je 0x140035fd8
mov dword [r15 + 0x58], r9d
mov eax, dword [r15 + 0xc]
mov dword [r15 + 0x5c], eax
mov dword [r15 + 0x54], eax
mov byte [r15 + 0x6a], r9b
mov edi, 1
mov byte [r15 + 0x1651], dil
jmp 0x140036102
mov al, byte [rsp + 0x64]
test al, al
je 0x1400361b0
mov ecx, 2
cmp word [r13 + 0x2b22], cx
jb 0x1400361b0
cmp byte [r13 + 0x115], r9b
jne 0x1400361b0
lea rdi, [r15 + 0x54]
mov rdx, rdi
mov rcx, r15
call fcn.1400384d4
movzx eax, word [r13 + 0x2b22]
sub eax, 2
mov edx, dword [rdi]
mov r9d, 1
test r9b, al
jne 0x14003609a
xor r8d, r8d
test edx, edx
je 0x140036044
dec edx
mov rcx, r15
call fcn.140034f44
cmp eax, 0xa
mov cl, r8b
jne 0x140036047
mov cl, r9b
mov eax, dword [r15 + 0x5c]
cmp dword [r15 + 0x58], eax
jne 0x140036055
test cl, cl
jne 0x140036062
mov edx, 0x20000c
mov rcx, r15
call fcn.140034e90
mov eax, dword [r15 + 0x5c]
cmp dword [r15 + 0x58], eax
jne 0x140036075
lea rcx, [r15 + 0x54]
call fcn.140039288
mov edx, dword [r15 + 0x54]
mov rcx, r15
call fcn.14003519c
mov dword [r15 + 0x54], eax
mov dword [r15 + 0x5c], eax
lea rdx, [r15 + 0x54]
mov rcx, r15
call fcn.14003845c
xor r9d, r9d
jmp 0x1400360f2
mov rcx, r15
call fcn.140034f44
mov ebx, eax
mov edx, 0x200004
call fcn.140034e90
mov edx, 0x600005
mov rcx, r15
call fcn.140034e90
mov edx, 0x600001
mov rcx, r15
call fcn.140034e90
xor r9d, r9d
cmp ebx, 0xa
je 0x1400360e7
test r12b, r12b
je 0x1400360e7
mov ecx, dword [r15 + 0x58]
mov eax, dword [r15 + 0x5c]
mov dword [r15 + 0x58], eax
mov dword [r15 + 0x5c], ecx
mov dword [rdi], ecx
mov byte [r15 + 0x1650], r9b
mov ebx, dword [rsp + 0x68]
mov dword [r15 + 0x164c], 0xbe99999a
mov edi, 1
cmp byte [r15 + 0x1651], r9b
je 0x14003611b
cmp byte [r13 + 0x100], r9b
jne 0x14003611b
mov byte [r15 + 0x1651], r9b
mov ecx, dword [rsp + 0x5c]
bt ebx, 0xa
jae 0x140036180
test cl, cl
jne 0x140036180
mov r8d, edi
mov edx, esi
mov ecx, 0x200
call fcn.14001dfdc
xor r9d, r9d
test al, al
je 0x14003617c
mov dword [rbp - 0x60], 9
mov byte [rsp + 0x28], dil
mov rax, qword [rbp - 0x38]
mov qword [rsp + 0x20], rax
mov r9, qword [rbp - 0x48]
mov r8d, ebx
lea rdx, [rbp - 0x60]
mov rcx, r13
call fcn.140034b2c
xor r9d, r9d
test al, al
je 0x14003617c
mov edx, dword [rbp - 0x60]
mov rcx, r15
call fcn.140034e90
xor r9d, r9d
mov ecx, dword [rsp + 0x5c]
cmp byte [r13 + 0x114], r9b
je 0x140036192
cmp byte [r13 + 0x116], r9b
je 0x1400361a8
test r14b, r14b
je 0x140036264
cmp byte [r13 + 0x117], r9b
je 0x140036264
mov al, dil
jmp 0x140036267
cmp byte [r13 + 0x2b18], r9b
je 0x1400361f9
cmp byte [r15 + 0x1651], r9b
jne 0x1400361f9
test al, al
je 0x1400360fd
lea rdx, [r15 + 0x54]
mov rcx, r15
cmp byte [r13 + 0x115], r9b
je 0x1400361e1
call fcn.1400387c0
jmp 0x1400361e6
call fcn.1400384d4
mov dword [r15 + 0x164c], 0xbe99999a
xor r9d, r9d
jmp 0x1400360fd
cmp byte [r13 + 0x100], r9b
je 0x1400360fd
cmp byte [r15 + 0x1651], r9b
jne 0x1400360fd
movss xmm0, dword [r13 + 0xe8]
ucomiss xmm0, xmm9
jp 0x140036239
jne 0x140036239
movss xmm0, dword [r13 + 0xec]
ucomiss xmm0, xmm9
jp 0x140036239
je 0x1400360fd
lea rdx, [r15 + 0x54]
mov rcx, r15
call fcn.1400387c0
mov dword [r15 + 0x164c], 0xbe99999a
mov edi, 1
mov byte [r15 + 0x1650], dil
xor r9d, r9d
jmp 0x140036102
mov al, r9b
cmp dword [r13 + 0x2b90], r9d
jle 0x1400362f9
test al, al
jne 0x1400362e8
test cl, cl
jne 0x1400362e8
cmp byte [rsp + 0x53], r9b
jne 0x1400362e8
mov edi, r9d
mov rbx, r9
mov r12d, dword [rsp + 0x68]
mov rsi, qword [rbp - 0x38]
mov rax, qword [r13 + 0x2b98]
mov ecx, dword [rbx + rax]
mov dword [rbp - 0x60], ecx
cmp ecx, 9
je 0x1400362d0
mov byte [rsp + 0x28], 1
mov qword [rsp + 0x20], rsi
mov r9, qword [rbp - 0x48]
mov r8d, r12d
lea rdx, [rbp - 0x60]
mov rcx, r13
call fcn.140034b2c
test al, al
je 0x1400362d0
mov edx, dword [rbp - 0x60]
mov rcx, r15
call fcn.140034e90
inc edi
add rbx, 4
cmp edi, dword [r13 + 0x2b90]
jl 0x140036292
mov esi, dword [rsp + 0x70]
mov r12d, dword [rsp + 0x60]
lea rcx, [r13 + 0x2b90]
xor edx, edx
call fcn.14002293c
xor r9d, r9d
mov r14b, r9b
mov byte [rsp + 0x52], r9b
cmp dword [r13 + 0x407c], esi
jne 0x140036653
cmp byte [r13 + 0x4088], r9b
jne 0x140036653
cmp byte [rsp + 0x57], r9b
jne 0x140036653
movaps xmm0, xmm7
subss xmm0, dword [r13 + 0x3928]
divss xmm0, dword [r13 + 0x3d50]
cvttss2si eax, xmm0
mov ebx, 1
mov ecx, ebx
cmp eax, ebx
cmovge ecx, eax
mov dword [rbp - 0x60], ecx
mov dword [r15 + 0x64], ecx
mov al, byte [r13 + 0x115]
neg al
sbb edi, edi
and edi, 0x400000
mov r14b, byte [rbp - 0x78]
test r14b, r14b
je 0x1400363a0
mov al, byte [r13 + 0x116]
mov byte [rsp + 0x53], al
cmp byte [r13 + 0x117], r9b
je 0x1400363ab
mov byte [rsp + 0x53], al
cmp byte [r13 + 0x114], r9b
jne 0x1400363ab
mov byte [rsp + 0x53], al
cmp al, r9b
jne 0x1400363ab
mov byte [rsp + 0x55], bl
mov byte [rsp + 0x53], al
jmp 0x1400363b0
mov al, byte [r13 + 0x114]
mov byte [rsp + 0x53], al
mov byte [rsp + 0x55], r9b
mov r8d, ebx
mov edx, esi
mov ecx, 0xa39
call fcn.14001dfdc
xor ecx, ecx
test al, al
jne 0x1400363da
mov r8d, ebx
mov edx, esi
mov ecx, 0x220a
call fcn.14001dfdc
xor ecx, ecx
test al, al
je 0x1400363fd
mov ebx, dword [rsp + 0x5c]
test bl, bl
jne 0x140036401
cmp byte [rbp - 0x40], cl
jne 0x140036401
test r12b, r12b
je 0x1400363f6
mov eax, dword [r15 + 0x5c]
cmp dword [r15 + 0x58], eax
je 0x140036401
mov byte [rsp + 0x6c], 1
jmp 0x140036405
mov ebx, dword [rsp + 0x5c]
mov byte [rsp + 0x6c], cl
xor r8d, r8d
mov edx, esi
mov ecx, 0xa24
call fcn.14001dfdc
test al, al
jne 0x14003642b
xor r8d, r8d
mov edx, esi
mov ecx, 0x1209
call fcn.14001dfdc
test al, al
je 0x14003644e
xor eax, eax
cmp byte [rbp - 0x40], al
jne 0x14003644e
test r12b, r12b
je 0x140036441
mov eax, dword [r15 + 0x5c]
cmp dword [r15 + 0x58], eax
je 0x14003644e
mov eax, 1
mov byte [rbp - 0x76], al
xor r12d, r12d
jmp 0x14003645a
xor r12d, r12d
mov byte [rbp - 0x76], r12b
lea eax, [r12 + 1]
mov r8d, eax
mov edx, esi
mov ecx, 0xa37
call fcn.14001dfdc
test al, al
jne 0x140036483
mov r8d, 1
mov edx, esi
mov ecx, 0x2209
call fcn.14001dfdc
test al, al
je 0x140036492
test bl, bl
jne 0x140036492
mov eax, 1
mov byte [rsp + 0x64], al
jmp 0x14003649c
mov byte [rsp + 0x64], r12b
mov eax, 1
mov r8d, eax
mov edx, esi
mov ecx, 0xa3b
call fcn.14001dfdc
test al, al
je 0x1400364c4
test bl, bl
mov ebx, dword [rbp + 0x30]
jne 0x1400364c7
test bl, bl
je 0x1400364c7
mov eax, 1
mov byte [rbp - 0x77], al
jmp 0x1400364d0
mov ebx, dword [rbp + 0x30]
mov byte [rbp - 0x77], r12b
mov eax, 1
mov r8d, eax
mov edx, esi
mov ecx, 0xa3a
call fcn.14001dfdc
test al, al
jne 0x140036532
test r14b, r14b
je 0x140036501
mov r14d, 1
mov r8d, r14d
mov edx, esi
mov ecx, 0x2a3b
call fcn.14001dfdc
test al, al
jne 0x140036538
mov r14d, 1
xor r8d, r8d
mov edx, esi
mov ecx, 0xa22
call fcn.14001dfdc
mov byte [rsp + 0x65], al
mov eax, 2
test byte [r13 + 8], al
je 0x140036548
test byte [r13 + 0xc], r14b
je 0x140036548
mov bl, r14b
xor esi, esi
jmp 0x14003654d
mov r14d, 1
cmp byte [rsp + 0x5c], r12b
jne 0x140036501
test bl, bl
je 0x140036501
mov r12b, r14b
jmp 0x140036507
xor esi, esi
mov bl, sil
mov dl, r14b
mov ecx, 0x20d
call fcn.14001501c
test al, al
jne 0x140036572
mov dl, r14b
mov ecx, 0x273
call fcn.14001501c
test al, al
jne 0x140036572
mov r14b, sil
test bl, bl
je 0x1400365a0
xor edx, edx
mov ecx, 0x27c
call fcn.14001501c
test al, al
jne 0x140036596
xor edx, edx
mov ecx, 0x27b
call fcn.14001501c
test al, al
je 0x1400365a0
mov eax, 1
mov sil, al
jmp 0x1400365a5
mov eax, 1
mov r8d, eax
mov edx, dword [rsp + 0x70]
mov ecx, 0x20e
call fcn.14001dfdc
xor ecx, ecx
test al, al
jne 0x1400365e1
test bl, bl
je 0x1400365d8
lea r8d, [rcx + 1]
mov edx, dword [rsp + 0x70]
mov ecx, 0x27a
call fcn.14001dfdc
xor ecx, ecx
test al, al
jne 0x1400365e1
mov bl, cl
mov eax, 1
jmp 0x1400365e8
mov eax, 1
mov bl, al
mov dl, al
mov ecx, 0x201
call fcn.14001501c
xor ecx, ecx
test al, al
je 0x1400366b0
neg byte [rsp + 0x53]
sbb edx, edx
and edx, 0xc
add edx, 0x200000
mov eax, 0x200004
cmp byte [rsp + 0x55], cl
cmovne edx, eax
or edx, edi
mov rcx, r15
call fcn.140034e90
xor r9d, r9d
mov r14b, byte [rsp + 0x52]
mov r10d, 1
mov cl, byte [rsp + 0x51]
mov dl, byte [rsp + 0x50]
mov eax, dword [r15 + 0x5c]
cmp dword [r15 + 0x58], eax
je 0x14003664a
test dl, dl
mov al, r10b
jne 0x14003664d
mov al, r9b
or cl, al
mov byte [rsp + 0x51], cl
mov r12, r9
mov esi, r9d
mov eax, dword [rsp + 0x70]
cmp dword [r13 + 0x407c], eax
jne 0x140036d64
test r14b, r14b
je 0x140036d05
cmp byte [rsp + 0x5c], r9b
jne 0x140036d4e
test dword [rsp + 0x68], 0x100000
je 0x140036c34
lea r12, [0x1401ee59c]
mov byte [rsp + 0x54], 1
lea rdx, [r15 + 0x54]
xor r9d, r9d
lea r8, [rbp + 0x30]
mov rcx, r15
call fcn.14003929c
jmp 0x140036d15
mov edx, 1
mov ecx, 0x202
call fcn.14001501c
xor ecx, ecx
test al, al
je 0x1400366de
neg byte [rsp + 0x53]
sbb edx, edx
and edx, 0xc
add edx, 0x200001
mov eax, 0x200005
jmp 0x140036612
mov edx, 1
mov ecx, 0x203
call fcn.14001501c
xor ecx, ecx
test al, al
je 0x14003673a
cmp byte [rsp + 0x60], cl
je 0x14003673a
cmp byte [r13 + 0x114], cl
je 0x140036729
mov rbx, qword [rbp - 0x68]
movss xmm1, dword [rbx + 0x90]
subss xmm1, dword [r13 + 0x3d50]
maxss xmm1, xmm9
mov rcx, rbx
call fcn.14001d844
jmp 0x140036623
movzx eax, byte [rsp + 0x55]
lea edx, [rax*4 + 0x200002]
jmp 0x140036619
mov edx, 1
mov ecx, 0x204
call fcn.14001501c
xor ecx, ecx
test al, al
je 0x140036792
cmp byte [rsp + 0x60], cl
je 0x140036792
cmp byte [r13 + 0x114], cl
je 0x140036781
call fcn.1400136c0
movss xmm1, dword [r13 + 0x3d50]
mov rax, qword [rbp - 0x68]
addss xmm1, dword [rax + 0x90]
minss xmm1, xmm0
mov rcx, rax
jmp 0x14003671f
movzx eax, byte [rsp + 0x55]
lea edx, [rax*4 + 0x200003]
jmp 0x140036619
mov edx, 1
mov ecx, 0x205
call fcn.14001501c
xor ecx, ecx
test al, al
je 0x1400367d8
cmp byte [rsp + 0x60], cl
je 0x1400367d8
or edi, 0x20000e
mov edx, edi
mov rcx, r15
call fcn.140034e90
movd xmm0, dword [rbp - 0x60]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r13 + 0x3d50]
subss xmm8, xmm0
jmp 0x140036623
mov edx, 1
mov ecx, 0x206
call fcn.14001501c
xor ecx, ecx
test al, al
je 0x14003681e
cmp byte [rsp + 0x60], cl
je 0x14003681e
or edi, 0x20000f
mov edx, edi
mov rcx, r15
call fcn.140034e90
movd xmm0, dword [rbp - 0x60]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r13 + 0x3d50]
addss xmm8, xmm0
jmp 0x140036623
mov edx, 1
mov ecx, 0x207
call fcn.14001501c
test al, al
je 0x14003684b
mov al, byte [r13 + 0x114]
neg al
mov eax, 0x200004
sbb edx, edx
and edx, 2
add edx, eax
jmp 0x140036619
mov edx, 1
mov ecx, 0x208
call fcn.14001501c
test al, al
je 0x14003686e
mov al, byte [r13 + 0x114]
neg al
mov eax, 0x200005
jmp 0x14003683f
mov edx, 1
mov ecx, 0x20a
call fcn.14001501c
xor ecx, ecx
test al, al
je 0x1400368b9
cmp byte [rsp + 0x5c], cl
jne 0x1400368b9
cmp byte [rsp + 0x6c], cl
jne 0x1400368b9
mov eax, dword [r15 + 0x5c]
cmp dword [r15 + 0x58], eax
jne 0x1400368ac
cmp byte [rsp + 0x53], cl
je 0x1400368ac
mov edx, 0x60000d
mov rcx, r15
call fcn.140034e90
or edi, 0x200008
mov edx, edi
jmp 0x14003661b
mov edx, 1
mov ecx, 0x20b
call fcn.14001501c
xor r9d, r9d
mov r8d, dword [rsp + 0x5c]
test al, al
je 0x140036927
test r8b, r8b
jne 0x140036927
mov eax, dword [r15 + 0x5c]
cmp dword [r15 + 0x58], eax
jne 0x14003691f
cmp byte [rsp + 0x53], r9b
je 0x1400368f1
mov edx, 0x60000c
jmp 0x140036917
cmp byte [rbp - 0x78], r9b
je 0x14003691f
cmp byte [r13 + 0x117], r9b
je 0x14003691f
cmp byte [r13 + 0x116], r9b
jne 0x14003691f
cmp byte [r13 + 0x114], r9b
jne 0x14003691f
mov edx, 0x600004
mov rcx, r15
call fcn.140034e90
or edi, 0x200009
jmp 0x1400368b2
test r14b, r14b
jne 0x140036b9d
test sil, sil
jne 0x140036b9d
test bl, bl
je 0x140036991
test dword [rsp + 0x68], 0x100000
je 0x14003696f
mov rax, qword [rsp + 0x78]
mov al, byte [rax]
test al, al
jne 0x140036961
mov byte [rsp + 0x51], r9b
mov byte [rsp + 0x50], r9b
mov byte [rsp + 0x57], 1
setne r14b
mov byte [rsp + 0x52], r14b
jmp 0x14003662b
mov r10d, 1
mov r14b, r10b
mov byte [rsp + 0x52], r10b
mov byte [rsp + 0x57], r10b
mov cl, r9b
mov dl, r9b
mov byte [rsp + 0x50], dl
jmp 0x140036639
movzx eax, byte [rbp - 0x77]
test al, al
jne 0x140036b79
test r12b, r12b
jne 0x140036b79
cmp byte [rsp + 0x65], r9b
je 0x1400369d8
mov r10d, 1
mov byte [r15 + 0x1650], r10b
mov eax, dword [r15 + 0xc]
mov byte [r15 + 0x6a], r9b
mov dword [r15 + 0x54], eax
mov dword [r15 + 0x5c], eax
mov dword [r15 + 0x58], r9d
mov r14b, byte [rsp + 0x52]
jmp 0x140036631
mov r12b, byte [rsp + 0x6c]
test r12b, r12b
jne 0x140036ac5
cmp byte [rbp - 0x76], r9b
jne 0x140036ac5
cmp byte [rsp + 0x64], r9b
je 0x140036626
call fcn.1400128f8
mov rbx, rax
xor r9d, r9d
test rax, rax
je 0x140036626
mov rcx, rax
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
movsxd rcx, eax
lea rcx, [rcx*4 + 4]
call fcn.14001615c
mov rsi, rax
mov qword [rbp - 0x60], rax
xor r12d, r12d
mov edi, r12d
cmp byte [rbx], r12b
je 0x140036a93
mov r14, rax
mov esi, dword [rsp + 0x68]
mov r15, qword [rbp - 0x38]
xor r8d, r8d
mov rdx, rbx
lea rcx, [rbp + 0x30]
call fcn.140014240
movsxd rcx, eax
add rbx, rcx
mov byte [rsp + 0x28], 1
mov qword [rsp + 0x20], r15
mov r9, qword [rbp - 0x48]
mov r8d, esi
lea rdx, [rbp + 0x30]
mov rcx, r13
call fcn.140034b2c
test al, al
je 0x140036a86
mov eax, dword [rbp + 0x30]
mov dword [r14], eax
inc edi
add r14, 4
cmp byte [rbx], r12b
jne 0x140036a44
mov r15, qword [rbp - 0x80]
mov rsi, qword [rbp - 0x60]
movsxd rax, edi
mov dword [rsi + rax*4], r12d
test edi, edi
jle 0x140036ab8
lea rdx, [r15 + 0x54]
mov r9d, edi
mov r8, rsi
mov rcx, r15
call fcn.14003920c
mov byte [r15 + 0x1650], 1
mov rcx, rsi
call fcn.1400161ac
jmp 0x140036623
cmp qword [r13 + 0xb0], r9
je 0x140036b39
mov ecx, dword [r15 + 0x58]
mov eax, dword [r15 + 0x5c]
cmp ecx, eax
je 0x140036ae4
mov edx, eax
cmovl edx, ecx
cmovge eax, ecx
jmp 0x140036aeb
mov edx, r9d
mov eax, dword [r15 + 0xc]
movsxd r14, eax
mov rax, qword [r15 + 0x20]
movsxd rsi, edx
lea rdx, [rax + r14*4]
lea rcx, [rax + rsi*4]
call fcn.140014500
lea ebx, [rax + 1]
movsxd rcx, ebx
call fcn.14001615c
mov rdi, rax
mov rcx, qword [r15 + 0x20]
lea r9, [rcx + r14*4]
lea r8, [rcx + rsi*4]
mov edx, ebx
mov rcx, rax
call fcn.1400145e8
mov rcx, rdi
call fcn.14001ce14
mov rcx, rdi
call fcn.1400161ac
xor r9d, r9d
test r12b, r12b
je 0x140036626
mov eax, dword [r15 + 0x5c]
cmp dword [r15 + 0x58], eax
jne 0x140036b60
mov dword [r15 + 0x58], r9d
mov eax, dword [r15 + 0xc]
mov dword [r15 + 0x5c], eax
mov dword [r15 + 0x54], eax
mov byte [r15 + 0x6a], r9b
mov byte [r15 + 0x1650], 1
lea rdx, [r15 + 0x54]
mov rcx, r15
call fcn.140038534
jmp 0x140036623
mov edx, eax
xor edx, 1
add edx, 0x20000a
mov rcx, r15
call fcn.140034e90
mov eax, dword [r15 + 0x54]
mov dword [r15 + 0x5c], eax
mov dword [r15 + 0x58], eax
jmp 0x140036623
mov edx, dword [rsp + 0x68]
mov eax, edx
shr eax, 0xb
mov r10d, 1
and al, r10b
mov ecx, dword [rsp + 0x60]
test cl, cl
je 0x140036bcf
test sil, sil
jne 0x140036bcf
mov cl, byte [r13 + 0x114]
test al, al
je 0x140036bec
test cl, cl
jne 0x140036bf0
mov ecx, dword [rsp + 0x60]
mov byte [rsp + 0x58], r10b
cmp byte [r13 + 0x5c], r9b
je 0x140036be2
test cl, cl
je 0x1400369ba
mov byte [rsp + 0x57], r10b
jmp 0x1400369ce
test cl, cl
jne 0x140036bcb
test r8b, r8b
jne 0x1400369ce
mov dword [rbp + 0x30], 0xa
mov byte [rsp + 0x28], r10b
mov rax, qword [rbp - 0x38]
mov qword [rsp + 0x20], rax
mov r9, qword [rbp - 0x48]
mov r8d, edx
lea rdx, [rbp + 0x30]
mov rcx, r13
call fcn.140034b2c
xor r9d, r9d
test al, al
je 0x140036626
mov edx, dword [rbp + 0x30]
jmp 0x14003661b
mov rdx, qword [r15 + 0x40]
mov rcx, qword [rsp + 0x78]
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
xor ecx, ecx
test eax, eax
je 0x140036d15
mov r12, qword [r15 + 0x40]
mov qword [rbp + 0x30], r12
mov esi, dword [r15 + 0x38]
lea eax, [rcx + 1]
sub esi, eax
mov byte [rsp + 0x54], al
mov qword [rbp - 0x60], rcx
mov ebx, ecx
mov edi, ecx
mov qword [rbp - 0x58], rcx
test esi, esi
jle 0x140036cd9
movsxd rax, esi
add r12, rax
mov rdx, r12
mov rcx, qword [rbp + 0x30]
call fcn.1400144ac
lea ebx, [rax + 1]
xor eax, eax
test ebx, ebx
jle 0x140036cbb
mov r14d, ebx
lea ecx, [rdi + 8]
cmp ebx, ecx
cmovl r14d, ecx
test r14d, r14d
jle 0x140036cb6
movsxd rcx, r14d
shl rcx, 2
call fcn.14001615c
mov rdi, rax
mov qword [rbp - 0x58], rax
mov dword [rbp - 0x5c], r14d
xor eax, eax
mov r14b, byte [rsp + 0x52]
mov dword [rbp - 0x60], ebx
mov qword [rsp + 0x20], rax
mov r9, r12
mov r12, qword [rbp + 0x30]
mov r8, r12
mov edx, ebx
mov rcx, rdi
call fcn.140014558
xor ecx, ecx
lea eax, [rbx - 1]
mov r9d, ecx
test esi, esi
cmovg r9d, eax
lea rdx, [r15 + 0x54]
mov r8, rdi
mov rcx, r15
call fcn.14003929c
nop
test rdi, rdi
je 0x140036d03
mov rcx, rdi
call fcn.1400161ac
nop
jmp 0x140036d15
mov byte [rsp + 0x54], r9b
cmp byte [rsp + 0x5c], r9b
jne 0x140036e2c
mov byte [r15 + 0x48], 1
mov edx, dword [r15 + 0x18]
lea edx, [rdx*4 + 1]
lea rcx, [r15 + 0x28]
call fcn.1400227f8
xor r9d, r9d
mov r8, qword [r15 + 0x20]
mov edx, dword [r15 + 0x28]
mov rcx, qword [r15 + 0x30]
call fcn.1400145e8
xor r9d, r9d
test r14b, r14b
je 0x140036e2c
cmp byte [rsp + 0x58], r9b
je 0x140036d64
mov r14d, dword [rsp + 0x68]
test r14b, 0x20
jne 0x140036e31
mov ebx, dword [rsp + 0x5c]
mov rdi, qword [rsp + 0x78]
mov r14d, dword [rsp + 0x70]
cmp dword [r13 + 0x6550], r14d
jne 0x140036dc9
cmp dword [r13 + 0x407c], r14d
je 0x140036dc2
call fcn.140014b3c
xor r9d, r9d
test al, al
je 0x140036dc2
test bl, bl
jne 0x140036dc2
mov rdx, rdi
mov rcx, qword [r13 + 0x6560]
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
xor r9d, r9d
test eax, eax
je 0x140036dc2
mov r12, qword [r13 + 0x6560]
mov esi, dword [r13 + 0x6558]
lea eax, [r9 + 1]
sub esi, eax
mov byte [rsp + 0x54], al
mov dword [r13 + 0x6550], r9d
test r12, r12
je 0x140037104
cmp byte [rbp - 0x24], r9b
je 0x1400370e8
mov qword [rbp - 0x10], r13
mov dword [rbp - 8], 0x40000
mov eax, dword [rsp + 0x68]
mov dword [rbp - 4], eax
mov qword [rbp + 0x10], rdi
mov dword [rbp + 0x18], esi
lea eax, [rsi + 1]
cmp dword [rbp - 0x50], eax
cmovge eax, dword [rbp - 0x50]
mov dword [rbp + 0x1c], eax
mov rax, qword [rbp - 0x38]
mov qword [rbp], rax
lea rcx, [rbp - 0x10]
call qword [rbp - 0x48]
mov rdi, qword [rbp + 0x10]
mov qword [rsp + 0x78], rdi
mov ecx, dword [rbp + 0x1c]
lea esi, [rcx - 1]
cmp dword [rbp + 0x18], esi
cmovl esi, dword [rbp + 0x18]
jmp 0x1400370eb
mov r14d, dword [rsp + 0x68]
test r14d, 0x801c0
je 0x1400370ae
mov edi, r9d
mov ebx, 0x40
test bl, r14b
je 0x140036e6a
xor r8d, r8d
mov edx, dword [rsp + 0x70]
mov ecx, 0x200
call fcn.14001dfdc
xor r9d, r9d
test al, al
je 0x140036e6a
mov edi, 0x200
jmp 0x140036ed3
test r14b, r14b
jns 0x140036eb2
mov ebx, 1
mov dl, bl
mov ecx, 0x203
call fcn.14001501c
xor r9d, r9d
test al, al
je 0x140036e93
mov ebx, 0x80
mov edi, 0x203
jmp 0x140036ed3
mov dl, bl
mov ecx, 0x204
call fcn.14001501c
xor r9d, r9d
test al, al
je 0x140036eb2
mov ebx, 0x80
mov edi, 0x204
jmp 0x140036ed3
mov ebx, 0x80000
test ebx, r14d
je 0x140036ec5
cmp byte [r15 + 0x1652], r9b
jne 0x140036ed3
mov eax, 0x100
test eax, r14d
mov ebx, r9d
cmovne ebx, eax
test ebx, ebx
je 0x1400370ae
mov qword [rbp - 0x10], r13
mov dword [rbp - 8], ebx
mov dword [rbp - 4], r14d
mov rax, qword [rbp - 0x38]
mov qword [rbp], rax
cmp byte [rsp + 0x5c], r9b
mov rax, qword [rsp + 0x78]
jne 0x140036efe
mov rax, qword [r15 + 0x30]
mov dword [rbp + 0xc], edi
mov qword [rbp + 0x10], rax
mov eax, dword [r15 + 0x10]
mov dword [rbp + 0x18], eax
mov eax, dword [r15 + 0x4c]
mov dword [rbp + 0x1c], eax
mov byte [rbp + 0x20], r9b
mov rbx, qword [r15 + 0x20]
movsxd rax, dword [r15 + 0x54]
lea rdx, [rbx + rax*4]
mov rcx, rbx
call fcn.140014500
mov edi, eax
mov dword [rbp + 0x24], eax
movsxd rdx, dword [r15 + 0x58]
lea rdx, [rbx + rdx*4]
mov rcx, rbx
call fcn.140014500
mov r14d, eax
mov dword [rbp + 0x28], eax
movsxd rdx, dword [r15 + 0x5c]
lea rdx, [rbx + rdx*4]
mov rcx, rbx
call fcn.140014500
mov dword [rbp + 0x30], eax
mov dword [rbp + 0x2c], eax
lea rcx, [rbp - 0x10]
call qword [rbp - 0x48]
mov bl, byte [rbp + 0x20]
movsxd rcx, dword [rbp + 0x24]
cmp ecx, edi
jne 0x140036f75
xor r9d, r9d
test bl, bl
je 0x140036f96
mov rdx, rcx
mov rcx, qword [rbp + 0x10]
add rdx, rcx
call fcn.1400144ac
mov dword [r15 + 0x54], eax
mov byte [r15 + 0x1650], 1
mov ecx, dword [rbp + 0x24]
xor r9d, r9d
movsxd rax, dword [rbp + 0x28]
cmp eax, r14d
jne 0x140036fa3
test bl, bl
je 0x140036fc6
cmp eax, ecx
jne 0x140036fad
mov ecx, dword [r15 + 0x54]
jmp 0x140036fbf
mov rcx, qword [rbp + 0x10]
lea rdx, [rcx + rax]
call fcn.1400144ac
mov ecx, eax
mov eax, dword [rbp + 0x28]
mov dword [r15 + 0x58], ecx
xor r9d, r9d
movsxd rcx, dword [rbp + 0x2c]
cmp ecx, dword [rbp + 0x30]
jne 0x140036fd7
test bl, bl
je 0x1400370ae
cmp ecx, eax
jne 0x140036fe1
mov eax, dword [r15 + 0x58]
jmp 0x140036ff3
mov rdx, rcx
mov rcx, qword [rbp + 0x10]
add rdx, rcx
call fcn.1400144ac
xor r9d, r9d
mov dword [r15 + 0x5c], eax
test bl, bl
je 0x1400370ae
call fcn.140012d54
xor edi, edi
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rdi
lea rcx, [0x1401ef7c0]
mov qword [rsp + 0x28], rcx
movss dword [rsp + 0x20], xmm10
movaps xmm3, xmm6
movss xmm2, dword [rax + 0x14]
lea rdx, [rbp + 0x30]
mov rcx, rax
call fcn.1400260f8
movaps xmm0, xmm9
divss xmm0, dword [rax]
cvttss2si ebx, xmm0
mov r8d, dword [rbp + 0x18]
mov rdx, qword [rbp + 0x10]
mov rcx, r15
call fcn.140034d20
mov edx, dword [rbp + 0x18]
mov eax, dword [rbp - 0x18]
cmp edx, eax
jle 0x140037070
cmp byte [rbp - 0x24], dil
je 0x140037070
lea rcx, [r15 + 0x18]
sub edx, eax
add edx, dword [rcx]
call fcn.14002293c
add dword [r15 + 0x54], ebx
add dword [r15 + 0x58], ebx
add dword [r15 + 0x5c], ebx
mov qword [rsp + 0x20], rdi
xor r9d, r9d
mov r8, qword [rbp + 0x10]
mov edx, dword [r15 + 0x18]
mov rcx, qword [r15 + 0x20]
call fcn.140014558
mov dword [r15 + 0xc], eax
mov eax, dword [rbp + 0x18]
mov dword [r15 + 0x10], eax
mov dword [r15 + 0x164c], 0xbe99999a
xor r9d, r9d
mov ebx, dword [rsp + 0x5c]
mov rdi, qword [rsp + 0x78]
test bl, bl
jne 0x140036d6d
mov rdx, rdi
mov rcx, qword [r15 + 0x30]
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
xor r9d, r9d
test eax, eax
je 0x140036d6d
mov r12, qword [r15 + 0x30]
mov esi, dword [r15 + 0x10]
mov byte [rsp + 0x54], 1
jmp 0x140036d6d
mov ecx, dword [rbp - 0x50]
lea eax, [rsi + 1]
cmp eax, ecx
cmovl ecx, eax
movsxd r8, ecx
mov rdx, r12
mov rcx, rdi
call fcn.14001420c
xor r9d, r9d
cmp dword [r13 + 0x407c], r14d
jne 0x14003711d
cmp byte [rsp + 0x57], r9b
je 0x1400371b9
call fcn.14000fe1c
mov edi, 1
movss xmm13, dword [0x1401ed7a4]
mov r12d, dword [rsp + 0x60]
xor ebx, ebx
test r12b, r12b
jne 0x140037174
xor r8d, r8d
mov edx, r14d
lea rcx, [rbp + 0x50]
call fcn.14001b384
movss xmm6, dword [r13 + 0x392c]
movaps xmm1, xmm13
lea ecx, [rbx + 8]
call fcn.140012ad8
movss dword [rsp + 0x20], xmm6
mov r9b, dil
mov r8d, eax
mov rdx, qword [rbp + 0x58]
mov rcx, qword [rbp + 0x40]
call fcn.14001aedc
movss xmm0, dword [rbp + 0x50]
movss dword [rbp + 0x60], xmm0
movss xmm1, dword [rbp + 0x54]
movss dword [rbp + 0x64], xmm1
movss xmm2, dword [rbp + 0x58]
movss dword [rbp + 0x68], xmm2
movaps xmm0, xmm1
addss xmm0, xmm7
movss dword [rbp + 0x6c], xmm0
test r12b, r12b
je 0x1400371ca
mov rax, qword [rbp - 0x68]
movss xmm0, dword [rax + 0x110]
movss xmm1, dword [rax + 0x114]
jmp 0x1400371e1
mov edi, 1
mov dword [r13 + 0x6a10], edi
jmp 0x140037122
movss xmm0, dword [rbp + 0x50]
addss xmm0, dword [r13 + 0x3924]
addss xmm1, dword [r13 + 0x3928]
movss dword [rbp + 0x38], xmm0
movss dword [rbp + 0x3c], xmm1
movaps xmm15, xmm9
movaps xmm10, xmm9
cmp byte [rbp - 0x75], bl
je 0x140037201
mov rdi, qword [r15 + 0x30]
mov qword [rsp + 0x78], rdi
mov rsi, rbx
mov qword [rbp - 0x48], rbx
cmp byte [rsp + 0x56], bl
je 0x14003722c
mov rbx, qword [rbp - 0x70]
mov qword [rsp + 0x78], rbx
mov rcx, rbx
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
lea rsi, [rbx + rax]
mov qword [rbp - 0x48], rsi
movss xmm2, dword [rbp + 0x58]
subss xmm2, dword [rbp + 0x50]
movss xmm3, dword [0x140377dd0]
movss xmm14, dword [0x1401ef658]
addss xmm3, xmm14
mov ebx, 0x1505
mov r8d, ebx
lea rdx, [0x1401f3dcd]
lea rcx, [0x1401f3dc0]
mov r12d, 1
imul r8d, r8d, 0x21
movzx eax, byte [rcx]
xor r8d, eax
add rcx, r12
cmp rcx, rdx
jne 0x140037263
movaps xmm0, xmm9
unpcklps xmm0, xmm2
movsd qword [rsp + 0x20], xmm0
mov edx, r14d
mov rdi, qword [rbp + 0x70]
mov rcx, rdi
call fcn.14002daf0
mov qword [rbp - 0x38], rax
lea rcx, [0x1401f3dde]
lea r8, str.input_text_col
mov r12d, dword [rsp + 0x60]
mov eax, 1
imul ebx, ebx, 0x21
movzx edx, byte [r8]
xor ebx, edx
add r8, rax
cmp r8, rcx
jne 0x1400372ad
movaps xmm3, xmm14
mov r8d, ebx
mov edx, r14d
mov rcx, rdi
call fcn.140033f0c
mov rdi, rax
call fcn.1400137f8
cmp byte [rsp + 0x50], 0
je 0x1400372e7
add rax, 0x26c
jmp 0x1400372ed
add rax, 0xfc
mov rdx, rax
mov rcx, rdi
call fcn.14003379c
mov rax, qword [rdi]
mov rbx, qword [rax + 8]
call fcn.140012f48
movss xmm1, dword [rax + 0x10]
mov rcx, rdi
call rbx
mov al, byte [rsp + 0x50]
xor r11d, r11d
mov dl, byte [rsp + 0x51]
test al, al
jne 0x1400374ee
test dl, dl
jne 0x1400374ee
mov rbx, qword [rsp + 0x78]
test r12b, r12b
je 0x140037360
lea rdx, [rbp - 0x48]
mov rcx, rbx
call fcn.140034a0c
movd xmm10, eax
cvtdq2ps xmm10, xmm10
mulss xmm10, dword [r13 + 0x3d50]
movaps xmm15, xmm11
mov rsi, qword [rbp - 0x48]
mov dil, byte [rsp + 0x56]
jmp 0x140037396
mov dil, byte [rsp + 0x56]
test dil, dil
jne 0x140037388
cmp dword [r13 + 0x407c], r14d
jne 0x14003737c
movsxd rsi, dword [r15 + 0x10]
add rsi, rbx
jmp 0x140037388
mov rcx, rbx
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
lea rsi, [rbx + rax]
mov rax, rsi
sub rax, rbx
cmp rax, 0x200000
jge 0x1400373f0
movzx ecx, dil
add ecx, ecx
movaps xmm1, xmm13
call fcn.140012ad8
lea rdx, [rbp + 0x60]
xor ecx, ecx
test r12b, r12b
cmovne rdx, rcx
mov qword [rsp + 0x40], rdx
movss dword [rsp + 0x38], xmm9
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x20], eax
lea r9, [rbp + 0x38]
movss xmm2, dword [r13 + 0x3d50]
mov rdx, qword [r13 + 0x3d48]
mov rax, qword [rbp - 0x68]
mov rcx, qword [rax + 0x2a8]
call fcn.140025b38
xor r8d, r8d
mov r15d, dword [rbp - 0x40]
test r15b, r15b
je 0x140037409
test dil, dil
jne 0x140037409
call fcn.14001a318
xor r8d, r8d
test r12b, r12b
je 0x140037480
movss dword [rbp - 0x70], xmm15
addss xmm10, dword [r13 + 0x3928]
movss dword [rbp - 0x6c], xmm10
lea rcx, [rbp - 0x70]
call fcn.14002f3e0
or dword [r13 + 0x49ac], 0x401
call fcn.140010f2c
mov eax, dword [r13 + 0x49d0]
and eax, 0x80
or dword [rbp + 0x98], eax
call fcn.140011408
xor r8d, r8d
cmp dword [r13 + 0x49c8], r8d
jne 0x140037480
mov dword [r13 + 0x49c8], r14d
mov eax, dword [rbp + 0x94]
mov dword [r13 + 0x49cc], eax
mov eax, dword [rbp + 0x98]
mov dword [r13 + 0x49d0], eax
cmp byte [r13 + 0x67f0], r8b
je 0x1400374b5
test r15b, r15b
je 0x140037493
test dil, dil
je 0x1400374b5
lea rdx, [0x1401f3bc4]
lea rcx, [0x1401f3bc8]
call fcn.140015fd8
mov r8, rsi
mov rdx, rbx
lea rcx, [rbp + 0x38]
call fcn.140015e30
movzx ebx, byte [rsp + 0x54]
test bl, bl
je 0x1400374d0
test dword [rsp + 0x68], 0x8000000
jne 0x1400374d0
mov ecx, r14d
call fcn.140016128
mov ecx, 1
call fcn.14001a42c
test byte [rsp + 0x68], 0x20
mov eax, ebx
movzx ecx, byte [rsp + 0x58]
cmovne eax, ecx
jmp 0x140035610
cmp byte [rsp + 0x56], r11b
jne 0x1400374fe
movsxd rsi, dword [r15 + 0x10]
add rsi, qword [rsp + 0x78]
mov r12, qword [r15 + 0x20]
movaps xmm6, xmm9
movaps xmm7, xmm9
mov r10, r11
mov qword [rbp - 0x70], r11
mov r9, r11
mov qword [rbp + 0x70], r11
mov r8d, 0xfffffc18
mov r14d, r8d
mov ecx, r11d
or edi, 0xffffffff
lea ebx, [rdi + 2]
test al, al
je 0x14003753f
movsxd rax, dword [r15 + 0x54]
lea r10, [r12 + rax*4]
mov qword [rbp - 0x70], r10
mov r8d, edi
mov ecx, ebx
test dl, dl
je 0x14003755f
mov eax, dword [r15 + 0x5c]
cmp dword [r15 + 0x58], eax
cmovl eax, dword [r15 + 0x58]
cdqe
lea r9, [r12 + rax*4]
mov qword [rbp + 0x70], r9
mov r14d, edi
add ecx, ebx
movzx eax, byte [rsp + 0x60]
add ecx, eax
mov edi, r11d
mov rax, r12
mov edx, dword [r12]
jmp 0x1400375a7
cmp edx, 0xa
jne 0x1400375a1
add edi, ebx
cmp r8d, 0xffffffff
jne 0x14003758d
cmp rax, r10
jb 0x14003758d
mov r8d, edi
sub ecx, ebx
test ecx, ecx
jle 0x1400375ab
cmp r14d, 0xffffffff
jne 0x1400375a1
cmp rax, r9
jb 0x1400375a1
mov r14d, edi
sub ecx, ebx
test ecx, ecx
jle 0x1400375ab
add rax, 4
mov edx, dword [rax]
test edx, edx
jne 0x140037572
add edi, ebx
mov ebx, edi
cmp r8d, 0xffffffff
cmovne ebx, r8d
cmp r14d, 0xffffffff
cmove r14d, edi
mov rdx, r12
mov rcx, r10
call fcn.1400140ec
xor ecx, ecx
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rcx
mov byte [rsp + 0x20], cl
mov r9, qword [rbp - 0x70]
mov r8, rax
mov rdx, r13
lea rcx, [rbp - 0x48]
call fcn.140034a48
movss xmm12, dword [rax]
movss xmm0, dword [r13 + 0x3d50]
movd xmm11, ebx
cvtdq2ps xmm11, xmm11
mulss xmm11, xmm0
xor r8d, r8d
test r14d, r14d
js 0x14003765c
mov rdx, r12
mov rcx, qword [rbp + 0x70]
call fcn.1400140ec
xor ecx, ecx
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rcx
mov byte [rsp + 0x20], cl
mov r9, qword [rbp + 0x70]
mov r8, rax
mov rdx, r13
lea rcx, [rbp - 0x70]
call fcn.140034a48
movss xmm6, dword [rax]
movss xmm0, dword [r13 + 0x3d50]
movd xmm7, r14d
cvtdq2ps xmm7, xmm7
mulss xmm7, xmm0
xor r8d, r8d
mov ecx, dword [rsp + 0x60]
movss xmm3, dword [rbp - 0x30]
test cl, cl
je 0x14003767b
movd xmm10, edi
cvtdq2ps xmm10, xmm10
mulss xmm10, xmm0
movaps xmm15, xmm3
mov r14b, byte [rsp + 0x50]
test r14b, r14b
je 0x1400377ae
cmp byte [r15 + 0x1650], r8b
je 0x1400377ae
test dword [rsp + 0x68], 0x1000
jne 0x1400376f6
movaps xmm2, xmm3
mulss xmm2, dword [0x1401ef620]
subss xmm3, dword [r13 + 0x3924]
movss xmm1, dword [r15 + 0x50]
comiss xmm1, xmm12
jbe 0x1400376d2
movaps xmm1, xmm12
subss xmm1, xmm2
movaps xmm0, xmm9
maxss xmm0, xmm1
jmp 0x1400376e3
movaps xmm0, xmm12
subss xmm0, xmm3
comiss xmm0, xmm1
jb 0x1400376fa
addss xmm0, xmm2
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [r15 + 0x50], xmm0
jmp 0x1400376fa
mov dword [r15 + 0x50], r8d
test cl, cl
je 0x1400377a7
movaps xmm0, xmm11
subss xmm0, dword [r13 + 0x3d50]
movss xmm3, dword [rbp - 0x2c]
comiss xmm8, xmm0
jbe 0x140037725
movaps xmm8, xmm9
maxss xmm8, xmm0
jmp 0x140037755
movss xmm2, dword [r13 + 0x3928]
addss xmm2, xmm2
movaps xmm1, xmm3
subss xmm1, xmm2
movaps xmm0, xmm11
subss xmm0, xmm1
comiss xmm0, xmm8
jb 0x140037755
movaps xmm8, xmm11
subss xmm8, xmm3
addss xmm8, xmm2
movss xmm2, dword [r13 + 0x3928]
comiss xmm9, xmm8
jbe 0x14003776a
movaps xmm2, xmm9
jmp 0x140037781
addss xmm2, xmm2
addss xmm2, xmm10
subss xmm2, xmm3
maxss xmm2, xmm9
minss xmm2, xmm8
mov rax, qword [rbp - 0x68]
movss xmm0, dword [rax + 0x90]
subss xmm0, xmm2
movss xmm1, dword [rbp + 0x3c]
addss xmm1, xmm0
movss dword [rbp + 0x3c], xmm1
movss dword [rax + 0x90], xmm2
mov byte [r15 + 0x1650], r8b
movss xmm8, dword [r15 + 0x50]
cmp byte [rsp + 0x51], r8b
je 0x1400379c6
mov edx, dword [r15 + 0x5c]
mov ecx, dword [r15 + 0x58]
mov eax, edx
cmp ecx, edx
cmovl eax, ecx
cdqe
lea rbx, [r12 + rax*4]
cmovge edx, ecx
movsxd rax, edx
lea rdi, [r12 + rax*4]
test r14b, r14b
je 0x1400377e9
movaps xmm1, xmm13
jmp 0x1400377f1
movss xmm1, dword [0x1401ef63c]
mov ecx, Ordinal_50
call fcn.140012ad8
mov r14d, eax
mov r12d, dword [rsp + 0x60]
xor r8d, r8d
test r12b, r12b
je 0x140037813
movss dword [rbp - 0x28], xmm9
jmp 0x14003781c
movss xmm9, dword [0x1401ed6d8]
addss xmm6, dword [rbp + 0x38]
subss xmm6, xmm8
addss xmm7, dword [rbp + 0x3c]
xorps xmm0, xmm0
subss xmm7, xmm0
cmp rbx, rdi
jae 0x140037a67
movss xmm3, dword [rbp + 0x6c]
movss xmm4, dword [rbp + 0x64]
xorps xmm14, xmm14
movss xmm13, dword [rbp - 0x28]
mov r12, qword [rbp - 0x68]
xor r15d, r15d
movaps xmm0, xmm3
addss xmm0, dword [r13 + 0x3d50]
comiss xmm7, xmm0
ja 0x1400379a4
comiss xmm4, xmm7
ja 0x1400378c5
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], r15
mov byte [rsp + 0x20], r15b
mov r9, rdi
mov r8, rbx
mov rdx, r13
lea rcx, [rbp - 0x70]
call fcn.140034a48
movss xmm0, dword [rbp - 0x70]
comiss xmm14, xmm0
jb 0x1400378ec
mov rax, qword [r13 + 0x3d48]
cmp dword [rax], 0x20
jle 0x1400378cf
mov rax, qword [rax + 8]
movss xmm0, dword [rax + 0x80]
jmp 0x1400378d4
mov eax, dword [rbx]
add rbx, 4
cmp eax, 0xa
je 0x140037988
cmp rbx, rdi
jb 0x1400378b6
jmp 0x140037988
movss xmm0, dword [rax + 0x10]
mulss xmm0, dword [0x1401ef638]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp - 0x70], xmm0
movaps xmm2, xmm6
addss xmm2, xmm0
movaps xmm0, xmm7
addss xmm0, xmm9
addss xmm6, xmm14
movaps xmm1, xmm13
subss xmm1, dword [r13 + 0x3d50]
addss xmm1, xmm7
maxss xmm6, dword [rbp + 0x60]
movss xmm4, dword [rbp + 0x64]
maxss xmm1, xmm4
movss dword [rbp + 0x70], xmm6
movss dword [rbp + 0x74], xmm1
movss xmm5, dword [rbp + 0x68]
minss xmm2, xmm5
movss xmm3, dword [rbp + 0x6c]
minss xmm0, xmm3
movss dword [rbp + 0x78], xmm2
movss dword [rbp + 0x7c], xmm0
comiss xmm0, xmm4
jbe 0x140037988
comiss xmm3, xmm1
jbe 0x140037988
comiss xmm2, dword [rbp + 0x60]
jbe 0x140037988
comiss xmm5, xmm6
jbe 0x140037988
mov dword [rsp + 0x28], r15d
movss dword [rsp + 0x20], xmm14
mov r9d, r14d
lea r8, [rbp + 0x78]
lea rdx, [rbp + 0x70]
mov rcx, qword [r12 + 0x2a8]
call fcn.140025a50
movss xmm3, dword [rbp + 0x6c]
movss xmm4, dword [rbp + 0x64]
movss xmm6, dword [rbp + 0x38]
subss xmm6, xmm8
addss xmm7, dword [r13 + 0x3d50]
cmp rbx, rdi
jb 0x140037856
movss xmm13, dword [0x1401ed7a4]
movss xmm14, dword [0x1401ef658]
xorps xmm9, xmm9
mov r15, qword [rbp - 0x80]
mov r14b, byte [rsp + 0x50]
xor r8d, r8d
mov r12d, dword [rsp + 0x60]
mov rbx, qword [rsp + 0x78]
test r12b, r12b
jne 0x1400379e7
mov rax, rsi
sub rax, rbx
cmp rax, 0x200000
jge 0x140037a75
movzx edi, byte [rsp + 0x56]
mov ecx, edi
add ecx, ecx
movaps xmm1, xmm13
call fcn.140012ad8
movss xmm0, dword [rbp + 0x38]
subss xmm0, xmm8
movss dword [rbp - 0x70], xmm0
movss xmm1, dword [rbp + 0x3c]
subss xmm1, xmm9
movss dword [rbp - 0x6c], xmm1
lea rcx, [rbp + 0x60]
xor edx, edx
test r12b, r12b
cmovne rcx, rdx
mov qword [rsp + 0x40], rcx
movss dword [rsp + 0x38], xmm9
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x20], eax
lea r9, [rbp - 0x70]
movss xmm2, dword [r13 + 0x3d50]
mov rdx, qword [r13 + 0x3d48]
mov rax, qword [rbp - 0x68]
mov rcx, qword [rax + 0x2a8]
call fcn.140025b38
xor r8d, r8d
jmp 0x140037a7a
xorps xmm9, xmm9
mov r14b, byte [rsp + 0x50]
jmp 0x1400379cb
mov dil, byte [rsp + 0x56]
test r14b, r14b
je 0x140037cd3
movss xmm0, dword [r13 + 0x18]
addss xmm0, dword [r15 + 0x164c]
movss dword [r15 + 0x164c], xmm0
cmp byte [r13 + 0x5b], r8b
je 0x140037ac6
comiss xmm9, xmm0
jae 0x140037ac6
movss xmm1, dword [0x1401f3c8c]
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_fmodf]
comiss xmm14, xmm0
jae 0x140037ac6
xor eax, eax
mov dil, al
lea r15d, [rax + 1]
jmp 0x140037acf
mov r15d, 1
mov dil, r15b
addss xmm12, dword [rbp + 0x38]
subss xmm12, xmm8
cvttss2si eax, xmm12
movd xmm8, eax
cvtdq2ps xmm8, xmm8
addss xmm11, dword [rbp + 0x3c]
subss xmm11, xmm9
cvttss2si eax, xmm11
movd xmm9, eax
cvtdq2ps xmm9, xmm9
movaps xmm7, xmm9
subss xmm7, dword [r13 + 0x3d50]
movss xmm11, dword [0x1401ef638]
addss xmm7, xmm11
xor edx, edx
mov r14, qword [rbp - 0x38]
mov rcx, r14
call fcn.1400338bc
movaps xmm6, xmm0
xor edx, edx
mov rcx, r14
call fcn.1400338a8
subss xmm6, xmm0
movss dword [0x140377dd0], xmm6
mov rax, qword [r14]
mov rbx, qword [rax + 8]
call fcn.140012f48
movss xmm1, dword [rax + 0x10]
mov rcx, r14
call rbx
movaps xmm1, xmm8
subss xmm1, dword [rbp + 0x50]
xor r8d, r8d
mov rcx, r14
call fcn.140033960
xor r8d, r8d
test dil, dil
je 0x140037c7f
movaps xmm0, xmm9
subss xmm0, dword [0x1401ef7cc]
comiss xmm0, dword [rbp + 0x64]
jbe 0x140037c7f
movss xmm0, dword [rbp + 0x6c]
comiss xmm0, xmm7
jbe 0x140037c7f
movaps xmm0, xmm8
addss xmm0, xmm13
comiss xmm0, dword [rbp + 0x60]
jbe 0x140037c7f
movss xmm0, dword [rbp + 0x68]
comiss xmm0, xmm8
jbe 0x140037c7f
mov rax, qword [rbp - 0x68]
mov rdi, qword [rax + 0x2a8]
call fcn.1400137f8
lea rcx, [rax + 0xec]
call fcn.140012aa0
mov ebx, eax
movss xmm7, dword [rbp + 0x4c]
addss xmm7, dword [rbp + 0x44]
movss xmm6, dword [0x140376040]
mulss xmm6, dword [0x1401ef67c]
xor edx, edx
mov rcx, r14
call fcn.1400338a8
addss xmm0, dword [rbp + 0x40]
addss xmm0, xmm13
movss dword [rbp - 0x70], xmm0
mulss xmm7, xmm11
addss xmm7, xmm6
movss dword [rbp - 0x6c], xmm7
movss xmm7, dword [rbp + 0x4c]
addss xmm7, dword [rbp + 0x44]
movss xmm6, dword [0x140376040]
mulss xmm6, dword [0x1401ef67c]
xor edx, edx
mov rcx, r14
call fcn.1400338a8
addss xmm0, dword [rbp + 0x40]
movss dword [rbp - 0x80], xmm0
mulss xmm7, xmm11
subss xmm7, xmm6
movss dword [rbp - 0x7c], xmm7
xor eax, eax
mov dword [rsp + 0x28], eax
xorps xmm0, xmm0
movss dword [rsp + 0x20], xmm0
mov r9d, ebx
lea r8, [rbp - 0x70]
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.140025a50
xor r8d, r8d
mov r14d, dword [rsp + 0x70]
mov rbx, qword [rsp + 0x78]
mov dil, byte [rsp + 0x56]
cmp byte [rsp + 0x5c], r8b
jne 0x1400373f3
mov byte [r13 + 0x6730], r15b
subss xmm8, xmm13
movss xmm0, dword [r13 + 0x3d50]
subss xmm9, xmm0
movss dword [r13 + 0x6734], xmm8
movss dword [r13 + 0x6738], xmm9
movss dword [r13 + 0x673c], xmm0
jmp 0x1400373f3
mov r14d, dword [rsp + 0x70]
jmp 0x1400373f3