Function at 0x18001e870
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
lea rbp, [rsp - 0xff0]
mov eax, 0x10f0
call fcn.180080dc0
sub rsp, rax
mov rsi, rcx
mov ecx, dword [0x1800c0934]
mov rax, qword gs:[0x58]
mov edx, 4
mov rax, qword [rax + rcx*8]
xor ebx, ebx
mov eax, dword [rdx + rax]
cmp dword [0x1800c218c], eax
jle 0x180020080
lea rcx, [0x1800c218c]
call fcn.180080098
cmp dword [0x1800c218c], 0xffffffff
jne 0x180020080
xorps xmm0, xmm0
movups xmmword [0x1800c2190], xmm0
movups xmmword [0x1800c21a0], xmm0
movups xmmword [0x1800c21b0], xmm0
movups xmmword [0x1800c21c0], xmm0
movups xmmword [rsp + 0x30], xmm0
xorps xmm1, xmm1
movdqa xmmword [rsp + 0x40], xmm1
lea r8d, [rbx + 0xc]
lea rdx, str.ImGuiKey_Tab
lea rcx, [rsp + 0x30]
call fcn.1800027e0
mov dword [rsp + 0x50], 0x200
xorps xmm0, xmm0
movups xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x70], rbx
lea r8d, [rbx + 0x12]
lea rdx, str.ImGuiKey_LeftArrow
lea rcx, [rsp + 0x58]
call fcn.1800027e0
mov dword [rsp + 0x78], 0x201
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp - 0x70], xmm1
lea r8d, [rbx + 0x13]
lea rdx, str.ImGuiKey_RightArrow
lea rcx, [rbp - 0x80]
call fcn.1800027e0
mov dword [rbp - 0x60], 0x202
xorps xmm0, xmm0
movups xmmword [rbp - 0x58], xmm0
mov qword [rbp - 0x48], rbx
mov qword [rbp - 0x40], rbx
lea r8d, [rbx + 0x10]
lea rdx, str.ImGuiKey_UpArrow
lea rcx, [rbp - 0x58]
call fcn.1800027e0
mov dword [rbp - 0x38], 0x203
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp - 0x20], xmm1
lea r8d, [rbx + 0x12]
lea rdx, str.ImGuiKey_DownArrow
lea rcx, [rbp - 0x30]
call fcn.1800027e0
mov dword [rbp - 0x10], 0x204
xorps xmm0, xmm0
movups xmmword [rbp - 8], xmm0
mov qword [rbp + 8], rbx
mov qword [rbp + 0x10], rbx
lea r8d, [rbx + 0xf]
lea rdx, str.ImGuiKey_PageUp
lea rcx, [rbp - 8]
call fcn.1800027e0
mov dword [rbp + 0x18], 0x205
xorps xmm0, xmm0
movups xmmword [rbp + 0x20], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x30], xmm1
lea r8d, [rbx + 0x11]
lea rdx, str.ImGuiKey_PageDown
lea rcx, [rbp + 0x20]
call fcn.1800027e0
mov dword [rbp + 0x40], 0x206
xorps xmm0, xmm0
movups xmmword [rbp + 0x48], xmm0
mov qword [rbp + 0x58], rbx
mov qword [rbp + 0x60], rbx
lea r8d, [rbx + 0xd]
lea rdx, str.ImGuiKey_Home
lea rcx, [rbp + 0x48]
call fcn.1800027e0
mov dword [rbp + 0x68], 0x207
xorps xmm0, xmm0
movups xmmword [rbp + 0x70], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x80], xmm1
lea r8d, [rbx + 0xc]
lea rdx, str.ImGuiKey_End
lea rcx, [rbp + 0x70]
call fcn.1800027e0
mov dword [rbp + 0x90], 0x208
xorps xmm0, xmm0
movups xmmword [rbp + 0x98], xmm0
mov qword [rbp + 0xa8], rbx
mov qword [rbp + 0xb0], rbx
lea r8d, [rbx + 0xf]
lea rdx, str.ImGuiKey_Insert
lea rcx, [rbp + 0x98]
call fcn.1800027e0
mov dword [rbp + 0xb8], 0x209
xorps xmm0, xmm0
movups xmmword [rbp + 0xc0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0xd0], xmm1
lea r8d, [rbx + 0xf]
lea rdx, str.ImGuiKey_Delete
lea rcx, [rbp + 0xc0]
call fcn.1800027e0
mov dword [rbp + 0xe0], 0x20a
xorps xmm0, xmm0
movups xmmword [rbp + 0xe8], xmm0
mov qword [rbp + 0xf8], rbx
mov qword [rbp + 0x100], rbx
lea r8d, [rbx + 0x12]
lea rdx, str.ImGuiKey_Backspace
lea rcx, [rbp + 0xe8]
call fcn.1800027e0
mov dword [rbp + 0x108], 0x20b
xorps xmm0, xmm0
movups xmmword [rbp + 0x110], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x120], xmm1
lea r8d, [rbx + 0xe]
lea rdx, str.ImGuiKey_Space
lea rcx, [rbp + 0x110]
call fcn.1800027e0
mov dword [rbp + 0x130], 0x20c
xorps xmm0, xmm0
movups xmmword [rbp + 0x138], xmm0
mov qword [rbp + 0x148], rbx
mov qword [rbp + 0x150], rbx
lea r8d, [rbx + 0xe]
lea rdx, str.ImGuiKey_Enter
lea rcx, [rbp + 0x138]
call fcn.1800027e0
mov dword [rbp + 0x158], 0x20d
xorps xmm0, xmm0
movups xmmword [rbp + 0x160], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x170], xmm1
lea r8d, [rbx + 0xf]
lea rdx, str.ImGuiKey_Escape
lea rcx, [rbp + 0x160]
call fcn.1800027e0
mov dword [rbp + 0x180], 0x20e
xorps xmm0, xmm0
movups xmmword [rbp + 0x188], xmm0
mov qword [rbp + 0x198], rbx
mov qword [rbp + 0x1a0], rbx
lea r8d, [rbx + 0x13]
lea rdx, str.ImGuiKey_Apostrophe
lea rcx, [rbp + 0x188]
call fcn.1800027e0
mov dword [rbp + 0x1a8], 0x248
xorps xmm0, xmm0
movups xmmword [rbp + 0x1b0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x1c0], xmm1
lea r8d, [rbx + 0xe]
lea rdx, str.ImGuiKey_Comma
lea rcx, [rbp + 0x1b0]
call fcn.1800027e0
mov dword [rbp + 0x1d0], 0x249
xorps xmm0, xmm0
movups xmmword [rbp + 0x1d8], xmm0
mov qword [rbp + 0x1e8], rbx
mov qword [rbp + 0x1f0], rbx
lea r8d, [rbx + 0xe]
lea rdx, str.ImGuiKey_Minus
lea rcx, [rbp + 0x1d8]
call fcn.1800027e0
mov dword [rbp + 0x1f8], 0x24a
xorps xmm0, xmm0
movups xmmword [rbp + 0x200], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x210], xmm1
lea r8d, [rbx + 0xf]
lea rdx, str.ImGuiKey_Period
lea rcx, [rbp + 0x200]
call fcn.1800027e0
mov dword [rbp + 0x220], 0x24b
xorps xmm0, xmm0
movups xmmword [rbp + 0x228], xmm0
mov qword [rbp + 0x238], rbx
mov qword [rbp + 0x240], rbx
lea r8d, [rbx + 0xe]
lea rdx, str.ImGuiKey_Slash
lea rcx, [rbp + 0x228]
call fcn.1800027e0
mov dword [rbp + 0x248], 0x24c
xorps xmm0, xmm0
movups xmmword [rbp + 0x250], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x260], xmm1
lea r8d, [rbx + 0x12]
lea rdx, str.ImGuiKey_Semicolon
lea rcx, [rbp + 0x250]
call fcn.1800027e0
mov dword [rbp + 0x270], 0x24d
xorps xmm0, xmm0
movups xmmword [rbp + 0x278], xmm0
mov qword [rbp + 0x288], rbx
mov qword [rbp + 0x290], rbx
lea r8d, [rbx + 0xe]
lea rdx, str.ImGuiKey_Equal
lea rcx, [rbp + 0x278]
call fcn.1800027e0
mov dword [rbp + 0x298], 0x24e
xorps xmm0, xmm0
movups xmmword [rbp + 0x2a0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x2b0], xmm1
lea r8d, [rbx + 0x14]
lea rdx, str.ImGuiKey_LeftBracket
lea rcx, [rbp + 0x2a0]
call fcn.1800027e0
mov dword [rbp + 0x2c0], 0x24f
xorps xmm0, xmm0
movups xmmword [rbp + 0x2c8], xmm0
mov qword [rbp + 0x2d8], rbx
mov qword [rbp + 0x2e0], rbx
lea r8d, [rbx + 0x12]
lea rdx, str.ImGuiKey_Backslash
lea rcx, [rbp + 0x2c8]
call fcn.1800027e0
mov dword [rbp + 0x2e8], 0x250
xorps xmm0, xmm0
movups xmmword [rbp + 0x2f0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x300], xmm1
lea r8d, [rbx + 0x15]
lea rdx, str.ImGuiKey_RightBracket
lea rcx, [rbp + 0x2f0]
call fcn.1800027e0
mov dword [rbp + 0x310], 0x251
xorps xmm0, xmm0
movups xmmword [rbp + 0x318], xmm0
mov qword [rbp + 0x328], rbx
mov qword [rbp + 0x330], rbx
lea r8d, [rbx + 0x14]
lea rdx, str.ImGuiKey_GraveAccent
lea rcx, [rbp + 0x318]
call fcn.1800027e0
mov dword [rbp + 0x338], 0x252
xorps xmm0, xmm0
movups xmmword [rbp + 0x340], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x350], xmm1
lea r8d, [rbx + 0x11]
lea rdx, str.ImGuiKey_CapsLock
lea rcx, [rbp + 0x340]
call fcn.1800027e0
mov dword [rbp + 0x360], 0x253
xorps xmm0, xmm0
movups xmmword [rbp + 0x368], xmm0
mov qword [rbp + 0x378], rbx
mov qword [rbp + 0x380], rbx
lea r8d, [rbx + 0x13]
lea rdx, str.ImGuiKey_ScrollLock
lea rcx, [rbp + 0x368]
call fcn.1800027e0
mov dword [rbp + 0x388], 0x254
xorps xmm0, xmm0
movups xmmword [rbp + 0x390], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x3a0], xmm1
lea r8d, [rbx + 0x10]
lea rdx, str.ImGuiKey_NumLock
lea rcx, [rbp + 0x390]
call fcn.1800027e0
mov dword [rbp + 0x3b0], 0x255
xorps xmm0, xmm0
movups xmmword [rbp + 0x3b8], xmm0
mov qword [rbp + 0x3c8], rbx
mov qword [rbp + 0x3d0], rbx
lea r8d, [rbx + 0x14]
lea rdx, str.ImGuiKey_PrintScreen
lea rcx, [rbp + 0x3b8]
call fcn.1800027e0
mov dword [rbp + 0x3d8], 0x256
xorps xmm0, xmm0
movups xmmword [rbp + 0x3e0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x3f0], xmm1
lea r8d, [rbx + 0xe]
lea rdx, str.ImGuiKey_Pause
lea rcx, [rbp + 0x3e0]
call fcn.1800027e0
mov dword [rbp + 0x400], 0x257
xorps xmm0, xmm0
movups xmmword [rbp + 0x408], xmm0
mov qword [rbp + 0x418], rbx
mov qword [rbp + 0x420], rbx
lea r8d, [rbx + 0x10]
lea rdx, str.ImGuiKey_Keypad0
lea rcx, [rbp + 0x408]
call fcn.1800027e0
mov dword [rbp + 0x428], 0x258
xorps xmm0, xmm0
movups xmmword [rbp + 0x430], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x440], xmm1
lea r8d, [rbx + 0x10]
lea rdx, str.ImGuiKey_Keypad1
lea rcx, [rbp + 0x430]
call fcn.1800027e0
mov dword [rbp + 0x450], 0x259
xorps xmm0, xmm0
movups xmmword [rbp + 0x458], xmm0
mov qword [rbp + 0x468], rbx
mov qword [rbp + 0x470], rbx
lea r8d, [rbx + 0x10]
lea rdx, str.ImGuiKey_Keypad2
lea rcx, [rbp + 0x458]
call fcn.1800027e0
mov dword [rbp + 0x478], 0x25a
xorps xmm0, xmm0
movups xmmword [rbp + 0x480], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x490], xmm1
lea r8d, [rbx + 0x10]
lea rdx, str.ImGuiKey_Keypad3
lea rcx, [rbp + 0x480]
call fcn.1800027e0
mov dword [rbp + 0x4a0], 0x25b
xorps xmm0, xmm0
movups xmmword [rbp + 0x4a8], xmm0
mov qword [rbp + 0x4b8], rbx
mov qword [rbp + 0x4c0], rbx
lea r8d, [rbx + 0x10]
lea rdx, str.ImGuiKey_Keypad4
lea rcx, [rbp + 0x4a8]
call fcn.1800027e0
mov dword [rbp + 0x4c8], 0x25c
xorps xmm0, xmm0
movups xmmword [rbp + 0x4d0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x4e0], xmm1
lea r8d, [rbx + 0x10]
lea rdx, str.ImGuiKey_Keypad5
lea rcx, [rbp + 0x4d0]
call fcn.1800027e0
mov dword [rbp + 0x4f0], 0x25d
xorps xmm0, xmm0
movups xmmword [rbp + 0x4f8], xmm0
mov qword [rbp + 0x508], rbx
mov qword [rbp + 0x510], rbx
lea r8d, [rbx + 0x10]
lea rdx, str.ImGuiKey_Keypad6
lea rcx, [rbp + 0x4f8]
call fcn.1800027e0
mov dword [rbp + 0x518], 0x25e
xorps xmm0, xmm0
movups xmmword [rbp + 0x520], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x530], xmm1
lea r8d, [rbx + 0x10]
lea rdx, str.ImGuiKey_Keypad7
lea rcx, [rbp + 0x520]
call fcn.1800027e0
mov dword [rbp + 0x540], 0x25f
xorps xmm0, xmm0
movups xmmword [rbp + 0x548], xmm0
mov qword [rbp + 0x558], rbx
mov qword [rbp + 0x560], rbx
lea r8d, [rbx + 0x10]
lea rdx, str.ImGuiKey_Keypad8
lea rcx, [rbp + 0x548]
call fcn.1800027e0
mov dword [rbp + 0x568], 0x260
xorps xmm0, xmm0
movups xmmword [rbp + 0x570], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x580], xmm1
lea r8d, [rbx + 0x10]
lea rdx, str.ImGuiKey_Keypad9
lea rcx, [rbp + 0x570]
call fcn.1800027e0
mov dword [rbp + 0x590], 0x261
xorps xmm0, xmm0
movups xmmword [rbp + 0x598], xmm0
mov qword [rbp + 0x5a8], rbx
mov qword [rbp + 0x5b0], rbx
lea r8d, [rbx + 0x16]
lea rdx, str.ImGuiKey_KeypadDecimal
lea rcx, [rbp + 0x598]
call fcn.1800027e0
mov dword [rbp + 0x5b8], 0x262
xorps xmm0, xmm0
movups xmmword [rbp + 0x5c0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x5d0], xmm1
lea r8d, [rbx + 0x15]
lea rdx, str.ImGuiKey_KeypadDivide
lea rcx, [rbp + 0x5c0]
call fcn.1800027e0
mov dword [rbp + 0x5e0], 0x263
xorps xmm0, xmm0
movups xmmword [rbp + 0x5e8], xmm0
mov qword [rbp + 0x5f8], rbx
mov qword [rbp + 0x600], rbx
lea r8d, [rbx + 0x17]
lea rdx, str.ImGuiKey_KeypadMultiply
lea rcx, [rbp + 0x5e8]
call fcn.1800027e0
mov dword [rbp + 0x608], 0x264
xorps xmm0, xmm0
movups xmmword [rbp + 0x610], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x620], xmm1
lea r8d, [rbx + 0x17]
lea rdx, str.ImGuiKey_KeypadSubtract
lea rcx, [rbp + 0x610]
call fcn.1800027e0
mov dword [rbp + 0x630], 0x265
xorps xmm0, xmm0
movups xmmword [rbp + 0x638], xmm0
mov qword [rbp + 0x648], rbx
mov qword [rbp + 0x650], rbx
lea r8d, [rbx + 0x12]
lea rdx, str.ImGuiKey_KeypadAdd
lea rcx, [rbp + 0x638]
call fcn.1800027e0
mov dword [rbp + 0x658], 0x266
xorps xmm0, xmm0
movups xmmword [rbp + 0x660], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x670], xmm1
lea r8d, [rbx + 0x14]
lea rdx, str.ImGuiKey_KeypadEnter
lea rcx, [rbp + 0x660]
call fcn.1800027e0
mov dword [rbp + 0x680], 0x267
xorps xmm0, xmm0
movups xmmword [rbp + 0x688], xmm0
mov qword [rbp + 0x698], rbx
mov qword [rbp + 0x6a0], rbx
lea r8d, [rbx + 0x12]
lea rdx, str.ImGuiKey_LeftShift
lea rcx, [rbp + 0x688]
call fcn.1800027e0
mov dword [rbp + 0x6a8], 0x210
xorps xmm0, xmm0
movups xmmword [rbp + 0x6b0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x6c0], xmm1
lea r8d, [rbx + 0x11]
lea rdx, str.ImGuiKey_LeftCtrl
lea rcx, [rbp + 0x6b0]
call fcn.1800027e0
mov dword [rbp + 0x6d0], 0x20f
xorps xmm0, xmm0
movups xmmword [rbp + 0x6d8], xmm0
mov qword [rbp + 0x6e8], rbx
mov qword [rbp + 0x6f0], rbx
lea r8d, [rbx + 0x10]
lea rdx, str.ImGuiKey_LeftAlt
lea rcx, [rbp + 0x6d8]
call fcn.1800027e0
mov dword [rbp + 0x6f8], 0x211
xorps xmm0, xmm0
movups xmmword [rbp + 0x700], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x710], xmm1
lea r8d, [rbx + 0x12]
lea rdx, str.ImGuiKey_LeftSuper
lea rcx, [rbp + 0x700]
call fcn.1800027e0
mov dword [rbp + 0x720], 0x212
xorps xmm0, xmm0
movups xmmword [rbp + 0x728], xmm0
mov qword [rbp + 0x738], rbx
mov qword [rbp + 0x740], rbx
lea r8d, [rbx + 0x13]
lea rdx, str.ImGuiKey_RightShift
lea rcx, [rbp + 0x728]
call fcn.1800027e0
mov dword [rbp + 0x748], 0x214
xorps xmm0, xmm0
movups xmmword [rbp + 0x750], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x760], xmm1
lea r8d, [rbx + 0x12]
lea rdx, str.ImGuiKey_RightCtrl
lea rcx, [rbp + 0x750]
call fcn.1800027e0
mov dword [rbp + 0x770], 0x213
xorps xmm0, xmm0
movups xmmword [rbp + 0x778], xmm0
mov qword [rbp + 0x788], rbx
mov qword [rbp + 0x790], rbx
lea r8d, [rbx + 0x11]
lea rdx, str.ImGuiKey_RightAlt
lea rcx, [rbp + 0x778]
call fcn.1800027e0
mov dword [rbp + 0x798], 0x215
xorps xmm0, xmm0
movups xmmword [rbp + 0x7a0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x7b0], xmm1
lea r8d, [rbx + 0x13]
lea rdx, str.ImGuiKey_RightSuper
lea rcx, [rbp + 0x7a0]
call fcn.1800027e0
mov dword [rbp + 0x7c0], 0x216
xorps xmm0, xmm0
movups xmmword [rbp + 0x7c8], xmm0
mov qword [rbp + 0x7d8], rbx
mov qword [rbp + 0x7e0], rbx
lea r8d, [rbx + 0xd]
lea rdx, str.ImGuiKey_Menu
lea rcx, [rbp + 0x7c8]
call fcn.1800027e0
mov dword [rbp + 0x7e8], 0x217
xorps xmm0, xmm0
movups xmmword [rbp + 0x7f0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x800], xmm1
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_0
lea rcx, [rbp + 0x7f0]
call fcn.1800027e0
mov dword [rbp + 0x810], 0x218
xorps xmm0, xmm0
movups xmmword [rbp + 0x818], xmm0
mov qword [rbp + 0x828], rbx
mov qword [rbp + 0x830], rbx
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_1
lea rcx, [rbp + 0x818]
call fcn.1800027e0
mov dword [rbp + 0x838], 0x219
xorps xmm0, xmm0
movups xmmword [rbp + 0x840], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x850], xmm1
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_2
lea rcx, [rbp + 0x840]
call fcn.1800027e0
mov dword [rbp + 0x860], 0x21a
xorps xmm0, xmm0
movups xmmword [rbp + 0x868], xmm0
mov qword [rbp + 0x878], rbx
mov qword [rbp + 0x880], rbx
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_3
lea rcx, [rbp + 0x868]
call fcn.1800027e0
mov dword [rbp + 0x888], 0x21b
xorps xmm0, xmm0
movups xmmword [rbp + 0x890], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x8a0], xmm1
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_4
lea rcx, [rbp + 0x890]
call fcn.1800027e0
mov dword [rbp + 0x8b0], 0x21c
xorps xmm0, xmm0
movups xmmword [rbp + 0x8b8], xmm0
mov qword [rbp + 0x8c8], rbx
mov qword [rbp + 0x8d0], rbx
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_5
lea rcx, [rbp + 0x8b8]
call fcn.1800027e0
mov dword [rbp + 0x8d8], 0x21d
xorps xmm0, xmm0
movups xmmword [rbp + 0x8e0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x8f0], xmm1
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_6
lea rcx, [rbp + 0x8e0]
call fcn.1800027e0
mov dword [rbp + 0x900], 0x21e
xorps xmm0, xmm0
movups xmmword [rbp + 0x908], xmm0
mov qword [rbp + 0x918], rbx
mov qword [rbp + 0x920], rbx
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_7
lea rcx, [rbp + 0x908]
call fcn.1800027e0
mov dword [rbp + 0x928], 0x21f
xorps xmm0, xmm0
movups xmmword [rbp + 0x930], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x940], xmm1
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_8
lea rcx, [rbp + 0x930]
call fcn.1800027e0
mov dword [rbp + 0x950], 0x220
xorps xmm0, xmm0
movups xmmword [rbp + 0x958], xmm0
mov qword [rbp + 0x968], rbx
mov qword [rbp + 0x970], rbx
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_9
lea rcx, [rbp + 0x958]
call fcn.1800027e0
mov dword [rbp + 0x978], 0x221
xorps xmm0, xmm0
movups xmmword [rbp + 0x980], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x990], xmm1
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_A
lea rcx, [rbp + 0x980]
call fcn.1800027e0
mov dword [rbp + 0x9a0], 0x222
xorps xmm0, xmm0
movups xmmword [rbp + 0x9a8], xmm0
mov qword [rbp + 0x9b8], rbx
mov qword [rbp + 0x9c0], rbx
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_B
lea rcx, [rbp + 0x9a8]
call fcn.1800027e0
mov dword [rbp + 0x9c8], 0x223
xorps xmm0, xmm0
movups xmmword [rbp + 0x9d0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x9e0], xmm1
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_C
lea rcx, [rbp + 0x9d0]
call fcn.1800027e0
mov dword [rbp + 0x9f0], 0x224
xorps xmm0, xmm0
movups xmmword [rbp + 0x9f8], xmm0
mov qword [rbp + 0xa08], rbx
mov qword [rbp + 0xa10], rbx
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_D
lea rcx, [rbp + 0x9f8]
call fcn.1800027e0
mov dword [rbp + 0xa18], 0x225
xorps xmm0, xmm0
movups xmmword [rbp + 0xa20], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0xa30], xmm1
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_E
lea rcx, [rbp + 0xa20]
call fcn.1800027e0
mov dword [rbp + 0xa40], 0x226
xorps xmm0, xmm0
movups xmmword [rbp + 0xa48], xmm0
mov qword [rbp + 0xa58], rbx
mov qword [rbp + 0xa60], rbx
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_F
lea rcx, [rbp + 0xa48]
call fcn.1800027e0
mov dword [rbp + 0xa68], 0x227
xorps xmm0, xmm0
movups xmmword [rbp + 0xa70], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0xa80], xmm1
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_G
lea rcx, [rbp + 0xa70]
call fcn.1800027e0
mov dword [rbp + 0xa90], 0x228
xorps xmm0, xmm0
movups xmmword [rbp + 0xa98], xmm0
mov qword [rbp + 0xaa8], rbx
mov qword [rbp + 0xab0], rbx
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_H
lea rcx, [rbp + 0xa98]
call fcn.1800027e0
mov dword [rbp + 0xab8], 0x229
xorps xmm0, xmm0
movups xmmword [rbp + 0xac0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0xad0], xmm1
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_I
lea rcx, [rbp + 0xac0]
call fcn.1800027e0
mov dword [rbp + 0xae0], 0x22a
xorps xmm0, xmm0
movups xmmword [rbp + 0xae8], xmm0
mov qword [rbp + 0xaf8], rbx
mov qword [rbp + 0xb00], rbx
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_J
lea rcx, [rbp + 0xae8]
call fcn.1800027e0
mov dword [rbp + 0xb08], 0x22b
xorps xmm0, xmm0
movups xmmword [rbp + 0xb10], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0xb20], xmm1
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_K
lea rcx, [rbp + 0xb10]
call fcn.1800027e0
mov dword [rbp + 0xb30], 0x22c
xorps xmm0, xmm0
movups xmmword [rbp + 0xb38], xmm0
mov qword [rbp + 0xb48], rbx
mov qword [rbp + 0xb50], rbx
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_L
lea rcx, [rbp + 0xb38]
call fcn.1800027e0
mov dword [rbp + 0xb58], 0x22d
xorps xmm0, xmm0
movups xmmword [rbp + 0xb60], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0xb70], xmm1
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_M
lea rcx, [rbp + 0xb60]
call fcn.1800027e0
mov dword [rbp + 0xb80], 0x22e
xorps xmm0, xmm0
movups xmmword [rbp + 0xb88], xmm0
mov qword [rbp + 0xb98], rbx
mov qword [rbp + 0xba0], rbx
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_N
lea rcx, [rbp + 0xb88]
call fcn.1800027e0
mov dword [rbp + 0xba8], 0x22f
xorps xmm0, xmm0
movups xmmword [rbp + 0xbb0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0xbc0], xmm1
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_O
lea rcx, [rbp + 0xbb0]
call fcn.1800027e0
mov dword [rbp + 0xbd0], 0x230
xorps xmm0, xmm0
movups xmmword [rbp + 0xbd8], xmm0
mov qword [rbp + 0xbe8], rbx
mov qword [rbp + 0xbf0], rbx
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_P
lea rcx, [rbp + 0xbd8]
call fcn.1800027e0
mov dword [rbp + 0xbf8], 0x231
xorps xmm0, xmm0
movups xmmword [rbp + 0xc00], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0xc10], xmm1
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_Q
lea rcx, [rbp + 0xc00]
call fcn.1800027e0
mov dword [rbp + 0xc20], 0x232
xorps xmm0, xmm0
movups xmmword [rbp + 0xc28], xmm0
mov qword [rbp + 0xc38], rbx
mov qword [rbp + 0xc40], rbx
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_R
lea rcx, [rbp + 0xc28]
call fcn.1800027e0
mov dword [rbp + 0xc48], 0x233
xorps xmm0, xmm0
movups xmmword [rbp + 0xc50], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0xc60], xmm1
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_S
lea rcx, [rbp + 0xc50]
call fcn.1800027e0
mov dword [rbp + 0xc70], 0x234
xorps xmm0, xmm0
movups xmmword [rbp + 0xc78], xmm0
mov qword [rbp + 0xc88], rbx
mov qword [rbp + 0xc90], rbx
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_T
lea rcx, [rbp + 0xc78]
call fcn.1800027e0
mov dword [rbp + 0xc98], 0x235
xorps xmm0, xmm0
movups xmmword [rbp + 0xca0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0xcb0], xmm1
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_U
lea rcx, [rbp + 0xca0]
call fcn.1800027e0
mov dword [rbp + 0xcc0], 0x236
xorps xmm0, xmm0
movups xmmword [rbp + 0xcc8], xmm0
mov qword [rbp + 0xcd8], rbx
mov qword [rbp + 0xce0], rbx
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_V
lea rcx, [rbp + 0xcc8]
call fcn.1800027e0
mov dword [rbp + 0xce8], 0x237
xorps xmm0, xmm0
movups xmmword [rbp + 0xcf0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0xd00], xmm1
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_W
lea rcx, [rbp + 0xcf0]
call fcn.1800027e0
mov dword [rbp + 0xd10], 0x238
xorps xmm0, xmm0
movups xmmword [rbp + 0xd18], xmm0
mov qword [rbp + 0xd28], rbx
mov qword [rbp + 0xd30], rbx
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_X
lea rcx, [rbp + 0xd18]
call fcn.1800027e0
mov dword [rbp + 0xd38], 0x239
xorps xmm0, xmm0
movups xmmword [rbp + 0xd40], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0xd50], xmm1
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_Y
lea rcx, [rbp + 0xd40]
call fcn.1800027e0
mov dword [rbp + 0xd60], 0x23a
xorps xmm0, xmm0
movups xmmword [rbp + 0xd68], xmm0
mov qword [rbp + 0xd78], rbx
mov qword [rbp + 0xd80], rbx
lea r8d, [rbx + 0xa]
lea rdx, str.ImGuiKey_Z
lea rcx, [rbp + 0xd68]
call fcn.1800027e0
mov dword [rbp + 0xd88], 0x23b
xorps xmm0, xmm0
movups xmmword [rbp + 0xd90], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0xda0], xmm1
lea r8d, [rbx + 0xb]
lea rdx, str.ImGuiKey_F1
lea rcx, [rbp + 0xd90]
call fcn.1800027e0
mov dword [rbp + 0xdb0], 0x23c
xorps xmm0, xmm0
movups xmmword [rbp + 0xdb8], xmm0
mov qword [rbp + 0xdc8], rbx
mov qword [rbp + 0xdd0], rbx
lea r8d, [rbx + 0xb]
lea rdx, str.ImGuiKey_F2
lea rcx, [rbp + 0xdb8]
call fcn.1800027e0
mov dword [rbp + 0xdd8], 0x23d
xorps xmm0, xmm0
movups xmmword [rbp + 0xde0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0xdf0], xmm1
lea r8d, [rbx + 0xb]
lea rdx, str.ImGuiKey_F3
lea rcx, [rbp + 0xde0]
call fcn.1800027e0
mov dword [rbp + 0xe00], 0x23e
xorps xmm0, xmm0
movups xmmword [rbp + 0xe08], xmm0
mov qword [rbp + 0xe18], rbx
mov qword [rbp + 0xe20], rbx
lea r8d, [rbx + 0xb]
lea rdx, str.ImGuiKey_F4
lea rcx, [rbp + 0xe08]
call fcn.1800027e0
mov dword [rbp + 0xe28], 0x23f
xorps xmm0, xmm0
movups xmmword [rbp + 0xe30], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0xe40], xmm1
lea r8d, [rbx + 0xb]
lea rdx, str.ImGuiKey_F5
lea rcx, [rbp + 0xe30]
call fcn.1800027e0
mov dword [rbp + 0xe50], 0x240
xorps xmm0, xmm0
movups xmmword [rbp + 0xe58], xmm0
mov qword [rbp + 0xe68], rbx
mov qword [rbp + 0xe70], rbx
lea r8d, [rbx + 0xb]
lea rdx, str.ImGuiKey_F6
lea rcx, [rbp + 0xe58]
call fcn.1800027e0
mov dword [rbp + 0xe78], 0x241
xorps xmm0, xmm0
movups xmmword [rbp + 0xe80], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0xe90], xmm1
lea r8d, [rbx + 0xb]
lea rdx, str.ImGuiKey_F7
lea rcx, [rbp + 0xe80]
call fcn.1800027e0
mov dword [rbp + 0xea0], 0x242
xorps xmm0, xmm0
movups xmmword [rbp + 0xea8], xmm0
mov qword [rbp + 0xeb8], rbx
mov qword [rbp + 0xec0], rbx
lea r8d, [rbx + 0xb]
lea rdx, str.ImGuiKey_F8
lea rcx, [rbp + 0xea8]
call fcn.1800027e0
mov dword [rbp + 0xec8], 0x243
xorps xmm0, xmm0
movups xmmword [rbp + 0xed0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0xee0], xmm1
lea r8d, [rbx + 0xb]
lea rdx, str.ImGuiKey_F9
lea rcx, [rbp + 0xed0]
call fcn.1800027e0
mov dword [rbp + 0xef0], 0x244
xorps xmm0, xmm0
movups xmmword [rbp + 0xef8], xmm0
mov qword [rbp + 0xf08], rbx
mov qword [rbp + 0xf10], rbx
lea r8d, [rbx + 0xc]
lea rdx, str.ImGuiKey_F10
lea rcx, [rbp + 0xef8]
call fcn.1800027e0
mov dword [rbp + 0xf18], 0x245
xorps xmm0, xmm0
movups xmmword [rbp + 0xf20], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0xf30], xmm1
lea r8d, [rbx + 0xc]
lea rdx, str.ImGuiKey_F11
lea rcx, [rbp + 0xf20]
call fcn.1800027e0
mov dword [rbp + 0xf40], 0x246
xorps xmm0, xmm0
movups xmmword [rbp + 0xf48], xmm0
mov qword [rbp + 0xf58], rbx
mov qword [rbp + 0xf60], rbx
lea r8d, [rbx + 0xc]
lea rdx, str.ImGuiKey_F12
lea rcx, [rbp + 0xf48]
call fcn.1800027e0
mov dword [rbp + 0xf68], 0x247
xorps xmm0, xmm0
movups xmmword [rbp + 0xf70], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0xf80], xmm1
lea r8d, [rbx + 0x15]
lea rdx, str.ImGuiMouseButton_Left
lea rcx, [rbp + 0xf70]
call fcn.1800027e0
mov dword [rbp + 0xf90], ebx
xorps xmm0, xmm0
movups xmmword [rbp + 0xf98], xmm0
mov qword [rbp + 0xfa8], rbx
mov qword [rbp + 0xfb0], rbx
lea r8d, [rbx + 0x16]
lea rdx, str.ImGuiMouseButton_Right
lea rcx, [rbp + 0xf98]
call fcn.1800027e0
mov dword [rbp + 0xfb8], 1
xorps xmm0, xmm0
movups xmmword [rbp + 0xfc0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0xfd0], xmm1
lea r8d, [rbx + 0x17]
lea rdx, str.ImGuiMouseButton_Middle
lea rcx, [rbp + 0xfc0]
call fcn.1800027e0
mov dword [rbp + 0xfe0], 2
mov dword [0x1800c2190], ebx
mov qword [0x1800c2198], rbx
mov qword [0x1800c21a0], rbx
lea ecx, [rbx + 0x38]
call fcn.18007fbf8
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [0x1800c2198], rax
mov qword [0x1800c21a8], rbx
xorps xmm0, xmm0
movdqa xmmword [0x1800c21b0], xmm0
mov qword [0x1800c21c0], 7
mov qword [0x1800c21c8], 8
mov dword [0x1800c2190], 0x3f800000
mov r8, rax
lea edx, [rbx + 0x10]
lea rcx, [0x1800c21a8]
call fcn.1800030a0
nop
lea rdi, [rsp + 0x30]
nop
mov r8, rdi
lea rdx, [rsp + 0x20]
call fcn.180022350
add rdi, 0x28
lea rax, [rbp + 0xfe8]
cmp rdi, rax
jne 0x180020030
lea r9, [fcn.180002140]
mov edx, 0x28
lea r8d, [rdx + 0x43]
lea rcx, [rsp + 0x30]
call fcn.180080110
lea rcx, [0x1800842b0]
call fcn.18007ffd8
nop
lea rcx, [0x1800c218c]
call fcn.18008002c
mov rdx, qword [rsi + 0x10]
mov rcx, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x180020091
mov rcx, qword [rsi]
movabs r9, 0xcbf29ce484222325
test rdx, rdx
je 0x1800200c3
movabs r8, 0x100000001b3
nop word [rax + rax]
movzx eax, byte [rbx + rcx]
xor r9, rax
imul r9, r8
inc rbx
cmp rbx, rdx
jb 0x1800200b0
mov r8, rsi
lea rdx, [rsp + 0x20]
call fcn.1800228a0
mov rcx, qword [rax + 8]
mov rax, qword [0x1800c2198]
test rcx, rcx
cmovne rax, rcx
cmp rax, qword [0x1800c2198]
je 0x1800200f0
mov eax, dword [rax + 0x30]
jmp 0x1800200f2
xor eax, eax
lea r11, [rsp + 0x10f0]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret