Function at 0x180004230
Capabilities:
Resolve function by hash
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x20], rbx
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
mov rbx, rcx
mov edx, 0x534c0ab8
mov ecx, 0x3cfa685d
call fcn.180004110
mov edx, 0xec0e4e8e
mov qword [rsp + 0x58], rax
mov ecx, 0x6a4abc5b
mov rdi, rax
call fcn.180004110
mov edx, 0x7c0dfcaa
mov ecx, 0x6a4abc5b
mov r12, rax
call fcn.180004110
mov edx, 0x91afca54
mov ecx, 0x6a4abc5b
mov r15, rax
call fcn.180004110
test rdi, rdi
je 0x180004534
test r12, r12
je 0x180004534
test r15, r15
je 0x180004534
test rax, rax
je 0x180004534
movsxd r13, dword [rbx + 0x3c]
xor ecx, ecx
add r13, rbx
mov r8d, 0x3000
lea r9d, [rcx + 0x40]
mov edx, dword [r13 + 0x50]
call rax
mov r14, rax
test rax, rax
je 0x180004534
mov edx, dword [r13 + 0x54]
mov rcx, rbx
test edx, edx
je 0x180004301
mov r8, rax
sub r8, rbx
nop dword [rax]
movzx eax, byte [rcx]
mov byte [r8 + rcx], al
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x1800042f0
movzx r10d, word [r13 + 0x14]
xor r11d, r11d
add r10, r13
movzx r9d, r11w
cmp r11w, word [r13 + 6]
jae 0x18000436f
nop word [rax + rax]
movzx eax, r9w
lea rcx, [rax + rax*4]
mov edx, dword [r10 + rcx*8 + 0x2c]
mov r8d, dword [r10 + rcx*8 + 0x24]
add rdx, rbx
mov eax, dword [r10 + rcx*8 + 0x28]
add r8, r14
test eax, eax
je 0x180004364
mov ecx, eax
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdx]
lea rdx, [rdx + 1]
mov byte [r8], al
lea r8, [r8 + 1]
sub rcx, 1
jne 0x180004350
inc r9w
cmp r9w, word [r13 + 6]
jb 0x180004320
cmp dword [r13 + 0x94], r11d
je 0x18000442c
mov qword [rsp + 0x50], rbp
mov ebp, dword [r13 + 0x90]
add rbp, r14
cmp dword [rbp + 0xc], r11d
je 0x180004427
mov qword [rsp + 0x60], rsi
nop word [rax + rax]
mov ecx, dword [rbp + 0xc]
add rcx, r14
call r12
mov rsi, rax
test rax, rax
je 0x180004410
mov ebx, dword [rbp + 0x10]
mov edi, dword [rbp]
add rbx, r14
add rdi, r14
cmp qword [rbx], 0
je 0x180004410
mov rdx, qword [rdi]
test rdx, rdx
jns 0x1800043ef
movsxd rax, dword [rsi + 0x3c]
movzx edx, dx
mov ecx, dword [rax + rsi + 0x88]
mov eax, dword [rcx + rsi + 0x10]
mov ecx, dword [rcx + rsi + 0x1c]
sub rdx, rax
add rcx, rsi
mov eax, dword [rcx + rdx*4]
add rax, rsi
jmp 0x1800043ff
mov rdx, qword [rbx]
mov rcx, rsi
add rdx, 2
add rdx, r14
call r15
mov qword [rbx], rax
add rdi, 8
add rbx, 8
cmp qword [rbx], 0
jne 0x1800043c3
add rbp, 0x14
cmp dword [rbp + 0xc], 0
jne 0x1800043a0
mov rdi, qword [rsp + 0x58]
xor r11d, r11d
mov rsi, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x50]
cmp dword [r13 + 0xb4], 0
je 0x180004500
mov r10d, dword [r13 + 0xb0]
mov r8, r14
sub r8, qword [r13 + 0x30]
add r10, r14
mov ecx, dword [r10 + 4]
test ecx, ecx
je 0x180004500
nop word [rax + rax]
mov edx, dword [r10]
lea rax, [rcx - 8]
add rdx, r14
mov r9, r11
test rax, 0xfffffffffffffffe
jbe 0x1800044ed
nop word [rax + rax]
movzx eax, word [r10 + r9*2 + 8]
movzx ecx, ax
shr cx, 0xc
cmp cx, 0xa
jne 0x18000449e
and eax, 0xfff
add qword [rax + rdx], r8
jmp 0x1800044da
cmp cx, 3
jne 0x1800044af
and eax, 0xfff
add dword [rax + rdx], r8d
jmp 0x1800044da
cmp cx, 1
jne 0x1800044ca
and eax, 0xfff
lea rcx, [rax + rdx]
mov rax, r8
shr rax, 0x10
add word [rcx], ax
jmp 0x1800044da
cmp cx, 2
jne 0x1800044da
and eax, 0xfff
add word [rax + rdx], r8w
mov ecx, dword [r10 + 4]
inc r9
lea rax, [rcx - 8]
shr rax, 1
cmp r9, rax
jb 0x180004480
mov eax, ecx
add r10, rax
mov eax, dword [r10 + 4]
mov ecx, eax
test eax, eax
jne 0x180004460
mov ebx, dword [r13 + 0x28]
xor edx, edx
xor r8d, r8d
add rbx, r14
lea rcx, [rdx - 1]
call rdi
xor r8d, r8d
mov rcx, r14
lea edx, [r8 + 1]
mov rax, rbx
mov rbx, qword [rsp + 0x68]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
jmp rax
mov rbx, qword [rsp + 0x68]
xor eax, eax
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
ret