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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x168
mov qword [rsp + 0x98], r9
mov rax, qword [0x140430040]
xor rax, rsp
mov qword [rsp + 0x160], rax
mov rax, qword [rcx]
mov r11, qword [rax]
cmp dword [r11 + 0x30], 0
jne 0x140276db0
mov rsi, r8
lea r10, [rsp + 0x118]
mov r15, qword [rcx + 0x10]
mov eax, dword [r15 + 0x38]
mov dword [rsp + 0x78], eax
test al, 0x20
mov r8d, 0x1bf
mov eax, Ordinal_27
cmove eax, r8d
mov r9d, dword [rsi + 0x64]
test r9d, 0x104
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x88], r11
jne 0x140276dfc
mov r8, qword [r11]
mov qword [rsp + 0x80], r8
movabs r8, 0xaaaaaaaaaaaaaaaa
mov qword [r10 + 0x40], r8
movaps xmm0, xmmword [0x1403d4b30]
movups xmmword [r10 + 0x30], xmm0
movups xmmword [r10 + 0x20], xmm0
movups xmmword [r10 + 0x10], xmm0
movups xmmword [r10], xmm0
movzx r13d, word [r15 + 0x18]
movzx r8d, word [r15 + 0x1a]
mov word [rsp + 0x5e], r8w
movzx r8d, word [r15 + 0x1c]
mov word [rsp + 0x5c], r8w
movzx r10d, word [r15 + 0x3e]
movzx ebx, word [r15 + 0x3c]
mov r8, qword [r15]
mov qword [rsp + 0xc8], r8
movzx r8d, word [r15 + 0x16]
mov dword [rsp + 0x74], r8d
mov r8d, dword [rdx + 0x44]
mov rdx, qword [rcx + 8]
mov qword [rsp + 0xf0], rdx
mov qword [rsp + 0xf8], rdx
mov byte [rsp + 0x118], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x100], xmm0
mov dword [rsp + 0x114], eax
movzx r9d, r13w
mov dword [rsp + 0x110], 0
mov dword [rsp + 0x11c], r8d
mov word [rsp + 0x119], 0x101
mov edx, r13d
test rsi, rsi
mov qword [rsp + 0x30], r9
mov word [rsp + 0x7e], r10w
je 0x140276565
mov rax, qword [rsi + 8]
mov rcx, qword [rsi + 0x18]
movzx eax, word [rax + r9*2]
mov dx, 0xffff
cmp ax, word [rcx + 0x34]
je 0x140276565
test ax, ax
js 0x140276668
movsx rdx, ax
mov rcx, qword [rcx + 8]
lea rdx, [rdx + rdx*2]
mov cl, byte [rcx + rdx*8 + 0xc]
mov byte [rsp + 0x118], cl
mov rcx, qword [rsi + 0x40]
mov rcx, qword [rcx + r9*8]
mov qword [rsp + 0x100], rcx
mov edx, eax
lea rcx, [rsp + 0xf0]
mov word [rcx + 0x58], dx
call fcn.140275e50
mov r14, rax
mov word [r15 + 0x12], 0
mov rax, qword [rsi + 0x10]
movsx r8, word [rax]
xor edi, edi
cmp r8, 0xb
jl 0x140276db9
movzx ecx, r8w
mov bp, Ordinal_41
mov rax, r8
cmp ecx, 0x100
mov r11, qword [rsp + 0x30]
jae 0x140276dc5
cmp rax, 0x10
jb 0x140276da8
mov rcx, rax
add ebp, 0xa
shr rcx, 1
cmp rax, 0x1f
mov rax, rcx
ja 0x1402765bd
and ecx, 7
lea rax, [0x140417bb0]
add bp, word [rax + rcx*2]
add ebp, 0xffffffd5
movzx edx, bx
test r14, r14
jne 0x1402766eb
mov rax, qword [rsp + 0xc8]
mov qword [r15], rax
mov word [r15 + 0x18], r13w
movzx eax, word [rsp + 0x5e]
mov word [r15 + 0x1a], ax
movzx eax, word [rsp + 0x5c]
mov word [r15 + 0x1c], ax
movzx ecx, word [rsp + 0x7e]
mov word [r15 + 0x3e], cx
mov eax, dword [rsp + 0x78]
mov dword [r15 + 0x38], eax
mov eax, dword [rsp + 0x74]
mov word [r15 + 0x16], ax
mov word [r15 + 0x3c], bx
cmp r13w, cx
jne 0x14027664e
lea eax, [r11 + 1]
movzx ecx, word [rsi + 0x5e]
cmp eax, ecx
setb al
cmp r13w, bx
sete cl
and cl, al
cmp cl, 1
je 0x140276679
mov rcx, qword [rsp + 0x160]
xor rcx, rsp
cmp rcx, qword [0x140430040]
je 0x14027668d
call fcn.140278ca0
int3
mov edx, eax
cmp ax, 0xfffe
jne 0x140276565
jmp 0x1402772a3
mov eax, 0xc0
and eax, dword [rsi + 0x64]
cmp eax, 0x80
jne 0x14027664e
jmp 0x1402772da
mov eax, edi
add rsp, 0x168
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rdx, qword [r14]
mov ecx, dword [rdx + 4]
test cl, 3
je 0x140276c59
mov edx, dword [rdx + 0x34]
cmp edx, dword [r10 + 0x44]
jne 0x140276c59
test al, 0x18
je 0x1402767b9
and ecx, 2
je 0x1402767b9
jmp 0x140276c59
movzx ecx, word [rsi + 0x5e]
dec ecx
mov al, 2
cmp ecx, r11d
je 0x1402767c5
jmp 0x1402767c3
lea eax, [rdx + 8]
and eax, 0xfffffff8
mov qword [rsp + 0xe8], rax
lea eax, [rax*8]
mov qword [rsp + 0xe0], rax
lea rax, [r15 + 0x58]
mov qword [rsp + 0xd8], rax
movsx ecx, bp
lea eax, [rcx - 0x31]
mov dword [rsp + 0xb8], eax
lea eax, [rcx - 0x1f]
mov dword [rsp + 0xb4], eax
lea eax, [rbp + 1]
mov dword [rsp + 0xb0], eax
lea eax, [rcx + 0x31]
mov dword [rsp + 0xbc], eax
mov qword [rsp + 0xa0], rcx
lea eax, [rcx + 0x1f]
mov dword [rsp + 0xac], eax
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x48], 0
mov qword [rsp + 0x50], r8
mov qword [rsp + 0x90], rdx
movzx r9d, word [r14 + 0x14]
cmp r9d, 0x100
mov r10, qword [rsp + 0x68]
je 0x140276e55
test byte [r14 + 0x12], 0x80
jne 0x140276e55
mov rax, qword [r15 + 8]
xor edi, edi
test qword [r14 + 0x28], rax
jne 0x140276c59
test byte [r14 + 0x13], 1
jne 0x140277068
mov al, byte [r10 + 0x3c]
test al, 0x58
jne 0x1402766a3
cmp byte [rsi + 0x62], 0
jne 0x1402766d5
mov al, 1
mov rdi, qword [rsp + 0x60]
or byte [rdi + 0x20], al
mov eax, dword [rsp + 0x78]
mov dword [r15 + 0x38], eax
mov word [r15 + 0x18], r13w
movzx eax, word [rsp + 0x5e]
mov word [r15 + 0x1a], ax
movzx eax, word [rsp + 0x5c]
mov word [r15 + 0x1c], ax
mov word [r15 + 0x3c], bx
cmp bx, word [r15 + 0x40]
jae 0x140276d0e
mov r12, qword [r15 + 0x48]
mov eax, ebx
lea ecx, [rax + 1]
mov word [r15 + 0x3c], cx
movzx eax, ax
mov qword [r12 + rax*8], r14
mov rax, qword [r14 + 0x28]
or rax, qword [rsp + 0xc8]
mov rcx, qword [r15 + 8]
not rcx
and rcx, rax
mov qword [r15], rcx
test r9b, 1
jne 0x140276ee3
test r9b, 0x82
je 0x1402769f4
mov r10d, r9d
mov rax, qword [rsi + 8]
movzx r9d, word [rax + r11*2]
mov eax, dword [r15 + 0x38]
mov ecx, eax
or ecx, 1
mov dword [r15 + 0x38], ecx
mov edx, 0x1001
cmp r9w, 0xffff
je 0x140276991
cmp word [rsp + 0x98], 0
jne 0x140276e42
test r9w, r9w
js 0x140276e42
movzx r12d, word [rsi + 0x5e]
lea r9d, [r12 - 1]
cmp r9d, r11d
mov r9d, r10d
jne 0x1402768ba
test byte [rsi + 0x64], 8
jne 0x1402768b2
cmp r12w, 1
jne 0x1402768ad
cmp r9d, 2
jne 0x1402768ad
cmp byte [rsi + 0x62], 0
jne 0x1402768b2
mov edx, 0x10001
or eax, edx
mov dword [r15 + 0x38], eax
mov ecx, eax
xor r10d, r10d
cmp byte [rsp + 0x119], 2
jae 0x140276cee
test cl, 2
jne 0x140276a8f
mov eax, dword [r15 + 0x18]
inc eax
mov word [r15 + 0x18], ax
movzx r12d, word [r14 + 0x10]
test r12w, r12w
jle 0x140277233
movzx eax, ax
mov rdx, qword [rsi + 0x10]
movzx r12d, word [rdx + rax*2]
sub r12w, word [rdx + rax*2 - 2]
add r12w, word [r15 + 0x16]
mov word [r15 + 0x16], r12w
bt r9d, 8
jb 0x14027724d
mov r11, qword [rsp + 0x40]
mov eax, dword [rsi + 0x64]
not eax
test al, 3
je 0x140276999
movsx eax, word [rsi + 0x5c]
lea eax, [rax + rax*4]
lea eax, [rax + rax*2]
mov rdx, qword [rsp + 0x68]
mov rdx, qword [rdx + 0x20]
movsx r9d, word [rdx + 0x3c]
cdq
idiv r9d
add eax, r12d
inc eax
movsx edx, ax
cmp bp, dx
jl 0x140276b6e
mov eax, ebp
cmp dword [rsp + 0xb8], edx
jg 0x140276b77
mov eax, dword [rsp + 0xb0]
cmp dword [rsp + 0xb4], edx
jg 0x140276b77
mov rax, qword [rsp + 0xa0]
sub eax, edx
cdqe
lea rdx, str._n_n_t_t_b_b_a_a_a
movzx eax, byte [rax + rdx]
add eax, ebp
jmp 0x140276b77
mov r9d, r10d
jmp 0x1402768b2
lea eax, [r12 + 0x10]
jmp 0x140276944
or ecx, 0x22
mov dword [r15 + 0x38], ecx
mov word [r15 + 0x1a], r12w
test byte [r14 + 0x13], 1
mov rdi, qword [rsp + 0x60]
jne 0x1402773a4
mov qword [rsp + 0x48], 0
mov qword [rsp + 0x40], r14
xor r10d, r10d
jmp 0x1402768cb
mov rcx, qword [r15 + 0x48]
movzx edx, word [r15 + 0x3c]
mov rcx, qword [rcx + rdx*8 - 0x10]
mov qword [rsp + 0x40], rcx
xor r10d, r10d
mov ecx, eax
mov qword [rsp + 0x48], r14
jmp 0x1402768cb
bt r9d, 8
jb 0x140277293
mov rax, qword [r14]
mov rax, qword [rax + 0x10]
mov cl, byte [rax]
cmp cl, 0xa3
je 0x14027727b
cmp cl, 0xa4
je 0x140277266
movzx edx, cl
mov ecx, 1
cmp edx, 0x80
je 0x140277262
movzx edi, word [rsi + 0x60]
sub edi, r11d
cmp ecx, edi
cmovl edi, ecx
mov r12d, 1
cmp edi, 2
jge 0x140277077
mov ecx, dword [r15 + 0x38]
test r9b, 0x24
jne 0x1402769a0
mov eax, ecx
or eax, 0x12
mov dword [r15 + 0x38], eax
mov word [r15 + 0x1c], r12w
test cl, 0x20
mov rdi, qword [rsp + 0x60]
jne 0x1402769d2
movzx edx, word [r15 + 0x16]
xor r11d, r11d
xor r10d, r10d
mov r9d, edx
jmp 0x140276ac1
mov eax, ecx
mov r14, qword [rsp + 0x48]
xor r11d, r11d
jmp 0x140276a7e
movzx edx, word [r15 + 0x16]
mov r11, qword [rsp + 0x40]
test r11, r11
je 0x140276a83
movzx r9d, word [r11 + 0x10]
test r9w, r9w
jle 0x14027728b
lea r9d, [rdx - 0x14]
test byte [r11 + 0x12], 0x80
cmovne r9d, edx
mov eax, ecx
mov r14, qword [rsp + 0x48]
test r14, r14
je 0x140276ae4
movzx ecx, word [r14 + 0x10]
test cx, cx
jle 0x140277283
test byte [r14 + 0x12], 0x80
lea ecx, [r9 - 0x14]
cmovne ecx, r9d
mov r9d, ecx
test r11, r11
je 0x140276b07
test r14, r14
je 0x140276b07
cmp word [r11 + 0x10], 0
jle 0x140276b07
cmp word [r14 + 0x10], 0
lea ecx, [r9 - 0x14]
cmovle ecx, r9d
mov r9d, ecx
movsx r12d, dx
cmp r14, 1
adc r12d, 0xffffffff
cmp r11, 1
adc r12d, 0xffffffff
cmp r9w, 0xb
mov ecx, 0xa
cmovge ecx, r9d
movzx ecx, cx
cmp r12d, ecx
cmovge r12d, ecx
mov word [r15 + 0x16], r12w
mov ecx, eax
mov qword [rsp + 0x48], r14
jmp 0x14027691a
cmp dword [rsp + 0xac], edx
jl 0x140276cfd
mov eax, edx
sub eax, dword [rsp + 0xa0]
cdqe
lea r9, str._n_n_t_t_b_b_a_a_a
movzx eax, byte [rax + r9]
add edx, eax
mov eax, edx
jmp 0x140276b77
cmp dword [rsp + 0xbc], edx
jge 0x140276b44
test ecx, 0x4000140
jne 0x140276bc7
lea r9d, [r12 + 0x10]
movsx ecx, ax
movsx edx, r9w
cmp cx, dx
jge 0x140276bba
lea eax, [rcx + 0x31]
cmp eax, edx
jl 0x140276bca
lea eax, [rcx + 0x1f]
cmp eax, edx
jl 0x140276d04
mov eax, edx
sub eax, ecx
cdqe
lea rcx, str._n_n_t_t_b_b_a_a_a
movzx eax, byte [rax + rcx]
add edx, eax
mov r9d, edx
jmp 0x140276bca
lea r9d, [rdx + 0x31]
cmp r9d, ecx
jge 0x140276c9a
mov r9d, eax
mov qword [rsp + 0x40], r11
add r10d, dword [rsp + 0x98]
add r9d, r10d
mov word [r15 + 0x14], r9w
mov r14, r10
lea eax, [r12 + r10]
mov word [r15 + 0x16], ax
mov rcx, qword [rdi + 8]
mov rdx, r15
call fcn.1402761f0
mov rcx, rdi
mov rdx, r15
call fcn.1401e7eb0
mov edi, eax
mov eax, dword [r15 + 0x38]
test al, 2
cmovne r12d, dword [rsp + 0x74]
mov word [r15 + 0x16], r12w
test al, 0x10
jne 0x140276c50
movzx eax, word [r15 + 0x18]
cmp ax, word [rsi + 0x60]
jae 0x140276c50
cmp ax, word [rsi + 0x5e]
jb 0x140276c35
mov ecx, dword [rsi + 0x64]
and ecx, 3
cmp ecx, 2
je 0x140276c50
cmp ax, 4
mov rdx, qword [rsp + 0x68]
jae 0x140276cbe
mov rcx, qword [rsp + 0x60]
mov r8, rsi
mov r9d, r14d
call fcn.1402763c0
mov eax, dword [rsp + 0x74]
mov word [r15 + 0x16], ax
lea rcx, [rsp + 0xf0]
call fcn.140275e50
mov r14, rax
test edi, edi
sete al
test r14, r14
setne cl
test al, cl
mov r11, qword [rsp + 0x30]
mov r8, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x90]
je 0x1402765e9
jmp 0x140276770
inc eax
jmp 0x140276bc7
lea r9d, [rdx + 0x1f]
cmp r9d, ecx
jl 0x140276c93
mov eax, ecx
sub eax, edx
cdqe
lea rdx, str._n_n_t_t_b_b_a_a_a
movzx eax, byte [rax + rdx]
add ecx, eax
mov r9d, ecx
jmp 0x140276bca
mov rax, qword [rsp + 0x88]
mov rax, qword [rax]
mov eax, dword [rax + 0x188]
test eax, eax
je 0x140276c40
mov rax, qword [rsp + 0x88]
inc dword [rax + 0x30]
mov dword [rax + 0x18], 9
jmp 0x140276c40
or ecx, 0x200000
mov dword [r15 + 0x38], ecx
jmp 0x1402768cb
inc eax
jmp 0x140276b77
lea r9d, [r12 + 0x11]
jmp 0x140276bca
mov dword [rsp + 0x2c], r9d
xor edi, edi
mov rcx, qword [rsp + 0x80]
cmp byte [rcx + 0x67], 0
jne 0x140276dea
mov rdx, qword [rsp + 0xe0]
call fcn.140246360
test rax, rax
mov r11, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x90]
je 0x1402765e9
mov r12, rax
mov rdx, qword [r15 + 0x48]
movzx r8d, word [r15 + 0x40]
shl r8d, 3
mov rcx, rax
call fcn.1402b6370
mov rdx, qword [r15 + 0x48]
cmp rdx, qword [rsp + 0xd8]
jne 0x14027741b
mov qword [r15 + 0x48], r12
mov rax, qword [rsp + 0xe8]
mov word [r15 + 0x40], ax
movzx eax, word [r15 + 0x3c]
mov r10, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x60]
mov r11, qword [rsp + 0x30]
mov r8, qword [rsp + 0x50]
mov r9d, dword [rsp + 0x2c]
jmp 0x140276804
mov rcx, rax
jmp 0x1402765cc
mov edi, dword [r11 + 0x18]
jmp 0x14027664e
xor ebp, ebp
mov r11, qword [rsp + 0x30]
jmp 0x1402765dd
mov bp, Ordinal_41
mov rcx, r8
mov rax, r8
add ebp, 0x28
shr rax, 4
cmp rcx, 0xfff
mov rcx, rax
jbe 0x1402765b0
jmp 0x140276dcf
xor edi, edi
mov r11, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x90]
jmp 0x1402765e9
mov r8d, eax
and r8d, 0xffffff83
test r9b, 4
cmovne eax, r8d
bt r9d, 8
jae 0x140276e2b
mov r8d, eax
and r8d, 0x13c
mov rdx, qword [rsp + 0x68]
test byte [rdx + 0x40], 2
cmove eax, r8d
jmp 0x140276e30
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x60]
mov r11, qword [rsp + 0x88]
jmp 0x140276449
mov r9d, r10d
jmp 0x1402768ba
xor eax, eax
cmp cx, 0xffff
sete al
jmp 0x140276e76
mov rax, qword [rsi + 8]
movsx rcx, word [rax + r11*2]
test rcx, rcx
js 0x140276e4a
mov rax, qword [rsi + 0x18]
mov rax, qword [rax + 8]
lea rcx, [rcx + rcx*2]
mov eax, dword [rax + rcx*8 + 8]
and eax, 0xf
xor edi, edi
test eax, eax
mov r10, qword [rsp + 0x68]
mov r11, qword [rsp + 0x30]
mov r8, qword [rsp + 0x50]
jne 0x140276c59
jmp 0x140276792
mov ax, Ordinal_41
cmp ecx, 0x100
jb 0x140276ebc
mov ax, Ordinal_41
mov rdx, rcx
add eax, 0x28
shr rdx, 4
cmp rcx, 0xfff
mov rcx, rdx
ja 0x140276ea7
jmp 0x140276ebf
mov rdx, rcx
mov r8, rdx
cmp rdx, 0x10
jb 0x140276f6f
add eax, 0xa
mov r8, rdx
shr r8, 1
cmp rdx, 0x1f
mov rdx, r8
ja 0x140276ecc
jmp 0x140276f6f
mov r12d, r9d
mov rax, qword [r14]
test byte [rax + 5], 0x10
je 0x140276f15
movzx ecx, word [r15 + 0x3c]
mov r10d, reloc.WLDAP32.dll_Ordinal_46
cmp rcx, 2
jb 0x140276f86
dec ecx
mov rdx, qword [r15 + 0x48]
mov r10d, reloc.WLDAP32.dll_Ordinal_46
xor r8d, r8d
jmp 0x140276f50
mov rax, qword [rax + 0x20]
xor r10d, r10d
test rax, rax
je 0x140276f86
movsxd rcx, dword [rax]
test rcx, rcx
je 0x140276f86
cmp ecx, 8
jae 0x140276e94
cmp ecx, 1
jne 0x140276f5b
xor eax, eax
jmp 0x140276f82
cmp qword [r9], rax
mov r9d, 0
cmove r10d, r9d
inc r8
cmp rcx, r8
je 0x140276f86
mov r9, qword [rdx + r8*8]
test r9, r9
jne 0x140276f3b
jmp 0x140276f48
mov ax, Ordinal_41
add eax, 0xfffffff6
lea r8, [rcx + rcx]
cmp rcx, 4
mov rcx, r8
jb 0x140276f5f
and r8d, 7
lea rcx, [0x140417bb0]
add ax, word [rcx + r8*2]
add eax, 0xfffffff6
movsx r10d, ax
test byte [rsi + 0x64], 0x80
je 0x140277046
cmp bp, 0xa
jl 0x140277046
cmp r10d, 0xb
jl 0x140276ffa
movzx edx, r10w
mov ax, Ordinal_41
cmp edx, 0x100
jb 0x140276fcc
mov ax, Ordinal_41
mov rcx, rdx
add eax, 0x28
shr rcx, 4
cmp rdx, 0xfff
mov rdx, rcx
ja 0x140276fb7
jmp 0x140276fcf
mov rcx, rdx
cmp rcx, 0x10
jb 0x140276fe7
add eax, 0xa
mov rdx, rcx
shr rdx, 1
cmp rcx, 0x1f
mov rcx, rdx
ja 0x140276fd5
and ecx, 7
lea rdx, [0x140417bb0]
add ax, word [rdx + rcx*2]
add eax, 0xffffffd5
jmp 0x140276ffc
xor eax, eax
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rsp + 0x30]
movzx ecx, word [rcx + rdx*2]
mov rdx, qword [rsp + 0xa0]
add edx, r10d
sub ecx, edx
add ecx, eax
add cx, 0xa
jns 0x140277046
xor edi, edi
cmp word [rsp + 0x98], 1
jg 0x140276c59
mov rax, qword [rsp + 0x80]
test byte [rax + 0x62], 2
jne 0x140276c59
or byte [r15 + 0x3a], 0x10
mov ecx, dword [r15 + 0x38]
or ecx, 4
mov dword [r15 + 0x38], ecx
mov rdi, qword [rsp + 0x60]
mov r11, qword [rsp + 0x30]
mov r8, qword [rsp + 0x50]
mov r9d, r12d
jmp 0x1402768cb
cmp r9d, 0x10
jne 0x1402767ad
jmp 0x140276c59
mov dword [rsp + 0x2c], r9d
mov eax, dword [r10 + 0x44]
mov dword [rsp + 0xa8], eax
mov eax, edi
mov qword [rsp + 0xd0], rax
mov r12d, 1
mov rcx, qword [r14]
mov rax, qword [rcx + 0x18]
test byte [rax + 5], 0x10
je 0x1402770a8
mov rax, qword [rax + 0x20]
mov rcx, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x20]
mov rcx, r12
shl rcx, 5
mov rdx, qword [rdx + rcx + 8]
mov qword [rsp + 0x40], rdx
cmp byte [rdx], 0x9a
jne 0x14027721f
mov edx, dword [rsp + 0xa8]
mov r8, qword [rsp + 0x40]
cmp dword [r8 + 0x2c], edx
jne 0x14027721f
mov rdx, qword [rsp + 0x40]
movzx edx, word [rdx + 0x30]
mov r8, qword [rsi + 8]
mov r9, qword [rsp + 0x30]
add r9, r12
mov qword [rsp + 0x48], r9
cmp dx, word [r8 + r9*2]
jne 0x14027721f
mov rdx, qword [rsi + 0x38]
mov r8, qword [rsp + 0x48]
mov r8b, byte [rdx + r8]
mov r9, qword [rsp + 0x30]
cmp r8b, byte [rdx + r9]
jne 0x14027721f
mov rax, qword [rax + 0x20]
mov rax, qword [rax + rcx + 8]
mov qword [rsp + 0xc0], rax
mov rcx, qword [rsp + 0x40]
call fcn.14036a440
mov byte [rsp + 0x3f], al
mov rcx, qword [rsp + 0xc0]
call fcn.14036a440
mov dl, byte [rsp + 0x3f]
mov ecx, edx
cmp dl, 0x41
jl 0x140277175
cmp al, 0x41
jl 0x140277175
cmp al, 0x43
setae al
add al, al
or al, 0x41
cmp cl, 0x43
movzx eax, al
mov ecx, 0x43
cmovae eax, ecx
jmp 0x140277182
cmp al, 0x41
movzx ecx, cl
movzx eax, al
cmovl eax, ecx
or al, 0x40
mov rcx, qword [rsp + 0x40]
movsx rdx, word [rcx + 0x30]
mov cl, 0x44
test rdx, rdx
js 0x1402771aa
mov r8, qword [rsi + 0x18]
cmp dx, word [r8 + 0x36]
jge 0x1402771aa
mov rcx, qword [r8 + 8]
lea rdx, [rdx + rdx*2]
mov cl, byte [rcx + rdx*8 + 0xc]
cmp al, cl
jne 0x14027721f
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x40]
mov r8, qword [rsp + 0xc0]
call fcn.140256ee0
test rax, rax
je 0x14027721f
mov rcx, qword [rsi + 0x40]
mov rdx, qword [rsp + 0x48]
mov rcx, qword [rcx + rdx*8]
mov rax, qword [rax]
xor edx, edx
jmp 0x1402771e9
test r8, r8
je 0x14027720b
inc rdx
movzx r8d, byte [rax + rdx]
movzx r9d, byte [rcx + rdx]
cmp r8b, r9b
je 0x1402771e1
lea r10, [0x14040f170]
mov r8b, byte [r8 + r10]
cmp r8b, byte [r9 + r10]
je 0x1402771e6
jmp 0x14027721f
inc r12
cmp r12, qword [rsp + 0xd0]
jne 0x140277097
mov r12d, edi
mov r11, qword [rsp + 0x30]
mov r8, qword [rsp + 0x50]
mov r9d, dword [rsp + 0x2c]
jmp 0x140276a49
mov rdx, qword [rsi + 8]
cmp word [rdx + r11*2], 0
js 0x1402768ee
sub r12d, r10d
add r12w, word [r15 + 0x16]
jmp 0x140277251
add r12d, 0xa
mov eax, ecx
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x40]
jmp 0x140276b33
mov rax, qword [rax + 0x20]
mov rax, qword [rax + 0x20]
mov ecx, dword [rax]
mov r10, qword [rsp + 0x68]
mov r11, qword [rsp + 0x30]
jmp 0x140276a2e
mov cl, byte [rax + 2]
jmp 0x140276a11
add ecx, r9d
jmp 0x140276ae1
add r9d, edx
jmp 0x140276aba
mov ecx, dword [r15 + 0x38]
or ecx, 8
mov dword [r15 + 0x38], ecx
jmp 0x1402769ca
mov rax, qword [rsi + 0x50]
mov ecx, r9d
shl ecx, 5
mov rax, qword [rax + rcx + 8]
lea rcx, [rsp + 0xf0]
mov qword [rcx + 0x18], rax
mov rax, qword [rsi + 0x40]
mov rax, qword [rax + r9*8]
mov qword [rcx + 0x10], rax
mov word [rcx + 0x58], 0xfffe
call fcn.1403726b0
jmp 0x140276576
mov rax, qword [rsp + 0x80]
test byte [rax + 0x61], 0x40
jne 0x14027664e
mov rax, qword [rsi + 0x10]
mov rcx, qword [rsp + 0x30]
cmp word [rax + rcx*2 + 2], 0x2a
jl 0x14027664e
mov r8, rdx
inc r8d
mov rcx, qword [rsp + 0x80]
mov rdx, r15
call fcn.1403731f0
mov edi, eax
test eax, eax
jne 0x14027664e
inc word [r15 + 0x18]
inc word [r15 + 0x3e]
mov rax, qword [r15 + 0x48]
movzx ecx, word [r15 + 0x3c]
lea edx, [rcx + 1]
mov word [r15 + 0x3c], dx
mov qword [rax + rcx*8], 0
or byte [r15 + 0x39], 0x80
mov rax, qword [rsi + 0x10]
mov rdx, qword [rsp + 0x30]
movzx ecx, word [rax + rdx*2]
sub cx, word [rax + rdx*2 + 2]
sub word [r15 + 0x16], cx
mov rax, qword [rsp + 0x98]
lea r9d, [rax + rcx]
add r9d, 5
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x68]
mov r8, rsi
call fcn.1402763c0
mov eax, dword [rsp + 0x74]
mov word [r15 + 0x16], ax
mov word [r15 + 0x18], r13w
mov word [r15 + 0x3e], r13w
mov eax, dword [rsp + 0x78]
mov dword [r15 + 0x38], eax
xor edi, edi
jmp 0x14027664e
mov dword [rsp + 0x2c], r9d
mov r12, r8
movzx r8d, word [r15 + 0x3c]
inc r8d
mov rcx, qword [rsp + 0x80]
mov rdx, r15
call fcn.1403731f0
test eax, eax
jne 0x140276de8
lea r8, [r14 + 0x38]
mov rax, qword [r15 + 0x48]
movzx ecx, word [r15 + 0x3c]
lea edx, [rcx + 1]
mov word [r15 + 0x3c], dx
mov qword [rsp + 0x48], r8
mov qword [rax + rcx*8], r8
mov ecx, dword [r15 + 0x38]
or ecx, 0x10
mov dword [r15 + 0x38], ecx
mov word [r15 + 0x1c], 1
xor r10d, r10d
mov qword [rsp + 0x40], r14
mov rdi, qword [rsp + 0x60]
mov r11, qword [rsp + 0x30]
mov r8, r12
mov r9d, dword [rsp + 0x2c]
jmp 0x1402768cb
mov rcx, qword [rsp + 0x80]
call fcn.140245f10
jmp 0x140276d74