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

Disassembly:
jmp 0x14016c340
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
sub rsp, 0x4b8
mov rax, qword [0x1402f8118]
xor rax, rsp
mov qword [rsp + 0x4a8], rax
mov dword [rsp + 0x24], 0
mov rdx, qword [rsp + 0x4d8]
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d1da2
movzx eax, byte [rsp + 0x4e0]
test eax, eax
je 0x14016c3ec
lea rdx, [rsp + 0x218]
mov rcx, qword [rsp + 0x4e8]
call fcn.1400d4264
mov qword [rsp + 0x1d8], rax
mov rax, qword [rsp + 0x1d8]
mov qword [rsp + 0xe0], rax
mov rcx, qword [rsp + 0xe0]
call fcn.1400d483b
mov rcx, rax
call fcn.1400d79ff
mov qword [rsp + 0x48], rax
lea rcx, [rsp + 0x218]
call fcn.1400d426e
jmp 0x14016c440
lea rdx, [rsp + 0x1f8]
mov rcx, qword [rsp + 0x4e8]
call fcn.1400d4264
mov qword [rsp + 0xe8], rax
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0xf0], rax
mov rcx, qword [rsp + 0xf0]
call fcn.1400d3e54
mov rcx, rax
call fcn.1400d6bc2
mov qword [rsp + 0x48], rax
lea rcx, [rsp + 0x1f8]
call fcn.1400d426e
mov byte [rsp + 0x20], 0
mov byte [rsp + 0x28], 0
lea rcx, [rsp + 0x318]
call fcn.1400d709f
nop
lea rdx, [rsp + 0x78]
mov rcx, qword [rsp + 0x48]
call fcn.1400d6276
lea rcx, [rsp + 0x2c8]
call fcn.1400d709f
nop
lea rdx, [rsp + 0x208]
mov rcx, qword [rsp + 0x4e8]
call fcn.1400d4264
mov qword [rsp + 0xf8], rax
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x100], rax
mov rcx, qword [rsp + 0x100]
call fcn.1400d597f
mov qword [rsp + 0xc0], rax
lea rcx, [rsp + 0x208]
call fcn.1400d426e
lea rcx, str.0123456789_
call fcn.1400d1bc7
mov qword [rsp + 0x108], rax
lea rcx, str.0123456789_
call fcn.1400d12f3
mov qword [rsp + 0x110], rax
mov r9, qword [rsp + 0x4f0]
mov r8, qword [rsp + 0x108]
mov rdx, qword [rsp + 0x110]
mov rcx, qword [rsp + 0xc0]
call fcn.1400d518c
mov qword [rsp + 0x68], 0
jmp 0x14016c529
mov rax, qword [rsp + 0x68]
inc rax
mov qword [rsp + 0x68], rax
movzx eax, byte [rsp + 0x20]
test eax, eax
jne 0x14016d1e6
cmp qword [rsp + 0x68], 4
jae 0x14016d1e6
mov rax, qword [rsp + 0x68]
movzx eax, byte [rsp + rax + 0x78]
mov byte [rsp + 0x50], al
cmp byte [rsp + 0x50], 0x20
je 0x14016d15a
cmp byte [rsp + 0x50], 0x24
je 0x14016c588
cmp byte [rsp + 0x50], 0x2b
je 0x14016c884
cmp byte [rsp + 0x50], 0x76
je 0x14016cc8d
cmp byte [rsp + 0x50], 0x78
je 0x14016d15a
jmp 0x14016d1e1
lea rdx, [rsp + 0x2f0]
mov rcx, qword [rsp + 0x48]
call fcn.1400d1a37
nop
lea rcx, [rsp + 0xc8]
call fcn.1400d3503
nop
mov rcx, qword [rsp + 0x4e8]
call fcn.1400d2027
and eax, 8
test eax, eax
jne 0x14016c60b
mov rdx, qword [rsp + 0x4d8]
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d6a78
movzx eax, al
test eax, eax
jne 0x14016c60b
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d130c
movsx eax, al
mov dword [rsp + 0xa4], eax
lea rcx, [rsp + 0x2f0]
call fcn.1400d191a
movsx eax, byte [rax]
mov ecx, dword [rsp + 0xa4]
cmp ecx, eax
jne 0x14016c674
cmp qword [rsp + 0x68], 3
jne 0x14016c683
lea rcx, [rsp + 0x318]
call fcn.1400d554c
cmp rax, 1
ja 0x14016c683
mov rdx, qword [rsp + 0x4d8]
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d6a78
movzx eax, al
test eax, eax
jne 0x14016c674
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d130c
movsx eax, al
mov dword [rsp + 0xa8], eax
lea rcx, [rsp + 0x2f0]
call fcn.1400d191a
movsx eax, byte [rax]
mov ecx, dword [rsp + 0xa8]
cmp ecx, eax
je 0x14016c683
xor edx, edx
lea rcx, [rsp + 0x2f0]
call fcn.1400d6cfd
lea rdx, [rsp + 0x228]
lea rcx, [rsp + 0x2f0]
call fcn.1400d731f
mov qword [rsp + 0x118], rax
mov rdx, qword [rsp + 0x118]
lea rcx, [rsp + 0xc8]
call fcn.1400d3edb
lea rcx, [rsp + 0x228]
call fcn.1400d2e6e
mov rdx, qword [rsp + 0x4d8]
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d6a78
movzx eax, al
test eax, eax
jne 0x14016c775
lea rdx, [rsp + 0x240]
lea rcx, [rsp + 0x2f0]
call fcn.1400d1c30
mov qword [rsp + 0x120], rax
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0x128], rax
mov eax, dword [rsp + 0x24]
or eax, 1
mov dword [rsp + 0x24], eax
mov rdx, qword [rsp + 0x128]
lea rcx, [rsp + 0xc8]
call fcn.1400d2626
movzx eax, al
test eax, eax
jne 0x14016c775
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d130c
movsx eax, al
mov dword [rsp + 0xac], eax
lea rcx, [rsp + 0xc8]
call fcn.1400d43ea
movsx eax, byte [rax]
mov ecx, dword [rsp + 0xac]
cmp ecx, eax
jne 0x14016c775
mov dword [rsp + 0x84], 1
jmp 0x14016c780
mov dword [rsp + 0x84], 0
movzx eax, byte [rsp + 0x84]
mov byte [rsp + 0x38], al
mov eax, dword [rsp + 0x24]
and eax, 1
test eax, eax
je 0x14016c7a9
and dword [rsp + 0x24], 0xfffffffe
lea rcx, [rsp + 0x240]
call fcn.1400d2e6e
movzx eax, byte [rsp + 0x38]
test eax, eax
je 0x14016c7d1
lea rcx, [rsp + 0xc8]
call fcn.1400d4caa
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d1c03
jmp 0x14016c6c2
lea rdx, [rsp + 0x258]
lea rcx, [rsp + 0x2f0]
call fcn.1400d1c30
mov qword [rsp + 0x130], rax
mov rdx, qword [rsp + 0x130]
lea rcx, [rsp + 0xc8]
call fcn.1400d2626
movzx eax, al
test eax, eax
jne 0x14016c817
mov dword [rsp + 0x88], 1
jmp 0x14016c822
mov dword [rsp + 0x88], 0
movzx eax, byte [rsp + 0x88]
mov byte [rsp + 0x39], al
lea rcx, [rsp + 0x258]
call fcn.1400d2e6e
movzx eax, byte [rsp + 0x39]
test eax, eax
je 0x14016c849
mov byte [rsp + 0x20], 1
lea rcx, [rsp + 0xc8]
call fcn.1400d59c0
nop
lea rcx, [rsp + 0x2f0]
call fcn.1400d2234
jmp 0x14016d1e1
mov rdx, qword [rsp + 0x4d8]
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d6a78
movzx eax, al
test eax, eax
jne 0x14016cc88
lea rdx, [rsp + 0x390]
mov rcx, qword [rsp + 0x48]
call fcn.1400d64d8
mov qword [rsp + 0x138], rax
mov rax, qword [rsp + 0x138]
mov qword [rsp + 0x140], rax
mov eax, dword [rsp + 0x24]
or eax, 2
mov dword [rsp + 0x24], eax
mov rcx, qword [rsp + 0x140]
call fcn.1400d554c
test rax, rax
jbe 0x14016c975
lea rdx, [rsp + 0x368]
mov rcx, qword [rsp + 0x48]
call fcn.1400d64d8
mov qword [rsp + 0x148], rax
mov rax, qword [rsp + 0x148]
mov qword [rsp + 0x150], rax
mov eax, dword [rsp + 0x24]
or eax, 4
mov dword [rsp + 0x24], eax
mov rax, qword [rsp + 0x150]
mov qword [rsp + 0x158], rax
xor edx, edx
mov rcx, qword [rsp + 0x158]
call fcn.1400d1cad
movsx eax, byte [rax]
mov dword [rsp + 0xb0], eax
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d130c
movsx eax, al
mov ecx, dword [rsp + 0xb0]
cmp ecx, eax
jne 0x14016c975
mov dword [rsp + 0x8c], 1
jmp 0x14016c980
mov dword [rsp + 0x8c], 0
movzx eax, byte [rsp + 0x8c]
mov byte [rsp + 0x3a], al
mov eax, dword [rsp + 0x24]
and eax, 4
test eax, eax
je 0x14016c9aa
and dword [rsp + 0x24], 0xfffffffb
lea rcx, [rsp + 0x368]
call fcn.1400d2234
nop
mov eax, dword [rsp + 0x24]
and eax, 2
test eax, eax
je 0x14016c9c7
and dword [rsp + 0x24], 0xfffffffd
lea rcx, [rsp + 0x390]
call fcn.1400d2234
movzx eax, byte [rsp + 0x3a]
test eax, eax
je 0x14016ca1e
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d1c03
lea rdx, [rsp + 0x3b8]
mov rcx, qword [rsp + 0x48]
call fcn.1400d64d8
mov qword [rsp + 0x160], rax
mov rdx, qword [rsp + 0x160]
lea rcx, [rsp + 0x318]
call fcn.1400d2a59
lea rcx, [rsp + 0x3b8]
call fcn.1400d2234
jmp 0x14016cc88
lea rdx, [rsp + 0x408]
mov rcx, qword [rsp + 0x48]
call fcn.1400d19f1
mov qword [rsp + 0x168], rax
mov rax, qword [rsp + 0x168]
mov qword [rsp + 0x170], rax
mov eax, dword [rsp + 0x24]
or eax, 8
mov dword [rsp + 0x24], eax
mov rcx, qword [rsp + 0x170]
call fcn.1400d554c
test rax, rax
jbe 0x14016caef
lea rdx, [rsp + 0x3e0]
mov rcx, qword [rsp + 0x48]
call fcn.1400d19f1
mov qword [rsp + 0x178], rax
mov rax, qword [rsp + 0x178]
mov qword [rsp + 0x180], rax
mov eax, dword [rsp + 0x24]
or eax, 0x10
mov dword [rsp + 0x24], eax
mov rax, qword [rsp + 0x180]
mov qword [rsp + 0x188], rax
xor edx, edx
mov rcx, qword [rsp + 0x188]
call fcn.1400d1cad
movsx eax, byte [rax]
mov dword [rsp + 0xb4], eax
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d130c
movsx eax, al
mov ecx, dword [rsp + 0xb4]
cmp ecx, eax
jne 0x14016caef
mov dword [rsp + 0x90], 1
jmp 0x14016cafa
mov dword [rsp + 0x90], 0
movzx eax, byte [rsp + 0x90]
mov byte [rsp + 0x3b], al
mov eax, dword [rsp + 0x24]
and eax, 0x10
test eax, eax
je 0x14016cb24
and dword [rsp + 0x24], 0xffffffef
lea rcx, [rsp + 0x3e0]
call fcn.1400d2234
nop
mov eax, dword [rsp + 0x24]
and eax, 8
test eax, eax
je 0x14016cb41
and dword [rsp + 0x24], 0xfffffff7
lea rcx, [rsp + 0x408]
call fcn.1400d2234
movzx eax, byte [rsp + 0x3b]
test eax, eax
je 0x14016cb9d
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d1c03
lea rdx, [rsp + 0x430]
mov rcx, qword [rsp + 0x48]
call fcn.1400d19f1
mov qword [rsp + 0x190], rax
mov rdx, qword [rsp + 0x190]
lea rcx, [rsp + 0x318]
call fcn.1400d2a59
lea rcx, [rsp + 0x430]
call fcn.1400d2234
mov byte [rsp + 0x28], 1
jmp 0x14016cc88
lea rdx, [rsp + 0x480]
mov rcx, qword [rsp + 0x48]
call fcn.1400d64d8
mov qword [rsp + 0x198], rax
mov rax, qword [rsp + 0x198]
mov qword [rsp + 0x1a0], rax
mov eax, dword [rsp + 0x24]
or eax, 0x20
mov dword [rsp + 0x24], eax
mov rcx, qword [rsp + 0x1a0]
call fcn.1400d554c
test rax, rax
je 0x14016cc28
lea rdx, [rsp + 0x458]
mov rcx, qword [rsp + 0x48]
call fcn.1400d19f1
mov qword [rsp + 0x1a8], rax
mov eax, dword [rsp + 0x24]
or eax, 0x40
mov dword [rsp + 0x24], eax
mov rcx, qword [rsp + 0x1a8]
call fcn.1400d554c
test rax, rax
jne 0x14016cc28
mov dword [rsp + 0x94], 1
jmp 0x14016cc33
mov dword [rsp + 0x94], 0
movzx eax, byte [rsp + 0x94]
mov byte [rsp + 0x3c], al
mov eax, dword [rsp + 0x24]
and eax, 0x40
test eax, eax
je 0x14016cc5d
and dword [rsp + 0x24], 0xffffffbf
lea rcx, [rsp + 0x458]
call fcn.1400d2234
nop
mov eax, dword [rsp + 0x24]
and eax, 0x20
test eax, eax
je 0x14016cc7a
and dword [rsp + 0x24], 0xffffffdf
lea rcx, [rsp + 0x480]
call fcn.1400d2234
movzx eax, byte [rsp + 0x3c]
test eax, eax
je 0x14016cc88
mov byte [rsp + 0x28], 1
jmp 0x14016d1e1
mov dword [rsp + 0x40], 0
mov rcx, qword [rsp + 0x48]
call fcn.1400d3fc1
mov dword [rsp + 0x60], eax
lea rdx, [rsp + 0x340]
mov rcx, qword [rsp + 0x48]
call fcn.1400d5434
nop
lea rcx, [rsp + 0x340]
call fcn.1400d554c
test rax, rax
jne 0x14016cccf
mov byte [rsp + 0x29], 0
jmp 0x14016ccdd
mov rcx, qword [rsp + 0x48]
call fcn.1400d269e
mov byte [rsp + 0x29], al
movzx eax, byte [rsp + 0x29]
mov byte [rsp + 0x2a], al
movsx eax, byte [rsp + 0x2a]
test eax, eax
je 0x14016cd04
lea rcx, [rsp + 0x340]
call fcn.1400d191a
movzx eax, byte [rax]
cmp eax, 0x7f
jl 0x14016cd7d
jmp 0x14016cd13
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d1c03
mov rdx, qword [rsp + 0x4d8]
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d6a78
movzx eax, al
test eax, eax
jne 0x14016cd78
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d130c
movzx edx, al
mov rcx, qword [rsp + 0x4f0]
call fcn.1400d4bf1
mov qword [rsp + 0x58], rax
cmp qword [rsp + 0x58], 0xa
jae 0x14016cd78
lea rax, str.0123456789_
mov rcx, qword [rsp + 0x58]
movzx edx, byte [rax + rcx]
lea rcx, [rsp + 0x2c8]
call fcn.1400d42c3
jmp 0x14016cd06
jmp 0x14016d00f
lea rcx, [rsp + 0x2a0]
call fcn.1400d709f
nop
xor edx, edx
lea rcx, [rsp + 0x2a0]
call fcn.1400d31d4
mov qword [rsp + 0x30], 0
jmp 0x14016cdb2
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d1c03
mov rdx, qword [rsp + 0x4d8]
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d6a78
movzx eax, al
test eax, eax
jne 0x14016cebd
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d130c
movzx edx, al
mov rcx, qword [rsp + 0x4f0]
call fcn.1400d4bf1
mov qword [rsp + 0x58], rax
cmp qword [rsp + 0x58], 0xa
jae 0x14016ce66
lea rax, str.0123456789_
mov rcx, qword [rsp + 0x58]
movzx edx, byte [rax + rcx]
lea rcx, [rsp + 0x2c8]
call fcn.1400d42c3
mov rdx, qword [rsp + 0x30]
lea rcx, [rsp + 0x2a0]
call fcn.1400d1cad
movsx eax, byte [rax]
cmp eax, 0x7f
je 0x14016ce64
mov rdx, qword [rsp + 0x30]
lea rcx, [rsp + 0x2a0]
call fcn.1400d1cad
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0xb8]
movzx eax, byte [rax]
inc al
mov rcx, qword [rsp + 0xb8]
mov byte [rcx], al
jmp 0x14016ceb8
mov rdx, qword [rsp + 0x30]
lea rcx, [rsp + 0x2a0]
call fcn.1400d1cad
movsx eax, byte [rax]
test eax, eax
je 0x14016ce98
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d130c
movsx eax, al
movsx ecx, byte [rsp + 0x2a]
cmp eax, ecx
je 0x14016ce9c
jmp 0x14016cebd
xor edx, edx
lea rcx, [rsp + 0x2a0]
call fcn.1400d31d4
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
jmp 0x14016cda5
cmp qword [rsp + 0x30], 0
je 0x14016cef2
mov rdx, qword [rsp + 0x30]
lea rcx, [rsp + 0x2a0]
call fcn.1400d1cad
movsx eax, byte [rax]
test eax, eax
jle 0x14016ceed
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
jmp 0x14016cef2
mov byte [rsp + 0x20], 1
lea rcx, [rsp + 0x340]
call fcn.1400d191a
mov qword [rsp + 0x70], rax
movzx eax, byte [rsp + 0x20]
test eax, eax
jne 0x14016cfd9
cmp qword [rsp + 0x30], 0
jbe 0x14016cfd9
mov rax, qword [rsp + 0x70]
movsx eax, byte [rax]
cmp eax, 0x7f
jne 0x14016cf2f
jmp 0x14016cfd9
mov rax, qword [rsp + 0x30]
dec rax
mov qword [rsp + 0x30], rax
cmp qword [rsp + 0x30], 0
jbe 0x14016cf73
mov rax, qword [rsp + 0x70]
movsx eax, byte [rax]
mov dword [rsp + 0x98], eax
mov rdx, qword [rsp + 0x30]
lea rcx, [rsp + 0x2a0]
call fcn.1400d1cad
movsx eax, byte [rax]
mov ecx, dword [rsp + 0x98]
cmp ecx, eax
jne 0x14016cfaa
cmp qword [rsp + 0x30], 0
jne 0x14016cfb1
mov rax, qword [rsp + 0x70]
movsx eax, byte [rax]
mov dword [rsp + 0x9c], eax
mov rdx, qword [rsp + 0x30]
lea rcx, [rsp + 0x2a0]
call fcn.1400d1cad
movsx eax, byte [rax]
mov ecx, dword [rsp + 0x9c]
cmp ecx, eax
jge 0x14016cfb1
mov byte [rsp + 0x20], 1
jmp 0x14016cfd4
mov eax, 1
imul rax, rax, 1
mov rcx, qword [rsp + 0x70]
movsx eax, byte [rcx + rax]
test eax, eax
jle 0x14016cfd4
mov rax, qword [rsp + 0x70]
inc rax
mov qword [rsp + 0x70], rax
jmp 0x14016cf04
movzx eax, byte [rsp + 0x20]
test eax, eax
je 0x14016d002
lea rcx, [rsp + 0x2a0]
call fcn.1400d2234
nop
lea rcx, [rsp + 0x340]
call fcn.1400d2234
jmp 0x14016d1e1
lea rcx, [rsp + 0x2a0]
call fcn.1400d2234
mov rcx, qword [rsp + 0x48]
call fcn.1400d417e
mov byte [rsp + 0x2b], al
mov rdx, qword [rsp + 0x4d8]
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d6a78
movzx eax, al
test eax, eax
jne 0x14016d0fa
movsx eax, byte [rsp + 0x2b]
test eax, eax
je 0x14016d0fa
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d130c
movsx eax, al
movsx ecx, byte [rsp + 0x2b]
cmp eax, ecx
jne 0x14016d0fa
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d1c03
mov rdx, qword [rsp + 0x4d8]
mov rcx, rax
call fcn.1400d6a78
movzx eax, al
test eax, eax
jne 0x14016d0eb
mov eax, dword [rsp + 0x60]
cmp dword [rsp + 0x40], eax
jge 0x14016d0eb
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d130c
movzx edx, al
mov rcx, qword [rsp + 0x4f0]
call fcn.1400d4bf1
mov qword [rsp + 0x58], rax
cmp qword [rsp + 0x58], 0xa
jae 0x14016d0eb
lea rax, str.0123456789_
mov rcx, qword [rsp + 0x58]
movzx edx, byte [rax + rcx]
lea rcx, [rsp + 0x2c8]
call fcn.1400d42c3
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
jmp 0x14016d067
mov eax, dword [rsp + 0x60]
cmp dword [rsp + 0x40], eax
jge 0x14016d0fa
mov byte [rsp + 0x20], 1
lea rcx, [rsp + 0x2c8]
call fcn.1400d554c
test rax, rax
jne 0x14016d113
mov byte [rsp + 0x20], 1
jmp 0x14016d13a
jmp 0x14016d11f
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x60]
cmp dword [rsp + 0x40], eax
jge 0x14016d13a
mov dl, 0x30
lea rcx, [rsp + 0x2c8]
call fcn.1400d42c3
jmp 0x14016d115
lea rcx, [rsp + 0x340]
call fcn.1400d2234
jmp 0x14016d1e1
cmp qword [rsp + 0x68], 3
jne 0x14016d164
jmp 0x14016d1e1
mov byte [rsp + 0x2c], 0
jmp 0x14016d178
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d1c03
mov rdx, qword [rsp + 0x4d8]
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d6a78
movzx eax, al
test eax, eax
jne 0x14016d1c4
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d130c
movzx r8d, al
mov dx, 0x48
mov rcx, qword [rsp + 0xc0]
call fcn.1400d60dc
movzx eax, al
test eax, eax
je 0x14016d1c4
mov byte [rsp + 0x2c], 1
jmp 0x14016d16b
mov rax, qword [rsp + 0x68]
movsx eax, byte [rsp + rax + 0x78]
cmp eax, 0x20
jne 0x14016d1e1
movzx eax, byte [rsp + 0x2c]
test eax, eax
jne 0x14016d1e1
mov byte [rsp + 0x20], 1
jmp 0x14016c51c
movzx eax, byte [rsp + 0x20]
test eax, eax
jne 0x14016d3c5
lea rcx, [rsp + 0x318]
call fcn.1400d554c
cmp rax, 1
jbe 0x14016d3c5
lea rdx, [rsp + 0x1e0]
lea rcx, [rsp + 0x318]
call fcn.1400d731f
nop
lea rcx, [rsp + 0x1e0]
call fcn.1400d5538
mov qword [rsp + 0x1c8], rax
lea rdx, [rsp + 0x270]
lea rcx, [rsp + 0x318]
call fcn.1400d1c30
mov qword [rsp + 0x1b0], rax
mov rax, qword [rsp + 0x1b0]
mov qword [rsp + 0x1b8], rax
mov eax, dword [rsp + 0x24]
bts eax, 7
mov dword [rsp + 0x24], eax
mov rax, qword [rsp + 0x1b8]
mov qword [rsp + 0x1c0], rax
mov rdx, qword [rsp + 0x1c0]
mov rcx, qword [rsp + 0x1c8]
call fcn.1400d2626
movzx eax, al
test eax, eax
jne 0x14016d2f2
mov rdx, qword [rsp + 0x4d8]
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d6a78
movzx eax, al
test eax, eax
jne 0x14016d2f2
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d130c
movsx eax, al
mov dword [rsp + 0xa0], eax
lea rcx, [rsp + 0x1e0]
call fcn.1400d6f41
movsx eax, byte [rax]
mov ecx, dword [rsp + 0xa0]
cmp ecx, eax
jne 0x14016d2f2
mov dword [rsp + 0x7c], 1
jmp 0x14016d2fa
mov dword [rsp + 0x7c], 0
movzx eax, byte [rsp + 0x7c]
mov byte [rsp + 0x3d], al
mov eax, dword [rsp + 0x24]
and eax, 0x80
test eax, eax
je 0x14016d325
and dword [rsp + 0x24], 0xffffff7f
lea rcx, [rsp + 0x270]
call fcn.1400d2e6e
movzx eax, byte [rsp + 0x3d]
test eax, eax
je 0x14016d340
mov rcx, qword [rsp + 0x4d0]
call fcn.1400d1c03
jmp 0x14016d220
lea rdx, [rsp + 0x288]
lea rcx, [rsp + 0x318]
call fcn.1400d1c30
mov qword [rsp + 0x1d0], rax
mov rdx, qword [rsp + 0x1d0]
lea rcx, [rsp + 0x1e0]
call fcn.1400d2626
movzx eax, al
test eax, eax
jne 0x14016d386
mov dword [rsp + 0x80], 1
jmp 0x14016d391
mov dword [rsp + 0x80], 0
movzx eax, byte [rsp + 0x80]
mov byte [rsp + 0x3e], al
lea rcx, [rsp + 0x288]
call fcn.1400d2e6e
movzx eax, byte [rsp + 0x3e]
test eax, eax
je 0x14016d3b8
mov byte [rsp + 0x20], 1
lea rcx, [rsp + 0x1e0]
call fcn.1400d2e6e
movzx eax, byte [rsp + 0x20]
test eax, eax
je 0x14016d3df
xor edx, edx
lea rcx, [rsp + 0x2c8]
call fcn.1400d6cfd
jmp 0x14016d400
movzx eax, byte [rsp + 0x28]
test eax, eax
je 0x14016d400
mov r9b, 0x2d
mov r8d, 1
xor edx, edx
lea rcx, [rsp + 0x2c8]
call fcn.1400d2810
lea rdx, [rsp + 0x2c8]
mov rcx, qword [rsp + 0x4c8]
call fcn.1400d6a91
mov eax, dword [rsp + 0x24]
bts eax, 8
mov dword [rsp + 0x24], eax
lea rcx, [rsp + 0x2c8]
call fcn.1400d2234
nop
lea rcx, [rsp + 0x318]
call fcn.1400d2234
mov rax, qword [rsp + 0x4c8]
mov rcx, qword [rsp + 0x4a8]
xor rcx, rsp
call fcn.1400d3ef9
add rsp, 0x4b8
ret