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

Disassembly:
mov r11, rsp
push rbp
push r12
lea rbp, [r11 - 0x5f]
sub rsp, 0xe8
xor r12d, r12d
mov qword [r11 - 0x18], r13
mov qword [r11 - 0x28], r15
mov r13d, r12d
mov r15, rcx
mov dword [rbp + 0x67], r12d
mov rcx, qword [rcx + 0x70]
mov rax, qword [r15 + 0x78]
sub rax, rcx
sar rax, 3
test rax, rax
je 0x14001b241
mov qword [r11 + 0x10], rbx
lea r10d, [r12 - 1]
mov qword [r11 + 0x18], rsi
lea r8d, [r12 + 0xf]
mov qword [r11 + 0x20], rdi
mov edx, r12d
mov qword [r11 - 0x20], r14
lea r11d, [r12 + 0x7f]
mov rbx, qword [rcx + rdx*8]
cmp dword [rbx + 0x28], 0
jne 0x14001aa13
lea r13, [0x140000000]
cmp dword [rbx], 1
jne 0x14001aa0f
mov rax, qword [rbx + 0x58]
movzx r14d, byte [rax]
lea r9, [rax + 1]
mov qword [rbx + 0x58], r9
mov eax, r14d
cmp r14d, 0xfe
ja 0x14001aff5
je 0x14001afb4
cmp eax, 0x82
ja case.0x140019873.48
movzx eax, byte [r14 + r13 + 0x1b3a4]
mov ecx, dword [r13 + rax*4 + 0x1b2e0]
add rcx, r13
jmp rcx
movzx ecx, byte [r9]
lea rax, [r9 + 1]
mov qword [rbx + 0x58], rax
movzx r8d, byte [rax]
inc rax
shl ecx, 8
add ecx, r8d
mov qword [rbx + 0x58], rax
cmp dword [r15 + 0x1a0], 0
lea eax, [rcx + rcx*2]
jne 0x1400198a9
mov edx, 0x5b8d80
shl eax, 6
jmp 0x1400198b1
mov edx, 0x5b8d8
shl eax, 3
mov dword [r15 + 0xa4], eax
mov dword [r15 + 0x1a4], edx
mov dword [r15 + 0xa0], edx
jmp 0x14001a9f7
movzx edi, byte [r9]
lea rax, [r9 + 1]
mov qword [rbx + 0x58], rax
lea r8, [rax + 1]
movzx ecx, byte [rax]
lea rax, [r8 + 1]
mov qword [rbx + 0x58], r8
movzx r10d, byte [r8]
mov qword [rbx + 0x58], rax
movzx r8d, r10w
movzx edx, byte [rax]
shl di, 8
or di, cx
shl r8w, 8
mov ecx, dword [rbx + 8]
inc rax
mov qword [rbx + 0x58], rax
or r8w, dx
mov rax, qword [r15 + 0x58]
mov edx, dword [rbx + 0xc]
mov rcx, qword [rax + rcx*8]
mov r9, qword [rcx]
call qword [r9 + 0x40]
mov rax, qword [r15 + 0x58]
movzx r8d, di
mov ecx, dword [rbx + 8]
mov edx, dword [rbx + 0xc]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0x48]
mov rax, qword [r15 + 0x58]
mov ecx, dword [rbx + 8]
movzx r8d, byte [rbx + 0x14b8]
mov edx, dword [rbx + 0xc]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0x38]
mov rcx, qword [r15 + 0x178]
test rcx, rcx
je 0x14001a9f7
movsxd rax, dword [rbx + 0xc]
movsxd r9, dword [rbx + 8]
mov r8, qword [rcx + 8]
movzx r10d, di
lea rdx, [rax + rax*4]
mov rax, qword [r8 + r9*8]
mov dword [rax + rdx*8 + 0x10c], r10d
mov rax, qword [rcx]
call qword [rax + 0x18]
jmp 0x14001a9f7
movzx edi, byte [r9]
lea rax, [r9 + 1]
mov qword [rbx + 0x58], rax
lea r8, [rax + 1]
movzx ecx, byte [rax]
lea rax, [r8 + 1]
mov qword [rbx + 0x58], r8
movzx r10d, byte [r8]
mov qword [rbx + 0x58], rax
movzx r8d, r10w
movzx edx, byte [rax]
shl di, 8
or di, cx
shl r8w, 8
mov ecx, dword [rbx + 8]
inc rax
mov qword [rbx + 0x58], rax
or r8w, dx
mov rax, qword [r15 + 0x58]
mov edx, dword [rbx + 0xc]
mov rcx, qword [rax + rcx*8]
mov r9, qword [rcx]
call qword [r9 + 0x40]
mov rax, qword [r15 + 0x58]
movzx r8d, di
mov ecx, dword [rbx + 8]
mov edx, dword [rbx + 0xc]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0x50]
jmp 0x140019939
cmp dword [rbx + 0x1470], 0
lea rax, [r9 + 1]
movzx r8d, byte [r9]
mov qword [rbx + 0x58], rax
mov dword [rbx + 0x10], r8d
mov dword [rbx + 0x14], r10d
je 0x14001a9f7
mov rax, qword [r15 + 0x58]
mov ecx, dword [rbx + 8]
mov edx, dword [rbx + 0xc]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0x68]
jmp 0x14001a9f7
mov rax, qword [r15 + 0x58]
mov ecx, dword [rbx + 8]
mov edx, dword [rbx + 0xc]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0xf0]
test eax, eax
mov rax, qword [rbx + 0x58]
jne 0x140019a73
movzx ecx, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
mov r8d, ecx
mov edx, dword [r13 + rcx*4 + 0x32af0]
jmp 0x140019a96
movzx ecx, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
mov r8d, ecx
imul ecx, ecx, 0x7f
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [rbx + 0x10], edx
mov dword [rbx + 0x14], r8d
cmp dword [rbx + 0x1470], 0
je 0x14001a9f7
mov rax, qword [r15 + 0x58]
mov ecx, dword [rbx + 8]
mov r8d, edx
mov edx, dword [rbx + 0xc]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0x68]
jmp 0x14001a9f7
movzx ecx, byte [r9]
lea rax, [r9 + 1]
mov qword [rbx + 0x58], rax
mov dword [rbx + 0x24], ecx
jmp 0x14001a9f7
movzx ecx, byte [r9]
lea rax, [r9 + 1]
mov qword [rbx + 0x58], rax
mov dword [rbx + 0x18], ecx
mov dword [rbx + 0x1c], r12d
jmp 0x14001a9f7
movzx ecx, byte [r9]
lea rdx, [r9 + 1]
mov qword [rbx + 0x58], rdx
movzx eax, byte [rdx]
shl ecx, 8
or ecx, eax
mov dword [rbx + 0x18], 8
lea rax, [rdx + 1]
mov dword [rbx + 0x1c], ecx
mov qword [rbx + 0x58], rax
jmp 0x14001a9f7
movzx r8d, byte [r9]
lea rdx, [r9 + 1]
shl r8d, 8
lea rax, [rdx + 1]
mov dword [rbx + 0x20], r8d
mov qword [rbx + 0x58], rdx
movzx ecx, byte [rdx]
or r8d, ecx
mov qword [rbx + 0x58], rax
mov dword [rbx + 0x20], r8d
jmp 0x14001a9f7
movzx r8d, byte [r9]
lea rax, [r9 + 1]
mov ecx, dword [rbx + 8]
mov edx, dword [rbx + 0xc]
mov qword [rbx + 0x58], rax
mov byte [rbx + 0x14b8], r8b
mov rax, qword [r15 + 0x58]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0x38]
jmp 0x14001a9f7
movzx r8d, byte [r9]
lea rax, [r9 + 1]
mov ecx, dword [rbx + 8]
mov edx, dword [rbx + 0xc]
mov qword [rbx + 0x58], rax
movzx r9d, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
mov byte [rbx + 0x14b8], 0
mov rax, qword [r15 + 0x58]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0x30]
jmp 0x14001a9f7
mov qword [rbx + 0x60], r9
mov dword [rbx + 0x14f0], r12d
mov rdx, qword [r15 + 0x178]
test rdx, rdx
je 0x14001a9f7
movsxd rax, dword [rbx + 0xc]
mov rdx, qword [rdx + 8]
movsxd r8, dword [rbx + 8]
lea rcx, [rax + rax*4]
mov rax, qword [rdx + r8*8]
lea rdx, [rax + rcx*8]
mov eax, dword [rdx + 0x120]
mov dword [rdx + 0x124], eax
jmp 0x14001a9f7
movsxd rax, dword [rbx + 0x1468]
mov qword [rbx + rax*8 + 0x68], r9
movsxd rax, dword [rbx + 0x1468]
mov dword [rbx + rax*4 + 0x1068], r12d
inc dword [rbx + 0x1468]
jmp 0x14001a9f7
movsxd rax, dword [rbx + 0x1468]
cmp dword [rbx + rax*4 + 0x1064], 1
lea ecx, [rax - 1]
jne 0x14001a9f7
mov rax, qword [rbx + rax*8 + 0x860]
mov qword [rbx + 0x58], rax
mov dword [rbx + 0x1468], ecx
jmp 0x14001a9f7
movzx edx, byte [r9]
inc r9
movsxd rax, dword [rbx + 0x1468]
mov qword [rbx + 0x58], r9
test eax, eax
jg 0x140019c62
mov dword [rbx], r12d
jmp 0x14001a9f7
mov qword [rbx + rax*8 + 0x860], r9
movsxd rax, dword [rbx + 0x1468]
lea rcx, [rbx + rax*4]
cmp dword [rcx + 0x1064], 0
jne 0x140019c84
mov dword [rcx + 0x1064], edx
movsxd rax, dword [rbx + 0x1468]
dec dword [rbx + rax*4 + 0x1064]
movsxd rax, dword [rbx + 0x1468]
cmp dword [rbx + rax*4 + 0x1064], 0
jle 0x140019cb1
mov rax, qword [rbx + rax*8 + 0x60]
mov qword [rbx + 0x58], rax
jmp 0x14001a9f7
dec eax
mov dword [rbx + 0x1468], eax
jmp 0x14001a9f7
inc dword [rbx + 0x24]
jmp 0x14001a9f7
dec dword [rbx + 0x24]
jmp 0x14001a9f7
movzx edx, byte [r9]
lea rcx, [r9 + 1]
mov qword [rbx + 0x58], rcx
movzx eax, byte [rcx]
shl edx, 8
or edx, eax
lea rax, [rcx + 1]
mov ecx, dword [rbx + 8]
mov qword [rbx + 0x58], rax
movzx r8d, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
mov rax, qword [r15 + 0x58]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0xa8]
jmp 0x14001a9f7
movzx ecx, byte [r9]
lea rax, [r9 + 1]
mov qword [rbx + 0x58], rax
movzx edx, byte [rax]
inc rax
shl cx, 8
movsx r8d, cx
mov ecx, dword [rbx + 8]
or r8d, edx
mov edx, dword [rbx + 0xc]
mov dword [rbx + 0x48], r8d
mov qword [rbx + 0x58], rax
mov rax, qword [r15 + 0x58]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0x88]
jmp 0x14001a9f7
movzx ecx, byte [r9]
lea rax, [r9 + 1]
mov qword [rbx + 0x58], rax
xorps xmm2, xmm2
movzx edx, byte [rax]
xorps xmm3, xmm3
inc rax
mov qword [rbp - 0x65], r12
mov qword [rbx + 0x58], rax
mov qword [rbp - 0x45], r12
mov dword [rbp - 0x5d], ecx
movzx r8d, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
mov dword [rbp - 0x59], edx
mov dword [rbp - 0x51], r8d
movzx r10d, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
mov dword [rbp - 0x4d], r10d
movzx r9d, byte [rax]
inc rax
mov dword [rbp - 0x55], r9d
mov qword [rbx + 0x58], rax
test cl, cl
jne 0x140019dc1
test dl, dl
jne 0x140019dc1
test r8b, r8b
jne 0x140019dc1
test r9b, r9b
jne 0x140019dc1
mov dword [rbp - 0x69], r12d
test r10b, r10b
je 0x140019dc8
mov dword [rbp - 0x69], 1
mov rax, qword [r15 + 0x58]
lea r8, [rbp - 0x19]
movaps xmm0, xmmword [rbp - 0x69]
mov ecx, dword [rbx + 8]
movaps xmm1, xmmword [rbp - 0x59]
mov edx, dword [rbx + 0xc]
movaps xmmword [rbp - 0x19], xmm0
mov rcx, qword [rax + rcx*8]
mov dword [rbp - 0x3d], r12d
mov dword [rbp - 0x49], r12d
movaps xmm0, xmmword [rbp - 0x49]
mov rax, qword [rcx]
movaps xmmword [rbp - 9], xmm1
movaps xmmword [rbp + 7], xmm0
movaps xmmword [rbp + 0x17], xmm2
movaps xmmword [rbp + 0x27], xmm3
call qword [rax + 0xb8]
jmp 0x14001a9f7
movzx r8d, byte [r9]
lea rax, [r9 + 1]
mov ecx, dword [rbx + 8]
mov edx, dword [rbx + 0xc]
mov qword [rbx + 0x58], rax
mov rax, qword [r15 + 0x58]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0xc0]
jmp 0x14001a9f7
movzx r10d, byte [r9]
lea rax, [r9 + 1]
mov qword [rbp - 0x65], r12
xorps xmm2, xmm2
mov qword [rbp - 0x5d], r12
xorps xmm3, xmm3
mov qword [rbp - 0x55], r12
mov qword [rbp - 0x4d], r12
mov qword [rbp - 0x45], r12
movdqa xmmword [rbp - 0x39], xmm2
movdqa xmmword [rbp - 0x29], xmm3
mov dword [rbp - 0x3d], r10d
mov qword [rbx + 0x58], rax
test r10b, r10b
je 0x140019f00
movzx r9d, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
mov dword [rbp - 0x69], 1
mov dword [rbp - 0x39], r9d
movzx edx, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
shl edx, 8
movzx ecx, byte [rax]
lea r8, [rax + 1]
mov qword [rbx + 0x58], r8
or edx, ecx
movzx eax, byte [r8]
lea rcx, [r8 + 1]
mov qword [rbx + 0x58], rcx
mov dword [rbp - 0x31], eax
mov dword [rbp - 0x35], edx
movzx edx, byte [rcx]
inc rcx
mov qword [rbx + 0x58], rcx
mov dword [rbp - 0x2d], edx
movzx eax, byte [rcx]
mov dword [rbp - 0x29], eax
lea rax, [rcx + 1]
mov qword [rbx + 0x58], rax
cmp r10b, 2
jne 0x140019eee
test r9b, r9b
jne 0x140019eee
neg edx
mov dword [rbx + 0x4c], edx
movdqa xmm3, xmmword [rbp - 0x29]
movdqa xmm2, xmmword [rbp - 0x39]
jmp 0x140019f0c
mov edx, r12d
mov dword [rbx + 0x4c], edx
movdqa xmm3, xmmword [rbp - 0x29]
movdqa xmm2, xmmword [rbp - 0x39]
jmp 0x140019f0c
add rax, 6
mov dword [rbp - 0x69], r12d
mov qword [rbx + 0x58], rax
mov rax, qword [r15 + 0x58]
lea r8, [rbp - 0x19]
movaps xmm0, xmmword [rbp - 0x69]
mov ecx, dword [rbx + 8]
movaps xmm1, xmmword [rbp - 0x59]
mov edx, dword [rbx + 0xc]
movaps xmmword [rbp - 0x19], xmm0
mov rcx, qword [rax + rcx*8]
movaps xmm0, xmmword [rbp - 0x49]
movaps xmmword [rbp - 9], xmm1
movaps xmmword [rbp + 7], xmm0
mov rax, qword [rcx]
movaps xmmword [rbp + 0x17], xmm2
movaps xmmword [rbp + 0x27], xmm3
call qword [rax + 0xc8]
jmp 0x14001a9f7
movzx r8d, byte [r9]
lea rax, [r9 + 1]
mov ecx, dword [rbx + 8]
mov edx, dword [rbx + 0xc]
mov qword [rbx + 0x58], rax
mov rax, qword [r15 + 0x58]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0xd0]
jmp 0x14001a9f7
movzx edx, byte [r9]
lea rax, [r9 + 1]
mov ecx, dword [rbx + 8]
mov qword [rbx + 0x58], rax
mov rax, qword [r15 + 0x58]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0xd8]
jmp 0x14001a9f7
movzx edx, byte [r9]
lea rax, [r9 + 1]
mov ecx, dword [rbx + 8]
mov qword [rbx + 0x58], rax
mov rax, qword [r15 + 0x58]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0xe0]
jmp 0x14001a9f7
movsx r10d, byte [r9]
lea rax, [r9 + 1]
shl r10d, 6
mov dword [rbx + 0x44], r10d
mov qword [rbx + 0x58], rax
mov rcx, qword [r15 + 0x178]
test rcx, rcx
je 0x14001a9f7
movsxd rax, dword [rbx + 0xc]
movsxd r9, dword [rbx + 8]
mov r8, qword [rcx + 8]
lea rdx, [rax + rax*4]
mov rax, qword [r8 + r9*8]
mov dword [rax + rdx*8 + 0x108], r10d
mov rax, qword [rcx]
call qword [rax + 0x18]
jmp 0x14001a9f7
movzx edx, byte [r9]
lea rcx, [r9 + 1]
mov qword [rbx + 0x58], rcx
shl edx, 8
mov dword [rbx + 0x28], edx
movzx eax, byte [rcx]
or eax, edx
mov edx, dword [rbx + 0xc]
mov dword [rbx + 0x28], eax
lea rax, [rcx + 1]
mov ecx, dword [rbx + 8]
mov qword [rbx + 0x58], rax
mov rax, qword [r15 + 0x58]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0x80]
jmp 0x14001a9f7
movzx edi, byte [r9]
lea rax, [r9 + 1]
mov r9d, dword [rbx + 0x20]
mov qword [rbx + 0x58], rax
movzx esi, byte [rax]
add rax, 2
mov qword [rbx + 0x58], rax
movzx ecx, byte [rax]
shl ecx, 8
inc rax
mov dword [rbx + 0x28], ecx
mov qword [rbx + 0x58], rax
movzx edx, byte [rax]
or edx, ecx
inc rax
mov dword [rbx + 0x28], edx
mov qword [rbx + 0x58], rax
test r9d, r9d
jne 0x14001a09c
cmp dword [rbx + 0x1c], r9d
jne 0x14001a09c
lea rax, [rbx + 0x2c]
shr edx, 3
imul edx, dword [rbx + 0x18]
mov rcx, rax
jmp 0x14001a0c8
mov r8d, dword [rbx + 0x1c]
lea rax, [rbx + 0x2c]
mov rcx, rax
test r8d, r8d
je 0x14001a0bd
cmp edx, r8d
jle 0x14001a0b6
sub edx, r8d
jmp 0x14001a0c8
mov edx, 1
jmp 0x14001a0c8
mov dword [rbx + 0x28], r9d
mov edx, r9d
mov dword [rbx + 0x20], r12d
mov dword [rcx], edx
mov eax, dword [rax]
mov dword [rbx + 0x54], eax
mov eax, dword [rbx + 0x28]
mov dword [rbx + 0x50], eax
cmp dil, 1
jbe 0x14001a124
cmp dword [rbx + 0x1470], 0
jne 0x14001a115
mov rax, qword [r15 + 0x58]
mov ecx, dword [rbx + 8]
mov r8, qword [rbx + 0x58]
mov edx, dword [rbx + 0xc]
movzx r9d, dil
mov rcx, qword [rax + rcx*8]
dec r9d
mov eax, dword [rbx + 0x18]
mov dword [rsp + 0x28], eax
mov eax, dword [rbx + 0x24]
mov r10, qword [rcx]
mov dword [rsp + 0x20], eax
call qword [r10 + 0x138]
movzx eax, dil
lea ecx, [rax*4 - 4]
add qword [rbx + 0x58], rcx
cmp dword [rbx + 0x146c], 1
jne 0x14001a238
mov r9d, dword [rbx + 0x14bc]
test r9d, r9d
je 0x14001a157
mov eax, dword [rbx + 0x14c0]
mov dword [rbx + 0x14ec], eax
mov dword [rbx + 0x14e8], r12d
mov dword [rbx + 0x14cc], r12d
cmp dword [r15 + 0x174], 0
mov r8d, esi
mov edx, dword [rbx + 0x24]
ja 0x14001a21e
lea eax, [rdx + rdx*2]
mov dword [rsp + 0x20], edx
mov edx, dword [rbx + 0xc]
lea ecx, [rsi + rax*4]
shl ecx, 6
mov dword [rbx + 0x30], ecx
mov ecx, dword [rbx + 8]
mov rax, qword [r15 + 0x58]
mov rcx, qword [rax + rcx*8]
test r9d, r9d
je 0x14001a1aa
movsxd rax, dword [rbx + 0x14e8]
mov r10, qword [rcx]
mov r9d, dword [rbx + rax*4 + 0x14d0]
add r9d, dword [rbx + 0x44]
call qword [r10 + 0x60]
jmp 0x14001a1b4
mov rax, qword [rcx]
mov r9d, dword [rbx + 0x44]
call qword [rax + 0x60]
mov r10, qword [r15 + 0x178]
test r10, r10
je 0x14001a21e
cmp dword [rbx + 0x14bc], 0
mov rdx, qword [r10 + 8]
je 0x14001a1fa
movsxd rax, dword [rbx + 0x14e8]
movsxd r8, dword [rbx + 8]
mov r9d, dword [rbx + rax*4 + 0x14d0]
movsxd rax, dword [rbx + 0xc]
add r9d, dword [rbx + 0x30]
lea rcx, [rax + rax*4]
mov rax, qword [rdx + r8*8]
mov dword [rax + rcx*8 + 0x104], r9d
jmp 0x14001a215
movsxd rax, dword [rbx + 0xc]
movsxd r9, dword [rbx + 8]
lea r8, [rax + rax*4]
mov eax, dword [rbx + 0x30]
mov rdx, qword [rdx + r9*8]
mov dword [rdx + r8*8 + 0x104], eax
mov rax, qword [r10]
mov rcx, r10
call qword [rax + 0x18]
mov rdx, rbx
mov rcx, r15
call fcn.14001b610
mov dword [rbx + 0x1484], 1
jmp 0x14001a2f5
cmp dword [rbx + 0x4c], 0
jne 0x14001a2f5
cmp dword [rbx + 0x14bc], 0
jne 0x14001a2f5
cmp dword [r15 + 0x174], 0
mov r8d, esi
mov edx, dword [rbx + 0x24]
ja 0x14001a2f5
mov r9d, dword [rbx + 0x44]
lea eax, [rdx + rdx*2]
lea ecx, [rsi + rax*4]
mov dword [rsp + 0x20], edx
mov edx, dword [rbx + 0xc]
shl ecx, 6
mov dword [rbx + 0x30], ecx
mov rax, qword [r15 + 0x58]
mov ecx, dword [rbx + 8]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0x60]
mov r10, qword [r15 + 0x178]
test r10, r10
je 0x14001a2f5
cmp dword [rbx + 0x14bc], 0
mov rdx, qword [r10 + 8]
je 0x14001a2d1
movsxd rax, dword [rbx + 0x14e8]
movsxd r8, dword [rbx + 8]
mov r9d, dword [rbx + rax*4 + 0x14d0]
movsxd rax, dword [rbx + 0xc]
add r9d, dword [rbx + 0x30]
lea rcx, [rax + rax*4]
mov rax, qword [rdx + r8*8]
mov dword [rax + rcx*8 + 0x104], r9d
jmp 0x14001a2ec
movsxd rax, dword [rbx + 0xc]
movsxd r9, dword [rbx + 8]
lea r8, [rax + rax*4]
mov eax, dword [rbx + 0x30]
mov rdx, qword [rdx + r9*8]
mov dword [rdx + r8*8 + 0x104], eax
mov rax, qword [r10]
mov rcx, r10
call qword [rax + 0x18]
mov dword [rbx + 0x146c], 1
cmp r14b, 0x30
jne 0x14001a351
mov rax, qword [rbx + 0x58]
movzx ecx, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
movzx edx, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
movzx r8d, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
mov eax, dword [rbx + 0x30]
mov dword [rbx + 0x3c], eax
test cl, cl
jns 0x14001a338
movzx ecx, dl
add cl, byte [rbx + 0x24]
movzx eax, cl
mov ecx, r8d
mov dword [rbx + 0x24], eax
shl ecx, 6
lea eax, [rax + rax*2]
shl eax, 8
add ecx, eax
jmp 0x14001a3d0
mov eax, dword [rbx + 0x14f8]
test eax, eax
jle 0x14001a3c0
cmp eax, 1
jne 0x14001a381
mov eax, dword [rbx + 0x14fc]
mov ecx, dword [rbx + 0x28]
mov dword [rbx + 0x1500], eax
cmp eax, ecx
jle 0x14001a379
mov dword [rbx + 0x1500], ecx
mov eax, dword [rbx + 0x30]
mov dword [rbx + 0x40], eax
jmp 0x14001a39e
cmp eax, 2
jne 0x14001a39e
mov eax, dword [rbx + 0x28]
sub eax, dword [rbx + 0x14fc]
mov dword [rbx + 0x1500], eax
jns 0x14001a39e
mov dword [rbx + 0x1500], r12d
mov eax, dword [rbx + 0x1500]
mov ecx, dword [rbx + 0x30]
mov edx, ecx
mov dword [rbx + 0x1504], eax
test eax, eax
jle 0x14001a3bb
mov eax, dword [rbx + 0x34]
test eax, eax
cmovne edx, eax
mov dword [rbx + 0x3c], edx
jmp 0x14001a3d0
mov ecx, dword [rbx + 0x30]
mov dword [rbx + 0x3c], ecx
mov dword [rbx + 0x1504], 0xffffffff
mov edx, 0x40
mov rax, rbx
mov dword [rbx + rdx], ecx
mov eax, dword [rbx + 0x30]
mov dword [rbx + 0x34], eax
jmp 0x14001a9f7
movzx edi, byte [r9]
lea rax, [r9 + 1]
mov qword [rbx + 0x58], rax
movzx esi, byte [rax]
add rax, 2
mov qword [rbx + 0x58], rax
movzx ecx, byte [rax]
shl ecx, 8
inc rax
mov dword [rbx + 0x28], ecx
mov qword [rbx + 0x58], rax
movzx edx, byte [rax]
lea r8, [rax + 1]
mov eax, dword [rbx + 0x20]
or edx, ecx
mov dword [rbx + 0x28], edx
mov qword [rbx + 0x58], r8
mov dword [rbx + 0x2c], 0xffffffff
test eax, eax
jle 0x14001a430
mov dword [rbx + 0x28], eax
jmp 0x14001a432
mov eax, edx
mov dword [rbx + 0x50], eax
mov dword [rbx + 0x54], eax
cmp dil, 1
jbe 0x14001a483
cmp dword [rbx + 0x1470], 0
jne 0x14001a474
mov rax, qword [r15 + 0x58]
mov ecx, dword [rbx + 8]
mov edx, dword [rbx + 0xc]
movzx r9d, dil
dec r9d
mov rcx, qword [rax + rcx*8]
mov eax, dword [rbx + 0x18]
mov dword [rsp + 0x28], eax
mov eax, dword [rbx + 0x24]
mov r10, qword [rcx]
mov dword [rsp + 0x20], eax
call qword [r10 + 0x138]
movzx eax, dil
lea ecx, [rax*4 - 4]
add qword [rbx + 0x58], rcx
cmp dword [rbx + 0x146c], 0
je 0x14001a4d8
cmp dword [rbx + 0x14bc], 0
je 0x14001a4af
mov eax, dword [rbx + 0x14c0]
mov dword [rbx + 0x14ec], eax
mov dword [rbx + 0x14e8], r12d
mov dword [rbx + 0x14cc], r12d
mov r8d, dword [rbx + 0x24]
mov r9d, esi
mov rdx, rbx
mov rcx, r15
call fcn.14001b430
mov rdx, rbx
mov dword [rbx + 0x1484], 1
mov rcx, r15
call fcn.14001b610
jmp 0x14001a4f9
cmp dword [rbx + 0x4c], 0
jne 0x14001a4f9
cmp dword [rbx + 0x14bc], 0
jne 0x14001a4f9
mov r8d, dword [rbx + 0x24]
mov r9d, esi
mov rdx, rbx
mov rcx, r15
call fcn.14001b430
mov dword [rbx + 0x146c], r12d
cmp r14b, 0x31
jne 0x14001a54f
mov rax, qword [rbx + 0x58]
movzx ecx, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
movzx edx, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
movzx r8d, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
mov eax, dword [rbx + 0x30]
mov dword [rbx + 0x3c], eax
test cl, cl
jns 0x14001a539
movzx ecx, dl
add cl, byte [rbx + 0x24]
movzx eax, cl
mov ecx, r8d
mov dword [rbx + 0x24], eax
shl ecx, 6
lea eax, [rax + rax*2]
shl eax, 8
add ecx, eax
jmp 0x14001a5c4
mov eax, dword [rbx + 0x14f8]
test eax, eax
jle 0x14001a5be
cmp eax, 1
jne 0x14001a57f
mov eax, dword [rbx + 0x14fc]
mov ecx, dword [rbx + 0x28]
mov dword [rbx + 0x1500], eax
cmp eax, ecx
jle 0x14001a577
mov dword [rbx + 0x1500], ecx
mov eax, dword [rbx + 0x30]
mov dword [rbx + 0x40], eax
jmp 0x14001a59c
cmp eax, 2
jne 0x14001a59c
mov eax, dword [rbx + 0x28]
sub eax, dword [rbx + 0x14fc]
mov dword [rbx + 0x1500], eax
jns 0x14001a59c
mov dword [rbx + 0x1500], r12d
mov eax, dword [rbx + 0x1500]
mov ecx, dword [rbx + 0x30]
mov edx, ecx
mov dword [rbx + 0x1504], eax
test eax, eax
jle 0x14001a5b9
mov eax, dword [rbx + 0x34]
test eax, eax
cmovne edx, eax
mov dword [rbx + 0x3c], edx
jmp 0x14001a5c4
mov ecx, dword [rbx + 0x30]
mov dword [rbx + 0x3c], ecx
mov edx, 0x40
mov rax, rbx
mov dword [rdx + rbx], ecx
mov eax, dword [rbx + 0x30]
mov dword [rbx + 0x34], eax
jmp 0x14001a9f7
movzx eax, byte [r9]
lea rcx, [r9 + 1]
mov dword [rbx + 0x14f8], eax
lea rax, [rcx + 1]
mov qword [rbx + 0x58], rcx
movzx r8d, byte [rcx]
mov qword [rbx + 0x58], rax
movzx ecx, byte [rax]
inc rax
shl r8d, 8
or r8d, ecx
mov qword [rbx + 0x58], rax
mov dword [rbx + 0x14fc], r8d
mov dword [rbx + 0x1504], r10d
mov dword [rbx + 0x34], r12d
jmp 0x14001a9f7
mov ecx, dword [rbx + 0x14]
lea rax, [r9 + 1]
movzx edx, byte [r9]
lea rdi, [rbx + 0x10]
mov qword [rbx + 0x58], rax
test ecx, ecx
jns 0x14001a643
mov ecx, dword [rdi]
sub ecx, edx
mov edx, r12d
cmovns edx, ecx
jmp 0x14001a68d
sub ecx, edx
mov esi, r12d
cmovns esi, ecx
mov ecx, dword [rbx + 8]
mov edx, dword [rbx + 0xc]
mov dword [rbx + 0x14], esi
mov rax, qword [r15 + 0x58]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0xf0]
test eax, eax
jne 0x14001a676
movsxd rax, esi
mov edx, dword [r13 + rax*4 + 0x32af0]
jmp 0x14001a68d
imul ecx, dword [rbx + 0x14], 0x7f
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
mov rax, r15
mov dword [rdi], edx
mov ecx, 0x58
add rax, rcx
cmp dword [rbx + 0x146c], 0
jne 0x14001a9f7
cmp dword [r15 + 0x174], 0
ja 0x14001a9f7
mov rax, qword [rax]
jmp 0x140019aae
mov ecx, dword [rbx + 0x14]
lea rax, [r9 + 1]
movzx edx, byte [r9]
lea rdi, [rbx + 0x10]
mov qword [rbx + 0x58], rax
test ecx, ecx
jns 0x14001a6df
add edx, dword [rdi]
cmp edx, 0x7f
cmovg edx, r11d
jmp 0x14001a68d
lea esi, [rcx + rdx]
cmp esi, 0xf
cmovg esi, r8d
jmp 0x14001a64b
movzx ecx, byte [r9]
lea rax, [r9 + 1]
mov qword [rbx + 0x58], rax
movzx r12d, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
movzx r14d, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
test cl, cl
jne 0x14001a749
mov edx, dword [rbx + 0x10]
lea rsi, [rbx + 0x10]
cmp r12b, 1
jne 0x14001a734
add edx, r14d
cmp edx, 0x7f
jle 0x14001a741
mov edx, r11d
mov edi, r10d
jmp 0x14001a9b1
sub edx, r14d
mov r8d, 0
cmovs edx, r8d
mov edi, r10d
jmp 0x14001a9b1
mov eax, dword [rbx + 0x14]
xor ecx, ecx
mov esi, dword [rbx + 0x10]
mov edi, ecx
test eax, eax
js 0x14001a75e
mov edi, eax
jmp 0x14001a955
mov rax, qword [r15 + 0x58]
mov ecx, dword [rbx + 8]
mov edx, dword [rbx + 0xc]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0xf0]
test eax, eax
jne 0x14001a935
lea r10, str.Y__begjmnruwz
mov edx, 0xff
mov eax, esi
sub eax, dword [r10 - 4]
mov ecx, eax
neg ecx
cmovs ecx, eax
mov eax, esi
cmp ecx, edx
cmovl edx, ecx
sub eax, dword [r10]
mov r9d, eax
neg r9d
cmovs r9d, eax
xor r8d, r8d
cmp ecx, 0xff
mov eax, 0xffffffff
cmovge r8d, eax
cmp r9d, edx
jge 0x14001a7c8
mov edx, r9d
lea r8d, [rax + 2]
mov eax, esi
sub eax, dword [r10 + 4]
mov ecx, eax
neg ecx
cmovs ecx, eax
cmp ecx, edx
jge 0x14001a7e1
mov edx, ecx
mov r8d, 2
mov eax, esi
sub eax, dword [r10 + 8]
mov ecx, eax
neg ecx
cmovs ecx, eax
cmp ecx, edx
jge 0x14001a7fa
mov edx, ecx
mov r8d, 3
mov eax, esi
sub eax, dword [r10 + 0xc]
mov ecx, eax
neg ecx
cmovs ecx, eax
cmp ecx, edx
jge 0x14001a813
mov edx, ecx
mov r8d, 4
mov eax, esi
sub eax, dword [r10 + 0x10]
mov ecx, eax
neg ecx
cmovs ecx, eax
cmp ecx, edx
jge 0x14001a82c
mov edx, ecx
mov r8d, 5
mov eax, esi
sub eax, dword [r10 + 0x14]
mov ecx, eax
neg ecx
cmovs ecx, eax
cmp ecx, edx
jge 0x14001a845
mov edx, ecx
mov r8d, 6
mov eax, esi
sub eax, dword [r10 + 0x18]
mov ecx, eax
neg ecx
cmovs ecx, eax
cmp ecx, edx
jge 0x14001a85e
mov edx, ecx
mov r8d, 7
mov eax, esi
sub eax, dword [r10 + 0x1c]
mov ecx, eax
neg ecx
cmovs ecx, eax
cmp ecx, edx
jge 0x14001a877
mov edx, ecx
mov r8d, 8
mov eax, esi
sub eax, dword [r10 + 0x20]
mov ecx, eax
neg ecx
cmovs ecx, eax
cmp ecx, edx
jge 0x14001a890
mov edx, ecx
mov r8d, 9
mov eax, esi
sub eax, dword [r10 + 0x24]
mov ecx, eax
neg ecx
cmovs ecx, eax
cmp ecx, edx
jge 0x14001a8a9
mov edx, ecx
mov r8d, 0xa
mov eax, esi
sub eax, dword [r10 + 0x28]
mov ecx, eax
neg ecx
cmovs ecx, eax
cmp ecx, edx
jge 0x14001a8c2
mov edx, ecx
mov r8d, 0xb
mov eax, esi
sub eax, dword [r10 + 0x2c]
mov ecx, eax
neg ecx
cmovs ecx, eax
cmp ecx, edx
jge 0x14001a8db
mov edx, ecx
mov r8d, InitCommonControls
mov eax, esi
sub eax, dword [r10 + 0x30]
mov ecx, eax
neg ecx
cmovs ecx, eax
cmp ecx, edx
jge 0x14001a8f4
mov edx, ecx
mov r8d, InitCommonControls
mov eax, esi
sub eax, dword [r10 + 0x34]
mov ecx, eax
neg ecx
cmovs ecx, eax
cmp ecx, edx
jge 0x14001a90d
mov edx, ecx
mov r8d, InitCommonControls
sub esi, dword [r10 + 0x38]
mov eax, esi
neg eax
cmovs eax, esi
cmp eax, edx
mov eax, InitCommonControls
cmovl r8d, eax
test r8d, r8d
js 0x14001a94c
movsxd rax, r8d
mov edi, dword [r13 + rax*4 + 0x32af0]
jmp 0x14001a94c
imul ecx, esi, 0xf
mov eax, 0x81020409
imul ecx
lea edi, [rcx + rdx]
sar edi, 6
mov eax, edi
shr eax, 0x1f
add edi, eax
xor ecx, ecx
mov dword [rbx + 0x14], edi
lea r8d, [rcx + 0xf]
mov eax, r14d
cmp r12b, 1
jne 0x14001a96a
add edi, eax
cmp edi, 0xf
jle 0x14001a96f
mov edi, r8d
jmp 0x14001a96f
sub edi, eax
cmovs edi, ecx
mov rax, qword [r15 + 0x58]
lea rsi, [rbx + 0x10]
mov ecx, dword [rbx + 8]
mov edx, dword [rbx + 0xc]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0xf0]
test eax, eax
jne 0x14001a99b
movsxd rax, edi
mov edx, dword [r13 + rax*4 + 0x32af0]
jmp 0x14001a9b1
imul ecx, edi, 0x7f
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
mov r9d, 0x14
mov rax, r15
mov ecx, 0x58
mov r8, rbx
add rax, rcx
mov dword [r9 + rbx], edi
mov dword [rsi], edx
cmp dword [rbx + 0x146c], 0
jne 0x14001a9f4
cmp dword [r15 + 0x174], 0
ja 0x14001a9f4
mov rax, qword [rax]
mov r8d, edx
mov ecx, dword [rbx + 8]
mov edx, dword [rbx + 0xc]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0x68]
xor r12d, r12d
cmp dword [rbx + 0x28], 0
mov r10d, 0xffffffff
lea r8d, [r10 + 0x10]
lea r11d, [r8 + 0x70]
je 0x140019825
mov r13d, dword [rbp + 0x67]
cmp dword [rbx + 0x147c], 0
jne 0x14001aa22
inc dword [rbx + 0x14f0]
mov ecx, dword [rbx + 0x2c]
lea eax, [rcx - 1]
cmp eax, 0xfffffffd
ja 0x14001aa42
lea eax, [rcx - 1]
mov dword [rbx + 0x2c], eax
test eax, eax
jne 0x14001aa42
mov rdx, rbx
mov rcx, r15
call fcn.14001b700
mov r11d, dword [rbx + 0x28]
mov edx, dword [rbx + 0x40]
dec r11d
mov r9d, dword [rbx + 0x30]
mov dword [rbx + 0x28], r11d
cmp r9d, edx
je 0x14001b02c
mov r8d, dword [rbx + 0x3c]
cmp edx, r8d
je 0x14001b02c
mov r10d, dword [rbx + 0x1504]
sub edx, r8d
test r10d, r10d
jns 0x14001b050
mov eax, dword [rbx + 0x54]
sub eax, r11d
imul eax, edx
cdq
idiv dword [rbx + 0x54]
lea edi, [rax + r8]
mov dword [rbx + 0x30], edi
cmp r9d, edi
je 0x14001b1d0
cmp dword [r15 + 0x174], 0
ja 0x14001b1d0
cmp dword [rbx + 0x14bc], 0
mov ecx, dword [rbx + 8]
mov rax, qword [r15 + 0x58]
mov edx, dword [rbx + 0xc]
mov rcx, qword [rax + rcx*8]
mov r9, qword [rcx]
je 0x14001b07d
movsxd rax, dword [rbx + 0x14e8]
mov r8d, dword [rbx + rax*4 + 0x14d0]
add r8d, edi
add r8d, dword [rbx + 0x44]
jmp 0x14001b084
movzx eax, byte [r9]
lea rdx, [r9 + 1]
mov qword [rbx + 0x58], rdx
test al, al
jne 0x14001aaf6
mov eax, r12d
jmp 0x14001ab01
mov dword [rbx + 0x1488], eax
mov eax, 1
mov dword [rbx + 0x1480], eax
movzx ecx, byte [rdx]
inc rdx
mov qword [rbx + 0x58], rdx
shl ecx, 8
mov dword [rbx + 0x148c], ecx
movzx r8d, byte [rdx]
or r8d, ecx
lea rcx, [rdx + 1]
mov qword [rbx + 0x58], rcx
mov dword [rbx + 0x148c], r8d
movsx eax, byte [rcx]
inc rcx
mov dword [rbx + 0x1494], eax
mov qword [rbx + 0x58], rcx
movzx eax, byte [rcx]
mov dword [rbx + 0x1498], eax
lea rax, [rcx + 1]
mov qword [rbx + 0x58], rax
movzx r9d, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
lea rdx, [rax + 1]
mov dword [rbx + 0x14a4], r9d
movzx ecx, byte [rax]
mov eax, ecx
mov qword [rbx + 0x58], rdx
shl eax, 8
mov dword [rbx + 0x14ac], eax
movzx ecx, byte [rdx]
or ecx, eax
lea rax, [rdx + 1]
mov qword [rbx + 0x58], rax
mov dword [rbx + 0x14ac], ecx
mov dword [rbx + 0x14b0], ecx
test r8d, r8d
jne 0x14001a9f7
mov dword [rbx + 0x1490], r12d
mov qword [rbx + 0x149c], 0
mov dword [rbx + 0x14a8], r9d
jmp 0x14001a9f7
mov eax, dword [r15 + 0x174]
test eax, eax
je 0x14001a9f7
dec eax
mov dword [r15 + 0x174], eax
jmp 0x14001a9f7
mov rax, qword [r15 + 0x58]
mov ecx, dword [rbx + 8]
mov rcx, qword [rax + rcx*8]
lea rax, [r9 + 1]
mov rdx, qword [rcx + 0x48]
movzx ecx, byte [r9]
mov qword [rbx + 0x58], rax
test cl, cl
mov eax, dword [rbx + 0xc]
mov ecx, dword [rdx + 0x10]
jne 0x14001ac06
btr ecx, eax
mov dword [rdx + 0x10], ecx
jmp 0x14001a9f7
bts ecx, eax
mov dword [rdx + 0x10], ecx
jmp 0x14001a9f7
movzx ecx, byte [r9]
lea rax, [r9 + 1]
mov qword [rbx + 0x58], rax
movzx edx, byte [rax]
inc rax
shl cx, 8
movsx ecx, cx
or ecx, edx
mov qword [rbx + 0x58], rax
mov dword [rbx + 0x4c], ecx
jmp 0x14001a9f7
movzx r8d, byte [r9]
lea rax, [r9 + 1]
mov ecx, dword [rbx + 8]
mov edx, dword [rbx + 0xc]
mov qword [rbx + 0x58], rax
mov rax, qword [r15 + 0x58]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0xf8]
jmp 0x14001a9f7
movzx r8d, byte [r9]
lea rax, [r9 + 1]
mov qword [rbx + 0x58], rax
movzx edx, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
mov qword [rbx + 0x14c0], r12
mov qword [rbx + 0x14c8], r12
mov qword [rbx + 0x14d0], r12
mov qword [rbx + 0x14d8], r12
shl r8d, 8
or r8d, edx
mov qword [rbx + 0x14e0], r12
mov qword [rbx + 0x14e8], r12
jne 0x14001acb5
mov dword [rbx + 0x14bc], r12d
jmp 0x14001a9f7
mov rax, qword [rbx + 0x58]
mov r9d, r12d
mov dword [rbx + 0x14bc], 1
mov dword [rbx + 0x14c0], r8d
movzx ecx, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
mov dword [rbx + 0x14c4], ecx
test cl, cl
je 0x14001a9f7
lea r8, [rbx + 0x14d0]
nop dword [rax]
mov rax, qword [rbx + 0x58]
lea r8, [r8 + 4]
inc r9d
movzx ecx, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
shl cx, 8
movsx ecx, cx
movzx edx, byte [rax]
inc rax
or ecx, edx
mov qword [rbx + 0x58], rax
mov dword [r8 - 4], ecx
cmp r9d, dword [rbx + 0x14c4]
jl 0x14001acf0
jmp 0x14001a9f7
movzx r8d, byte [r9]
lea rax, [r9 + 1]
mov qword [rbx + 0x58], rax
movzx edx, byte [rax]
inc rax
shl r8d, 8
or r8d, edx
mov qword [rbx + 0x58], rax
mov dword [rbx + 0x14c8], r8d
jmp 0x14001a9f7
movzx edx, byte [r9]
lea rax, [r9 + 1]
mov qword [rbx + 0x58], rax
lea r8, [rax + 1]
movzx ecx, byte [rax]
lea rax, [r8 + 1]
mov qword [rbx + 0x58], r8
movzx esi, byte [r8]
lea r8, [rax + 1]
mov qword [rbx + 0x58], rax
shl dx, 8
or dx, cx
shl si, 8
movzx ecx, byte [rax]
lea rax, [r8 + 1]
mov qword [rbx + 0x58], r8
or si, cx
movzx r9d, byte [r8]
lea r8, [rax + 1]
mov qword [rbx + 0x58], rax
movzx ecx, byte [rax]
lea rax, [r8 + 1]
mov qword [rbx + 0x58], r8
movzx r10d, byte [r8]
movzx r8d, si
mov qword [rbx + 0x58], rax
movzx r11d, byte [rax]
shl r9w, 8
or r9w, cx
shl r10w, 8
mov ecx, dword [rbx + 8]
inc rax
mov qword [rbx + 0x58], rax
or r10w, r11w
mov rax, qword [r15 + 0x58]
mov word [rsp + 0x20], r10w
mov rcx, qword [rax + rcx*8]
mov rdi, qword [rcx]
call qword [rdi + pe_nt_image_headers64]
jmp 0x14001a9f7
movzx r8d, byte [r9]
lea rcx, [r9 + 1]
mov edx, dword [rbx + 0xc]
mov qword [rbx + 0x58], rcx
movzx eax, byte [rcx]
shl r8w, 8
or r8w, ax
lea rax, [rcx + 1]
mov ecx, dword [rbx + 8]
mov qword [rbx + 0x58], rax
mov rax, qword [r15 + 0x58]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0x108]
mov rax, qword [rbx + 0x58]
mov ecx, dword [rbx + 8]
mov edx, dword [rbx + 0xc]
movzx r8d, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
mov rax, qword [r15 + 0x58]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0x118]
jmp 0x14001a9f7
movzx r8d, byte [r9]
lea rax, [r9 + 1]
mov ecx, dword [rbx + 8]
mov qword [rbx + 0x58], rax
movzx r9d, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
movzx edi, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
movzx edx, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
shl edx, 8
movzx r10d, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
add edx, r10d
mov rax, qword [r15 + 0x58]
mov dword [rsp + 0x28], edx
mov edx, dword [rbx + 0xc]
mov dword [rsp + 0x20], edi
mov rcx, qword [rax + rcx*8]
mov r11, qword [rcx]
call qword [r11 + 0x110]
jmp 0x14001a9f7
movzx r8d, byte [r9]
lea rax, [r9 + 1]
mov ecx, dword [rbx + 8]
mov edx, dword [rbx + 0xc]
mov qword [rbx + 0x58], rax
movzx r9d, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
mov rax, qword [r15 + 0x58]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0x120]
jmp 0x14001a9f7
movzx edi, byte [r9]
lea r8, [r9 + 1]
mov ecx, dword [rbx + 8]
mov r9d, edi
mov edx, dword [rbx + 0xc]
mov qword [rbx + 0x58], r8
mov rax, qword [r15 + 0x58]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0x128]
add qword [rbx + 0x58], rdi
mov r9, qword [rbx + 0x58]
movzx r8d, byte [r9]
lea rax, [r9 + 1]
mov ecx, dword [rbx + 8]
mov edx, dword [rbx + 0xc]
mov qword [rbx + 0x58], rax
mov rax, qword [r15 + 0x58]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0x130]
jmp 0x14001a9f7
movzx r8d, byte [r9]
lea rax, [r9 + 1]
mov ecx, dword [rbx + 8]
mov qword [rbx + 0x58], rax
movzx r9d, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
movzx r10d, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
movzx edx, byte [rax]
inc rax
mov qword [rbx + 0x58], rax
mov rax, qword [r15 + 0x58]
mov byte [rsp + 0x28], dl
mov edx, dword [rbx + 0xc]
mov byte [rsp + 0x20], r10b
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0x140]
jmp 0x14001a9f7
movzx edx, byte [r9]
lea rax, [r9 + 1]
mov ecx, dword [rbx + 8]
mov qword [rbx + 0x58], rax
mov rax, qword [r15 + 0x58]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx]
call qword [rax + 0xa0]
jmp 0x14001a9f7
mov dword [rbx + 0x147c], 1
mov dword [rbx], r12d
mov rdx, qword [r15 + 0x178]
test rdx, rdx
je 0x14001a9f7
movsxd rax, dword [rbx + 0xc]
movsxd r8, dword [rbx + 8]
mov rdx, qword [rdx + 8]
lea rcx, [rax + rax*4]
mov rax, qword [rdx + r8*8]
mov dword [rax + rcx*8 + 0x128], 1
jmp 0x14001a9f7
cmp eax, 0xff
je 0x14001b004
mov dword [rbx], r12d
jmp 0x14001a9f7
mov rax, qword [rbx + 0x60]
mov dword [rbx + 0x147c], 1
test rax, rax
je 0x14001afbe
cmp dword [rbx + 0x14f0], 0
jbe 0x14001afbe
inc dword [rbx + 0x14f4]
mov qword [rbx + 0x58], rax
jmp 0x14001afc1
mov r8d, dword [rbx + 0x3c]
cmp r8d, edx
je 0x14001b0dc
cmp dword [rbx + 0x1504], 0
jl 0x14001b0dc
mov r10d, dword [rbx + 0x1504]
sub edx, r8d
cmp dword [rbx + 0x14f8], 0
je 0x14001aa7d
mov ecx, dword [rbx + 0x1500]
mov eax, ecx
sub eax, r10d
imul eax, edx
cdq
idiv ecx
lea ecx, [r10 - 1]
mov dword [rbx + 0x1504], ecx
jmp 0x14001aa8a
mov r8d, dword [rbx + 0x44]
add r8d, edi
call qword [r9 + 0x58]
mov r11, qword [r15 + 0x178]
test r11, r11
je 0x14001b1d0
cmp dword [rbx + 0x14bc], 0
je 0x14001b1a4
movsxd rax, dword [rbx + 0x14e8]
movsxd r8, dword [rbx + 8]
mov rdx, qword [r11 + 8]
mov r9d, dword [rbx + rax*4 + 0x14d0]
movsxd rax, dword [rbx + 0xc]
add r9d, edi
add r9d, dword [rbx + 0x44]
lea rcx, [rax + rax*4]
mov rax, qword [rdx + r8*8]
mov dword [rax + rcx*8 + 0x104], r9d
jmp 0x14001b1c7
mov edi, dword [rbx + 0x4c]
add edi, r9d
mov dword [rbx + 0x30], edi
jns 0x14001b0f0
mov dword [rbx + 0x30], r12d
mov edi, r12d
jmp 0x14001b104
cmp edi, 0x17c0
jl 0x14001b104
mov dword [rbx + 0x30], 0x17c0
mov edi, 0x17c0
mov dword [rbx + 0x40], edi
mov dword [rbx + 0x3c], edi
cmp edi, r9d
je 0x14001b1d0
cmp dword [r15 + 0x174], 0
ja 0x14001b1d0
cmp dword [rbx + 0x14bc], 0
mov ecx, dword [rbx + 8]
mov rax, qword [r15 + 0x58]
mov edx, dword [rbx + 0xc]
mov rcx, qword [rax + rcx*8]
mov r9, qword [rcx]
je 0x14001b150
movsxd rax, dword [rbx + 0x14e8]
mov r8d, dword [rbx + rax*4 + 0x14d0]
add r8d, dword [rbx + 0x44]
jmp 0x14001b154
mov r8d, dword [rbx + 0x44]
add r8d, edi
call qword [r9 + 0x58]
mov r11, qword [r15 + 0x178]
test r11, r11
je 0x14001b1d0
cmp dword [rbx + 0x14bc], 0
je 0x14001b1a4
movsxd rax, dword [rbx + 0x14e8]
movsxd r8, dword [rbx + 8]
mov rdx, qword [r11 + 8]
mov r9d, dword [rbx + rax*4 + 0x14d0]
movsxd rax, dword [rbx + 0xc]
add r9d, dword [rbx + 0x44]
add r9d, edi
lea rcx, [rax + rax*4]
mov rax, qword [rdx + r8*8]
mov dword [rax + rcx*8 + 0x104], r9d
jmp 0x14001b1c7
movsxd rax, dword [rbx + 0xc]
movsxd r9, dword [rbx + 8]
mov r8, qword [r11 + 8]
mov r10d, dword [rbx + 0x44]
lea rdx, [rax + rax*4]
add r10d, edi
mov rax, qword [r8 + r9*8]
mov dword [rax + rdx*8 + 0x104], r10d
mov rax, qword [r11]
mov rcx, r11
call qword [rax + 0x18]
cmp dword [r15 + 0x19c], 0
jne 0x14001b1f1
mov rcx, r15
call fcn.14001b7c0
test eax, eax
je 0x14001b1f1
mov dword [r15 + 0x19c], 1
mov rcx, qword [r15 + 0x70]
inc r13d
mov rax, qword [r15 + 0x78]
mov r10d, 0xffffffff
sub rax, rcx
mov edx, r13d
sar rax, 3
mov dword [rbp + 0x67], r13d
lea r8d, [r10 + 0x10]
lea r11d, [r8 + 0x70]
cmp rdx, rax
jb 0x140019810
mov r14, qword [rsp + 0xd8]
mov rdi, qword [rsp + 0x118]
mov rsi, qword [rsp + 0x110]
mov rbx, qword [rsp + 0x108]
mov r10, qword [r15 + 0x178]
mov r15, qword [rsp + 0xd0]
mov r13, qword [rsp + 0xe0]
test r10, r10
je 0x14001b2d4
mov r9, qword [r10 + 8]
mov r11, r12
mov rax, qword [r10 + 0x10]
sub rax, r9
sar rax, 3
test rax, rax
je 0x14001b2d4
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [r9 + r11*8]
mov r8d, r12d
mov rcx, r9
cmp dword [rax], 0
jle 0x14001b2be
mov rdx, r12
mov rax, qword [r9 + r11*8]
cmp dword [rax + rdx + 0x128], 0
jne 0x14001b2a7
inc dword [rax + rdx + 0x120]
mov rcx, qword [r10 + 8]
inc r8d
add rdx, 0x28
mov r9, rcx
mov rax, qword [rcx + r11*8]
cmp r8d, dword [rax]
jl 0x14001b292
mov rax, qword [r10 + 0x10]
inc r11
sub rax, rcx
mov r9, rcx
sar rax, 3
cmp r11, rax
jb 0x14001b280
add rsp, 0xe8
pop r12
pop rbp
ret