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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x98
mov r13, rcx
mov rax, qword [0x1804a9038]
xor rax, rsp
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x78], rdx
mov rcx, qword [rcx + 0x10]
cmp dword [rcx + 0x14], 2
jl 0x180212a9e
mov esi, r9d
mov r12, r8
cmp r9d, 1
je 0x180212a60
mov edx, dword [rdx + 8]
test esi, esi
je 0x180212a4a
cmp esi, 0xffffffff
jne 0x180212ac6
lea rdi, [rsp + 0x88]
mov qword [rdi], 0
mov rcx, r13
mov rdx, rdi
mov r8, r12
mov r9d, 0xffffffff
call fcn.1802107e0
mov rdx, qword [rdi]
lea rbx, [r13 + 0x30]
mov rax, qword [r13 + 0x30]
mov rcx, qword [rax]
call fcn.18022a050
mov rcx, rbx
mov rdx, rax
call fcn.1801df430
jmp 0x180212a83
mov rcx, qword [r13 + 0x18]
call fcn.1801c28f0
lea rdx, [rsp + 0x78]
mov rcx, r13
mov r8, rax
jmp 0x180212a8e
lea rdi, [rsp + 0x88]
mov qword [rdi], 0
mov rcx, r13
mov rdx, rdi
mov r8, r12
mov r9d, 0xffffffff
call fcn.1802107e0
mov r8, qword [rdi]
lea rdx, [rsp + 0x78]
mov rcx, r13
mov r9d, 0xffffffff
call fcn.1802107e0
mov dil, 1
jmp 0x180212aa0
xor edi, edi
mov rcx, qword [rsp + 0x90]
xor rcx, rsp
call fcn.180364a40
mov eax, edi
add rsp, 0x98
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov r8d, esi
neg r8d
cmovs r8d, esi
xor eax, eax
mov r9d, 0xcccccccd
mov r10d, 0xaaaaaaab
xor ebx, ebx
xor edi, edi
xor r15d, r15d
xor r14d, r14d
jmp 0x180212b15
inc eax
inc r15d
mov r8d, r8d
imul r8, r9
shr r8, 0x22
jmp 0x180212b0f
inc eax
inc r14d
mov r8d, r8d
imul r8, r8, 0x38e38e39
shr r8, 0x21
cmp r8d, 1
jbe 0x180212b69
imul r11d, r8d, 0x38e38e39
cmp r11d, 0x1c71c71c
jbe 0x180212afc
imul r11d, r8d, 0xcccccccd
cmp r11d, 0x33333333
jbe 0x180212aea
imul r11d, r8d, 0xaaaaaaab
cmp r11d, 0x55555555
jbe 0x180212b5c
test r8b, 1
jne 0x180212a9e
cmp ebx, 1
adc eax, 0
inc ebx
shr r8d, 1
jmp 0x180212b0f
inc eax
inc edi
mov r8d, r8d
imul r8, r10
jmp 0x180212b0b
lea r8d, [rdx - 6]
cmp r8d, 0xfffffffd
ja 0x180212ba8
test edi, edi
jne 0x180212a9e
test r15d, r15d
jne 0x180212a9e
test r14d, r14d
mov edi, 0
jne 0x180212aa0
mov r15d, 0
mov r14d, 0
cmp eax, 4
jb 0x180212bb1
jmp 0x180212aa0
cmp eax, 3
ja 0x180212a9e
mov dword [rsp + 0x5c], edi
mov dword [rsp + 0x60], ebx
mov qword [rsp + 0x68], rdx
mov edx, 5
call fcn.18019b4d0
mov rdi, rax
mov byte [rax + 0x3c], 1
mov qword [rsp + 0x70], rax
mov ecx, dword [r12 + 8]
call fcn.1801e5bb0
mov rbx, rax
mov ecx, dword [rdi + 8]
call fcn.1801e5bb0
cmp rbx, rax
mov dword [rsp + 0x64], esi
jb 0x180212c0a
lea rdx, [rsp + 0x70]
mov rcx, r13
mov r8, r12
mov r9d, 0xffffffff
call fcn.1802107e0
jmp 0x180212c42
mov rcx, r13
mov rdx, r12
mov r8d, 5
mov r9d, 0xffffffff
call fcn.180211de0
lea rbx, [r13 + 0x30]
mov rcx, qword [r13 + 0x30]
mov rcx, qword [rcx]
mov rdx, rdi
mov r8, rax
call fcn.180229c10
mov rcx, rbx
mov rdx, rax
call fcn.1801df430
mov rcx, qword [r13 + 0x18]
mov edx, 4
call fcn.1801c28f0
mov rbp, rax
test r14d, r14d
mov qword [rsp + 0x50], r13
mov qword [rsp + 0x48], rax
je 0x180212c70
lea rax, [r13 + 0x30]
mov qword [rsp + 0x40], rax
jmp 0x180212cf7
test r15d, r15d
je 0x180212e8f
lea rax, [r13 + 0x30]
mov qword [rsp + 0x40], rax
mov r14d, 0x1e
jmp 0x180212dfa
add r12, rax
lea rax, [r12 + 0x48]
mov qword [rsi], rax
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbp
mov byte [rsp + 0x38], 0
mov word [rsp + 0x30], 3
mov rcx, r12
mov rdx, rdi
xor r8d, r8d
mov r9, rbx
call fcn.18020cc70
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x88], r12
mov qword [rsp + 0x80], rax
mov rcx, qword [rsp + 0x40]
lea rdx, [rsp + 0x80]
lea r8, [rsp + 0x88]
call fcn.180229ec0
dec r14d
je 0x180212c70
mov rbx, qword [rsp + 0x70]
mov rdi, qword [r13 + 0x10]
mov rsi, qword [rdi]
add qword [rsi + 0x78], 0x48
mov r12, qword [rsi]
mov rcx, qword [rsi + 8]
lea rax, [r12 + 7]
and rax, 0xfffffffffffffff8
sub rax, r12
lea rdx, [rax + 0x48]
sub rcx, r12
cmp rdx, rcx
jbe 0x180212c8d
mov rbp, qword [rsi + 0x18]
mov rcx, rbp
sub rcx, qword [rsi + 0x10]
shr rcx, 0xa
and ecx, 0x1ffffff
cmp ecx, 0x1e
mov eax, 0x1e
cmovae ecx, eax
mov r13d, 0x100000
shl r13, cl
mov rcx, r13
call fcn.1803801d8
mov r12, rax
cmp rbp, qword [rsi + 0x20]
jae 0x18021304f
mov qword [rbp], r12
add qword [rsi + 0x18], 8
add r13, r12
mov qword [rsi + 8], r13
add r12, 7
and r12, 0xfffffffffffffff8
mov r13, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x48]
jmp 0x180212c90
add r12, rax
lea rax, [r12 + 0x48]
mov qword [rsi], rax
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbp
mov byte [rsp + 0x38], 0
mov word [rsp + 0x30], 2
mov rcx, r12
mov rdx, rdi
xor r8d, r8d
mov r9, rbx
call fcn.18020cc70
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x88], r12
mov qword [rsp + 0x80], rax
mov rcx, qword [rsp + 0x40]
lea rdx, [rsp + 0x80]
lea r8, [rsp + 0x88]
call fcn.180229ec0
dec r15d
je 0x180212e8f
mov rbx, qword [rsp + 0x70]
mov rdi, qword [r13 + 0x10]
mov rsi, qword [rdi]
add qword [rsi + 0x78], 0x48
mov r12, qword [rsi]
mov rcx, qword [rsi + 8]
lea rax, [r12 + 7]
and rax, 0xfffffffffffffff8
sub rax, r12
lea rdx, [rax + 0x48]
sub rcx, r12
cmp rdx, rcx
jbe 0x180212d90
mov rbp, qword [rsi + 0x18]
mov rcx, rbp
sub rcx, qword [rsi + 0x10]
shr rcx, 0xa
and ecx, 0x1ffffff
cmp ecx, 0x1e
cmovae ecx, r14d
mov r13d, 0x100000
shl r13, cl
mov rcx, r13
call fcn.1803801d8
mov r12, rax
cmp rbp, qword [rsi + 0x20]
jae 0x180213030
mov qword [rbp], r12
add qword [rsi + 0x18], 8
add r13, r12
mov qword [rsi + 8], r13
add r12, 7
and r12, 0xfffffffffffffff8
mov r13, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x48]
jmp 0x180212d93
mov r14d, dword [rsp + 0x5c]
test r14d, r14d
je 0x180212fa4
lea r15, [r13 + 0x30]
jmp 0x180212f0b
add r12, rax
lea rax, [r12 + 0x48]
mov qword [rsi], rax
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbp
mov byte [rsp + 0x38], 0
mov word [rsp + 0x30], 1
mov rcx, r12
mov rdx, rdi
xor r8d, r8d
mov r9, rbx
call fcn.18020cc70
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x88], r12
mov qword [rsp + 0x80], rax
mov rcx, r15
lea rdx, [rsp + 0x80]
lea r8, [rsp + 0x88]
call fcn.180229ec0
dec r14d
je 0x180212fa4
mov rbx, qword [rsp + 0x70]
mov rdi, qword [r13 + 0x10]
mov rsi, qword [rdi]
add qword [rsi + 0x78], 0x48
mov r12, qword [rsi]
mov rcx, qword [rsi + 8]
lea rax, [r12 + 7]
and rax, 0xfffffffffffffff8
sub rax, r12
lea rdx, [rax + 0x48]
sub rcx, r12
cmp rdx, rcx
jbe 0x180212ea3
mov rbp, qword [rsi + 0x18]
mov rcx, rbp
sub rcx, qword [rsi + 0x10]
shr rcx, 0xa
and ecx, 0x1ffffff
cmp ecx, 0x1e
mov eax, 0x1e
cmovae ecx, eax
mov r13d, 0x100000
shl r13, cl
mov rcx, r13
call fcn.1803801d8
mov r12, rax
cmp rbp, qword [rsi + 0x20]
jae 0x180213011
mov qword [rbp], r12
add qword [rsi + 0x18], 8
add r13, r12
mov qword [rsi + 8], r13
add r12, 7
and r12, 0xfffffffffffffff8
mov r13, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x48]
jmp 0x180212ea6
mov eax, dword [rsp + 0x60]
test eax, eax
je 0x180212fe0
mov rcx, qword [r13 + 0x18]
mov r8d, eax
mov rdx, qword [rsp + 0x68]
call fcn.1801c0200
mov rdx, qword [rsp + 0x70]
lea rdi, [r13 + 0x30]
mov rcx, qword [r13 + 0x30]
mov rcx, qword [rcx]
mov r8, rax
call fcn.18022a180
mov rcx, rdi
mov rdx, rax
call fcn.1801df430
cmp dword [rsp + 0x64], 0
jns 0x180213007
mov rdx, qword [rsp + 0x70]
lea rdi, [r13 + 0x30]
mov rax, qword [r13 + 0x30]
mov rcx, qword [rax]
call fcn.18022a050
mov rcx, rdi
mov rdx, rax
call fcn.1801df430
mov r8, qword [rsp + 0x70]
jmp 0x180212a86
lea rcx, [rsi + 0x10]
lea rdx, [rsi + 0x28]
mov r9d, 8
xor r8d, r8d
call fcn.1801efbb0
mov rbp, qword [rsi + 0x18]
jmp 0x180212f7d
lea rcx, [rsi + 0x10]
lea rdx, [rsi + 0x28]
mov r9d, 8
xor r8d, r8d
call fcn.1801efbb0
mov rbp, qword [rsi + 0x18]
jmp 0x180212e68
lea rcx, [rsi + 0x10]
lea rdx, [rsi + 0x28]
mov r9d, 8
xor r8d, r8d
call fcn.1801efbb0
mov rbp, qword [rsi + 0x18]
jmp 0x180212d69