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

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
sub rsp, 0x218
mov qword [rsp + 0xf8], 0xfffffffffffffffe
mov rax, qword [0x14035d4f0]
xor rax, rsp
mov qword [rsp + 0x200], rax
mov rax, qword [rsp + 0x258]
mov ecx, dword [rax]
call fcn.1400dd350
movsx eax, al
test eax, eax
je 0x1401f0b74
jmp 0x1401f1dd4
mov rax, qword [rsp + 0x230]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x4c], eax
mov ecx, dword [rsp + 0x4c]
call fcn.14019b870
cdqe
lea rcx, [0x140318080]
mov eax, dword [rcx + rax*4]
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x4c]
and eax, 0x400
test eax, eax
je 0x1401f0bb4
mov eax, dword [rsp + 0x40]
or eax, 8
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x240]
mov ecx, 1
mov dword [rsp + 0xf0], ecx
movzx ecx, al
mov eax, dword [rsp + 0xf0]
shl eax, cl
dec eax
not eax
mov ecx, dword [rsp + 0x40]
and ecx, eax
mov eax, ecx
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
jne 0x1401f0bef
jmp 0x1401f1dd4
mov eax, dword [rsp + 0x4c]
and eax, 0xc
test eax, eax
jne 0x1401f0c07
mov dword [rsp + 0x80], 0
jmp 0x1401f0c1b
mov rax, qword [rsp + 0x230]
mov eax, dword [rax + 0x14]
inc eax
mov dword [rsp + 0x80], eax
mov rax, qword [rsp + 0x230]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0xe8], rax
mov ecx, dword [rsp + 0x4c]
call fcn.1401ea060
mov dword [rsp + 0xb4], eax
lea rcx, [rsp + 0x1c0]
call fcn.1401f0170
nop
lea rcx, [rsp + 0x180]
call fcn.1401f0170
nop
lea rcx, [rsp + 0x140]
call fcn.1401f0170
nop
lea rcx, [rsp + 0x100]
call fcn.1401f0170
nop
mov dword [rsp + 0x6c], 0
mov dword [rsp + 0x30], 0
mov dword [rsp + 0x2c], 0
mov dword [rsp + 0x24], 0
mov dword [rsp + 0x38], 0
mov dword [rsp + 0xb8], 0
mov byte [rsp + 0x45], 0
mov rcx, qword [rsp + 0x220]
call fcn.1401e8460
mov rdx, qword [rsp + 0x258]
mov rcx, qword [rsp + 0x220]
call fcn.14019cc80
mov qword [rsp + 0xe0], rax
mov rax, qword [rsp + 0xe0]
sar rax, 0x20
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x80]
cmp dword [rsp + 0x3c], eax
jae 0x1401f0e1c
cmp dword [rsp + 0x3c], 0x2000000
jbe 0x1401f0e1c
cmp dword [rsp + 0x38], 0
je 0x1401f0d5d
mov eax, dword [rsp + 0x38]
dec eax
mov dword [rsp + 0x38], eax
cmp dword [rsp + 0x38], 0x71
jl 0x1401f0d3f
mov edx, 0x8c
lea rcx, [rsp + 0x100]
call fcn.1401f04f0
mov eax, dword [rsp + 0x38]
sub eax, 0x71
mov dword [rsp + 0x38], eax
jmp 0x1401f0d19
mov eax, dword [rsp + 0x38]
add eax, 0x1c
mov edx, eax
lea rcx, [rsp + 0x100]
call fcn.1401f04f0
mov dword [rsp + 0x38], 0
mov eax, dword [rsp + 0x40]
and eax, 0x20
test eax, eax
je 0x1401f0dcd
mov eax, dword [rsp + 0x3c]
shr eax, 0x18
mov dword [rsp + 0x74], eax
cmp qword [rsp + 0xe8], 0
je 0x1401f0d92
mov eax, dword [rsp + 0x74]
mov rcx, qword [rsp + 0xe8]
movzx eax, byte [rcx + rax]
mov dword [rsp + 0x74], eax
cmp dword [rsp + 0x74], 0x1b
jb 0x1401f0dab
mov edx, 0x1b
lea rcx, [rsp + 0x100]
call fcn.1401f04f0
mov eax, dword [rsp + 0x74]
shl eax, 0x18
mov ecx, dword [rsp + 0x3c]
and ecx, 0xffffff
or eax, ecx
mov edx, eax
lea rcx, [rsp + 0x100]
call fcn.1401f07e0
mov rdx, qword [rsp + 0x258]
mov rcx, qword [rsp + 0x220]
call fcn.14019cc80
mov qword [rsp + 0xe0], rax
mov rax, qword [rsp + 0xe0]
sar rax, 0x20
mov dword [rsp + 0x3c], eax
cmp dword [rsp + 0x3c], 0
je 0x1401f0dcd
mov eax, dword [rsp + 0x80]
cmp dword [rsp + 0x3c], eax
jae 0x1401f0e1c
cmp dword [rsp + 0x3c], 0x2000000
ja 0x1401f0d5d
cmp dword [rsp + 0x3c], 1
jbe 0x1401f102b
mov eax, dword [rsp + 0x40]
and eax, 2
test eax, eax
je 0x1401f102b
mov eax, dword [rsp + 0x3c]
shr eax, 0x18
mov dword [rsp + 0x68], eax
cmp qword [rsp + 0xe8], 0
je 0x1401f0e60
mov eax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0xe8]
movzx eax, byte [rcx + rax]
mov dword [rsp + 0x68], eax
mov eax, dword [rsp + 0x6c]
cmp dword [rsp + 0x68], eax
je 0x1401f0ee4
cmp dword [rsp + 0x6c], 0
je 0x1401f0ea8
mov eax, dword [rsp + 0x6c]
cmp dword [rsp + 0x68], eax
jae 0x1401f0e96
cmp dword [rsp + 0x68], 2
jbe 0x1401f0e94
mov edx, 3
mov rcx, qword [rsp + 0x238]
call fcn.140198aa0
jmp 0x1401f0ea8
mov edx, 0xff
mov rcx, qword [rsp + 0x238]
call fcn.140198aa0
mov edx, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x238]
call fcn.140198aa0
mov eax, dword [rsp + 0x3c]
shr eax, 0x18
mov eax, eax
mov rcx, qword [rsp + 0x228]
movsx eax, byte [rcx + rax]
test eax, eax
je 0x1401f0edc
mov eax, dword [rsp + 0x68]
mov dword [rsp + 0x6c], eax
jmp 0x1401f0ee4
mov dword [rsp + 0x6c], 0
mov eax, dword [rsp + 0x3c]
shr eax, 0x10
mov byte [rsp + 0x44], al
movsx eax, byte [rsp + 0x44]
test eax, eax
je 0x1401f0f93
movzx eax, byte [rsp + 0x44]
mov byte [rsp + 0x60], al
mov eax, dword [rsp + 0x3c]
shr eax, 8
mov byte [rsp + 0x61], al
movzx eax, byte [rsp + 0x3c]
mov byte [rsp + 0x62], al
mov eax, 1
imul rax, rax, 1
movsx eax, byte [rsp + rax + 0x60]
test eax, eax
jne 0x1401f0f38
mov dword [rsp + 0xc8], 1
jmp 0x1401f0f70
mov eax, 1
imul rax, rax, 2
movsx eax, byte [rsp + rax + 0x60]
test eax, eax
jne 0x1401f0f57
mov dword [rsp + 0xa0], 2
jmp 0x1401f0f62
mov dword [rsp + 0xa0], 3
mov eax, dword [rsp + 0xa0]
mov dword [rsp + 0xc8], eax
mov rax, qword [rsp + 0x238]
mov rax, qword [rax]
mov r8d, dword [rsp + 0xc8]
lea rdx, [rsp + 0x60]
mov rcx, qword [rsp + 0x238]
call qword [rax + 8]
movsx eax, byte [rsp + 0x250]
test eax, eax
jne 0x1401f102b
mov rcx, qword [rsp + 0x238]
call fcn.140198c40
movsx eax, al
test eax, eax
je 0x1401f102b
mov rax, qword [rsp + 0x258]
mov ecx, dword [rax]
call fcn.1401539d0
movsx eax, al
test eax, eax
je 0x1401f0fef
mov rcx, qword [rsp + 0x238]
call fcn.1401f04c0
movsx eax, al
test eax, eax
jne 0x1401f0fef
mov rax, qword [rsp + 0x258]
mov dword [rax], 7
lea rcx, [rsp + 0x100]
call fcn.1401f0230
nop
lea rcx, [rsp + 0x140]
call fcn.1401f0230
nop
lea rcx, [rsp + 0x180]
call fcn.1401f0230
nop
lea rcx, [rsp + 0x1c0]
call fcn.1401f0230
jmp 0x1401f1dd4
mov eax, dword [rsp + 0xe0]
mov dword [rsp + 0x5c], eax
cmp dword [rsp + 0x5c], 0
jne 0x1401f1042
jmp 0x1401f0caf
mov eax, dword [rsp + 0x40]
and eax, 4
test eax, eax
je 0x1401f1212
mov eax, dword [rsp + 0x5c]
shr eax, 0x10
mov dword [rsp + 0x58], eax
cmp dword [rsp + 0x58], 0
jne 0x1401f1068
jmp 0x1401f1212
cmp dword [rsp + 0x58], 0x500
jne 0x1401f1081
mov eax, dword [rsp + 0x2c]
inc eax
mov dword [rsp + 0x2c], eax
jmp 0x1401f1212
mov eax, dword [rsp + 0x4c]
and eax, 0x800
test eax, eax
jne 0x1401f1125
cmp dword [rsp + 0x2c], 0
je 0x1401f110f
mov eax, dword [rsp + 0x2c]
dec eax
mov dword [rsp + 0x2c], eax
cmp dword [rsp + 0x2c], 0x21
jl 0x1401f10c9
mov edx, 0x25
lea rcx, [rsp + 0x180]
call fcn.1401f04f0
mov eax, dword [rsp + 0x2c]
sub eax, 0x21
mov dword [rsp + 0x2c], eax
jmp 0x1401f10a3
cmp dword [rsp + 0x58], 0x500
jae 0x1401f10e3
mov eax, dword [rsp + 0x2c]
add eax, 5
mov dword [rsp + 0x98], eax
jmp 0x1401f10f3
mov eax, 0x45
sub eax, dword [rsp + 0x2c]
mov dword [rsp + 0x98], eax
mov edx, dword [rsp + 0x98]
lea rcx, [rsp + 0x180]
call fcn.1401f04f0
mov dword [rsp + 0x2c], 0
mov edx, dword [rsp + 0x58]
lea rcx, [rsp + 0x180]
call fcn.1401f06e0
jmp 0x1401f1212
cmp dword [rsp + 0x2c], 0
je 0x1401f11c3
mov eax, dword [rsp + 0x2c]
dec eax
mov dword [rsp + 0x2c], eax
mov eax, dword [rsp + 0x2c]
cdq
mov ecx, 0x21
idiv ecx
mov eax, edx
mov dword [rsp + 0x7c], eax
cmp dword [rsp + 0xb8], 0x500
jae 0x1401f1169
mov eax, dword [rsp + 0x7c]
add eax, 5
mov dword [rsp + 0xb0], eax
jmp 0x1401f1179
mov eax, 0x45
sub eax, dword [rsp + 0x7c]
mov dword [rsp + 0xb0], eax
mov edx, dword [rsp + 0xb0]
lea rcx, [rsp + 0x180]
call fcn.1401f04f0
mov eax, dword [rsp + 0x7c]
mov ecx, dword [rsp + 0x2c]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x2c], eax
cmp dword [rsp + 0x2c], 0
jle 0x1401f11c3
mov edx, 0x25
lea rcx, [rsp + 0x180]
call fcn.1401f04f0
mov eax, dword [rsp + 0x2c]
sub eax, 0x21
mov dword [rsp + 0x2c], eax
jmp 0x1401f119d
cmp dword [rsp + 0x58], 0x200
ja 0x1401f11f6
cmp dword [rsp + 0x58], 0x200
jne 0x1401f11dc
mov byte [rsp + 0x45], 1
mov eax, dword [rsp + 0x58]
shr eax, 8
dec eax
mov edx, eax
lea rcx, [rsp + 0x180]
call fcn.1401f04f0
jmp 0x1401f1207
mov edx, dword [rsp + 0x58]
lea rcx, [rsp + 0x180]
call fcn.1401f0570
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0xb8], eax
mov eax, dword [rsp + 0x40]
and eax, 8
test eax, eax
je 0x1401f13ff
mov ecx, dword [rsp + 0x4c]
call fcn.14019b870
test eax, eax
jne 0x1401f125d
cmp dword [rsp + 0x3c], 0
jne 0x1401f1242
mov dword [rsp + 0xa4], 1
jmp 0x1401f124d
mov dword [rsp + 0xa4], 0
mov eax, dword [rsp + 0xa4]
mov dword [rsp + 0xac], eax
jmp 0x1401f128d
cmp dword [rsp + 0x5c], 0xffff
ja 0x1401f1274
mov dword [rsp + 0xc0], 1
jmp 0x1401f127f
mov dword [rsp + 0xc0], 0
mov eax, dword [rsp + 0xc0]
mov dword [rsp + 0xac], eax
cmp dword [rsp + 0xac], 0
je 0x1401f129c
jmp 0x1401f13ff
mov eax, dword [rsp + 0x5c]
shr eax, 8
and eax, 0xff
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
and eax, 0xc0
test eax, eax
jne 0x1401f12cf
cmp dword [rsp + 0x50], 2
jbe 0x1401f12cf
mov eax, dword [rsp + 0x30]
inc eax
mov dword [rsp + 0x30], eax
jmp 0x1401f13ff
mov eax, dword [rsp + 0x4c]
and eax, 0x100
test eax, eax
jne 0x1401f1378
cmp dword [rsp + 0x30], 0
je 0x1401f135e
mov eax, dword [rsp + 0x30]
dec eax
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 7
jl 0x1401f1317
mov edx, 0x70
lea rcx, [rsp + 0x1c0]
call fcn.1401f04f0
mov eax, dword [rsp + 0x30]
sub eax, 7
mov dword [rsp + 0x30], eax
jmp 0x1401f12f1
cmp dword [rsp + 0x50], 2
ja 0x1401f132d
mov eax, dword [rsp + 0x30]
inc eax
mov dword [rsp + 0xc4], eax
jmp 0x1401f133d
mov eax, 0xd
sub eax, dword [rsp + 0x30]
mov dword [rsp + 0xc4], eax
mov eax, dword [rsp + 0xc4]
shl eax, 4
mov edx, eax
lea rcx, [rsp + 0x1c0]
call fcn.1401f04f0
mov dword [rsp + 0x30], 0
cmp dword [rsp + 0x50], 2
jbe 0x1401f1376
mov eax, dword [rsp + 0x50]
shr eax, 6
add eax, 0xd
shl eax, 4
mov dword [rsp + 0x50], eax
jmp 0x1401f13ee
cmp dword [rsp + 0x30], 0
je 0x1401f13d0
mov eax, dword [rsp + 0x30]
dec eax
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0xd
jl 0x1401f13af
mov edx, 0x30
lea rcx, [rsp + 0x1c0]
call fcn.1401f04f0
mov eax, dword [rsp + 0x30]
sub eax, 0xd
mov dword [rsp + 0x30], eax
jmp 0x1401f1389
mov eax, dword [rsp + 0x30]
add eax, 3
shl eax, 4
mov edx, eax
lea rcx, [rsp + 0x1c0]
call fcn.1401f04f0
mov dword [rsp + 0x30], 0
cmp dword [rsp + 0x50], 2
jbe 0x1401f13ee
mov eax, dword [rsp + 0x50]
shr eax, 6
mov ecx, 3
sub ecx, eax
mov eax, ecx
shl eax, 4
mov dword [rsp + 0x50], eax
mov edx, dword [rsp + 0x50]
lea rcx, [rsp + 0x1c0]
call fcn.1401f04f0
mov eax, dword [rsp + 0x40]
and eax, 0x10
test eax, eax
je 0x1401f168c
mov eax, dword [rsp + 0xb4]
mov ecx, dword [rsp + 0x5c]
and ecx, eax
mov eax, ecx
mov dword [rsp + 0x28], eax
cmp dword [rsp + 0x28], 0x500
jne 0x1401f143a
mov eax, dword [rsp + 0x24]
inc eax
mov dword [rsp + 0x24], eax
jmp 0x1401f168c
mov eax, dword [rsp + 0xb4]
and eax, 0x8000
test eax, eax
jne 0x1401f14f8
cmp dword [rsp + 0x24], 0
je 0x1401f14cb
mov eax, dword [rsp + 0x24]
dec eax
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0x61
jl 0x1401f1485
mov edx, 0x65
lea rcx, [rsp + 0x140]
call fcn.1401f04f0
mov eax, dword [rsp + 0x24]
sub eax, 0x61
mov dword [rsp + 0x24], eax
jmp 0x1401f145f
cmp dword [rsp + 0x28], 0x500
jae 0x1401f149f
mov eax, dword [rsp + 0x24]
add eax, 5
mov dword [rsp + 0xbc], eax
jmp 0x1401f14af
mov eax, 0xc5
sub eax, dword [rsp + 0x24]
mov dword [rsp + 0xbc], eax
mov edx, dword [rsp + 0xbc]
lea rcx, [rsp + 0x140]
call fcn.1401f04f0
mov dword [rsp + 0x24], 0
cmp dword [rsp + 0x28], 0x500
jbe 0x1401f14e2
mov eax, dword [rsp + 0x28]
add eax, 0xc000
mov dword [rsp + 0x28], eax
mov edx, dword [rsp + 0x28]
lea rcx, [rsp + 0x140]
call fcn.1401f06e0
jmp 0x1401f168c
mov eax, dword [rsp + 0x4c]
and eax, 0x100
test eax, eax
jne 0x1401f15b3
cmp dword [rsp + 0x24], 0
je 0x1401f1586
mov eax, dword [rsp + 0x24]
dec eax
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0x21
jl 0x1401f1540
mov edx, 0x25
lea rcx, [rsp + 0x140]
call fcn.1401f04f0
mov eax, dword [rsp + 0x24]
sub eax, 0x21
mov dword [rsp + 0x24], eax
jmp 0x1401f151a
cmp dword [rsp + 0x28], 0x500
jae 0x1401f155a
mov eax, dword [rsp + 0x24]
add eax, 5
mov dword [rsp + 0x9c], eax
jmp 0x1401f156a
mov eax, 0x45
sub eax, dword [rsp + 0x24]
mov dword [rsp + 0x9c], eax
mov edx, dword [rsp + 0x9c]
lea rcx, [rsp + 0x140]
call fcn.1401f04f0
mov dword [rsp + 0x24], 0
cmp dword [rsp + 0x28], 0x500
jbe 0x1401f159d
mov eax, dword [rsp + 0x28]
add eax, 0x4000
mov dword [rsp + 0x28], eax
mov edx, dword [rsp + 0x28]
lea rcx, [rsp + 0x140]
call fcn.1401f06e0
jmp 0x1401f168c
cmp dword [rsp + 0x28], 0x200
ja 0x1401f15bf
jmp 0x1401f15fc
cmp dword [rsp + 0x5c], 0xffff
jbe 0x1401f15ef
mov eax, dword [rsp + 0x28]
xor eax, 0xc000
mov dword [rsp + 0x28], eax
cmp dword [rsp + 0x28], 0xc500
jae 0x1401f15ed
mov eax, dword [rsp + 0x28]
sub eax, 0x4000
mov dword [rsp + 0x28], eax
jmp 0x1401f15fc
mov eax, dword [rsp + 0x28]
add eax, 0x4000
mov dword [rsp + 0x28], eax
cmp dword [rsp + 0x24], 0
je 0x1401f167b
mov eax, dword [rsp + 0x24]
dec eax
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0x21
jl 0x1401f1633
mov edx, 0xa5
lea rcx, [rsp + 0x140]
call fcn.1401f04f0
mov eax, dword [rsp + 0x24]
sub eax, 0x21
mov dword [rsp + 0x24], eax
jmp 0x1401f160d
cmp dword [rsp + 0x28], 0x8500
jae 0x1401f164f
mov eax, dword [rsp + 0x24]
add eax, 0x85
mov dword [rsp + 0x90], eax
jmp 0x1401f165f
mov eax, 0xc5
sub eax, dword [rsp + 0x24]
mov dword [rsp + 0x90], eax
mov edx, dword [rsp + 0x90]
lea rcx, [rsp + 0x140]
call fcn.1401f04f0
mov dword [rsp + 0x24], 0
mov edx, dword [rsp + 0x28]
lea rcx, [rsp + 0x140]
call fcn.1401f06e0
mov eax, dword [rsp + 0x40]
and eax, 0x20
test eax, eax
je 0x1401f17ed
mov eax, dword [rsp + 0x5c]
and eax, 0xffff
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x48]
and eax, 0xc0
test eax, eax
jne 0x1401f16ce
cmp dword [rsp + 0x48], 0x200
jbe 0x1401f16ce
mov eax, dword [rsp + 0x38]
inc eax
mov dword [rsp + 0x38], eax
jmp 0x1401f17ed
cmp dword [rsp + 0x48], 0x200
ja 0x1401f1738
mov eax, dword [rsp + 0x4c]
and eax, 0xc
test eax, eax
jne 0x1401f1738
lea rcx, [rsp + 0x100]
call fcn.1401f0ae0
movsx eax, al
test eax, eax
jne 0x1401f171d
lea rcx, [rsp + 0x100]
call fcn.1400fe720
dec eax
mov edx, eax
lea rcx, [rsp + 0x100]
call fcn.1401f0250
movzx eax, al
cmp eax, 2
jne 0x1401f1738
mov eax, dword [rsp + 0x48]
shr eax, 8
mov edx, eax
lea rcx, [rsp + 0x100]
call fcn.1401f04f0
jmp 0x1401f17ed
cmp dword [rsp + 0x48], 0x200
ja 0x1401f174f
mov eax, dword [rsp + 0x48]
shr eax, 8
mov dword [rsp + 0x48], eax
jmp 0x1401f1762
mov eax, dword [rsp + 0x48]
shr eax, 6
and eax, 3
add eax, 0xfc
mov dword [rsp + 0x48], eax
cmp dword [rsp + 0x38], 0
je 0x1401f17dc
mov eax, dword [rsp + 0x38]
dec eax
mov dword [rsp + 0x38], eax
cmp dword [rsp + 0x38], 0x71
jl 0x1401f1799
mov edx, 0x8c
lea rcx, [rsp + 0x100]
call fcn.1401f04f0
mov eax, dword [rsp + 0x38]
sub eax, 0x71
mov dword [rsp + 0x38], eax
jmp 0x1401f1773
cmp dword [rsp + 0x48], 0x1c
jae 0x1401f17b0
mov eax, dword [rsp + 0x38]
add eax, 0x1c
mov dword [rsp + 0xa8], eax
jmp 0x1401f17c0
mov eax, 0xfc
sub eax, dword [rsp + 0x38]
mov dword [rsp + 0xa8], eax
mov edx, dword [rsp + 0xa8]
lea rcx, [rsp + 0x100]
call fcn.1401f04f0
mov dword [rsp + 0x38], 0
mov edx, dword [rsp + 0x48]
lea rcx, [rsp + 0x100]
call fcn.1401f04f0
mov eax, dword [rsp + 0x5c]
shr eax, 0x18
cmp eax, 1
jne 0x1401f17fb
jmp 0x1401f1800
jmp 0x1401f0caf
mov rax, qword [rsp + 0x258]
mov ecx, dword [rax]
call fcn.1400dd350
movsx eax, al
test eax, eax
je 0x1401f1852
lea rcx, [rsp + 0x100]
call fcn.1401f0230
nop
lea rcx, [rsp + 0x140]
call fcn.1401f0230
nop
lea rcx, [rsp + 0x180]
call fcn.1401f0230
nop
lea rcx, [rsp + 0x1c0]
call fcn.1401f0230
jmp 0x1401f1dd4
mov byte [rsp + 0x21], 1
mov eax, dword [rsp + 0x40]
and eax, 4
test eax, eax
je 0x1401f1a84
mov rax, qword [rsp + 0x248]
mov rax, qword [rax]
mov edx, 2
mov rcx, qword [rsp + 0x248]
call qword [rax + 8]
movsx eax, al
test eax, eax
jne 0x1401f18c4
lea rcx, [rsp + 0x100]
call fcn.1401f0230
nop
lea rcx, [rsp + 0x140]
call fcn.1401f0230
nop
lea rcx, [rsp + 0x180]
call fcn.1401f0230
nop
lea rcx, [rsp + 0x1c0]
call fcn.1401f0230
jmp 0x1401f1dd4
lea rcx, [rsp + 0x180]
call fcn.1401f0b10
movsx eax, al
movsx ecx, byte [rsp + 0x21]
and ecx, eax
mov eax, ecx
mov byte [rsp + 0x21], al
mov edx, 1
mov rcx, qword [rsp + 0x238]
call fcn.140198aa0
lea rcx, [rsp + 0x180]
call fcn.1401f0a20
mov qword [rsp + 0x88], rax
lea rcx, [rsp + 0x180]
call fcn.1400fe720
dec eax
mov dword [rsp + 0x94], eax
mov eax, dword [rsp + 0x4c]
and eax, 0x800
test eax, eax
je 0x1401f1a5e
mov dword [rsp + 0x70], 0
movsx eax, byte [rsp + 0x45]
test eax, eax
je 0x1401f196c
mov eax, dword [rsp + 0x70]
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x54]
mov rcx, qword [rsp + 0x88]
movzx eax, byte [rcx + rax]
cmp eax, 1
jle 0x1401f196a
mov eax, dword [rsp + 0x54]
inc eax
mov dword [rsp + 0x54], eax
jmp 0x1401f1948
jmp 0x1401f1977
mov eax, dword [rsp + 0x94]
mov dword [rsp + 0x54], eax
mov eax, dword [rsp + 0x54]
cmp dword [rsp + 0x70], eax
jge 0x1401f1a27
movsxd rax, dword [rsp + 0x70]
mov rcx, qword [rsp + 0x88]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0xd8], rax
movsxd rax, dword [rsp + 0x54]
mov rcx, qword [rsp + 0x88]
lea rax, [rcx + rax - 1]
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0xd0]
cmp qword [rsp + 0xd8], rax
jae 0x1401f1a27
mov rax, qword [rsp + 0xd8]
movzx eax, byte [rax]
mov byte [rsp + 0x64], al
mov rax, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0xd0]
movzx ecx, byte [rcx]
mov byte [rax], cl
mov rax, qword [rsp + 0xd8]
inc rax
mov qword [rsp + 0xd8], rax
mov rax, qword [rsp + 0xd0]
movzx ecx, byte [rsp + 0x64]
mov byte [rax], cl
mov rax, qword [rsp + 0xd0]
dec rax
mov qword [rsp + 0xd0], rax
jmp 0x1401f19ba
movsxd rax, dword [rsp + 0x54]
mov rcx, qword [rsp + 0x88]
movzx eax, byte [rcx + rax]
test eax, eax
jne 0x1401f1a3e
jmp 0x1401f1a5e
movsxd rax, dword [rsp + 0x54]
mov rcx, qword [rsp + 0x88]
mov byte [rcx + rax], 2
mov eax, dword [rsp + 0x54]
inc eax
mov dword [rsp + 0x70], eax
jmp 0x1401f1937
mov rax, qword [rsp + 0x238]
mov rax, qword [rax]
mov r8d, dword [rsp + 0x94]
mov rdx, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x238]
call qword [rax + 8]
mov eax, dword [rsp + 0x40]
and eax, 8
test eax, eax
je 0x1401f1c10
mov rax, qword [rsp + 0x248]
mov rax, qword [rax]
mov edx, 3
mov rcx, qword [rsp + 0x248]
call qword [rax + 8]
movsx eax, al
test eax, eax
jne 0x1401f1af1
lea rcx, [rsp + 0x100]
call fcn.1401f0230
nop
lea rcx, [rsp + 0x140]
call fcn.1401f0230
nop
lea rcx, [rsp + 0x180]
call fcn.1401f0230
nop
lea rcx, [rsp + 0x1c0]
call fcn.1401f0230
jmp 0x1401f1dd4
lea rcx, [rsp + 0x1c0]
call fcn.1401f0b10
movsx eax, al
movsx ecx, byte [rsp + 0x21]
and ecx, eax
mov eax, ecx
mov byte [rsp + 0x21], al
mov edx, 1
mov rcx, qword [rsp + 0x238]
call fcn.140198aa0
lea rcx, [rsp + 0x1c0]
call fcn.1400fe720
dec eax
mov dword [rsp + 0xf4], eax
mov byte [rsp + 0x20], 0
mov dword [rsp + 0x78], 0
jmp 0x1401f1b4f
mov eax, dword [rsp + 0x78]
inc eax
mov dword [rsp + 0x78], eax
mov eax, dword [rsp + 0xf4]
cmp dword [rsp + 0x78], eax
jge 0x1401f1bf3
mov edx, dword [rsp + 0x78]
lea rcx, [rsp + 0x1c0]
call fcn.1401f0250
mov byte [rsp + 0x34], al
movzx eax, byte [rsp + 0x34]
cmp eax, 2
jg 0x1401f1bb7
movzx eax, byte [rsp + 0x20]
test eax, eax
je 0x1401f1ba1
movzx eax, byte [rsp + 0x20]
mov edx, eax
mov rcx, qword [rsp + 0x238]
call fcn.140198aa0
mov byte [rsp + 0x20], 0
movzx eax, byte [rsp + 0x34]
mov edx, eax
mov rcx, qword [rsp + 0x238]
call fcn.140198aa0
jmp 0x1401f1bee
movzx eax, byte [rsp + 0x20]
test eax, eax
jne 0x1401f1bcb
movzx eax, byte [rsp + 0x34]
mov byte [rsp + 0x20], al
jmp 0x1401f1bee
movzx eax, byte [rsp + 0x20]
movzx ecx, byte [rsp + 0x34]
sar ecx, 4
or eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x238]
call fcn.140198aa0
mov byte [rsp + 0x20], 0
jmp 0x1401f1b45
movzx eax, byte [rsp + 0x20]
test eax, eax
je 0x1401f1c10
movzx eax, byte [rsp + 0x20]
mov edx, eax
mov rcx, qword [rsp + 0x238]
call fcn.140198aa0
mov eax, dword [rsp + 0x40]
and eax, 0x10
test eax, eax
je 0x1401f1cc1
mov rax, qword [rsp + 0x248]
mov rax, qword [rax]
mov edx, 4
mov rcx, qword [rsp + 0x248]
call qword [rax + 8]
movsx eax, al
test eax, eax
jne 0x1401f1c7d
lea rcx, [rsp + 0x100]
call fcn.1401f0230
nop
lea rcx, [rsp + 0x140]
call fcn.1401f0230
nop
lea rcx, [rsp + 0x180]
call fcn.1401f0230
nop
lea rcx, [rsp + 0x1c0]
call fcn.1401f0230
jmp 0x1401f1dd4
lea rcx, [rsp + 0x140]
call fcn.1401f0b10
movsx eax, al
movsx ecx, byte [rsp + 0x21]
and ecx, eax
mov eax, ecx
mov byte [rsp + 0x21], al
mov edx, 1
mov rcx, qword [rsp + 0x238]
call fcn.140198aa0
mov rdx, qword [rsp + 0x238]
lea rcx, [rsp + 0x140]
call fcn.1401f0690
mov eax, dword [rsp + 0x40]
and eax, 0x20
test eax, eax
je 0x1401f1d72
mov rax, qword [rsp + 0x248]
mov rax, qword [rax]
mov edx, 5
mov rcx, qword [rsp + 0x248]
call qword [rax + 8]
movsx eax, al
test eax, eax
jne 0x1401f1d2e
lea rcx, [rsp + 0x100]
call fcn.1401f0230
nop
lea rcx, [rsp + 0x140]
call fcn.1401f0230
nop
lea rcx, [rsp + 0x180]
call fcn.1401f0230
nop
lea rcx, [rsp + 0x1c0]
call fcn.1401f0230
jmp 0x1401f1dd4
lea rcx, [rsp + 0x100]
call fcn.1401f0b10
movsx eax, al
movsx ecx, byte [rsp + 0x21]
and ecx, eax
mov eax, ecx
mov byte [rsp + 0x21], al
mov edx, 1
mov rcx, qword [rsp + 0x238]
call fcn.140198aa0
mov rdx, qword [rsp + 0x238]
lea rcx, [rsp + 0x100]
call fcn.1401f0690
movsx eax, byte [rsp + 0x21]
test eax, eax
je 0x1401f1d8f
mov rcx, qword [rsp + 0x238]
call fcn.1401f04c0
movsx eax, al
test eax, eax
jne 0x1401f1d9d
mov rax, qword [rsp + 0x258]
mov dword [rax], 7
lea rcx, [rsp + 0x100]
call fcn.1401f0230
nop
lea rcx, [rsp + 0x140]
call fcn.1401f0230
nop
lea rcx, [rsp + 0x180]
call fcn.1401f0230
nop
lea rcx, [rsp + 0x1c0]
call fcn.1401f0230
mov rcx, qword [rsp + 0x200]
xor rcx, rsp
call fcn.140236770
add rsp, 0x218
ret