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

Disassembly:
lea r12, [rsp - 0x370]
cmp r12, qword [r14 + 0x10]
jbe 0x5b9a75
push rbp
mov rbp, rsp
sub rsp, 0x3e8
mov qword [rsp + 0x3f8], rax
nop
lea rax, [0x005ee460]
call fcn.0040cca0
mov qword [rsp + 0x2b8], rax
mov qword [rax], 0
mov rcx, qword [rsp + 0x3f8]
movups xmm0, xmmword [rcx]
movups xmmword [rsp + 0x270], xmm0
movups xmm0, xmmword [rcx + 0x10]
movups xmmword [rsp + 0x280], xmm0
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rsp + 0x290], xmm0
movups xmm0, xmmword [rcx + 0x30]
movups xmmword [rsp + 0x2a0], xmm0
mov rbx, rax
lea rdi, [0x007b9880]
lea rsi, [0x00609760]
lea r8, [rsp + 0x270]
lea rax, [0x00643ae8]
lea rcx, [0x006453f0]
nop
call fcn.005260a0
mov rcx, qword [rsp + 0x3f8]
movups xmm0, xmmword [rcx]
movups xmmword [rsp + 0x230], xmm0
movups xmm0, xmmword [rcx + 0x10]
movups xmmword [rsp + 0x240], xmm0
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rsp + 0x250], xmm0
movups xmm0, xmmword [rcx + 0x30]
movups xmmword [rsp + 0x260], xmm0
lea rax, [0x00609760]
lea rbx, [rsp + 0x230]
call fcn.005276c0
mov rcx, qword [rsp + 0x3f8]
cmp byte [rcx + 0x40], 0
nop dword [rax]
je 0x5b8b4e
mov qword [rsp + 0xe0], rax
movups xmm0, xmmword [rcx + 0x41]
movups xmmword [rsp + 0x1f0], xmm0
movups xmm0, xmmword [rcx + 0x51]
movups xmmword [rsp + 0x200], xmm0
movups xmm0, xmmword [rcx + 0x61]
movups xmmword [rsp + 0x210], xmm0
movups xmm0, xmmword [rcx + 0x71]
movups xmmword [rsp + 0x220], xmm0
lea rax, [0x00643ae8]
mov rbx, qword [rsp + 0x2b8]
lea rdi, [0x007b9880]
lea rsi, [0x005d8c60]
lea r8, [rsp + 0x1f0]
lea rcx, [0x006453f0]
call fcn.005260a0
mov rdx, qword [rsp + 0x3f8]
movups xmm0, xmmword [rdx + 0x41]
movups xmmword [rsp + 0x1b0], xmm0
movups xmm0, xmmword [rdx + 0x51]
movups xmmword [rsp + 0x1c0], xmm0
movups xmm0, xmmword [rdx + 0x61]
movups xmmword [rsp + 0x1d0], xmm0
movups xmm0, xmmword [rdx + 0x71]
movups xmmword [rsp + 0x1e0], xmm0
lea rax, [0x005d8c60]
lea rbx, [rsp + 0x1b0]
call fcn.005276c0
mov rdx, qword [rsp + 0xe0]
add rax, rdx
mov rcx, qword [rsp + 0x3f8]
mov rdx, qword [rcx + 0x88]
test rdx, rdx
je 0x5b8bd7
mov qword [rsp + 0xa8], rax
mov r9, qword [rcx + 0x90]
mov r10, qword [rcx + 0x98]
mov qword [rsp + 0x3d0], rdx
mov qword [rsp + 0x3d8], r9
mov qword [rsp + 0x3e0], r10
lea rax, [0x00643ae8]
mov rbx, qword [rsp + 0x2b8]
lea rdi, [0x007b9880]
lea rsi, [0x005d65e0]
lea r8, [rsp + 0x3d0]
lea rcx, [0x006453f0]
call fcn.005260a0
mov rdx, qword [rsp + 0x3f8]
mov r9, qword [rdx + 0x90]
mov r10, qword [rsp + 0xa8]
lea rax, [r10 + r9]
mov rcx, rdx
mov ebx, dword [rcx + 0x3c]
cmp eax, ebx
je 0x5b8c57
mov qword [rsp + 0xd8], rax
sub ebx, eax
mov dword [rsp + 0x4c], ebx
mov ecx, ebx
lea rax, [0x005d7960]
call fcn.00447fa0
mov qword [rsp + 0x3b8], rax
mov edx, dword [rsp + 0x4c]
mov qword [rsp + 0x3c0], rdx
mov qword [rsp + 0x3c8], rdx
lea rax, [0x00643ae8]
mov rbx, qword [rsp + 0x2b8]
lea rcx, [0x006453f0]
lea rdi, [0x007b9880]
lea rsi, [0x005d65e0]
lea r8, [rsp + 0x3b8]
call fcn.005260a0
mov edx, dword [rsp + 0x4c]
mov rsi, qword [rsp + 0xd8]
lea rax, [rsi + rdx]
mov qword [rsp + 0xa8], rax
lea rax, [0x005d8b40]
call fcn.0040cca0
mov dword [rax], 0x4550
mov qword [rsp + 0x3a0], rax
mov qword [rsp + 0x3a8], 4
mov qword [rsp + 0x3b0], 4
lea rax, [0x00643ae8]
mov rbx, qword [rsp + 0x2b8]
lea rcx, [0x006453f0]
lea rdi, [0x007b9880]
lea rsi, [0x005d65e0]
lea r8, [rsp + 0x3a0]
nop dword [rax]
call fcn.005260a0
mov rcx, qword [rsp + 0x3f8]
mov rdx, qword [rcx + 0xa0]
mov qword [rsp + 0xfc], rdx
movups xmm0, xmmword [rcx + 0xa4]
movups xmmword [rsp + 0x100], xmm0
lea rax, [0x00643ae8]
mov rbx, qword [rsp + 0x2b8]
lea rdi, [0x007b9880]
lea rsi, [0x00605640]
lea r8, [rsp + 0xfc]
lea rcx, [0x006453f0]
call fcn.005260a0
mov rcx, qword [rsp + 0x3f8]
mov rdx, qword [rcx + 0xa0]
mov qword [rsp + 0xe8], rdx
movups xmm0, xmmword [rcx + 0xa4]
movups xmmword [rsp + 0xec], xmm0
lea rax, [0x00605640]
lea rbx, [rsp + 0xe8]
call fcn.005276c0
mov rcx, qword [rsp + 0x3f8]
movzx edx, word [rcx + 0xa0]
mov word [rsp + 0x36], dx
mov rbx, qword [rsp + 0xa8]
add rbx, rax
mov qword [rsp + 0xe0], rbx
nop dword [rax]
cmp dx, 0x14c
jne 0x5b8e20
mov rax, qword [rcx + 0xb8]
lea rsi, [0x005d20a0]
nop dword [rax]
cmp rax, rsi
jne 0x5b9a65
mov r8, qword [rcx + 0xc0]
mov qword [rsp + 0x308], r8
lea rax, [0x00643ae8]
mov rbx, qword [rsp + 0x2b8]
lea rdi, [0x007b9880]
lea rcx, [0x006453f0]
call fcn.005260a0
lea rax, [0x005d20a0]
mov rbx, qword [rsp + 0x308]
call fcn.005276c0
mov rdx, qword [rsp + 0xe0]
lea rdx, [rdx + rax]
lea rdx, [rdx + 4]
mov r9, qword [rsp + 0x308]
mov r10d, dword [r9 + 0x80]
mov r9d, dword [r9 + 0x84]
jmp 0x5b8eb4
cmp dx, 0x8664
jne 0x5b8f39
mov rax, qword [rcx + 0xb8]
lea rsi, [0x005d20e0]
nop dword [rax]
cmp rax, rsi
jne 0x5b9a55
mov r8, qword [rcx + 0xc0]
mov qword [rsp + 0x308], r8
lea rax, [0x00643ae8]
mov rbx, qword [rsp + 0x2b8]
lea rdi, [0x007b9880]
lea rcx, [0x006453f0]
call fcn.005260a0
lea rax, [0x005d20e0]
mov rbx, qword [rsp + 0x308]
call fcn.005276c0
mov rdx, qword [rsp + 0xe0]
lea rdx, [rdx + rax]
lea rdx, [rdx + 4]
mov r9, qword [rsp + 0x308]
mov r10d, dword [r9 + 0x90]
mov r9d, dword [r9 + 0x94]
mov dword [rsp + 0x38], r9d
mov dword [rsp + 0x44], r10d
mov qword [rsp + 0xa8], rdx
mov rsi, qword [rsp + 0x3f8]
mov rcx, qword [rsi + 0xd0]
mov qword [rsp + 0x80], rcx
lea rax, [0x00606e40]
mov rbx, rcx
call fcn.00447fa0
mov qword [rsp + 0x300], rax
mov rdx, qword [rsp + 0x3f8]
mov rsi, qword [rdx + 0xc8]
mov qword [rsp + 0x2f8], rsi
mov rdi, qword [rdx + 0xd0]
mov qword [rsp + 0xe0], rdi
mov r8, qword [rsp + 0x2b8]
mov r9, qword [rsp + 0x80]
mov r10, qword [rsp + 0xa8]
xor ecx, ecx
jmp 0x5b90e7
call fcn.005bbc00
mov qword [rsp + 0xb0], rbx
mov qword [rsp + 0x2e0], rax
nop
lea rax, [0x005e8700]
call fcn.0040cca0
mov rcx, qword [rsp + 0xb0]
mov qword [rax + 8], rcx
cmp dword [0x007b9b20], 0
jne 0x5b8f7a
mov rdx, qword [rsp + 0x2e0]
jmp 0x5b8f8a
call fcn.004617c0
mov rdx, qword [rsp + 0x2e0]
mov qword [r11], rdx
mov qword [rax], rdx
xor ebx, ebx
mov rcx, rbx
lea rdi, [0x006439a8]
mov rsi, rax
xor eax, eax
add rsp, 0x3e8
pop rbp
ret
mov qword [rsp + 0xa0], rcx
mov qword [rsp + 0xd0], r10
lea rdx, [rcx + rcx*4]
lea r9, [rax + rdx*8]
lea r9, [r9 + 8]
mov r10, qword [rsp + 0x138]
mov qword [rax + rdx*8], r10
movups xmm0, xmmword [rsp + 0x140]
movups xmmword [r9], xmm0
movups xmm0, xmmword [rsp + 0x150]
movups xmmword [r9 + 0x10], xmm0
mov rdx, qword [rsp + 0x138]
mov qword [rsp + 0x188], rdx
movups xmm0, xmmword [rsp + 0x140]
movups xmmword [rsp + 0x190], xmm0
movups xmm0, xmmword [rsp + 0x150]
movups xmmword [rsp + 0x1a0], xmm0
mov rbx, r8
lea rdi, [0x007b9880]
lea rsi, [0x00606e40]
lea r8, [rsp + 0x188]
lea rax, [0x00643ae8]
lea rcx, [0x006453f0]
nop
call fcn.005260a0
mov rdx, qword [rsp + 0x138]
mov qword [rsp + 0x160], rdx
movups xmm0, xmmword [rsp + 0x140]
movups xmmword [rsp + 0x168], xmm0
movups xmm0, xmmword [rsp + 0x150]
movups xmmword [rsp + 0x178], xmm0
lea rax, [0x00606e40]
lea rbx, [rsp + 0x160]
call fcn.005276c0
mov rcx, qword [rsp + 0xa0]
inc rcx
mov rdx, qword [rsp + 0xd0]
lea r10, [rdx + rax]
mov rdx, qword [rsp + 0xe0]
mov rbx, qword [rsp + 0x2b8]
mov r9, qword [rsp + 0x300]
mov r11, qword [rsp + 0x80]
mov r12, qword [rsp + 0x3f8]
mov r13, qword [rsp + 0x2f8]
mov rax, r9
mov rdx, r12
mov rsi, r13
mov rdi, qword [rsp + 0xe0]
mov r8, rbx
mov r9, r11
cmp rcx, rdi
jge 0x5b91b9
mov r11, qword [rsi + rcx*8]
movups xmmword [rsp + 0x138], xmm15
movups xmmword [rsp + 0x140], xmm15
movups xmmword [rsp + 0x150], xmm15
mov r12, qword [r11 + 0x10]
mov qword [rsp + 0x138], r12
mov r12d, dword [r11 + 0x18]
mov dword [rsp + 0x140], r12d
mov r12d, dword [r11 + 0x1c]
mov dword [rsp + 0x144], r12d
mov r12d, dword [r11 + 0x20]
mov dword [rsp + 0x148], r12d
mov r12d, dword [r11 + 0x24]
mov dword [rsp + 0x14c], r12d
mov r12d, dword [r11 + 0x28]
mov dword [rsp + 0x150], r12d
mov r12d, dword [r11 + 0x2c]
mov dword [rsp + 0x154], r12d
movzx r12d, word [r11 + 0x30]
mov word [rsp + 0x158], r12w
movzx r12d, word [r11 + 0x32]
mov word [rsp + 0x15a], r12w
mov r11d, dword [r11 + 0x34]
mov dword [rsp + 0x15c], r11d
mov r11d, dword [rdx + 0xa8]
cmp dword [rsp + 0x144], r11d
jne 0x5b91ab
mov r11d, dword [rsp + 0x14c]
mov dword [rdx + 0xa8], r11d
cmp rcx, r9
jb 0x5b8fa7
jmp 0x5b9a4a
xor ecx, ecx
nop dword [rax + rax]
jmp 0x5b9259
mov qword [rsp + 0x88], r11
mov qword [rsp + 0x388], r12
mov qword [rsp + 0x390], r11
mov qword [rsp + 0x398], r10
lea rax, [0x00643ae8]
mov rbx, qword [rsp + 0x2b8]
lea rcx, [0x006453f0]
lea rdi, [0x007b9880]
lea rsi, [0x005d65e0]
lea r8, [rsp + 0x388]
call fcn.005260a0
mov rax, qword [rsp + 0x300]
add rax, 0x28
mov rcx, qword [rsp + 0x98]
inc rcx
mov rdx, qword [rsp + 0x88]
mov r9, qword [rsp + 0xa8]
lea r10, [r9 + rdx]
mov rdx, qword [rsp + 0x3f8]
mov r9, qword [rsp + 0x80]
mov r8, qword [rsp + 0x2b8]
mov qword [rsp + 0xa8], r10
cmp rcx, r9
jge 0x5b9548
mov rbx, qword [rax]
mov qword [rsp + 0x110], rbx
movups xmm0, xmmword [rax + 8]
movups xmmword [rsp + 0x118], xmm0
movups xmm0, xmmword [rax + 0x18]
movups xmmword [rsp + 0x128], xmm0
mov rbx, qword [rdx + 0xd0]
cmp rcx, rbx
jae 0x5b9a3f
mov qword [rsp + 0x98], rcx
mov qword [rsp + 0x300], rax
mov rbx, qword [rdx + 0xc8]
mov rax, qword [rbx + rcx*8]
mov qword [rsp + 0x2d0], rax
call fcn.005b7e80
test rdi, rdi
jne 0x5b9538
mov rdx, qword [rsp + 0x2d0]
mov r9d, dword [rdx + 0x24]
test rax, rax
mov r10d, 0
cmovne r10, rcx
mov r11d, 0
cmovne r11, rbx
mov qword [rsp + 0x88], r11
lea r12, [0x007b9880]
cmovne r12, rax
test r9d, r9d
je 0x5b938e
mov r13, qword [rsp + 0xa8]
cmp r13, r9
jae 0x5b9396
mov dword [rsp + 0x4c], r9d
mov qword [rsp + 0x90], r10
mov qword [rsp + 0x2c8], r12
mov ecx, r9d
sub rcx, r13
mov qword [rsp + 0xd8], rcx
lea rax, [0x005d7960]
mov rbx, rcx
call fcn.00447fa0
mov rbx, rax
mov rcx, qword [rsp + 0xd8]
mov rdi, rcx
mov rax, qword [rsp + 0x2b8]
call fcn.0047e940
mov rdx, qword [rsp + 0x2d0]
mov r10, qword [rsp + 0x90]
mov r11, qword [rsp + 0x88]
mov r12, qword [rsp + 0x2c8]
mov r13d, dword [rsp + 0x4c]
jmp 0x5b9396
mov r13, qword [rsp + 0xa8]
mov qword [rsp + 0xa8], r13
mov r9, qword [rsp + 0x3f8]
mov r15d, dword [r9 + 0x150]
mov eax, dword [rdx + 0x24]
cmp eax, r15d
ja 0x5b91c5
mov edx, dword [rdx + 0x20]
add rdx, rax
mov rdi, qword [r9 + 0x160]
sub rdx, rdi
mov rbx, qword [r9 + 0x158]
cmp r15, rdx
jge 0x5b91c5
lea rdx, [rdi + r11]
nop dword [rax]
cmp r10, rdx
jae 0x5b942b
mov qword [rsp + 0xe0], rdi
mov qword [rsp + 0x2f0], rbx
mov rax, r12
mov rbx, rdx
mov rcx, r10
lea rsi, [0x005d7960]
call fcn.00448080
mov rdi, qword [rsp + 0xe0]
mov r11, qword [rsp + 0x88]
mov rdx, rbx
mov r12, rax
mov r10, rcx
mov rbx, qword [rsp + 0x2f0]
mov qword [rsp + 0xe0], r10
mov qword [rsp + 0x88], rdx
mov qword [rsp + 0x2f0], r12
lea rax, [r12 + r11]
mov rcx, rdi
call fcn.004624e0
mov ecx, dword [rsp + 0x120]
mov rdx, qword [rsp + 0x88]
nop
cmp edx, ecx
jb 0x5b9479
mov rax, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0x2f0]
jmp 0x5b952a
sub ecx, edx
mov dword [rsp + 0x48], ecx
lea rax, [0x005d7960]
mov ebx, ecx
call fcn.00447fa0
mov rdx, qword [rsp + 0x88]
mov edi, dword [rsp + 0x48]
lea rbx, [rdi + rdx]
mov rcx, qword [rsp + 0xe0]
cmp rcx, rbx
jb 0x5b94b4
mov rsi, qword [rsp + 0x2f0]
jmp 0x5b94e7
mov qword [rsp + 0x2e8], rax
mov rax, qword [rsp + 0x2f0]
lea rsi, [0x005d7960]
call fcn.00448080
mov rdx, qword [rsp + 0x88]
mov edi, dword [rsp + 0x48]
mov rsi, rax
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0xe0], rcx
mov qword [rsp + 0x88], rbx
mov qword [rsp + 0x2f0], rsi
add rdx, rsi
mov r8, rax
mov rax, rdx
mov rbx, r8
mov ecx, edi
call fcn.004624e0
mov rax, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x2f0]
mov r11, rdx
mov r10, rax
mov r12, rcx
jmp 0x5b91c5
xor eax, eax
xor ebx, ebx
mov rcx, rbx
add rsp, 0x3e8
pop rbp
ret
mov r9, qword [rdx + 0x100]
mov r10, qword [rdx + 0x108]
mov r11, qword [rdx + 0x110]
mov qword [rsp + 0x370], r9
mov qword [rsp + 0x378], r10
mov qword [rsp + 0x380], r11
lea rax, [0x00643ae8]
mov rbx, r8
lea rcx, [0x006453f0]
lea rdi, [0x007b9880]
lea rsi, [0x005d62e0]
lea r8, [rsp + 0x370]
nop dword [rax]
call fcn.005260a0
mov rdx, qword [rsp + 0x3f8]
mov r9, qword [rdx + 0x100]
mov r10, qword [rdx + 0x108]
mov r11, qword [rdx + 0x110]
mov qword [rsp + 0x358], r9
mov qword [rsp + 0x360], r10
mov qword [rsp + 0x368], r11
lea rax, [0x005d62e0]
lea rbx, [rsp + 0x358]
call fcn.005276c0
mov rdx, qword [rsp + 0xa8]
add rdx, rax
mov qword [rsp + 0xa8], rdx
mov r9, qword [rsp + 0x3f8]
mov r10, qword [r9 + 0x118]
mov r11, qword [r9 + 0x120]
mov r12, qword [r9 + 0x128]
mov qword [rsp + 0x340], r10
mov qword [rsp + 0x348], r11
mov qword [rsp + 0x350], r12
lea rax, [0x00643ae8]
mov rbx, qword [rsp + 0x2b8]
lea rcx, [0x006453f0]
lea rdi, [0x007b9880]
lea rsi, [0x005e1b60]
lea r8, [rsp + 0x340]
call fcn.005260a0
mov rdx, qword [rsp + 0x3f8]
mov r9, qword [rdx + 0x118]
mov r10, qword [rdx + 0x120]
mov r11, qword [rdx + 0x128]
mov qword [rsp + 0x328], r9
mov qword [rsp + 0x330], r10
mov qword [rsp + 0x338], r11
lea rax, [0x005e1b60]
lea rbx, [rsp + 0x328]
call fcn.005276c0
mov rdx, qword [rsp + 0x3f8]
mov r9, qword [rdx + 0x130]
mov r10, qword [rsp + 0xa8]
add r10, rax
mov r11, qword [rdx + 0x138]
test r9, r9
je 0x5b96db
mov rax, r11
jmp 0x5b96e4
mov rax, r11
xor r10d, r10d
xor r11d, r11d
mov dword [rsp + 0x40], r11d
mov dword [rsp + 0x3c], r10d
mov r12, qword [rdx + 0x140]
mov qword [rsp + 0x310], r9
mov qword [rsp + 0x318], rax
mov qword [rsp + 0x320], r12
lea rax, [0x00643ae8]
mov rbx, qword [rsp + 0x2b8]
lea rcx, [0x006453f0]
lea rdi, [0x007b9880]
lea rsi, [0x005d65e0]
lea r8, [rsp + 0x310]
call fcn.005260a0
mov rdx, qword [rsp + 0x2b8]
mov rcx, qword [rdx + 8]
mov rax, qword [rdx + 0x18]
nop
cmp rax, rcx
ja 0x5b9a3a
mov r8, qword [rdx]
mov rdx, qword [rdx + 0x10]
sub rdx, rax
mov qword [rsp + 0x60], rdx
mov r9, rdx
neg rdx
sar rdx, 0x3f
and rdx, rax
sub rcx, rax
mov qword [rsp + 0x58], rcx
add rdx, r8
mov qword [rsp + 0x2b0], rdx
mov r8d, dword [rsp + 0x3c]
mov r10d, dword [rsp + 0x44]
cmp r8d, r10d
je 0x5b979d
mov r10d, dword [rsp + 0x40]
jmp 0x5b97b0
mov r10d, dword [rsp + 0x40]
mov r11d, dword [rsp + 0x38]
cmp r10d, r11d
je 0x5b9a0f
mov qword [rsp + 0xb8], 0
mov dword [rsp + 0xb8], r8d
mov dword [rsp + 0xbc], r10d
lea rax, [0x005ee460]
call fcn.0040cca0
mov qword [rsp + 0x2d8], rax
mov rbx, rax
lea rcx, [0x006453f0]
lea rdi, [0x007b9880]
lea rsi, [0x005d1de0]
lea r8, [rsp + 0xb8]
lea rax, [0x00643ae8]
call fcn.005260a0
movzx ecx, word [rsp + 0x36]
cmp cx, 0x14c
jne 0x5b982c
mov rsi, qword [rsp + 0x3f8]
mov esi, dword [rsi + 0x3c]
add rsi, 0x98
jmp 0x5b983e
mov rdi, qword [rsp + 0x3f8]
mov esi, dword [rdi + 0x3c]
add rsi, 0xa8
mov rdx, qword [rsp + 0x60]
cmp rsi, rdx
ja 0x5b9a32
mov rdi, qword [rsp + 0x2d8]
mov rcx, qword [rdi + 8]
mov rax, qword [rdi + 0x18]
nop dword [rax]
cmp rax, rcx
ja 0x5b9a2d
mov qword [rsp + 0xe0], rcx
mov qword [rsp + 0x78], rsi
mov qword [rsp + 0xc8], rax
mov rcx, qword [rdi]
mov qword [rsp + 0x2f0], rcx
mov rdx, qword [rdi + 0x10]
mov qword [rsp + 0xc0], rdx
lea rax, [0x005d1de0]
lea rbx, [rsp + 0xb8]
call fcn.005276c0
mov rcx, qword [rsp + 0x78]
add rax, rcx
mov rdx, qword [rsp + 0xc0]
mov rsi, qword [rsp + 0xc8]
sub rdx, rsi
mov rdi, rdx
neg rdx
sar rdx, 0x3f
and rdx, rsi
mov r8, qword [rsp + 0xe0]
sub r8, rsi
mov rsi, qword [rsp + 0x2f0]
add rdx, rsi
mov rsi, qword [rsp + 0x58]
cmp rsi, rax
jb 0x5b9a25
sub rsi, rax
lea rbx, [r8 + rsi]
mov r9, qword [rsp + 0x60]
mov r10, rax
sub rax, r9
sar rax, 0x3f
and r10, rax
mov r11, qword [rsp + 0x2b0]
add r10, r11
cmp rdi, rbx
jae 0x5b9965
mov qword [rsp + 0x50], r8
mov qword [rsp + 0xe0], rsi
mov qword [rsp + 0x2f0], r10
mov rax, rdx
mov rcx, rdi
mov rdi, rsi
lea rsi, [0x005d7960]
call fcn.00448080
mov rcx, qword [rsp + 0x78]
mov rsi, qword [rsp + 0xe0]
mov r8, qword [rsp + 0x50]
mov r10, qword [rsp + 0x2f0]
mov rdx, rax
mov qword [rsp + 0xe0], rbx
mov qword [rsp + 0x2f0], rdx
lea rdi, [rbx + rcx]
mov qword [rsp + 0xc8], rdi
lea rax, [rdx + r8]
mov rbx, r10
mov rcx, rsi
call fcn.004624e0
mov rcx, qword [rsp + 0x60]
mov rbx, qword [rsp + 0xc8]
nop dword [rax]
cmp rcx, rbx
jb 0x5b99af
mov rax, qword [rsp + 0x2b0]
jmp 0x5b99cb
mov rax, qword [rsp + 0x2b0]
mov rdi, qword [rsp + 0xe0]
lea rsi, [0x005d7960]
call fcn.00448080
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x2c0], rax
mov rdx, qword [rsp + 0x78]
add rdx, rax
mov rax, rdx
mov rbx, qword [rsp + 0x2f0]
mov rcx, qword [rsp + 0xe0]
call fcn.004624e0
mov r9, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x2c0]
mov rax, rdx
mov rbx, rcx
mov rcx, r9
xor edi, edi
xor esi, esi
add rsp, 0x3e8
pop rbp
ret
mov rcx, rsi
call fcn.00461c00
call fcn.00461c00
mov rcx, rsi
call fcn.00461bc0
call fcn.00461c00
mov rax, rcx
mov rcx, rbx
call fcn.00461b40
mov rax, rcx
mov rcx, r9
call fcn.00461b40
mov rbx, rsi
lea rcx, [0x005dbec0]
nop
call fcn.0040a100
mov rbx, rsi
lea rcx, [0x005dbec0]
call fcn.0040a100
nop
mov qword [rsp + 8], rax
call fcn.0045f8c0
mov rax, qword [rsp + 8]
jmp fcn.005b8980