Function at 0x4f5f80
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x4f65f9
sub rsp, 0x78
mov qword [rsp + 0x70], rbp
lea rbp, [rsp + 0x70]
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x90], rcx
test rdi, rdi
je 0x4f610f
cmp rdi, 1
je 0x4f60d9
nop dword [rax + rax]
cmp rbx, rdi
je 0x4f60aa
jl 0x4f6099
mov qword [rsp + 0x98], rdi
mov qword [rsp + 0x90], rcx
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], rbx
cmp qword [0x007bb848], rdi
jl 0x4f6068
cmp rbx, 0x40
jle 0x4f602f
movzx esi, byte [rcx]
mov byte [rsp + 0x2f], sil
movzx r8d, byte [rcx + 1]
mov byte [rsp + 0x2d], r8b
mov rdx, rbx
sub rbx, rdi
mov qword [rsp + 0x68], rbx
lea r9, [rbx + 1]
mov qword [rsp + 0x38], r9
xor r10d, r10d
xor r11d, r11d
jmp 0x4f6373
mov qword [rsp], rax
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rcx
mov qword [rsp + 0x18], rdi
call fcn.00403120
xorps xmm15, xmm15
mov r14, qword [0x007bb9c8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x20]
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
movzx esi, byte [rcx]
mov byte [rsp + 0x2e], sil
movzx r8d, byte [rcx + 1]
mov byte [rsp + 0x2c], r8b
mov rdx, rbx
sub rbx, rdi
mov qword [rsp + 0x68], rbx
lea r9, [rbx + 1]
mov qword [rsp + 0x30], r9
xor r10d, r10d
xor r11d, r11d
jmp 0x4f6120
mov rax, 0xffffffffffffffff
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
mov rbx, rax
mov rax, rcx
mov rcx, rdi
call fcn.00402da0
test al, al
je 0x4f60c8
xor eax, eax
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
mov rax, 0xffffffffffffffff
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
movzx ecx, byte [rcx]
mov qword [rsp], rax
mov qword [rsp + 8], rbx
mov byte [rsp + 0x10], cl
call fcn.004032a0
xorps xmm15, xmm15
mov r14, qword [0x007bb9c8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x18]
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
xor eax, eax
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
mov r10, r13
nop
cmp r10, r9
jge 0x4f6321
cmp rdx, r10
jbe 0x4f6365
mov qword [rsp + 0x50], r11
movzx r12d, byte [r10 + rax]
nop dword [rax]
cmp r12b, sil
je 0x4f61ed
cmp rdx, r9
jb 0x4f635b
lea r12, [r10 + 1]
cmp r12, r9
ja 0x4f6350
mov qword [rsp + 0x60], r12
sub rbx, r10
mov rdx, rbx
neg rbx
sar rbx, 0x3f
and rbx, r12
add rbx, rax
mov qword [rsp], rbx
mov qword [rsp + 8], rdx
mov byte [rsp + 0x10], sil
call fcn.004032a0
xorps xmm15, xmm15
mov r14, qword [0x007bb9c8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x18]
test rax, rax
jl 0x4f6310
mov rsi, qword [rsp + 0x60]
lea r10, [rax + rsi]
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x68]
movzx esi, byte [rsp + 0x2e]
mov rdi, qword [rsp + 0x98]
movzx r8d, byte [rsp + 0x2c]
mov r9, qword [rsp + 0x30]
mov r11, qword [rsp + 0x50]
lea r12, [r10 + 1]
cmp rdx, r12
jbe 0x4f6345
mov qword [rsp + 0x60], r12
movzx r13d, byte [r10 + rax + 1]
cmp r13b, r8b
jne 0x4f6299
lea r13, [r10 + rdi]
cmp rdx, r13
jb 0x4f633d
nop dword [rax + rax]
cmp r10, r13
ja 0x4f6332
mov qword [rsp + 0x40], r10
mov rdx, rdi
neg rdi
sar rdi, 0x3f
and rdi, r10
lea rsi, [rdi + rax]
mov rbx, rcx
mov rcx, rdx
mov rax, rsi
call fcn.00402da0
test al, al
jne 0x4f6301
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x68]
movzx esi, byte [rsp + 0x2e]
mov rdi, qword [rsp + 0x98]
movzx r8d, byte [rsp + 0x2c]
mov r9, qword [rsp + 0x30]
mov r10, qword [rsp + 0x40]
mov r11, qword [rsp + 0x50]
mov r12, qword [rsp + 0x60]
inc r11
mov r13, r12
sar r12, 4
add r12, 4
cmp r12, r11
jg 0x4f611b
cmp r13, r9
jge 0x4f611b
sub rdx, r10
lea rbx, [rdx - 1]
mov rdx, rbx
neg rbx
sar rbx, 0x3f
and rbx, r13
add rax, rbx
mov rbx, rdx
call fcn.004024c0
test rax, rax
jge 0x4f62ee
mov rax, 0xffffffffffffffff
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
mov rcx, qword [rsp + 0x60]
add rax, rcx
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
nop
ret
mov rax, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
mov rax, 0xffffffffffffffff
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
mov rax, 0xffffffffffffffff
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
mov rax, r10
mov rcx, r13
call fcn.00463e80
mov rcx, r13
call fcn.00463e00
mov rax, r12
mov rcx, rdx
call fcn.00463dc0
mov rax, r12
mov rcx, r9
call fcn.00463e80
mov rcx, r9
nop
call fcn.00463e00
mov rax, r10
mov rcx, rdx
call fcn.00463dc0
mov r10, r12
cmp r10, r9
jge 0x4f65a9
nop dword [rax]
cmp rdx, r10
jbe 0x4f65ed
mov qword [rsp + 0x58], r11
movzx r12d, byte [rax + r10]
cmp r12b, sil
je 0x4f644c
nop dword [rax]
cmp rdx, r9
jb 0x4f65e5
lea r12, [r10 + 1]
cmp r12, r9
ja 0x4f65d8
mov qword [rsp + 0x60], r12
sub rbx, r10
mov rdx, rbx
neg rbx
sar rbx, 0x3f
and rbx, r12
add rbx, rax
mov qword [rsp], rbx
mov qword [rsp + 8], rdx
mov byte [rsp + 0x10], sil
nop dword [rax]
call fcn.004032a0
xorps xmm15, xmm15
mov r14, qword [0x007bb9c8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x18]
nop dword [rax]
test rax, rax
jl 0x4f6598
mov rsi, qword [rsp + 0x60]
lea r10, [rax + rsi]
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x68]
movzx esi, byte [rsp + 0x2f]
mov rdi, qword [rsp + 0x98]
movzx r8d, byte [rsp + 0x2d]
mov r9, qword [rsp + 0x38]
mov r11, qword [rsp + 0x58]
lea r12, [r10 + 1]
cmp rdx, r12
jbe 0x4f65cd
mov qword [rsp + 0x60], r12
movzx r13d, byte [rax + r10 + 1]
cmp r13b, r8b
jne 0x4f64f9
lea r13, [r10 + rdi]
cmp rdx, r13
jb 0x4f65c5
nop word [rax + rax]
cmp r10, r13
ja 0x4f65ba
mov qword [rsp + 0x48], r10
mov rdx, rdi
neg rdi
sar rdi, 0x3f
and rdi, r10
lea rsi, [rax + rdi]
mov rbx, rcx
mov rcx, rdx
mov rax, rsi
call fcn.00402da0
test al, al
jne 0x4f6589
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x68]
movzx esi, byte [rsp + 0x2f]
mov rdi, qword [rsp + 0x98]
movzx r8d, byte [rsp + 0x2d]
mov r9, qword [rsp + 0x38]
mov r10, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov r12, qword [rsp + 0x60]
inc r11
lea r13, [r10 + 0x11]
sar r13, 0x3f
shr r13, 0x3d
add r13, 0x11
add r13, r10
sar r13, 3
cmp r13, r11
jge 0x4f6370
sub rdx, r10
dec rdx
mov rbx, rdx
neg rdx
sar rdx, 0x3f
and rdx, r12
add rax, rdx
mov qword [rsp], rax
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rcx
mov qword [rsp + 0x18], rdi
call fcn.00403120
xorps xmm15, xmm15
mov r14, qword [0x007bb9c8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x20]
test rax, rax
jl 0x4f6578
mov rcx, qword [rsp + 0x60]
add rax, rcx
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
mov rax, 0xffffffffffffffff
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
mov rax, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
mov rax, 0xffffffffffffffff
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
mov rax, 0xffffffffffffffff
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
mov rax, r10
mov rcx, r13
call fcn.00463e80
mov rcx, r13
call fcn.00463e00
mov rax, r12
mov rcx, rdx
call fcn.00463dc0
mov rax, r12
mov rcx, r9
nop
call fcn.00463e80
mov rcx, r9
call fcn.00463e00
mov rax, r10
mov rcx, rdx
call fcn.00463dc0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
call fcn.00461760
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
jmp fcn.004f5f80