Function at 0x1801e98b0
Capabilities:
Get thread local storage value

Disassembly:
mov qword [rsp + 0x20], r9
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push r13
push r14
push r15
sub rsp, 0x208
mov r11, qword [rsp + 0x258]
mov r15, rcx
mov rbp, r9
mov rcx, r11
mov r13d, r8d
mov r14, rdx
call fcn.180196ef0
cmp r8d, eax
jbe 0x1801e9904
xor al, al
add rsp, 0x208
pop r15
pop r14
pop r13
pop rbp
ret
mov qword [rsp + 0x200], rbx
mov qword [rsp + 0x1f8], rsi
mov qword [rsp + 0x1f0], rdi
mov qword [rsp + 0x1e8], r12
mov r12, qword [rsp + 0x260]
test r12, r12
jne 0x1801e993d
mov r12, qword [r11 + 0x28]
mov qword [rsp + 0x260], r12
mov r12b, 1
mov byte [rsp + 0x45], r12b
test r8d, r8d
je 0x1801e9a38
mov r9, rdx
mov r10, r13
movabs rbx, 0x1804c210028
nop
mov rdx, qword [r9]
mov eax, dword [rdx + 0x98]
shr rax, 0x18
test al, 1
je 0x1801e9a22
mov rax, qword [rdx + 0xa8]
mov r8, qword [rax + 0x10]
test rbx, r8
jne 0x1801e9a22
cmp rdx, 0xffffffffffffffff
je 0x1801e99a9
mov ecx, r8d
shr rcx, 8
test cl, 1
je 0x1801e99a9
mov eax, dword [rdx + 0x98]
shr rax, 0x18
test al, 1
jne 0x1801e9a22
mov edx, dword [r11 + 0x78]
mov ecx, edx
call fcn.1802423d8
test al, al
jne 0x1801e9a22
and edx, 0xfff00000
cmp edx, 0x23600000
ja 0x1801e99f0
cmp edx, 0x23600000
je 0x1801e9a22
cmp edx, 0x12900000
je 0x1801e9a22
cmp edx, 0x12e00000
je 0x1801e9a22
cmp edx, 0x13000000
je 0x1801e9a22
cmp edx, 0x23300000
je 0x1801e9a22
jmp 0x1801e9a10
cmp edx, 0x23700000
je 0x1801e9a22
cmp edx, 0x23900000
je 0x1801e9a22
cmp edx, 0x23f00000
je 0x1801e9a22
cmp edx, 0x30300000
je 0x1801e9a22
cmp edx, 0x10000000
jne 0x1801e9a25
shr r8, 0xc
test r8b, 1
je 0x1801e9a25
xor r12b, r12b
add r9, 8
sub r10, 1
jne 0x1801e9960
mov byte [rsp + 0x45], r12b
mov eax, 1
xor bl, bl
xor dil, dil
mov esi, eax
cmp r13d, eax
jbe 0x1801e9ae7
lea rbp, [r14 + 8]
mov r12d, eax
nop word [rax + rax]
mov r8, qword [rbp]
movzx ebx, bl
mov rax, qword [r8 + 0xa8]
mov rcx, qword [rax + 0x10]
mov eax, dword [r11 + 0x78]
test rcx, 0x4200000
cmovne ebx, r12d
and eax, 0xfff00000
cmp eax, 0x23300000
jne 0x1801e9a9d
movzx eax, cl
movzx ebx, bl
shr al, 5
test r12b, al
cmovne ebx, r12d
mov rax, rcx
shr rax, 0xc
test r12b, al
je 0x1801e9ab7
shr cl, 6
movzx edi, dil
test r12b, cl
cmove edi, r12d
mov rdx, qword [r14]
mov rcx, r15
call fcn.1801e9480
test al, al
je 0x1801e9ad9
mov r11, qword [rsp + 0x258]
inc esi
add rbp, 8
cmp esi, r13d
jb 0x1801e9a60
movzx r12d, byte [rsp + 0x45]
mov rbp, qword [rsp + 0x248]
cmp esi, r13d
jne 0x1801e9c29
test r12b, r12b
je 0x1801e9c22
test r13d, r13d
je 0x1801e9c22
mov rdi, r13
xor ecx, ecx
nop word [rax + rax]
mov rbx, qword [r14]
mov eax, dword [rbx + 0x98]
shr rax, 0x18
test al, 1
je 0x1801e9c14
mov r8, qword [r15 + 0xd040]
mov dword [rsp + 0x28], 0x11
mov dword [rsp + 0x20], ecx
xor r9d, r9d
mov rdx, r14
mov rcx, r15
call fcn.18019f030
test eax, eax
js 0x1801e9c12
mov rcx, qword [r14]
mov eax, dword [rbx + 0xa4]
mov dword [rcx + 0xa4], eax
mov rax, qword [r14]
mov qword [rax + 0xe0], rax
mov rcx, qword [r14]
mov rax, qword [rbx + 0x140]
mov qword [rcx + 0x140], rax
mov rax, qword [rbx + 0x148]
mov qword [rcx + 0x148], rax
mov rax, qword [rbx + 0x150]
mov qword [rcx + 0x150], rax
mov rax, qword [rbx + 0x158]
mov qword [rcx + 0x158], rax
mov rax, qword [rbx + 0x160]
mov qword [rcx + 0x160], rax
mov rax, qword [rbx + 0x168]
mov qword [rcx + 0x168], rax
mov rax, qword [rbx + 0x170]
mov qword [rcx + 0x170], rax
mov rax, qword [rbx + 0x178]
mov qword [rcx + 0x178], rax
mov rax, qword [rbx + 0x180]
mov qword [rcx + 0x180], rax
mov eax, dword [rcx + 0x98]
xor eax, dword [rbx + 0x98]
and eax, 0x1f00000
xor qword [rcx + 0x98], rax
mov rax, qword [r14]
or qword [rax + 0x98], 0x1000010
xor ecx, ecx
jmp 0x1801e9c14
xor ecx, ecx
add r14, 8
sub rdi, 1
jne 0x1801e9b10
mov al, 1
jmp 0x1801eae48
test bl, bl
jne 0x1801ed173
test dil, dil
jne 0x1801ed173
movaps xmmword [rsp + 0x190], xmm10
xor eax, eax
movaps xmmword [rsp + 0x180], xmm11
lea r8, [r13*8]
lea rcx, [rsp + 0xb0]
mov rdx, r14
mov byte [rsp + 0x40], dil
mov word [rsp + 0x41], ax
mov byte [rsp + 0x43], al
movaps xmmword [rsp + 0x170], xmm12
movaps xmmword [rsp + 0x160], xmm13
mov rdi, r13
mov qword [rsp + 0x98], r13
call sub.msvcrt.dll_memcpy
mov rbx, qword [rsp + 0x258]
xor r11b, r11b
mov r8d, 1
mov ecx, dword [rbx + 0x78]
test rbp, rbp
movzx r14d, r11b
cmove r14d, r8d
mov eax, ecx
shr eax, 0x1c
mov dword [rsp + 0x48], r14d
cmp eax, r8d
je 0x1801e9cd2
cmp eax, 2
je 0x1801e9cd2
cmp eax, 3
je 0x1801e9cd2
cmp eax, 4
jne 0x1801e9e96
test byte [r15 + 0xcef7], 0x10
jne 0x1801e9cea
mov eax, ecx
and eax, 0xf0000000
cmp eax, 0x10000000
jne 0x1801e9d35
mov edx, ecx
and edx, 0xfff00000
cmp edx, 0x10000000
je 0x1801e9d35
cmp edx, 0x10400000
je 0x1801e9d35
cmp edx, 0x10e00000
je 0x1801e9d35
cmp edx, 0x11000000
je 0x1801e9d35
cmp edx, 0x11200000
je 0x1801e9d35
cmp edx, 0x11400000
je 0x1801e9d35
movzx r14d, r14b
cmp edx, 0x30000000
cmovne r14d, r8d
mov dword [rsp + 0x48], r14d
xor r13b, r13b
test byte [r15 + 0xcef4], 2
je 0x1801e9e8e
mov eax, ecx
and eax, 0xfff00000
cmp eax, 0x10000000
je 0x1801e9e84
shr ecx, 0x1c
cmp ecx, r8d
je 0x1801e9d73
cmp ecx, 2
je 0x1801e9d73
cmp ecx, 3
je 0x1801e9d73
cmp ecx, 4
jne 0x1801e9e7a
mov eax, dword [rsp + 0x240]
mov ebp, r8d
lea r12, [rsp + 0xb0]
cmp ebp, eax
jae 0x1801e9e31
mov rsi, qword [r12]
mov rax, qword [rsi + 0xa8]
mov rcx, qword [rax + 0x10]
mov rax, rcx
shr rax, 9
test al, 1
je 0x1801e9db2
mov rax, rcx
shr rax, 8
test al, 1
je 0x1801e9e01
shr cl, 1
test cl, 1
jne 0x1801e9e60
mov ebx, ebp
lea rdi, [r12 + 8]
nop word [rax + rax]
mov r8, qword [rdi]
mov rdx, rsi
mov rcx, r15
call fcn.1801e9480
test al, al
jne 0x1801e9df5
mov eax, dword [rsp + 0x240]
inc ebx
add rdi, 8
cmp ebx, eax
jb 0x1801e9dd0
jmp 0x1801e9e08
mov eax, dword [rsp + 0x240]
mov r13b, 1
jmp 0x1801e9e08
mov eax, dword [rsp + 0x240]
inc ebp
add r12, 8
test r13b, r13b
je 0x1801e9d85
mov rbx, qword [rsp + 0x258]
mov r13d, dword [rsp + 0x240]
mov rdi, qword [rsp + 0x98]
jmp 0x1801e9e96
mov rbx, qword [rsp + 0x258]
mov rdi, qword [rsp + 0x98]
test r13b, r13b
mov r13d, dword [rsp + 0x240]
movzx r14d, r14b
mov ecx, 1
cmove r14d, ecx
mov dword [rsp + 0x48], r14d
jmp 0x1801e9e96
mov rbx, qword [rsp + 0x258]
mov r13d, dword [rsp + 0x240]
mov rdi, qword [rsp + 0x98]
jmp 0x1801e9e96
mov r13d, dword [rsp + 0x240]
jmp 0x1801e9e96
mov r13d, dword [rsp + 0x240]
jmp 0x1801e9e96
mov r13d, dword [rsp + 0x240]
mov r11, qword [rsp + 0x230]
xor ebp, ebp
movzx r10d, byte [r11 + 0xcef4]
test r10b, 2
je 0x1801e9f17
test r14b, r14b
je 0x1801e9f17
mov eax, dword [rbx + 0x78]
shr eax, 0x1c
cmp eax, 1
je 0x1801e9f17
cmp eax, 2
je 0x1801e9f17
cmp eax, 3
je 0x1801e9f17
cmp eax, 4
je 0x1801e9f17
test r13d, r13d
je 0x1801e9f17
lea r8, [rsp + 0xb0]
mov r9, rdi
nop dword [rax]
mov rax, qword [r8]
mov rcx, qword [rax + 0xa8]
mov rdx, qword [rcx + 0x10]
mov rax, rdx
shr rax, 9
test al, 1
je 0x1801e9f08
shr rdx, 8
movzx r14d, r14b
test dl, 1
cmove r14d, ebp
add r8, 8
sub r9, 1
jne 0x1801e9ee0
mov dword [rsp + 0x48], r14d
test r10b, 1
je 0x1801e9f5a
test r14b, r14b
je 0x1801e9f5a
mov eax, dword [rbx + 0x20]
test eax, eax
je 0x1801e9f5a
mov rdx, qword [rbx + 0x28]
mov r8, rax
mov rax, qword [rdx]
movzx r14d, r14b
mov rcx, qword [rax + 0xa8]
movzx eax, byte [rcx + 0x10]
shr al, 5
test al, 1
cmovne r14d, ebp
add rdx, 8
sub r8, 1
jne 0x1801e9f30
mov dword [rsp + 0x48], r14d
mov r12d, dword [rsp + 0x240]
movsd xmm12, qword [0x1800685a0]
movsd xmm11, qword [0x180068590]
movaps xmmword [rsp + 0x1d0], xmm6
or esi, 0xffffffff
movaps xmmword [rsp + 0x1c0], xmm7
mov r14d, ebp
mov r15d, ebp
mov r13, rbp
xorpd xmm10, xmm10
movsd xmm13, qword [0x1800685d8]
movaps xmmword [rsp + 0x1b0], xmm8
test r12d, r12d
je 0x1801ea4f8
mov r12, qword [rsp + r13*8 + 0xb0]
cmp r12, 0xffffffffffffffff
je 0x1801ea4d9
mov rax, qword [r12 + 0x100]
cmp rax, 0xffffffffffffffff
je 0x1801ea037
mov ecx, dword [rsp + 0x268]
cmp dword [rax + 0x30], ecx
jae 0x1801ea4b5
mov rax, qword [rbx + 0x28]
mov rcx, qword [rax]
mov rax, qword [rcx + 0xd0]
movzx edx, byte [rcx + 0xd8]
cmp rax, 0xffffffffffffffff
je 0x1801ea01b
mov rcx, qword [r12 + 0xd0]
cmp rax, rcx
je 0x1801ea01b
mov dl, byte [rax + 0xd8]
mov rax, qword [rax + 0xd0]
cmp rax, 0xffffffffffffffff
jne 0x1801ea003
cmp rax, qword [r12 + 0xd0]
jne 0x1801ea4b5
cmp dl, byte [r12 + 0xd8]
jne 0x1801ea4b5
movsd qword [rsp + 0xd0], xmm11
movsd qword [rsp + 0x80], xmm10
mov rdi, r12
cmp r12, 0xffffffffffffffff
je 0x1801ea4b5
cmp rdi, 0xffffffffffffffff
je 0x1801ea095
mov rax, qword [rdi + 0xa8]
mov ecx, dword [rax + 0x10]
shr rcx, 8
test cl, 1
je 0x1801ea095
mov eax, dword [rdi + 0x98]
shr rax, 0x18
test al, 1
je 0x1801ea095
test byte [r11 + 0xcefb], 0x10
je 0x1801ea0d6
mov ecx, dword [rbx + 0x78]
call fcn.1802432dc
test al, al
jne 0x1801ea0d6
cmp qword [rdi + 0x100], 0xffffffffffffffff
je 0x1801ea0c7
lea r9, [rsp + 0x80]
lea r8, [rsp + 0xd0]
mov rdx, rdi
mov rcx, r11
call fcn.1801e9650
mov r11, qword [rsp + 0x230]
mov rdi, rax
jmp 0x1801ea0cb
or rdi, 0xffffffffffffffff
cmp rdi, 0xffffffffffffffff
jne 0x1801ea058
jmp 0x1801ea4b5
movsd xmm7, qword [rsp + 0xd0]
movsd xmm6, qword [rsp + 0x80]
ucomisd xmm11, xmm7
jp 0x1801ea0fe
jne 0x1801ea0fe
ucomisd xmm10, xmm6
jp 0x1801ea0fe
je 0x1801ea48a
lea r8, [rsp + 0xd8]
mov rdx, r11
mov rcx, rdi
call fcn.180199870
test eax, eax
js 0x1801eb6fc
movsd xmm8, qword [rsp + 0xd8]
mov edx, esi
mov rsi, qword [rsp + 0x230]
mov r10d, dword [rsi + 0xc]
mulsd xmm8, xmm7
addsd xmm8, xmm6
cvtsd2ss xmm0, xmm8
movsd qword [rsp + 0xd8], xmm8
movss dword [rsp + 0x90], xmm0
movsxd rbx, dword [rsp + 0x90]
nop dword [rax + rax]
inc edx
cmp edx, r10d
jae 0x1801ea267
mov rax, qword [rsi + 0xce58]
mov r8, qword [rax + rdx*8]
cmp qword [r8 + 0x30], 0
je 0x1801ea160
mov rax, qword [r8 + 0x10]
bt rax, 8
jae 0x1801ea160
test rax, 0xc00
jne 0x1801ea160
mov r8, qword [r8 + 0x30]
mov r11, qword [rsi + 0xce58]
mov r9, qword [r8]
nop
cmp r8, 0xffffffffffffffff
je 0x1801ea221
mov rax, qword [r8 + 0xa8]
mov ecx, dword [rax + 0x10]
shr rcx, 8
test cl, 1
je 0x1801ea221
mov eax, dword [r8 + 0x98]
shr rax, 0x18
test al, 1
je 0x1801ea221
movsxd rax, dword [r8 + 0xa4]
test eax, eax
jne 0x1801ea1d8
lea ecx, [rax + 3]
jmp 0x1801ea1e9
lea rcx, [0x180000000]
mov ecx, dword [rcx + rax*4 + 0x12ad0]
and ecx, 0xf
movsxd rax, dword [rdi + 0xa4]
test eax, eax
jne 0x1801ea1fb
mov eax, 3
jmp 0x1801ea214
lea rsi, [0x180000000]
mov eax, dword [rsi + rax*4 + 0x12ad0]
mov rsi, qword [rsp + 0x230]
and eax, 0xf
cmp ecx, eax
jne 0x1801ea221
cmp rbx, qword [r8 + 0x148]
je 0x1801ea27d
test r9, r9
je 0x1801ea230
mov r8, r9
mov r9, qword [r9]
jmp 0x1801ea25e
inc edx
cmp edx, r10d
jae 0x1801ea267
mov rcx, qword [r11 + rdx*8]
mov eax, edx
cmp qword [rcx + 0x30], 0
je 0x1801ea230
mov rax, qword [rcx + 0x10]
bt rax, 8
jae 0x1801ea230
test rax, 0xc00
jne 0x1801ea230
mov r8, qword [rcx + 0x30]
mov r9, qword [r8]
test r8, r8
jne 0x1801ea1a0
mov ecx, dword [0x18025e63c]
mov rsi, qword [rsi + 0xd040]
test ecx, ecx
jns 0x1801ea290
mov rcx, rbp
jmp 0x1801ea299
mov r11, qword [rsp + 0x230]
mov rdi, r8
or esi, 0xffffffff
jmp 0x1801ea48a
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rcx, rax
cmp qword [rcx + 0x18], 0
je 0x1801ea2cd
mov rbx, qword [rcx + 0x18]
test rbx, rbx
jne 0x1801ea2ae
mov rbx, rbp
jmp 0x1801ea2e4
mov rax, qword [rbx]
mov qword [rcx + 0x18], rax
test rax, rax
jne 0x1801ea2be
mov qword [rcx + 0x20], rbp
movabs rax, 0xfefefefefefefefe
mov qword [rbx], rax
jmp 0x1801ea2e4
mov rcx, qword [rcx + 0x10]
mov edx, 0x188
mov r8d, 0x10
call fcn.180243b70
mov rbx, rax
test rbx, rbx
je 0x1801eb6fc
or eax, 0xffffffff
xor r9d, r9d
xor r8d, r8d
mov rdx, rsi
mov rcx, rbx
mov qword [rbx], rbp
mov dword [rbx + 0xa0], eax
mov qword [rbx + 8], rbp
mov qword [rbx + 0x78], rbp
mov qword [rbx + 0x80], rbp
mov qword [rbx + 0x88], rbp
mov qword [rbx + 0x90], rbp
mov qword [rbx + 0xa8], 0xffffffffffffffff
mov qword [rbx + 0x40], rbp
call fcn.1801992b0
mov ebp, eax
test eax, eax
js 0x1801ea426
mov rdx, qword [rsp + 0x230]
movapd xmm2, xmm8
mov r9d, 4
mov dword [rbx + 0xa4], 4
call fcn.18019a200
mov ebp, eax
test eax, eax
js 0x1801ea426
mov rdx, qword [rbx + 0xa8]
mov eax, dword [rdx + 0x10]
bt rax, 8
jae 0x1801ea3d3
cmp qword [rbx + 0xc0], 0xffffffffffffffff
jne 0x1801ea3d3
cmp qword [rbx + 0xb8], 0xffffffffffffffff
jne 0x1801ea3d3
movsd xmm1, qword [rbx + 0x140]
or qword [rbx + 0x98], 0x1000010
mov rcx, qword [rbx + 0x98]
cvttsd2si eax, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
andpd xmm1, xmm12
comisd xmm13, xmm1
jbe 0x1801ea3d3
bts rcx, 0x15
mov qword [rbx + 0x98], rcx
mov rcx, rbx
call fcn.18019c4f0
test al, al
je 0x1801ea3ea
or qword [rbx + 0x98], 0x20000
mov rax, qword [rdx + 0x10]
test al, 0x10
je 0x1801ea401
bt rax, 0x15
jae 0x1801ea401
or qword [rbx + 0x98], 0x10
mov r11, qword [rsp + 0x230]
xor ebp, ebp
mov rdi, rbx
mov eax, dword [r11 + 0x10]
mov dword [rbx + 0xa0], eax
inc dword [r11 + 0x10]
or dword [r11 + 0x28], 4
or esi, 0xffffffff
jmp 0x1801ea48a
mov rcx, rbx
call fcn.1801991c0
mov ecx, dword [0x18025e63c]
test ecx, ecx
jns 0x1801ea43c
xor esi, esi
jmp 0x1801ea445
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rsi, rax
mov edx, 0xfe
mov r8d, 0x188
mov rcx, rbx
call fcn.18024adb8
mov qword [rbx], 0
mov rax, qword [rsi + 0x20]
test rax, rax
je 0x1801ea46d
mov qword [rax], rbx
jmp 0x1801ea471
mov qword [rsi + 0x18], rbx
mov qword [rsi + 0x20], rbx
test ebp, ebp
js 0x1801eb6fc
mov r11, qword [rsp + 0x230]
xor ebp, ebp
or esi, 0xffffffff
movabs rax, 0x3ff0000000000000
inc r14d
mov qword [rsp + r13*8 + 0xb0], rdi
mov qword [rsp + r13*8 + 0xe8], rbp
mov qword [rsp + r13*8 + 0x108], rax
cmp rdi, 0xffffffffffffffff
jne 0x1801ea4d9
mov r12, qword [r12 + 0xe8]
cmp qword [rsp + r13*8 + 0xb0], r12
je 0x1801ea4d9
mov rbx, qword [rsp + 0x258]
cmp r12, 0xffffffffffffffff
jne 0x1801e9fc2
mov r12d, dword [rsp + 0x240]
mov rbx, qword [rsp + 0x258]
inc r15d
inc r13
cmp r15d, r12d
jb 0x1801e9fb0
cmp r14d, r12d
je 0x1801eade4
mov r8d, ebp
mov dword [rsp + 0x68], ebp
mov r10, rbp
mov qword [rsp + 0x90], rbp
test r12d, r12d
je 0x1801eabc4
movaps xmmword [rsp + 0x1a0], xmm9
jmp 0x1801ea538
mov r11, qword [rsp + 0x230]
cmp byte [rsp + r10 + 0x40], 0
jne 0x1801eab9a
mov rdx, qword [rsp + r10*8 + 0xb0]
mov qword [rsp + 0x88], rdx
cmp rdx, 0xffffffffffffffff
je 0x1801ea5ad
mov rax, qword [rdx + 0xa8]
mov ecx, dword [rax + 0x10]
shr rcx, 8
test cl, 1
je 0x1801ea5b7
mov eax, dword [rdx + 0x98]
shr rax, 0x18
test al, 1
je 0x1801ea5a3
test byte [r11 + 0xcefb], 0x10
je 0x1801eab9a
mov rbx, qword [rsp + 0x258]
mov ecx, dword [rbx + 0x78]
call fcn.1802432dc
test al, al
jne 0x1801eab9a
jmp 0x1801ea5bf
mov rbx, qword [rsp + 0x258]
jmp 0x1801ea5bf
mov rbx, qword [rsp + 0x258]
jmp 0x1801ea5bf
mov rbx, qword [rsp + 0x258]
mov r9, rdx
mov qword [rsp + 0x60], rdx
movapd xmm8, xmm11
movapd xmm9, xmm10
mov dword [rsp + 0x58], ebp
mov dword [rsp + 0x54], ebp
mov r8, rdx
mov qword [rsp + 0xa8], rdx
cmp rdx, 0xffffffffffffffff
je 0x1801ea97b
jmp 0x1801ea5f8
mov r11, qword [rsp + 0x230]
mov rax, qword [r8 + 0x100]
cmp rax, 0xffffffffffffffff
je 0x1801ea671
mov ecx, dword [rsp + 0x268]
cmp dword [rax + 0x30], ecx
jae 0x1801ea943
mov rax, qword [rbx + 0x28]
mov rcx, qword [rax]
mov rax, qword [rcx + 0xd0]
movzx edx, byte [rcx + 0xd8]
cmp rax, 0xffffffffffffffff
je 0x1801ea64f
mov rcx, qword [r8 + 0xd0]
cmp rax, rcx
je 0x1801ea64f
mov dl, byte [rax + 0xd8]
mov rax, qword [rax + 0xd0]
cmp rax, 0xffffffffffffffff
jne 0x1801ea637
cmp rax, qword [r8 + 0xd0]
jne 0x1801ea93b
cmp dl, byte [r8 + 0xd8]
jne 0x1801ea931
mov rdx, qword [rsp + 0x88]
movapd xmm6, xmm11
movapd xmm7, xmm10
mov r13, r8
movsd qword [rsp + 0xd8], xmm6
movsd qword [rsp + 0xa0], xmm7
cmp r8, 0xffffffffffffffff
je 0x1801ea943
nop word [rax + rax]
cmp qword [r13 + 0x100], 0xffffffffffffffff
mov rdx, qword [rsp + 0x98]
mov eax, ebp
lea r14, [rsp + 0x40]
lea r15, [rsp + 0xb0]
mov ecx, ebp
cmove eax, esi
mov qword [rsp + 0x78], rdx
mov dword [rsp + 0x50], ecx
mov qword [rsp + 0x80], r14
mov qword [rsp + 0xd0], r15
mov dword [rsp + 0x70], eax
jmp 0x1801ea6eb
mov r11, qword [rsp + 0x230]
cmp byte [r14], 0
jne 0x1801ea874
mov esi, ebp
mov rbp, qword [r15]
xor r12b, r12b
mov rdi, rbp
cmp rbp, 0xffffffffffffffff
je 0x1801ea872
mov r14d, dword [rsp + 0x268]
mov r15, qword [rsp + 0x258]
jmp 0x1801ea728
mov r11, qword [rsp + 0x230]
mov rax, qword [rdi + 0x100]
cmp rax, 0xffffffffffffffff
je 0x1801ea795
cmp dword [rax + 0x30], r14d
jae 0x1801ea819
mov rax, qword [r15 + 0x28]
mov rcx, qword [rax]
mov rax, qword [rcx + 0xd0]
movzx edx, byte [rcx + 0xd8]
cmp rax, 0xffffffffffffffff
je 0x1801ea77c
nop word [rax + rax]
cmp rax, qword [rdi + 0xd0]
je 0x1801ea77c
mov dl, byte [rax + 0xd8]
mov rax, qword [rax + 0xd0]
cmp rax, 0xffffffffffffffff
jne 0x1801ea760
cmp rax, qword [rdi + 0xd0]
jne 0x1801ea819
cmp dl, byte [rdi + 0xd8]
jne 0x1801ea819
mov rbx, rdi
cmp rdi, 0xffffffffffffffff
je 0x1801ea819
jmp 0x1801ea7b8
mov r11, qword [rsp + 0x230]
mov r8, rbx
mov rdx, r13
mov rcx, r11
call fcn.1801e9480
test al, al
je 0x1801ea7e9
cmp qword [rbx + 0x100], 0xffffffffffffffff
mov r12b, 1
je 0x1801ea7e9
mov rax, qword [rbx + 0x100]
mov ecx, dword [rax + 0x30]
imul ecx, ecx
cmp ecx, esi
cmova esi, ecx
cmp byte [rsp + 0x48], 0
jne 0x1801ea819
cmp qword [rbx + 0x100], 0xffffffffffffffff
je 0x1801ea819
mov rcx, qword [rsp + 0x230]
xor r9d, r9d
xor r8d, r8d
mov rdx, rbx
call fcn.1801e9650
mov rbx, rax
cmp rax, 0xffffffffffffffff
jne 0x1801ea7b0
mov rdi, qword [rdi + 0xe8]
cmp rbp, rdi
je 0x1801ea82f
cmp rdi, 0xffffffffffffffff
jne 0x1801ea720
mov r14, qword [rsp + 0x80]
mov r15, qword [rsp + 0xd0]
test r12b, r12b
je 0x1801ea861
mov eax, dword [rsp + 0x70]
mov ecx, dword [rsp + 0x50]
mov rdx, qword [rsp + 0x78]
add eax, esi
inc ecx
xor ebp, ebp
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x50], ecx
jmp 0x1801ea874
mov eax, dword [rsp + 0x70]
mov ecx, dword [rsp + 0x50]
mov rdx, qword [rsp + 0x78]
xor ebp, ebp
jmp 0x1801ea874
xor ebp, ebp
inc r14
add r15, 8
sub rdx, 1
mov qword [rsp + 0x78], rdx
mov qword [rsp + 0x80], r14
mov qword [rsp + 0xd0], r15
jne 0x1801ea6e3
mov ebx, dword [rsp + 0x58]
cmp ebx, ecx
jb 0x1801ea8ac
cmp ebx, ecx
jne 0x1801ea8c3
cmp dword [rsp + 0x54], eax
jae 0x1801ea8c3
mov qword [rsp + 0x60], r13
movapd xmm8, xmm6
movapd xmm9, xmm7
mov dword [rsp + 0x58], ecx
mov dword [rsp + 0x54], eax
cmp byte [rsp + 0x48], 0
jne 0x1801ea91f
cmp qword [r13 + 0x100], 0xffffffffffffffff
je 0x1801ea91f
mov rcx, qword [rsp + 0x230]
lea r9, [rsp + 0xa0]
lea r8, [rsp + 0xd8]
mov rdx, r13
call fcn.1801e9650
mov r13, rax
cmp rax, 0xffffffffffffffff
je 0x1801ea91f
movsd xmm6, qword [rsp + 0xd8]
movsd xmm7, qword [rsp + 0xa0]
mov r11, qword [rsp + 0x230]
or esi, 0xffffffff
jmp 0x1801ea6a0
mov r8, qword [rsp + 0xa8]
mov rdx, qword [rsp + 0x88]
jmp 0x1801ea943
mov rdx, qword [rsp + 0x88]
jmp 0x1801ea943
mov rdx, qword [rsp + 0x88]
mov r8, qword [r8 + 0xe8]
mov qword [rsp + 0xa8], r8
cmp rdx, r8
je 0x1801ea96e
mov rbx, qword [rsp + 0x258]
mov esi, 0xffffffff
cmp r8, 0xffffffffffffffff
jne 0x1801ea5f0
mov r9, qword [rsp + 0x60]
mov r10, qword [rsp + 0x90]
mov r15, qword [rsp + 0x98]
movsd qword [rsp + r10*8 + 0x108], xmm8
movsd qword [rsp + r10*8 + 0xe8], xmm9
mov qword [rsp + r10*8 + 0xb0], r9
mov byte [rsp + r10 + 0x40], 1
lea r13, [rsp + 0x40]
mov qword [rsp + 0x80], r15
mov r12, rbp
cmp byte [r13], 0
jne 0x1801eab6c
mov r14, qword [rsp + r12 + 0xb0]
or rsi, 0xffffffffffffffff
mov rdi, r14
cmp r14, rsi
je 0x1801eab6a
mov r15d, dword [rsp + 0x268]
mov rax, qword [rdi + 0x100]
cmp rax, 0xffffffffffffffff
je 0x1801eaa52
cmp dword [rax + 0x30], r15d
jae 0x1801eab48
mov rax, qword [rsp + 0x258]
mov rax, qword [rax + 0x28]
mov rcx, qword [rax]
mov rax, qword [rcx + 0xd0]
movzx edx, byte [rcx + 0xd8]
cmp rax, 0xffffffffffffffff
je 0x1801eaa39
mov rcx, qword [rdi + 0xd0]
cmp rax, rcx
je 0x1801eaa39
mov dl, byte [rax + 0xd8]
mov rax, qword [rax + 0xd0]
cmp rax, 0xffffffffffffffff
jne 0x1801eaa21
cmp rax, qword [rdi + 0xd0]
jne 0x1801eab48
cmp dl, byte [rdi + 0xd8]
jne 0x1801eab48
movsd qword [rsp + 0xa8], xmm11
movsd qword [rsp + 0xa0], xmm10
mov rbx, rdi
cmp rdi, 0xffffffffffffffff
je 0x1801eab48
nop word [rax + rax]
mov rcx, qword [rsp + 0x230]
mov r8, rbx
mov rdx, r9
call fcn.1801e9480
test al, al
je 0x1801eaac5
cmp qword [rbx + 0x100], 0xffffffffffffffff
je 0x1801eaabf
mov rax, qword [rbx + 0x100]
mov ecx, dword [rax + 0x30]
imul ecx, ecx
cmp rsi, 0xffffffffffffffff
je 0x1801eaab8
cmp ecx, ebp
jbe 0x1801eaac5
mov ebp, ecx
mov rsi, rbx
jmp 0x1801eab02
cmp rsi, 0xffffffffffffffff
je 0x1801eaaff
cmp qword [rbx + 0x100], 0xffffffffffffffff
je 0x1801eab43
mov rcx, qword [rsp + 0x230]
lea r9, [rsp + 0xa0]
lea r8, [rsp + 0xa8]
mov rdx, rbx
call fcn.1801e9650
mov rbx, rax
cmp rax, 0xffffffffffffffff
je 0x1801eab3c
mov r9, qword [rsp + 0x60]
jmp 0x1801eaa80
mov rsi, rbx
movsd xmm0, qword [rsp + 0xa8]
movsd xmm1, qword [rsp + 0xa0]
mov r9, qword [rsp + 0x60]
mov qword [rsp + r12 + 0xb0], rbx
mov byte [r13], 1
movsd qword [rsp + r12 + 0x108], xmm0
movsd qword [rsp + r12 + 0xe8], xmm1
jmp 0x1801eab48
mov r9, qword [rsp + 0x60]
jmp 0x1801eab48
mov r9, qword [rsp + 0x60]
mov rdi, qword [rdi + 0xe8]
cmp r14, rdi
je 0x1801eab5e
cmp rdi, 0xffffffffffffffff
jne 0x1801ea9e0
mov r15, qword [rsp + 0x80]
xor ebp, ebp
jmp 0x1801eab6c
xor ebp, ebp
add r12, 8
inc r13
sub r15, 1
mov qword [rsp + 0x80], r15
jne 0x1801ea9b5
mov r10, qword [rsp + 0x90]
mov r8d, dword [rsp + 0x68]
mov r12d, dword [rsp + 0x240]
inc r8d
inc r10
mov esi, 0xffffffff
mov dword [rsp + 0x68], r8d
mov qword [rsp + 0x90], r10
cmp r8d, r12d
jb 0x1801ea530
movaps xmm9, xmmword [rsp + 0x1a0]
mov rax, qword [rsp + 0x258]
mov dword [rsp + 0x70], ebp
mov dword [rsp + 0x68], ebp
mov eax, dword [rax + 0x78]
mov dword [rsp + 0x54], ebp
mov dword [rsp + 0x58], ebp
shr eax, 0x1c
cmp eax, 1
jne 0x1801eabed
movzx r13d, al
jmp 0x1801eac08
cmp eax, 2
jne 0x1801eabf7
mov r13b, 1
jmp 0x1801eac08
cmp eax, 3
jne 0x1801eac01
mov r13b, 1
jmp 0x1801eac08
cmp eax, 4
sete r13b
mov bpl, 1
mov byte [rsp + 0x44], 1
movzx esi, bpl
test r12d, r12d
je 0x1801eade4
mov rcx, qword [rsp + 0x260]
mov r10, qword [rsp + 0x230]
lea r14, [rsp + 0x108]
lea r15, [rsp + 0xe8]
lea rax, [rsp + 0xb0]
sub r14, rcx
sub r15, rcx
sub rax, rcx
mov rdi, rcx
mov qword [rsp + 0x78], rax
mov rbx, qword [rax + rdi]
test sil, sil
je 0x1801eac72
mov eax, dword [rbx + 0x98]
shr rax, 0x18
test al, 1
je 0x1801eac72
mov sil, 1
jmp 0x1801eac75
xor sil, sil
mov r8, qword [rsp + 0xb0]
mov rdx, rbx
mov rcx, r10
call fcn.1801e9480
test al, al
jne 0x1801ead20
mov r11d, 1
mov dword [rsp + 0x70], r11d
test r13b, r13b
je 0x1801ead10
mov rdx, qword [rdi]
mov eax, dword [rdx + 0x98]
shr rax, 0x18
test r11b, al
je 0x1801ead00
mov r10, qword [rsp + 0x230]
test byte [r10 + 0xcef4], r11b
je 0x1801eacd6
mov rax, qword [rdx + 0xa8]
movzx ecx, byte [rax + 0x10]
shr cl, 5
test r11b, cl
jne 0x1801ead18
mov rax, qword [rdx + 0xa8]
movzx ecx, byte [rax + 0x10]
shr cl, 5
test r11b, cl
jne 0x1801ead4c
mov rax, qword [r10 + 0xd078]
cmp qword [rdx + 0xa8], rax
jne 0x1801ead18
movzx edx, byte [rsp + 0x44]
jmp 0x1801ead50
mov r10, qword [rsp + 0x230]
xor dl, dl
mov byte [rsp + 0x44], dl
jmp 0x1801ead50
mov r10, qword [rsp + 0x230]
xor dl, dl
mov byte [rsp + 0x44], dl
jmp 0x1801ead50
mov r10, qword [rsp + 0x230]
mov dl, byte [rsp + 0x44]
movzx ebp, bpl
mov rax, qword [r10 + 0xd078]
cmp qword [rbx + 0xa8], rax
mov eax, 0
cmovne ebp, eax
lea r11d, [rax + 1]
jmp 0x1801ead50
mov dl, byte [rsp + 0x44]
ucomisd xmm11, qword [r14 + rdi]
jp 0x1801ead5a
je 0x1801ead64
mov r8d, r11d
mov dword [rsp + 0x68], r11d
jmp 0x1801ead69
mov r8d, dword [rsp + 0x68]
ucomisd xmm10, qword [r15 + rdi]
jp 0x1801ead73
je 0x1801ead7d
mov r9d, r11d
mov dword [rsp + 0x54], r11d
jmp 0x1801ead82
mov r9d, dword [rsp + 0x54]
cmp rbx, 0xffffffffffffffff
je 0x1801eadb3
mov rax, qword [rbx + 0xa8]
mov ecx, dword [rax + 0x10]
shr rcx, 8
test cl, 1
je 0x1801eadb3
mov ecx, dword [rsp + 0x58]
mov eax, dword [rbx + 0x98]
shr rax, 0x18
test al, 1
cmovne ecx, r11d
mov dword [rsp + 0x58], ecx
mov rax, qword [rsp + 0x78]
add rdi, 8
sub r12, 1
jne 0x1801eac56
test r8d, r8d
jne 0x1801eae77
test r9d, r9d
jne 0x1801eae77
mov eax, dword [rsp + 0x70]
test eax, eax
jne 0x1801eae7f
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x238]
lea rdx, [rsp + 0xb0]
lea r8, [rax*8]
call sub.msvcrt.dll_memcpy
mov al, 1
movaps xmm7, xmmword [rsp + 0x1c0]
movaps xmm8, xmmword [rsp + 0x1b0]
movaps xmm6, xmmword [rsp + 0x1d0]
movaps xmm10, xmmword [rsp + 0x190]
movaps xmm11, xmmword [rsp + 0x180]
movaps xmm12, xmmword [rsp + 0x170]
movaps xmm13, xmmword [rsp + 0x160]
mov rdi, qword [rsp + 0x1f0]
mov rsi, qword [rsp + 0x1f8]
mov rbx, qword [rsp + 0x200]
mov r12, qword [rsp + 0x1e8]
add rsp, 0x208
pop r15
pop r14
pop r13
pop rbp
ret
mov eax, dword [rsp + 0x70]
test eax, eax
je 0x1801eaea8
test sil, sil
jne 0x1801eaea8
test dl, dl
je 0x1801eaea8
test bpl, bpl
je 0x1801eaea8
mov rax, qword [rsp + 0x258]
mov eax, dword [rax + 0x78]
and eax, 0xfff00000
cmp eax, 0x10400000
jne 0x1801eb6fc
cmp byte [rsp + 0x48], 0
jne 0x1801eb6fc
movzx eax, byte [r10 + 0xcef4]
xor r8d, r8d
xor edi, edi
movzx ecx, al
mov dword [rsp + 0x50], r8d
mov byte [rsp + 0x4c], al
shr cl, 2
lea r12, [rsp + 0x130]
and cl, 1
xor ebp, ebp
mov byte [rsp + 0x46], cl
mov rdx, qword [rsp + rbp + 0xb0]
test cl, cl
jne 0x1801eb0be
test al, 2
jne 0x1801eb0be
cmp rdx, 0xffffffffffffffff
je 0x1801eb000
mov rax, qword [rdx + 0xa8]
mov ecx, dword [rax + 0x10]
shr rcx, 8
test cl, 1
je 0x1801eb000
mov eax, dword [rdx + 0x98]
shr rax, 0x18
test al, 1
je 0x1801eb000
mov rsi, qword [rdx + 0x148]
xor r10d, r10d
test edi, edi
je 0x1801eb0cf
lea rbx, [rsp + 0xb0]
nop word [rax + rax]
mov r8, qword [rbx]
cmp r8, 0xffffffffffffffff
je 0x1801eafe6
mov r11, qword [r8 + 0xa8]
mov eax, dword [r11 + 0x10]
shr rax, 8
test al, 1
je 0x1801eafe6
mov eax, dword [r8 + 0x98]
shr rax, 0x18
test al, 1
je 0x1801eafe6
movsxd rax, dword [r8 + 0xa4]
test eax, eax
jne 0x1801eaf90
lea r9d, [rax + 3]
jmp 0x1801eafa3
lea rcx, [0x180000000]
mov r9d, dword [rcx + rax*4 + 0x12ad0]
and r9d, 0xf
mov rcx, rdx
call fcn.18019c6a0
cmp r9d, eax
jne 0x1801eafe6
cmp qword [rdx + 0xa8], r11
jne 0x1801eafe6
mov rax, qword [r8 + 0xc0]
cmp qword [rdx + 0xc0], rax
jne 0x1801eafe6
mov rax, qword [r8 + 0xb8]
cmp qword [rdx + 0xb8], rax
jne 0x1801eafe6
cmp rsi, qword [r8 + 0x148]
je 0x1801eb0ca
inc r10d
add rbx, 8
cmp r10d, edi
jb 0x1801eaf50
mov r8d, dword [rsp + 0x50]
jmp 0x1801eb0cf
xor r10d, r10d
test edi, edi
je 0x1801eb0cf
movsd xmm1, qword [rsp + rbp + 0x108]
xor r8d, r8d
nop word [rax + rax]
ucomisd xmm1, qword [rsp + r8 + 0x108]
mov rcx, qword [rsp + r8 + 0xb0]
jp 0x1801eb0a7
jne 0x1801eb0a7
movsd xmm0, qword [rsp + rbp + 0xe8]
ucomisd xmm0, qword [rsp + r8 + 0xe8]
jp 0x1801eb0a7
jne 0x1801eb0a7
mov rax, qword [rcx + 0xa8]
cmp qword [rdx + 0xa8], rax
jne 0x1801eb0a7
mov eax, dword [rcx + 0xb0]
cmp dword [rdx + 0xb0], eax
jne 0x1801eb0a7
mov eax, dword [rcx + 0xc8]
cmp dword [rdx + 0xc8], eax
jne 0x1801eb0a7
mov eax, dword [rcx + 0xcc]
cmp dword [rdx + 0xcc], eax
jne 0x1801eb0a7
mov rax, qword [rcx + 0xc0]
cmp qword [rdx + 0xc0], rax
jne 0x1801eb0a7
mov rax, qword [rcx + 0xb8]
cmp qword [rdx + 0xb8], rax
je 0x1801eb0c3
inc r10d
add r8, 8
cmp r10d, edi
jb 0x1801eb020
mov r8d, dword [rsp + 0x50]
jmp 0x1801eb0cf
mov r10d, edi
jmp 0x1801eb0cf
mov r8d, dword [rsp + 0x50]
jmp 0x1801eb0cf
mov r8d, dword [rsp + 0x50]
mov dword [r12], r10d
cmp edi, r10d
jne 0x1801eb0e0
inc r8d
mov dword [rsp + 0x50], r8d
mov al, byte [rsp + 0x4c]
mov cl, byte [rsp + 0x46]
inc edi
add rbp, 8
add r12, 4
cmp edi, dword [rsp + 0x240]
jb 0x1801eaee0
or eax, 0xffffffff
xor edi, edi
xor ebp, ebp
mov cl, 1
lea r13, [rsp + 0x130]
xor r12d, r12d
mov r14d, eax
mov dword [rsp + 0x70], eax
mov eax, dword [rsp + 0x240]
mov qword [rsp + 0xa0], r13
mov dword [rsp + 0x40], ecx
mov dword [rsp + 0x48], edi
mov byte [rsp + 0x45], cl
mov dword [rsp + 0x90], ebp
mov qword [rsp + 0xa8], rdi
mov qword [rsp + 0x80], r12
nop dword [rax]
xor bl, bl
cmp ebp, dword [r13]
jne 0x1801eb405
mov rax, qword [rsp + 0x230]
mov rdi, qword [rsp + r12 + 0xb0]
mov rsi, qword [rax + 0xd078]
cmp rsi, qword [rdi + 0xa8]
jne 0x1801eb3f0
mov rax, qword [rdi + 0x100]
cmp rax, 0xffffffffffffffff
je 0x1801eb1b6
mov eax, dword [rax + 0x78]
and eax, 0xfff00000
cmp eax, 0x91200000
je 0x1801eb3db
cmp eax, 0x91300000
je 0x1801eb3c6
cmp eax, 0x91400000
je 0x1801eb3b1
movsxd rax, dword [rdi + 0xa4]
mov r13, qword [rsp + 0x230]
mov r14, qword [rsp + 0x248]
xor r11d, r11d
lea r12, [0x180000000]
lea r10, [rsp + 0x130]
mov ecx, dword [r12 + rax*4 + 0x2c3c0]
mov eax, dword [rsp + 0x240]
and cl, 0xf
cmp cl, 4
sete r11b
xor r9d, r9d
inc r11d
lea r15d, [r9 + 1]
imul r11d, r8d
xor ebp, ebp
mov r8, rbp
nop dword [rax + rax]
cmp r9d, dword [r10]
jne 0x1801eb2be
mov rdx, qword [rsp + r8 + 0xb0]
mov rcx, qword [rdx + 0xa8]
cmp rsi, rcx
jne 0x1801eb27f
mov eax, dword [rdx + 0xc8]
cmp dword [rdi + 0xc8], eax
jne 0x1801eb27f
ucomisd xmm11, qword [rsp + r8 + 0x108]
jp 0x1801eb27f
jne 0x1801eb27f
ucomisd xmm10, qword [rsp + r8 + 0xe8]
jp 0x1801eb27f
jne 0x1801eb27f
movsxd rax, dword [rdx + 0xa4]
mov ecx, dword [r12 + rax*4 + 0x2c3c0]
mov eax, ebp
and cl, 0xf
cmp cl, 4
sete al
inc eax
sub r11d, eax
mov eax, dword [rsp + 0x240]
jmp 0x1801eb2be
cmp rsi, rcx
jne 0x1801eb2b7
mov eax, dword [rdi + 0xc8]
mov ecx, dword [r14 + rax*4]
cmp dword [rdx + 0xcc], ecx
jae 0x1801eb2ae
test byte [r13 + 0xcef4], 2
mov eax, dword [rsp + 0x240]
movzx ebx, bl
cmovne ebx, r15d
jmp 0x1801eb2be
mov eax, dword [rsp + 0x240]
jmp 0x1801eb2be
mov eax, dword [rsp + 0x240]
inc r9d
add r10, 4
add r8, 8
cmp r9d, eax
jb 0x1801eb210
mov eax, dword [rdi + 0xc8]
mov r9, qword [rsp + 0x248]
mov ebp, dword [rsp + 0x90]
mov edx, dword [r9 + rax*4]
mov r12, qword [rsp + 0x80]
mov r13, qword [rsp + 0xa0]
mov r14d, dword [rsp + 0x70]
movzx r15d, byte [rsp + 0x45]
lea eax, [rdx + r11]
cmp eax, 4
ja 0x1801eb3a0
cmp bl, r15b
jae 0x1801eb38f
cmp r11d, r14d
jb 0x1801eb33e
cmp r11d, r14d
jne 0x1801eb37e
mov rax, qword [rsp + 0xa8]
mov rax, qword [rsp + rax + 0xb0]
mov ecx, dword [rax + 0xc8]
cmp edx, dword [r9 + rcx*4]
jbe 0x1801eb36a
mov eax, dword [rsp + 0x240]
xor cl, cl
mov byte [rsp + 0x45], bl
mov dword [rsp + 0x40], ecx
mov r14d, r11d
mov dword [rsp + 0x70], r11d
mov edi, ebp
mov dword [rsp + 0x48], ebp
mov qword [rsp + 0xa8], r12
jmp 0x1801eb40d
mov ecx, dword [rsp + 0x40]
mov edi, dword [rsp + 0x48]
mov eax, dword [rsp + 0x240]
jmp 0x1801eb40d
mov ecx, dword [rsp + 0x40]
mov edi, dword [rsp + 0x48]
mov eax, dword [rsp + 0x240]
jmp 0x1801eb40d
mov ecx, dword [rsp + 0x40]
mov edi, dword [rsp + 0x48]
mov eax, dword [rsp + 0x240]
jmp 0x1801eb40d
mov ecx, dword [rsp + 0x40]
mov edi, dword [rsp + 0x48]
mov eax, dword [rsp + 0x240]
jmp 0x1801eb40d
mov edi, dword [rsp + 0x48]
mov eax, dword [rsp + 0x240]
mov r9, qword [rsp + 0x248]
jmp 0x1801eb40d
mov edi, dword [rsp + 0x48]
mov eax, dword [rsp + 0x240]
mov r9, qword [rsp + 0x248]
jmp 0x1801eb40d
mov edi, dword [rsp + 0x48]
mov eax, dword [rsp + 0x240]
mov r9, qword [rsp + 0x248]
jmp 0x1801eb40d
mov edi, dword [rsp + 0x48]
mov eax, dword [rsp + 0x240]
mov r9, qword [rsp + 0x248]
jmp 0x1801eb40d
mov r9, qword [rsp + 0x248]
mov r8d, dword [rsp + 0x50]
inc ebp
add r13, 4
add r12, 8
mov dword [rsp + 0x90], ebp
mov qword [rsp + 0xa0], r13
mov qword [rsp + 0x80], r12
cmp ebp, eax
jb 0x1801eb150
cmp byte [rsp + 0x46], 0
jne 0x1801eb703
mov r13, qword [rsp + 0x230]
test byte [r13 + 0xcef4], 2
jne 0x1801eb70b
mov r15, qword [rsp + 0x258]
xor r14d, r14d
lea r10d, [r14 + 1]
movzx ebp, byte [r13 + 0xcef4]
test bpl, 4
jne 0x1801eb483
test bpl, 2
je 0x1801eb636
mov ecx, dword [r15 + 0x78]
mov eax, ecx
and eax, 0xfff00000
cmp eax, 0x50000000
je 0x1801eb4a0
cmp eax, 0x90700000
jne 0x1801eb636
mov r12d, dword [rsp + 0x40]
mov rbp, qword [rsp + 0x98]
and ecx, 0xfffff
movsxd rax, ecx
mov ebx, r14d
mov rsi, r14
lea rdi, [rax*8]
test r12b, r12b
jne 0x1801eb620
test byte [r13 + 0xcef8], 0x20
mov rax, qword [r15 + 0x18]
mov rdx, qword [rax + rsi]
mov r9, qword [rax + rdi]
je 0x1801eb548
mov rcx, qword [rdx + 0xa8]
mov r8, rax
mov eax, dword [rcx + 0x10]
shr rax, 8
test al, 1
je 0x1801eb506
mov eax, dword [rdx + 0x98]
shr rax, 0x18
test al, 1
je 0x1801eb514
cmp dword [rdx + 0xcc], ebx
movzx r12d, r12b
cmovne r12d, r10d
mov rax, qword [r8 + rdi]
mov rcx, qword [rax + 0xa8]
mov eax, dword [rcx + 0x10]
shr rax, 8
test al, 1
je 0x1801eb539
mov eax, dword [r9 + 0x98]
shr rax, 0x18
test al, 1
je 0x1801eb548
cmp dword [r9 + 0xcc], ebx
movzx r12d, r12b
cmovne r12d, r10d
mov r8, qword [r15 + 0x18]
mov rax, qword [r8 + rsi]
mov rcx, qword [rax + 0xa8]
mov eax, dword [rcx + 0x10]
shr rax, 8
test al, 1
je 0x1801eb574
mov eax, dword [rdx + 0x98]
shr rax, 0x18
test al, 1
je 0x1801eb609
mov rax, qword [r8 + rdi]
mov rcx, qword [rax + 0xa8]
mov eax, dword [rcx + 0x10]
shr rax, 8
test al, 1
je 0x1801eb598
mov eax, dword [rdx + 0x98]
shr rax, 0x18
test al, 1
je 0x1801eb609
mov eax, dword [r9 + 0xcc]
cmp dword [rdx + 0xcc], eax
je 0x1801eb609
mov r11, qword [rdx + 0xa8]
mov r9d, r14d
lea r8, [rsp + 0xb0]
mov r10, rbp
nop dword [rax]
mov rcx, qword [r8]
cmp qword [rcx + 0xa8], r11
jne 0x1801eb5ed
mov eax, dword [rdx + 0xc8]
cmp dword [rcx + 0xc8], eax
jne 0x1801eb5ed
mov rax, qword [rdx + 0xc0]
cmp qword [rcx + 0xc0], rax
jne 0x1801eb5ed
inc r9d
add r8, 8
sub r10, 1
jne 0x1801eb5c0
movzx r12d, r12b
cmp r9d, 1
mov r10d, 1
cmova r12d, r10d
inc ebx
add rsi, 8
add rdi, 8
cmp ebx, dword [rsp + 0x240]
jb 0x1801eb4c4
mov bpl, byte [r13 + 0xcef4]
mov dword [rsp + 0x40], r12d
mov dword [rsp + 0x40], r12d
mov dword [rsp + 0x40], r12d
mov edx, dword [r15 + 0x78]
mov r8d, edx
and r8d, 0xfff00000
cmp r8d, 0x10000000
jne 0x1801eb671
test bpl, 8
jne 0x1801eb671
mov rax, qword [r15 + 0x28]
mov rcx, qword [rax]
mov rax, qword [rcx + 0xa8]
movzx ecx, byte [rax + 0x10]
shr cl, 5
test cl, 1
jne 0x1801ebace
cmp r8d, 0x12700000
je 0x1801ebabe
cmp r8d, 0x10000000
jne 0x1801eba01
mov ecx, dword [rsp + 0x68]
test ecx, ecx
jne 0x1801eba9e
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x1801eba8e
mov eax, dword [rsp + 0x58]
test eax, eax
jne 0x1801eba7e
mov rax, qword [r15 + 0x28]
mov rcx, qword [rax]
mov rax, qword [rcx + 0xa8]
mov ecx, dword [rax + 0x10]
shr rcx, 0xc
test cl, 1
je 0x1801eb6d7
mov r11d, dword [rsp + 0x40]
test r11b, r11b
je 0x1801ebaee
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x238]
lea rdx, [rsp + 0xb0]
lea r8, [rax*8]
call sub.msvcrt.dll_memcpy
xor al, al
jmp 0x1801eae0b
mov r13, qword [rsp + 0x230]
mov r15, qword [rsp + 0x258]
mov eax, dword [r15 + 0x78]
shr eax, 0x1c
cmp eax, 1
je 0x1801eb732
cmp eax, 2
je 0x1801eb732
cmp eax, 3
je 0x1801eb732
cmp eax, 4
jne 0x1801eb9f5
test r9, r9
jne 0x1801eb8e3
mov r12d, dword [rsp + 0x240]
mov r10d, 1
xor r14b, r14b
mov edi, r10d
cmp r12d, r10d
jbe 0x1801eb7d7
lea rsi, [rsp + 0xb8]
mov rbx, qword [rsi]
cmp rbx, 0xffffffffffffffff
je 0x1801eb78a
mov rax, qword [rbx + 0xa8]
mov ecx, dword [rax + 0x10]
shr rcx, 8
test cl, 1
je 0x1801eb78a
mov eax, dword [rbx + 0x98]
shr rax, 0x18
test al, 1
jne 0x1801eb7c6
cmp qword [rbx + 0xc0], 0xffffffffffffffff
jne 0x1801eb7c6
cmp qword [rbx + 0xb8], 0xffffffffffffffff
jne 0x1801eb7c6
mov rbp, qword [rsp + 0xb0]
mov rdx, rbx
mov rcx, r13
mov r8, rbp
call fcn.1801e9480
test al, al
je 0x1801eb7d1
mov eax, dword [rbp + 0xcc]
cmp dword [rbx + 0xcc], eax
jne 0x1801eb7d1
inc edi
add rsi, 8
cmp edi, r12d
jb 0x1801eb760
mov r10d, 1
cmp edi, r12d
movzx esi, r14b
cmove esi, r10d
xor r14d, r14d
mov edi, r14d
test sil, sil
jne 0x1801eb46b
mov rbp, qword [rsp + 0x78]
mov r12, qword [rsp + 0x260]
mov ebx, r14d
cmp ebx, 0x60
jae 0x1801eb8d3
mov rax, qword [r13]
mov r8, r15
mov edx, edi
mov rcx, r13
call qword [rax + 0x60]
test al, al
je 0x1801eb8ba
mov r10d, dword [rsp + 0x240]
mov r9d, r14d
mov r8, r12
lea r15, [0x180000000]
mov rdx, qword [r8 + rbp]
cmp rdx, 0xffffffffffffffff
je 0x1801eb861
mov rax, qword [rdx + 0xa8]
mov ecx, dword [rax + 0x10]
shr rcx, 8
test cl, 1
je 0x1801eb861
mov eax, dword [rdx + 0x98]
shr rax, 0x18
test al, 1
jne 0x1801eb890
cmp qword [rdx + 0xc0], 0xffffffffffffffff
jne 0x1801eb890
cmp qword [rdx + 0xb8], 0xffffffffffffffff
jne 0x1801eb890
mov rax, qword [r8]
mov ecx, dword [rax + 0xcc]
add ecx, ebx
mov eax, dword [r15 + rcx*4 + 0x12bf0]
cmp dword [rdx + 0xcc], eax
jne 0x1801eb89c
inc r9d
add r8, 8
cmp r9d, r10d
jb 0x1801eb836
mov r15, qword [rsp + 0x258]
cmp r9d, r10d
movzx eax, sil
mov r10d, 1
cmove eax, r10d
mov sil, al
jmp 0x1801eb8c0
mov r10d, 1
inc edi
add ebx, 4
test sil, sil
je 0x1801eb801
jmp 0x1801eb46b
test sil, sil
jne 0x1801eb46b
xor al, al
jmp 0x1801eae0b
mov rbp, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x260]
mov r12d, dword [rsp + 0x240]
mov r15, qword [rsp + 0x98]
xor ebx, ebx
test cl, cl
jne 0x1801eb9e1
mov rdx, qword [rsi + rbp]
cmp rdx, 0xffffffffffffffff
je 0x1801eb94d
mov rax, qword [rdx + 0xa8]
mov ecx, dword [rax + 0x10]
shr rcx, 8
test cl, 1
je 0x1801eb94d
mov eax, dword [rdx + 0x98]
shr rax, 0x18
test al, 1
je 0x1801eb94d
cmp qword [rdx + 0xc0], 0xffffffffffffffff
jne 0x1801eb9c2
cmp qword [rdx + 0xb8], 0xffffffffffffffff
jne 0x1801eb9bc
mov rax, qword [rsi]
mov ecx, dword [rax + 0xcc]
cmp dword [rdx + 0xcc], ecx
je 0x1801eb9c8
mov r11, qword [rdx + 0xa8]
xor r9d, r9d
lea r8, [rsp + 0xb0]
mov r10, r15
mov rcx, qword [r8]
cmp qword [rcx + 0xa8], r11
jne 0x1801eb9a0
mov eax, dword [rdx + 0xc8]
cmp dword [rcx + 0xc8], eax
jne 0x1801eb9a0
mov rax, qword [rdx + 0xc0]
cmp qword [rcx + 0xc0], rax
jne 0x1801eb9a0
inc r9d
add r8, 8
sub r10, 1
jne 0x1801eb973
cmp r9d, 1
ja 0x1801eb9b4
cmp ebx, edi
jne 0x1801eb9ce
mov cl, 1
mov dword [rsp + 0x40], ecx
jmp 0x1801eb9d2
mov ecx, dword [rsp + 0x40]
jmp 0x1801eb9d2
mov ecx, dword [rsp + 0x40]
jmp 0x1801eb9d2
mov ecx, dword [rsp + 0x40]
jmp 0x1801eb9d2
mov ecx, dword [rsp + 0x40]
inc ebx
add rsi, 8
cmp ebx, r12d
jb 0x1801eb902
mov r15, qword [rsp + 0x258]
xor r14d, r14d
lea r10d, [r14 + 1]
jmp 0x1801eb46b
xor r14d, r14d
lea r10d, [r14 + 1]
jmp 0x1801eb46b
shr edx, 0x1c
cmp edx, 1
je 0x1801eba1c
cmp edx, 2
je 0x1801eba1c
cmp edx, 3
je 0x1801eba1c
cmp edx, 4
jne 0x1801ebaae
cmp r8d, 0x50400000
je 0x1801ebade
mov esi, dword [rsp + 0x240]
xor ebx, ebx
lea r8, [rsp + 0xb0]
mov edx, ebx
nop dword [rax]
mov r9, qword [r8]
mov rax, qword [r9 + 0xa8]
mov rcx, qword [rax + 0x10]
mov rax, rcx
shr rax, 9
test al, 1
je 0x1801eba6d
shr rcx, 8
test cl, 1
jne 0x1801eba6d
cmp dword [r9 + 0x3c], 2
jb 0x1801eb6fc
inc edx
add r8, 8
cmp edx, esi
jb 0x1801eba40
mov r11d, dword [rsp + 0x40]
jmp 0x1801ebaf7
mov r11d, dword [rsp + 0x40]
mov esi, dword [rsp + 0x240]
xor ebx, ebx
jmp 0x1801ebaf7
mov r11d, dword [rsp + 0x40]
mov esi, dword [rsp + 0x240]
xor ebx, ebx
jmp 0x1801ebaf7
mov r11d, dword [rsp + 0x40]
mov esi, dword [rsp + 0x240]
xor ebx, ebx
jmp 0x1801ebaf7
mov r11d, dword [rsp + 0x40]
mov esi, dword [rsp + 0x240]
xor ebx, ebx
jmp 0x1801ebaf7
mov r11d, dword [rsp + 0x40]
mov esi, dword [rsp + 0x240]
xor ebx, ebx
jmp 0x1801ebaf7
mov r11d, dword [rsp + 0x40]
mov esi, dword [rsp + 0x240]
xor ebx, ebx
jmp 0x1801ebaf7
mov r11d, dword [rsp + 0x40]
mov esi, dword [rsp + 0x240]
xor ebx, ebx
jmp 0x1801ebaf7
mov esi, dword [rsp + 0x240]
xor ebx, ebx
or eax, 0xffffffff
mov dword [rsp + 0x50], eax
test r11b, r11b
je 0x1801ebb18
mov rcx, qword [rsp + 0x250]
mov edi, dword [rcx]
mov dword [rsp + 0x48], edi
lea eax, [rdi + 1]
mov dword [rcx], eax
jmp 0x1801ebb2e
mov eax, dword [rsp + 0x48]
mov rcx, qword [rsp + rax*8 + 0xb0]
mov edi, dword [rcx + 0xc8]
mov dword [rsp + 0x48], edi
mov rax, qword [r15 + 0x28]
mov edx, ebx
lea r9, [rsp + 0x40]
mov rcx, qword [rax]
lea r10, [rsp + 0x130]
mov rax, qword [rcx + 0xd0]
mov qword [rsp + 0x128], rax
movzx eax, byte [rcx + 0xd8]
xor ecx, ecx
mov dword [rsp + 0x40], ecx
mov rcx, rbx
mov byte [rsp + 0x4c], al
cmp edx, dword [r10]
jne 0x1801ebba9
mov r8, qword [rsp + rcx + 0xb0]
mov rax, qword [r8 + 0xa8]
cmp qword [r13 + 0xd078], rax
jne 0x1801ebbad
cmp edi, dword [r8 + 0xc8]
jne 0x1801ebbad
ucomisd xmm11, qword [rsp + rcx + 0x108]
jp 0x1801ebbad
jne 0x1801ebbad
ucomisd xmm10, qword [rsp + rcx + 0xe8]
jp 0x1801ebbad
jne 0x1801ebbad
mov byte [r9], 1
inc edx
add r10, 4
add rcx, 8
inc r9
cmp edx, esi
jb 0x1801ebb67
test r11b, r11b
jne 0x1801ebdd3
mov ecx, esi
lea r14, [rsp + 0x40]
lea r15, [rsp + 0xb0]
mov qword [rsp + 0x60], rcx
mov eax, esi
nop dword [rax]
cmp byte [r14], 0
jne 0x1801ebdb5
mov r13, qword [r15]
mov r9, qword [rsp + 0x230]
mov rax, qword [r13 + 0xa8]
cmp qword [r9 + 0xd078], rax
jne 0x1801ebdb5
mov rax, qword [r13 + 0x100]
cmp rax, 0xffffffffffffffff
je 0x1801ebc3f
mov eax, dword [rax + 0x78]
and eax, 0xfff00000
cmp eax, 0x91200000
je 0x1801ebdb5
cmp eax, 0x91300000
je 0x1801ebdb5
cmp eax, 0x91400000
je 0x1801ebdb5
mov eax, dword [rsp + 0x240]
mov r12d, ebx
mov ebp, ebx
mov edi, ebx
lea rsi, [rsp + 0x40]
cmp byte [rsi], 0
jne 0x1801ebcb2
mov r8, qword [rsp + rbx + 0xb0]
mov rdx, r13
mov rcx, r9
inc r12d
call fcn.1801e9480
test al, al
je 0x1801ebd8b
inc ebp
ucomisd xmm11, qword [rsp + rbx + 0x108]
jp 0x1801ebd9f
jne 0x1801ebd9f
ucomisd xmm10, qword [rsp + rbx + 0xe8]
jp 0x1801ebd9f
jne 0x1801ebd9f
mov r9, qword [rsp + 0x230]
mov eax, dword [rsp + 0x240]
inc edi
inc rsi
add rbx, 8
cmp edi, eax
jb 0x1801ebc52
mov esi, dword [rsp + 0x240]
mov rcx, qword [rsp + 0x258]
mov r10d, dword [r13 + 0xc8]
call fcn.180196ef0
mov r11, qword [rsp + 0x248]
movsxd rdi, dword [rsp + 0x48]
mov ecx, dword [r11 + r10*4]
sub ecx, ebp
add ecx, r12d
add ecx, dword [r11 + rdi*4]
cmp ecx, eax
ja 0x1801ebf75
mov rbx, qword [rsp + 0x230]
lea rcx, [rsp + 0x40]
lea r8, [rsp + 0xb0]
mov r9d, esi
cmp byte [rcx], 0
jne 0x1801ebd38
mov rdx, qword [r8]
mov rax, qword [rdx + 0xa8]
cmp qword [rbx + 0xd078], rax
jne 0x1801ebd38
cmp r10d, dword [rdx + 0xc8]
jne 0x1801ebd38
mov byte [rcx], 1
add r8, 8
inc rcx
sub r9, 1
jne 0x1801ebd14
mov rax, qword [rbx + 0xd078]
mov rcx, qword [rax + 0x30]
test rcx, rcx
je 0x1801ebd76
cmp r10d, dword [rcx + 0xc8]
jne 0x1801ebd6e
mov dword [rcx + 0xc8], edi
mov eax, dword [r11 + rdi*4]
add dword [rcx + 0xcc], eax
mov rcx, qword [rcx]
test rcx, rcx
jne 0x1801ebd55
mov eax, dword [r11 + r10*4]
mov rcx, qword [rsp + 0x60]
add dword [r11 + rdi*4], eax
xor ebx, ebx
mov dword [r11 + r10*4], ebx
jmp 0x1801ebdb5
mov r9, qword [rsp + 0x230]
mov eax, dword [rsp + 0x240]
jmp 0x1801ebcb2
mov esi, dword [rsp + 0x240]
cmp edi, esi
jae 0x1801ebcc6
mov rcx, qword [rsp + 0x60]
xor ebx, ebx
inc r14
add r15, 8
sub rcx, 1
mov qword [rsp + 0x60], rcx
jne 0x1801ebbe0
mov r13, qword [rsp + 0x230]
movzx eax, byte [r13 + 0xcef4]
test al, 4
jne 0x1801ebfa5
test al, 2
jne 0x1801ebfa5
test byte [r13 + 0xcefb], 0x10
jne 0x1801ebfa5
mov r15d, ebx
mov dword [rsp + 0x90], ebx
lea r14, [rsp + 0x40]
lea r13, [rsp + 0xb0]
cmp byte [r14], 0
jne 0x1801ebf8a
mov r12, qword [r13]
cmp r12, 0xffffffffffffffff
je 0x1801ebe4c
mov rax, qword [r12 + 0xa8]
mov ecx, dword [rax + 0x10]
shr rcx, 8
test cl, 1
je 0x1801ebe4c
mov eax, dword [r12 + 0x98]
shr rax, 0x18
test al, 1
jne 0x1801ebf8a
mov rbp, qword [rsp + 0x98]
mov r15, qword [rsp + 0x230]
mov edi, ebx
lea rbx, [rsp + 0x40]
lea rsi, [rsp + 0xb0]
nop dword [rax + rax]
cmp byte [rbx], 0
jne 0x1801ebe89
mov r8, qword [rsi]
mov rdx, r12
mov rcx, r15
call fcn.1801e9480
test al, al
je 0x1801ebe89
inc edi
inc rbx
add rsi, 8
sub rbp, 1
jne 0x1801ebe70
mov r15d, dword [rsp + 0x90]
xor r12d, r12d
lea rsi, [rsp + 0x40]
mov ebp, r12d
mov rbx, r12
nop dword [rax]
mov rcx, qword [rsp + 0x258]
call fcn.180196ef0
cmp edi, eax
jae 0x1801ebf81
cmp byte [rsi], r12b
jne 0x1801ebf54
mov rcx, qword [rsp + rbx + 0xb0]
cmp rcx, 0xffffffffffffffff
je 0x1801ebf54
mov rax, qword [rcx + 0xa8]
mov edx, dword [rax + 0x10]
shr rdx, 8
test dl, 1
je 0x1801ebf54
mov eax, dword [rcx + 0x98]
shr rax, 0x18
test al, 1
je 0x1801ebf54
mov rdx, qword [rsp + 0x230]
lea r8, [rsp + 0xe0]
call fcn.180199870
test eax, eax
js 0x1801eb6fc
movsd xmm0, qword [rsp + 0xe0]
mov rax, qword [r13]
inc edi
mov qword [rsp + rbx + 0xb0], rax
mulsd xmm0, qword [rsp + rbx + 0x108]
mov qword [rsp + rbx + 0x108], r12
addsd xmm0, qword [rsp + rbx + 0xe8]
movsd qword [rsp + rbx + 0xe8], xmm0
inc ebp
inc rsi
add rbx, 8
cmp ebp, dword [rsp + 0x240]
jb 0x1801ebeb0
mov esi, dword [rsp + 0x240]
xor ebx, ebx
jmp 0x1801ebf8a
mov rcx, qword [rsp + 0x60]
xor ebx, ebx
jmp 0x1801ebdb5
mov esi, dword [rsp + 0x240]
xor ebx, ebx
inc r15d
inc r14
add r13, 8
mov dword [rsp + 0x90], r15d
cmp r15d, esi
jb 0x1801ebe10
mov eax, dword [rsp + 0x48]
mov rdx, qword [rsp + 0x248]
movsd xmm6, qword [0x1800685e8]
xor cl, cl
cmp dword [rdx + rax*4], 0
mov eax, 1
movzx ecx, cl
mov dword [rsp + 0x54], ebx
mov qword [rsp + 0x80], rbx
cmove ecx, eax
mov rax, rbx
mov dword [rsp + 0x68], ecx
mov ecx, ebx
nop
cmp byte [rsp + rax + 0x40], 0
jne 0x1801ed0d3
mov rax, qword [rsp + rax*8 + 0xb0]
mov rsi, qword [rsp + 0x98]
mov r14, qword [rsp + 0x230]
mov qword [rsp + 0xa8], rax
movsxd rax, dword [rax + 0xa4]
mov dl, 1
lea r8, [0x180000000]
mov r15d, ebx
mov qword [rsp + 0xd0], rbx
mov eax, dword [r8 + rax*4 + 0x2c3c0]
mov r12d, ebx
mov byte [rsp + 0x46], dl
and al, 0xf
mov ebp, ebx
movzx ecx, dl
cmp al, 4
mov byte [rsp + 0x44], dl
lea rdi, [rsp + 0x40]
sete r13b
mov byte [rsp + 0x45], r13b
mov r13, qword [rsp + 0xa8]
nop dword [rax + rax]
cmp byte [rdi], 0
jne 0x1801ec0f0
mov r8, qword [rsp + rbx + 0xb0]
mov rdx, r13
mov rcx, r14
call fcn.1801e9480
test al, al
je 0x1801ec0e8
movsd xmm0, qword [rsp + rbx + 0x108]
inc qword [rsp + 0xd0]
inc r15d
ucomisd xmm11, xmm0
jp 0x1801ec09d
je 0x1801ec0a7
mov eax, 1
mov r12d, eax
jmp 0x1801ec0ac
mov eax, 1
ucomisd xmm6, xmm0
jp 0x1801ec0b4
je 0x1801ec0bc
xor dl, dl
mov byte [rsp + 0x46], dl
jmp 0x1801ec0c1
movzx edx, byte [rsp + 0x46]
ucomisd xmm10, qword [rsp + rbx + 0xe8]
jp 0x1801ec0cf
je 0x1801ec0d1
mov ebp, eax
ucomisd xmm10, xmm0
jp 0x1801ec0da
je 0x1801ec0e2
xor cl, cl
mov byte [rsp + 0x44], cl
jmp 0x1801ec0f0
mov cl, byte [rsp + 0x44]
jmp 0x1801ec0f0
mov cl, byte [rsp + 0x44]
mov dl, byte [rsp + 0x46]
inc rdi
add rbx, 8
sub rsi, 1
jne 0x1801ec060
mov r14, qword [rsp + 0xa0]
movzx r13d, byte [rsp + 0x45]
or rax, 0xffffffffffffffff
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x78], rax
mov dword [rsp + 0x90], r15d
test cl, cl
je 0x1801ec148
mov rdi, qword [rsp + 0x270]
mov rsi, qword [rsp + 0x230]
xor eax, eax
mov r12d, eax
mov ebp, eax
jmp 0x1801ec2e5
test r12d, r12d
je 0x1801ec23c
test dl, dl
je 0x1801ec1bd
test r13b, r13b
je 0x1801ec16d
mov r8d, r15d
and r8d, 0xfffff
or r8d, 0x10500000
jmp 0x1801ec17e
mov r8d, r15d
and r8d, 0xfffff
or r8d, 0x10400000
mov rax, qword [rsp + 0x270]
mov r9, qword [rsp + 0x258]
mov rcx, qword [rsp + 0x230]
mov qword [rsp + 0x30], rax
or ebx, 0xffffffff
lea rdx, [rsp + 0x88]
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], ebx
call fcn.18019f360
test eax, eax
js 0x1801eb6fc
jmp 0x1801ec223
test r13b, r13b
je 0x1801ec1d5
mov r8d, r15d
and r8d, 0xfffff
or r8d, 0x20600000
jmp 0x1801ec1e6
mov r8d, r15d
and r8d, 0xfffff
or r8d, 0x20400000
mov rax, qword [rsp + 0x270]
mov r9, qword [rsp + 0x258]
mov rcx, qword [rsp + 0x230]
mov qword [rsp + 0x30], rax
or eax, 0xffffffff
lea rdx, [rsp + 0x88]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], eax
call fcn.18019f360
test eax, eax
js 0x1801eb6fc
test ebp, ebp
jne 0x1801ec244
mov rax, qword [rsp + 0x88]
mov rbx, rax
mov qword [rsp + 0x60], rax
jmp 0x1801ec349
test ebp, ebp
je 0x1801ec2d5
test r13b, r13b
je 0x1801ec25c
mov r8d, r15d
and r8d, 0xfffff
or r8d, 0x20200000
jmp 0x1801ec26b
mov r8d, r15d
and r8d, 0xfffff
bts r8d, 0x1d
mov rdi, qword [rsp + 0x270]
mov rsi, qword [rsp + 0x230]
mov r9, qword [rsp + 0x258]
or eax, 0xffffffff
mov qword [rsp + 0x30], rdi
lea rdx, [rsp + 0x78]
mov dword [rsp + 0x28], eax
mov rcx, rsi
mov dword [rsp + 0x20], eax
call fcn.18019f360
test eax, eax
js 0x1801eb6fc
test r12d, r12d
jne 0x1801ec2c9
mov rbx, qword [rsp + 0x78]
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x88], rbx
test ebp, ebp
jne 0x1801ec349
jmp 0x1801ec2e5
mov rbx, qword [rsp + 0x78]
mov qword [rsp + 0x60], rbx
jmp 0x1801ec349
mov rdi, qword [rsp + 0x270]
mov rsi, qword [rsp + 0x230]
test r13b, r13b
je 0x1801ec2fd
mov r8d, r15d
and r8d, 0xfffff
or r8d, 0x10100000
jmp 0x1801ec30c
mov r8d, r15d
and r8d, 0xfffff
bts r8d, 0x1c
mov r9, qword [rsp + 0x258]
or eax, 0xffffffff
mov qword [rsp + 0x30], rdi
mov dword [rsp + 0x28], eax
lea rdx, [rsp + 0x88]
mov rcx, rsi
mov dword [rsp + 0x20], eax
call fcn.18019f360
test eax, eax
js 0x1801eb6fc
mov rbx, qword [rsp + 0x88]
mov qword [rsp + 0x60], rbx
xor ecx, ecx
movsxd rax, r12d
movsxd rsi, ebp
mov qword [rsp + 0x140], rax
mov eax, dword [rsp + 0x240]
mov dword [rsp + 0x58], ecx
mov r15, rcx
mov edi, ecx
mov dword [rsp + 0x70], ecx
mov r13, rcx
mov qword [rsp + 0x78], rsi
nop word [rax + rax]
cmp byte [rsp + r13 + 0x40], 0
jne 0x1801ecfe9
mov rbx, qword [rsp + r13*8 + 0xb0]
mov rbp, qword [rsp + 0x230]
mov rdx, qword [rsp + 0xa8]
mov r8, rbx
mov rcx, rbp
call fcn.1801e9480
test al, al
je 0x1801ecfd3
cmp byte [rsp + 0x44], 0
je 0x1801ec5fd
mov bpl, byte [rsp + 0x45]
test bpl, bpl
jne 0x1801eb6fc
mov rax, qword [rsp + 0x230]
mov ecx, dword [0x18025e63c]
mov rdi, qword [rax + 0xd040]
test ecx, ecx
jns 0x1801ec3f1
xor r12d, r12d
mov rcx, r12
jmp 0x1801ec3fd
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
xor r12d, r12d
mov rcx, rax
cmp qword [rcx + 0x18], 0
je 0x1801ec431
mov rbx, qword [rcx + 0x18]
test rbx, rbx
jne 0x1801ec412
mov rbx, r12
jmp 0x1801ec448
mov rax, qword [rbx]
mov qword [rcx + 0x18], rax
test rax, rax
jne 0x1801ec422
mov qword [rcx + 0x20], r12
movabs rax, 0xfefefefefefefefe
mov qword [rbx], rax
jmp 0x1801ec448
mov rcx, qword [rcx + 0x10]
mov edx, 0x188
mov r8d, 0x10
call fcn.180243b70
mov rbx, rax
test rbx, rbx
je 0x1801eb6fc
or eax, 0xffffffff
xor r9d, r9d
xor r8d, r8d
mov rdx, rdi
mov rcx, rbx
mov qword [rbx], r12
mov dword [rbx + 0xa0], eax
mov qword [rbx + 8], r12
mov qword [rbx + 0x78], r12
mov qword [rbx + 0x80], r12
mov qword [rbx + 0x88], r12
mov qword [rbx + 0x90], r12
mov qword [rbx + 0xa8], 0xffffffffffffffff
mov qword [rbx + 0x40], r12
call fcn.1801992b0
mov esi, eax
test eax, eax
js 0x1801ec592
mov rdi, qword [rsp + 0x230]
movsd xmm2, qword [rsp + r13*8 + 0xe8]
mov r9d, 4
mov rdx, rdi
mov dword [rbx + 0xa4], 4
call fcn.18019a200
mov esi, eax
test eax, eax
js 0x1801ec592
mov rdx, qword [rbx + 0xa8]
mov eax, dword [rdx + 0x10]
bt rax, 8
jae 0x1801ec53f
cmp qword [rbx + 0xc0], 0xffffffffffffffff
jne 0x1801ec53f
cmp qword [rbx + 0xb8], 0xffffffffffffffff
jne 0x1801ec53f
movsd xmm1, qword [rbx + 0x140]
or qword [rbx + 0x98], 0x1000010
mov rcx, qword [rbx + 0x98]
cvttsd2si eax, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
andpd xmm1, xmm12
comisd xmm13, xmm1
jbe 0x1801ec53f
bts rcx, 0x15
mov qword [rbx + 0x98], rcx
mov rcx, rbx
call fcn.18019c4f0
test al, al
je 0x1801ec556
or qword [rbx + 0x98], 0x20000
mov rax, qword [rdx + 0x10]
test al, 0x10
je 0x1801ec56d
bt rax, 0x15
jae 0x1801ec56d
or qword [rbx + 0x98], 0x10
mov eax, dword [rdi + 0x10]
mov rsi, qword [rsp + 0x78]
mov rcx, rbx
mov dword [rbx + 0xa0], eax
inc dword [rdi + 0x10]
or dword [rdi + 0x28], 4
mov qword [rsp + 0xd8], rbx
jmp 0x1801ec615
mov rcx, rbx
call fcn.1801991c0
mov ecx, dword [0x18025e63c]
test ecx, ecx
jns 0x1801ec5a9
mov rdi, r12
jmp 0x1801ec5b2
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rdi, rax
mov edx, 0xfe
mov r8d, 0x188
mov rcx, rbx
call fcn.18024adb8
mov qword [rbx], r12
mov rax, qword [rdi + 0x20]
test rax, rax
je 0x1801ec5d6
mov qword [rax], rbx
jmp 0x1801ec5da
mov qword [rdi + 0x18], rbx
mov qword [rdi + 0x20], rbx
test esi, esi
js 0x1801eb6fc
mov rsi, qword [rsp + 0x78]
mov rcx, qword [rsp + 0xd8]
mov rdi, qword [rsp + 0x230]
jmp 0x1801ec615
mov bpl, byte [rsp + 0x45]
mov rdi, qword [rsp + 0x230]
mov rcx, rbx
mov qword [rsp + 0xd8], rbx
cmp byte [rsp + 0x44], 0
mov r12, qword [rsp + 0x88]
mov rax, qword [r12 + 0x18]
mov qword [rax + r15*8], rcx
je 0x1801ec634
mov qword [rcx + 0xe8], rcx
cmp qword [rsp + 0x140], 0
je 0x1801ec8e3
cmp byte [rsp + 0x46], 0
jne 0x1801ec69e
test bpl, bpl
jne 0x1801eb6fc
mov ecx, dword [rsp + 0x90]
mov eax, dword [rsp + 0x58]
movsd xmm0, qword [rsp + r13*8 + 0x108]
mov r8, qword [rdi + 0xd040]
add ecx, eax
mov rax, qword [r12 + 0x18]
lea rdx, [rax + rcx*8]
xor eax, eax
mov rcx, rdi
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], eax
lea r9d, [rax + 4]
movsd qword [rsp + 0x20], xmm0
call fcn.18019f150
test eax, eax
js 0x1801eb6fc
test rsi, rsi
je 0x1801ecc0b
test bpl, bpl
jne 0x1801eb6fc
mov eax, dword [rsp + 0x50]
cmp eax, 0xffffffff
jne 0x1801ec6cf
mov rcx, qword [rsp + 0x250]
mov eax, dword [rcx]
mov dword [rsp + 0x50], eax
inc eax
mov dword [rcx], eax
mov eax, dword [rsp + 0x50]
mov rcx, qword [rsp + 0x248]
mov ebp, eax
mov edi, dword [rcx + rbp*4]
lea eax, [rdi + 1]
mov dword [rcx + rbp*4], eax
mov rax, qword [rsp + 0x230]
mov ecx, dword [0x18025e63c]
mov rsi, qword [rax + 0xd078]
test ecx, ecx
jns 0x1801ec702
xor edx, edx
mov rcx, rdx
jmp 0x1801ec70d
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
xor edx, edx
mov rcx, rax
cmp qword [rcx + 0x18], 0
je 0x1801ec741
mov rbx, qword [rcx + 0x18]
test rbx, rbx
jne 0x1801ec722
mov rbx, rdx
jmp 0x1801ec758
mov rax, qword [rbx]
mov qword [rcx + 0x18], rax
test rax, rax
jne 0x1801ec732
mov qword [rcx + 0x20], rdx
movabs rax, 0xfefefefefefefefe
mov qword [rbx], rax
jmp 0x1801ec758
mov rcx, qword [rcx + 0x10]
mov edx, 0x188
mov r8d, 0x10
call fcn.180243b70
mov rbx, rax
test rbx, rbx
je 0x1801eb6fc
mov r8d, dword [rsp + 0x50]
xor eax, eax
mov r9d, edi
mov rdx, rsi
mov rcx, rbx
mov dword [rbx + 0xa0], 0xffffffff
mov qword [rbx], rax
mov qword [rbx + 8], rax
mov qword [rbx + 0x78], rax
mov qword [rbx + 0x80], rax
mov qword [rbx + 0x88], rax
mov qword [rbx + 0x90], rax
mov qword [rbx + 0xa8], 0xffffffffffffffff
mov qword [rbx + 0x40], rax
call fcn.1801992b0
mov esi, eax
test eax, eax
js 0x1801ec80a
call fcn.18019c4f0
test al, al
je 0x1801ec7c9
or qword [rbx + 0x98], 0x20000
mov rax, qword [rbx + 0xa8]
mov rcx, qword [rax + 0x10]
test cl, 0x10
je 0x1801ec7e8
bt rcx, 0x15
jae 0x1801ec7e8
or qword [rbx + 0x98], 0x10
mov rcx, qword [rsp + 0x230]
mov qword [rsp + 0x148], rbx
mov eax, dword [rcx + 0x10]
mov dword [rbx + 0xa0], eax
inc dword [rcx + 0x10]
or dword [rcx + 0x28], 4
jmp 0x1801ec86e
call fcn.1801991c0
mov ecx, dword [0x18025e63c]
test ecx, ecx
jns 0x1801ec81d
xor edi, edi
jmp 0x1801ec826
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rdi, rax
mov edx, 0xfe
mov r8d, 0x188
mov rcx, rbx
call fcn.18024adb8
mov qword [rbx], 0
mov rax, qword [rdi + 0x20]
test rax, rax
je 0x1801ec84e
mov qword [rax], rbx
jmp 0x1801ec852
mov qword [rdi + 0x18], rbx
mov qword [rdi + 0x20], rbx
test esi, esi
js 0x1801eb6fc
mov rbx, qword [rsp + 0x148]
mov rcx, qword [rsp + 0x230]
mov rax, qword [rsp + 0x248]
cmp dword [rax + rbp*4], 4
jbe 0x1801ec88d
lea r9, [0x1800589b8]
xor r8d, r8d
xor edx, edx
call fcn.18019df20
mov rax, qword [rsp + 0x128]
mov rsi, qword [rsp + 0x78]
mov qword [rbx + 0xe8], rbx
mov qword [rbx + 0xd0], rax
mov al, byte [rsp + 0x4c]
mov byte [rbx + 0xd8], al
mov rax, qword [rsp + 0xd8]
mov eax, dword [rax + 0xa4]
mov qword [rbx + 0x100], r12
mov dword [rbx + 0xa4], eax
mov rax, qword [r12 + 0x28]
mov qword [rax + r15*8], rbx
mov rax, qword [rsp + 0x60]
mov rax, qword [rax + 0x18]
mov qword [rax + r15*8], rbx
test rsi, rsi
je 0x1801ecc0b
cmp byte [rsp + 0x45], 0
jne 0x1801eb6fc
mov rsi, qword [rsp + 0x230]
xor ebp, ebp
xor ebx, ebx
mov ecx, dword [rsi + 0xc]
test ecx, ecx
je 0x1801ec916
mov rax, qword [rsi + 0xce58]
mov rdi, qword [rax]
jmp 0x1801ec918
xor edi, edi
test ecx, ecx
je 0x1801ec9ef
mov eax, dword [rdi + 0x10]
bt rax, 8
jae 0x1801ec9c3
mov rdi, qword [rdi + 0x30]
test rdi, rdi
je 0x1801ec9c3
nop dword [rax + rax]
cmp rdi, 0xffffffffffffffff
je 0x1801ec9b6
mov rax, qword [rdi + 0xa8]
mov ecx, dword [rax + 0x10]
shr rcx, 8
test cl, 1
je 0x1801ec9b6
mov eax, dword [rdi + 0x98]
shr rax, 0x18
test al, 1
je 0x1801ec9b6
movsxd rax, dword [rdi + 0xa4]
test eax, eax
je 0x1801ec988
lea rcx, [0x180000000]
mov ecx, dword [rcx + rax*4 + 0x12ad0]
and ecx, 0xf
cmp ecx, 3
jne 0x1801ec9b6
lea r8, [rsp + 0x150]
mov rdx, rsi
mov rcx, rdi
call fcn.180199870
test eax, eax
jne 0x1801ec9b6
movsd xmm0, qword [rsp + 0x150]
ucomisd xmm0, qword [rsp + r13*8 + 0xe8]
jp 0x1801ec9b6
je 0x1801ec9c0
mov rdi, qword [rdi]
test rdi, rdi
jne 0x1801ec940
jmp 0x1801ec9c3
mov rbp, rdi
mov eax, dword [rsi + 0xc]
inc ebx
cmp ebx, eax
jb 0x1801ec9d2
xor edi, edi
mov ebx, eax
jmp 0x1801ec9dd
mov rax, qword [rsi + 0xce58]
mov rdi, qword [rax + rbx*8]
cmp ebx, dword [rsi + 0xc]
jb 0x1801ec920
test rbp, rbp
jne 0x1801ecbf3
mov ecx, dword [0x18025e63c]
mov rdi, qword [rsi + 0xd040]
test ecx, ecx
jns 0x1801eca04
xor ecx, ecx
jmp 0x1801eca0d
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rcx, rax
cmp qword [rcx + 0x18], 0
je 0x1801eca3c
mov rbx, qword [rcx + 0x18]
test rbx, rbx
je 0x1801eca53
mov rax, qword [rbx]
mov qword [rcx + 0x18], rax
test rax, rax
jne 0x1801eca2d
mov qword [rcx + 0x20], rax
movabs rax, 0xfefefefefefefefe
mov qword [rbx], rax
jmp 0x1801eca53
mov rcx, qword [rcx + 0x10]
mov edx, 0x188
mov r8d, 0x10
call fcn.180243b70
mov rbx, rax
test rbx, rbx
je 0x1801eb6fc
xor eax, eax
xor r9d, r9d
xor r8d, r8d
mov rdx, rdi
mov rcx, rbx
mov dword [rbx + 0xa0], 0xffffffff
mov qword [rbx], rax
mov qword [rbx + 8], rax
mov qword [rbx + 0x78], rax
mov qword [rbx + 0x80], rax
mov qword [rbx + 0x88], rax
mov qword [rbx + 0x90], rax
mov qword [rbx + 0x40], rax
mov qword [rbx + 0xa8], 0xffffffffffffffff
call fcn.1801992b0
mov esi, eax
test eax, eax
js 0x1801ecb95
mov rdx, qword [rsp + 0x230]
movsd xmm2, qword [rsp + r13*8 + 0xe8]
mov r9d, 4
mov dword [rbx + 0xa4], 4
call fcn.18019a200
mov esi, eax
test eax, eax
js 0x1801ecb95
mov rdx, qword [rbx + 0xa8]
mov eax, dword [rdx + 0x10]
bt rax, 8
jae 0x1801ecb4a
cmp qword [rbx + 0xc0], 0xffffffffffffffff
jne 0x1801ecb4a
cmp qword [rbx + 0xb8], 0xffffffffffffffff
jne 0x1801ecb4a
movsd xmm1, qword [rbx + 0x140]
or qword [rbx + 0x98], 0x1000010
mov rcx, qword [rbx + 0x98]
cvttsd2si eax, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
andpd xmm1, xmm12
comisd xmm13, xmm1
jbe 0x1801ecb4a
bts rcx, 0x15
mov qword [rbx + 0x98], rcx
mov rcx, rbx
call fcn.18019c4f0
test al, al
je 0x1801ecb61
or qword [rbx + 0x98], 0x20000
mov rax, qword [rdx + 0x10]
test al, 0x10
je 0x1801ecb78
bt rax, 0x15
jae 0x1801ecb78
or qword [rbx + 0x98], 0x10
mov rsi, qword [rsp + 0x230]
mov rbp, rbx
mov eax, dword [rsi + 0x10]
mov dword [rbx + 0xa0], eax
inc dword [rsi + 0x10]
or dword [rsi + 0x28], 4
jmp 0x1801ecbec
mov rcx, rbx
call fcn.1801991c0
mov ecx, dword [0x18025e63c]
test ecx, ecx
jns 0x1801ecbab
xor edi, edi
jmp 0x1801ecbb4
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rdi, rax
mov edx, 0xfe
mov r8d, 0x188
mov rcx, rbx
call fcn.18024adb8
mov qword [rbx], 0
mov rax, qword [rdi + 0x20]
test rax, rax
je 0x1801ecbdc
mov qword [rax], rbx
jmp 0x1801ecbe0
mov qword [rdi + 0x18], rbx
mov qword [rdi + 0x20], rbx
test esi, esi
js 0x1801eb6fc
mov qword [rbp + 0xe8], rbp
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0xd0]
mov rax, qword [rax + 0x18]
add rcx, r15
mov qword [rax + rcx*8], rbp
mov r9, qword [rsp + 0x238]
xor edx, edx
mov rax, qword [r9 + r13*8]
mov ebp, edx
movsxd rcx, dword [rax + 0xa4]
lea rax, [0x180000000]
mov eax, dword [rax + rcx*4 + 0x2c3c0]
and al, 0xf
cmp al, 4
sete bpl
inc ebp
cmp byte [rsp + 0x68], dl
je 0x1801ecc49
mov edi, ebp
imul edi, dword [rsp + 0x70]
jmp 0x1801ecc5a
movsxd rcx, dword [rsp + 0x48]
mov r8, qword [rsp + 0x248]
mov edi, dword [r8 + rcx*4]
mov rax, qword [rsp + 0x230]
mov ecx, dword [0x18025e63c]
mov rsi, qword [rax + 0xd078]
test ecx, ecx
jns 0x1801ecc78
mov rcx, rdx
jmp 0x1801ecc83
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
xor edx, edx
mov rcx, rax
cmp qword [rcx + 0x18], 0
je 0x1801eccb7
mov rbx, qword [rcx + 0x18]
test rbx, rbx
jne 0x1801ecc98
mov rbx, rdx
jmp 0x1801eccce
mov rax, qword [rbx]
mov qword [rcx + 0x18], rax
test rax, rax
jne 0x1801ecca8
mov qword [rcx + 0x20], rdx
movabs rax, 0xfefefefefefefefe
mov qword [rbx], rax
jmp 0x1801eccce
mov rcx, qword [rcx + 0x10]
mov edx, 0x188
mov r8d, 0x10
call fcn.180243b70
mov rbx, rax
test rbx, rbx
je 0x1801eb6fc
xor eax, eax
mov r9d, edi
mov edi, dword [rsp + 0x48]
mov rdx, rsi
mov rcx, rbx
mov r8d, edi
mov qword [rbx], rax
mov qword [rbx + 8], rax
mov qword [rbx + 0x78], rax
mov qword [rbx + 0x80], rax
mov qword [rbx + 0x88], rax
mov qword [rbx + 0x90], rax
mov dword [rbx + 0xa0], 0xffffffff
mov qword [rbx + 0xa8], 0xffffffffffffffff
mov qword [rbx + 0x40], rax
call fcn.1801992b0
mov esi, eax
test eax, eax
js 0x1801ecd85
call fcn.18019c4f0
test al, al
je 0x1801ecd41
or qword [rbx + 0x98], 0x20000
mov rax, qword [rbx + 0xa8]
mov rcx, qword [rax + 0x10]
test cl, 0x10
je 0x1801ecd60
bt rcx, 0x15
jae 0x1801ecd60
or qword [rbx + 0x98], 0x10
mov rsi, qword [rsp + 0x230]
mov r14, rbx
mov qword [rsp + 0xa0], rbx
mov eax, dword [rsi + 0x10]
mov dword [rbx + 0xa0], eax
inc dword [rsi + 0x10]
or dword [rsi + 0x28], 4
jmp 0x1801ecde5
call fcn.1801991c0
mov ecx, dword [0x18025e63c]
test ecx, ecx
jns 0x1801ecd98
xor edi, edi
jmp 0x1801ecda1
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rdi, rax
mov edx, 0xfe
mov r8d, 0x188
mov rcx, rbx
call fcn.18024adb8
mov qword [rbx], 0
mov rax, qword [rdi + 0x20]
test rax, rax
je 0x1801ecdc9
mov qword [rax], rbx
jmp 0x1801ecdcd
mov qword [rdi + 0x18], rbx
mov qword [rdi + 0x20], rbx
test esi, esi
js 0x1801eb6fc
mov edi, dword [rsp + 0x48]
mov rsi, qword [rsp + 0x230]
cmp byte [rsp + 0x68], 0
je 0x1801ece12
movsxd rdx, dword [rsp + 0x48]
mov edi, dword [rsp + 0x70]
mov r8, qword [rsp + 0x248]
lea eax, [rdi + 1]
mov rcx, rdx
imul eax, ebp
cmp eax, dword [r8 + rdx*4]
jb 0x1801ece25
mov dword [r8 + rdx*4], eax
jmp 0x1801ece25
mov r8, qword [rsp + 0x248]
movsxd rcx, edi
mov edi, dword [rsp + 0x70]
add dword [r8 + rcx*4], ebp
cmp dword [r8 + rcx*4], 4
jbe 0x1801ece40
lea r9, [0x1800589b8]
xor r8d, r8d
xor edx, edx
mov rcx, rsi
call fcn.18019df20
mov rdx, qword [rsp + 0x238]
mov rax, qword [rsp + 0x128]
mov rbx, qword [rsp + 0x60]
mov qword [r14 + 0xd0], rax
mov al, byte [rsp + 0x4c]
mov qword [r14 + 0x98], 0
mov byte [r14 + 0xd8], al
mov rax, qword [rdx + r13*8]
mov ecx, dword [rax + 0xa4]
mov qword [r14 + 0x100], rbx
mov dword [r14 + 0xa4], ecx
mov rax, qword [rbx + 0x28]
mov qword [rax + r15*8], r14
mov rax, qword [rdx + r13*8]
mov rcx, qword [rax + 0xe8]
mov qword [r14 + 0xe8], rcx
mov rax, qword [rdx + r13*8]
mov qword [rax + 0xe8], r14
mov rax, qword [rdx + r13*8]
mov ecx, dword [rax + 0x98]
shr rcx, 0x18
test cl, 1
je 0x1801ecfa0
movapd xmm0, xmm11
movapd xmm1, xmm10
mov rdx, rax
movsd qword [rsp + 0x70], xmm0
movsd qword [rsp + 0xe0], xmm1
cmp rax, 0xffffffffffffffff
je 0x1801ecfa0
nop dword [rax]
mov rax, qword [rdx + 0xa8]
mov ecx, dword [rax + 0x10]
shr rcx, 8
test cl, 1
je 0x1801ecf64
mov eax, dword [rdx + 0x98]
shr rax, 0x18
test al, 1
je 0x1801ecf64
ucomisd xmm11, xmm0
jp 0x1801ecf64
jne 0x1801ecf64
ucomisd xmm10, xmm1
jp 0x1801ecf64
jne 0x1801ecf64
cmp rdx, r14
je 0x1801ecf64
mov r8, qword [r14 + 0xe8]
mov rax, r8
cmp r8, r14
je 0x1801ecf48
cmp rax, rdx
je 0x1801ecf64
mov rax, qword [rax + 0xe8]
cmp rax, r14
jne 0x1801ecf37
mov rax, qword [rdx + 0xe8]
mov rcx, qword [rax + 0xe8]
mov qword [r14 + 0xe8], rcx
mov qword [rdx + 0xe8], r8
cmp qword [rdx + 0x100], 0xffffffffffffffff
je 0x1801ecfa0
lea r9, [rsp + 0xe0]
lea r8, [rsp + 0x70]
mov rcx, rsi
call fcn.1801e9650
mov rdx, rax
cmp rax, 0xffffffffffffffff
je 0x1801ecfa0
movsd xmm0, qword [rsp + 0x70]
movsd xmm1, qword [rsp + 0xe0]
jmp 0x1801ecef0
mov rax, qword [rbx + 0x28]
inc dword [rsp + 0x58]
mov rsi, qword [rsp + 0x78]
mov rcx, qword [rax + r15*8]
mov rbp, qword [rsp + 0x230]
mov eax, dword [rsp + 0x240]
mov qword [rsp + r13*8 + 0xb0], rcx
mov byte [rsp + r13 + 0x40], 1
inc r15
jmp 0x1801ecff9
mov r12, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x60]
mov eax, dword [rsp + 0x240]
jmp 0x1801ecff9
mov r12, qword [rsp + 0x88]
mov rbp, qword [rsp + 0x230]
inc edi
inc r13
mov dword [rsp + 0x70], edi
cmp edi, eax
jb 0x1801ec380
mov qword [rsp + 0xe0], 0
cmp r12, 0xffffffffffffffff
je 0x1801ed06a
mov eax, dword [r12 + 0x78]
shr eax, 0x14
mov ecx, eax
mov rdx, qword [rbp + rax*8 + 0xd510]
test rdx, rdx
je 0x1801eb6fc
mov r8d, dword [rbp + rcx*4 + 0x15510]
lea rax, [rsp + 0xe0]
mov edi, 1
mov qword [rsp + 0x28], rax
mov r9, r12
mov rcx, rbp
mov dword [rsp + 0x20], edi
call fcn.1801dc2b0
test eax, eax
js 0x1801eb6fc
jmp 0x1801ed06f
mov edi, 1
cmp rbx, 0xffffffffffffffff
je 0x1801ed159
mov eax, dword [rbx + 0x78]
shr eax, 0x14
mov ecx, eax
mov rdx, qword [rbp + rax*8 + 0xd510]
test rdx, rdx
je 0x1801eb6fc
mov r8d, dword [rbp + rcx*4 + 0x15510]
lea rax, [rsp + 0xe0]
mov r9, rbx
mov qword [rsp + 0x28], rax
mov rcx, rbp
mov dword [rsp + 0x20], edi
call fcn.1801dc2b0
test eax, eax
js 0x1801eb6fc
mov rax, qword [rsp + 0x80]
mov ecx, dword [rsp + 0x54]
mov esi, dword [rsp + 0x240]
xor ebx, ebx
inc ecx
inc rax
mov dword [rsp + 0x54], ecx
mov qword [rsp + 0x80], rax
cmp ecx, esi
jb 0x1801ebfe0
mov r9, qword [rsp + 0x238]
mov rsi, qword [rsp + 0x98]
lea rdx, [rsp + 0x130]
nop word [rax + rax]
mov eax, dword [rdx]
add r9, 8
add rdx, 4
sub rsi, 1
mov rcx, qword [rsp + rax*8 + 0xb0]
mov qword [r9 - 8], rcx
jne 0x1801ed110
mov esi, dword [rsp + 0x240]
lea rax, [rsp + 0x40]
nop dword [rax + rax]
cmp byte [rax], 0
je 0x1801eb6fc
inc ebx
inc rax
cmp ebx, esi
jb 0x1801ed140
mov al, 1
jmp 0x1801eae0b
mov rax, qword [rsp + 0x80]
mov ecx, dword [rsp + 0x54]
mov esi, dword [rsp + 0x240]
xor ebx, ebx
jmp 0x1801ed0d3
xor al, al
jmp 0x1801eae48