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

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x20
mov r12d, r9d
mov rbx, r8
mov r14d, edx
mov rdi, rcx
test edx, edx
jne 0x180210e1a
mov esi, r14d
cmp esi, 0x44
jb 0x180210d35
lea r8, [0x180532e20]
lea rcx, [0x180533220]
mov ebp, dword [rbx + 0x10]
xor ebp, dword [rbx + 0x3c]
mov eax, dword [rbx]
mov edx, eax
shl edx, 8
xor edx, ebp
shr rax, 0x16
and eax, 0x3fc
xor edx, dword [rax + r8]
mov ebp, dword [rbx + 4]
add ebp, edx
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
ror ebp, 8
add ebp, dword [rbx + 8]
xor ebp, dword [rbx + 0x88]
add ebp, dword [rbx + 0x1c]
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
add ebp, dword [rbx + 0x38]
mov dword [rbx], edx
test r12d, r12d
je 0x1802107e9
xor ebp, dword [rdi]
mov dword [rdi], ebp
mov eax, dword [rbx + 0x14]
xor eax, dword [rbx + 0x40]
mov ebp, dword [rbx + 4]
mov edx, ebp
shl edx, 8
xor edx, eax
shr rbp, 0x16
and ebp, 0x3fc
xor edx, dword [rbp + r8]
mov ebp, dword [rbx + 8]
add ebp, edx
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
ror ebp, 8
add ebp, dword [rbx + 0xc]
xor ebp, dword [rbx + 0x88]
add ebp, dword [rbx + 0x20]
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
add ebp, dword [rbx + 0x3c]
mov dword [rbx + 4], edx
test r12d, r12d
je 0x18021083c
xor ebp, dword [rdi + 4]
mov dword [rdi + 4], ebp
mov eax, dword [rbx + 0x18]
xor eax, dword [rbx]
mov ebp, dword [rbx + 8]
mov edx, ebp
shl edx, 8
xor edx, eax
shr rbp, 0x16
and ebp, 0x3fc
xor edx, dword [rbp + r8]
mov ebp, dword [rbx + 0xc]
add ebp, edx
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
ror ebp, 8
add ebp, dword [rbx + 0x10]
xor ebp, dword [rbx + 0x88]
add ebp, dword [rbx + 0x24]
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
add ebp, dword [rbx + 0x40]
mov dword [rbx + 8], edx
test r12d, r12d
je 0x18021088f
xor ebp, dword [rdi + 8]
mov dword [rdi + 8], ebp
mov eax, dword [rbx + 0x1c]
xor eax, dword [rbx + 4]
mov ebp, dword [rbx + 0xc]
mov edx, ebp
shl edx, 8
xor edx, eax
shr rbp, 0x16
and ebp, 0x3fc
xor edx, dword [rbp + r8]
mov ebp, dword [rbx + 0x10]
add ebp, edx
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
ror ebp, 8
add ebp, dword [rbx + 0x14]
xor ebp, dword [rbx + 0x88]
add ebp, dword [rbx + 0x28]
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
add ebp, dword [rbx]
mov dword [rbx + 0xc], edx
test r12d, r12d
je 0x1802108e2
xor ebp, dword [rdi + 0xc]
mov dword [rdi + 0xc], ebp
mov eax, dword [rbx + 0x20]
xor eax, dword [rbx + 8]
mov ebp, dword [rbx + 0x10]
mov edx, ebp
shl edx, 8
xor edx, eax
shr rbp, 0x16
and ebp, 0x3fc
xor edx, dword [rbp + r8]
mov ebp, dword [rbx + 0x14]
add ebp, edx
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
ror ebp, 8
add ebp, dword [rbx + 0x18]
xor ebp, dword [rbx + 0x88]
add ebp, dword [rbx + 0x2c]
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
add ebp, dword [rbx + 4]
mov dword [rbx + 0x10], edx
test r12d, r12d
je 0x180210936
xor ebp, dword [rdi + 0x10]
mov dword [rdi + 0x10], ebp
mov eax, dword [rbx + 0x24]
xor eax, dword [rbx + 0xc]
mov ebp, dword [rbx + 0x14]
mov edx, ebp
shl edx, 8
xor edx, eax
shr rbp, 0x16
and ebp, 0x3fc
xor edx, dword [rbp + r8]
mov ebp, dword [rbx + 0x18]
add ebp, edx
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
ror ebp, 8
add ebp, dword [rbx + 0x1c]
xor ebp, dword [rbx + 0x88]
add ebp, dword [rbx + 0x30]
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
add ebp, dword [rbx + 8]
mov dword [rbx + 0x14], edx
test r12d, r12d
je 0x18021098a
xor ebp, dword [rdi + 0x14]
mov dword [rdi + 0x14], ebp
mov eax, dword [rbx + 0x28]
xor eax, dword [rbx + 0x10]
mov ebp, dword [rbx + 0x18]
mov edx, ebp
shl edx, 8
xor edx, eax
shr rbp, 0x16
and ebp, 0x3fc
xor edx, dword [rbp + r8]
mov ebp, dword [rbx + 0x1c]
add ebp, edx
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
ror ebp, 8
add ebp, dword [rbx + 0x20]
xor ebp, dword [rbx + 0x88]
add ebp, dword [rbx + 0x34]
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
add ebp, dword [rbx + 0xc]
mov dword [rbx + 0x18], edx
test r12d, r12d
je 0x1802109de
xor ebp, dword [rdi + 0x18]
mov dword [rdi + 0x18], ebp
mov eax, dword [rbx + 0x2c]
xor eax, dword [rbx + 0x14]
mov ebp, dword [rbx + 0x1c]
mov edx, ebp
shl edx, 8
xor edx, eax
shr rbp, 0x16
and ebp, 0x3fc
xor edx, dword [rbp + r8]
mov ebp, dword [rbx + 0x20]
add ebp, edx
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
ror ebp, 8
add ebp, dword [rbx + 0x24]
xor ebp, dword [rbx + 0x88]
add ebp, dword [rbx + 0x38]
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
add ebp, dword [rbx + 0x10]
mov dword [rbx + 0x1c], edx
test r12d, r12d
je 0x180210a32
xor ebp, dword [rdi + 0x1c]
mov dword [rdi + 0x1c], ebp
mov eax, dword [rbx + 0x30]
xor eax, dword [rbx + 0x18]
mov ebp, dword [rbx + 0x20]
mov edx, ebp
shl edx, 8
xor edx, eax
shr rbp, 0x16
and ebp, 0x3fc
xor edx, dword [rbp + r8]
mov ebp, dword [rbx + 0x24]
add ebp, edx
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
ror ebp, 8
add ebp, dword [rbx + 0x28]
xor ebp, dword [rbx + 0x88]
add ebp, dword [rbx + 0x3c]
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
add ebp, dword [rbx + 0x14]
mov dword [rbx + 0x20], edx
test r12d, r12d
je 0x180210a86
xor ebp, dword [rdi + 0x20]
mov dword [rdi + 0x20], ebp
mov eax, dword [rbx + 0x34]
xor eax, dword [rbx + 0x1c]
mov ebp, dword [rbx + 0x24]
mov edx, ebp
shl edx, 8
xor edx, eax
shr rbp, 0x16
and ebp, 0x3fc
xor edx, dword [rbp + r8]
mov ebp, dword [rbx + 0x28]
add ebp, edx
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
ror ebp, 8
add ebp, dword [rbx + 0x2c]
xor ebp, dword [rbx + 0x88]
add ebp, dword [rbx + 0x40]
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
add ebp, dword [rbx + 0x18]
mov dword [rbx + 0x24], edx
test r12d, r12d
je 0x180210ada
xor ebp, dword [rdi + 0x24]
mov dword [rdi + 0x24], ebp
mov eax, dword [rbx + 0x38]
xor eax, dword [rbx + 0x20]
mov ebp, dword [rbx + 0x28]
mov edx, ebp
shl edx, 8
xor edx, eax
shr rbp, 0x16
and ebp, 0x3fc
xor edx, dword [rbp + r8]
mov ebp, dword [rbx + 0x2c]
add ebp, edx
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
ror ebp, 8
add ebp, dword [rbx + 0x30]
xor ebp, dword [rbx + 0x88]
add ebp, dword [rbx]
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
add ebp, dword [rbx + 0x1c]
mov dword [rbx + 0x28], edx
test r12d, r12d
je 0x180210b2d
xor ebp, dword [rdi + 0x28]
mov dword [rdi + 0x28], ebp
mov eax, dword [rbx + 0x3c]
xor eax, dword [rbx + 0x24]
mov ebp, dword [rbx + 0x2c]
mov edx, ebp
shl edx, 8
xor edx, eax
shr rbp, 0x16
and ebp, 0x3fc
xor edx, dword [rbp + r8]
mov ebp, dword [rbx + 0x30]
add ebp, edx
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
ror ebp, 8
add ebp, dword [rbx + 0x34]
xor ebp, dword [rbx + 0x88]
add ebp, dword [rbx + 4]
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
add ebp, dword [rbx + 0x20]
mov dword [rbx + 0x2c], edx
test r12d, r12d
je 0x180210b81
xor ebp, dword [rdi + 0x2c]
mov dword [rdi + 0x2c], ebp
mov eax, dword [rbx + 0x40]
xor eax, dword [rbx + 0x28]
mov ebp, dword [rbx + 0x30]
mov edx, ebp
shl edx, 8
xor edx, eax
shr rbp, 0x16
and ebp, 0x3fc
xor edx, dword [rbp + r8]
mov ebp, dword [rbx + 0x34]
add ebp, edx
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
ror ebp, 8
add ebp, dword [rbx + 0x38]
xor ebp, dword [rbx + 0x88]
add ebp, dword [rbx + 8]
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
add ebp, dword [rbx + 0x24]
mov dword [rbx + 0x30], edx
test r12d, r12d
je 0x180210bd5
xor ebp, dword [rdi + 0x30]
mov dword [rdi + 0x30], ebp
mov eax, dword [rbx]
xor eax, dword [rbx + 0x2c]
mov ebp, dword [rbx + 0x34]
mov edx, ebp
shl edx, 8
xor edx, eax
shr rbp, 0x16
and ebp, 0x3fc
xor edx, dword [rbp + r8]
mov ebp, dword [rbx + 0x38]
add ebp, edx
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
ror ebp, 8
add ebp, dword [rbx + 0x3c]
xor ebp, dword [rbx + 0x88]
add ebp, dword [rbx + 0xc]
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
add ebp, dword [rbx + 0x28]
mov dword [rbx + 0x34], edx
test r12d, r12d
je 0x180210c28
xor ebp, dword [rdi + 0x34]
mov dword [rdi + 0x34], ebp
mov eax, dword [rbx + 4]
xor eax, dword [rbx + 0x30]
mov ebp, dword [rbx + 0x38]
mov edx, ebp
shl edx, 8
xor edx, eax
shr rbp, 0x16
and ebp, 0x3fc
xor edx, dword [rbp + r8]
mov ebp, dword [rbx + 0x3c]
add ebp, edx
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
ror ebp, 8
add ebp, dword [rbx + 0x40]
xor ebp, dword [rbx + 0x88]
add ebp, dword [rbx + 0x10]
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
add ebp, dword [rbx + 0x2c]
mov dword [rbx + 0x38], edx
test r12d, r12d
je 0x180210c7c
xor ebp, dword [rdi + 0x38]
mov dword [rdi + 0x38], ebp
mov eax, dword [rbx + 8]
xor eax, dword [rbx + 0x34]
mov ebp, dword [rbx + 0x3c]
mov edx, ebp
shl edx, 8
xor edx, eax
shr rbp, 0x16
and ebp, 0x3fc
xor edx, dword [rbp + r8]
mov ebp, dword [rbx + 0x40]
add ebp, edx
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
ror ebp, 8
add ebp, dword [rbx]
xor ebp, dword [rbx + 0x88]
add ebp, dword [rbx + 0x14]
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
add ebp, dword [rbx + 0x30]
mov dword [rbx + 0x3c], edx
test r12d, r12d
je 0x180210ccf
xor ebp, dword [rdi + 0x3c]
mov dword [rdi + 0x3c], ebp
mov eax, dword [rbx + 0xc]
xor eax, dword [rbx + 0x38]
mov ebp, dword [rbx + 0x40]
mov edx, ebp
shl edx, 8
xor edx, eax
shr rbp, 0x16
and ebp, 0x3fc
xor edx, dword [rbp + r8]
mov ebp, dword [rbx]
add ebp, edx
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
ror ebp, 8
add ebp, dword [rbx + 4]
xor ebp, dword [rbx + 0x88]
add ebp, dword [rbx + 0x18]
mov eax, ebp
shr eax, 0x18
xor ebp, dword [rcx + rax*4]
add ebp, dword [rbx + 0x34]
mov dword [rbx + 0x40], edx
test r12d, r12d
je 0x180210d22
xor ebp, dword [rdi + 0x40]
mov dword [rdi + 0x40], ebp
add rdi, 0x44
add esi, 0xffffffbc
cmp esi, 0x43
ja 0x18021079d
cmp esi, 4
jb 0x180210d8c
lea r15, [0x180533220]
mov ebp, esi
mov rcx, rbx
call fcn.180210101
mov eax, dword [rbx + 0x40]
add eax, dword [rbx]
mov ecx, eax
shr ecx, 0x18
xor eax, dword [r15 + rcx*4]
ror eax, 8
add eax, dword [rbx + 4]
xor eax, dword [rbx + 0x88]
add eax, dword [rbx + 0x18]
mov ecx, eax
shr ecx, 0x18
xor eax, dword [r15 + rcx*4]
add eax, dword [rbx + 0x34]
test r12d, r12d
je 0x180210d7b
xor eax, dword [rdi]
mov dword [rdi], eax
add rdi, 4
add ebp, 0xfffffffc
cmp ebp, 3
ja 0x180210d43
and esi, 3
test esi, esi
je 0x180210e08
mov rcx, rbx
call fcn.180210101
mov eax, dword [rbx + 0x40]
add eax, dword [rbx]
mov ecx, eax
shr ecx, 0x18
lea rdx, [0x180533220]
xor eax, dword [rdx + rcx*4]
ror eax, 8
add eax, dword [rbx + 4]
xor eax, dword [rbx + 0x88]
add eax, dword [rbx + 0x18]
mov ecx, eax
shr ecx, 0x18
xor eax, dword [rdx + rcx*4]
add eax, dword [rbx + 0x34]
mov dword [rbx + 0x8c], eax
mov dword [rbx + 0x90], 0x20
test r12d, r12d
je 0x180210ddd
xor al, byte [rdi]
mov byte [rdi], al
mov eax, dword [rbx + 0x8c]
mov ecx, dword [rbx + 0x90]
shr eax, 8
mov dword [rbx + 0x8c], eax
add ecx, 0xfffffff8
mov dword [rbx + 0x90], ecx
dec esi
je 0x180210e08
inc rdi
test ecx, ecx
jne 0x180210dd6
mov eax, r14d
add rsp, 0x20
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
mov eax, dword [rbx + 0x90]
test eax, eax
je 0x180210783
mov eax, dword [rbx + 0x8c]
mov esi, r14d
test r12d, r12d
je 0x180210e38
xor al, byte [rdi]
mov byte [rdi], al
inc rdi
mov eax, dword [rbx + 0x8c]
mov ecx, dword [rbx + 0x90]
shr eax, 8
mov dword [rbx + 0x8c], eax
add ecx, 0xfffffff8
mov dword [rbx + 0x90], ecx
dec esi
je 0x180210786
test ecx, ecx
je 0x180210786
jmp 0x180210e31