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

Disassembly:
lea r12, [rsp - 0x18]
cmp r12, qword [r14 + 0x10]
jbe 0x575258
sub rsp, 0x98
mov qword [rsp + 0x90], rbp
lea rbp, [rsp + 0x90]
mov qword [rsp + 0xa0], rax
mov dword [rsp + 0xa8], ebx
mov dword [rsp + 0xac], ecx
mov dword [rsp + 0xb0], edi
mov byte [rsp + 0xb4], sil
mov byte [rsp + 0xb5], r8b
mov qword [rsp + 0xb8], r9
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x60], rax
call fcn.004c0300
cmp dword [rsp + 0xb0], 0
je 0x574c59
jmp 0x574cae
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x88], rax
test byte [rax], al
lea rcx, [rax + 0x20]
mov rdx, qword [rsp + 0xb8]
mov qword [rsp + 0x58], rdx
mov rax, rcx
nop
call fcn.004beb20
mov rcx, qword [rsp + 0x58]
inc rcx
mov rdx, qword [rsp + 0x88]
mov qword [rdx + 0x20], rcx
call fcn.004c0340
mov rbp, qword [rsp + 0x90]
add rsp, 0x98
ret
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x50], 0
jmp 0x574cc2
cmp dword [rsp + 0xb0], 0
ja 0x574cd1
jmp 0x574df6
mov ecx, dword [rsp + 0xa8]
add ecx, 9
mov edx, 0xcccccccd
imul rcx, rdx
shr rcx, 0x23
mov dword [rsp + 0x2c], ecx
mov ebx, dword [rsp + 0xac]
imul rbx, rdx
shr rbx, 0x23
mov dword [rsp + 0x34], ebx
mov esi, dword [rsp + 0xac]
imul rdx, rsi
shr rdx, 0x23
lea edx, [rdx + rdx*4]
shl edx, 1
sub esi, edx
mov dword [rsp + 0x30], esi
mov edx, dword [rsp + 0xb0]
mov esi, 0xcccccccd
imul rdx, rsi
shr rdx, 0x23
mov dword [rsp + 0x28], edx
cmp edx, ecx
jb 0x574d37
jmp 0x574d3c
jmp 0x574df8
lea edx, [rbx + 1]
cmp ecx, edx
sete byte [rsp + 0x1b]
je 0x574d4a
jmp 0x574d59
mov ecx, dword [rsp + 0x34]
cmp dword [rsp + 0x28], ecx
seta byte [rsp + 0x1b]
jmp 0x574d5b
jmp 0x574d5b
cmp byte [rsp + 0x1b], 0
jne 0x574d64
jmp 0x574d84
mov ecx, dword [rsp + 0x34]
mov dword [rsp + 0x3c], ecx
inc ecx
mov dword [rsp + 0x34], ecx
mov dword [rsp + 0x30], 0
mov byte [rsp + 0xb5], 0
jmp 0x574d86
jmp 0x574d86
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x70], rcx
inc rcx
mov qword [rsp + 0x40], rcx
movzx ecx, byte [rsp + 0xb4]
mov byte [rsp + 0x1b], cl
test cl, cl
jne 0x574daa
jmp 0x574db7
cmp qword [rsp + 0x50], 0
sete byte [rsp + 0x1b]
jmp 0x574db9
jmp 0x574db9
movzx ecx, byte [rsp + 0x1b]
mov byte [rsp + 0xb4], cl
mov ecx, dword [rsp + 0x30]
mov qword [rsp + 0x50], rcx
mov ecx, dword [rsp + 0x2c]
mov dword [rsp + 0xa8], ecx
mov ecx, dword [rsp + 0x34]
mov dword [rsp + 0xac], ecx
mov ecx, dword [rsp + 0x28]
mov dword [rsp + 0xb0], ecx
jmp 0x574df1
jmp 0x574cc2
jmp 0x574df8
cmp qword [rsp + 0x40], 0
nop
jg 0x574e07
jmp 0x574eb3
cmp qword [rsp + 0x50], 5
setg byte [rsp + 0x1a]
jg 0x574e16
jmp 0x574e18
jmp 0x574e45
cmp qword [rsp + 0x50], 5
sete byte [rsp + 0x19]
je 0x574e27
jmp 0x574e38
movzx ecx, byte [rsp + 0xb4]
xor ecx, 1
mov byte [rsp + 0x19], cl
jmp 0x574e3a
jmp 0x574e3a
movzx ecx, byte [rsp + 0x19]
mov byte [rsp + 0x1a], cl
jmp 0x574e45
movzx ecx, byte [rsp + 0x1a]
mov byte [rsp + 0x1b], cl
test cl, cl
jne 0x574e54
jmp 0x574e56
jmp 0x574ea5
cmp qword [rsp + 0x50], 5
sete byte [rsp + 0x18]
je 0x574e65
jmp 0x574e73
movzx ecx, byte [rsp + 0xb4]
mov byte [rsp + 0x18], cl
jmp 0x574e75
jmp 0x574e75
movzx ecx, byte [rsp + 0x18]
mov byte [rsp + 0x19], cl
nop
test cl, cl
jne 0x574e86
jmp 0x574e98
mov ecx, dword [rsp + 0xac]
bt ecx, 0
setb byte [rsp + 0x19]
jmp 0x574e9a
jmp 0x574e9a
movzx ecx, byte [rsp + 0x19]
mov byte [rsp + 0x1b], cl
jmp 0x574ea5
movzx ecx, byte [rsp + 0x1b]
mov byte [rsp + 0xb5], cl
jmp 0x574eb5
jmp 0x574eb5
mov ecx, dword [rsp + 0xac]
cmp dword [rsp + 0xb0], ecx
seta byte [rsp + 0x1a]
ja 0x574ecc
jmp 0x574eda
movzx ecx, byte [rsp + 0xb5]
mov byte [rsp + 0x1a], cl
jmp 0x574edc
jmp 0x574edc
cmp byte [rsp + 0x1a], 0
jne 0x574ee5
jmp 0x574efb
mov ecx, dword [rsp + 0xac]
mov dword [rsp + 0x3c], ecx
inc ecx
mov dword [rsp + 0xac], ecx
jmp 0x574efd
jmp 0x574efd
mov rcx, qword [rsp + 0xb8]
mov qword [rsp + 0x70], rcx
mov rdx, qword [rsp + 0x40]
sub rcx, rdx
mov qword [rsp + 0xb8], rcx
mov ecx, dword [rsp + 0xac]
mov dword [rsp + 0x24], ecx
mov rcx, qword [rsp + 0xb8]
mov qword [rsp + 0x48], rcx
jmp 0x574f34
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x88], rax
test byte [rax], al
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x58], rcx
lea rdx, [rax + 0x18]
mov rax, rdx
call fcn.004beac0
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x88]
cmp qword [rdx + 0x18], rcx
jl 0x574f74
jmp 0x5750cf
mov edx, dword [rsp + 0x24]
shr rdx, 1
mov ebx, 0xa3d70a3e
imul rdx, rbx
shr rdx, 0x25
mov dword [rsp + 0x20], edx
mov edx, dword [rsp + 0x24]
mov esi, edx
shr rdx, 1
imul rdx, rbx
shr rdx, 0x25
imul edx, edx, 0x64
sub esi, edx
mov dword [rsp + 0x1c], esi
lea eax, [rsi + rsi]
lea eax, [rax + 1]
cmp rax, 0xc8
jb 0x574fb9
jmp 0x57524d
mov rcx, qword [rsp + 0xa0]
mov qword [rsp + 0x88], rcx
test byte [rcx], al
lea rdx, [0x00e1824c]
add rdx, rax
movzx edx, byte [rdx]
mov byte [rsp + 0x17], dl
mov rax, rcx
nop
call fcn.004beac0
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rcx + 8]
mov rcx, qword [rcx]
mov rax, qword [rsp + 0x48]
cmp rdx, rax
ja 0x575005
nop
jmp 0x575245
add rax, rcx
mov qword [rsp + 0x80], rax
call fcn.004beb20
movzx ecx, byte [rsp + 0x17]
mov rdx, qword [rsp + 0x80]
mov byte [rdx], cl
mov rcx, qword [rsp + 0x48]
dec rcx
mov qword [rsp + 0x68], rcx
mov eax, dword [rsp + 0x1c]
shl eax, 1
cmp rax, 0xc8
jb 0x575045
nop
jmp 0x57523b
mov rcx, qword [rsp + 0xa0]
mov qword [rsp + 0x88], rcx
test byte [rcx], al
lea rdx, [0x00e1824c]
add rdx, rax
movzx edx, byte [rdx]
mov byte [rsp + 0x17], dl
mov rax, rcx
call fcn.004beac0
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rcx + 8]
mov rcx, qword [rcx]
mov rax, qword [rsp + 0x68]
cmp rdx, rax
ja 0x57508e
jmp 0x575233
add rax, rcx
mov qword [rsp + 0x80], rax
call fcn.004beb20
movzx ecx, byte [rsp + 0x17]
mov rdx, qword [rsp + 0x80]
mov byte [rdx], cl
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x70], rcx
add rcx, 0xfffffffffffffffe
mov qword [rsp + 0x48], rcx
mov ecx, dword [rsp + 0x20]
mov dword [rsp + 0x24], ecx
jmp 0x5750ca
jmp 0x574f34
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x88], rax
test byte [rax], al
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x58], rcx
lea rdx, [rax + 0x18]
mov rax, rdx
call fcn.004beac0
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x88]
cmp qword [rdx + 0x18], rcx
je 0x57510c
jmp 0x575175
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x88], rax
test byte [rax], al
mov ecx, dword [rsp + 0x24]
mov dword [rsp + 0x38], ecx
call fcn.004beac0
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rcx + 8]
mov rcx, qword [rcx]
mov rax, qword [rsp + 0x48]
mov ebx, dword [rsp + 0x38]
add ebx, 0x30
cmp rdx, rax
ja 0x575150
jmp 0x57522b
mov dword [rsp + 0x38], ebx
add rax, rcx
mov qword [rsp + 0x80], rax
nop
call fcn.004beb20
mov ecx, dword [rsp + 0x38]
mov rdx, qword [rsp + 0x80]
mov byte [rdx], cl
jmp 0x575177
jmp 0x575177
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x88], rax
test byte [rax], al
lea rcx, [rax + 0x18]
mov rdx, qword [rsp + 0xb8]
mov qword [rsp + 0x58], rdx
mov rax, rcx
nop dword [rax]
call fcn.004beb20
mov rcx, qword [rsp + 0x58]
inc rcx
mov rdx, qword [rsp + 0x88]
mov qword [rdx + 0x18], rcx
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x88], rax
test byte [rax], al
lea rcx, [rax + 0x18]
mov rax, rcx
call fcn.004beac0
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x78], rax
test byte [rax], al
lea rcx, [rax + 0x20]
mov rdx, qword [rsp + 0x88]
mov rdx, qword [rdx + 0x18]
add rdx, qword [rsp + 0x40]
mov qword [rsp + 0x58], rdx
mov rax, rcx
call fcn.004beb20
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x78]
mov qword [rdx + 0x20], rcx
call fcn.004c0340
mov rbp, qword [rsp + 0x90]
add rsp, 0x98
ret
mov rcx, rdx
call fcn.004bd6e0
mov rcx, rdx
call fcn.004bd6e0
mov ecx, 0xc8
call fcn.004bd6e0
mov rcx, rdx
call fcn.004bd6e0
mov ecx, 0xc8
call fcn.004bd6e0
nop
mov qword [rsp + 8], rax
mov dword [rsp + 0x10], ebx
mov dword [rsp + 0x14], ecx
mov dword [rsp + 0x18], edi
mov byte [rsp + 0x1c], sil
mov byte [rsp + 0x1d], r8b
mov qword [rsp + 0x20], r9
call fcn.004bb060
mov rax, qword [rsp + 8]
mov ebx, dword [rsp + 0x10]
mov ecx, dword [rsp + 0x14]
mov edi, dword [rsp + 0x18]
movzx esi, byte [rsp + 0x1c]
movzx r8d, byte [rsp + 0x1d]
mov r9, qword [rsp + 0x20]
nop
jmp fcn.00574be0