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

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rsi
push rdi
sub rsp, 0x6c8
mov rax, qword [0x1801867c0]
xor rax, rsp
mov qword [rsp + 0x6b8], rax
call fcn.180014650
mov qword [rsp + 0x118], rax
mov rax, qword [rsp + 0x118]
movzx eax, byte [rax + 0xbb]
test eax, eax
je 0x18006bd76
xor al, al
jmp 0x1800705d7
mov rax, qword [0x180187700]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x70]
add rax, 8
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x70]
add rax, 0x37d0
mov qword [rsp + 0xe0], rax
mov byte [rsp + 0x150], 0
mov eax, dword [rsp + 0x708]
and eax, 0x4000000
test eax, eax
je 0x18006bdc8
mov byte [rsp + 0xc4], 1
jmp 0x18006bdd0
mov byte [rsp + 0xc4], 0
movzx eax, byte [rsp + 0xc4]
mov byte [rsp + 0x50], al
mov eax, dword [rsp + 0x708]
and eax, 0x4000
test eax, eax
je 0x18006bdf6
mov byte [rsp + 0xc5], 1
jmp 0x18006bdfe
mov byte [rsp + 0xc5], 0
movzx eax, byte [rsp + 0xc5]
mov byte [rsp + 0x60], al
mov eax, dword [rsp + 0x708]
and eax, 0x8000
test eax, eax
je 0x18006be24
mov byte [rsp + 0xc6], 1
jmp 0x18006be2c
mov byte [rsp + 0xc6], 0
movzx eax, byte [rsp + 0xc6]
mov byte [rsp + 0x7e], al
mov eax, dword [rsp + 0x708]
and eax, 0x10000
test eax, eax
jne 0x18006be52
mov byte [rsp + 0xc7], 1
jmp 0x18006be5a
mov byte [rsp + 0xc7], 0
movzx eax, byte [rsp + 0xc7]
mov byte [rsp + 0xb8], al
mov eax, dword [rsp + 0x708]
and eax, 0x40000
test eax, eax
je 0x18006be83
mov byte [rsp + 0xc8], 1
jmp 0x18006be8b
mov byte [rsp + 0xc8], 0
movzx eax, byte [rsp + 0xc8]
mov byte [rsp + 0x91], al
movzx eax, byte [rsp + 0x91]
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x18006beb1
call fcn.18000c6b0
nop
xor r8d, r8d
mov rdx, qword [rsp + 0x6e0]
mov rcx, qword [rsp + 0x118]
call fcn.180014a60
mov dword [rsp + 0x64], eax
movss xmm0, dword [0x18014a014]
movss dword [rsp + 0x20], xmm0
mov r9b, 1
xor r8d, r8d
mov rdx, qword [rsp + 0x6e0]
lea rcx, [rsp + 0x600]
call fcn.18000db00
nop
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x18006bf20
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rax + 0x3c28]
mulss xmm0, dword [0x180149fc0]
movss dword [rsp + 0x1f0], xmm0
jmp 0x18006bf32
movss xmm0, dword [rsp + 0x604]
movss dword [rsp + 0x1f0], xmm0
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rax + 0x40]
mulss xmm0, dword [0x180149fa0]
movss xmm1, dword [rsp + 0x1f0]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x280], xmm0
call fcn.18000d2f0
movss dword [rsp + 0x290], xmm0
mov rax, qword [rsp + 0x700]
mov rax, qword [rax]
mov qword [rsp + 0x3a0], rax
mov rax, qword [rsp + 0x3a0]
mov qword [rsp + 0x3a8], rax
movss xmm3, dword [rsp + 0x280]
movss xmm2, dword [rsp + 0x290]
mov rdx, qword [rsp + 0x3a8]
lea rcx, [rsp + 0x610]
call fcn.18000d1a0
nop
movss xmm0, dword [rsp + 0x600]
comiss xmm0, dword [0x180149f2c]
jbe 0x18006bff4
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rax + 0x58]
mulss xmm0, dword [0x180149fa0]
addss xmm0, dword [rsp + 0x604]
movss dword [rsp + 0x1f8], xmm0
jmp 0x18006c000
xorps xmm0, xmm0
movss dword [rsp + 0x1f8], xmm0
movss xmm0, dword [rsp + 0x614]
addss xmm0, dword [rsp + 0x1f8]
movaps xmm2, xmm0
movss xmm1, dword [rsp + 0x610]
lea rcx, [rsp + 0x658]
call fcn.180005a70
nop
mov rax, qword [rsp + 0x118]
add rax, 0x100
lea r8, [rsp + 0x610]
mov rdx, rax
lea rcx, [rsp + 0x460]
call fcn.180006800
mov rcx, qword [rsp + 0x118]
add rcx, 0x100
mov r8, rax
mov rdx, rcx
lea rcx, [rsp + 0x4f0]
call fcn.1800058e0
nop
lea r8, [rsp + 0x658]
lea rdx, [rsp + 0x4f0]
lea rcx, [rsp + 0x468]
call fcn.180006800
mov r8, rax
lea rdx, [rsp + 0x4f0]
lea rcx, [rsp + 0x638]
call fcn.1800058e0
nop
movss xmm0, dword [rsp + 0x600]
comiss xmm0, dword [0x180149f2c]
jbe 0x18006c109
movss xmm2, dword [rsp + 0x4fc]
movss xmm1, dword [rsp + 0x4f0]
lea rcx, [rsp + 0x470]
call fcn.180005a70
lea r8, [rsp + 0x640]
mov rdx, rax
lea rcx, [rsp + 0x4d0]
call fcn.1800058e0
lea rcx, [rsp + 0x4f0]
mov rdi, rcx
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x118]
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0x610]
mov qword [rsp + 0x4e0], rax
mov dword [rsp + 0x14c], 0
lea rcx, [rsp + 0x678]
call fcn.1800045f0
nop
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x18006c380
mov rax, qword [rsp + 0x118]
mov rax, qword [rax + 0x100]
mov qword [rsp + 0x660], rax
mov rax, qword [rsp + 0xe0]
movss xmm1, dword [rax + 0x40]
lea rcx, [rsp + 0x638]
call fcn.18004c250
nop
mov r9d, 0x400
lea r8, [rsp + 0x4f0]
mov edx, dword [rsp + 0x64]
lea rcx, [rsp + 0x638]
call fcn.180019bd0
movzx eax, al
test eax, eax
jne 0x18006c1b3
call fcn.1800118b0
xor al, al
jmp 0x1800705d7
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x4794]
mov dword [rsp + 0x14c], eax
lea rax, [rsp + 0x678]
mov rcx, qword [rsp + 0x70]
mov rdi, rax
lea rsi, [rcx + 0x478c]
mov ecx, 0x3c
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x118]
mov rcx, qword [rsp + 0x660]
mov qword [rax + 0x100], rcx
mov eax, 0x10
imul rax, rax, 9
mov rcx, qword [rsp + 0xe0]
lea rax, [rcx + rax + 0xdc]
mov rdx, rax
mov ecx, 5
call fcn.180022950
mov rax, qword [rsp + 0xe0]
movss xmm1, dword [rax + 0x44]
mov ecx, 7
call fcn.180022b90
mov rax, qword [rsp + 0xe0]
movss xmm1, dword [rax + 0x48]
mov ecx, 8
call fcn.180022b90
nop
xorps xmm2, xmm2
xorps xmm1, xmm1
lea rcx, [rsp + 0x478]
call fcn.180005a70
mov rdx, rax
mov ecx, 2
call fcn.180022ae0
nop
lea rdx, [rsp + 0x480]
lea rcx, [rsp + 0x4f0]
call fcn.1800157e0
mov dword [rsp + 0x20], 4
mov r9b, 1
mov r8, rax
mov edx, dword [rsp + 0x64]
mov rcx, qword [rsp + 0x6e0]
call fcn.18000b9b0
mov byte [rsp + 0xed], al
mov ecx, 3
call fcn.1800223a0
mov ecx, 1
call fcn.1800222f0
nop
movzx eax, byte [rsp + 0xed]
test eax, eax
jne 0x18006c2dd
call fcn.180010fa0
call fcn.1800118b0
xor al, al
jmp 0x1800705d7
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3ef0]
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0xd0]
mov eax, dword [rax + 0x158]
mov ecx, 1
mov dword [rsp + 0x294], ecx
movzx ecx, al
mov eax, dword [rsp + 0x294]
shl eax, cl
mov rcx, qword [rsp + 0xd0]
movsx ecx, word [rcx + 0x15e]
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0xd0]
mov word [rcx + 0x15e], ax
mov rax, qword [rsp + 0xe0]
add rax, 0x3c
mov rcx, qword [rsp + 0xd0]
add rcx, 0x100
mov rdx, rax
call fcn.1800068f0
mov rax, qword [rsp + 0xd0]
movss xmm0, dword [rsp + 0x4e0]
subss xmm0, dword [rax + 0xac]
movss dword [rsp + 0x4e0], xmm0
jmp 0x18006c3ea
mov rax, qword [rsp + 0xe0]
movss xmm1, dword [rax + 0x40]
lea rcx, [rsp + 0x638]
call fcn.18004c250
nop
mov eax, dword [rsp + 0x708]
and eax, 0x10000000
test eax, eax
jne 0x18006c3d8
mov r9d, 0x400
lea r8, [rsp + 0x4f0]
mov edx, dword [rsp + 0x64]
lea rcx, [rsp + 0x638]
call fcn.180019bd0
movzx eax, al
test eax, eax
jne 0x18006c3d8
xor al, al
jmp 0x1800705d7
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x4794]
mov dword [rsp + 0x14c], eax
mov edx, dword [rsp + 0x64]
lea rcx, [rsp + 0x4f0]
call fcn.180019e90
mov byte [rsp + 0x89], al
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x18006c41d
mov rax, qword [rsp + 0x70]
mov dword [rax + 0x4a90], 1
mov ecx, dword [rsp + 0x64]
call fcn.18006acb0
mov qword [rsp + 0x58], rax
mov eax, dword [rsp + 0x14c]
and eax, 0x100
test eax, eax
je 0x18006c445
mov byte [rsp + 0xc9], 1
jmp 0x18006c44d
mov byte [rsp + 0xc9], 0
movzx eax, byte [rsp + 0xc9]
mov byte [rsp + 0xaa], al
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f50], ecx
je 0x18006c4a8
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x48e0], ecx
jne 0x18006c4a8
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x48ec]
and eax, 1
test eax, eax
jne 0x18006c49e
mov rax, qword [rsp + 0x70]
cmp dword [rax + 0x4904], 2
jne 0x18006c4a8
mov byte [rsp + 0xca], 1
jmp 0x18006c4b0
mov byte [rsp + 0xca], 0
movzx eax, byte [rsp + 0xca]
mov byte [rsp + 0x8f], al
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x18006c4f2
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0x3740]
test eax, eax
je 0x18006c4f2
mov byte [rsp + 0xcb], 1
jmp 0x18006c4fa
mov byte [rsp + 0xcb], 0
movzx eax, byte [rsp + 0xcb]
mov byte [rsp + 0x8d], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x18006c551
cmp qword [rsp + 0x58], 0
je 0x18006c551
mov rax, qword [rsp + 0x70]
cmp dword [rax + 0x3f50], 0
jne 0x18006c551
mov edx, 1
mov rcx, qword [rsp + 0xd0]
call fcn.18006aee0
mov rcx, qword [rsp + 0x70]
cmp dword [rcx + 0x3f80], eax
jne 0x18006c551
mov byte [rsp + 0xa4], 1
jmp 0x18006c559
mov byte [rsp + 0xa4], 0
movzx eax, byte [rsp + 0xa4]
mov byte [rsp + 0xee], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x18006c5a2
cmp qword [rsp + 0x58], 0
je 0x18006c5a2
mov edx, 1
mov rcx, qword [rsp + 0xd0]
call fcn.18006aee0
mov rcx, qword [rsp + 0x70]
cmp dword [rcx + 0x3f50], eax
jne 0x18006c5a2
mov byte [rsp + 0xa5], 1
jmp 0x18006c5aa
mov byte [rsp + 0xa5], 0
movzx eax, byte [rsp + 0xa5]
mov byte [rsp + 0xac], al
mov byte [rsp + 0x7a], 0
mov byte [rsp + 0x7c], 0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x18006c5e7
mov rax, qword [rsp + 0xd0]
movss xmm0, dword [rax + 0x88]
movss dword [rsp + 0x1fc], xmm0
jmp 0x18006c5f8
movss xmm0, dword [0x18014a00c]
movss dword [rsp + 0x1fc], xmm0
movss xmm0, dword [rsp + 0x1fc]
movss dword [rsp + 0xa0], xmm0
cmp qword [rsp + 0x58], 0
je 0x18006c64f
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x18006c628
mov dword [rsp + 0x200], 1
jmp 0x18006c633
mov dword [rsp + 0x200], 0
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x6b]
cmp eax, dword [rsp + 0x200]
je 0x18006c64f
mov byte [rsp + 0xa6], 1
jmp 0x18006c657
mov byte [rsp + 0xa6], 0
movzx eax, byte [rsp + 0xa6]
mov byte [rsp + 0xa9], al
movzx eax, byte [rsp + 0x8d]
test eax, eax
jne 0x18006c6a0
movzx eax, byte [rsp + 0xee]
test eax, eax
jne 0x18006c6a0
movzx eax, byte [rsp + 0x8f]
test eax, eax
jne 0x18006c6a0
movzx eax, byte [rsp + 0xaa]
test eax, eax
jne 0x18006c6a0
mov byte [rsp + 0xa7], 0
jmp 0x18006c6a8
mov byte [rsp + 0xa7], 1
movzx eax, byte [rsp + 0xa7]
mov byte [rsp + 0x8e], al
movzx eax, byte [rsp + 0x8e]
test eax, eax
jne 0x18006c6d9
movzx eax, byte [rsp + 0xac]
test eax, eax
jne 0x18006c6d9
mov byte [rsp + 0xa8], 0
jmp 0x18006c6e1
mov byte [rsp + 0xa8], 1
movzx eax, byte [rsp + 0xa8]
mov byte [rsp + 0xab], al
movzx eax, byte [rsp + 0xab]
test eax, eax
je 0x18006c70d
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f50], ecx
jne 0x18006c71d
movzx eax, byte [rsp + 0xa9]
test eax, eax
je 0x18006c9ef
mov rax, qword [rsp + 0x70]
add rax, 0x4c20
mov qword [rsp + 0x58], rax
mov rcx, qword [rsp + 0x58]
call fcn.180068eb0
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 8]
call fcn.18006bc40
mov rcx, qword [rsp + 0x6f0]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov dword [rsp + 0x134], eax
mov rax, qword [rsp + 0x58]
add rax, 0x38
mov qword [rsp + 0x390], rax
mov eax, dword [rsp + 0x134]
inc eax
mov edx, eax
mov rcx, qword [rsp + 0x390]
call fcn.1800300d0
mov eax, dword [rsp + 0x134]
inc eax
cdqe
mov r8, rax
mov rdx, qword [rsp + 0x6f0]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x40]
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 8], ecx
jne 0x18006c7cc
movzx eax, byte [rsp + 0xa9]
test eax, eax
jne 0x18006c7cc
mov dword [rsp + 0x204], 1
jmp 0x18006c7d7
mov dword [rsp + 0x204], 0
movzx eax, byte [rsp + 0x204]
mov byte [rsp + 0x88], al
movzx eax, byte [rsp + 0x88]
test eax, eax
je 0x18006c83e
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x134]
cmp dword [rax + 0x10], ecx
jne 0x18006c836
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x48]
test eax, eax
je 0x18006c83e
movsxd rax, dword [rsp + 0x134]
mov r8, rax
mov rdx, qword [rsp + 0x6f0]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x30]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
test eax, eax
je 0x18006c83e
mov byte [rsp + 0x88], 0
mov qword [rsp + 0x578], 0
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x64]
mov dword [rax + 8], ecx
mov rax, qword [rsp + 0x58]
add rax, 0x18
mov qword [rsp + 0x3c0], rax
mov eax, dword [rsp + 0x6f8]
inc eax
mov edx, eax
mov rcx, qword [rsp + 0x3c0]
call fcn.1800301d0
mov rax, qword [rsp + 0x58]
add rax, 0x28
mov qword [rsp + 0x3c8], rax
xor edx, edx
mov rcx, qword [rsp + 0x3c8]
call fcn.1800300d0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x48], 0
lea rax, [rsp + 0x578]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, qword [rsp + 0x6f0]
mov edx, dword [rsp + 0x6f8]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x20]
call fcn.180017cb0
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0x6f0]
mov rcx, qword [rsp + 0x578]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x10], eax
movzx eax, byte [rsp + 0x88]
test eax, eax
je 0x18006c914
mov rcx, qword [rsp + 0x58]
call fcn.180068ed0
nop
jmp 0x18006c95b
mov rax, qword [rsp + 0x58]
xorps xmm0, xmm0
movss dword [rax + 0x50], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x18006c937
mov dword [rsp + 0x208], 1
jmp 0x18006c942
mov dword [rsp + 0x208], 0
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov edx, dword [rsp + 0x208]
mov rcx, rax
call fcn.18007c350
nop
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x18006c9d6
mov eax, dword [rsp + 0x708]
and eax, 0x10
test eax, eax
je 0x18006c977
mov byte [rsp + 0x7c], 1
movzx eax, byte [rsp + 0x8f]
test eax, eax
je 0x18006c9a6
movzx eax, byte [rsp + 0x88]
test eax, eax
je 0x18006c9a1
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x48ec]
and eax, 4
test eax, eax
jne 0x18006c9a6
mov byte [rsp + 0x7c], 1
movzx eax, byte [rsp + 0xaa]
test eax, eax
jne 0x18006c9d1
movzx eax, byte [rsp + 0x8d]
test eax, eax
je 0x18006c9d6
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
je 0x18006c9d6
mov byte [rsp + 0x7c], 1
mov eax, dword [rsp + 0x708]
and eax, 0x2000
test eax, eax
je 0x18006c9ef
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x60], 1
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x71]
mov byte [rsp + 0x79], al
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f50], ecx
je 0x18006ca4e
movzx eax, byte [rsp + 0x8e]
test eax, eax
je 0x18006ca4e
mov rdx, qword [rsp + 0x118]
mov ecx, dword [rsp + 0x64]
call fcn.180026c90
mov rdx, qword [rsp + 0x118]
mov ecx, dword [rsp + 0x64]
call fcn.180027590
xor edx, edx
mov rcx, qword [rsp + 0x118]
call fcn.180013b80
nop
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f50], ecx
jne 0x18006cb58
movzx eax, byte [rsp + 0x8d]
test eax, eax
je 0x18006ca81
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x281
call fcn.180027930
nop
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x4760]
or eax, 3
mov rcx, qword [rsp + 0x70]
mov dword [rcx + 0x4760], eax
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x18006cab3
mov eax, dword [rsp + 0x708]
and eax, 0x80
test eax, eax
je 0x18006cacc
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x4760]
or eax, 0xc
mov rcx, qword [rsp + 0x70]
mov dword [rcx + 0x4760], eax
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x207
call fcn.180027930
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x208
call fcn.180027930
nop
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x18006cb1b
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x205
call fcn.180027930
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x206
call fcn.180027930
nop
movzx eax, byte [rsp + 0x79]
test eax, eax
je 0x18006cb36
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x4000
call fcn.180027930
nop
mov eax, dword [rsp + 0x708]
and eax, 0x440
test eax, eax
je 0x18006cb58
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x200
call fcn.1800281e0
nop
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f50], ecx
jne 0x18006cb77
cmp qword [rsp + 0x58], 0
jne 0x18006cb77
call fcn.18000ef20
nop
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f50], ecx
jne 0x18006cbc2
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0x3740]
test eax, eax
je 0x18006cbc2
movzx eax, byte [rsp + 0xab]
test eax, eax
jne 0x18006cbc2
movzx eax, byte [rsp + 0x8e]
test eax, eax
jne 0x18006cbc2
mov byte [rsp + 0x7a], 1
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f50], ecx
je 0x18006cbf4
cmp qword [rsp + 0x58], 0
je 0x18006cbe7
movzx eax, byte [rsp + 0xac]
test eax, eax
jne 0x18006cbf4
mov dword [rsp + 0x20c], 0
jmp 0x18006cbff
mov dword [rsp + 0x20c], 1
movzx eax, byte [rsp + 0x20c]
mov byte [rsp + 0x68], al
cmp qword [rsp + 0x58], 0
je 0x18006cc49
mov rcx, qword [rsp + 0x58]
call fcn.18006b090
movzx eax, al
test eax, eax
jne 0x18006cc2d
movzx eax, byte [rsp + 0x7c]
test eax, eax
je 0x18006cc49
xor eax, eax
test eax, eax
jne 0x18006cc3c
movzx eax, byte [rsp + 0x68]
test eax, eax
je 0x18006cc49
mov dword [rsp + 0x170], 1
jmp 0x18006cc54
mov dword [rsp + 0x170], 0
movzx eax, byte [rsp + 0x170]
mov byte [rsp + 0x61], al
mov byte [rsp + 0x7b], 0
mov byte [rsp + 0x92], 0
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x18006cd57
cmp qword [rsp + 0x58], 0
je 0x18006cd57
movzx eax, byte [rsp + 0x68]
test eax, eax
jne 0x18006cc9c
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x18006cd57
mov qword [rsp + 0x580], 0
mov rax, qword [rsp + 0x58]
add rax, 0x18
mov qword [rsp + 0x3d0], rax
mov eax, dword [rsp + 0x6f8]
inc eax
mov edx, eax
mov rcx, qword [rsp + 0x3d0]
call fcn.1800301d0
lea rax, [rsp + 0x580]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, qword [rsp + 0x6f0]
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x18]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x20]
call fcn.180017cb0
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0x6f0]
mov rcx, qword [rsp + 0x580]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x10], eax
mov rcx, qword [rsp + 0x58]
call fcn.180068ed0
movzx eax, byte [rsp + 0x61]
mov dword [rsp + 0x298], eax
mov rcx, qword [rsp + 0x58]
call fcn.18006b090
movzx eax, al
mov ecx, dword [rsp + 0x298]
and ecx, eax
mov eax, ecx
mov byte [rsp + 0x61], al
movzx eax, byte [rsp + 0x68]
test eax, eax
jne 0x18006cd7a
movzx eax, byte [rsp + 0x61]
test eax, eax
jne 0x18006cd7a
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f50], ecx
jne 0x18006cda2
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x18006cda2
cmp qword [rsp + 0x58], 0
je 0x18006cda2
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x48]
test eax, eax
je 0x18006cda2
mov byte [rsp + 0xad], 1
jmp 0x18006cdaa
mov byte [rsp + 0xad], 0
movzx eax, byte [rsp + 0xad]
mov byte [rsp + 0xc3], al
cmp qword [rsp + 0x6e8], 0
je 0x18006ce16
movzx eax, byte [rsp + 0xc3]
test eax, eax
je 0x18006cde3
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x2d0], rax
jmp 0x18006cdf3
mov rax, qword [rsp + 0x6f0]
mov qword [rsp + 0x2d0], rax
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x2d0]
movsx eax, byte [rcx + rax]
test eax, eax
jne 0x18006ce16
mov byte [rsp + 0xae], 1
jmp 0x18006ce1e
mov byte [rsp + 0xae], 0
movzx eax, byte [rsp + 0xae]
mov byte [rsp + 0x78], al
movzx eax, byte [rsp + 0x7e]
test eax, eax
je 0x18006cf54
movzx eax, byte [rsp + 0x78]
test eax, eax
jne 0x18006cf54
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3c20]
mov qword [rsp + 0x3d8], rax
mov dx, 0x2a
mov rcx, qword [rsp + 0x3d8]
call fcn.1800369c0
mov qword [rsp + 0x2e8], rax
mov rax, qword [rsp + 0x70]
add rax, 0x5ac8
mov qword [rsp + 0x140], rax
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3c20]
mov rcx, qword [rsp + 0x140]
movss xmm0, dword [rax + 0x14]
movss dword [rcx + 0x14], xmm0
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3c20]
mov rcx, qword [rsp + 0x140]
movss xmm0, dword [rax + 0x64]
movss dword [rcx + 0x64], xmm0
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3c20]
mov rcx, qword [rsp + 0x140]
movss xmm0, dword [rax + 0x68]
movss dword [rcx + 0x68], xmm0
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3c20]
mov rcx, qword [rsp + 0x140]
movss xmm0, dword [rax + 0x6c]
movss dword [rcx + 0x6c], xmm0
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3c20]
mov rcx, qword [rsp + 0x140]
mov rax, qword [rax + 0x40]
mov qword [rcx + 0x40], rax
mov rax, qword [rsp + 0x140]
mov rcx, qword [rsp + 0x2e8]
mov qword [rax + 0x38], rcx
mov rax, qword [rsp + 0x140]
mov rcx, qword [rsp + 0x2e8]
movss xmm0, dword [rcx + 4]
movss dword [rax + 0x10], xmm0
mov rcx, qword [rsp + 0x140]
call fcn.1800225e0
nop
mov dword [rsp + 0x148], 0
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f50], ecx
jne 0x18006d6ae
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x148], eax
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe86], 0
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x6f8]
mov dword [rax + 0x4c], ecx
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x708]
mov dword [rax + 0xe88], ecx
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0xe08]
test eax, eax
jne 0x18006cfda
mov dword [rsp + 0x1ec], 1
jmp 0x18006cfe5
mov dword [rsp + 0x1ec], 0
mov rax, qword [rsp + 0x70]
movzx ecx, byte [rsp + 0x1ec]
mov byte [rax + 0x3f5d], cl
mov rax, qword [rsp + 0x80]
movss xmm0, dword [rax + 0xe00]
subss xmm0, dword [rsp + 0x4f0]
mov rax, qword [rsp + 0xe0]
subss xmm0, dword [rax + 0x3c]
mov rax, qword [rsp + 0x58]
addss xmm0, dword [rax + 0x50]
movss dword [rsp + 0x128], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x18006d065
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0xd0]
movss xmm0, dword [rax + 0xe04]
subss xmm0, dword [rcx + 0x104]
movss dword [rsp + 0x174], xmm0
jmp 0x18006d083
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rax + 0x3c28]
mulss xmm0, dword [0x180149f68]
movss dword [rsp + 0x174], xmm0
movss xmm0, dword [rsp + 0x174]
movss dword [rsp + 0x138], xmm0
movzx eax, byte [rsp + 0x7c]
test eax, eax
je 0x18006d0b9
mov rcx, qword [rsp + 0x58]
call fcn.1800726f0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe85], 1
jmp 0x18006d467
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x18006d30a
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, word [rcx + rax + 0x374a]
cmp eax, 2
jl 0x18006d30a
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1d]
test eax, eax
jne 0x18006d30a
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x138]
movss xmm2, dword [rsp + 0x128]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.18007ba70
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, word [rcx + rax + 0x374a]
sub eax, 2
mov dword [rsp + 0x29c], eax
mov eax, dword [rsp + 0x29c]
cdq
and eax, 1
xor eax, edx
sub eax, edx
test eax, eax
jne 0x18006d246
mov rax, qword [rsp + 0x58]
cmp dword [rax + 0x54], 0
je 0x18006d197
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x54]
dec eax
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.1800712b0
movzx eax, ax
cmp eax, 0xa
je 0x18006d197
mov byte [rsp + 0xaf], 0
jmp 0x18006d19f
mov byte [rsp + 0xaf], 1
movzx eax, byte [rsp + 0xaf]
mov byte [rsp + 0xef], al
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x5c]
cmp dword [rax + 0x58], ecx
jne 0x18006d1cc
movzx eax, byte [rsp + 0xef]
test eax, eax
jne 0x18006d1dc
mov edx, 0x20000c
mov rcx, qword [rsp + 0x58]
call fcn.180071100
nop
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x5c]
cmp dword [rax + 0x58], ecx
jne 0x18006d200
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov rcx, rax
call fcn.18007d7c0
nop
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x54]
mov rcx, qword [rsp + 0x58]
call fcn.180071780
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x54], eax
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x54]
mov dword [rax + 0x5c], ecx
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.18007b910
nop
jmp 0x18006d2fa
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x54]
mov rcx, qword [rsp + 0x58]
call fcn.1800712b0
movzx eax, ax
cmp eax, 0xa
jne 0x18006d26a
mov byte [rsp + 0xb0], 1
jmp 0x18006d272
mov byte [rsp + 0xb0], 0
movzx eax, byte [rsp + 0xb0]
mov byte [rsp + 0xf0], al
mov edx, 0x200004
mov rcx, qword [rsp + 0x58]
call fcn.180071100
mov edx, 0x600005
mov rcx, qword [rsp + 0x58]
call fcn.180071100
mov edx, 0x600001
mov rcx, qword [rsp + 0x58]
call fcn.180071100
nop
movzx eax, byte [rsp + 0xf0]
test eax, eax
jne 0x18006d2ee
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x18006d2ee
mov rax, qword [rsp + 0x58]
add rax, 0x5c
mov rcx, qword [rsp + 0x58]
add rcx, 0x58
mov rdx, rax
call fcn.180051e90
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x5c]
mov dword [rax + 0x54], ecx
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 0
mov rcx, qword [rsp + 0x58]
call fcn.180068eb0
nop
jmp 0x18006d467
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0x3740]
test eax, eax
je 0x18006d3c2
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe85]
test eax, eax
jne 0x18006d3c2
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x18006d3bd
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1d]
test eax, eax
je 0x18006d389
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x138]
movss xmm2, dword [rsp + 0x128]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.18007c020
nop
jmp 0x18006d3b2
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x138]
movss xmm2, dword [rsp + 0x128]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.18007ba70
nop
mov rcx, qword [rsp + 0x58]
call fcn.180068eb0
nop
jmp 0x18006d467
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0xe08]
test eax, eax
je 0x18006d467
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe85]
test eax, eax
jne 0x18006d467
mov rax, qword [rsp + 0x80]
movss xmm0, dword [rax + 0xf0]
ucomiss xmm0, dword [0x180149f2c]
jp 0x18006d429
jne 0x18006d429
mov rax, qword [rsp + 0x80]
movss xmm0, dword [rax + 0xf4]
ucomiss xmm0, dword [0x180149f2c]
jp 0x18006d429
je 0x18006d467
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x138]
movss xmm2, dword [rsp + 0x128]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.18007c020
mov rcx, qword [rsp + 0x58]
call fcn.180068eb0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe85]
test eax, eax
je 0x18006d4a0
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0xe08]
test eax, eax
jne 0x18006d4a0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe85], 0
mov eax, dword [rsp + 0x708]
and eax, 0x400
test eax, eax
je 0x18006d521
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x200
call fcn.180028be0
movzx eax, al
test eax, eax
je 0x18006d521
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x18006d521
mov dword [rsp + 0x5f0], 9
mov dword [rsp + 0x20], 2
mov r9, qword [rsp + 0x718]
mov r8, qword [rsp + 0x710]
mov edx, dword [rsp + 0x708]
lea rcx, [rsp + 0x5f0]
call fcn.180070600
movzx eax, al
test eax, eax
je 0x18006d521
mov edx, dword [rsp + 0x5f0]
mov rcx, qword [rsp + 0x58]
call fcn.180071100
nop
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
je 0x18006d547
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1e]
test eax, eax
je 0x18006d56d
movzx eax, byte [rsp + 0x79]
test eax, eax
je 0x18006d563
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1f]
test eax, eax
jne 0x18006d56d
mov byte [rsp + 0xb1], 0
jmp 0x18006d575
mov byte [rsp + 0xb1], 1
movzx eax, byte [rsp + 0xb1]
mov byte [rsp + 0xf1], al
mov rax, qword [rsp + 0x80]
cmp dword [rax + 0x37b8], 0
jle 0x18006d6ae
movzx eax, byte [rsp + 0xf1]
test eax, eax
jne 0x18006d688
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x18006d688
movzx eax, byte [rsp + 0x8f]
test eax, eax
jne 0x18006d688
mov dword [rsp + 0x12c], 0
jmp 0x18006d5e3
mov eax, dword [rsp + 0x12c]
inc eax
mov dword [rsp + 0x12c], eax
mov rax, qword [rsp + 0x80]
mov eax, dword [rax + 0x37b8]
cmp dword [rsp + 0x12c], eax
jge 0x18006d688
mov rax, qword [rsp + 0x80]
add rax, 0x37b8
mov qword [rsp + 0x3e0], rax
mov edx, dword [rsp + 0x12c]
mov rcx, qword [rsp + 0x3e0]
call fcn.180006530
movzx eax, word [rax]
mov dword [rsp + 0x5e0], eax
cmp dword [rsp + 0x5e0], 9
jne 0x18006d63e
jmp 0x18006d5d3
mov dword [rsp + 0x20], 2
mov r9, qword [rsp + 0x718]
mov r8, qword [rsp + 0x710]
mov edx, dword [rsp + 0x708]
lea rcx, [rsp + 0x5e0]
call fcn.180070600
movzx eax, al
test eax, eax
je 0x18006d683
mov edx, dword [rsp + 0x5e0]
mov rcx, qword [rsp + 0x58]
call fcn.180071100
nop
jmp 0x18006d5d3
mov rax, qword [rsp + 0x80]
add rax, 0x37b8
mov qword [rsp + 0x3e8], rax
xor edx, edx
mov rcx, qword [rsp + 0x3e8]
call fcn.1800301d0
nop
mov byte [rsp + 0x7d], 0
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f50], ecx
jne 0x18006e6b0
mov rax, qword [rsp + 0x70]
movzx eax, byte [rax + 0x3f5c]
test eax, eax
jne 0x18006e6b0
movzx eax, byte [rsp + 0x7a]
test eax, eax
jne 0x18006e6b0
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rsp + 0x4e4]
subss xmm0, dword [rax + 0x40]
mov rax, qword [rsp + 0x70]
divss xmm0, dword [rax + 0x3c28]
cvttss2si eax, xmm0
mov edx, 1
mov ecx, eax
call fcn.180002840
mov dword [rsp + 0x154], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x154]
mov dword [rax + 0x64], ecx
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1d]
test eax, eax
je 0x18006d752
mov dword [rsp + 0x178], 0x400000
jmp 0x18006d75d
mov dword [rsp + 0x178], 0
mov eax, dword [rsp + 0x178]
mov dword [rsp + 0x94], eax
movzx eax, byte [rsp + 0x79]
test eax, eax
je 0x18006d78c
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1e]
mov byte [rsp + 0xb2], al
jmp 0x18006d7a2
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
mov byte [rsp + 0xb2], al
movzx eax, byte [rsp + 0xb2]
mov byte [rsp + 0x8b], al
movzx eax, byte [rsp + 0x79]
test eax, eax
je 0x18006d7fd
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1f]
test eax, eax
je 0x18006d7fd
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
jne 0x18006d7fd
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1e]
test eax, eax
jne 0x18006d7fd
mov byte [rsp + 0xb3], 1
jmp 0x18006d805
mov byte [rsp + 0xb3], 0
movzx eax, byte [rsp + 0xb3]
mov byte [rsp + 0x8a], al
mov dword [rsp + 0x2f8], 1
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0xa39
call fcn.180028be0
movzx eax, al
test eax, eax
jne 0x18006d855
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x220a
call fcn.180028be0
movzx eax, al
test eax, eax
je 0x18006d88b
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x18006d88b
movzx eax, byte [rsp + 0x7e]
test eax, eax
jne 0x18006d88b
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x18006d881
mov rcx, qword [rsp + 0x58]
call fcn.18006b090
movzx eax, al
test eax, eax
je 0x18006d88b
mov byte [rsp + 0xb4], 1
jmp 0x18006d893
mov byte [rsp + 0xb4], 0
movzx eax, byte [rsp + 0xb4]
mov byte [rsp + 0x90], al
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0xa24
call fcn.180028be0
movzx eax, al
test eax, eax
jne 0x18006d8d2
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x1209
call fcn.180028be0
movzx eax, al
test eax, eax
je 0x18006d8ff
movzx eax, byte [rsp + 0x7e]
test eax, eax
jne 0x18006d8ff
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x18006d8f5
mov rcx, qword [rsp + 0x58]
call fcn.18006b090
movzx eax, al
test eax, eax
je 0x18006d8ff
mov byte [rsp + 0xb5], 1
jmp 0x18006d907
mov byte [rsp + 0xb5], 0
movzx eax, byte [rsp + 0xb5]
mov byte [rsp + 0xe9], al
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0xa37
call fcn.180028be0
movzx eax, al
test eax, eax
jne 0x18006d94c
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x2209
call fcn.180028be0
movzx eax, al
test eax, eax
je 0x18006d95f
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x18006d95f
mov byte [rsp + 0xb6], 1
jmp 0x18006d967
mov byte [rsp + 0xb6], 0
movzx eax, byte [rsp + 0xb6]
mov byte [rsp + 0xea], al
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0xa3b
call fcn.180028be0
movzx eax, al
test eax, eax
je 0x18006d9b0
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x18006d9b0
movzx eax, byte [rsp + 0xb8]
test eax, eax
je 0x18006d9b0
mov byte [rsp + 0xb7], 1
jmp 0x18006d9b8
mov byte [rsp + 0xb7], 0
movzx eax, byte [rsp + 0xb7]
mov byte [rsp + 0xc1], al
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0xa3a
call fcn.180028be0
movzx eax, al
test eax, eax
jne 0x18006da06
movzx eax, byte [rsp + 0x79]
test eax, eax
je 0x18006da25
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x2a3b
call fcn.180028be0
movzx eax, al
test eax, eax
je 0x18006da25
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x18006da25
movzx eax, byte [rsp + 0xb8]
test eax, eax
je 0x18006da25
mov byte [rsp + 0xb9], 1
jmp 0x18006da2d
mov byte [rsp + 0xb9], 0
movzx eax, byte [rsp + 0xb9]
mov byte [rsp + 0xfa], al
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0xa22
call fcn.180028be0
mov byte [rsp + 0xe8], al
mov rax, qword [rsp + 0x80]
mov eax, dword [rax]
and eax, 2
test eax, eax
je 0x18006da81
mov rax, qword [rsp + 0x80]
mov eax, dword [rax + 4]
and eax, 1
test eax, eax
je 0x18006da81
mov byte [rsp + 0xba], 1
jmp 0x18006da89
mov byte [rsp + 0xba], 0
movzx eax, byte [rsp + 0xba]
mov byte [rsp + 0xbd], al
mov dl, 1
mov ecx, 0x20d
call fcn.180018ff0
movzx eax, al
test eax, eax
jne 0x18006dac8
mov dl, 1
mov ecx, 0x267
call fcn.180018ff0
movzx eax, al
test eax, eax
jne 0x18006dac8
mov byte [rsp + 0xbb], 0
jmp 0x18006dad0
mov byte [rsp + 0xbb], 1
movzx eax, byte [rsp + 0xbb]
mov byte [rsp + 0xf8], al
movzx eax, byte [rsp + 0xbd]
test eax, eax
je 0x18006db1b
xor edx, edx
mov ecx, 0x26e
call fcn.180018ff0
movzx eax, al
test eax, eax
jne 0x18006db11
xor edx, edx
mov ecx, 0x26d
call fcn.180018ff0
movzx eax, al
test eax, eax
je 0x18006db1b
mov byte [rsp + 0xbc], 1
jmp 0x18006db23
mov byte [rsp + 0xbc], 0
movzx eax, byte [rsp + 0xbc]
mov byte [rsp + 0xbf], al
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x20e
call fcn.180028be0
movzx eax, al
test eax, eax
jne 0x18006db7e
movzx eax, byte [rsp + 0xbd]
test eax, eax
je 0x18006db74
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x26c
call fcn.180028be0
movzx eax, al
test eax, eax
jne 0x18006db7e
mov byte [rsp + 0xbe], 0
jmp 0x18006db86
mov byte [rsp + 0xbe], 1
movzx eax, byte [rsp + 0xbe]
mov byte [rsp + 0xf9], al
mov dl, 1
mov ecx, 0x201
call fcn.180018ff0
movzx eax, al
test eax, eax
je 0x18006dc17
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x18006dbc1
mov dword [rsp + 0x180], 0x200004
jmp 0x18006dbf3
movzx eax, byte [rsp + 0x8b]
test eax, eax
je 0x18006dbda
mov dword [rsp + 0x17c], 0x20000c
jmp 0x18006dbe5
mov dword [rsp + 0x17c], 0x200000
mov eax, dword [rsp + 0x17c]
mov dword [rsp + 0x180], eax
mov eax, dword [rsp + 0x94]
mov ecx, dword [rsp + 0x180]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.180071100
nop
jmp 0x18006e668
mov dl, 1
mov ecx, 0x202
call fcn.180018ff0
movzx eax, al
test eax, eax
je 0x18006dc99
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x18006dc43
mov dword [rsp + 0x188], 0x200005
jmp 0x18006dc75
movzx eax, byte [rsp + 0x8b]
test eax, eax
je 0x18006dc5c
mov dword [rsp + 0x184], 0x20000d
jmp 0x18006dc67
mov dword [rsp + 0x184], 0x200001
mov eax, dword [rsp + 0x184]
mov dword [rsp + 0x188], eax
mov eax, dword [rsp + 0x94]
mov ecx, dword [rsp + 0x188]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.180071100
nop
jmp 0x18006e668
mov dl, 1
mov ecx, 0x203
call fcn.180018ff0
movzx eax, al
test eax, eax
je 0x18006dd50
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x18006dd50
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
je 0x18006dd08
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0x70]
movss xmm0, dword [rax + 0x88]
subss xmm0, dword [rcx + 0x3c28]
xorps xmm1, xmm1
call fcn.180002870
movaps xmm1, xmm0
mov rcx, qword [rsp + 0xd0]
call fcn.1800281a0
nop
jmp 0x18006dd4b
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x18006dd21
mov dword [rsp + 0x18c], 0x200006
jmp 0x18006dd2c
mov dword [rsp + 0x18c], 0x200002
mov eax, dword [rsp + 0x94]
mov ecx, dword [rsp + 0x18c]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.180071100
nop
jmp 0x18006e668
mov dl, 1
mov ecx, 0x204
call fcn.180018ff0
movzx eax, al
test eax, eax
je 0x18006de2d
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x18006de2d
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
je 0x18006dde5
call fcn.180015610
movss dword [rsp + 0x2a0], xmm0
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0x70]
movss xmm0, dword [rax + 0x88]
addss xmm0, dword [rcx + 0x3c28]
movss dword [rsp + 0x2a4], xmm0
movss xmm1, dword [rsp + 0x2a0]
movss xmm0, dword [rsp + 0x2a4]
call fcn.1800028e0
movaps xmm1, xmm0
mov rcx, qword [rsp + 0xd0]
call fcn.1800281a0
nop
jmp 0x18006de28
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x18006ddfe
mov dword [rsp + 0x190], 0x200007
jmp 0x18006de09
mov dword [rsp + 0x190], 0x200003
mov eax, dword [rsp + 0x94]
mov ecx, dword [rsp + 0x190]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.180071100
nop
jmp 0x18006e668
mov dl, 1
mov ecx, 0x205
call fcn.180018ff0
movzx eax, al
test eax, eax
je 0x18006de95
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x18006de95
mov eax, dword [rsp + 0x94]
or eax, 0x20000e
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.180071100
cvtsi2ss xmm0, dword [rsp + 0x154]
mov rax, qword [rsp + 0x70]
mulss xmm0, dword [rax + 0x3c28]
movss xmm1, dword [rsp + 0xa0]
subss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0xa0], xmm0
jmp 0x18006e668
mov dl, 1
mov ecx, 0x206
call fcn.180018ff0
movzx eax, al
test eax, eax
je 0x18006defd
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x18006defd
mov eax, dword [rsp + 0x94]
or eax, 0x20000f
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.180071100
cvtsi2ss xmm0, dword [rsp + 0x154]
mov rax, qword [rsp + 0x70]
mulss xmm0, dword [rax + 0x3c28]
movss xmm1, dword [rsp + 0xa0]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0xa0], xmm0
jmp 0x18006e668
mov dl, 1
mov ecx, 0x207
call fcn.180018ff0
movzx eax, al
test eax, eax
je 0x18006df62
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
je 0x18006df38
mov eax, dword [rsp + 0x94]
or eax, 0x200006
mov dword [rsp + 0x194], eax
jmp 0x18006df4b
mov eax, dword [rsp + 0x94]
or eax, 0x200004
mov dword [rsp + 0x194], eax
mov edx, dword [rsp + 0x194]
mov rcx, qword [rsp + 0x58]
call fcn.180071100
nop
jmp 0x18006e668
mov dl, 1
mov ecx, 0x208
call fcn.180018ff0
movzx eax, al
test eax, eax
je 0x18006dfc7
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
je 0x18006df9d
mov eax, dword [rsp + 0x94]
or eax, 0x200007
mov dword [rsp + 0x198], eax
jmp 0x18006dfb0
mov eax, dword [rsp + 0x94]
or eax, 0x200005
mov dword [rsp + 0x198], eax
mov edx, dword [rsp + 0x198]
mov rcx, qword [rsp + 0x58]
call fcn.180071100
nop
jmp 0x18006e668
mov dl, 1
mov ecx, 0x20a
call fcn.180018ff0
movzx eax, al
test eax, eax
je 0x18006e03a
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x18006e03a
movzx eax, byte [rsp + 0x90]
test eax, eax
jne 0x18006e03a
mov rcx, qword [rsp + 0x58]
call fcn.18006b090
movzx eax, al
test eax, eax
jne 0x18006e01c
movzx eax, byte [rsp + 0x8b]
test eax, eax
je 0x18006e01c
mov edx, 0x60000d
mov rcx, qword [rsp + 0x58]
call fcn.180071100
nop
mov eax, dword [rsp + 0x94]
or eax, 0x200008
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.180071100
nop
jmp 0x18006e668
mov dl, 1
mov ecx, 0x20b
call fcn.180018ff0
movzx eax, al
test eax, eax
je 0x18006e0fd
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x18006e0fd
mov rcx, qword [rsp + 0x58]
call fcn.18006b090
movzx eax, al
test eax, eax
jne 0x18006e0df
movzx eax, byte [rsp + 0x8b]
test eax, eax
je 0x18006e08d
mov edx, 0x60000c
mov rcx, qword [rsp + 0x58]
call fcn.180071100
nop
jmp 0x18006e0df
movzx eax, byte [rsp + 0x79]
test eax, eax
je 0x18006e0df
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1f]
test eax, eax
je 0x18006e0df
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1e]
test eax, eax
jne 0x18006e0df
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
jne 0x18006e0df
mov edx, 0x600004
mov rcx, qword [rsp + 0x58]
call fcn.180071100
nop
mov eax, dword [rsp + 0x94]
or eax, 0x200009
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.180071100
nop
jmp 0x18006e668
movzx eax, byte [rsp + 0xf8]
test eax, eax
jne 0x18006e119
movzx eax, byte [rsp + 0xbf]
test eax, eax
je 0x18006e236
mov eax, dword [rsp + 0x708]
and eax, 0x800
test eax, eax
je 0x18006e136
mov dword [rsp + 0x19c], 1
jmp 0x18006e141
mov dword [rsp + 0x19c], 0
movzx eax, byte [rsp + 0x19c]
mov byte [rsp + 0xc0], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x18006e1a3
movzx eax, byte [rsp + 0xbf]
test eax, eax
jne 0x18006e1a3
movzx eax, byte [rsp + 0xc0]
test eax, eax
je 0x18006e184
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
je 0x18006e1a3
movzx eax, byte [rsp + 0xc0]
test eax, eax
jne 0x18006e1d8
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
je 0x18006e1d8
mov byte [rsp + 0x92], 1
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x74]
test eax, eax
je 0x18006e1d1
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x18006e1d1
mov rcx, qword [rsp + 0x58]
call fcn.1800726f0
nop
jmp 0x18006e1d6
mov byte [rsp + 0x7a], 1
jmp 0x18006e231
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x18006e231
mov dword [rsp + 0x5f4], 0xa
mov dword [rsp + 0x20], 2
mov r9, qword [rsp + 0x718]
mov r8, qword [rsp + 0x710]
mov edx, dword [rsp + 0x708]
lea rcx, [rsp + 0x5f4]
call fcn.180070600
movzx eax, al
test eax, eax
je 0x18006e231
mov edx, dword [rsp + 0x5f4]
mov rcx, qword [rsp + 0x58]
call fcn.180071100
nop
jmp 0x18006e668
movzx eax, byte [rsp + 0xf9]
test eax, eax
je 0x18006e29a
mov eax, dword [rsp + 0x708]
and eax, 0x100000
test eax, eax
je 0x18006e279
mov rax, qword [rsp + 0x58]
cmp dword [rax + 0x10], 0
jle 0x18006e264
mov byte [rsp + 0x7d], 1
jmp 0x18006e277
mov byte [rsp + 0x61], 0
movzx eax, byte [rsp + 0x61]
mov byte [rsp + 0x68], al
mov byte [rsp + 0x7a], 1
jmp 0x18006e295
mov byte [rsp + 0x7d], 1
movzx eax, byte [rsp + 0x7d]
mov byte [rsp + 0x7a], al
mov byte [rsp + 0x61], 0
movzx eax, byte [rsp + 0x61]
mov byte [rsp + 0x68], al
jmp 0x18006e668
movzx eax, byte [rsp + 0xc1]
test eax, eax
jne 0x18006e2b2
movzx eax, byte [rsp + 0xfa]
test eax, eax
je 0x18006e2f7
movzx eax, byte [rsp + 0xc1]
test eax, eax
je 0x18006e2cb
mov dword [rsp + 0x1a0], 0x20000a
jmp 0x18006e2d6
mov dword [rsp + 0x1a0], 0x20000b
mov edx, dword [rsp + 0x1a0]
mov rcx, qword [rsp + 0x58]
call fcn.180071100
mov rcx, qword [rsp + 0x58]
call fcn.1800628f0
nop
jmp 0x18006e668
movzx eax, byte [rsp + 0xe8]
test eax, eax
je 0x18006e31e
mov rcx, qword [rsp + 0x58]
call fcn.1800726f0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
jmp 0x18006e668
movzx eax, byte [rsp + 0x90]
test eax, eax
jne 0x18006e33a
movzx eax, byte [rsp + 0xe9]
test eax, eax
je 0x18006e4e6
mov rax, qword [rsp + 0x80]
cmp qword [rax + 0xb0], 0
je 0x18006e496
mov rcx, qword [rsp + 0x58]
call fcn.18006b090
movzx eax, al
test eax, eax
je 0x18006e37f
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.1800028b0
mov dword [rsp + 0x1a4], eax
jmp 0x18006e38a
mov dword [rsp + 0x1a4], 0
mov eax, dword [rsp + 0x1a4]
mov dword [rsp + 0x1b0], eax
mov rcx, qword [rsp + 0x58]
call fcn.18006b090
movzx eax, al
test eax, eax
je 0x18006e3c7
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.180002840
mov dword [rsp + 0x1a8], eax
jmp 0x18006e3d6
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0xc]
mov dword [rsp + 0x1a8], eax
mov eax, dword [rsp + 0x1a8]
mov dword [rsp + 0x1ac], eax
movsxd rax, dword [rsp + 0x1ac]
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x20]
lea rax, [rcx + rax*2]
movsxd rcx, dword [rsp + 0x1b0]
mov rdx, qword [rsp + 0x58]
mov rdx, qword [rdx + 0x20]
lea rcx, [rdx + rcx*2]
mov rdx, rax
call fcn.180017c20
inc eax
mov dword [rsp + 0x1b4], eax
movsxd rax, dword [rsp + 0x1b4]
mov rcx, rax
call fcn.18001b300
mov qword [rsp + 0x270], rax
movsxd rax, dword [rsp + 0x1ac]
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x20]
lea rax, [rcx + rax*2]
movsxd rcx, dword [rsp + 0x1b0]
mov rdx, qword [rsp + 0x58]
mov rdx, qword [rdx + 0x20]
lea rcx, [rdx + rcx*2]
mov r9, rax
mov r8, rcx
mov edx, dword [rsp + 0x1b4]
mov rcx, qword [rsp + 0x270]
call fcn.180017db0
mov rcx, qword [rsp + 0x270]
call fcn.180026fe0
mov rcx, qword [rsp + 0x270]
call fcn.18001b360
nop
movzx eax, byte [rsp + 0x90]
test eax, eax
je 0x18006e4e1
mov rcx, qword [rsp + 0x58]
call fcn.18006b090
movzx eax, al
test eax, eax
jne 0x18006e4be
mov rcx, qword [rsp + 0x58]
call fcn.1800726f0
nop
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.18007bb20
nop
jmp 0x18006e668
movzx eax, byte [rsp + 0xea]
test eax, eax
je 0x18006e668
call fcn.180014220
mov qword [rsp + 0x278], rax
cmp qword [rsp + 0x278], 0
je 0x18006e668
mov rcx, qword [rsp + 0x278]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov dword [rsp + 0x2a8], eax
mov eax, dword [rsp + 0x2a8]
inc eax
cdqe
shl rax, 1
mov rcx, rax
call fcn.18001b300
mov qword [rsp + 0x218], rax
mov dword [rsp + 0x108], 0
mov rax, qword [rsp + 0x278]
mov qword [rsp + 0x210], rax
mov rax, qword [rsp + 0x210]
movsx eax, byte [rax]
test eax, eax
je 0x18006e608
xor r8d, r8d
mov rdx, qword [rsp + 0x210]
lea rcx, [rsp + 0x5f8]
call fcn.180017500
cdqe
mov rcx, qword [rsp + 0x210]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x210], rax
mov dword [rsp + 0x20], 4
mov r9, qword [rsp + 0x718]
mov r8, qword [rsp + 0x710]
mov edx, dword [rsp + 0x708]
lea rcx, [rsp + 0x5f8]
call fcn.180070600
movzx eax, al
test eax, eax
jne 0x18006e5d7
jmp 0x18006e55f
movsxd rax, dword [rsp + 0x108]
mov rcx, qword [rsp + 0x218]
movzx edx, word [rsp + 0x5f8]
mov word [rcx + rax*2], dx
mov eax, dword [rsp + 0x108]
inc eax
mov dword [rsp + 0x108], eax
jmp 0x18006e55f
movsxd rax, dword [rsp + 0x108]
xor ecx, ecx
mov rdx, qword [rsp + 0x218]
mov word [rdx + rax*2], cx
cmp dword [rsp + 0x108], 0
jle 0x18006e65a
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov r9d, dword [rsp + 0x108]
mov r8, qword [rsp + 0x218]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.18007d6e0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov rcx, qword [rsp + 0x218]
call fcn.18001b360
nop
mov rcx, qword [rsp + 0x58]
call fcn.18006b090
movzx eax, al
test eax, eax
je 0x18006e695
xor eax, eax
test eax, eax
jne 0x18006e688
movzx eax, byte [rsp + 0x68]
test eax, eax
je 0x18006e695
mov dword [rsp + 0x1b8], 1
jmp 0x18006e6a0
mov dword [rsp + 0x1b8], 0
movzx eax, byte [rsp + 0x61]
or eax, dword [rsp + 0x1b8]
mov byte [rsp + 0x61], al
mov qword [rsp + 0x120], 0
mov dword [rsp + 0x98], 0
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f50], ecx
jne 0x18006eeb5
movzx eax, byte [rsp + 0x7d]
test eax, eax
je 0x18006e876
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x18006e876
mov eax, dword [rsp + 0x708]
and eax, 0x100000
test eax, eax
je 0x18006e747
lea rax, [0x18014e586]
mov qword [rsp + 0x120], rax
mov dword [rsp + 0x98], 0
mov rax, qword [rsp + 0x58]
add rax, 0x54
xor r9d, r9d
lea r8, [rsp + 0x618]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.18007d810
nop
jmp 0x18006e876
mov rax, qword [rsp + 0x58]
mov rdx, qword [rax + 0x40]
mov rcx, qword [rsp + 0x6f0]
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
je 0x18006e876
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x40]
mov qword [rsp + 0x120], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x38]
dec eax
mov dword [rsp + 0x98], eax
mov byte [rsp + 0x7b], 1
lea rcx, [rsp + 0x568]
call fcn.180002a10
nop
cmp dword [rsp + 0x98], 0
jle 0x18006e81a
movsxd rax, dword [rsp + 0x98]
mov rcx, qword [rsp + 0x120]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x120]
call fcn.180017b40
inc eax
mov edx, eax
lea rcx, [rsp + 0x568]
call fcn.1800301d0
movsxd rax, dword [rsp + 0x98]
mov rcx, qword [rsp + 0x120]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x20], 0
mov r9, rax
mov r8, qword [rsp + 0x120]
mov edx, dword [rsp + 0x568]
mov rcx, qword [rsp + 0x570]
call fcn.180017cb0
nop
cmp dword [rsp + 0x98], 0
jle 0x18006e836
mov eax, dword [rsp + 0x568]
dec eax
mov dword [rsp + 0x1bc], eax
jmp 0x18006e841
mov dword [rsp + 0x1bc], 0
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov r9d, dword [rsp + 0x1bc]
mov r8, qword [rsp + 0x570]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.18007d810
nop
lea rcx, [rsp + 0x568]
call fcn.180005cc0
nop
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x18006e8da
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x48], 1
mov rax, qword [rsp + 0x58]
add rax, 0x28
mov qword [rsp + 0x3f0], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x18]
lea eax, [rax*4 + 1]
mov edx, eax
mov rcx, qword [rsp + 0x3f0]
call fcn.1800300d0
xor r9d, r9d
mov rax, qword [rsp + 0x58]
mov r8, qword [rax + 0x20]
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x28]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x30]
call fcn.180017db0
nop
movzx eax, byte [rsp + 0x7d]
test eax, eax
je 0x18006e907
movzx eax, byte [rsp + 0x92]
test eax, eax
je 0x18006e8fd
mov eax, dword [rsp + 0x708]
and eax, 0x20
test eax, eax
jne 0x18006e907
mov byte [rsp + 0xc2], 0
jmp 0x18006e90f
mov byte [rsp + 0xc2], 1
movzx eax, byte [rsp + 0xc2]
mov byte [rsp + 0xeb], al
movzx eax, byte [rsp + 0xeb]
test eax, eax
je 0x18006eeb5
mov eax, dword [rsp + 0x708]
and eax, 0x801c0
test eax, eax
je 0x18006ee6d
mov dword [rsp + 0xf4], 0
mov dword [rsp + 0x130], 0
mov eax, dword [rsp + 0x708]
and eax, 0x40
test eax, eax
je 0x18006e999
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x200
call fcn.180028be0
movzx eax, al
test eax, eax
je 0x18006e999
mov dword [rsp + 0xf4], 0x40
mov dword [rsp + 0x130], 0x200
jmp 0x18006ea5a
mov eax, dword [rsp + 0x708]
and eax, 0x80
test eax, eax
je 0x18006e9d7
mov dl, 1
mov ecx, 0x203
call fcn.180018ff0
movzx eax, al
test eax, eax
je 0x18006e9d7
mov dword [rsp + 0xf4], 0x80
mov dword [rsp + 0x130], 0x203
jmp 0x18006ea5a
mov eax, dword [rsp + 0x708]
and eax, 0x80
test eax, eax
je 0x18006ea12
mov dl, 1
mov ecx, 0x204
call fcn.180018ff0
movzx eax, al
test eax, eax
je 0x18006ea12
mov dword [rsp + 0xf4], 0x80
mov dword [rsp + 0x130], 0x204
jmp 0x18006ea5a
mov eax, dword [rsp + 0x708]
and eax, 0x80000
test eax, eax
je 0x18006ea3f
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe86]
test eax, eax
je 0x18006ea3f
mov dword [rsp + 0xf4], 0x80000
jmp 0x18006ea5a
mov eax, dword [rsp + 0x708]
and eax, 0x100
test eax, eax
je 0x18006ea5a
mov dword [rsp + 0xf4], pe_nt_image_headers64
cmp dword [rsp + 0xf4], 0
je 0x18006ee6d
lea rcx, [rsp + 0x520]
call fcn.18005e380
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x520], rax
mov eax, dword [rsp + 0xf4]
mov dword [rsp + 0x528], eax
mov eax, dword [rsp + 0x708]
mov dword [rsp + 0x52c], eax
mov rax, qword [rsp + 0x718]
mov qword [rsp + 0x530], rax
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x18006eac9
mov rax, qword [rsp + 0x6f0]
mov qword [rsp + 0x2f0], rax
jmp 0x18006eada
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x2f0], rax
mov rax, qword [rsp + 0x2f0]
mov qword [rsp + 0x2c0], rax
mov eax, dword [rsp + 0x130]
mov dword [rsp + 0x53c], eax
mov rax, qword [rsp + 0x2c0]
mov qword [rsp + 0x540], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x548], eax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x4c]
mov dword [rsp + 0x54c], eax
mov byte [rsp + 0x550], 0
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x160], rax
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x54]
mov rcx, qword [rsp + 0x160]
lea rax, [rcx + rax*2]
mov rdx, rax
mov rcx, qword [rsp + 0x160]
call fcn.180017c20
mov dword [rsp + 0x554], eax
mov eax, dword [rsp + 0x554]
mov dword [rsp + 0x230], eax
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x58]
mov rcx, qword [rsp + 0x160]
lea rax, [rcx + rax*2]
mov rdx, rax
mov rcx, qword [rsp + 0x160]
call fcn.180017c20
mov dword [rsp + 0x558], eax
mov eax, dword [rsp + 0x558]
mov dword [rsp + 0x234], eax
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x5c]
mov rcx, qword [rsp + 0x160]
lea rax, [rcx + rax*2]
mov rdx, rax
mov rcx, qword [rsp + 0x160]
call fcn.180017c20
mov dword [rsp + 0x55c], eax
mov eax, dword [rsp + 0x55c]
mov dword [rsp + 0x238], eax
mov rax, qword [rsp + 0x710]
mov qword [rsp + 0x300], rax
lea rcx, [rsp + 0x520]
call qword [rsp + 0x300]
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x18006ec27
mov rax, qword [rsp + 0x6f0]
mov qword [rsp + 0x2b0], rax
jmp 0x18006ec38
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x2b0], rax
mov rax, qword [rsp + 0x2b0]
mov qword [rsp + 0x2c0], rax
movzx eax, byte [rsp + 0x550]
mov byte [rsp + 0x8c], al
mov eax, dword [rsp + 0x230]
cmp dword [rsp + 0x554], eax
jne 0x18006ec73
movzx eax, byte [rsp + 0x8c]
test eax, eax
je 0x18006ecad
movsxd rax, dword [rsp + 0x554]
mov rcx, qword [rsp + 0x540]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x540]
call fcn.180017b40
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x54], eax
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov eax, dword [rsp + 0x234]
cmp dword [rsp + 0x558], eax
jne 0x18006ecc9
movzx eax, byte [rsp + 0x8c]
test eax, eax
je 0x18006ed26
mov eax, dword [rsp + 0x554]
cmp dword [rsp + 0x558], eax
jne 0x18006ecea
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x54]
mov dword [rsp + 0x1c0], eax
jmp 0x18006ed17
movsxd rax, dword [rsp + 0x558]
mov rcx, qword [rsp + 0x540]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x540]
call fcn.180017b40
mov dword [rsp + 0x1c0], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x1c0]
mov dword [rax + 0x58], ecx
mov eax, dword [rsp + 0x238]
cmp dword [rsp + 0x55c], eax
jne 0x18006ed42
movzx eax, byte [rsp + 0x8c]
test eax, eax
je 0x18006ed9f
mov eax, dword [rsp + 0x558]
cmp dword [rsp + 0x55c], eax
jne 0x18006ed63
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x58]
mov dword [rsp + 0x1c4], eax
jmp 0x18006ed90
movsxd rax, dword [rsp + 0x55c]
mov rcx, qword [rsp + 0x540]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x540]
call fcn.180017b40
mov dword [rsp + 0x1c4], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x1c4]
mov dword [rax + 0x5c], ecx
movzx eax, byte [rsp + 0x8c]
test eax, eax
je 0x18006ee6d
mov r8d, dword [rsp + 0x548]
mov rdx, qword [rsp + 0x540]
mov rcx, qword [rsp + 0x58]
call fcn.180070970
nop
mov eax, dword [rsp + 0x148]
cmp dword [rsp + 0x548], eax
jle 0x18006ee21
movzx eax, byte [rsp + 0x91]
test eax, eax
je 0x18006ee21
mov rax, qword [rsp + 0x58]
add rax, 0x18
mov qword [rsp + 0x308], rax
mov eax, dword [rsp + 0x148]
mov ecx, dword [rsp + 0x548]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x58]
add eax, dword [rcx + 0x18]
mov edx, eax
mov rcx, qword [rsp + 0x308]
call fcn.1800301d0
nop
mov qword [rsp + 0x20], 0
xor r9d, r9d
mov r8, qword [rsp + 0x540]
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x18]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x20]
call fcn.180017cb0
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x548]
mov dword [rax + 0x10], ecx
mov rcx, qword [rsp + 0x58]
call fcn.180068eb0
nop
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x18006eeb5
mov rdx, qword [rsp + 0x6f0]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x30]
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
je 0x18006eeb5
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x120], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x98], eax
mov byte [rsp + 0x7b], 1
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x5ab0], ecx
jne 0x18006ef70
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f50], ecx
je 0x18006ef61
call fcn.180018aa0
movzx eax, al
test eax, eax
je 0x18006ef61
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x18006ef61
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x5ac0]
mov qword [rsp + 0x120], rax
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x5ab8]
dec eax
mov dword [rsp + 0x98], eax
mov rdx, qword [rsp + 0x6f0]
mov rax, qword [rsp + 0x70]
mov rcx, qword [rax + 0x5ac0]
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
je 0x18006ef46
mov dword [rsp + 0x1c8], 1
jmp 0x18006ef51
mov dword [rsp + 0x1c8], 0
movzx eax, byte [rsp + 0x7b]
or eax, dword [rsp + 0x1c8]
mov byte [rsp + 0x7b], al
mov rax, qword [rsp + 0x70]
mov dword [rax + 0x5ab0], 0
cmp qword [rsp + 0x120], 0
je 0x18006f09b
movzx eax, byte [rsp + 0x91]
test eax, eax
je 0x18006f069
lea rcx, [rsp + 0x590]
call fcn.18005e380
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x590], rax
mov dword [rsp + 0x598], 0x40000
mov eax, dword [rsp + 0x708]
mov dword [rsp + 0x59c], eax
mov rax, qword [rsp + 0x6f0]
mov qword [rsp + 0x5b0], rax
mov eax, dword [rsp + 0x98]
mov dword [rsp + 0x5b8], eax
mov eax, dword [rsp + 0x98]
inc eax
mov edx, eax
mov ecx, dword [rsp + 0x6f8]
call fcn.180002840
mov dword [rsp + 0x5bc], eax
mov rax, qword [rsp + 0x718]
mov qword [rsp + 0x5a0], rax
mov rax, qword [rsp + 0x710]
mov qword [rsp + 0x310], rax
lea rcx, [rsp + 0x590]
call qword [rsp + 0x310]
mov rax, qword [rsp + 0x5b0]
mov qword [rsp + 0x6f0], rax
mov eax, dword [rsp + 0x5bc]
mov dword [rsp + 0x6f8], eax
mov eax, dword [rsp + 0x6f8]
dec eax
mov edx, eax
mov ecx, dword [rsp + 0x5b8]
call fcn.1800028b0
mov dword [rsp + 0x98], eax
mov eax, dword [rsp + 0x98]
inc eax
mov edx, dword [rsp + 0x6f8]
mov ecx, eax
call fcn.1800028b0
cdqe
mov r8, rax
mov rdx, qword [rsp + 0x120]
mov rcx, qword [rsp + 0x6f0]
call fcn.1800174a0
nop
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f50], ecx
jne 0x18006f0bd
movzx eax, byte [rsp + 0x7a]
test eax, eax
je 0x18006f0bd
call fcn.18000ef20
nop
jmp 0x18006f0dd
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f50], ecx
jne 0x18006f0dd
mov rax, qword [rsp + 0x70]
mov dword [rax + 0x5e54], 1
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x18006f145
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rax + 0x44]
movss dword [rsp + 0x23c], xmm0
movss xmm1, dword [0x180149f90]
mov ecx, 9
call fcn.180014450
mov dword [rsp + 0x240], eax
movss xmm0, dword [rsp + 0x23c]
movss dword [rsp + 0x20], xmm0
mov r9b, 1
mov r8d, dword [rsp + 0x240]
mov rdx, qword [rsp + 0x4f8]
mov rcx, qword [rsp + 0x4f0]
call fcn.180023650
nop
movss xmm0, dword [rsp + 0x4f4]
addss xmm0, dword [rsp + 0x4e4]
movss xmm1, dword [rsp + 0x4f0]
addss xmm1, dword [rsp + 0x4e0]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm1
movss xmm2, dword [rsp + 0x4f4]
movss xmm1, dword [rsp + 0x4f0]
lea rcx, [rsp + 0x628]
call fcn.180005b80
nop
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x18006f1c4
mov rax, qword [rsp + 0xd0]
mov rax, qword [rax + 0x100]
mov qword [rsp + 0x318], rax
lea rax, [rsp + 0x318]
mov qword [rsp + 0x2c8], rax
jmp 0x18006f1f0
mov rax, qword [rsp + 0xe0]
add rax, 0x3c
mov r8, rax
lea rdx, [rsp + 0x4f0]
lea rcx, [rsp + 0x488]
call fcn.180006800
mov qword [rsp + 0x2c8], rax
mov rax, qword [rsp + 0x2c8]
mov qword [rsp + 0x320], rax
mov rax, qword [rsp + 0x320]
mov rax, qword [rax]
mov qword [rsp + 0x5d8], rax
xorps xmm2, xmm2
xorps xmm1, xmm1
lea rcx, [rsp + 0x510]
call fcn.180005a70
mov dword [rsp + 0x2fc], 0x200000
movzx eax, byte [rsp + 0xc3]
test eax, eax
je 0x18006f250
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x2d8], rax
jmp 0x18006f260
mov rax, qword [rsp + 0x6f0]
mov qword [rsp + 0x2d8], rax
mov rax, qword [rsp + 0x2d8]
mov qword [rsp + 0x110], rax
mov qword [rsp + 0x4e8], 0
movzx eax, byte [rsp + 0x78]
test eax, eax
je 0x18006f2b8
mov rax, qword [rsp + 0x6e8]
mov qword [rsp + 0x110], rax
mov rcx, qword [rsp + 0x6e8]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov rcx, qword [rsp + 0x6e8]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x4e8], rax
movzx eax, byte [rsp + 0x68]
test eax, eax
jne 0x18006f2ce
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x18007023f
movzx eax, byte [rsp + 0x78]
test eax, eax
jne 0x18006f2f6
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x10]
mov rcx, qword [rsp + 0x110]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x4e8], rax
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x158], rax
lea rcx, [rsp + 0x5d0]
call fcn.180005ab0
lea rcx, [rsp + 0x620]
call fcn.180005ab0
nop
mov qword [rsp + 0x220], 0
mov qword [rsp + 0x228], 0
mov dword [rsp + 0x100], 0xfffffc18
mov dword [rsp + 0x104], 0xfffffc18
mov dword [rsp + 0x9c], 0
movzx eax, byte [rsp + 0x68]
test eax, eax
je 0x18006f3ae
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x54]
mov rcx, qword [rsp + 0x158]
lea rax, [rcx + rax*2]
mov ecx, 8
imul rcx, rcx, 0
mov qword [rsp + rcx + 0x220], rax
mov eax, 4
imul rax, rax, 0
mov dword [rsp + rax + 0x100], 0xffffffff
mov eax, dword [rsp + 0x9c]
inc eax
mov dword [rsp + 0x9c], eax
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x18006f40f
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.1800028b0
cdqe
mov rcx, qword [rsp + 0x158]
lea rax, [rcx + rax*2]
mov ecx, 8
imul rcx, rcx, 1
mov qword [rsp + rcx + 0x220], rax
mov eax, 4
imul rax, rax, 1
mov dword [rsp + rax + 0x100], 0xffffffff
mov eax, dword [rsp + 0x9c]
inc eax
mov dword [rsp + 0x9c], eax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x18006f425
mov dword [rsp + 0x1cc], 1
jmp 0x18006f430
mov dword [rsp + 0x1cc], 0
mov eax, dword [rsp + 0x1cc]
mov ecx, dword [rsp + 0x9c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x9c], eax
mov dword [rsp + 0xd8], 0
mov rax, qword [rsp + 0x158]
mov qword [rsp + 0x168], rax
jmp 0x18006f47a
mov rax, qword [rsp + 0x168]
add rax, 2
mov qword [rsp + 0x168], rax
mov rax, qword [rsp + 0x168]
movzx eax, word [rax]
test eax, eax
je 0x18006f578
mov rax, qword [rsp + 0x168]
movzx eax, word [rax]
cmp eax, 0xa
jne 0x18006f573
mov eax, dword [rsp + 0xd8]
inc eax
mov dword [rsp + 0xd8], eax
mov eax, 4
imul rax, rax, 0
cmp dword [rsp + rax + 0x100], 0xffffffff
jne 0x18006f512
mov eax, 8
imul rax, rax, 0
mov rax, qword [rsp + rax + 0x220]
cmp qword [rsp + 0x168], rax
jb 0x18006f512
mov eax, 4
imul rax, rax, 0
mov ecx, dword [rsp + 0xd8]
mov dword [rsp + rax + 0x100], ecx
mov eax, dword [rsp + 0x9c]
dec eax
mov dword [rsp + 0x9c], eax
cmp dword [rsp + 0x9c], 0
jg 0x18006f512
jmp 0x18006f578
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0x100], 0xffffffff
jne 0x18006f573
mov eax, 8
imul rax, rax, 1
mov rax, qword [rsp + rax + 0x220]
cmp qword [rsp + 0x168], rax
jb 0x18006f573
mov eax, 4
imul rax, rax, 1
mov ecx, dword [rsp + 0xd8]
mov dword [rsp + rax + 0x100], ecx
mov eax, dword [rsp + 0x9c]
dec eax
mov dword [rsp + 0x9c], eax
cmp dword [rsp + 0x9c], 0
jg 0x18006f573
jmp 0x18006f578
jmp 0x18006f466
mov eax, dword [rsp + 0xd8]
inc eax
mov dword [rsp + 0xd8], eax
mov eax, 4
imul rax, rax, 0
cmp dword [rsp + rax + 0x100], 0xffffffff
jne 0x18006f5b2
mov eax, 4
imul rax, rax, 0
mov ecx, dword [rsp + 0xd8]
mov dword [rsp + rax + 0x100], ecx
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0x100], 0xffffffff
jne 0x18006f5dc
mov eax, 4
imul rax, rax, 1
mov ecx, dword [rsp + 0xd8]
mov dword [rsp + rax + 0x100], ecx
mov eax, 8
imul rax, rax, 0
mov rax, qword [rsp + rax + 0x220]
mov qword [rsp + 0x328], rax
mov eax, 8
imul rax, rax, 0
mov rdx, qword [rsp + 0x158]
mov rcx, qword [rsp + rax + 0x220]
call fcn.1800172a0
mov qword [rsp + 0x330], rax
mov byte [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov r9, qword [rsp + 0x328]
mov r8, qword [rsp + 0x330]
mov rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x490]
call fcn.18006ba30
movss xmm0, dword [rax]
movss dword [rsp + 0x5d0], xmm0
mov eax, 4
imul rax, rax, 0
cvtsi2ss xmm0, dword [rsp + rax + 0x100]
mov rax, qword [rsp + 0x70]
mulss xmm0, dword [rax + 0x3c28]
movss dword [rsp + 0x5d4], xmm0
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0x100], 0
jl 0x18006f74d
mov eax, 8
imul rax, rax, 1
mov rax, qword [rsp + rax + 0x220]
mov qword [rsp + 0x3b8], rax
mov eax, 8
imul rax, rax, 1
mov rdx, qword [rsp + 0x158]
mov rcx, qword [rsp + rax + 0x220]
call fcn.1800172a0
mov qword [rsp + 0x338], rax
mov byte [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov r9, qword [rsp + 0x3b8]
mov r8, qword [rsp + 0x338]
mov rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x420]
call fcn.18006ba30
movss xmm0, dword [rax]
movss dword [rsp + 0x620], xmm0
mov eax, 4
imul rax, rax, 1
cvtsi2ss xmm0, dword [rsp + rax + 0x100]
mov rax, qword [rsp + 0x70]
mulss xmm0, dword [rax + 0x3c28]
movss dword [rsp + 0x624], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x18006f790
cvtsi2ss xmm0, dword [rsp + 0xd8]
mov rax, qword [rsp + 0x70]
mulss xmm0, dword [rax + 0x3c28]
movaps xmm2, xmm0
movss xmm1, dword [rsp + 0x4e0]
lea rcx, [rsp + 0x458]
call fcn.180005a70
mov rax, qword [rax]
mov qword [rsp + 0x510], rax
movzx eax, byte [rsp + 0x68]
test eax, eax
je 0x18006fa25
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe84]
test eax, eax
je 0x18006fa25
mov eax, dword [rsp + 0x708]
and eax, 0x1000
test eax, eax
jne 0x18006f88f
movss xmm0, dword [rsp + 0x4e0]
mulss xmm0, dword [0x180149f58]
movss dword [rsp + 0x1d4], xmm0
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rsp + 0x4e0]
subss xmm0, dword [rax + 0x3c]
movss dword [rsp + 0x1d0], xmm0
mov rax, qword [rsp + 0x58]
movss xmm0, dword [rax + 0x50]
comiss xmm0, dword [rsp + 0x5d0]
jbe 0x18006f843
movss xmm0, dword [rsp + 0x5d0]
subss xmm0, dword [rsp + 0x1d4]
movaps xmm1, xmm0
xorps xmm0, xmm0
call fcn.180002870
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x58]
movss dword [rax + 0x50], xmm0
jmp 0x18006f88d
movss xmm0, dword [rsp + 0x5d0]
subss xmm0, dword [rsp + 0x1d0]
mov rax, qword [rsp + 0x58]
comiss xmm0, dword [rax + 0x50]
jb 0x18006f88d
movss xmm0, dword [rsp + 0x5d0]
subss xmm0, dword [rsp + 0x1d0]
addss xmm0, dword [rsp + 0x1d4]
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x58]
movss dword [rax + 0x50], xmm0
jmp 0x18006f89c
mov rax, qword [rsp + 0x58]
xorps xmm0, xmm0
movss dword [rax + 0x50], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x18006fa19
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rsp + 0x5d4]
subss xmm0, dword [rax + 0x3c28]
movss xmm1, dword [rsp + 0xa0]
comiss xmm1, xmm0
jbe 0x18006f8f9
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rsp + 0x5d4]
subss xmm0, dword [rax + 0x3c28]
movaps xmm1, xmm0
xorps xmm0, xmm0
call fcn.180002870
movss dword [rsp + 0xa0], xmm0
jmp 0x18006f96c
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rax + 0x40]
mulss xmm0, dword [0x180149fa0]
movss xmm1, dword [rsp + 0x4e4]
subss xmm1, xmm0
movaps xmm0, xmm1
movss xmm1, dword [rsp + 0x5d4]
subss xmm1, xmm0
movaps xmm0, xmm1
comiss xmm0, dword [rsp + 0xa0]
jb 0x18006f96c
movss xmm0, dword [rsp + 0x5d4]
subss xmm0, dword [rsp + 0x4e4]
mov rax, qword [rsp + 0xe0]
movss xmm1, dword [rax + 0x40]
mulss xmm1, dword [0x180149fa0]
addss xmm0, xmm1
movss dword [rsp + 0xa0], xmm0
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rax + 0x40]
mulss xmm0, dword [0x180149fa0]
movss xmm1, dword [rsp + 0x514]
addss xmm1, xmm0
movaps xmm0, xmm1
subss xmm0, dword [rsp + 0x4e4]
xorps xmm1, xmm1
call fcn.180002870
movss dword [rsp + 0x244], xmm0
movss xmm2, dword [rsp + 0x244]
xorps xmm1, xmm1
movss xmm0, dword [rsp + 0xa0]
call fcn.180002750
movss dword [rsp + 0xa0], xmm0
mov rax, qword [rsp + 0xd0]
movss xmm0, dword [rax + 0x88]
subss xmm0, dword [rsp + 0xa0]
movss xmm1, dword [rsp + 0x5dc]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x5dc], xmm0
mov rax, qword [rsp + 0xd0]
movss xmm0, dword [rsp + 0xa0]
movss dword [rax + 0x88], xmm0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 0
xorps xmm2, xmm2
mov rax, qword [rsp + 0x58]
movss xmm1, dword [rax + 0x50]
lea rcx, [rsp + 0x608]
call fcn.180005a70
nop
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x18006fe59
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.1800028b0
cdqe
mov rcx, qword [rsp + 0x158]
lea rax, [rcx + rax*2]
mov qword [rsp + 0x340], rax
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.180002840
cdqe
mov rcx, qword [rsp + 0x158]
lea rax, [rcx + rax*2]
mov qword [rsp + 0x288], rax
movzx eax, byte [rsp + 0x68]
test eax, eax
je 0x18006fabf
movss xmm0, dword [0x180149f90]
movss dword [rsp + 0x1d8], xmm0
jmp 0x18006fad0
movss xmm0, dword [0x180149f6c]
movss dword [rsp + 0x1d8], xmm0
movss xmm1, dword [rsp + 0x1d8]
mov ecx, 0xa
call fcn.180014450
mov dword [rsp + 0x254], eax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x18006fb01
xorps xmm0, xmm0
movss dword [rsp + 0x1dc], xmm0
jmp 0x18006fb12
movss xmm0, dword [0x18014a014]
movss dword [rsp + 0x1dc], xmm0
movss xmm0, dword [rsp + 0x1dc]
movss dword [rsp + 0x250], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x18006fb3b
xorps xmm0, xmm0
movss dword [rsp + 0x1e0], xmm0
jmp 0x18006fb4c
movss xmm0, dword [0x180149fa0]
movss dword [rsp + 0x1e0], xmm0
movss xmm0, dword [rsp + 0x1e0]
movss dword [rsp + 0x24c], xmm0
lea r8, [rsp + 0x620]
lea rdx, [rsp + 0x5d8]
lea rcx, [rsp + 0x450]
call fcn.180006800
lea r8, [rsp + 0x608]
mov rdx, rax
lea rcx, [rsp + 0x5e8]
call fcn.1800067b0
nop
mov rax, qword [rsp + 0x340]
mov qword [rsp + 0x500], rax
mov rax, qword [rsp + 0x288]
cmp qword [rsp + 0x500], rax
jae 0x18006fe59
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rsp + 0x634]
addss xmm0, dword [rax + 0x3c28]
movss xmm1, dword [rsp + 0x5ec]
comiss xmm1, xmm0
jbe 0x18006fbe3
jmp 0x18006fe59
movss xmm0, dword [rsp + 0x62c]
comiss xmm0, dword [rsp + 0x5ec]
jbe 0x18006fc41
mov rax, qword [rsp + 0x288]
cmp qword [rsp + 0x500], rax
jae 0x18006fc3c
mov rax, qword [rsp + 0x500]
movzx eax, word [rax]
mov dword [rsp + 0x248], eax
mov rax, qword [rsp + 0x500]
add rax, 2
mov qword [rsp + 0x500], rax
cmp dword [rsp + 0x248], 0xa
jne 0x18006fc3a
jmp 0x18006fc3c
jmp 0x18006fbf6
jmp 0x18006fe1a
mov byte [rsp + 0x30], 1
mov qword [rsp + 0x28], 0
lea rax, [rsp + 0x500]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x288]
mov r8, qword [rsp + 0x500]
mov rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x560]
call fcn.18006ba30
nop
xorps xmm0, xmm0
comiss xmm0, dword [rsp + 0x560]
jb 0x18006fcca
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3c20]
mov qword [rsp + 0x348], rax
mov dx, 0x20
mov rcx, qword [rsp + 0x348]
call fcn.18006ac20
mulss xmm0, dword [0x180149f68]
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
movss dword [rsp + 0x560], xmm0
movss xmm2, dword [rsp + 0x24c]
movss xmm1, dword [rsp + 0x560]
lea rcx, [rsp + 0x448]
call fcn.180005a70
mov r8, rax
lea rdx, [rsp + 0x5e8]
lea rcx, [rsp + 0x440]
call fcn.180006800
mov qword [rsp + 0x350], rax
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rsp + 0x250]
subss xmm0, dword [rax + 0x3c28]
movaps xmm2, xmm0
xorps xmm1, xmm1
lea rcx, [rsp + 0x438]
call fcn.180005a70
mov r8, rax
lea rdx, [rsp + 0x5e8]
lea rcx, [rsp + 0x430]
call fcn.180006800
mov qword [rsp + 0x358], rax
mov r8, qword [rsp + 0x350]
mov rdx, qword [rsp + 0x358]
lea rcx, [rsp + 0x648]
call fcn.1800058e0
nop
lea rdx, [rsp + 0x628]
lea rcx, [rsp + 0x4a0]
call fcn.180005920
lea rdx, [rsp + 0x4a0]
lea rcx, [rsp + 0x648]
call fcn.18000f260
nop
lea rdx, [rsp + 0x628]
lea rcx, [rsp + 0x4b0]
call fcn.180005920
lea rdx, [rsp + 0x4b0]
lea rcx, [rsp + 0x648]
call fcn.180021f30
movzx eax, al
test eax, eax
je 0x18006fe1a
mov rax, qword [rsp + 0xd0]
mov rax, qword [rax + 0x298]
mov qword [rsp + 0x360], rax
mov dword [rsp + 0x28], 0
xorps xmm0, xmm0
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x254]
lea r8, [rsp + 0x650]
lea rdx, [rsp + 0x648]
mov rcx, qword [rsp + 0x360]
call fcn.180034d30
nop
movss xmm0, dword [rsp + 0x5d8]
subss xmm0, dword [rsp + 0x608]
movss dword [rsp + 0x5e8], xmm0
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rsp + 0x5ec]
addss xmm0, dword [rax + 0x3c28]
movss dword [rsp + 0x5ec], xmm0
jmp 0x18006fba4
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x18006fe84
mov rax, qword [rsp + 0x110]
mov rcx, qword [rsp + 0x4e8]
sub rcx, rax
mov rax, rcx
cmp rax, 0x200000
jge 0x18006ffbf
movzx eax, byte [rsp + 0x78]
test eax, eax
je 0x18006fe9a
mov dword [rsp + 0x1e4], 3
jmp 0x18006fea5
mov dword [rsp + 0x1e4], 0
movss xmm1, dword [0x180149f90]
mov ecx, dword [rsp + 0x1e4]
call fcn.180014450
mov dword [rsp + 0x258], eax
mov rax, qword [rsp + 0xd0]
mov rax, qword [rax + 0x298]
mov qword [rsp + 0x380], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x18006feee
mov qword [rsp + 0x2e0], 0
jmp 0x18006fefe
lea rax, [rsp + 0x628]
mov qword [rsp + 0x2e0], rax
mov rax, qword [rsp + 0x4e8]
mov qword [rsp + 0x368], rax
lea r8, [rsp + 0x608]
lea rdx, [rsp + 0x5d8]
lea rcx, [rsp + 0x428]
call fcn.1800067b0
mov qword [rsp + 0x370], rax
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rax + 0x3c28]
movss dword [rsp + 0x25c], xmm0
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3c20]
mov qword [rsp + 0x378], rax
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movss dword [rsp + 0x38], xmm0
mov rax, qword [rsp + 0x368]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x258]
mov dword [rsp + 0x20], eax
mov r9, qword [rsp + 0x370]
movss xmm2, dword [rsp + 0x25c]
mov rdx, qword [rsp + 0x378]
mov rcx, qword [rsp + 0x380]
call fcn.180035000
nop
movzx eax, byte [rsp + 0x68]
test eax, eax
je 0x18007023a
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x80]
movss xmm0, dword [rax + 0xe80]
addss xmm0, dword [rcx + 0x10]
mov rax, qword [rsp + 0x58]
movss dword [rax + 0xe80], xmm0
mov rax, qword [rsp + 0x70]
movzx eax, byte [rax + 0x7b]
test eax, eax
je 0x180070046
mov rax, qword [rsp + 0x58]
xorps xmm0, xmm0
comiss xmm0, dword [rax + 0xe80]
jae 0x180070046
mov rax, qword [rsp + 0x58]
movss xmm0, dword [rax + 0xe80]
movss xmm1, dword [0x18014eec0]
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_fmodf]
movss xmm1, dword [0x180149f88]
comiss xmm1, xmm0
jae 0x180070046
mov dword [rsp + 0x1e8], 0
jmp 0x180070051
mov dword [rsp + 0x1e8], 1
movzx eax, byte [rsp + 0x1e8]
mov byte [rsp + 0xec], al
lea r8, [rsp + 0x5d0]
lea rdx, [rsp + 0x5d8]
lea rcx, [rsp + 0x418]
call fcn.180006800
lea r8, [rsp + 0x608]
mov rdx, rax
lea rcx, [rsp + 0x410]
call fcn.1800067b0
mov rdx, rax
lea rcx, [rsp + 0x508]
call fcn.180016560
nop
movss xmm0, dword [rsp + 0x50c]
subss xmm0, dword [0x18014eec4]
movss xmm1, dword [rsp + 0x508]
addss xmm1, dword [0x180149f90]
mov rax, qword [rsp + 0x70]
movss xmm2, dword [rsp + 0x50c]
subss xmm2, dword [rax + 0x3c28]
addss xmm2, dword [0x180149f68]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm1
movss xmm1, dword [rsp + 0x508]
lea rcx, [rsp + 0x668]
call fcn.180005990
nop
movzx eax, byte [rsp + 0xec]
test eax, eax
je 0x1800701c5
lea rdx, [rsp + 0x628]
lea rcx, [rsp + 0x4c0]
call fcn.180005920
lea rdx, [rsp + 0x4c0]
lea rcx, [rsp + 0x668]
call fcn.180021f30
movzx eax, al
test eax, eax
je 0x1800701c5
mov rax, qword [rsp + 0xd0]
mov rax, qword [rax + 0x298]
mov qword [rsp + 0x398], rax
movss xmm1, dword [0x180149f90]
xor ecx, ecx
call fcn.180014450
mov dword [rsp + 0x260], eax
lea rdx, [rsp + 0x408]
lea rcx, [rsp + 0x668]
call fcn.180014050
mov qword [rsp + 0x388], rax
movss xmm0, dword [0x180149f90]
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x260]
mov r8, qword [rsp + 0x388]
lea rdx, [rsp + 0x668]
mov rcx, qword [rsp + 0x398]
call fcn.180032960
nop
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x18007023a
mov rax, qword [rsp + 0x70]
mov byte [rax + 0x5be0], 1
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rsp + 0x50c]
subss xmm0, dword [rax + 0x3c28]
movss xmm1, dword [rsp + 0x508]
subss xmm1, dword [0x180149f90]
movaps xmm2, xmm0
lea rcx, [rsp + 0x400]
call fcn.180005a70
mov rax, qword [rax]
mov rcx, qword [rsp + 0x70]
mov qword [rcx + 0x5be4], rax
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x70]
movss xmm0, dword [rcx + 0x3c28]
movss dword [rax + 0x5bec], xmm0
jmp 0x18007040a
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x180070294
lea rdx, [rsp + 0x4e8]
mov rcx, qword [rsp + 0x110]
call fcn.18006b970
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x70]
mulss xmm0, dword [rax + 0x3c28]
movaps xmm2, xmm0
movss xmm1, dword [rsp + 0x4e0]
lea rcx, [rsp + 0x3f8]
call fcn.180005a70
mov rax, qword [rax]
mov qword [rsp + 0x510], rax
jmp 0x1800702fb
movzx eax, byte [rsp + 0x78]
test eax, eax
jne 0x1800702cf
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f50], ecx
jne 0x1800702cf
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x10]
mov rcx, qword [rsp + 0x110]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x4e8], rax
jmp 0x1800702fb
movzx eax, byte [rsp + 0x78]
test eax, eax
jne 0x1800702fb
mov rcx, qword [rsp + 0x110]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov rcx, qword [rsp + 0x110]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x4e8], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x180070326
mov rax, qword [rsp + 0x110]
mov rcx, qword [rsp + 0x4e8]
sub rcx, rax
mov rax, rcx
cmp rax, 0x200000
jge 0x18007040a
movzx eax, byte [rsp + 0x78]
test eax, eax
je 0x18007033c
mov dword [rsp + 0x1f4], 3
jmp 0x180070347
mov dword [rsp + 0x1f4], 0
movss xmm1, dword [0x180149f90]
mov ecx, dword [rsp + 0x1f4]
call fcn.180014450
mov dword [rsp + 0x264], eax
mov rax, qword [rsp + 0xd0]
mov rax, qword [rax + 0x298]
mov qword [rsp + 0x3b0], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x180070390
mov qword [rsp + 0x2b8], 0
jmp 0x1800703a0
lea rax, [rsp + 0x628]
mov qword [rsp + 0x2b8], rax
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movss dword [rsp + 0x38], xmm0
mov rax, qword [rsp + 0x4e8]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x264]
mov dword [rsp + 0x20], eax
lea r9, [rsp + 0x5d8]
mov rax, qword [rsp + 0x70]
movss xmm2, dword [rax + 0x3c28]
mov rax, qword [rsp + 0x70]
mov rdx, qword [rax + 0x3c20]
mov rcx, qword [rsp + 0x3b0]
call fcn.180035000
nop
movzx eax, byte [rsp + 0x7e]
test eax, eax
je 0x180070422
movzx eax, byte [rsp + 0x78]
test eax, eax
jne 0x180070422
call fcn.180022190
nop
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x180070514
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rsp + 0x514]
addss xmm0, dword [rax + 0x40]
movaps xmm2, xmm0
movss xmm1, dword [rsp + 0x510]
lea rcx, [rsp + 0x498]
call fcn.180005a70
mov rcx, rax
call fcn.18006a840
nop
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x4770]
mov dword [rsp + 0x268], eax
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x4770]
or eax, 0x401
mov rcx, qword [rsp + 0x70]
mov dword [rcx + 0x4770], eax
call fcn.180010fa0
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x4794]
and eax, 0x80
mov ecx, dword [rsp + 0x680]
or ecx, eax
mov eax, ecx
mov dword [rsp + 0x680], eax
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x268]
mov dword [rax + 0x4770], ecx
call fcn.1800118b0
nop
mov rax, qword [rsp + 0x70]
cmp dword [rax + 0x478c], 0
jne 0x180070514
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
mov dword [rax + 0x478c], ecx
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x67c]
mov dword [rax + 0x4790], ecx
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x680]
mov dword [rax + 0x4794], ecx
mov rax, qword [rsp + 0x70]
movzx eax, byte [rax + 0x5c98]
test eax, eax
je 0x180070567
movzx eax, byte [rsp + 0x7e]
test eax, eax
je 0x180070536
movzx eax, byte [rsp + 0x78]
test eax, eax
je 0x180070567
lea rdx, [0x18014e7fc]
lea rcx, [0x18014e800]
call fcn.18001af80
mov r8, qword [rsp + 0x4e8]
mov rdx, qword [rsp + 0x110]
lea rcx, [rsp + 0x5d8]
call fcn.18001ac60
nop
movss xmm0, dword [rsp + 0x600]
comiss xmm0, dword [0x180149f2c]
jbe 0x180070595
mov r9b, 1
xor r8d, r8d
mov rdx, qword [rsp + 0x6e0]
mov rcx, qword [rsp + 0x638]
call fcn.180024340
nop
movzx eax, byte [rsp + 0x7b]
test eax, eax
je 0x1800705b8
mov eax, dword [rsp + 0x708]
and eax, 0x8000000
test eax, eax
jne 0x1800705b8
mov ecx, dword [rsp + 0x64]
call fcn.18001b290
nop
mov eax, dword [rsp + 0x708]
and eax, 0x20
test eax, eax
je 0x1800705d2
movzx eax, byte [rsp + 0x92]
jmp 0x1800705d7
movzx eax, byte [rsp + 0x7b]
mov rcx, qword [rsp + 0x6b8]
xor rcx, rsp
call fcn.18013d910
add rsp, 0x6c8
pop rdi
pop rsi
ret