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

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x218]
sub rsp, 0x2e0
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
movaps xmmword [rax - 0xc8], xmm14
movaps xmmword [rax - 0xd8], xmm15
mov rax, qword [0x1401cf0c0]
xor rax, rsp
mov qword [rbp + 0x138], rax
mov qword [rsp + 0x78], r8
mov qword [rbp - 0x80], rdx
mov rdi, rcx
mov qword [rbp + 0x10], rcx
mov rsi, qword [0x1401d04d0]
mov rax, qword [rsi + 0x3ed8]
mov ecx, 1
mov byte [rax + 0xb8], cl
mov r14, qword [rsi + 0x3ed8]
mov qword [rbp - 8], r14
xor r13d, r13d
cmp byte [r14 + 0xbb], r13b
jne 0x140054deb
mov ebx, dword [rbp + 0x248]
mov r12d, ebx
shr r12d, 0x1a
and r12b, cl
mov dword [rsp + 0x64], r12d
mov eax, ebx
shr eax, 0xe
and al, cl
mov dword [rsp + 0x68], eax
mov eax, ebx
shr eax, 0xf
and al, cl
mov dword [rbp - 0x60], eax
mov eax, ebx
shr eax, 0x10
not al
and al, cl
mov dword [rbp - 0x78], eax
mov eax, ebx
shr eax, 0x12
and al, cl
mov dword [rbp - 0x70], eax
test r12b, r12b
je 0x140054c45
call fcn.140038d94
mov rdx, rdi
mov rcx, r14
call fcn.14002e250
mov r15d, eax
mov dword [rsp + 0x6c], eax
movss xmm0, dword [0x1401b8bc4]
movss dword [rbp + 4], xmm0
movss dword [rsp + 0x20], xmm0
mov r9d, 1
xor r8d, r8d
mov rdx, rdi
lea rcx, [rbp + 8]
call fcn.140031084
movss xmm15, dword [0x1401b8af8]
test r12b, r12b
je 0x140054c9c
movss xmm0, dword [rsi + 0x3c10]
mulss xmm0, xmm15
jmp 0x140054ca1
movss xmm0, dword [rbp + 0xc]
movss xmm6, dword [rsi + 0x3808]
movaps xmm3, xmm6
addss xmm3, xmm6
addss xmm3, xmm0
call fcn.140038bac
movaps xmm2, xmm0
mov rdx, qword [rbp + 0x240]
mov rdx, qword [rdx]
lea rcx, [rbp - 0x30]
call fcn.140038c1c
xorps xmm12, xmm12
movss xmm0, dword [rbp + 8]
comiss xmm0, xmm12
jbe 0x140054ceb
movaps xmm1, xmm0
addss xmm1, dword [rsi + 0x381c]
jmp 0x140054cee
xorps xmm1, xmm1
movss xmm8, dword [r14 + 0x104]
movaps xmm0, xmm8
movss xmm14, dword [rbp - 0x2c]
addss xmm0, xmm14
movss xmm7, dword [r14 + 0x100]
addss xmm0, xmm12
movaps xmm10, xmm7
movss xmm11, dword [rbp - 0x30]
addss xmm10, xmm11
addss xmm10, xmm12
movss dword [rbp], xmm10
movaps xmm13, xmm8
addss xmm13, xmm12
movss dword [rbp - 0x38], xmm13
movaps xmm9, xmm7
addss xmm9, xmm12
movss dword [rbp + 0x40], xmm9
movss dword [rbp + 0x44], xmm13
movss dword [rbp + 0x48], xmm10
movss dword [rbp + 0x4c], xmm0
movaps xmm2, xmm13
addss xmm2, xmm14
addss xmm1, xmm11
addss xmm1, xmm9
movss dword [rbp + 0xe8], xmm9
movss dword [rbp + 0xec], xmm13
movss dword [rbp + 0xf0], xmm1
movss dword [rbp + 0xf4], xmm2
mov qword [rbp - 0x40], r14
xorps xmm0, xmm0
movups xmmword [rbp + 0xf8], xmm0
subss xmm2, xmm13
subss xmm1, xmm9
lea rcx, [rbp - 0x68]
movss dword [rbp - 0x64], xmm2
movss dword [rbp - 0x68], xmm1
movaps xmm1, xmm6
call fcn.1400387ec
test r12b, r12b
je 0x140054f7f
mov r9d, 0x400
lea r8, [rbp + 0x40]
mov edx, r15d
lea rcx, [rbp + 0xe8]
call fcn.140038958
test al, al
jne 0x140054e4f
call fcn.140038ebc
xor al, al
mov rcx, qword [rbp + 0x138]
xor rcx, rsp
call fcn.140122f80
lea r11, [rsp + 0x2e0]
mov rbx, qword [r11 + 0x58]
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]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov r13d, dword [rsi + 0x4780]
movups xmm0, xmmword [rsi + 0x4778]
movups xmmword [rbp + 0xf8], xmm0
movss dword [r14 + 0x100], xmm7
movss dword [r14 + 0x104], xmm8
lea rdx, [rsi + 0x3914]
mov ecx, 3
call fcn.14002c2ec
movss xmm1, dword [rsi + 0x380c]
mov ecx, 7
call fcn.14002c388
movss xmm1, dword [rsi + 0x3810]
mov ecx, 8
call fcn.14002c388
and dword [rbp - 0x68], 0
and dword [rbp - 0x64], 0
lea rdx, [rbp - 0x68]
call fcn.14002c400
movss xmm1, dword [rbp + 0x4c]
movss xmm13, dword [rbp + 0x44]
movss dword [rbp - 0x38], xmm13
subss xmm1, xmm13
movss xmm6, dword [rbp + 0x48]
movss dword [rbp], xmm6
movaps xmm0, xmm6
movss xmm9, dword [rbp + 0x40]
subss xmm0, xmm9
movss dword [rbp - 0x68], xmm0
movss dword [rbp - 0x64], xmm1
lea r8, [rbp - 0x68]
mov edx, r15d
mov rcx, rdi
call fcn.140031374
mov bl, al
mov ecx, 3
call fcn.14002c460
call fcn.14002c348
test bl, bl
jne 0x140054f22
call fcn.140031554
jmp 0x140054de6
mov rbx, qword [rsi + 0x3ed8]
mov qword [rbp - 0x40], rbx
movsx ecx, word [rbx + 0x15e]
mov eax, dword [rbx + 0x158]
bts ecx, eax
mov word [rbx + 0x15e], cx
movss xmm0, dword [rsi + 0x3804]
addss xmm0, dword [rbx + 0x100]
movss dword [rbx + 0x100], xmm0
movss xmm1, dword [rsi + 0x3808]
addss xmm1, dword [rbx + 0x104]
movss dword [rbx + 0x104], xmm1
subss xmm11, dword [rbx + 0xac]
jmp 0x140054fcc
bt ebx, 0x1c
jb 0x140054fc2
mov r9d, 0x400
lea r8, [rbp + 0x40]
mov edx, r15d
lea rcx, [rbp + 0xe8]
call fcn.140038958
test al, al
je 0x140054deb
movss xmm0, dword [rbp + 0x48]
movss dword [rbp], xmm0
movss xmm13, dword [rbp + 0x44]
movss dword [rbp - 0x38], xmm13
movss xmm9, dword [rbp + 0x40]
mov r13d, dword [rsi + 0x4780]
mov rbx, r14
mov r8d, dword [rsi + 0x477c]
mov edx, r15d
lea rcx, [rbp + 0x40]
call fcn.14002e854
mov cl, al
mov byte [rsp + 0x75], al
xor r8d, r8d
lea edx, [r8 + 1]
test al, al
je 0x140054ff6
mov dword [rsi + 0x4c18], edx
mov rdi, qword [0x1401d04d0]
test r15d, r15d
je 0x140055014
cmp dword [rdi + 0x4c30], r15d
jne 0x140055014
add rdi, 0x4c28
jmp 0x140055017
mov rdi, r8
mov qword [rbp - 0x68], rdi
shr r13d, 8
and r13b, dl
mov eax, dword [rsi + 0x3f38]
mov r9d, 2
cmp eax, r15d
je 0x140055053
cmp dword [rsi + 0x48e0], r15d
jne 0x140055053
test byte [rsi + 0x48ec], dl
jne 0x14005504d
cmp dword [rsi + 0x4904], r9d
jne 0x140055053
mov byte [rsp + 0x52], dl
jmp 0x140055058
mov byte [rsp + 0x52], r8b
test cl, cl
je 0x140055068
cmp byte [rsi + 0x3740], r8b
mov r15b, dl
jne 0x14005506b
mov r15b, r8b
mov byte [rsp + 0x53], r15b
test r12b, r12b
je 0x14005509f
test rdi, rdi
je 0x14005509f
test eax, eax
jne 0x14005509f
lea rdx, str.SCROLLY
mov rcx, rbx
call fcn.14002e250
cmp dword [rsi + 0x3f68], eax
jne 0x14005509c
mov ebx, 1
jmp 0x1400550ac
xor r8d, r8d
mov bl, r8b
test r12b, r12b
je 0x1400550dd
test rdi, rdi
je 0x1400550dd
lea rdx, str.SCROLLY
mov rcx, qword [rbp - 0x40]
call fcn.14002e250
xor r8d, r8d
cmp dword [rsi + 0x3f38], eax
jne 0x1400550dd
lea eax, [r8 + 1]
mov cl, al
mov byte [rsp + 0x51], al
mov byte [rsp + 0x55], r8b
mov byte [rsp + 0x60], r8b
jmp 0x1400550f3
mov byte [rsp + 0x55], r8b
mov byte [rsp + 0x60], r8b
mov cl, r8b
mov byte [rsp + 0x51], cl
test r12b, r12b
je 0x140055102
mov rax, qword [rbp - 0x40]
movss xmm10, dword [rax + 0x88]
jmp 0x14005510f
movss xmm10, dword [0x1401b8bb8]
mov byte [rsp + 0x51], cl
mov edx, 1
test rdi, rdi
je 0x140055126
mov al, r12b
xor al, dl
cmp byte [rdi + 0x6b], al
mov r12b, dl
jne 0x140055129
mov r12b, r8b
test r15b, r15b
jne 0x14005514e
test bl, bl
jne 0x14005514e
cmp byte [rsp + 0x52], r8b
jne 0x14005514e
test r13b, r13b
jne 0x14005514e
mov byte [rsp + 0x54], r8b
test cl, cl
jne 0x140055152
mov byte [rsp + 0x5c], r8b
jmp 0x140055162
mov byte [rsp + 0x54], dl
mov byte [rsp + 0x5c], dl
mov edx, dword [rsp + 0x6c]
cmp dword [rsi + 0x3f38], edx
jne 0x14005516b
test r12b, r12b
je 0x140055395
lea rdi, [rsi + 0x4c28]
mov qword [rbp - 0x68], rdi
mov dword [rdi + 0xe80], 0xbe99999a
or rbx, 0xffffffffffffffff
mov rax, qword [rsp + 0x78]
inc rbx
cmp byte [rax + rbx], r8b
jne 0x140055189
lea r14d, [rbx + 1]
mov ecx, dword [rdi + 0x3c]
cmp r14d, ecx
jle 0x1400551c9
test ecx, ecx
je 0x1400551ad
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x1400551b2
mov eax, 8
mov edx, r14d
cmp eax, r14d
cmovg edx, eax
lea rcx, [rdi + 0x38]
call fcn.14003fdb8
mov rax, qword [rsp + 0x78]
mov dword [rdi + 0x38], r14d
movsxd r8, r14d
mov rdx, rax
mov rcx, qword [rdi + 0x40]
call fcn.140124670
mov r15d, dword [rsp + 0x6c]
cmp dword [rdi + 8], r15d
jne 0x140055218
test r12b, r12b
jne 0x140055218
mov r14d, 1
xor r12d, r12d
cmp dword [rdi + 0x10], ebx
jne 0x14005521b
cmp byte [rdi + 0x48], r12b
je 0x14005521e
movsxd r8, ebx
mov rdx, qword [rsp + 0x78]
mov rcx, qword [rdi + 0x30]
call qword [0x140128d78]
test eax, eax
je 0x14005521e
jmp 0x14005521b
xor r12d, r12d
mov r14b, r12b
mov qword [rbp - 0x20], r12
mov dword [rdi + 8], r15d
mov ecx, dword [rdi + 0x1c]
mov r15d, 0x33
cmp ecx, r15d
jge 0x14005525a
test ecx, ecx
je 0x140055243
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x140055248
mov eax, 8
mov edx, r15d
cmp eax, r15d
cmovg edx, eax
lea rcx, [rdi + 0x18]
call fcn.14003fe3c
mov dword [rdi + 0x18], r15d
mov ecx, dword [rdi + 0x2c]
test ecx, ecx
jns 0x14005527f
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
mov edx, r12d
test eax, eax
cmovg edx, eax
lea rcx, [rdi + 0x28]
call fcn.14003fdb8
mov dword [rdi + 0x28], r12d
mov byte [rdi + 0x48], r12b
lea rax, [rbp - 0x20]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov rbx, qword [rsp + 0x78]
mov r8, rbx
lea edx, [r9 + 0x32]
mov rcx, qword [rdi + 0x20]
call fcn.14002bdf4
mov edx, eax
mov dword [rdi + 0xc], eax
mov ecx, dword [rbp - 0x20]
sub ecx, ebx
mov dword [rdi + 0x10], ecx
xor r8d, r8d
test r14b, r14b
je 0x1400552e7
mov ecx, eax
cmp dword [rdi + 0x54], eax
cmovl ecx, dword [rdi + 0x54]
mov dword [rdi + 0x54], ecx
cmp dword [rdi + 0x58], eax
cmovl eax, dword [rdi + 0x58]
mov dword [rdi + 0x58], eax
cmp dword [rdi + 0x5c], edx
cmovl edx, dword [rdi + 0x5c]
mov dword [rdi + 0x5c], edx
mov ecx, dword [rsp + 0x64]
lea edx, [r8 + 1]
jmp 0x140055330
mov qword [rdi + 0x50], r8
mov dword [rdi + 0xe72], 0x630000
mov dword [rdi + 0xe78], r8d
mov dword [rdi + 0xe7c], 0x3e7
mov qword [rdi + 0x58], r8
mov word [rdi + 0x69], 1
mov dword [rdi + 0x70], r8d
mov byte [rdi + 0x68], r8b
mov edx, 1
mov ecx, dword [rsp + 0x64]
mov al, cl
xor al, dl
mov byte [rdi + 0x6b], al
mov byte [rdi + 0x60], r8b
mov dword [rdi + 0x64], r8d
test cl, cl
jne 0x14005537d
mov ecx, dword [rbp + 0x248]
test cl, 0x10
mov eax, dword [rsp + 0x60]
movzx eax, al
cmovne eax, edx
mov dword [rsp + 0x60], eax
cmp byte [rsp + 0x52], r8b
je 0x140055364
test r14b, r14b
je 0x140055360
test byte [rsi + 0x48ec], 4
jne 0x140055364
mov byte [rsp + 0x60], dl
test r13b, r13b
jne 0x140055379
cmp byte [rsp + 0x53], r8b
je 0x14005537d
cmp byte [rsi + 0xe1c], r8b
je 0x14005537d
mov byte [rsp + 0x60], dl
mov r14, qword [rbp - 8]
mov r15b, byte [rsp + 0x53]
test dword [rbp + 0x248], 0x2000
je 0x140055395
mov byte [rdi + 0x60], dl
mov r12b, byte [rsi + 0x59]
mov byte [rsp + 0x71], r12b
mov r13d, dword [rsp + 0x6c]
mov bl, byte [rsp + 0x54]
cmp dword [rsi + 0x3f38], r13d
je 0x1400553e1
test bl, bl
je 0x1400553d4
mov rdx, r14
mov ecx, r13d
call fcn.14002e48c
mov rdx, r14
mov ecx, r13d
call fcn.14003a1b4
xor edx, edx
mov rcx, r14
call fcn.140035df8
cmp dword [rsi + 0x3f38], r13d
jne 0x1400554f9
xor r14d, r14d
test r15b, r15b
je 0x140055406
mov edx, 0x281
mov rcx, qword [0x1401d04d0]
call fcn.14002af54
mov dword [rax + 4], r13d
mov dword [rax], r13d
mov word [rax + 8], r14w
mov eax, dword [rsi + 0x4748]
or eax, 3
mov dword [rsi + 0x4748], eax
mov r10d, dword [rsp + 0x64]
mov r11d, dword [rbp + 0x248]
test r10b, r10b
jne 0x14005542b
test r11b, r11b
jns 0x140055434
or eax, 0xc
mov dword [rsi + 0x4748], eax
mov edx, 0x207
mov r9, qword [0x1401d04d0]
mov rcx, r9
call fcn.14002af54
mov dword [rax + 4], r13d
mov dword [rax], r13d
mov word [rax + 8], r14w
mov edx, 0x208
mov rcx, r9
call fcn.14002af54
mov dword [rax + 4], r13d
mov dword [rax], r13d
mov word [rax + 8], r14w
test r10b, r10b
je 0x1400554a4
mov edx, 0x205
mov rcx, r9
call fcn.14002af54
mov dword [rax + 4], r13d
mov dword [rax], r13d
mov word [rax + 8], r14w
mov edx, 0x206
mov rcx, r9
call fcn.14002af54
mov dword [rax + 4], r13d
mov dword [rax], r13d
mov word [rax + 8], r14w
test r12b, r12b
je 0x1400554c6
mov edx, 0x4000
mov rcx, qword [0x1401d04d0]
call fcn.14002af54
mov dword [rax + 4], r13d
mov dword [rax], r13d
mov word [rax + 8], r14w
test r11d, 0x440
je 0x1400554df
xor r8d, r8d
mov edx, r13d
mov ecx, 0x200
call fcn.140036c04
cmp dword [rsi + 0x3f38], r13d
jne 0x1400554f9
xor r11d, r11d
test rdi, rdi
jne 0x1400554fc
xor edx, edx
xor ecx, ecx
call fcn.14002e48c
xor r11d, r11d
cmp dword [rsi + 0x3f38], r13d
jne 0x140055520
cmp byte [rsi + 0x3740], r11b
je 0x14005552c
cmp byte [rsp + 0x5c], r11b
jne 0x14005552c
test bl, bl
jne 0x14005552c
mov byte [rsp + 0x55], 1
jmp 0x14005552c
test rdi, rdi
je 0x140055530
cmp byte [rsp + 0x51], r11b
je 0x140055530
mov cl, 1
jmp 0x140055533
mov cl, r11b
mov byte [rsp + 0x50], cl
mov r15d, dword [rsp + 0x60]
test rdi, rdi
je 0x14005555a
mov eax, dword [rdi + 0x5c]
cmp dword [rdi + 0x58], eax
jne 0x14005554e
test r15b, r15b
je 0x14005555a
test cl, cl
je 0x14005555a
mov r8d, 1
jmp 0x14005555d
mov r8b, r11b
mov dword [rsp + 0x58], r8d
movzx r14d, r8b
mov byte [rsp + 0x5c], r11b
mov eax, dword [rsp + 0x68]
test al, al
je 0x140055637
test rdi, rdi
je 0x140055637
test cl, cl
jne 0x14005558d
test r8b, r8b
je 0x140055640
mov qword [rbp - 0x20], r11
mov ecx, dword [rdi + 0x1c]
mov r10d, 0x33
cmp ecx, r10d
jge 0x1400555cb
test ecx, ecx
je 0x1400555ae
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x1400555b3
mov eax, 8
mov edx, r10d
cmp eax, r10d
cmovg edx, eax
lea rcx, [rdi + 0x18]
call fcn.14003fe3c
mov r10d, 0x33
mov dword [rdi + 0x18], r10d
lea rax, [rbp - 0x20]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov rbx, qword [rsp + 0x78]
mov r8, rbx
mov edx, r10d
mov rcx, qword [rdi + 0x20]
call fcn.14002bdf4
mov edx, eax
mov dword [rdi + 0xc], eax
mov ecx, dword [rbp - 0x20]
sub ecx, ebx
mov dword [rdi + 0x10], ecx
mov ecx, eax
cmp dword [rdi + 0x54], eax
cmovl ecx, dword [rdi + 0x54]
mov dword [rdi + 0x54], ecx
mov ecx, eax
cmp dword [rdi + 0x58], eax
cmovl ecx, dword [rdi + 0x58]
mov dword [rdi + 0x58], ecx
cmp dword [rdi + 0x5c], eax
cmovl edx, dword [rdi + 0x5c]
mov dword [rdi + 0x5c], edx
xor r11d, r11d
mov r8d, r11d
cmp ecx, edx
cmovne r8d, r14d
mov dword [rsp + 0x58], r8d
mov cl, byte [rsp + 0x50]
mov eax, dword [rsp + 0x68]
test cl, cl
jne 0x140055649
test r8b, r8b
jne 0x140055649
cmp dword [rsi + 0x3f38], r13d
jne 0x140055663
test al, al
jne 0x140055663
test rdi, rdi
je 0x140055663
cmp byte [rdi + 0x48], r11b
je 0x140055663
mov r14d, 1
mov al, r14b
jmp 0x14005566c
mov al, r11b
mov r14d, 1
mov byte [rsp + 0x76], al
cmp qword [rbp - 0x80], r11
je 0x14005568d
test al, al
je 0x140055680
mov rax, qword [rdi + 0x30]
jmp 0x140055685
mov rax, qword [rsp + 0x78]
cmp byte [rax], r11b
mov al, r14b
je 0x140055690
mov al, r11b
mov byte [rsp + 0x54], al
mov ebx, dword [rbp - 0x60]
test bl, bl
je 0x140055710
test al, al
jne 0x140055710
mov rcx, qword [rsi + 0x3c08]
mov edx, Ordinal_46
call fcn.14004cb88
lea r9, [rsi + 0x5ad0]
mov ecx, dword [rcx + 0x14]
mov dword [r9 + 0x14], ecx
mov rdx, qword [rsi + 0x3c08]
mov r8d, dword [rdx + 0x64]
mov dword [r9 + 0x64], r8d
mov rdx, qword [rsi + 0x3c08]
mov r8d, dword [rdx + 0x68]
mov dword [r9 + 0x68], r8d
mov rdx, qword [rsi + 0x3c08]
mov r8d, dword [rdx + 0x6c]
mov dword [r9 + 0x6c], r8d
mov rdx, qword [rsi + 0x3c08]
mov r8, qword [rdx + 0x40]
mov qword [r9 + 0x40], r8
mov qword [r9 + 0x38], rax
mov eax, dword [rax + 4]
mov dword [r9 + 0x10], eax
mov rcx, r9
call fcn.140036228
xor r11d, r11d
mov dword [rbp - 0x28], r11d
mov dword [rbp - 8], 0xa
cmp dword [rsi + 0x3f38], r13d
jne 0x140055adc
mov eax, dword [rdi + 0x10]
mov dword [rbp - 0x28], eax
mov byte [rdi + 0xe86], r11b
mov dword [rdi + 0x4c], 0x32
mov ebx, dword [rbp + 0x248]
mov dword [rdi + 0xe88], ebx
cmp byte [rsi + 0xe08], r11b
sete al
mov byte [rsi + 0x3f45], al
mov dword [rsi + 0x5e64], r14d
movss xmm2, dword [rsi + 0xe00]
subss xmm2, xmm9
subss xmm2, dword [rsi + 0x3804]
addss xmm2, dword [rdi + 0x50]
cmp byte [rsp + 0x64], r11b
je 0x140055796
movss xmm3, dword [rsi + 0xe04]
mov rax, qword [rbp - 0x40]
subss xmm3, dword [rax + 0x104]
jmp 0x1400557a6
movss xmm3, dword [rsi + 0x3c10]
mulss xmm3, dword [0x1401b8a80]
test r15b, r15b
je 0x1400557c8
mov dword [rdi + 0x58], r11d
mov eax, dword [rdi + 0xc]
mov dword [rdi + 0x5c], eax
mov dword [rdi + 0x54], eax
mov byte [rdi + 0x6a], r11b
mov byte [rdi + 0xe85], r14b
jmp 0x14005597c
mov al, byte [rsp + 0x75]
test al, al
je 0x1400558f6
mov r15d, 2
cmp word [rsi + 0x374a], r15w
jb 0x1400558f6
cmp byte [rsi + 0xe1d], r11b
jne 0x1400558f6
lea r14, [rdi + 0x54]
mov rdx, r14
mov rcx, rdi
call fcn.14005353c
movzx eax, word [rsi + 0x374a]
sub eax, r15d
lea r8d, [r15 - 1]
test r8b, al
jne 0x14005588c
xor edx, edx
cmp dword [r14], edx
je 0x140055833
movsxd rcx, dword [r14]
mov rax, qword [rdi + 0x20]
lea r9d, [r15 + 8]
cmp word [rax + rcx*2 - 2], r9w
mov cl, dl
jne 0x140055836
mov cl, r8b
mov eax, dword [rdi + 0x5c]
cmp dword [rdi + 0x58], eax
jne 0x140055842
test cl, cl
jne 0x14005584f
mov edx, 0x20000c
mov rcx, rdi
call fcn.140054858
mov eax, dword [rdi + 0x5c]
cmp dword [rdi + 0x58], eax
jne 0x14005586a
cmp dword [rdi + 0x58], eax
jne 0x140055867
mov eax, dword [rdi + 0x54]
mov dword [rdi + 0x5c], eax
mov dword [rdi + 0x58], eax
jmp 0x14005586a
mov dword [rdi + 0x54], eax
mov edx, dword [rdi + 0x54]
mov rcx, rdi
call fcn.1400530d8
mov dword [rdi + 0x54], eax
mov dword [rdi + 0x5c], eax
lea rdx, [rdi + 0x54]
mov rcx, rdi
call fcn.140053744
xor r11d, r11d
jmp 0x1400558ee
mov rcx, qword [rdi + 0x20]
movsxd rax, dword [r14]
movzx ebx, word [rcx + rax*2]
mov edx, 0x200004
mov rcx, rdi
call fcn.140054858
mov edx, 0x600005
mov rcx, rdi
call fcn.140054858
mov edx, 0x600001
mov rcx, rdi
call fcn.140054858
mov eax, 0xa
xor r11d, r11d
cmp bx, ax
je 0x1400558e1
cmp byte [rsp + 0x64], r11b
je 0x1400558e1
mov ecx, dword [rdi + 0x58]
mov eax, dword [rdi + 0x5c]
mov dword [rdi + 0x58], eax
mov dword [rdi + 0x5c], ecx
mov dword [r14], ecx
mov byte [rdi + 0xe84], r11b
mov ebx, dword [rbp + 0x248]
mov r14d, 1
jmp 0x140055972
cmp byte [rsi + 0x3740], r11b
je 0x14005592a
cmp byte [rdi + 0xe85], r11b
jne 0x14005592a
test al, al
je 0x14005597c
lea rdx, [rdi + 0x54]
mov rcx, rdi
cmp byte [rsi + 0xe1d], r11b
je 0x140055923
call fcn.14005359c
jmp 0x14005596f
call fcn.14005353c
jmp 0x14005596f
cmp byte [rsi + 0xe08], r11b
je 0x14005597c
cmp byte [rdi + 0xe85], r11b
jne 0x140055985
movss xmm0, dword [rsi + 0xf4]
ucomiss xmm0, xmm12
jp 0x14005595c
jne 0x14005595c
movss xmm0, dword [rsi + 0xf8]
ucomiss xmm0, xmm12
jp 0x14005595c
je 0x14005597c
lea rdx, [rdi + 0x54]
mov rcx, rdi
call fcn.14005359c
mov byte [rdi + 0xe84], r14b
xor r11d, r11d
mov dword [rdi + 0xe80], 0xbe99999a
cmp byte [rdi + 0xe85], r11b
je 0x140055995
cmp byte [rsi + 0xe08], r11b
jne 0x140055995
mov byte [rdi + 0xe85], r11b
bt ebx, 0xa
jae 0x1400559f3
xor r8d, r8d
mov edx, r13d
mov ecx, 0x200
call fcn.1400386e4
xor r11d, r11d
mov ecx, dword [rsp + 0x68]
lea r15d, [r11 + 2]
test al, al
je 0x1400559fd
test cl, cl
jne 0x1400559fd
mov dword [rsp + 0x60], 9
mov dword [rsp + 0x28], r15d
mov r8d, ebx
lea rdx, [rsp + 0x60]
mov rcx, rsi
call fcn.140054884
xor r11d, r11d
test al, al
je 0x1400559f9
mov edx, dword [rsp + 0x60]
mov rcx, rdi
call fcn.140054858
xor r11d, r11d
jmp 0x1400559f9
mov r15d, 2
mov ecx, dword [rsp + 0x68]
cmp byte [rsi + 0xe1c], r11b
je 0x140055a0f
cmp byte [rsi + 0xe1e], r11b
je 0x140055a1d
test r12b, r12b
je 0x140055a22
cmp byte [rsi + 0xe1f], r11b
je 0x140055a22
mov al, r14b
jmp 0x140055a25
mov al, r11b
cmp dword [rsi + 0x37b8], r11d
jle 0x140055ad9
test al, al
jne 0x140055aac
test cl, cl
jne 0x140055aac
cmp byte [rsp + 0x52], r11b
jne 0x140055aac
mov r14d, r11d
mov rbx, r11
mov r13d, dword [rbp + 0x248]
mov r12d, 1
mov rax, qword [rsi + 0x37c0]
movzx ecx, word [rax + rbx]
mov dword [rsp + 0x60], ecx
cmp ecx, 9
je 0x140055a90
mov dword [rsp + 0x28], r15d
mov r8d, r13d
lea rdx, [rsp + 0x60]
mov rcx, rsi
call fcn.140054884
xor r11d, r11d
test al, al
je 0x140055a93
mov edx, dword [rsp + 0x60]
mov rcx, rdi
call fcn.140054858
xor r11d, r11d
add r14d, r12d
add rbx, r15
cmp r14d, dword [rsi + 0x37b8]
jl 0x140055a54
mov r12b, byte [rsp + 0x71]
mov r13d, dword [rsp + 0x6c]
lea rbx, [rsi + 0x37b8]
mov ecx, dword [rbx + 4]
test ecx, ecx
jns 0x140055ad6
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
mov edx, r11d
test eax, eax
cmovg edx, eax
mov rcx, rbx
call fcn.14003fe3c
xor r11d, r11d
mov dword [rbx], r11d
mov ebx, dword [rbp - 0x60]
mov r15b, r11b
mov byte [rsp + 0x51], r11b
lea rcx, [0x14015269d]
cmp dword [rsi + 0x3f38], r13d
jne 0x1400564f0
cmp byte [rsi + 0x3f44], r11b
jne 0x1400564f0
cmp byte [rsp + 0x55], r11b
jne 0x1400564f0
movaps xmm0, xmm14
subss xmm0, dword [rsi + 0x3808]
divss xmm0, dword [rsi + 0x3c10]
cvttss2si eax, xmm0
mov r14d, 1
mov ecx, r14d
cmp eax, r14d
cmovge ecx, eax
mov dword [rsp + 0x60], ecx
mov dword [rdi + 0x64], ecx
mov al, byte [rsi + 0xe1d]
neg al
sbb r15d, r15d
and r15d, 0x400000
test r12b, r12b
je 0x140055b89
mov al, byte [rsi + 0xe1e]
mov byte [rsp + 0x52], al
cmp byte [rsi + 0xe1f], r11b
je 0x140055b93
mov byte [rsp + 0x52], al
cmp byte [rsi + 0xe1c], r11b
jne 0x140055b93
mov byte [rsp + 0x52], al
cmp al, r11b
jne 0x140055b93
mov byte [rsp + 0x53], r14b
mov byte [rsp + 0x52], al
jmp 0x140055b98
mov al, byte [rsi + 0xe1c]
mov byte [rsp + 0x52], al
mov byte [rsp + 0x53], r11b
mov r8d, r14d
mov edx, r13d
mov ecx, 0xa39
call fcn.1400386e4
xor ecx, ecx
test al, al
jne 0x140055bc4
mov r8d, r14d
mov edx, r13d
mov ecx, 0x220a
call fcn.1400386e4
xor ecx, ecx
test al, al
je 0x140055be9
mov r14d, dword [rsp + 0x68]
test r14b, r14b
jne 0x140055bee
test bl, bl
mov ebx, dword [rsp + 0x64]
jne 0x140055bf2
test bl, bl
je 0x140055be2
mov eax, dword [rdi + 0x5c]
cmp dword [rdi + 0x58], eax
je 0x140055bf2
mov byte [rsp + 0x70], 1
jmp 0x140055bf6
mov r14d, dword [rsp + 0x68]
mov ebx, dword [rsp + 0x64]
mov byte [rsp + 0x70], cl
xor r8d, r8d
mov edx, r13d
mov ecx, 0xa24
call fcn.1400386e4
test al, al
jne 0x140055c1e
xor r8d, r8d
mov edx, r13d
mov ecx, 0x1209
call fcn.1400386e4
test al, al
je 0x140055c3e
xor eax, eax
cmp byte [rbp - 0x60], al
jne 0x140055c3e
test bl, bl
je 0x140055c31
mov eax, dword [rdi + 0x5c]
cmp dword [rdi + 0x58], eax
je 0x140055c3e
mov eax, 1
mov byte [rsp + 0x73], al
xor ebx, ebx
jmp 0x140055c47
xor ebx, ebx
mov byte [rsp + 0x73], bl
lea eax, [rbx + 1]
mov r8d, eax
mov edx, r13d
mov ecx, 0xa37
call fcn.1400386e4
test al, al
jne 0x140055c72
mov r8d, 1
mov edx, r13d
mov ecx, 0x2209
call fcn.1400386e4
test al, al
je 0x140055c82
test r14b, r14b
jne 0x140055c82
mov eax, 1
mov byte [rsp + 0x74], al
jmp 0x140055c8b
mov byte [rsp + 0x74], bl
mov eax, 1
mov r8d, eax
mov edx, r13d
mov ecx, 0xa3b
call fcn.1400386e4
mov ebx, dword [rbp - 0x78]
test al, al
je 0x140055cb6
test r14b, r14b
jne 0x140055cb6
test bl, bl
je 0x140055cb6
mov eax, 1
mov byte [rsp + 0x72], al
jmp 0x140055cc0
mov byte [rsp + 0x72], 0
mov eax, 1
mov r8d, eax
mov edx, r13d
mov ecx, 0xa3a
call fcn.1400386e4
test al, al
jne 0x140055d8b
test r12b, r12b
je 0x140055cfb
mov r12d, 1
mov r8d, r12d
mov edx, r13d
mov ecx, 0x2a3b
call fcn.1400386e4
test al, al
jne 0x140055d91
xor r14d, r14d
mov r13b, r14b
mov r12d, 1
xor r8d, r8d
mov edx, dword [rsp + 0x6c]
mov ecx, 0xa22
call fcn.1400386e4
mov byte [rsp + 0x77], al
test byte [rsi + 8], 2
je 0x140055d2b
test byte [rsi + 0xc], r12b
mov bl, r12b
jne 0x140055d2e
mov bl, r14b
mov r8d, r12d
xor edx, edx
mov ecx, 0x20d
call fcn.140036d44
test al, al
jne 0x140055d57
mov r8d, r12d
xor edx, edx
mov ecx, 0x267
call fcn.140036d44
test al, al
jne 0x140055d57
mov r12b, r14b
test bl, bl
je 0x140055dad
xor r8d, r8d
xor edx, edx
mov ecx, 0x26e
call fcn.140036d44
test al, al
jne 0x140055d81
xor r8d, r8d
xor edx, edx
mov ecx, 0x26d
call fcn.140036d44
test al, al
je 0x140055dad
mov eax, 1
mov r14b, al
jmp 0x140055db2
mov r12d, 1
test r14b, r14b
jne 0x140055cfb
xor r14d, r14d
test bl, bl
je 0x140055cfe
mov r13b, r12b
jmp 0x140055d07
mov eax, 1
mov r8d, eax
mov edx, dword [rsp + 0x6c]
mov ecx, 0x20e
call fcn.1400386e4
xor ecx, ecx
test al, al
jne 0x140055dee
test bl, bl
je 0x140055de5
lea r8d, [rcx + 1]
mov edx, dword [rsp + 0x6c]
mov ecx, 0x26c
call fcn.1400386e4
xor ecx, ecx
test al, al
jne 0x140055dee
mov bl, cl
mov eax, 1
jmp 0x140055df5
mov eax, 1
mov bl, al
mov r8d, eax
xor edx, edx
mov ecx, 0x201
call fcn.140036d44
xor ecx, ecx
test al, al
je 0x140055e3e
neg byte [rsp + 0x52]
sbb edx, edx
and edx, 0xc
add edx, 0x200000
mov eax, 0x200004
cmp byte [rsp + 0x53], cl
cmovne edx, eax
or edx, r15d
mov rcx, rdi
call fcn.140054858
xor r11d, r11d
mov r9d, 1
jmp 0x1400564bf
xor edx, edx
mov ecx, 0x202
lea r8d, [rdx + 1]
call fcn.140036d44
xor ecx, ecx
test al, al
je 0x140055e6a
neg byte [rsp + 0x52]
sbb edx, edx
and edx, 0xc
add edx, 0x200001
mov eax, 0x200005
jmp 0x140055e1e
xor edx, edx
mov ecx, 0x203
lea r8d, [rdx + 1]
call fcn.140036d44
xor r11d, r11d
test al, al
je 0x140055ed8
cmp byte [rsp + 0x64], r11b
je 0x140055ed8
cmp byte [rsi + 0xe1c], r11b
je 0x140055ec7
mov r8, qword [rbp - 0x40]
movss xmm0, dword [r8 + 0x88]
subss xmm0, dword [rsi + 0x3c10]
maxss xmm0, xmm12
movss dword [r8 + 0x98], xmm0
mov dword [r8 + 0xa0], r11d
mov dword [r8 + 0xa8], r11d
jmp 0x140055e33
movzx eax, byte [rsp + 0x53]
lea edx, [rax*4 + 0x200002]
jmp 0x140055e25
xor edx, edx
mov ecx, 0x204
lea r8d, [rdx + 1]
call fcn.140036d44
xor r11d, r11d
test al, al
je 0x140055f55
cmp byte [rsp + 0x64], r11b
je 0x140055f55
cmp byte [rsi + 0xe1c], r11b
je 0x140055f44
mov rax, qword [0x1401d04d0]
mov rcx, qword [rax + 0x3ed8]
movss xmm0, dword [rsi + 0x3c10]
mov rax, qword [rbp - 0x40]
addss xmm0, dword [rax + 0x88]
minss xmm0, dword [rcx + 0x90]
movss dword [rax + 0x98], xmm0
mov dword [rax + 0xa0], r11d
mov dword [rax + 0xa8], r11d
jmp 0x140055e33
movzx eax, byte [rsp + 0x53]
lea edx, [rax*4 + 0x200003]
jmp 0x140055e25
xor edx, edx
mov ecx, 0x205
lea r8d, [rdx + 1]
call fcn.140036d44
xor ecx, ecx
test al, al
je 0x140055f9e
cmp byte [rsp + 0x64], cl
je 0x140055f9e
or r15d, 0x20000e
mov edx, r15d
mov rcx, rdi
call fcn.140054858
movd xmm0, dword [rsp + 0x60]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [rsi + 0x3c10]
subss xmm10, xmm0
jmp 0x140055e30
xor edx, edx
mov ecx, 0x206
lea r8d, [rdx + 1]
call fcn.140036d44
xor ecx, ecx
test al, al
je 0x140055fe7
cmp byte [rsp + 0x64], cl
je 0x140055fe7
or r15d, 0x20000f
mov edx, r15d
mov rcx, rdi
call fcn.140054858
movd xmm0, dword [rsp + 0x60]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [rsi + 0x3c10]
addss xmm10, xmm0
jmp 0x140055e30
xor edx, edx
mov ecx, 0x207
lea r8d, [rdx + 1]
call fcn.140036d44
test al, al
je 0x140056014
mov al, byte [rsi + 0xe1c]
neg al
mov eax, 0x200004
sbb edx, edx
and edx, 2
add edx, eax
jmp 0x140055e25
xor edx, edx
mov ecx, 0x208
lea r8d, [rdx + 1]
call fcn.140036d44
test al, al
je 0x140056037
mov al, byte [rsi + 0xe1c]
neg al
mov eax, 0x200005
jmp 0x140056008
xor edx, edx
mov ecx, 0x20a
lea r8d, [rdx + 1]
call fcn.140036d44
xor ecx, ecx
test al, al
je 0x140056083
cmp byte [rsp + 0x68], cl
jne 0x140056083
cmp byte [rsp + 0x70], cl
jne 0x140056083
mov eax, dword [rdi + 0x5c]
cmp dword [rdi + 0x58], eax
jne 0x140056074
cmp byte [rsp + 0x52], cl
je 0x140056074
mov edx, 0x60000d
mov rcx, rdi
call fcn.140054858
or r15d, 0x200008
mov edx, r15d
jmp 0x140055e28
xor edx, edx
mov ecx, 0x20b
lea r8d, [rdx + 1]
call fcn.140036d44
xor r11d, r11d
mov r8d, dword [rsp + 0x68]
test al, al
je 0x1400560f2
test r8b, r8b
jne 0x1400560f2
mov eax, dword [rdi + 0x5c]
cmp dword [rdi + 0x58], eax
jne 0x1400560e9
cmp byte [rsp + 0x52], r11b
je 0x1400560ba
mov edx, 0x60000c
jmp 0x1400560e1
cmp byte [rsp + 0x71], r11b
je 0x1400560e9
cmp byte [rsi + 0xe1f], r11b
je 0x1400560e9
cmp byte [rsi + 0xe1e], r11b
jne 0x1400560e9
cmp byte [rsi + 0xe1c], r11b
jne 0x1400560e9
mov edx, 0x600004
mov rcx, rdi
call fcn.140054858
or r15d, 0x200009
jmp 0x14005607b
test r12b, r12b
jne 0x14005642a
test r14b, r14b
jne 0x14005642a
test bl, bl
je 0x140056160
test dword [rbp + 0x248], 0x100000
je 0x14005613e
mov eax, dword [rdi + 0x10]
test eax, eax
jg 0x14005612a
mov byte [rsp + 0x58], r11b
mov byte [rsp + 0x50], r11b
mov byte [rsp + 0x55], 1
setg r15b
mov byte [rsp + 0x51], r15b
mov r9d, 1
jmp 0x1400564c4
mov r9d, 1
mov r15b, r9b
mov byte [rsp + 0x51], r9b
mov byte [rsp + 0x55], r9b
mov cl, r11b
mov dl, r11b
mov byte [rsp + 0x50], dl
jmp 0x1400564cc
movzx eax, byte [rsp + 0x72]
test al, al
jne 0x140056409
test r13b, r13b
jne 0x140056409
cmp byte [rsp + 0x77], r11b
je 0x1400561a0
mov dword [rdi + 0x58], r11d
mov eax, dword [rdi + 0xc]
mov dword [rdi + 0x5c], eax
mov dword [rdi + 0x54], eax
mov byte [rdi + 0x6a], r11b
mov r9d, 1
mov byte [rdi + 0xe84], r9b
jmp 0x1400564bf
mov r13b, byte [rsp + 0x70]
test r13b, r13b
jne 0x14005630f
cmp byte [rsp + 0x73], r11b
jne 0x14005630f
cmp byte [rsp + 0x74], r11b
je 0x140055e33
mov rax, qword [0x1401d04d0]
mov rdx, qword [rax + 0xa8]
test rdx, rdx
je 0x1400561f8
mov rcx, qword [rax + 0xb8]
call rdx
mov rbx, rax
xor r11d, r11d
test rax, rax
je 0x140055e33
mov rax, qword [0x1401d04d0]
jmp 0x1400561ff
lea rbx, [0x14015269d]
or rcx, 0xffffffffffffffff
inc rcx
cmp byte [rbx + rcx], r11b
jne 0x140056203
test rax, rax
je 0x140056217
inc dword [rax + 0xf0]
lea eax, [rcx + 1]
movsxd rcx, eax
add rcx, rcx
call qword [0x140128ad0]
mov r15, rax
mov qword [rbp - 0x50], rax
xor r13d, r13d
mov r14d, r13d
cmp byte [rbx], r13b
je 0x140056293
mov r12, rax
mov r15d, dword [rbp + 0x248]
lea edi, [r13 + 1]
xor r8d, r8d
mov rdx, rbx
lea rcx, [rbp - 0x78]
call fcn.14002bc54
movsxd rcx, eax
add rbx, rcx
mov dword [rsp + 0x28], 4
mov r8d, r15d
lea rdx, [rbp - 0x78]
mov rcx, rsi
call fcn.140054884
test al, al
je 0x140056286
movzx eax, word [rbp - 0x78]
mov word [r12], ax
add r14d, edi
add r12, 2
cmp byte [rbx], r13b
jne 0x140056246
mov rdi, qword [rbp - 0x68]
mov r15, qword [rbp - 0x50]
movsxd rax, r14d
mov word [r15 + rax*2], r13w
test r14d, r14d
jle 0x1400562ea
lea rbx, [rdi + 0x54]
mov rdx, rbx
mov rcx, rdi
call fcn.140053744
mov rcx, rdi
call fcn.140053800
mov r9d, r14d
mov r8, r15
mov edx, dword [rbx]
mov rcx, rdi
call fcn.1400532a8
test al, al
je 0x1400562e3
lea rcx, [rbx + 0x20]
mov r9d, r14d
xor r8d, r8d
mov edx, dword [rbx]
call fcn.140054220
add dword [rbx], r14d
mov byte [rbx + 0x16], r13b
mov byte [rdi + 0xe84], 1
test r15, r15
je 0x140056301
mov rax, qword [0x1401d04d0]
test rax, rax
je 0x140056301
dec dword [rax + 0xf0]
mov rcx, r15
call qword [0x140128ad8]
jmp 0x140055e30
cmp qword [rsi + 0xb0], r11
je 0x1400563b6
mov ecx, dword [rdi + 0x58]
mov eax, dword [rdi + 0x5c]
cmp ecx, eax
je 0x140056330
mov edx, eax
cmovl edx, ecx
cmovge eax, ecx
jmp 0x140056336
mov edx, r11d
mov eax, dword [rdi + 0xc]
movsxd r15, eax
mov rax, qword [rdi + 0x20]
movsxd r12, edx
lea rdx, [rax + r15*2]
lea rcx, [rax + r12*2]
call fcn.14002c054
mov ecx, 1
lea r14d, [rcx + rax]
mov rax, qword [0x1401d04d0]
test rax, rax
je 0x140056368
add dword [rax + 0xf0], ecx
movsxd rcx, r14d
call qword [0x140128ad0]
mov rbx, rax
mov rcx, qword [rdi + 0x20]
lea r9, [rcx + r15*2]
lea r8, [rcx + r12*2]
mov edx, r14d
mov rcx, rax
call fcn.14002bfb4
mov rcx, rbx
call fcn.14002ea28
test rbx, rbx
je 0x1400563aa
mov rcx, qword [0x1401d04d0]
test rcx, rcx
je 0x1400563aa
dec dword [rcx + 0xf0]
mov rcx, rbx
call qword [0x140128ad8]
xor r11d, r11d
test r13b, r13b
je 0x140055e33
mov eax, dword [rdi + 0x5c]
cmp dword [rdi + 0x58], eax
jne 0x1400563d8
mov dword [rdi + 0x58], r11d
mov eax, dword [rdi + 0xc]
mov dword [rdi + 0x5c], eax
mov dword [rdi + 0x54], eax
mov byte [rdi + 0x6a], r11b
mov r9d, 1
mov byte [rdi + 0xe84], r9b
mov eax, dword [rdi + 0x5c]
cmp dword [rdi + 0x58], eax
je 0x1400564bf
lea rdx, [rdi + 0x54]
mov rcx, rdi
call fcn.140053800
xor r11d, r11d
mov byte [rdi + 0x6a], r11b
jmp 0x140055e33
mov edx, eax
xor edx, 1
add edx, 0x20000a
mov rcx, rdi
call fcn.140054858
mov eax, dword [rdi + 0x54]
mov dword [rdi + 0x5c], eax
mov dword [rdi + 0x58], eax
jmp 0x140055e30
mov edx, dword [rbp + 0x248]
mov eax, edx
shr eax, 0xb
mov r9d, 1
and al, r9b
mov ecx, dword [rsp + 0x64]
test cl, cl
je 0x14005645d
test r14b, r14b
jne 0x14005645d
mov cl, byte [rsi + 0xe1c]
test al, al
je 0x14005647f
test cl, cl
jne 0x140056483
mov ecx, dword [rsp + 0x64]
mov byte [rsp + 0x5c], r9b
cmp byte [rsi + 0x5c], r11b
je 0x1400564ba
test cl, cl
jne 0x1400564ba
mov dword [rdi + 0x58], r11d
mov eax, dword [rdi + 0xc]
mov dword [rdi + 0x5c], eax
mov dword [rdi + 0x54], eax
mov byte [rdi + 0x6a], r11b
jmp 0x1400564bf
test cl, cl
jne 0x140056459
test r8b, r8b
jne 0x1400564bf
mov eax, 0xa
mov dword [rbp - 0x78], eax
mov dword [rsp + 0x28], 2
mov r8d, edx
lea rdx, [rbp - 0x78]
mov rcx, rsi
call fcn.140054884
xor r11d, r11d
test al, al
je 0x140055e33
mov edx, dword [rbp - 0x78]
jmp 0x140055e28
mov byte [rsp + 0x55], r9b
mov r15b, byte [rsp + 0x51]
mov ecx, dword [rsp + 0x58]
mov dl, byte [rsp + 0x50]
mov eax, dword [rdi + 0x5c]
cmp dword [rdi + 0x58], eax
je 0x1400564db
test dl, dl
mov al, r9b
jne 0x1400564de
mov al, r11b
or cl, al
mov dword [rsp + 0x58], ecx
mov r13d, dword [rsp + 0x6c]
lea rcx, [0x14015269d]
mov qword [rbp - 0x20], r11
mov dword [rsp + 0x60], r11d
cmp dword [rsi + 0x3f38], r13d
jne 0x140056c4c
mov r12d, dword [rsp + 0x68]
test r15b, r15b
je 0x14005668d
test r12b, r12b
jne 0x1400566f9
test dword [rbp + 0x248], 0x100000
je 0x140056568
mov qword [rbp - 0x20], rcx
mov dword [rsp + 0x60], r11d
mov dword [rsp + 0x20], r11d
mov r9d, dword [rdi + 0xc]
xor r8d, r8d
lea rdx, [rdi + 0x54]
mov rcx, rdi
call fcn.140054768
mov r8d, dword [rdi + 0xc]
xor edx, edx
mov rcx, rdi
call fcn.14005321c
xor r11d, r11d
mov qword [rdi + 0x58], r11
mov dword [rdi + 0x54], r11d
jmp 0x14005669f
mov rax, qword [rsp + 0x78]
mov r8, qword [rdi + 0x40]
sub r8, rax
mov r9d, 1
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x14005658d
add rax, r9
test ecx, ecx
jne 0x14005657a
test edx, edx
je 0x14005669f
mov r13, qword [rdi + 0x40]
mov qword [rbp - 0x20], r13
mov r15d, dword [rdi + 0x38]
sub r15d, r9d
mov dword [rsp + 0x60], r15d
mov dword [rbp - 0x4c], r11d
mov ebx, r11d
mov dword [rbp - 0x50], ebx
mov r14, r11
mov qword [rbp - 0x48], r11
test r15d, r15d
jle 0x140056643
movsxd r12, r15d
add r12, r13
mov rdx, r12
mov rcx, r13
call fcn.14002be94
mov edx, 1
lea ebx, [rdx + rax]
xor ecx, ecx
test ebx, ebx
jle 0x140056623
mov r15d, ebx
lea eax, [rdx + 7]
cmp ebx, eax
cmovl r15d, eax
test r15d, r15d
jle 0x14005661e
mov rax, qword [0x1401d04d0]
test rax, rax
je 0x140056605
add dword [rax + 0xf0], edx
movsxd rcx, r15d
add rcx, rcx
call qword [0x140128ad0]
mov r14, rax
mov qword [rbp - 0x48], rax
mov dword [rbp - 0x4c], r15d
xor ecx, ecx
mov r15d, dword [rsp + 0x60]
mov dword [rbp - 0x50], ebx
mov qword [rsp + 0x20], rcx
mov r9, r12
mov r8, r13
mov edx, ebx
mov rcx, r14
call fcn.14002bdf4
mov r12d, dword [rsp + 0x68]
xor r11d, r11d
lea eax, [rbx - 1]
mov r9d, r11d
test r15d, r15d
cmovg r9d, eax
lea rdx, [rdi + 0x54]
mov r8, r14
mov rcx, rdi
call fcn.1400547d4
nop
test r14, r14
je 0x140056681
mov rax, qword [0x1401d04d0]
test rax, rax
je 0x140056677
dec dword [rax + 0xf0]
mov rcx, r14
call qword [0x140128ad8]
nop
mov r15b, byte [rsp + 0x51]
mov r13d, dword [rsp + 0x6c]
jmp 0x14005669f
mov qword [rbp - 0x20], r11
mov dword [rsp + 0x60], r11d
test r12b, r12b
jne 0x1400567bd
mov byte [rdi + 0x48], 1
mov eax, dword [rdi + 0x18]
lea ebx, [rax*4 + 1]
mov ecx, dword [rdi + 0x2c]
cmp ebx, ecx
jle 0x1400566d8
test ecx, ecx
je 0x1400566c3
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x1400566c8
mov eax, 8
mov edx, ebx
cmp eax, ebx
cmovg edx, eax
lea rcx, [rdi + 0x28]
call fcn.14003fdb8
mov dword [rdi + 0x28], ebx
xor r9d, r9d
mov r8, qword [rdi + 0x20]
mov edx, ebx
mov rcx, qword [rdi + 0x30]
call fcn.14002bfb4
xor r11d, r11d
test r15b, r15b
je 0x1400567bd
cmp byte [rsp + 0x5c], r11b
je 0x140056711
mov r15d, dword [rbp + 0x248]
test r15b, 0x20
jne 0x1400567c4
mov r12, qword [rsp + 0x78]
mov r15d, dword [rbp - 0x70]
mov eax, dword [rsp + 0x60]
mov r14, qword [rbp - 0x20]
test r14, r14
je 0x140056c47
test r15b, r15b
je 0x140056c0c
mov qword [rbp + 0xa8], r11
xorps xmm0, xmm0
movdqa xmmword [rbp + 0xc0], xmm0
mov qword [rbp + 0x90], rsi
mov dword [rbp + 0x98], 0x40000
mov ecx, dword [rbp + 0x248]
mov dword [rbp + 0x9c], ecx
mov qword [rbp + 0xb0], r12
mov dword [rbp + 0xb8], eax
inc eax
mov ecx, 0x32
cmp eax, ecx
cmovle eax, ecx
mov dword [rbp + 0xbc], eax
mov qword [rbp + 0xa0], r11
lea rcx, [rbp + 0x90]
call r11
mov r12, qword [rbp + 0xb0]
mov qword [rsp + 0x78], r12
mov ecx, dword [rbp + 0xbc]
lea eax, [rcx - 1]
cmp dword [rbp + 0xb8], eax
cmovl eax, dword [rbp + 0xb8]
xor r11d, r11d
jmp 0x140056c11
mov r15d, dword [rbp + 0x248]
test r15d, 0x801c0
je 0x140056bc3
mov r14d, r11d
mov ebx, 0x40
test bl, r15b
je 0x1400567f9
xor r8d, r8d
mov edx, r13d
mov r13d, 0x200
mov ecx, r13d
call fcn.1400386e4
xor r11d, r11d
test al, al
jne 0x14005683c
test r15b, r15b
jns 0x140056841
mov ebx, 1
mov r8d, ebx
xor edx, edx
mov r13d, 0x203
mov ecx, r13d
call fcn.140036d44
xor r11d, r11d
test al, al
jne 0x140056837
mov r8d, ebx
xor edx, edx
mov r13d, 0x204
mov ecx, r13d
call fcn.140036d44
xor r11d, r11d
test al, al
je 0x140056841
mov ebx, 0x80
mov r14d, r13d
jmp 0x140056862
mov ebx, 0x80000
test ebx, r15d
je 0x140056854
cmp byte [rdi + 0xe86], r11b
jne 0x140056862
mov eax, 0x100
test eax, r15d
mov ebx, r11d
cmovne ebx, eax
test ebx, ebx
je 0x140056bc3
mov dword [rbp + 0x68], r11d
mov word [rbp + 0x81], r11w
mov byte [rbp + 0x83], r11b
mov qword [rbp + 0x50], rsi
mov dword [rbp + 0x58], ebx
mov dword [rbp + 0x5c], r15d
mov qword [rbp + 0x60], r11
test r12b, r12b
mov rax, qword [rsp + 0x78]
jne 0x14005689a
mov rax, qword [rdi + 0x30]
mov dword [rbp + 0x6c], r14d
mov qword [rbp + 0x70], rax
mov eax, dword [rdi + 0x10]
mov dword [rbp + 0x78], eax
mov eax, dword [rdi + 0x4c]
mov dword [rbp + 0x7c], eax
mov byte [rbp + 0x80], r11b
mov r11, qword [rdi + 0x20]
movsxd rax, dword [rdi + 0x54]
lea rdx, [r11 + rax*2]
mov rcx, r11
call fcn.14002c054
mov ebx, eax
mov dword [rbp + 0x84], eax
movsxd rdx, dword [rdi + 0x58]
lea rdx, [r11 + rdx*2]
mov rcx, r11
call fcn.14002c054
mov r15d, eax
mov dword [rbp + 0x88], eax
movsxd rdx, dword [rdi + 0x5c]
lea rdx, [r11 + rdx*2]
mov rcx, r11
call fcn.14002c054
mov r12d, eax
mov dword [rbp + 0x8c], eax
lea rcx, [rbp + 0x50]
xor eax, eax
call rax
mov r14b, byte [rbp + 0x80]
movsxd rcx, dword [rbp + 0x84]
cmp ecx, ebx
jne 0x140056925
xor r11d, r11d
test r14b, r14b
je 0x140056947
mov rdx, rcx
mov rcx, qword [rbp + 0x70]
add rdx, rcx
call fcn.14002be94
mov dword [rdi + 0x54], eax
mov byte [rdi + 0xe84], 1
mov ecx, dword [rbp + 0x84]
xor r11d, r11d
movsxd rax, dword [rbp + 0x88]
cmp eax, r15d
jne 0x140056958
test r14b, r14b
je 0x14005697c
cmp eax, ecx
jne 0x140056961
mov ecx, dword [rdi + 0x54]
jmp 0x140056976
mov rcx, qword [rbp + 0x70]
lea rdx, [rcx + rax]
call fcn.14002be94
mov ecx, eax
mov eax, dword [rbp + 0x88]
mov dword [rdi + 0x58], ecx
xor r11d, r11d
movsxd rcx, dword [rbp + 0x8c]
cmp ecx, r12d
jne 0x140056991
test r14b, r14b
je 0x140056bc3
cmp ecx, eax
jne 0x14005699a
mov eax, dword [rdi + 0x58]
jmp 0x1400569ac
mov rdx, rcx
mov rcx, qword [rbp + 0x70]
add rdx, rcx
call fcn.14002be94
xor r11d, r11d
mov dword [rdi + 0x5c], eax
test r14b, r14b
je 0x140056bc3
movsxd rax, dword [rbp + 0x78]
mov dword [rbp - 0x78], eax
mov r15, qword [rbp + 0x70]
mov rbx, qword [0x1401d04d0]
mov rcx, qword [rdi + 0x20]
mov qword [rbp - 0x50], rcx
mov r13d, dword [rdi + 0xc]
lea rdx, [r15 + rax]
mov rcx, r15
call fcn.14002be94
mov r14d, eax
lea r12d, [rax*2 + 2]
cmp r12d, dword [rbx + 0x5e6c]
jle 0x140056a3c
mov rcx, qword [rbx + 0x5e70]
test rcx, rcx
je 0x140056a13
test rbx, rbx
je 0x140056a0d
dec dword [rbx + 0xf0]
call qword [0x140128ad8]
mov rax, qword [0x1401d04d0]
test rax, rax
je 0x140056a25
inc dword [rax + 0xf0]
movsxd rcx, r12d
call qword [0x140128ad0]
mov qword [rbx + 0x5e70], rax
mov dword [rbx + 0x5e6c], r12d
mov r12, qword [rbx + 0x5e70]
movsxd r9, dword [rbp - 0x78]
add r9, r15
lea edx, [r14 + 1]
xor eax, eax
mov qword [rsp + 0x20], rax
mov r8, r15
mov rcx, r12
call fcn.14002bdf4
mov eax, r14d
cmp r13d, r14d
cmovl eax, r13d
xor r15d, r15d
mov edx, r15d
movsxd r10, eax
mov r11, qword [rbp - 0x50]
test eax, eax
jle 0x140056aa7
mov r8d, r15d
mov rcx, r11
mov r9, r12
sub r9, r11
lea edi, [r15 + 1]
movzx eax, word [r9 + rcx]
cmp word [rcx], ax
jne 0x140056aa3
add edx, edi
add r8, rdi
add rcx, 2
cmp r8, r10
jl 0x140056a8b
mov rdi, qword [rbp - 0x68]
cmp edx, r13d
jne 0x140056ab5
cmp edx, r14d
je 0x140056b47
lea ebx, [r13 - 1]
lea r9d, [r14 - 1]
movsxd rcx, ebx
movsxd r14, edx
cmp rcx, r14
jl 0x140056af1
movsxd r8, r9d
cmp r8, r14
jl 0x140056af1
movzx eax, word [r12 + r8*2]
cmp word [r11 + rcx*2], ax
jne 0x140056af1
mov eax, 1
sub ebx, eax
sub rcx, rax
sub r9d, eax
sub r8, rax
cmp rcx, r14
jge 0x140056acb
sub r9d, edx
mov r12d, 1
add r9d, r12d
sub ebx, edx
lea r8d, [rbx + 1]
test r9d, r9d
jg 0x140056b0d
test r8d, r8d
jle 0x140056b47
lea rcx, [rdi + 0x74]
call fcn.140054220
mov rdx, rax
test rax, rax
je 0x140056b47
movsxd r9, ebx
inc r9
test r9, r9
jle 0x140056b47
lea r8, [r14 + r14]
sub r8, rax
mov rcx, qword [rdi + 0x20]
add rcx, r8
movzx eax, word [rcx + rdx]
mov word [rdx], ax
lea rdx, [rdx + 2]
sub r9, r12
jne 0x140056b30
mov ebx, dword [rbp + 0x78]
mov eax, dword [rbp - 0x28]
mov r15d, dword [rbp - 0x70]
cmp ebx, eax
jle 0x140056b91
test r15b, r15b
je 0x140056b91
lea r14, [rdi + 0x18]
sub ebx, eax
add ebx, dword [r14]
mov ecx, dword [r14 + 4]
cmp ebx, ecx
jle 0x140056b8e
test ecx, ecx
je 0x140056b7a
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x140056b7f
mov eax, 8
mov edx, ebx
cmp eax, ebx
cmovg edx, eax
mov rcx, r14
call fcn.14003fe3c
mov dword [r14], ebx
xor eax, eax
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, qword [rbp + 0x70]
mov edx, dword [rdi + 0x18]
mov rcx, qword [rdi + 0x20]
call fcn.14002bdf4
mov dword [rdi + 0xc], eax
mov eax, dword [rbp + 0x78]
mov dword [rdi + 0x10], eax
mov dword [rdi + 0xe80], 0xbe99999a
xor r11d, r11d
jmp 0x140056bc7
mov r15d, dword [rbp - 0x70]
mov r12, qword [rsp + 0x78]
cmp byte [rsp + 0x68], r11b
jne 0x14005671a
mov rax, qword [rdi + 0x30]
mov r8, r12
sub r8, rax
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x140056bf4
inc rax
test ecx, ecx
jne 0x140056be1
test edx, edx
je 0x14005671a
mov rax, qword [rdi + 0x30]
mov qword [rbp - 0x20], rax
mov eax, dword [rdi + 0x10]
jmp 0x14005671e
mov ecx, 0x32
inc eax
cmp eax, ecx
cmovl ecx, eax
movsxd rbx, ecx
mov r15d, 1
cmp rbx, r15
jb 0x140056c40
jbe 0x140056c3b
lea r8, [rbx - 1]
mov rdx, r14
mov rcx, r12
call qword [0x140128d60]
xor r11d, r11d
mov byte [rbx + r12 - 1], r11b
mov r13d, dword [rsp + 0x6c]
jmp 0x140056c52
mov r13d, dword [rsp + 0x6c]
mov r15d, 1
cmp dword [rsi + 0x3f38], r13d
jne 0x140056c74
cmp byte [rsp + 0x55], r11b
je 0x140056c6d
xor edx, edx
xor ecx, ecx
call fcn.14002e48c
jmp 0x140056c74
mov dword [rsi + 0x5e64], r15d
mov ecx, 4
mov rax, qword gs:[0x58]
mov rax, qword [rax]
mov r12d, 0x48
mov eax, dword [rcx + rax]
cmp dword [0x1401d1da8], eax
jle 0x140056cf4
lea rcx, [0x1401d1da8]
call fcn.140123300
cmp dword [0x1401d1da8], 0xffffffff
jne 0x140056cf4
xor eax, eax
mov qword [0x1401d1db0], rax
mov qword [0x1401d1db8], rax
mov ecx, r12d
call fcn.140122fa0
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [0x1401d1db0], rax
lea rcx, [0x1401278e4]
call fcn.140123204
nop
lea rcx, [0x1401d1da8]
call fcn.140123294
mov r14, qword [0x1401d1db0]
mov rax, qword [r14 + 8]
mov rbx, r14
mov qword [rbp - 0x78], rbx
xor r9d, r9d
cmp byte [rax + 0x19], r9b
jne 0x140056d2b
cmp dword [rax + 0x1c], r13d
jae 0x140056d1b
mov rax, qword [rax + 0x10]
jmp 0x140056d21
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], r9b
je 0x140056d0f
mov qword [rbp - 0x78], rbx
cmp byte [rbx + 0x19], r9b
jne 0x140056d37
cmp r13d, dword [rbx + 0x1c]
jae 0x140056d3e
mov rbx, r14
mov qword [rbp - 0x78], rbx
cmp rbx, r14
jne 0x140056e5a
xorps xmm0, xmm0
xorps xmm1, xmm1
mov dword [rbp + 0x18], r13d
movups xmmword [rbp + 0x1c], xmm0
movups xmmword [rbp + 0x2c], xmm1
mov dword [rbp + 0x3c], r9d
mov rax, qword [r14 + 8]
mov qword [rbp - 0x20], rax
mov dword [rbp - 0x18], r9d
mov rcx, r14
jmp 0x140056d8c
mov qword [rbp - 0x20], rax
cmp dword [rax + 0x1c], r13d
jae 0x140056d82
mov dword [rbp - 0x18], r9d
mov rax, qword [rax + 0x10]
jmp 0x140056d8c
mov dword [rbp - 0x18], r15d
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], r9b
je 0x140056d6e
cmp byte [rcx + 0x19], r9b
jne 0x140056d9e
cmp r13d, dword [rcx + 0x1c]
jae 0x140056e1a
movabs rax, 0x38e38e38e38e38e
cmp qword [0x1401d1db8], rax
je 0x140057aee
lea rbx, [0x1401d1db0]
mov qword [rbp - 0x50], rbx
mov qword [rbp - 0x48], r9
mov rcx, r12
call fcn.140122fa0
nop
movups xmm0, xmmword [rbp + 0x18]
movups xmmword [rax + 0x1c], xmm0
movups xmm1, xmmword [rbp + 0x28]
movups xmmword [rax + 0x2c], xmm1
movsd xmm0, qword [rbp + 0x38]
movsd qword [rax + 0x3c], xmm0
mov qword [rax], r14
mov qword [rax + 8], r14
mov qword [rax + 0x10], r14
xor ecx, ecx
mov word [rax + 0x18], cx
movups xmm0, xmmword [rbp - 0x20]
movdqu xmmword [rbp - 0x50], xmm0
mov r8, rax
lea rdx, [rbp - 0x50]
mov rcx, rbx
call fcn.140057f78
mov r14, qword [0x1401d1db0]
xor r9d, r9d
mov rax, qword [r14 + 8]
mov rbx, r14
mov qword [rbp - 0x78], rbx
cmp byte [rax + 0x19], r9b
jne 0x140056e47
cmp dword [rax + 0x1c], r13d
jae 0x140056e37
mov rax, qword [rax + 0x10]
jmp 0x140056e3d
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], r9b
je 0x140056e2b
mov qword [rbp - 0x78], rbx
cmp byte [rbx + 0x19], r9b
jne 0x140056e53
cmp r13d, dword [rbx + 0x1c]
jae 0x140056e5a
mov rbx, r14
mov qword [rbp - 0x78], rbx
movss xmm1, dword [rsi + 0x18]
mulss xmm1, dword [0x1401b8aec]
mov rax, qword [0x1401d04d0]
mov ecx, dword [rax + 0x3f38]
test ecx, ecx
je 0x140056e80
cmp ecx, dword [rax + 0x4778]
je 0x140056e91
cmp byte [rsp + 0x75], r9b
jne 0x140056e91
movdqa xmm0, xmmword [0x1401b8cd0]
jmp 0x140056e99
movdqa xmm0, xmmword [0x1401b8d00]
lea rax, [rbp - 0x50]
movups xmmword [rbp - 0x50], xmm0
movups xmm0, xmmword [rax]
movdqu xmmword [rbp - 0x50], xmm0
lea rax, [rbx + 0x20]
lea rcx, [rbp - 0x50]
sub rcx, rax
lea rdx, [rbp - 0x20]
sub rdx, rax
mov r8d, 4
movss xmm0, dword [rcx + rax]
subss xmm0, dword [rax]
mulss xmm0, xmm1
addss xmm0, dword [rax]
movss dword [rdx + rax], xmm0
add rax, 4
sub r8, r15
jne 0x140056ec1
movups xmm0, xmmword [rbp - 0x20]
movdqu xmmword [rbx + 0x20], xmm0
mov r11d, dword [rsp + 0x64]
test r11b, r11b
jne 0x140056f5f
mov r8, qword [0x1401d04d0]
mov rax, qword [r8 + 0x3ed8]
mov byte [rax + 0xb8], r15b
movdqu xmm0, xmmword [rbx + 0x20]
movups xmmword [rbp - 0x50], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [r8 + 0x37c8]
movss dword [rbp - 0x44], xmm0
lea rcx, [rbp - 0x50]
call fcn.14002c09c
mov r9d, eax
mov rcx, qword [r8 + 0x3ed8]
xor eax, eax
mov dword [rsp + 0x28], eax
movss dword [rsp + 0x20], xmm15
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x40]
mov rcx, qword [rcx + 0x298]
call fcn.140048f78
mov r11d, dword [rsp + 0x64]
xor r9d, r9d
movss dword [rbp + 0xd8], xmm9
movss dword [rbp + 0xdc], xmm13
movaps xmm0, xmm11
addss xmm0, xmm9
movss dword [rbp + 0xe0], xmm0
movaps xmm1, xmm13
addss xmm1, xmm14
movss dword [rbp + 0xe4], xmm1
mov r10, qword [rbp - 0x40]
test r11b, r11b
je 0x140056fb0
movss xmm9, dword [r10 + 0x100]
movss xmm1, dword [r10 + 0x104]
jmp 0x140056fc5
addss xmm9, dword [0x1401b8afc]
movaps xmm1, xmm13
addss xmm1, dword [0x1401b8af4]
movss dword [rbp + 0xd0], xmm9
movss dword [rbp + 0xd4], xmm1
movaps xmm15, xmm12
movaps xmm14, xmm12
cmp byte [rsp + 0x76], r9b
je 0x140056ff0
mov r12, qword [rdi + 0x30]
mov qword [rsp + 0x78], r12
jmp 0x140056ff5
mov r12, qword [rsp + 0x78]
mov r14, r9
mov qword [rbp - 0x20], r9
movzx r15d, byte [rsp + 0x54]
test r15b, r15b
je 0x140057027
mov rax, qword [rbp - 0x80]
mov r12, rax
mov qword [rsp + 0x78], rax
or r14, 0xffffffffffffffff
inc r14
cmp byte [rax + r14], r9b
jne 0x140057017
add r14, rax
mov qword [rbp - 0x20], r14
mov al, byte [rsp + 0x50]
mov r8d, dword [rsp + 0x58]
test al, al
jne 0x140057184
test r8b, r8b
jne 0x140057184
test r11b, r11b
je 0x1400570aa
mov ecx, r9d
mov dl, byte [r12]
lea r14, [r12 + 1]
test dl, dl
je 0x14005707a
mov r13d, 1
lea r8d, [r13 + 9]
lea eax, [rcx + 1]
cmp dl, r8b
cmovne eax, ecx
mov ecx, eax
mov dl, byte [r14]
add r14, r13
test dl, dl
jne 0x140057060
mov r13d, dword [rsp + 0x6c]
mov eax, 1
sub r14, rax
lea edx, [rax + 9]
cmp byte [r14], dl
je 0x140057092
cmp byte [r14], 0xd
je 0x140057092
add ecx, eax
movd xmm14, ecx
cvtdq2ps xmm14, xmm14
mulss xmm14, dword [rsi + 0x3c10]
movaps xmm15, xmm11
jmp 0x1400570e0
test r15b, r15b
jne 0x1400570ce
cmp dword [rsi + 0x3f38], r13d
jne 0x1400570be
movsxd r14, dword [rdi + 0x10]
jmp 0x1400570cb
or r14, 0xffffffffffffffff
inc r14
cmp byte [r12 + r14], r9b
jne 0x1400570c2
add r14, r12
mov rax, r14
sub rax, r12
cmp rax, 0x200000
jge 0x1400579ce
mov rcx, qword [0x1401d04d0]
mov rax, r15
add rax, rax
movdqu xmm0, xmmword [rcx + rax*8 + 0x38a4]
movups xmmword [rbp + 0xe8], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rcx + 0x37c8]
movss dword [rbp + 0xf4], xmm0
addss xmm9, xmm12
movss dword [rbp - 0x80], xmm9
addss xmm1, dword [0x1401b8ad0]
movss dword [rbp - 0x7c], xmm1
lea r8, [rbp + 0xd8]
test r11b, r11b
cmovne r8, r9
lea rcx, [rbp + 0xe8]
call fcn.14002c09c
mov qword [rsp + 0x40], r8
movss dword [rsp + 0x38], xmm12
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], eax
lea r9, [rbp - 0x80]
movss xmm2, dword [rsi + 0x3c10]
mov rdx, qword [rsi + 0x3c08]
mov rcx, qword [r10 + 0x298]
call fcn.140049220
xor r9d, r9d
jmp 0x1400579ce
test r15b, r15b
jne 0x140057194
movsxd r14, dword [rdi + 0x10]
add r14, r12
mov qword [rbp - 0x20], r14
mov r13, qword [rdi + 0x20]
movaps xmm6, xmm12
movaps xmm7, xmm12
xor r15d, r15d
mov r10d, r15d
mov qword [rbp - 0x80], r15
mov edx, 0xfffffc18
mov r12d, edx
mov ecx, r15d
test al, al
je 0x1400571ce
movsxd rax, dword [rdi + 0x54]
lea r9, [rax*2]
add r9, r13
or edx, 0xffffffff
lea ecx, [rdx + 2]
test r8b, r8b
je 0x1400571f4
mov eax, dword [rdi + 0x5c]
cmp dword [rdi + 0x58], eax
cmovl eax, dword [rdi + 0x58]
cdqe
lea r10, [rax*2]
add r10, r13
mov qword [rbp - 0x80], r10
or r12d, 0xffffffff
inc ecx
movzx eax, r11b
add ecx, eax
xor r11d, r11d
mov rax, r13
movzx r8d, word [r13]
test r8w, r8w
je 0x140057254
lea r14d, [r11 + 1]
cmp r8w, word [rbp - 8]
jne 0x140057242
add r15d, r14d
cmp edx, 0xffffffff
jne 0x14005722d
cmp rax, r9
jb 0x14005722d
mov edx, r15d
sub ecx, r14d
test ecx, ecx
jle 0x140057250
cmp r12d, 0xffffffff
jne 0x140057242
cmp rax, r10
jb 0x140057242
mov r12d, r15d
sub ecx, r14d
test ecx, ecx
jle 0x140057250
add rax, 2
movzx r8d, word [rax]
test r8w, r8w
jne 0x14005720f
mov r14, qword [rbp - 0x20]
inc r15d
mov eax, r15d
cmp edx, 0xffffffff
cmovne eax, edx
mov dword [rbp - 8], eax
cmp r12d, 0xffffffff
cmove r12d, r15d
mov r8, r9
cmp r9, r13
jbe 0x140057289
mov ecx, 0xa
lea rax, [r8 - 2]
cmp word [rax], cx
je 0x140057289
mov r8, rax
cmp rax, r13
ja 0x140057278
mov byte [rsp + 0x30], r11b
mov qword [rsp + 0x20], r11
mov rdx, rsi
lea rcx, [rbp - 0x50]
call fcn.140052e58
movss xmm13, dword [rax]
movss dword [rbp - 0x28], xmm13
movss xmm5, dword [rsi + 0x3c10]
movd xmm8, dword [rbp - 8]
cvtdq2ps xmm8, xmm8
mulss xmm8, xmm5
xor r10d, r10d
test r12d, r12d
js 0x14005731e
mov rcx, qword [rbp - 0x80]
mov r8, rcx
cmp rcx, r13
jbe 0x1400572ea
lea edx, [r10 + 0xa]
lea rax, [r8 - 2]
cmp word [rax], dx
je 0x1400572ea
mov r8, rax
cmp rax, r13
ja 0x1400572d9
mov byte [rsp + 0x30], r10b
mov qword [rsp + 0x20], r10
mov r9, rcx
mov rdx, rsi
lea rcx, [rbp - 8]
call fcn.140052e58
movss xmm6, dword [rax]
movss xmm5, dword [rsi + 0x3c10]
movd xmm7, r12d
cvtdq2ps xmm7, xmm7
mulss xmm7, xmm5
xor r10d, r10d
mov r11d, dword [rsp + 0x64]
test r11b, r11b
je 0x14005733a
movd xmm14, r15d
cvtdq2ps xmm14, xmm14
mulss xmm14, xmm5
movaps xmm15, xmm11
mov r12b, byte [rsp + 0x50]
test r12b, r12b
je 0x140057472
cmp byte [rdi + 0xe84], r10b
je 0x140057472
test dword [rbp + 0x248], 0x1000
jne 0x1400573b7
movaps xmm2, xmm11
mulss xmm2, dword [0x1401b8a68]
subss xmm11, dword [rsi + 0x3804]
movss xmm1, dword [rdi + 0x50]
comiss xmm1, xmm13
jbe 0x140057393
movaps xmm1, xmm13
subss xmm1, xmm2
movaps xmm0, xmm12
maxss xmm0, xmm1
jmp 0x1400573a5
movaps xmm0, xmm13
subss xmm0, xmm11
comiss xmm0, xmm1
jb 0x1400573bb
addss xmm0, xmm2
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rdi + 0x50], xmm0
jmp 0x1400573bb
mov dword [rdi + 0x50], r10d
test r11b, r11b
je 0x14005746b
movaps xmm0, xmm8
subss xmm0, dword [rsi + 0x3c10]
comiss xmm10, xmm0
jbe 0x1400573e1
movaps xmm10, xmm12
maxss xmm10, xmm0
jmp 0x140057413
movss xmm2, dword [rsi + 0x3808]
addss xmm2, xmm2
movss xmm1, dword [rbp - 0x2c]
subss xmm1, xmm2
movaps xmm0, xmm8
subss xmm0, xmm1
comiss xmm0, xmm10
jb 0x140057413
movaps xmm10, xmm8
subss xmm10, dword [rbp - 0x2c]
addss xmm10, xmm2
movss xmm2, dword [rsi + 0x3808]
comiss xmm12, xmm10
jbe 0x140057427
movaps xmm2, xmm12
jmp 0x14005743f
addss xmm2, xmm2
addss xmm2, xmm14
subss xmm2, dword [rbp - 0x2c]
maxss xmm2, xmm12
minss xmm2, xmm10
mov rax, qword [rbp - 0x40]
movss xmm0, dword [rax + 0x88]
subss xmm0, xmm2
movss xmm1, dword [rbp + 0xd4]
addss xmm1, xmm0
movss dword [rbp + 0xd4], xmm1
movss dword [rax + 0x88], xmm2
mov byte [rdi + 0xe84], r10b
movss xmm11, dword [rdi + 0x50]
movss xmm9, dword [0x1401b8ab4]
movss xmm12, dword [0x1401b8ad0]
cmp byte [rsp + 0x58], r10b
je 0x1400577a1
mov edx, dword [rdi + 0x5c]
mov ecx, dword [rdi + 0x58]
mov eax, edx
cmp ecx, edx
cmovl eax, ecx
cdqe
lea r8, [rax*2]
add r8, r13
cmp ecx, edx
cmovge edx, ecx
movsxd rax, edx
lea r15, [rax*2]
add r15, r13
movdqa xmm0, xmmword [0x1401b8d80]
movups xmmword [rbp + 0x40], xmm0
lea rcx, [rbp + 0x40]
call fcn.14002c09c
mov r12d, eax
xorps xmm3, xmm3
test r11b, r11b
je 0x1400574ed
movss dword [rbp + 4], xmm3
xorps xmm10, xmm10
jmp 0x1400574f1
movaps xmm10, xmm12
addss xmm6, dword [rbp + 0xd0]
subss xmm6, xmm11
addss xmm7, dword [rbp + 0xd4]
subss xmm7, xmm3
mov qword [rbp - 0x30], r8
cmp r8, r15
jae 0x1400576d2
movss xmm3, dword [rbp + 0xe4]
movss xmm4, dword [rbp + 0xdc]
xorps xmm12, xmm12
movss xmm13, dword [rbp + 4]
mov r14, qword [rbp - 0x40]
xor edi, edi
movaps xmm0, xmm3
addss xmm0, dword [rsi + 0x3c10]
comiss xmm7, xmm0
ja 0x1400576ac
comiss xmm4, xmm7
jbe 0x14005757d
cmp r8, r15
jae 0x14005768e
mov ecx, 0xa
movzx eax, word [r8]
add r8, 2
mov qword [rbp - 0x30], r8
cmp ax, cx
je 0x14005768e
cmp r8, r15
jb 0x14005755e
jmp 0x14005768e
mov byte [rsp + 0x30], 1
lea rax, [rbp - 0x30]
mov qword [rsp + 0x20], rax
mov r9, r15
mov rdx, rsi
lea rcx, [rbp - 0x80]
call fcn.140052e58
movss xmm5, dword [rbp - 0x80]
comiss xmm12, xmm5
jb 0x1400575dc
mov rax, qword [rsi + 0x3c08]
cmp dword [rax], 0x20
jle 0x1400575bf
mov rax, qword [rax + 8]
movss xmm0, dword [rax + 0x80]
jmp 0x1400575c4
movss xmm0, dword [rax + 0x10]
mulss xmm0, dword [0x1401b8a80]
cvttss2si eax, xmm0
movd xmm5, eax
cvtdq2ps xmm5, xmm5
movss dword [rbp - 0x80], xmm5
movaps xmm2, xmm6
addss xmm2, xmm5
movaps xmm0, xmm7
addss xmm0, xmm10
addss xmm6, xmm12
movaps xmm1, xmm13
subss xmm1, dword [rsi + 0x3c10]
addss xmm1, xmm7
maxss xmm6, dword [rbp + 0xd8]
movss xmm4, dword [rbp + 0xdc]
maxss xmm1, xmm4
movss dword [rbp + 0x40], xmm6
movss dword [rbp + 0x44], xmm1
movss xmm5, dword [rbp + 0xe0]
minss xmm2, xmm5
movss xmm3, dword [rbp + 0xe4]
minss xmm0, xmm3
movss dword [rbp + 0x48], xmm2
movss dword [rbp + 0x4c], xmm0
comiss xmm0, xmm4
jbe 0x14005768a
comiss xmm3, xmm1
jbe 0x14005768a
comiss xmm2, dword [rbp + 0xd8]
jbe 0x14005768a
comiss xmm5, xmm6
jbe 0x14005768a
mov dword [rsp + 0x28], edi
movss dword [rsp + 0x20], xmm9
mov r9d, r12d
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x40]
mov rcx, qword [r14 + 0x298]
call fcn.140048f78
movss xmm3, dword [rbp + 0xe4]
movss xmm4, dword [rbp + 0xdc]
mov r8, qword [rbp - 0x30]
movss xmm6, dword [rbp + 0xd0]
subss xmm6, xmm11
addss xmm7, dword [rsi + 0x3c10]
cmp r8, r15
jb 0x140057537
movss xmm12, dword [0x1401b8ad0]
movss xmm13, dword [rbp - 0x28]
mov rbx, qword [rbp - 0x78]
xorps xmm3, xmm3
mov rdi, qword [rbp - 0x68]
mov r14, qword [rbp - 0x20]
mov r11d, dword [rsp + 0x64]
xor r10d, r10d
mov r12b, byte [rsp + 0x50]
mov r9, qword [rsp + 0x78]
test r11b, r11b
jne 0x1400576f3
mov rax, r14
sub rax, r9
cmp rax, 0x200000
jge 0x1400577a9
mov rcx, qword [0x1401d04d0]
movzx r15d, byte [rsp + 0x54]
mov eax, r15d
add rax, rax
movdqu xmm0, xmmword [rcx + rax*8 + 0x38a4]
movups xmmword [rbp + 0x40], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rcx + 0x37c8]
movss dword [rbp + 0x4c], xmm0
movss xmm0, dword [rbp + 0xd0]
addss xmm0, xmm3
movss dword [rbp - 0x80], xmm0
movss xmm0, dword [rbp + 0xd4]
addss xmm0, xmm12
movss dword [rbp - 0x7c], xmm0
lea r8, [rbp + 0xd8]
test r11b, r11b
cmovne r8, r10
lea rcx, [rbp + 0x40]
call fcn.14002c09c
mov qword [rsp + 0x40], r8
xorps xmm12, xmm12
movss dword [rsp + 0x38], xmm12
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x28], r9
mov dword [rsp + 0x20], eax
lea r9, [rbp - 0x80]
movss xmm2, dword [rsi + 0x3c10]
mov rdx, qword [rsi + 0x3c08]
mov r13, qword [rbp - 0x40]
mov rcx, qword [r13 + 0x298]
call fcn.140049220
jmp 0x1400577b6
xorps xmm3, xmm3
jmp 0x1400576d7
xorps xmm12, xmm12
mov r15b, byte [rsp + 0x54]
mov r13, qword [rbp - 0x40]
xor r9d, r9d
test r12b, r12b
je 0x1400579be
movss xmm0, dword [rsi + 0x18]
addss xmm0, dword [rdi + 0xe80]
movss dword [rdi + 0xe80], xmm0
cmp byte [rsi + 0x5b], r9b
je 0x140057809
comiss xmm12, xmm0
jae 0x140057809
movss xmm1, dword [0x1401b8ac0]
call fcn.140124784
movss xmm1, dword [0x1401b8aa0]
xor r9d, r9d
comiss xmm1, xmm0
jae 0x140057809
mov cl, r9b
lea edi, [r9 + 1]
jmp 0x140057811
mov edi, 1
mov cl, dil
addss xmm13, dword [rbp + 0xd0]
subss xmm13, xmm11
cvttss2si eax, xmm13
xorps xmm6, xmm6
cvtsi2ss xmm6, eax
addss xmm8, dword [rbp + 0xd4]
subss xmm8, xmm12
cvttss2si eax, xmm8
xorps xmm7, xmm7
cvtsi2ss xmm7, eax
movaps xmm1, xmm7
subss xmm1, dword [rsi + 0x3c10]
addss xmm1, dword [0x1401b8a80]
movaps xmm2, xmm6
movss xmm3, dword [rbp + 0xe8]
subss xmm2, xmm3
subss xmm2, dword [rbx + 0x40]
movss xmm0, dword [rsi + 0x18]
mulss xmm0, dword [0x1401b8afc]
mulss xmm2, xmm0
addss xmm2, dword [rbx + 0x40]
movss dword [rbx + 0x40], xmm2
test cl, cl
je 0x140057975
movaps xmm0, xmm7
subss xmm0, dword [0x1401b8ac8]
comiss xmm0, dword [rbp + 0xdc]
jbe 0x140057975
movss xmm0, dword [rbp + 0xe4]
comiss xmm0, xmm1
jbe 0x140057975
movaps xmm0, xmm6
addss xmm0, xmm9
comiss xmm0, dword [rbp + 0xd8]
jbe 0x140057975
movss xmm0, dword [rbp + 0xe0]
comiss xmm0, xmm6
jbe 0x140057975
mov rax, qword [0x1401d04d0]
movdqu xmm0, xmmword [rax + 0x38a4]
movups xmmword [rbp + 0x40], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x37c8]
movss dword [rbp + 0x4c], xmm0
movaps xmm1, xmm2
xorps xmm1, xmmword [0x1401b9020]
movaps xmm0, xmm3
subss xmm0, xmm1
movss dword [rbp - 0x80], xmm0
movss xmm1, dword [rbp + 0xf4]
subss xmm1, dword [0x1401b8af8]
movss dword [rbp - 0x7c], xmm1
addss xmm2, xmm3
movss dword [rbp - 0x50], xmm2
movss xmm0, dword [rbp + 0xec]
addss xmm0, dword [0x1401b8af8]
movss dword [rbp - 0x4c], xmm0
lea rcx, [rbp + 0x40]
call fcn.14002c09c
mov r9d, eax
movss dword [rsp + 0x20], xmm9
lea r8, [rbp - 0x80]
lea rdx, [rbp - 0x50]
mov rcx, qword [r13 + 0x298]
call fcn.140048d2c
xor r9d, r9d
movss xmm13, dword [rbp - 0x38]
mov r13d, dword [rsp + 0x6c]
mov r12, qword [rsp + 0x78]
cmp byte [rsp + 0x68], r9b
jne 0x1400579ce
mov byte [rsi + 0x5be8], dil
subss xmm6, xmm9
movss xmm0, dword [rsi + 0x3c10]
subss xmm7, xmm0
movss dword [rsi + 0x5bec], xmm6
movss dword [rsi + 0x5bf0], xmm7
movss dword [rsi + 0x5bf4], xmm0
jmp 0x1400579ce
movss xmm13, dword [rbp - 0x38]
mov r13d, dword [rsp + 0x6c]
mov r12, qword [rsp + 0x78]
mov ebx, dword [rbp - 0x60]
test bl, bl
je 0x1400579e2
test r15b, r15b
jne 0x1400579e2
call fcn.1400362bc
xor r9d, r9d
cmp byte [rsp + 0x64], r9b
je 0x140057a56
movss dword [rbp - 0x80], xmm15
addss xmm14, dword [rsi + 0x3808]
movss dword [rbp - 0x7c], xmm14
lea rcx, [rbp - 0x80]
call fcn.140052db8
or dword [rsi + 0x4764], 0x401
call fcn.140031554
mov eax, dword [rsi + 0x4780]
and eax, 0x80
mov ebx, dword [rbp + 0x100]
or ebx, eax
call fcn.140038ebc
xor r9d, r9d
cmp dword [rsi + 0x4778], r9d
jne 0x140057a53
mov dword [rsi + 0x4778], r13d
mov eax, dword [rbp + 0xfc]
mov dword [rsi + 0x477c], eax
mov dword [rsi + 0x4780], ebx
mov ebx, dword [rbp - 0x60]
cmp byte [rsi + 0x5ca8], r9b
je 0x140057a9d
test bl, bl
je 0x140057a68
test r15b, r15b
je 0x140057a9d
mov rax, qword [0x1401d04d0]
lea rcx, [0x1401b87c0]
mov qword [rax + 0x5cc8], rcx
lea rcx, [0x1401b87bc]
mov qword [rax + 0x5cd0], rcx
mov r8, r14
mov rdx, r12
lea rcx, [rbp + 0xd0]
call fcn.14003db10
movss xmm0, dword [rbp + 8]
comiss xmm0, xmm12
jbe 0x140057ad9
movss xmm0, dword [rbp]
addss xmm0, dword [rsi + 0x381c]
addss xmm13, dword [rsi + 0x3808]
mov r9d, 1
xor r8d, r8d
mov rdx, qword [rbp + 0x10]
unpcklps xmm0, xmm13
movq rcx, xmm0
call fcn.14002c51c
mov eax, dword [rbp + 0x248]
and al, 0x20
neg al
sbb al, al
and al, byte [rsp + 0x5c]
jmp 0x140054ded
call fcn.14000471c
int3