Function at 0x14007afc0
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, 0x6f8
call fcn.14001ba80
mov qword [rsp + 0x128], rax
mov rax, qword [rsp + 0x128]
movzx eax, byte [rax + 0xc3]
test eax, eax
je 0x14007b004
xor al, al
jmp 0x14007fd37
cmp qword [rsp + 0x720], 0
je 0x14007b019
cmp dword [rsp + 0x728], 0
jge 0x14007b035
mov r8d, 0x10a0
lea rdx, [0x1401b1e00]
lea rcx, str.buf___0__buf_size___0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
xor eax, eax
mov eax, dword [rsp + 0x738]
and eax, 0x80
test eax, eax
je 0x14007b071
mov eax, dword [rsp + 0x738]
and eax, 0x4000000
test eax, eax
je 0x14007b071
mov r8d, 0x10a1
lea rdx, [0x1401b1e60]
lea rcx, str.___flags__ImGuiInputTextFlags_CallbackHistory____flags__ImGuiInputTextFlags_Multiline__
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
xor eax, eax
mov eax, dword [rsp + 0x738]
and eax, 0x40
test eax, eax
je 0x14007b0ab
mov eax, dword [rsp + 0x738]
and eax, 0x400
test eax, eax
je 0x14007b0ab
mov r8d, 0x10a2
lea rdx, [0x1401b1f80]
lea rcx, str.___flags__ImGuiInputTextFlags_CallbackCompletion____flags__ImGuiInputTextFlags_AllowTabInput__
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
xor eax, eax
mov rax, qword [0x1401ea928]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x68]
add rax, 8
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x68]
add rax, 0x38e8
mov qword [rsp + 0xd8], rax
mov byte [rsp + 0x184], 0
mov eax, dword [rsp + 0x738]
and eax, 0x4000000
test eax, eax
je 0x14007b0fa
mov byte [rsp + 0xbb], 1
jmp 0x14007b102
mov byte [rsp + 0xbb], 0
movzx eax, byte [rsp + 0xbb]
mov byte [rsp + 0x50], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14007b11c
call fcn.14003a880
xor r8d, r8d
mov rdx, qword [rsp + 0x710]
mov rcx, qword [rsp + 0x128]
call fcn.140033850
mov dword [rsp + 0x64], eax
movss xmm0, dword [0x1401c4fa0]
movss dword [rsp + 0x20], xmm0
mov r9b, 1
xor r8d, r8d
mov rdx, qword [rsp + 0x710]
lea rcx, [rsp + 0x2b8]
call fcn.140027f50
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14007b18a
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rax + 0x3d60]
mulss xmm0, dword [0x1401c4c78]
movss dword [rsp + 0x220], xmm0
jmp 0x14007b19c
movss xmm0, dword [rsp + 0x2bc]
movss dword [rsp + 0x220], xmm0
mov rax, qword [rsp + 0xd8]
movss xmm0, dword [rax + 0x40]
mulss xmm0, dword [0x1401c4bf0]
movss xmm1, dword [rsp + 0x220]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x310], xmm0
call fcn.14003a530
movss dword [rsp + 0x3a0], xmm0
mov rax, qword [rsp + 0x730]
mov rax, qword [rax]
mov qword [rsp + 0x548], rax
mov rax, qword [rsp + 0x548]
mov qword [rsp + 0x550], rax
movss xmm3, dword [rsp + 0x310]
movss xmm2, dword [rsp + 0x3a0]
mov rdx, qword [rsp + 0x550]
lea rcx, [rsp + 0x2e0]
call fcn.14003a600
movss xmm0, dword [rsp + 0x2e4]
movss dword [rsp + 0x350], xmm0
movss xmm0, dword [rsp + 0x2b8]
comiss xmm0, dword [0x1401c4a38]
jbe 0x14007b267
mov rax, qword [rsp + 0xd8]
movss xmm0, dword [rax + 0x54]
addss xmm0, dword [rsp + 0x2b8]
movss dword [rsp + 0x224], xmm0
jmp 0x14007b273
xorps xmm0, xmm0
movss dword [rsp + 0x224], xmm0
movss xmm0, dword [rsp + 0x2e0]
addss xmm0, dword [rsp + 0x224]
movss xmm2, dword [rsp + 0x350]
movaps xmm1, xmm0
lea rcx, [rsp + 0x558]
call fcn.140017440
mov rax, qword [rsp + 0x128]
add rax, 0x110
lea r8, [rsp + 0x2e0]
mov rdx, rax
lea rcx, [rsp + 0x628]
call fcn.140017900
mov rcx, qword [rsp + 0x128]
add rcx, 0x110
mov r8, rax
mov rdx, rcx
lea rcx, [rsp + 0x160]
call fcn.140018980
lea r8, [rsp + 0x558]
lea rdx, [rsp + 0x160]
lea rcx, [rsp + 0x630]
call fcn.140017900
mov r8, rax
lea rdx, [rsp + 0x160]
lea rcx, [rsp + 0x418]
call fcn.140018980
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0x108], rax
lea rcx, [rsp + 0x6a0]
call fcn.140019640
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14007b5f9
mov rax, qword [rsp + 0x128]
mov rax, qword [rax + 0x110]
mov qword [rsp + 0x560], rax
mov rax, qword [rsp + 0xd8]
movss xmm1, dword [rax + 0x40]
lea rcx, [rsp + 0x418]
call fcn.14006b640
mov r9d, 0x400
lea r8, [rsp + 0x160]
mov edx, dword [rsp + 0x64]
lea rcx, [rsp + 0x418]
call fcn.140039ad0
movzx eax, al
test eax, eax
jne 0x14007b3b8
call fcn.14003aaa0
xor al, al
jmp 0x14007fd37
lea rax, [rsp + 0x6a0]
mov rcx, qword [rsp + 0x68]
mov rdi, rax
lea rsi, [rcx + 0x49f8]
mov ecx, 0x50
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x128]
mov rcx, qword [rsp + 0x560]
mov qword [rax + 0x110], rcx
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4b80], ecx
jne 0x14007b42f
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x4b8c]
and eax, 8
test eax, eax
je 0x14007b42f
mov eax, dword [rsp + 0x738]
and eax, 0x400
test eax, eax
je 0x14007b42f
mov rax, qword [rsp + 0x68]
mov dword [rax + 0x4b80], 0
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x4b80]
mov dword [rsp + 0x398], eax
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x40a4], ecx
jne 0x14007b461
mov rax, qword [rsp + 0x68]
mov dword [rax + 0x4b80], 0
mov eax, reloc.WS2_32.dll_recv
imul rax, rax, 7
mov rcx, qword [rsp + 0xd8]
lea rax, [rcx + rax + 0xf8]
mov rdx, rax
mov ecx, 3
call fcn.140020a10
mov rax, qword [rsp + 0xd8]
movss xmm1, dword [rax + 0x44]
mov ecx, 7
call fcn.140020bf0
mov rax, qword [rsp + 0xd8]
movss xmm1, dword [rax + 0x48]
mov ecx, 8
call fcn.140020bf0
xorps xmm2, xmm2
xorps xmm1, xmm1
lea rcx, [rsp + 0x638]
call fcn.140017440
mov rdx, rax
mov ecx, 2
call fcn.140020cc0
lea rdx, [rsp + 0x640]
lea rcx, [rsp + 0x160]
call fcn.140018b00
mov dword [rsp + 0x20], 4
mov r9d, 1
mov r8, rax
mov edx, dword [rsp + 0x64]
mov rcx, qword [rsp + 0x710]
call fcn.140028690
mov byte [rsp + 0xe6], al
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x398]
mov dword [rax + 0x4b80], ecx
mov ecx, 3
call fcn.140020d90
mov ecx, 1
call fcn.140020ac0
movzx eax, byte [rsp + 0xe6]
test eax, eax
jne 0x14007b556
call fcn.140028ce0
call fcn.14003aaa0
xor al, al
jmp 0x14007fd37
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x4040]
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0xc8]
mov eax, dword [rax + 0x168]
mov ecx, 1
mov dword [rsp + 0x360], ecx
movzx ecx, al
mov eax, dword [rsp + 0x360]
shl eax, cl
mov rcx, qword [rsp + 0xc8]
movsx ecx, word [rcx + 0x16e]
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0xc8]
mov word [rcx + 0x16e], ax
mov rax, qword [rsp + 0xd8]
add rax, 0x3c
mov rcx, qword [rsp + 0xc8]
add rcx, 0x110
mov rdx, rax
call fcn.140017a40
mov rax, qword [rsp + 0xc8]
movss xmm0, dword [rsp + 0x108]
subss xmm0, dword [rax + 0xb4]
movss dword [rsp + 0x108], xmm0
jmp 0x14007b650
mov rax, qword [rsp + 0xd8]
movss xmm1, dword [rax + 0x40]
lea rcx, [rsp + 0x418]
call fcn.14006b640
mov eax, dword [rsp + 0x738]
and eax, 0x10000000
test eax, eax
jne 0x14007b650
mov r9d, 0x400
lea r8, [rsp + 0x160]
mov edx, dword [rsp + 0x64]
lea rcx, [rsp + 0x418]
call fcn.140039ad0
movzx eax, al
test eax, eax
jne 0x14007b650
xor al, al
jmp 0x14007fd37
mov rax, qword [rsp + 0x68]
mov r8d, dword [rax + 0x49fc]
mov edx, dword [rsp + 0x64]
lea rcx, [rsp + 0x160]
call fcn.140024090
mov byte [rsp + 0x82], al
movzx eax, byte [rsp + 0x82]
test eax, eax
je 0x14007b68f
mov rax, qword [rsp + 0x68]
mov dword [rax + 0x4f08], 1
mov ecx, dword [rsp + 0x64]
call fcn.14006d990
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x49fc]
and eax, 0x80
test eax, eax
je 0x14007b6c3
mov eax, dword [rsp + 0x738]
bts eax, 0xe
mov dword [rsp + 0x738], eax
mov eax, dword [rsp + 0x738]
and eax, 0x4000
test eax, eax
je 0x14007b6dd
mov byte [rsp + 0xbc], 1
jmp 0x14007b6e5
mov byte [rsp + 0xbc], 0
movzx eax, byte [rsp + 0xbc]
mov byte [rsp + 0x60], al
mov eax, dword [rsp + 0x738]
and eax, 0x8000
test eax, eax
je 0x14007b70b
mov byte [rsp + 0xbd], 1
jmp 0x14007b713
mov byte [rsp + 0xbd], 0
movzx eax, byte [rsp + 0xbd]
mov byte [rsp + 0x77], al
mov eax, dword [rsp + 0x738]
and eax, 0x10000
test eax, eax
jne 0x14007b739
mov byte [rsp + 0xbe], 1
jmp 0x14007b741
mov byte [rsp + 0xbe], 0
movzx eax, byte [rsp + 0xbe]
mov byte [rsp + 0xaf], al
mov eax, dword [rsp + 0x738]
and eax, 0x40000
test eax, eax
je 0x14007b76a
mov byte [rsp + 0xbf], 1
jmp 0x14007b772
mov byte [rsp + 0xbf], 0
movzx eax, byte [rsp + 0xbf]
mov byte [rsp + 0x8a], al
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x14007b7b4
cmp qword [rsp + 0x740], 0
jne 0x14007b7b4
mov r8d, 0x10f7
lea rdx, [0x1401b20d0]
lea rcx, [0x1401b10a8]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
xor eax, eax
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x40a4], ecx
je 0x14007b800
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4b80], ecx
jne 0x14007b800
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x4b8c]
and eax, 1
test eax, eax
jne 0x14007b7f6
mov rax, qword [rsp + 0x68]
cmp dword [rax + 0x4bac], 2
jne 0x14007b800
mov byte [rsp + 0xc0], 1
jmp 0x14007b808
mov byte [rsp + 0xc0], 0
movzx eax, byte [rsp + 0xc0]
mov byte [rsp + 0x88], al
movzx eax, byte [rsp + 0x82]
test eax, eax
je 0x14007b847
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, byte [rcx + rax + 0x2b10]
test eax, eax
je 0x14007b847
mov byte [rsp + 0xc1], 1
jmp 0x14007b84f
mov byte [rsp + 0xc1], 0
movzx eax, byte [rsp + 0xc1]
mov byte [rsp + 0x86], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14007b8a6
cmp qword [rsp + 0x58], 0
je 0x14007b8a6
mov rax, qword [rsp + 0x68]
cmp dword [rax + 0x40a4], 0
jne 0x14007b8a6
mov edx, 1
mov rcx, qword [rsp + 0xc8]
call fcn.14006ffe0
mov rcx, qword [rsp + 0x68]
cmp dword [rcx + 0x40d4], eax
jne 0x14007b8a6
mov byte [rsp + 0xc2], 1
jmp 0x14007b8ae
mov byte [rsp + 0xc2], 0
movzx eax, byte [rsp + 0xc2]
mov byte [rsp + 0xe7], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14007b8f7
cmp qword [rsp + 0x58], 0
je 0x14007b8f7
mov edx, 1
mov rcx, qword [rsp + 0xc8]
call fcn.14006ffe0
mov rcx, qword [rsp + 0x68]
cmp dword [rcx + 0x40a4], eax
jne 0x14007b8f7
mov byte [rsp + 0x9c], 1
jmp 0x14007b8ff
mov byte [rsp + 0x9c], 0
movzx eax, byte [rsp + 0x9c]
mov byte [rsp + 0xa3], al
mov byte [rsp + 0x73], 0
mov byte [rsp + 0x75], 0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14007b93c
mov rax, qword [rsp + 0xc8]
movss xmm0, dword [rax + 0x90]
movss dword [rsp + 0x228], xmm0
jmp 0x14007b94d
movss xmm0, dword [0x1401c4f6c]
movss dword [rsp + 0x228], xmm0
movss xmm0, dword [rsp + 0x228]
movss dword [rsp + 0x98], xmm0
cmp qword [rsp + 0x58], 0
je 0x14007b981
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe8c]
test eax, eax
je 0x14007b981
mov byte [rsp + 0x9d], 1
jmp 0x14007b989
mov byte [rsp + 0x9d], 0
movzx eax, byte [rsp + 0x9d]
mov byte [rsp + 0x80], al
cmp qword [rsp + 0x58], 0
je 0x14007b9dd
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x14007b9b6
mov dword [rsp + 0x22c], 1
jmp 0x14007b9c1
mov dword [rsp + 0x22c], 0
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x6b]
cmp eax, dword [rsp + 0x22c]
je 0x14007b9dd
mov byte [rsp + 0x9e], 1
jmp 0x14007b9e5
mov byte [rsp + 0x9e], 0
movzx eax, byte [rsp + 0x9e]
mov byte [rsp + 0xa1], al
movzx eax, byte [rsp + 0x86]
test eax, eax
jne 0x14007ba22
movzx eax, byte [rsp + 0xe7]
test eax, eax
jne 0x14007ba22
movzx eax, byte [rsp + 0x88]
test eax, eax
jne 0x14007ba22
mov byte [rsp + 0x9f], 0
jmp 0x14007ba2a
mov byte [rsp + 0x9f], 1
movzx eax, byte [rsp + 0x9f]
mov byte [rsp + 0x87], al
movzx eax, byte [rsp + 0x87]
test eax, eax
jne 0x14007ba5b
movzx eax, byte [rsp + 0xa3]
test eax, eax
jne 0x14007ba5b
mov byte [rsp + 0xa0], 0
jmp 0x14007ba63
mov byte [rsp + 0xa0], 1
movzx eax, byte [rsp + 0xa0]
mov byte [rsp + 0xa2], al
movzx eax, byte [rsp + 0xa2]
test eax, eax
je 0x14007ba8f
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x40a4], ecx
jne 0x14007baab
movzx eax, byte [rsp + 0xa1]
test eax, eax
jne 0x14007baab
movzx eax, byte [rsp + 0x80]
test eax, eax
je 0x14007be10
mov rax, qword [rsp + 0x68]
add rax, 0x4f18
mov qword [rsp + 0x58], rax
mov rcx, qword [rsp + 0x58]
call fcn.14006d7e0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe8c], 0
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 8]
call fcn.14007aec0
mov rax, qword [rsp + 0x720]
mov qword [rsp + 0x578], rax
mov qword [rsp + 0x2c0], 0xffffffffffffffff
inc qword [rsp + 0x2c0]
mov rax, qword [rsp + 0x578]
mov rcx, qword [rsp + 0x2c0]
cmp byte [rax + rcx], 0
jne 0x14007bafa
mov rax, qword [rsp + 0x2c0]
mov dword [rsp + 0x144], eax
movzx eax, byte [rsp + 0x80]
test eax, eax
jne 0x14007bb7d
mov rax, qword [rsp + 0x58]
add rax, 0x38
mov qword [rsp + 0x438], rax
mov eax, dword [rsp + 0x144]
inc eax
mov edx, eax
mov rcx, qword [rsp + 0x438]
call fcn.140048430
mov eax, dword [rsp + 0x144]
inc eax
cdqe
mov rcx, qword [rsp + 0x58]
mov rdi, qword [rcx + 0x40]
mov rsi, qword [rsp + 0x720]
mov rcx, rax
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 8], ecx
jne 0x14007bbb0
movzx eax, byte [rsp + 0xa1]
test eax, eax
jne 0x14007bbb0
movzx eax, byte [rsp + 0x80]
test eax, eax
jne 0x14007bbb0
mov dword [rsp + 0x230], 1
jmp 0x14007bbbb
mov dword [rsp + 0x230], 0
movzx eax, byte [rsp + 0x230]
mov byte [rsp + 0x81], al
movzx eax, byte [rsp + 0x81]
test eax, eax
je 0x14007bc22
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x144]
cmp dword [rax + 0x10], ecx
jne 0x14007bc1a
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x48]
test eax, eax
je 0x14007bc22
movsxd rax, dword [rsp + 0x144]
mov r8, rax
mov rdx, qword [rsp + 0x720]
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 0x14007bc22
mov byte [rsp + 0x81], 0
mov qword [rsp + 0x3f0], 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 + 0x440], rax
mov eax, dword [rsp + 0x728]
inc eax
mov edx, eax
mov rcx, qword [rsp + 0x440]
call fcn.1400479b0
mov rax, qword [rsp + 0x58]
add rax, 0x28
mov qword [rsp + 0x448], rax
xor edx, edx
mov rcx, qword [rsp + 0x448]
call fcn.140048430
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x48], 0
lea rax, [rsp + 0x3f0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, qword [rsp + 0x720]
mov edx, dword [rsp + 0x728]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x20]
call fcn.14001f6d0
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0x720]
mov rcx, qword [rsp + 0x3f0]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x10], eax
movzx eax, byte [rsp + 0x81]
test eax, eax
je 0x14007bcf7
mov rcx, qword [rsp + 0x58]
call fcn.14006d800
jmp 0x14007bd3d
mov rax, qword [rsp + 0x58]
xorps xmm0, xmm0
movss dword [rax + 0x50], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x14007bd1a
mov dword [rsp + 0x234], 1
jmp 0x14007bd25
mov dword [rsp + 0x234], 0
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov edx, dword [rsp + 0x234]
mov rcx, rax
call fcn.14007a720
movzx eax, byte [rsp + 0x80]
test eax, eax
je 0x14007bd8b
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0xe90]
mov dword [rax + 0x58], ecx
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0xe94]
mov dword [rax + 0x5c], ecx
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x5c]
mov dword [rax + 0x54], ecx
mov rcx, qword [rsp + 0x58]
call fcn.14006d800
jmp 0x14007bdf7
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x14007bdf7
mov eax, dword [rsp + 0x738]
and eax, 0x10
test eax, eax
je 0x14007bda7
mov byte [rsp + 0x75], 1
movzx eax, byte [rsp + 0x88]
test eax, eax
je 0x14007bdd6
movzx eax, byte [rsp + 0x81]
test eax, eax
je 0x14007bdd1
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x4b8c]
and eax, 4
test eax, eax
jne 0x14007bdd6
mov byte [rsp + 0x75], 1
movzx eax, byte [rsp + 0x86]
test eax, eax
je 0x14007bdf7
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x10c]
test eax, eax
je 0x14007bdf7
mov byte [rsp + 0x75], 1
mov eax, dword [rsp + 0x738]
and eax, 0x2000
test eax, eax
je 0x14007be10
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x60], 1
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x51]
mov byte [rsp + 0x72], al
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x40a4], ecx
je 0x14007be9d
movzx eax, byte [rsp + 0x87]
test eax, eax
je 0x14007be9d
cmp qword [rsp + 0x58], 0
je 0x14007be50
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 8], ecx
je 0x14007be6c
mov r8d, 0x114c
lea rdx, [0x1401b2130]
lea rcx, str.state__state__ID__id
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
xor eax, eax
mov rdx, qword [rsp + 0x128]
mov ecx, dword [rsp + 0x64]
call fcn.1400236d0
mov rdx, qword [rsp + 0x128]
mov ecx, dword [rsp + 0x64]
call fcn.14003de80
xor edx, edx
mov rcx, qword [rsp + 0x128]
call fcn.140031f20
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x40a4], ecx
jne 0x14007bfa3
movzx eax, byte [rsp + 0x86]
test eax, eax
je 0x14007becf
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x28f
call fcn.140038a40
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x49b0]
or eax, 3
mov rcx, qword [rsp + 0x68]
mov dword [rcx + 0x49b0], eax
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x14007bf01
mov eax, dword [rsp + 0x738]
and eax, 0x80
test eax, eax
je 0x14007bf1a
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x49b0]
or eax, 0xc
mov rcx, qword [rsp + 0x68]
mov dword [rcx + 0x49b0], eax
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x20d
call fcn.140038a40
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x273
call fcn.140038a40
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x207
call fcn.140038a40
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x208
call fcn.140038a40
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14007bf89
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x205
call fcn.140038a40
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x206
call fcn.140038a40
movzx eax, byte [rsp + 0x72]
test eax, eax
je 0x14007bfa3
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x4000
call fcn.140038a40
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x40a4], ecx
jne 0x14007bfc1
cmp qword [rsp + 0x58], 0
jne 0x14007bfc1
call fcn.1400239f0
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x40a4], ecx
jne 0x14007c009
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, byte [rcx + rax + 0x2b10]
test eax, eax
je 0x14007c009
movzx eax, byte [rsp + 0xa2]
test eax, eax
jne 0x14007c009
movzx eax, byte [rsp + 0x87]
test eax, eax
jne 0x14007c009
mov byte [rsp + 0x73], 1
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x40a4], ecx
je 0x14007c03b
cmp qword [rsp + 0x58], 0
je 0x14007c02e
movzx eax, byte [rsp + 0xa3]
test eax, eax
jne 0x14007c03b
mov dword [rsp + 0x238], 0
jmp 0x14007c046
mov dword [rsp + 0x238], 1
movzx eax, byte [rsp + 0x238]
mov byte [rsp + 0x70], al
cmp qword [rsp + 0x58], 0
je 0x14007c090
mov rcx, qword [rsp + 0x58]
call fcn.14006d870
movzx eax, al
test eax, eax
jne 0x14007c074
movzx eax, byte [rsp + 0x75]
test eax, eax
je 0x14007c090
xor eax, eax
test eax, eax
jne 0x14007c083
movzx eax, byte [rsp + 0x70]
test eax, eax
je 0x14007c090
mov dword [rsp + 0x23c], 1
jmp 0x14007c09b
mov dword [rsp + 0x23c], 0
movzx eax, byte [rsp + 0x23c]
mov byte [rsp + 0x61], al
mov byte [rsp + 0x74], 0
mov byte [rsp + 0x8b], 0
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x14007c19e
cmp qword [rsp + 0x58], 0
je 0x14007c19e
movzx eax, byte [rsp + 0x70]
test eax, eax
jne 0x14007c0e3
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x14007c19e
mov qword [rsp + 0x408], 0
mov rax, qword [rsp + 0x58]
add rax, 0x18
mov qword [rsp + 0x450], rax
mov eax, dword [rsp + 0x728]
inc eax
mov edx, eax
mov rcx, qword [rsp + 0x450]
call fcn.1400479b0
lea rax, [rsp + 0x408]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, qword [rsp + 0x720]
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x18]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x20]
call fcn.14001f6d0
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0x720]
mov rcx, qword [rsp + 0x408]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x10], eax
mov rcx, qword [rsp + 0x58]
call fcn.14006d800
movzx eax, byte [rsp + 0x61]
mov dword [rsp + 0x338], eax
mov rcx, qword [rsp + 0x58]
call fcn.14006d870
movzx eax, al
mov ecx, dword [rsp + 0x338]
and ecx, eax
mov eax, ecx
mov byte [rsp + 0x61], al
movzx eax, byte [rsp + 0x70]
test eax, eax
jne 0x14007c1c1
movzx eax, byte [rsp + 0x61]
test eax, eax
jne 0x14007c1c1
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x40a4], ecx
jne 0x14007c1e9
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14007c1e9
cmp qword [rsp + 0x58], 0
je 0x14007c1e9
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x48]
test eax, eax
je 0x14007c1e9
mov byte [rsp + 0xa4], 1
jmp 0x14007c1f1
mov byte [rsp + 0xa4], 0
movzx eax, byte [rsp + 0xa4]
mov byte [rsp + 0xba], al
cmp qword [rsp + 0x718], 0
je 0x14007c25d
movzx eax, byte [rsp + 0xba]
test eax, eax
je 0x14007c22a
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x3c8], rax
jmp 0x14007c23a
mov rax, qword [rsp + 0x720]
mov qword [rsp + 0x3c8], rax
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x3c8]
movsx eax, byte [rcx + rax]
test eax, eax
jne 0x14007c25d
mov byte [rsp + 0xa5], 1
jmp 0x14007c265
mov byte [rsp + 0xa5], 0
movzx eax, byte [rsp + 0xa5]
mov byte [rsp + 0x71], al
movzx eax, byte [rsp + 0x77]
test eax, eax
je 0x14007c403
movzx eax, byte [rsp + 0x71]
test eax, eax
jne 0x14007c403
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3d58]
mov qword [rsp + 0x458], rax
mov dx, Ordinal_45
mov rcx, qword [rsp + 0x458]
call fcn.1400679f0
mov qword [rsp + 0x3d0], rax
mov rax, qword [rsp + 0x68]
add rax, 0x5dc8
mov qword [rsp + 0x110], rax
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3d58]
mov rcx, qword [rsp + 0x110]
movss xmm0, dword [rax + 0x14]
movss dword [rcx + 0x14], xmm0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3d58]
mov rcx, qword [rsp + 0x110]
movss xmm0, dword [rax + 0x64]
movss dword [rcx + 0x64], xmm0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3d58]
mov rcx, qword [rsp + 0x110]
movss xmm0, dword [rax + 0x68]
movss dword [rcx + 0x68], xmm0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3d58]
mov rcx, qword [rsp + 0x110]
movss xmm0, dword [rax + 0x6c]
movss dword [rcx + 0x6c], xmm0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3d58]
mov rcx, qword [rsp + 0x110]
mov rax, qword [rax + 0x40]
mov qword [rcx + 0x40], rax
mov rax, qword [rsp + 0x110]
mov rcx, qword [rsp + 0x3d0]
mov qword [rax + 0x38], rcx
mov rax, qword [rsp + 0x110]
mov rcx, qword [rsp + 0x3d0]
movss xmm0, dword [rcx + 4]
movss dword [rax + 0x10], xmm0
mov rax, qword [rsp + 0x110]
add rax, 0x28
mov rcx, rax
call fcn.140047f40
movzx eax, al
test eax, eax
je 0x14007c3da
mov rax, qword [rsp + 0x110]
mov rcx, rax
call fcn.140047f40
movzx eax, al
test eax, eax
je 0x14007c3da
mov rax, qword [rsp + 0x110]
add rax, 0x18
mov rcx, rax
call fcn.140047f40
movzx eax, al
test eax, eax
jne 0x14007c3f6
mov r8d, 0x1191
lea rdx, [0x1401b2190]
lea rcx, str.password_font__Glyphs.empty____password_font__IndexAdvanceX.empty____password_font__IndexLookup.empty__
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
xor eax, eax
mov rcx, qword [rsp + 0x110]
call fcn.140032590
mov dword [rsp + 0x174], 0
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x40a4], ecx
jne 0x14007cb48
cmp qword [rsp + 0x58], 0
jne 0x14007c447
mov r8d, 0x1199
lea rdx, [0x1401b2300]
lea rcx, [0x1401a9c58]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
xor eax, eax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x174], eax
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe86], 0
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x728]
mov dword [rax + 0x4c], ecx
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x738]
mov dword [rax + 0xe88], ecx
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, byte [rcx + rax + 0xf8]
test eax, eax
jne 0x14007c4aa
mov dword [rsp + 0x240], 1
jmp 0x14007c4b5
mov dword [rsp + 0x240], 0
mov rax, qword [rsp + 0x68]
movzx ecx, byte [rsp + 0x240]
mov byte [rax + 0x40b1], cl
mov rax, qword [rsp + 0x78]
movss xmm0, dword [rax + 0xf0]
subss xmm0, dword [rsp + 0x160]
mov rax, qword [rsp + 0xd8]
subss xmm0, dword [rax + 0x3c]
mov rax, qword [rsp + 0x58]
addss xmm0, dword [rax + 0x50]
movss dword [rsp + 0x148], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14007c52f
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0xc8]
movss xmm0, dword [rax + 0xf4]
subss xmm0, dword [rcx + 0x114]
movss dword [rsp + 0x244], xmm0
jmp 0x14007c54d
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rax + 0x3d60]
mulss xmm0, dword [0x1401c4b20]
movss dword [rsp + 0x244], xmm0
movss xmm0, dword [rsp + 0x244]
movss dword [rsp + 0x140], xmm0
movzx eax, byte [rsp + 0x75]
test eax, eax
je 0x14007c583
mov rcx, qword [rsp + 0x58]
call fcn.14006d8e0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe85], 1
jmp 0x14007c909
movzx eax, byte [rsp + 0x82]
test eax, eax
je 0x14007c7c6
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, word [rcx + rax + 0x2b1a]
cmp eax, 2
jl 0x14007c7c6
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x10d]
test eax, eax
jne 0x14007c7c6
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x140]
movss xmm2, dword [rsp + 0x148]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.140078080
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, word [rcx + rax + 0x2b1a]
sub eax, 2
mov dword [rsp + 0x318], eax
mov eax, dword [rsp + 0x318]
cdq
and eax, 1
xor eax, edx
sub eax, edx
test eax, eax
jne 0x14007c704
mov rax, qword [rsp + 0x58]
cmp dword [rax + 0x54], 0
je 0x14007c658
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x54]
dec eax
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.140077430
movzx eax, ax
cmp eax, 0xa
je 0x14007c658
mov byte [rsp + 0xa6], 0
jmp 0x14007c660
mov byte [rsp + 0xa6], 1
movzx eax, byte [rsp + 0xa6]
mov byte [rsp + 0xe8], al
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x5c]
cmp dword [rax + 0x58], ecx
jne 0x14007c68d
movzx eax, byte [rsp + 0xe8]
test eax, eax
jne 0x14007c69c
mov edx, 0x20000c
mov rcx, qword [rsp + 0x58]
call fcn.14007a870
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x5c]
cmp dword [rax + 0x58], ecx
jne 0x14007c6bf
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov rcx, rax
call fcn.140078700
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x54]
mov rcx, qword [rsp + 0x58]
call fcn.1400779b0
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.1400783f0
jmp 0x14007c7b7
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x54]
mov rcx, qword [rsp + 0x58]
call fcn.140077430
movzx eax, ax
cmp eax, 0xa
jne 0x14007c728
mov byte [rsp + 0xa7], 1
jmp 0x14007c730
mov byte [rsp + 0xa7], 0
movzx eax, byte [rsp + 0xa7]
mov byte [rsp + 0xe5], al
mov edx, 0x200004
mov rcx, qword [rsp + 0x58]
call fcn.14007a870
mov edx, 0x600005
mov rcx, qword [rsp + 0x58]
call fcn.14007a870
mov edx, 0x600001
mov rcx, qword [rsp + 0x58]
call fcn.14007a870
movzx eax, byte [rsp + 0xe5]
test eax, eax
jne 0x14007c7ab
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14007c7ab
mov rax, qword [rsp + 0x58]
add rax, 0x5c
mov rcx, qword [rsp + 0x58]
add rcx, 0x58
mov rdx, rax
call fcn.1400902b0
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.14006d7e0
jmp 0x14007c909
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, byte [rcx + rax + 0x2b10]
test eax, eax
je 0x14007c871
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe85]
test eax, eax
jne 0x14007c871
movzx eax, byte [rsp + 0x82]
test eax, eax
je 0x14007c86c
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x10d]
test eax, eax
je 0x14007c83a
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x140]
movss xmm2, dword [rsp + 0x148]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.140078110
jmp 0x14007c862
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x140]
movss xmm2, dword [rsp + 0x148]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.140078080
mov rcx, qword [rsp + 0x58]
call fcn.14006d7e0
jmp 0x14007c909
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, byte [rcx + rax + 0xf8]
test eax, eax
je 0x14007c909
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe85]
test eax, eax
jne 0x14007c909
mov rax, qword [rsp + 0x78]
movss xmm0, dword [rax + 0xe0]
ucomiss xmm0, dword [0x1401c4a38]
jp 0x14007c8cb
jne 0x14007c8cb
mov rax, qword [rsp + 0x78]
movss xmm0, dword [rax + 0xe4]
ucomiss xmm0, dword [0x1401c4a38]
jp 0x14007c8cb
je 0x14007c909
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x140]
movss xmm2, dword [rsp + 0x148]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.140078110
mov rcx, qword [rsp + 0x58]
call fcn.14006d7e0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe85]
test eax, eax
je 0x14007c93f
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, byte [rcx + rax + 0xf8]
test eax, eax
jne 0x14007c93f
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe85], 0
mov eax, dword [rsp + 0x738]
and eax, 0x400
test eax, eax
je 0x14007c9ca
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14007c9ca
mov r8d, dword [rsp + 0x64]
mov edx, 1
mov ecx, 0x200
call fcn.140038dd0
movzx eax, al
test eax, eax
je 0x14007c9ca
mov dword [rsp + 0x248], 9
mov byte [rsp + 0x28], 0
mov rax, qword [rsp + 0x748]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x740]
mov r8d, dword [rsp + 0x738]
lea rdx, [rsp + 0x248]
mov rcx, qword [rsp + 0x68]
call fcn.14007a8e0
movzx eax, al
test eax, eax
je 0x14007c9ca
mov edx, dword [rsp + 0x248]
mov rcx, qword [rsp + 0x58]
call fcn.14007a870
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x10c]
test eax, eax
je 0x14007c9ea
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x10e]
test eax, eax
je 0x14007ca0d
movzx eax, byte [rsp + 0x72]
test eax, eax
je 0x14007ca03
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x10c]
test eax, eax
jne 0x14007ca0d
mov byte [rsp + 0xa8], 0
jmp 0x14007ca15
mov byte [rsp + 0xa8], 1
movzx eax, byte [rsp + 0xa8]
mov byte [rsp + 0xea], al
mov rax, qword [rsp + 0x78]
cmp dword [rax + 0x2b88], 0
jle 0x14007cb48
movzx eax, byte [rsp + 0xea]
test eax, eax
jne 0x14007cb26
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14007cb26
movzx eax, byte [rsp + 0x88]
test eax, eax
jne 0x14007cb26
mov dword [rsp + 0x14c], 0
jmp 0x14007ca80
mov eax, dword [rsp + 0x14c]
inc eax
mov dword [rsp + 0x14c], eax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x2b88]
cmp dword [rsp + 0x14c], eax
jge 0x14007cb26
mov rax, qword [rsp + 0x78]
add rax, 0x2b88
mov qword [rsp + 0x460], rax
mov edx, dword [rsp + 0x14c]
mov rcx, qword [rsp + 0x460]
call fcn.140049d50
movzx eax, word [rax]
mov dword [rsp + 0x180], eax
cmp dword [rsp + 0x180], 9
jne 0x14007cad5
jmp 0x14007ca70
mov byte [rsp + 0x28], 0
mov rax, qword [rsp + 0x748]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x740]
mov r8d, dword [rsp + 0x738]
lea rdx, [rsp + 0x180]
mov rcx, qword [rsp + 0x68]
call fcn.14007a8e0
movzx eax, al
test eax, eax
je 0x14007cb21
mov edx, dword [rsp + 0x180]
mov rcx, qword [rsp + 0x58]
call fcn.14007a870
jmp 0x14007ca70
mov rax, qword [rsp + 0x78]
add rax, 0x2b88
mov qword [rsp + 0x468], rax
xor edx, edx
mov rcx, qword [rsp + 0x468]
call fcn.1400479b0
mov byte [rsp + 0x76], 0
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x40a4], ecx
jne 0x14007db74
mov rax, qword [rsp + 0x68]
movzx eax, byte [rax + 0x40b0]
test eax, eax
jne 0x14007db74
movzx eax, byte [rsp + 0x73]
test eax, eax
jne 0x14007db74
cmp qword [rsp + 0x58], 0
jne 0x14007cba7
mov r8d, 0x120e
lea rdx, [0x1401b2360]
lea rcx, [0x1401a9d28]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
xor eax, eax
mov rax, qword [rsp + 0xd8]
movss xmm0, dword [rsp + 0x10c]
subss xmm0, dword [rax + 0x40]
mov rax, qword [rsp + 0x68]
divss xmm0, dword [rax + 0x3d60]
cvttss2si eax, xmm0
mov edx, 1
mov ecx, eax
call fcn.14004a940
mov dword [rsp + 0x170], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x170]
mov dword [rax + 0x64], ecx
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x10d]
test eax, eax
je 0x14007cc0d
mov dword [rsp + 0x24c], 0x400000
jmp 0x14007cc18
mov dword [rsp + 0x24c], 0
mov eax, dword [rsp + 0x24c]
mov dword [rsp + 0x90], eax
movzx eax, byte [rsp + 0x72]
test eax, eax
je 0x14007cc44
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x10e]
mov byte [rsp + 0xa9], al
jmp 0x14007cc57
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x10c]
mov byte [rsp + 0xa9], al
movzx eax, byte [rsp + 0xa9]
mov byte [rsp + 0x84], al
movzx eax, byte [rsp + 0x72]
test eax, eax
je 0x14007cca9
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x10c]
test eax, eax
je 0x14007cca9
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x10f]
test eax, eax
jne 0x14007cca9
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x10e]
test eax, eax
jne 0x14007cca9
mov byte [rsp + 0xaa], 1
jmp 0x14007ccb1
mov byte [rsp + 0xaa], 0
movzx eax, byte [rsp + 0xaa]
mov byte [rsp + 0x83], al
mov dword [rsp + 0x540], 1
mov r8d, dword [rsp + 0x64]
mov edx, 1
mov ecx, 0x1239
call fcn.140038dd0
movzx eax, al
test eax, eax
jne 0x14007cd01
mov r8d, dword [rsp + 0x64]
mov edx, 1
mov ecx, 0x220a
call fcn.140038dd0
movzx eax, al
test eax, eax
je 0x14007cd37
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14007cd37
movzx eax, byte [rsp + 0x77]
test eax, eax
jne 0x14007cd37
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14007cd2d
mov rcx, qword [rsp + 0x58]
call fcn.14006d870
movzx eax, al
test eax, eax
je 0x14007cd37
mov byte [rsp + 0xab], 1
jmp 0x14007cd3f
mov byte [rsp + 0xab], 0
movzx eax, byte [rsp + 0xab]
mov byte [rsp + 0x89], al
mov r8d, dword [rsp + 0x64]
xor edx, edx
mov ecx, 0x1224
call fcn.140038dd0
movzx eax, al
test eax, eax
jne 0x14007cd7e
mov r8d, dword [rsp + 0x64]
xor edx, edx
mov ecx, 0x1209
call fcn.140038dd0
movzx eax, al
test eax, eax
je 0x14007cdab
movzx eax, byte [rsp + 0x77]
test eax, eax
jne 0x14007cdab
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14007cda1
mov rcx, qword [rsp + 0x58]
call fcn.14006d870
movzx eax, al
test eax, eax
je 0x14007cdab
mov byte [rsp + 0xac], 1
jmp 0x14007cdb3
mov byte [rsp + 0xac], 0
movzx eax, byte [rsp + 0xac]
mov byte [rsp + 0xe1], al
mov r8d, dword [rsp + 0x64]
mov edx, 1
mov ecx, 0x1237
call fcn.140038dd0
movzx eax, al
test eax, eax
jne 0x14007cdf8
mov r8d, dword [rsp + 0x64]
mov edx, 1
mov ecx, 0x2209
call fcn.140038dd0
movzx eax, al
test eax, eax
je 0x14007ce0b
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14007ce0b
mov byte [rsp + 0xad], 1
jmp 0x14007ce13
mov byte [rsp + 0xad], 0
movzx eax, byte [rsp + 0xad]
mov byte [rsp + 0xe2], al
mov r8d, dword [rsp + 0x64]
mov edx, 1
mov ecx, 0x123b
call fcn.140038dd0
movzx eax, al
test eax, eax
je 0x14007ce5c
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14007ce5c
movzx eax, byte [rsp + 0xaf]
test eax, eax
je 0x14007ce5c
mov byte [rsp + 0xae], 1
jmp 0x14007ce64
mov byte [rsp + 0xae], 0
movzx eax, byte [rsp + 0xae]
mov byte [rsp + 0xb8], al
mov r8d, dword [rsp + 0x64]
mov edx, 1
mov ecx, 0x123a
call fcn.140038dd0
movzx eax, al
test eax, eax
jne 0x14007ceb2
movzx eax, byte [rsp + 0x72]
test eax, eax
je 0x14007ced1
mov r8d, dword [rsp + 0x64]
mov edx, 1
mov ecx, 0x323b
call fcn.140038dd0
movzx eax, al
test eax, eax
je 0x14007ced1
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14007ced1
movzx eax, byte [rsp + 0xaf]
test eax, eax
je 0x14007ced1
mov byte [rsp + 0xb0], 1
jmp 0x14007ced9
mov byte [rsp + 0xb0], 0
movzx eax, byte [rsp + 0xb0]
mov byte [rsp + 0xf1], al
mov r8d, dword [rsp + 0x64]
xor edx, edx
mov ecx, 0x1222
call fcn.140038dd0
mov byte [rsp + 0xe0], al
mov rax, qword [rsp + 0x78]
mov eax, dword [rax]
and eax, 2
test eax, eax
je 0x14007cf27
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 4]
and eax, 1
test eax, eax
je 0x14007cf27
mov byte [rsp + 0xb1], 1
jmp 0x14007cf2f
mov byte [rsp + 0xb1], 0
movzx eax, byte [rsp + 0xb1]
mov byte [rsp + 0xb4], al
mov dl, 1
mov ecx, 0x20d
call fcn.140034d50
movzx eax, al
test eax, eax
jne 0x14007cf6e
mov dl, 1
mov ecx, 0x273
call fcn.140034d50
movzx eax, al
test eax, eax
jne 0x14007cf6e
mov byte [rsp + 0xb2], 0
jmp 0x14007cf76
mov byte [rsp + 0xb2], 1
movzx eax, byte [rsp + 0xb2]
mov byte [rsp + 0xe9], al
movzx eax, byte [rsp + 0xb4]
test eax, eax
je 0x14007cfc1
xor edx, edx
mov ecx, 0x27c
call fcn.140034d50
movzx eax, al
test eax, eax
jne 0x14007cfb7
xor edx, edx
mov ecx, 0x27b
call fcn.140034d50
movzx eax, al
test eax, eax
je 0x14007cfc1
mov byte [rsp + 0xb3], 1
jmp 0x14007cfc9
mov byte [rsp + 0xb3], 0
movzx eax, byte [rsp + 0xb3]
mov byte [rsp + 0xb6], al
mov r8d, dword [rsp + 0x64]
mov edx, 1
mov ecx, 0x20e
call fcn.140038dd0
movzx eax, al
test eax, eax
jne 0x14007d024
movzx eax, byte [rsp + 0xb4]
test eax, eax
je 0x14007d01a
mov r8d, dword [rsp + 0x64]
mov edx, 1
mov ecx, 0x27a
call fcn.140038dd0
movzx eax, al
test eax, eax
jne 0x14007d024
mov byte [rsp + 0xb5], 0
jmp 0x14007d02c
mov byte [rsp + 0xb5], 1
movzx eax, byte [rsp + 0xb5]
mov byte [rsp + 0xf0], al
mov dl, 1
mov ecx, 0x201
call fcn.140034d50
movzx eax, al
test eax, eax
je 0x14007d0bc
movzx eax, byte [rsp + 0x83]
test eax, eax
je 0x14007d067
mov dword [rsp + 0x250], 0x200004
jmp 0x14007d099
movzx eax, byte [rsp + 0x84]
test eax, eax
je 0x14007d080
mov dword [rsp + 0x21c], 0x20000c
jmp 0x14007d08b
mov dword [rsp + 0x21c], 0x200000
mov eax, dword [rsp + 0x21c]
mov dword [rsp + 0x250], eax
mov eax, dword [rsp + 0x90]
mov ecx, dword [rsp + 0x250]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14007a870
jmp 0x14007db2c
mov dl, 1
mov ecx, 0x202
call fcn.140034d50
movzx eax, al
test eax, eax
je 0x14007d13d
movzx eax, byte [rsp + 0x83]
test eax, eax
je 0x14007d0e8
mov dword [rsp + 0x1b0], 0x200005
jmp 0x14007d11a
movzx eax, byte [rsp + 0x84]
test eax, eax
je 0x14007d101
mov dword [rsp + 0x260], 0x20000d
jmp 0x14007d10c
mov dword [rsp + 0x260], 0x200001
mov eax, dword [rsp + 0x260]
mov dword [rsp + 0x1b0], eax
mov eax, dword [rsp + 0x90]
mov ecx, dword [rsp + 0x1b0]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14007a870
jmp 0x14007db2c
mov dl, 1
mov ecx, 0x203
call fcn.140034d50
movzx eax, al
test eax, eax
je 0x14007d1ef
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14007d1ef
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x10c]
test eax, eax
je 0x14007d1a8
mov rax, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0x68]
movss xmm0, dword [rax + 0x90]
subss xmm0, dword [rcx + 0x3d60]
xorps xmm1, xmm1
call fcn.14004a810
movaps xmm1, xmm0
mov rcx, qword [rsp + 0xc8]
call fcn.14003bc30
jmp 0x14007d1ea
movzx eax, byte [rsp + 0x83]
test eax, eax
je 0x14007d1c1
mov dword [rsp + 0x1b4], 0x200006
jmp 0x14007d1cc
mov dword [rsp + 0x1b4], 0x200002
mov eax, dword [rsp + 0x90]
mov ecx, dword [rsp + 0x1b4]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14007a870
jmp 0x14007db2c
mov dl, 1
mov ecx, 0x204
call fcn.140034d50
movzx eax, al
test eax, eax
je 0x14007d2c7
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14007d2c7
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x10c]
test eax, eax
je 0x14007d280
call fcn.14003bbc0
movss dword [rsp + 0x31c], xmm0
mov rax, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0x68]
movss xmm0, dword [rax + 0x90]
addss xmm0, dword [rcx + 0x3d60]
movss dword [rsp + 0x320], xmm0
movss xmm1, dword [rsp + 0x31c]
movss xmm0, dword [rsp + 0x320]
call fcn.14004a7d0
movaps xmm1, xmm0
mov rcx, qword [rsp + 0xc8]
call fcn.14003bc30
jmp 0x14007d2c2
movzx eax, byte [rsp + 0x83]
test eax, eax
je 0x14007d299
mov dword [rsp + 0x1b8], 0x200007
jmp 0x14007d2a4
mov dword [rsp + 0x1b8], 0x200003
mov eax, dword [rsp + 0x90]
mov ecx, dword [rsp + 0x1b8]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14007a870
jmp 0x14007db2c
mov dl, 1
mov ecx, 0x205
call fcn.140034d50
movzx eax, al
test eax, eax
je 0x14007d32f
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14007d32f
mov eax, dword [rsp + 0x90]
or eax, 0x20000e
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14007a870
cvtsi2ss xmm0, dword [rsp + 0x170]
mov rax, qword [rsp + 0x68]
mulss xmm0, dword [rax + 0x3d60]
movss xmm1, dword [rsp + 0x98]
subss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x98], xmm0
jmp 0x14007db2c
mov dl, 1
mov ecx, 0x206
call fcn.140034d50
movzx eax, al
test eax, eax
je 0x14007d397
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14007d397
mov eax, dword [rsp + 0x90]
or eax, 0x20000f
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14007a870
cvtsi2ss xmm0, dword [rsp + 0x170]
mov rax, qword [rsp + 0x68]
mulss xmm0, dword [rax + 0x3d60]
movss xmm1, dword [rsp + 0x98]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x98], xmm0
jmp 0x14007db2c
mov dl, 1
mov ecx, 0x207
call fcn.140034d50
movzx eax, al
test eax, eax
je 0x14007d3f8
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x10c]
test eax, eax
je 0x14007d3cf
mov eax, dword [rsp + 0x90]
or eax, 0x200006
mov dword [rsp + 0x1bc], eax
jmp 0x14007d3e2
mov eax, dword [rsp + 0x90]
or eax, 0x200004
mov dword [rsp + 0x1bc], eax
mov edx, dword [rsp + 0x1bc]
mov rcx, qword [rsp + 0x58]
call fcn.14007a870
jmp 0x14007db2c
mov dl, 1
mov ecx, 0x208
call fcn.140034d50
movzx eax, al
test eax, eax
je 0x14007d459
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x10c]
test eax, eax
je 0x14007d430
mov eax, dword [rsp + 0x90]
or eax, 0x200007
mov dword [rsp + 0x1c0], eax
jmp 0x14007d443
mov eax, dword [rsp + 0x90]
or eax, 0x200005
mov dword [rsp + 0x1c0], eax
mov edx, dword [rsp + 0x1c0]
mov rcx, qword [rsp + 0x58]
call fcn.14007a870
jmp 0x14007db2c
mov dl, 1
mov ecx, 0x20a
call fcn.140034d50
movzx eax, al
test eax, eax
je 0x14007d4ca
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14007d4ca
movzx eax, byte [rsp + 0x89]
test eax, eax
jne 0x14007d4ca
mov rcx, qword [rsp + 0x58]
call fcn.14006d870
movzx eax, al
test eax, eax
jne 0x14007d4ad
movzx eax, byte [rsp + 0x84]
test eax, eax
je 0x14007d4ad
mov edx, 0x60000d
mov rcx, qword [rsp + 0x58]
call fcn.14007a870
mov eax, dword [rsp + 0x90]
or eax, 0x200008
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14007a870
jmp 0x14007db2c
mov dl, 1
mov ecx, 0x20b
call fcn.140034d50
movzx eax, al
test eax, eax
je 0x14007d581
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14007d581
mov rcx, qword [rsp + 0x58]
call fcn.14006d870
movzx eax, al
test eax, eax
jne 0x14007d564
movzx eax, byte [rsp + 0x84]
test eax, eax
je 0x14007d51c
mov edx, 0x60000c
mov rcx, qword [rsp + 0x58]
call fcn.14007a870
jmp 0x14007d564
movzx eax, byte [rsp + 0x72]
test eax, eax
je 0x14007d564
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x10c]
test eax, eax
je 0x14007d564
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x10e]
test eax, eax
jne 0x14007d564
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x10f]
test eax, eax
jne 0x14007d564
mov edx, 0x600004
mov rcx, qword [rsp + 0x58]
call fcn.14007a870
mov eax, dword [rsp + 0x90]
or eax, 0x200009
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14007a870
jmp 0x14007db2c
movzx eax, byte [rsp + 0xe9]
test eax, eax
jne 0x14007d59d
movzx eax, byte [rsp + 0xb6]
test eax, eax
je 0x14007d6b7
mov eax, dword [rsp + 0x738]
and eax, 0x800
test eax, eax
je 0x14007d5ba
mov dword [rsp + 0x1c4], 1
jmp 0x14007d5c5
mov dword [rsp + 0x1c4], 0
movzx eax, byte [rsp + 0x1c4]
mov byte [rsp + 0xb7], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14007d621
movzx eax, byte [rsp + 0xb6]
test eax, eax
jne 0x14007d621
movzx eax, byte [rsp + 0xb7]
test eax, eax
je 0x14007d605
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x10c]
test eax, eax
je 0x14007d621
movzx eax, byte [rsp + 0xb7]
test eax, eax
jne 0x14007d652
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x10c]
test eax, eax
je 0x14007d652
mov byte [rsp + 0x8b], 1
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x54]
test eax, eax
je 0x14007d64b
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x14007d64b
mov rcx, qword [rsp + 0x58]
call fcn.14006d8e0
jmp 0x14007d650
mov byte [rsp + 0x73], 1
jmp 0x14007d6b2
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14007d6b2
mov dword [rsp + 0x1c8], 0xa
mov byte [rsp + 0x28], 0
mov rax, qword [rsp + 0x748]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x740]
mov r8d, dword [rsp + 0x738]
lea rdx, [rsp + 0x1c8]
mov rcx, qword [rsp + 0x68]
call fcn.14007a8e0
movzx eax, al
test eax, eax
je 0x14007d6b2
mov edx, dword [rsp + 0x1c8]
mov rcx, qword [rsp + 0x58]
call fcn.14007a870
jmp 0x14007db2c
movzx eax, byte [rsp + 0xf0]
test eax, eax
je 0x14007d729
mov eax, dword [rsp + 0x738]
and eax, 0x100000
test eax, eax
je 0x14007d708
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x720]
movsx eax, byte [rcx + rax]
test eax, eax
je 0x14007d6f3
mov byte [rsp + 0x76], 1
jmp 0x14007d706
mov byte [rsp + 0x61], 0
movzx eax, byte [rsp + 0x61]
mov byte [rsp + 0x70], al
mov byte [rsp + 0x73], 1
jmp 0x14007d724
mov byte [rsp + 0x76], 1
movzx eax, byte [rsp + 0x76]
mov byte [rsp + 0x73], al
mov byte [rsp + 0x61], 0
movzx eax, byte [rsp + 0x61]
mov byte [rsp + 0x70], al
jmp 0x14007db2c
movzx eax, byte [rsp + 0xb8]
test eax, eax
jne 0x14007d741
movzx eax, byte [rsp + 0xf1]
test eax, eax
je 0x14007d785
movzx eax, byte [rsp + 0xb8]
test eax, eax
je 0x14007d75a
mov dword [rsp + 0x1cc], 0x20000a
jmp 0x14007d765
mov dword [rsp + 0x1cc], 0x20000b
mov edx, dword [rsp + 0x1cc]
mov rcx, qword [rsp + 0x58]
call fcn.14007a870
mov rcx, qword [rsp + 0x58]
call fcn.14006d8b0
jmp 0x14007db2c
movzx eax, byte [rsp + 0xe0]
test eax, eax
je 0x14007d7ac
mov rcx, qword [rsp + 0x58]
call fcn.14006d8e0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
jmp 0x14007db2c
movzx eax, byte [rsp + 0x89]
test eax, eax
jne 0x14007d7c8
movzx eax, byte [rsp + 0xe1]
test eax, eax
je 0x14007d96e
mov rax, qword [rsp + 0x78]
cmp qword [rax + 0xa8], 0
je 0x14007d920
mov rcx, qword [rsp + 0x58]
call fcn.14006d870
movzx eax, al
test eax, eax
je 0x14007d80a
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.14004a850
mov dword [rsp + 0x1d0], eax
jmp 0x14007d815
mov dword [rsp + 0x1d0], 0
mov eax, dword [rsp + 0x1d0]
mov dword [rsp + 0x1dc], eax
mov rcx, qword [rsp + 0x58]
call fcn.14006d870
movzx eax, al
test eax, eax
je 0x14007d852
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.14004a940
mov dword [rsp + 0x1d4], eax
jmp 0x14007d861
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0xc]
mov dword [rsp + 0x1d4], eax
mov eax, dword [rsp + 0x1d4]
mov dword [rsp + 0x1d8], eax
movsxd rax, dword [rsp + 0x1d8]
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x20]
lea rax, [rcx + rax*2]
movsxd rcx, dword [rsp + 0x1dc]
mov rdx, qword [rsp + 0x58]
mov rdx, qword [rdx + 0x20]
lea rcx, [rdx + rcx*2]
mov rdx, rax
call fcn.14001fb40
inc eax
mov dword [rsp + 0x1e0], eax
movsxd rax, dword [rsp + 0x1e0]
mov rcx, rax
call fcn.140024570
mov qword [rsp + 0x368], rax
movsxd rax, dword [rsp + 0x1d8]
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x20]
lea rax, [rcx + rax*2]
movsxd rcx, dword [rsp + 0x1dc]
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 + 0x1e0]
mov rcx, qword [rsp + 0x368]
call fcn.14001fa30
mov rcx, qword [rsp + 0x368]
call fcn.1400247a0
mov rcx, qword [rsp + 0x368]
call fcn.1400245e0
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x14007d969
mov rcx, qword [rsp + 0x58]
call fcn.14006d870
movzx eax, al
test eax, eax
jne 0x14007d947
mov rcx, qword [rsp + 0x58]
call fcn.14006d8e0
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.140078750
jmp 0x14007db2c
movzx eax, byte [rsp + 0xe2]
test eax, eax
je 0x14007db2c
call fcn.140024740
mov qword [rsp + 0x370], rax
cmp qword [rsp + 0x370], 0
je 0x14007db2c
mov rax, qword [rsp + 0x370]
mov qword [rsp + 0x470], rax
mov qword [rsp + 0x2d8], 0xffffffffffffffff
inc qword [rsp + 0x2d8]
mov rax, qword [rsp + 0x470]
mov rcx, qword [rsp + 0x2d8]
cmp byte [rax + rcx], 0
jne 0x14007d9b6
mov rax, qword [rsp + 0x2d8]
mov dword [rsp + 0x324], eax
mov eax, dword [rsp + 0x324]
inc eax
cdqe
shl rax, 1
mov rcx, rax
call fcn.140024570
mov qword [rsp + 0x2b0], rax
mov dword [rsp + 0x100], 0
mov rax, qword [rsp + 0x370]
mov qword [rsp + 0x2d0], rax
mov rax, qword [rsp + 0x2d0]
movsx eax, byte [rax]
test eax, eax
je 0x14007dacd
xor r8d, r8d
mov rdx, qword [rsp + 0x2d0]
lea rcx, [rsp + 0x1e4]
call fcn.14001f240
cdqe
mov rcx, qword [rsp + 0x2d0]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x2d0], rax
mov byte [rsp + 0x28], 1
mov rax, qword [rsp + 0x748]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x740]
mov r8d, dword [rsp + 0x738]
lea rdx, [rsp + 0x1e4]
mov rcx, qword [rsp + 0x68]
call fcn.14007a8e0
movzx eax, al
test eax, eax
jne 0x14007da9c
jmp 0x14007da1c
movsxd rax, dword [rsp + 0x100]
mov rcx, qword [rsp + 0x2b0]
movzx edx, word [rsp + 0x1e4]
mov word [rcx + rax*2], dx
mov eax, dword [rsp + 0x100]
inc eax
mov dword [rsp + 0x100], eax
jmp 0x14007da1c
movsxd rax, dword [rsp + 0x100]
xor ecx, ecx
mov rdx, qword [rsp + 0x2b0]
mov word [rdx + rax*2], cx
cmp dword [rsp + 0x100], 0
jle 0x14007db1f
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov r9d, dword [rsp + 0x100]
mov r8, qword [rsp + 0x2b0]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.14007a740
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov rcx, qword [rsp + 0x2b0]
call fcn.1400245e0
mov rcx, qword [rsp + 0x58]
call fcn.14006d870
movzx eax, al
test eax, eax
je 0x14007db59
xor eax, eax
test eax, eax
jne 0x14007db4c
movzx eax, byte [rsp + 0x70]
test eax, eax
je 0x14007db59
mov dword [rsp + 0x1e8], 1
jmp 0x14007db64
mov dword [rsp + 0x1e8], 0
movzx eax, byte [rsp + 0x61]
or eax, dword [rsp + 0x1e8]
mov byte [rsp + 0x61], al
mov qword [rsp + 0x130], 0
mov dword [rsp + 0x8c], 0
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x40a4], ecx
jne 0x14007e536
cmp qword [rsp + 0x58], 0
jne 0x14007dbc4
mov r8d, 0x12af
lea rdx, [0x1401b23c0]
lea rcx, [0x1401a9d98]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
xor eax, eax
movzx eax, byte [rsp + 0x76]
test eax, eax
je 0x14007ddab
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14007ddab
mov eax, dword [rsp + 0x738]
and eax, 0x100000
test eax, eax
je 0x14007dc68
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x720]
movsx eax, byte [rcx + rax]
test eax, eax
jne 0x14007dc23
mov r8d, 0x12b5
lea rdx, [0x1401b2420]
lea rcx, str.buf_0____0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
xor eax, eax
lea rax, [0x14017c5d2]
mov qword [rsp + 0x130], rax
mov dword [rsp + 0x8c], 0
mov byte [rsp + 0x74], 1
mov rax, qword [rsp + 0x58]
add rax, 0x54
xor r9d, r9d
lea r8, [rsp + 0x314]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.14007a780
jmp 0x14007ddab
mov rax, qword [rsp + 0x720]
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x40]
sub rcx, rax
movzx edx, byte [rax]
cmp dl, byte [rax + rcx]
jne 0x14007dc8f
inc rax
test dl, dl
jne 0x14007dc7c
xor eax, eax
jmp 0x14007dc94
sbb eax, eax
or eax, 1
test eax, eax
je 0x14007ddab
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x40]
mov qword [rsp + 0x130], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x38]
dec eax
mov dword [rsp + 0x8c], eax
mov byte [rsp + 0x74], 1
lea rcx, [rsp + 0x3b8]
call fcn.140047a30
nop
cmp dword [rsp + 0x8c], 0
jle 0x14007dd50
movsxd rax, dword [rsp + 0x8c]
mov rcx, qword [rsp + 0x130]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x130]
call fcn.14001f7b0
inc eax
mov edx, eax
lea rcx, [rsp + 0x3b8]
call fcn.1400479b0
movsxd rax, dword [rsp + 0x8c]
mov rcx, qword [rsp + 0x130]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x20], 0
mov r9, rax
mov r8, qword [rsp + 0x130]
mov edx, dword [rsp + 0x3b8]
mov rcx, qword [rsp + 0x3c0]
call fcn.14001f6d0
cmp dword [rsp + 0x8c], 0
jle 0x14007dd6c
mov eax, dword [rsp + 0x3b8]
dec eax
mov dword [rsp + 0x1ec], eax
jmp 0x14007dd77
mov dword [rsp + 0x1ec], 0
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov r9d, dword [rsp + 0x1ec]
mov r8, qword [rsp + 0x3c0]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.14007a780
nop
lea rcx, [rsp + 0x3b8]
call fcn.140047a00
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14007de0e
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x48], 1
mov rax, qword [rsp + 0x58]
add rax, 0x28
mov qword [rsp + 0x478], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x18]
lea eax, [rax*4 + 1]
mov edx, eax
mov rcx, qword [rsp + 0x478]
call fcn.140048430
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.14001fa30
movzx eax, byte [rsp + 0x76]
test eax, eax
je 0x14007de3b
movzx eax, byte [rsp + 0x8b]
test eax, eax
je 0x14007de31
mov eax, dword [rsp + 0x738]
and eax, 0x20
test eax, eax
jne 0x14007de3b
mov byte [rsp + 0xb9], 0
jmp 0x14007de43
mov byte [rsp + 0xb9], 1
movzx eax, byte [rsp + 0xb9]
mov byte [rsp + 0xe3], al
movzx eax, byte [rsp + 0xe3]
test eax, eax
je 0x14007e536
mov eax, dword [rsp + 0x738]
and eax, 0x801c0
test eax, eax
je 0x14007e4d8
cmp qword [rsp + 0x740], 0
jne 0x14007de9d
mov r8d, 0x12e6
lea rdx, [0x1401b2480]
lea rcx, str.callback___0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
xor eax, eax
mov dword [rsp + 0xec], 0
mov dword [rsp + 0x150], 0
mov eax, dword [rsp + 0x738]
and eax, 0x40
test eax, eax
je 0x14007def4
mov r8d, dword [rsp + 0x64]
xor edx, edx
mov ecx, 0x200
call fcn.140038dd0
movzx eax, al
test eax, eax
je 0x14007def4
mov dword [rsp + 0xec], 0x40
mov dword [rsp + 0x150], 0x200
jmp 0x14007dfb5
mov eax, dword [rsp + 0x738]
and eax, 0x80
test eax, eax
je 0x14007df32
mov dl, 1
mov ecx, 0x203
call fcn.140034d50
movzx eax, al
test eax, eax
je 0x14007df32
mov dword [rsp + 0xec], 0x80
mov dword [rsp + 0x150], 0x203
jmp 0x14007dfb5
mov eax, dword [rsp + 0x738]
and eax, 0x80
test eax, eax
je 0x14007df6d
mov dl, 1
mov ecx, 0x204
call fcn.140034d50
movzx eax, al
test eax, eax
je 0x14007df6d
mov dword [rsp + 0xec], 0x80
mov dword [rsp + 0x150], 0x204
jmp 0x14007dfb5
mov eax, dword [rsp + 0x738]
and eax, 0x80000
test eax, eax
je 0x14007df9a
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe86]
test eax, eax
je 0x14007df9a
mov dword [rsp + 0xec], 0x80000
jmp 0x14007dfb5
mov eax, dword [rsp + 0x738]
and eax, 0x100
test eax, eax
je 0x14007dfb5
mov dword [rsp + 0xec], 0x100
cmp dword [rsp + 0xec], 0
je 0x14007e4d8
lea rcx, [rsp + 0x270]
call fcn.14007a8c0
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x270], rax
mov eax, dword [rsp + 0xec]
mov dword [rsp + 0x278], eax
mov eax, dword [rsp + 0x738]
mov dword [rsp + 0x27c], eax
mov rax, qword [rsp + 0x748]
mov qword [rsp + 0x280], rax
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x14007e024
mov rax, qword [rsp + 0x720]
mov qword [rsp + 0x3d8], rax
jmp 0x14007e035
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x3d8], rax
mov rax, qword [rsp + 0x3d8]
mov qword [rsp + 0x378], rax
mov eax, dword [rsp + 0x150]
mov dword [rsp + 0x28c], eax
mov rax, qword [rsp + 0x378]
mov qword [rsp + 0x290], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x298], eax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x4c]
mov dword [rsp + 0x29c], eax
mov byte [rsp + 0x2a0], 0
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x198], rax
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x54]
mov rcx, qword [rsp + 0x198]
lea rax, [rcx + rax*2]
mov rdx, rax
mov rcx, qword [rsp + 0x198]
call fcn.14001fb40
mov dword [rsp + 0x2a4], eax
mov eax, dword [rsp + 0x2a4]
mov dword [rsp + 0x354], eax
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x58]
mov rcx, qword [rsp + 0x198]
lea rax, [rcx + rax*2]
mov rdx, rax
mov rcx, qword [rsp + 0x198]
call fcn.14001fb40
mov dword [rsp + 0x2a8], eax
mov eax, dword [rsp + 0x2a8]
mov dword [rsp + 0x32c], eax
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x5c]
mov rcx, qword [rsp + 0x198]
lea rax, [rcx + rax*2]
mov rdx, rax
mov rcx, qword [rsp + 0x198]
call fcn.14001fb40
mov dword [rsp + 0x2ac], eax
mov eax, dword [rsp + 0x2ac]
mov dword [rsp + 0x330], eax
mov rax, qword [rsp + 0x740]
mov qword [rsp + 0x480], rax
lea rcx, [rsp + 0x270]
call qword [rsp + 0x480]
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x14007e182
mov rax, qword [rsp + 0x720]
mov qword [rsp + 0x3e0], rax
jmp 0x14007e193
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x3e0], rax
mov rax, qword [rsp + 0x3e0]
mov qword [rsp + 0x378], rax
mov rax, qword [rsp + 0x378]
cmp qword [rsp + 0x290], rax
je 0x14007e1d1
mov r8d, 0x131d
lea rdx, [0x1401b24e0]
lea rcx, str.callback_data.Buf__callback_buf
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
xor eax, eax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x4c]
cmp dword [rsp + 0x29c], eax
je 0x14007e1fe
mov r8d, 0x131e
lea rdx, [0x1401b2590]
lea rcx, str.callback_data.BufSize__state__BufCapacityA
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
xor eax, eax
mov eax, dword [rsp + 0x738]
cmp dword [rsp + 0x27c], eax
je 0x14007e22a
mov r8d, 0x131f
lea rdx, [0x1401b2650]
lea rcx, str.callback_data.Flags__flags
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
xor eax, eax
movzx eax, byte [rsp + 0x2a0]
mov byte [rsp + 0x85], al
mov eax, dword [rsp + 0x354]
cmp dword [rsp + 0x2a4], eax
jne 0x14007e255
movzx eax, byte [rsp + 0x85]
test eax, eax
je 0x14007e28f
movsxd rax, dword [rsp + 0x2a4]
mov rcx, qword [rsp + 0x290]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x290]
call fcn.14001f7b0
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x54], eax
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov eax, dword [rsp + 0x32c]
cmp dword [rsp + 0x2a8], eax
jne 0x14007e2ab
movzx eax, byte [rsp + 0x85]
test eax, eax
je 0x14007e308
mov eax, dword [rsp + 0x2a4]
cmp dword [rsp + 0x2a8], eax
jne 0x14007e2cc
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x54]
mov dword [rsp + 0x1f0], eax
jmp 0x14007e2f9
movsxd rax, dword [rsp + 0x2a8]
mov rcx, qword [rsp + 0x290]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x290]
call fcn.14001f7b0
mov dword [rsp + 0x1f0], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x1f0]
mov dword [rax + 0x58], ecx
mov eax, dword [rsp + 0x330]
cmp dword [rsp + 0x2ac], eax
jne 0x14007e324
movzx eax, byte [rsp + 0x85]
test eax, eax
je 0x14007e381
mov eax, dword [rsp + 0x2a8]
cmp dword [rsp + 0x2ac], eax
jne 0x14007e345
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x58]
mov dword [rsp + 0x1f4], eax
jmp 0x14007e372
movsxd rax, dword [rsp + 0x2ac]
mov rcx, qword [rsp + 0x290]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x290]
call fcn.14001f7b0
mov dword [rsp + 0x1f4], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x1f4]
mov dword [rax + 0x5c], ecx
movzx eax, byte [rsp + 0x85]
test eax, eax
je 0x14007e4d8
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x14007e3b6
mov r8d, 0x1326
lea rdx, [0x1401b26f0]
lea rcx, str._is_readonly
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
xor eax, eax
mov rax, qword [rsp + 0x290]
mov qword [rsp + 0x488], rax
mov qword [rsp + 0x2c8], 0xffffffffffffffff
inc qword [rsp + 0x2c8]
mov rax, qword [rsp + 0x488]
mov rcx, qword [rsp + 0x2c8]
cmp byte [rax + rcx], 0
jne 0x14007e3d2
mov rax, qword [rsp + 0x2c8]
cmp dword [rsp + 0x298], eax
je 0x14007e41d
mov r8d, 0x1327
lea rdx, [0x1401b2770]
lea rcx, str.callback_data.BufTextLen___int_strlen_callback_data.Buf_
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
xor eax, eax
mov r8d, dword [rsp + 0x298]
mov rdx, qword [rsp + 0x290]
mov rcx, qword [rsp + 0x58]
call fcn.14007ac60
mov eax, dword [rsp + 0x174]
cmp dword [rsp + 0x298], eax
jle 0x14007e48d
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x14007e48d
mov rax, qword [rsp + 0x58]
add rax, 0x18
mov qword [rsp + 0x490], rax
mov eax, dword [rsp + 0x174]
mov ecx, dword [rsp + 0x298]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x58]
add eax, dword [rcx + 0x18]
mov edx, eax
mov rcx, qword [rsp + 0x490]
call fcn.1400479b0
mov qword [rsp + 0x20], 0
xor r9d, r9d
mov r8, qword [rsp + 0x290]
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x18]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x20]
call fcn.14001f6d0
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x298]
mov dword [rax + 0x10], ecx
mov rcx, qword [rsp + 0x58]
call fcn.14006d7e0
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14007e536
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov rcx, qword [rsp + 0x720]
sub rcx, rax
movzx edx, byte [rax]
cmp dl, byte [rax + rcx]
jne 0x14007e508
inc rax
test dl, dl
jne 0x14007e4f5
xor eax, eax
jmp 0x14007e50d
sbb eax, eax
or eax, 1
test eax, eax
je 0x14007e536
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x130], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x8c], eax
mov byte [rsp + 0x74], 1
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x5db0], ecx
jne 0x14007e5e0
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x40a4], ecx
je 0x14007e5d1
call fcn.140028520
movzx eax, al
test eax, eax
je 0x14007e5d1
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14007e5d1
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x5dc0]
mov rcx, qword [rsp + 0x720]
sub rcx, rax
movzx edx, byte [rax]
cmp dl, byte [rax + rcx]
jne 0x14007e59b
inc rax
test dl, dl
jne 0x14007e588
xor eax, eax
jmp 0x14007e5a0
sbb eax, eax
or eax, 1
test eax, eax
je 0x14007e5d1
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x5dc0]
mov qword [rsp + 0x130], rax
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x5db8]
dec eax
mov dword [rsp + 0x8c], eax
mov byte [rsp + 0x74], 1
mov rax, qword [rsp + 0x68]
mov dword [rax + 0x5db0], 0
cmp qword [rsp + 0x130], 0
je 0x14007e75c
cmp dword [rsp + 0x8c], 0
jge 0x14007e615
mov r8d, 0x134f
lea rdx, [0x1401b2880]
lea rcx, str.apply_new_text_length___0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
xor eax, eax
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x14007e72b
lea rcx, [rsp + 0x580]
call fcn.14007a8c0
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x580], rax
mov dword [rsp + 0x588], 0x40000
mov eax, dword [rsp + 0x738]
mov dword [rsp + 0x58c], eax
mov rax, qword [rsp + 0x720]
mov qword [rsp + 0x5a0], rax
mov eax, dword [rsp + 0x8c]
mov dword [rsp + 0x5a8], eax
mov eax, dword [rsp + 0x8c]
inc eax
mov edx, eax
mov ecx, dword [rsp + 0x728]
call fcn.14004a940
mov dword [rsp + 0x5ac], eax
mov rax, qword [rsp + 0x748]
mov qword [rsp + 0x590], rax
mov rax, qword [rsp + 0x740]
mov qword [rsp + 0x498], rax
lea rcx, [rsp + 0x580]
call qword [rsp + 0x498]
mov rax, qword [rsp + 0x5a0]
mov qword [rsp + 0x720], rax
mov eax, dword [rsp + 0x5ac]
mov dword [rsp + 0x728], eax
mov eax, dword [rsp + 0x728]
dec eax
mov edx, eax
mov ecx, dword [rsp + 0x5a8]
call fcn.14004a850
mov dword [rsp + 0x8c], eax
mov eax, dword [rsp + 0x728]
cmp dword [rsp + 0x8c], eax
jle 0x14007e72b
mov r8d, 0x135e
lea rdx, [0x1401b28e0]
lea rcx, str.apply_new_text_length___buf_size
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
xor eax, eax
mov eax, dword [rsp + 0x8c]
inc eax
mov edx, dword [rsp + 0x728]
mov ecx, eax
call fcn.14004a850
cdqe
mov r8, rax
mov rdx, qword [rsp + 0x130]
mov rcx, qword [rsp + 0x720]
call fcn.14001e280
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x40a4], ecx
jne 0x14007e77d
movzx eax, byte [rsp + 0x73]
test eax, eax
je 0x14007e77d
call fcn.1400239f0
jmp 0x14007e79d
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x40a4], ecx
jne 0x14007e79d
mov rax, qword [rsp + 0x68]
mov dword [rax + 0x6248], 1
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x14007e818
xor r8d, r8d
mov edx, dword [rsp + 0x64]
lea rcx, [rsp + 0x160]
call fcn.140021b00
mov rax, qword [rsp + 0xd8]
movss xmm0, dword [rax + 0x44]
movss dword [rsp + 0x334], xmm0
movss xmm1, dword [0x1401c4b98]
mov ecx, 7
call fcn.140020830
mov dword [rsp + 0x33c], eax
movss xmm0, dword [rsp + 0x334]
movss dword [rsp + 0x20], xmm0
mov r9b, 1
mov r8d, dword [rsp + 0x33c]
mov rdx, qword [rsp + 0x168]
mov rcx, qword [rsp + 0x160]
call fcn.140021740
movss xmm0, dword [rsp + 0x164]
addss xmm0, dword [rsp + 0x10c]
movss xmm1, dword [rsp + 0x160]
addss xmm1, dword [rsp + 0x108]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm1
movss xmm2, dword [rsp + 0x164]
movss xmm1, dword [rsp + 0x160]
lea rcx, [rsp + 0x3a8]
call fcn.140017560
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14007e896
mov rax, qword [rsp + 0xc8]
mov rax, qword [rax + 0x110]
mov qword [rsp + 0x4a0], rax
lea rax, [rsp + 0x4a0]
mov qword [rsp + 0x3e8], rax
jmp 0x14007e8c2
mov rax, qword [rsp + 0xd8]
add rax, 0x3c
mov r8, rax
lea rdx, [rsp + 0x160]
lea rcx, [rsp + 0x648]
call fcn.140017900
mov qword [rsp + 0x3e8], rax
mov rax, qword [rsp + 0x3e8]
mov qword [rsp + 0x4a8], rax
mov rax, qword [rsp + 0x4a8]
mov rax, qword [rax]
mov qword [rsp + 0x158], rax
xorps xmm2, xmm2
xorps xmm1, xmm1
lea rcx, [rsp + 0x258]
call fcn.140017440
mov dword [rsp + 0x544], 0x200000
movzx eax, byte [rsp + 0xba]
test eax, eax
je 0x14007e922
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x410], rax
jmp 0x14007e932
mov rax, qword [rsp + 0x720]
mov qword [rsp + 0x410], rax
mov rax, qword [rsp + 0x410]
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x138], 0
movzx eax, byte [rsp + 0x71]
test eax, eax
je 0x14007e9bf
mov rax, qword [rsp + 0x718]
mov qword [rsp + 0x120], rax
mov rax, qword [rsp + 0x718]
mov qword [rsp + 0x4b0], rax
mov qword [rsp + 0x2e8], 0xffffffffffffffff
inc qword [rsp + 0x2e8]
mov rax, qword [rsp + 0x4b0]
mov rcx, qword [rsp + 0x2e8]
cmp byte [rax + rcx], 0
jne 0x14007e983
mov rax, qword [rsp + 0x2e8]
mov rcx, qword [rsp + 0x718]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x138], rax
movzx eax, byte [rsp + 0x70]
test eax, eax
jne 0x14007e9d5
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x14007f95b
cmp qword [rsp + 0x58], 0
jne 0x14007e9f9
mov r8d, 0x1388
lea rdx, [0x1401b2990]
lea rcx, str.state___0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
xor eax, eax
movzx eax, byte [rsp + 0x71]
test eax, eax
jne 0x14007ea21
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x10]
mov rcx, qword [rsp + 0x120]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x138], rax
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x178], rax
lea rcx, [rsp + 0x118]
call fcn.140017410
lea rcx, [rsp + 0x380]
call fcn.140017410
mov qword [rsp + 0x300], 0
mov qword [rsp + 0x308], 0
mov dword [rsp + 0xf8], 0xfffffc18
mov dword [rsp + 0xfc], 0xfffffc18
mov dword [rsp + 0x94], 0
movzx eax, byte [rsp + 0x70]
test eax, eax
je 0x14007ead8
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x54]
mov rcx, qword [rsp + 0x178]
lea rax, [rcx + rax*2]
mov ecx, 8
imul rcx, rcx, 0
mov qword [rsp + rcx + 0x300], rax
mov eax, 4
imul rax, rax, 0
mov dword [rsp + rax + 0xf8], 0xffffffff
mov eax, dword [rsp + 0x94]
inc eax
mov dword [rsp + 0x94], eax
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x14007eb39
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.14004a850
cdqe
mov rcx, qword [rsp + 0x178]
lea rax, [rcx + rax*2]
mov ecx, 8
imul rcx, rcx, 1
mov qword [rsp + rcx + 0x300], rax
mov eax, 4
imul rax, rax, 1
mov dword [rsp + rax + 0xf8], 0xffffffff
mov eax, dword [rsp + 0x94]
inc eax
mov dword [rsp + 0x94], eax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14007eb4f
mov dword [rsp + 0x1f8], 1
jmp 0x14007eb5a
mov dword [rsp + 0x1f8], 0
mov eax, dword [rsp + 0x1f8]
mov ecx, dword [rsp + 0x94]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x94], eax
mov dword [rsp + 0xd0], 0
mov rax, qword [rsp + 0x178]
mov qword [rsp + 0x1a0], rax
jmp 0x14007eba4
mov rax, qword [rsp + 0x1a0]
add rax, 2
mov qword [rsp + 0x1a0], rax
mov rax, qword [rsp + 0x1a0]
movzx eax, word [rax]
test eax, eax
je 0x14007eca2
mov rax, qword [rsp + 0x1a0]
movzx eax, word [rax]
cmp eax, 0xa
jne 0x14007ec9d
mov eax, dword [rsp + 0xd0]
inc eax
mov dword [rsp + 0xd0], eax
mov eax, 4
imul rax, rax, 0
cmp dword [rsp + rax + 0xf8], 0xffffffff
jne 0x14007ec3c
mov eax, 8
imul rax, rax, 0
mov rax, qword [rsp + rax + 0x300]
cmp qword [rsp + 0x1a0], rax
jb 0x14007ec3c
mov eax, 4
imul rax, rax, 0
mov ecx, dword [rsp + 0xd0]
mov dword [rsp + rax + 0xf8], ecx
mov eax, dword [rsp + 0x94]
dec eax
mov dword [rsp + 0x94], eax
cmp dword [rsp + 0x94], 0
jg 0x14007ec3c
jmp 0x14007eca2
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0xf8], 0xffffffff
jne 0x14007ec9d
mov eax, 8
imul rax, rax, 1
mov rax, qword [rsp + rax + 0x300]
cmp qword [rsp + 0x1a0], rax
jb 0x14007ec9d
mov eax, 4
imul rax, rax, 1
mov ecx, dword [rsp + 0xd0]
mov dword [rsp + rax + 0xf8], ecx
mov eax, dword [rsp + 0x94]
dec eax
mov dword [rsp + 0x94], eax
cmp dword [rsp + 0x94], 0
jg 0x14007ec9d
jmp 0x14007eca2
jmp 0x14007eb90
mov eax, dword [rsp + 0xd0]
inc eax
mov dword [rsp + 0xd0], eax
mov eax, 4
imul rax, rax, 0
cmp dword [rsp + rax + 0xf8], 0xffffffff
jne 0x14007ecdc
mov eax, 4
imul rax, rax, 0
mov ecx, dword [rsp + 0xd0]
mov dword [rsp + rax + 0xf8], ecx
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0xf8], 0xffffffff
jne 0x14007ed06
mov eax, 4
imul rax, rax, 1
mov ecx, dword [rsp + 0xd0]
mov dword [rsp + rax + 0xf8], ecx
mov eax, 8
imul rax, rax, 0
mov rax, qword [rsp + rax + 0x300]
mov qword [rsp + 0x4b8], rax
mov eax, 8
imul rax, rax, 0
mov rdx, qword [rsp + 0x178]
mov rcx, qword [rsp + rax + 0x300]
call fcn.14001e530
mov qword [rsp + 0x4c0], rax
mov byte [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov r9, qword [rsp + 0x4b8]
mov r8, qword [rsp + 0x4c0]
mov rdx, qword [rsp + 0x68]
lea rcx, [rsp + 0x650]
call fcn.140077220
movss xmm0, dword [rax]
movss dword [rsp + 0x118], xmm0
mov eax, 4
imul rax, rax, 0
cvtsi2ss xmm0, dword [rsp + rax + 0xf8]
mov rax, qword [rsp + 0x68]
mulss xmm0, dword [rax + 0x3d60]
movss dword [rsp + 0x11c], xmm0
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0xf8], 0
jl 0x14007ee77
mov eax, 8
imul rax, rax, 1
mov rax, qword [rsp + rax + 0x300]
mov qword [rsp + 0x4c8], rax
mov eax, 8
imul rax, rax, 1
mov rdx, qword [rsp + 0x178]
mov rcx, qword [rsp + rax + 0x300]
call fcn.14001e530
mov qword [rsp + 0x4d0], rax
mov byte [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov r9, qword [rsp + 0x4c8]
mov r8, qword [rsp + 0x4d0]
mov rdx, qword [rsp + 0x68]
lea rcx, [rsp + 0x658]
call fcn.140077220
movss xmm0, dword [rax]
movss dword [rsp + 0x380], xmm0
mov eax, 4
imul rax, rax, 1
cvtsi2ss xmm0, dword [rsp + rax + 0xf8]
mov rax, qword [rsp + 0x68]
mulss xmm0, dword [rax + 0x3d60]
movss dword [rsp + 0x384], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14007eeba
cvtsi2ss xmm0, dword [rsp + 0xd0]
mov rax, qword [rsp + 0x68]
mulss xmm0, dword [rax + 0x3d60]
movaps xmm2, xmm0
movss xmm1, dword [rsp + 0x108]
lea rcx, [rsp + 0x690]
call fcn.140017440
mov rax, qword [rax]
mov qword [rsp + 0x258], rax
movzx eax, byte [rsp + 0x70]
test eax, eax
je 0x14007f14f
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe84]
test eax, eax
je 0x14007f14f
mov eax, dword [rsp + 0x738]
and eax, 0x1000
test eax, eax
jne 0x14007efb9
movss xmm0, dword [rsp + 0x108]
mulss xmm0, dword [0x1401c4ad4]
movss dword [rsp + 0x200], xmm0
mov rax, qword [rsp + 0xd8]
movss xmm0, dword [rsp + 0x108]
subss xmm0, dword [rax + 0x3c]
movss dword [rsp + 0x1fc], xmm0
mov rax, qword [rsp + 0x58]
movss xmm0, dword [rax + 0x50]
comiss xmm0, dword [rsp + 0x118]
jbe 0x14007ef6d
movss xmm0, dword [rsp + 0x118]
subss xmm0, dword [rsp + 0x200]
movaps xmm1, xmm0
xorps xmm0, xmm0
call fcn.14004a810
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x58]
movss dword [rax + 0x50], xmm0
jmp 0x14007efb7
movss xmm0, dword [rsp + 0x118]
subss xmm0, dword [rsp + 0x1fc]
mov rax, qword [rsp + 0x58]
comiss xmm0, dword [rax + 0x50]
jb 0x14007efb7
movss xmm0, dword [rsp + 0x118]
subss xmm0, dword [rsp + 0x1fc]
addss xmm0, dword [rsp + 0x200]
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x58]
movss dword [rax + 0x50], xmm0
jmp 0x14007efc6
mov rax, qword [rsp + 0x58]
xorps xmm0, xmm0
movss dword [rax + 0x50], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14007f143
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rsp + 0x11c]
subss xmm0, dword [rax + 0x3d60]
movss xmm1, dword [rsp + 0x98]
comiss xmm1, xmm0
jbe 0x14007f023
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rsp + 0x11c]
subss xmm0, dword [rax + 0x3d60]
movaps xmm1, xmm0
xorps xmm0, xmm0
call fcn.14004a810
movss dword [rsp + 0x98], xmm0
jmp 0x14007f096
mov rax, qword [rsp + 0xd8]
movss xmm0, dword [rax + 0x40]
mulss xmm0, dword [0x1401c4bf0]
movss xmm1, dword [rsp + 0x10c]
subss xmm1, xmm0
movaps xmm0, xmm1
movss xmm1, dword [rsp + 0x11c]
subss xmm1, xmm0
movaps xmm0, xmm1
comiss xmm0, dword [rsp + 0x98]
jb 0x14007f096
movss xmm0, dword [rsp + 0x11c]
subss xmm0, dword [rsp + 0x10c]
mov rax, qword [rsp + 0xd8]
movss xmm1, dword [rax + 0x40]
mulss xmm1, dword [0x1401c4bf0]
addss xmm0, xmm1
movss dword [rsp + 0x98], xmm0
mov rax, qword [rsp + 0xd8]
movss xmm0, dword [rax + 0x40]
mulss xmm0, dword [0x1401c4bf0]
movss xmm1, dword [rsp + 0x25c]
addss xmm1, xmm0
movaps xmm0, xmm1
subss xmm0, dword [rsp + 0x10c]
xorps xmm1, xmm1
call fcn.14004a810
movss dword [rsp + 0x364], xmm0
movss xmm2, dword [rsp + 0x364]
xorps xmm1, xmm1
movss xmm0, dword [rsp + 0x98]
call fcn.14004a9f0
movss dword [rsp + 0x98], xmm0
mov rax, qword [rsp + 0xc8]
movss xmm0, dword [rax + 0x90]
subss xmm0, dword [rsp + 0x98]
movss xmm1, dword [rsp + 0x15c]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x15c], xmm0
mov rax, qword [rsp + 0xc8]
movss xmm0, dword [rsp + 0x98]
movss dword [rax + 0x90], 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 + 0x2f0]
call fcn.140017440
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x14007f57d
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.14004a850
cdqe
mov rcx, qword [rsp + 0x178]
lea rax, [rcx + rax*2]
mov qword [rsp + 0x4d8], rax
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.14004a940
cdqe
mov rcx, qword [rsp + 0x178]
lea rax, [rcx + rax*2]
mov qword [rsp + 0x388], rax
movzx eax, byte [rsp + 0x70]
test eax, eax
je 0x14007f1e8
movss xmm0, dword [0x1401c4b98]
movss dword [rsp + 0x204], xmm0
jmp 0x14007f1f9
movss xmm0, dword [0x1401c4b3c]
movss dword [rsp + 0x204], xmm0
movss xmm1, dword [rsp + 0x204]
mov ecx, Ordinal_50
call fcn.140020830
mov dword [rsp + 0x34c], eax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14007f22a
xorps xmm0, xmm0
movss dword [rsp + 0x208], xmm0
jmp 0x14007f23b
movss xmm0, dword [0x1401c4fa0]
movss dword [rsp + 0x208], xmm0
movss xmm0, dword [rsp + 0x208]
movss dword [rsp + 0x348], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14007f264
xorps xmm0, xmm0
movss dword [rsp + 0x20c], xmm0
jmp 0x14007f275
movss xmm0, dword [0x1401c4bf0]
movss dword [rsp + 0x20c], xmm0
movss xmm0, dword [rsp + 0x20c]
movss dword [rsp + 0x344], xmm0
lea r8, [rsp + 0x380]
lea rdx, [rsp + 0x158]
lea rcx, [rsp + 0x5c0]
call fcn.140017900
lea r8, [rsp + 0x2f0]
mov rdx, rax
lea rcx, [rsp + 0x188]
call fcn.140017950
mov rax, qword [rsp + 0x4d8]
mov qword [rsp + 0x190], rax
mov rax, qword [rsp + 0x388]
cmp qword [rsp + 0x190], rax
jae 0x14007f57d
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rsp + 0x3b4]
addss xmm0, dword [rax + 0x3d60]
movss xmm1, dword [rsp + 0x18c]
comiss xmm1, xmm0
jbe 0x14007f30b
jmp 0x14007f57d
movss xmm0, dword [rsp + 0x3ac]
comiss xmm0, dword [rsp + 0x18c]
jbe 0x14007f369
mov rax, qword [rsp + 0x388]
cmp qword [rsp + 0x190], rax
jae 0x14007f364
mov rax, qword [rsp + 0x190]
movzx eax, word [rax]
mov dword [rsp + 0x340], eax
mov rax, qword [rsp + 0x190]
add rax, 2
mov qword [rsp + 0x190], rax
cmp dword [rsp + 0x340], 0xa
jne 0x14007f362
jmp 0x14007f364
jmp 0x14007f31e
jmp 0x14007f53e
mov byte [rsp + 0x30], 1
mov qword [rsp + 0x28], 0
lea rax, [rsp + 0x190]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x388]
mov r8, qword [rsp + 0x190]
mov rdx, qword [rsp + 0x68]
lea rcx, [rsp + 0x390]
call fcn.140077220
xorps xmm0, xmm0
comiss xmm0, dword [rsp + 0x390]
jb 0x14007f3f1
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3d58]
mov qword [rsp + 0x4e0], rax
mov dx, reloc.WLDAP32.dll_Ordinal_32
mov rcx, qword [rsp + 0x4e0]
call fcn.14006d5a0
mulss xmm0, dword [0x1401c4b20]
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
movss dword [rsp + 0x390], xmm0
movss xmm2, dword [rsp + 0x344]
movss xmm1, dword [rsp + 0x390]
lea rcx, [rsp + 0x5c8]
call fcn.140017440
mov r8, rax
lea rdx, [rsp + 0x188]
lea rcx, [rsp + 0x5d0]
call fcn.140017900
mov qword [rsp + 0x4e8], rax
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rsp + 0x348]
subss xmm0, dword [rax + 0x3d60]
movaps xmm2, xmm0
xorps xmm1, xmm1
lea rcx, [rsp + 0x5d8]
call fcn.140017440
mov r8, rax
lea rdx, [rsp + 0x188]
lea rcx, [rsp + 0x5e0]
call fcn.140017900
mov qword [rsp + 0x4f0], rax
mov r8, qword [rsp + 0x4e8]
mov rdx, qword [rsp + 0x4f0]
lea rcx, [rsp + 0x428]
call fcn.140018980
lea rdx, [rsp + 0x3a8]
lea rcx, [rsp + 0x660]
call fcn.1400189c0
lea rdx, [rsp + 0x660]
lea rcx, [rsp + 0x428]
call fcn.1400190e0
lea rdx, [rsp + 0x3a8]
lea rcx, [rsp + 0x670]
call fcn.1400189c0
lea rdx, [rsp + 0x670]
lea rcx, [rsp + 0x428]
call fcn.140018db0
movzx eax, al
test eax, eax
je 0x14007f53e
mov rax, qword [rsp + 0xc8]
mov rax, qword [rax + 0x2a8]
mov qword [rsp + 0x4f8], rax
mov dword [rsp + 0x28], 0
xorps xmm0, xmm0
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x34c]
lea r8, [rsp + 0x430]
lea rdx, [rsp + 0x428]
mov rcx, qword [rsp + 0x4f8]
call fcn.14005d6f0
movss xmm0, dword [rsp + 0x158]
subss xmm0, dword [rsp + 0x2f0]
movss dword [rsp + 0x188], xmm0
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rsp + 0x18c]
addss xmm0, dword [rax + 0x3d60]
movss dword [rsp + 0x18c], xmm0
jmp 0x14007f2cc
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x14007f5a8
mov rax, qword [rsp + 0x120]
mov rcx, qword [rsp + 0x138]
sub rcx, rax
mov rax, rcx
cmp rax, 0x200000
jge 0x14007f6e2
movzx eax, byte [rsp + 0x71]
test eax, eax
je 0x14007f5be
mov dword [rsp + 0x210], 1
jmp 0x14007f5c9
mov dword [rsp + 0x210], 0
movss xmm1, dword [0x1401c4b98]
mov ecx, dword [rsp + 0x210]
call fcn.140020830
mov dword [rsp + 0x39c], eax
mov rax, qword [rsp + 0xc8]
mov rax, qword [rax + 0x2a8]
mov qword [rsp + 0x518], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14007f612
mov qword [rsp + 0x3f8], 0
jmp 0x14007f622
lea rax, [rsp + 0x3a8]
mov qword [rsp + 0x3f8], rax
mov rax, qword [rsp + 0x138]
mov qword [rsp + 0x500], rax
lea r8, [rsp + 0x2f0]
lea rdx, [rsp + 0x158]
lea rcx, [rsp + 0x5e8]
call fcn.140017950
mov qword [rsp + 0x508], rax
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rax + 0x3d60]
movss dword [rsp + 0x328], xmm0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3d58]
mov qword [rsp + 0x510], rax
mov rax, qword [rsp + 0x3f8]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movss dword [rsp + 0x38], xmm0
mov rax, qword [rsp + 0x500]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x39c]
mov dword [rsp + 0x20], eax
mov r9, qword [rsp + 0x508]
movss xmm2, dword [rsp + 0x328]
mov rdx, qword [rsp + 0x510]
mov rcx, qword [rsp + 0x518]
call fcn.14005dc60
movzx eax, byte [rsp + 0x70]
test eax, eax
je 0x14007f956
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x78]
movss xmm0, dword [rax + 0xe80]
addss xmm0, dword [rcx + 0x10]
mov rax, qword [rsp + 0x58]
movss dword [rax + 0xe80], xmm0
mov rax, qword [rsp + 0x68]
movzx eax, byte [rax + 0x5b]
test eax, eax
je 0x14007f765
mov rax, qword [rsp + 0x58]
xorps xmm0, xmm0
comiss xmm0, dword [rax + 0xe80]
jae 0x14007f765
mov rax, qword [rsp + 0x58]
movss xmm0, dword [rax + 0xe80]
movss xmm1, dword [0x1401c4bb4]
call sub.api_ms_win_crt_math_l1_1_0.dll_fmodf
movss xmm1, dword [0x1401c4b68]
comiss xmm1, xmm0
jae 0x14007f765
mov dword [rsp + 0x214], 0
jmp 0x14007f770
mov dword [rsp + 0x214], 1
movzx eax, byte [rsp + 0x214]
mov byte [rsp + 0xe4], al
lea r8, [rsp + 0x118]
lea rdx, [rsp + 0x158]
lea rcx, [rsp + 0x5f0]
call fcn.140017900
lea r8, [rsp + 0x2f0]
mov rdx, rax
lea rcx, [rsp + 0x5f8]
call fcn.140017950
mov rdx, rax
lea rcx, [rsp + 0x1a8]
call fcn.140018710
movss xmm0, dword [rsp + 0x1ac]
subss xmm0, dword [0x1401c4bc4]
movss xmm1, dword [rsp + 0x1a8]
addss xmm1, dword [0x1401c4b98]
mov rax, qword [rsp + 0x68]
movss xmm2, dword [rsp + 0x1ac]
subss xmm2, dword [rax + 0x3d60]
addss xmm2, dword [0x1401c4b20]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm1
movss xmm1, dword [rsp + 0x1a8]
lea rcx, [rsp + 0x568]
call fcn.140018a30
movzx eax, byte [rsp + 0xe4]
test eax, eax
je 0x14007f8e1
lea rdx, [rsp + 0x3a8]
lea rcx, [rsp + 0x680]
call fcn.1400189c0
lea rdx, [rsp + 0x680]
lea rcx, [rsp + 0x568]
call fcn.140018db0
movzx eax, al
test eax, eax
je 0x14007f8e1
mov rax, qword [rsp + 0xc8]
mov rax, qword [rax + 0x2a8]
mov qword [rsp + 0x528], rax
movss xmm1, dword [0x1401c4b98]
xor ecx, ecx
call fcn.140020830
mov dword [rsp + 0x358], eax
lea rdx, [rsp + 0x600]
lea rcx, [rsp + 0x568]
call fcn.140018b90
mov qword [rsp + 0x520], rax
movss xmm0, dword [0x1401c4b98]
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x358]
mov r8, qword [rsp + 0x520]
lea rdx, [rsp + 0x568]
mov rcx, qword [rsp + 0x528]
call fcn.14005d480
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14007f956
mov rax, qword [rsp + 0x68]
mov byte [rax + 0x5f68], 1
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rsp + 0x1ac]
subss xmm0, dword [rax + 0x3d60]
movss xmm1, dword [rsp + 0x1a8]
subss xmm1, dword [0x1401c4b98]
movaps xmm2, xmm0
lea rcx, [rsp + 0x608]
call fcn.140017440
mov rax, qword [rax]
mov rcx, qword [rsp + 0x68]
mov qword [rcx + 0x5f6c], rax
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x68]
movss xmm0, dword [rcx + 0x3d60]
movss dword [rax + 0x5f74], xmm0
jmp 0x14007fb5d
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14007f9b3
lea rdx, [rsp + 0x138]
mov rcx, qword [rsp + 0x120]
call fcn.140077160
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x68]
mulss xmm0, dword [rax + 0x3d60]
movaps xmm2, xmm0
movss xmm1, dword [rsp + 0x108]
lea rcx, [rsp + 0x610]
call fcn.140017440
mov rax, qword [rax]
mov qword [rsp + 0x258], rax
jmp 0x14007fa4f
movzx eax, byte [rsp + 0x71]
test eax, eax
jne 0x14007f9ee
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x40a4], ecx
jne 0x14007f9ee
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x10]
mov rcx, qword [rsp + 0x120]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x138], rax
jmp 0x14007fa4f
movzx eax, byte [rsp + 0x71]
test eax, eax
jne 0x14007fa4f
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0x530], rax
mov qword [rsp + 0x2f8], 0xffffffffffffffff
inc qword [rsp + 0x2f8]
mov rax, qword [rsp + 0x530]
mov rcx, qword [rsp + 0x2f8]
cmp byte [rax + rcx], 0
jne 0x14007fa13
mov rax, qword [rsp + 0x2f8]
mov rcx, qword [rsp + 0x120]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x138], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x14007fa7a
mov rax, qword [rsp + 0x120]
mov rcx, qword [rsp + 0x138]
sub rcx, rax
mov rax, rcx
cmp rax, 0x200000
jge 0x14007fb5d
movzx eax, byte [rsp + 0x71]
test eax, eax
je 0x14007fa90
mov dword [rsp + 0x218], 1
jmp 0x14007fa9b
mov dword [rsp + 0x218], 0
movss xmm1, dword [0x1401c4b98]
mov ecx, dword [rsp + 0x218]
call fcn.140020830
mov dword [rsp + 0x35c], eax
mov rax, qword [rsp + 0xc8]
mov rax, qword [rax + 0x2a8]
mov qword [rsp + 0x538], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14007fae4
mov qword [rsp + 0x400], 0
jmp 0x14007faf4
lea rax, [rsp + 0x3a8]
mov qword [rsp + 0x400], rax
mov rax, qword [rsp + 0x400]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movss dword [rsp + 0x38], xmm0
mov rax, qword [rsp + 0x138]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x35c]
mov dword [rsp + 0x20], eax
lea r9, [rsp + 0x158]
mov rax, qword [rsp + 0x68]
movss xmm2, dword [rax + 0x3d60]
mov rax, qword [rsp + 0x68]
mov rdx, qword [rax + 0x3d58]
mov rcx, qword [rsp + 0x538]
call fcn.14005dc60
movzx eax, byte [rsp + 0x77]
test eax, eax
je 0x14007fb74
movzx eax, byte [rsp + 0x71]
test eax, eax
jne 0x14007fb74
call fcn.140032620
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14007fc40
mov rax, qword [rsp + 0xd8]
movss xmm0, dword [rsp + 0x25c]
addss xmm0, dword [rax + 0x40]
movaps xmm2, xmm0
movss xmm1, dword [rsp + 0x258]
lea rcx, [rsp + 0x618]
call fcn.140017440
mov rcx, rax
call fcn.140072170
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x49d4]
or eax, 0x401
mov rcx, qword [rsp + 0x68]
mov dword [rcx + 0x49d4], eax
call fcn.140028ce0
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x4a00]
and eax, 0x80
mov ecx, dword [rsp + 0x6a8]
or ecx, eax
mov eax, ecx
mov dword [rsp + 0x6a8], eax
call fcn.14003aaa0
mov rax, qword [rsp + 0x68]
cmp dword [rax + 0x49f8], 0
jne 0x14007fc40
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
mov dword [rax + 0x49f8], ecx
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x6a4]
mov dword [rax + 0x49fc], ecx
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x6a8]
mov dword [rax + 0x4a00], ecx
mov rax, qword [rsp + 0x68]
movzx eax, byte [rax + 0x6028]
test eax, eax
je 0x14007fc92
movzx eax, byte [rsp + 0x77]
test eax, eax
je 0x14007fc62
movzx eax, byte [rsp + 0x71]
test eax, eax
je 0x14007fc92
lea rdx, [0x14018f794]
lea rcx, [0x14018f7ec]
call fcn.1400452a0
mov r8, qword [rsp + 0x138]
mov rdx, qword [rsp + 0x120]
lea rcx, [rsp + 0x158]
call fcn.140044f20
movss xmm0, dword [rsp + 0x2b8]
comiss xmm0, dword [0x1401c4a38]
jbe 0x14007fcf6
mov rax, qword [rsp + 0xd8]
movss xmm0, dword [rsp + 0x164]
addss xmm0, dword [rax + 0x40]
mov rax, qword [rsp + 0xd8]
movss xmm1, dword [rsp + 0x168]
addss xmm1, dword [rax + 0x54]
movaps xmm2, xmm0
lea rcx, [rsp + 0x620]
call fcn.140017440
mov r9b, 1
xor r8d, r8d
mov rdx, qword [rsp + 0x710]
mov rcx, qword [rax]
call fcn.140020fa0
movzx eax, byte [rsp + 0x74]
test eax, eax
je 0x14007fd18
mov eax, dword [rsp + 0x738]
and eax, 0x8000000
test eax, eax
jne 0x14007fd18
mov ecx, dword [rsp + 0x64]
call fcn.140023a80
mov eax, dword [rsp + 0x738]
and eax, 0x20
test eax, eax
je 0x14007fd32
movzx eax, byte [rsp + 0x8b]
jmp 0x14007fd37
movzx eax, byte [rsp + 0x74]
add rsp, 0x6f8
pop rdi
pop rsi
ret