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

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
sub rsp, 0xa8
mov rax, qword [rsp + 0xb0]
movzx eax, byte [rax]
cdqe
mov rcx, qword [rsp + 0xb0]
movzx eax, byte [rcx + rax]
xor eax, 0x94f
cdqe
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0xb0]
movzx eax, byte [rax]
cdqe
mov rcx, qword [rsp + 0xb0]
movzx eax, byte [rcx + rax]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0xb0]
dec rax
mov qword [rsp + 0xb0], rax
movsxd rax, dword [0x1417ea118]
mov rcx, qword [rsp + 0xb8]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x48], rax
mov eax, 0x1393
sub eax, dword [0x1417ea118]
cdqe
mov qword [rsp + 0x60], rax
movzx eax, word [0x1417ea100]
mov word [rsp + 0x38], ax
movzx eax, word [0x1417ea1a4]
add rax, qword [0x1417ea0f0]
mov dword [rsp + 0x28], eax
mov rax, qword [0x1417ea178]
mov rcx, qword [rsp + 0xb0]
add rcx, rax
mov rax, rcx
movzx eax, byte [rax + 5]
mov qword [rsp + 0x58], rax
xor edx, edx
mov rax, qword [rsp + 0xb8]
mov rcx, qword [rsp + 0x58]
div rcx
mov rax, rdx
mov qword [rsp + 0x68], rax
movzx eax, byte [0x1417ea106]
mov rcx, qword [0x1417ea0f0]
mov rdx, qword [0x1417ea188]
sub eax, dword [rdx + rcx*4]
mov word [rsp + 0xc], ax
mov qword [rsp + 0x80], 0x1cf1
mov rax, qword [rsp + 0xb0]
movzx eax, byte [rax]
shl eax, 2
cdqe
mov rcx, qword [0x1417ea1a8]
movsxd rax, dword [rcx + rax*4]
mov rcx, qword [0x1417ea110]
xor rcx, rax
mov rax, rcx
mov byte [rsp], al
movzx eax, byte [0x1417ea124]
mov byte [rsp + 8], al
movzx eax, byte [0x1417ea144]
mov byte [rsp + 0x10], al
movzx eax, word [0x1417ea10c]
mov word [rsp + 0x3c], ax
movzx eax, word [0x1417ea140]
mov word [rsp + 0x40], ax
mov rax, qword [rsp + 0xb0]
movzx eax, byte [rax]
lea eax, [rax + rax + 1]
cdqe
mov rcx, qword [rsp + 0xb0]
movzx eax, byte [rcx + rax]
mov qword [rsp + 0x18], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x20], rax
mov eax, dword [0x1417ea11c]
cdqe
mov rcx, qword [rsp + 0xb0]
movzx eax, byte [rcx + rax]
cdq
mov ecx, 0x51
idiv ecx
mov eax, edx
mov dword [rsp + 0x50], eax
movzx eax, byte [0x1417ea106]
inc al
mov byte [0x1417ea106], al
movzx eax, byte [0x1417ea106]
mov rcx, qword [rsp + 0xb0]
movzx ecx, byte [rcx]
movsxd rcx, ecx
mov rdx, qword [0x1417ea158]
imul eax, dword [rdx + rcx*4]
mov byte [rsp + 0x11], al
movsxd rax, dword [0x1417ea170]
mov qword [rsp + 0x88], rax
mov eax, dword [0x1417ea128]
mov ecx, dword [0x1417ea10c]
and ecx, eax
mov eax, ecx
cdqe
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x30], 0x1e72
movsxd rax, dword [0x1417ea108]
cmp rax, qword [rsp + 0xb8]
jb 0x140019418
movzx eax, byte [0x1417ea106]
add eax, 5
cdqe
mov rcx, qword [rsp + 0xb0]
movzx eax, byte [rcx + rax]
cmp rax, qword [rsp + 0xb8]
jb 0x1400194e9
mov rax, qword [rsp + 0x18]
movzx eax, word [rax]
cdqe
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + rax*4]
and rax, qword [0x1417ea178]
mov qword [0x1417ea178], rax
mov rax, qword [rsp + 0xb8]
mov rcx, qword [rsp + 0xb8]
add rcx, rax
mov rax, rcx
movsxd rcx, dword [0x1417ea1a0]
xor edx, edx
div rcx
mov dword [0x1417ea1a0], eax
mov rax, qword [rsp + 0xb0]
movzx eax, byte [rax]
inc al
mov rcx, qword [rsp + 0xb0]
mov byte [rcx], al
mov eax, dword [0x1417ea10c]
dec eax
mov dword [0x1417ea10c], eax
mov rax, qword [rsp + 0xb0]
movzx eax, byte [rax]
add eax, 0x11
cdqe
mov rcx, qword [rsp + 0xb0]
movzx eax, byte [rcx + rax]
mov rcx, qword [rsp + 0xb0]
movzx ecx, byte [rcx]
movsxd rcx, ecx
mov rdx, qword [rsp + 0x18]
movzx ecx, word [rdx + rcx*2]
or ecx, eax
mov eax, ecx
mov ecx, dword [0x1417ea10c]
add ecx, 0x15
movsxd rcx, ecx
mov rdx, qword [0x1417ea0f8]
and eax, dword [rdx + rcx*4]
mov ecx, dword [0x1417ea10c]
add ecx, 0x15
movsxd rcx, ecx
mov rdx, qword [0x1417ea0f8]
mov dword [rdx + rcx*4], eax
mov rax, qword [rsp + 0xb0]
movzx eax, byte [rax]
cdqe
mov rcx, qword [0x1417ea198]
movzx eax, byte [rcx + rax]
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx]
shl rcx, 1
mov rdx, qword [rsp + 0x60]
movzx ecx, word [rdx + rcx*2]
sub eax, ecx
movzx ecx, byte [rsp]
add ecx, 4
movsxd rcx, ecx
mov rdx, qword [rsp + 0xb0]
movzx ecx, byte [rdx + rcx]
or eax, ecx
sub eax, 0x1149
movzx ecx, byte [rsp]
movsxd rcx, ecx
mov rdx, qword [rsp + 0xb0]
movzx ecx, byte [rdx + rcx]
sub eax, ecx
movzx ecx, byte [rsp]
movsxd rcx, ecx
mov rdx, qword [rsp + 0xb0]
mov byte [rdx + rcx], al
mov rax, qword [rsp + 0xb0]
movzx eax, byte [rax]
cdqe
movzx ecx, word [rsp + 0xc]
mov rdx, qword [rsp + 0x48]
mov eax, dword [rdx + rax*4]
and eax, ecx
movzx ecx, byte [rsp]
sub eax, ecx
mov rcx, qword [rsp + 0x18]
movzx ecx, word [rcx]
inc ecx
movsxd rcx, ecx
mov rdx, qword [rsp + 0x18]
movzx ecx, word [rdx + rcx*2]
xor eax, ecx
mov rcx, qword [rsp + 0x18]
movzx ecx, word [rcx]
inc ecx
movsxd rcx, ecx
mov rdx, qword [rsp + 0x18]
mov word [rdx + rcx*2], ax
mov rax, qword [rsp + 0x20]
movzx eax, word [rax]
dec ax
mov rcx, qword [rsp + 0x20]
mov word [rcx], ax
mov rax, qword [rsp + 0x20]
movzx eax, word [rax]
cdqe
mov rcx, qword [rsp + 0xb0]
movzx eax, byte [rcx + rax]
movzx ecx, word [rsp + 0xc]
or eax, ecx
cdq
mov ecx, 0x1852
idiv ecx
cdq
idiv dword [0x1417ea100]
mov eax, edx
mov dword [0x1417ea100], eax
mov rax, qword [rsp + 0xb0]
movzx eax, byte [rax]
dec al
mov rcx, qword [rsp + 0xb0]
mov byte [rcx], al
mov rax, qword [rsp + 0xb0]
movzx eax, byte [rax]
cdqe
mov rcx, qword [rsp + 0x20]
movzx eax, word [rcx + rax*2]
add eax, 0x1626
mov ecx, dword [0x1417ea128]
add ecx, 5
movsxd rcx, ecx
mov rdx, qword [0x1417ea1a8]
sub eax, dword [rdx + rcx*4]
mov rcx, qword [rsp + 0x20]
movzx ecx, word [rcx]
movsxd rcx, ecx
mov rdx, qword [rsp + 0xb0]
movzx ecx, byte [rdx + rcx]
xor eax, ecx
mov rcx, qword [rsp + 0x20]
movzx ecx, word [rcx]
movsxd rcx, ecx
mov rdx, qword [rsp + 0xb0]
mov byte [rdx + rcx], al
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
mov rcx, qword [rsp + 0xb0]
movzx eax, byte [rcx + rax]
mov dword [rsp + 4], eax
jmp 0x14001968d
mov eax, dword [rsp + 4]
inc eax
mov dword [rsp + 4], eax
movsxd rax, dword [rsp + 4]
cmp rax, qword [rsp + 0xb8]
je 0x140019815
mov eax, dword [rsp + 4]
shl eax, 1
cdqe
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx + rax*8]
mov rcx, qword [0x1417ea168]
sub rcx, rax
mov rax, rcx
mov word [rsp + 0xc], ax
mov eax, dword [0x1417ea160]
mov dword [0x1417ea100], eax
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
mov rcx, qword [rsp + 0xb0]
movzx eax, byte [rcx + rax + 0x19]
mov ecx, dword [rsp + 4]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx]
mov rdx, qword [rsp + 0xb0]
mov byte [rdx + rcx + 0x19], al
movzx eax, byte [rsp + 8]
mov rcx, qword [rsp + 0xb8]
or rcx, rax
mov rax, rcx
movsxd rcx, dword [rsp + 0x28]
and rax, rcx
or rax, qword [0x1417ea150]
mov ecx, dword [rsp + 4]
movsxd rcx, ecx
mov rdx, qword [rsp + 0xb0]
movzx ecx, byte [rdx + rcx]
xor rax, rcx
mov ecx, dword [rsp + 4]
movsxd rcx, ecx
mov rdx, qword [rsp + 0xb0]
mov byte [rdx + rcx], al
mov rax, qword [rsp + 0x18]
movzx eax, word [rax]
lea eax, [rax + rax + 0x19]
cdqe
mov rcx, qword [rsp + 0xb0]
movzx eax, byte [rcx + rax]
mov dword [rsp + 0x14], eax
jmp 0x140019774
mov eax, dword [rsp + 0x14]
inc eax
mov dword [rsp + 0x14], eax
mov eax, dword [rsp + 4]
cmp dword [rsp + 0x14], eax
jl 0x140019810
xor edx, edx
mov eax, 0x43e
div qword [rsp + 0xb8]
movzx ecx, word [0x1417ea174]
sub rax, rcx
mov word [0x1417ea174], ax
movzx eax, byte [rsp]
movzx ecx, byte [rsp]
lea ecx, [rcx + rcx + 6]
movsxd rcx, ecx
mov rdx, qword [rsp + 0x68]
movzx ecx, word [rdx + rcx*2]
cdq
idiv ecx
or eax, dword [rsp + 0x28]
add eax, dword [0x1417ea144]
mov dword [0x1417ea144], eax
mov eax, dword [rsp + 0xb8]
mov dword [0x1417ea128], eax
mov rax, qword [0x1417ea168]
mov rcx, qword [0x1417ea0f8]
movsxd rax, dword [rcx + rax*4]
mov rcx, qword [rsp + 0xb8]
and rcx, rax
mov rax, rcx
mov rcx, qword [0x1417ea168]
mov rdx, qword [0x1417ea0f8]
mov dword [rdx + rcx*4], eax
jmp 0x14001976a
jmp 0x140019683
mov rax, qword [0x1417ea0f0]
inc rax
mov qword [0x1417ea0f0], rax
mov rax, qword [0x1417ea0f0]
mov rcx, qword [rsp + 0xb0]
add rcx, rax
mov rax, rcx
movzx eax, byte [rax + 0x13]
add rsp, 0xa8
ret