Function at 0x180050330
Capabilities:
Access peb ldr_data

Disassembly:
mov r11, rsp
mov qword [r11 + 0x20], rbx
push rsi
push rdi
push r14
sub rsp, 0x70
mov rax, qword [0x180090010]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov rax, qword gs:[0x58]
xor ebx, ebx
mov edx, dword [0x1800909b4]
mov r14, rcx
mov qword [r11 + 0x18], r15
mov ecx, 4
mov qword [r11 - 0x38], rbx
mov r15, qword [rax + rdx*8]
add r15, rcx
mov qword [r11 - 0x30], rbx
mov eax, dword [r15]
cmp dword [0x1800a2990], eax
jle 0x1800503b4
lea rcx, [0x1800a2990]
call fcn.180058f80
cmp dword [0x1800a2990], 0xffffffff
jne 0x1800503b4
mov rax, qword [0x180090d58]
lea rcx, [0x1800a2990]
mov qword [0x1800a2970], rax
call fcn.180058f20
mov rax, qword [0x1800a2970]
test rax, rax
je 0x1800503ce
lea rdx, [rsp + 0x50]
lea rcx, [r14 + 0x90]
call rax
mov eax, dword [r15]
cmp dword [0x1800a2990], eax
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
jle 0x180050412
lea rcx, [0x1800a2990]
call fcn.180058f80
cmp dword [0x1800a2990], 0xffffffff
jne 0x180050412
mov rax, qword [0x180090d58]
lea rcx, [0x1800a2990]
mov qword [0x1800a2970], rax
call fcn.180058f20
mov rax, qword [0x1800a2970]
test rax, rax
je 0x18005042c
lea rdx, [rsp + 0x40]
lea rcx, [r14 + 0xa8]
call rax
mov eax, dword [r15]
cmp dword [0x1800a2990], eax
mov r15, qword [rsp + 0xa0]
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rbx
jle 0x180050478
lea rcx, [0x1800a2990]
call fcn.180058f80
cmp dword [0x1800a2990], 0xffffffff
jne 0x180050478
mov rax, qword [0x180090d58]
lea rcx, [0x1800a2990]
mov qword [0x1800a2970], rax
call fcn.180058f20
mov rax, qword [0x1800a2970]
test rax, rax
je 0x180050492
lea rdx, [rsp + 0x30]
lea rcx, [r14 + 0xb0]
call rax
mov rax, qword [0x180090dd0]
cmp dword [rax + 0x84], 1
jne 0x1800504e6
cmp byte [rax + 0x17], bl
je 0x1800504e6
xor edx, edx
call fcn.180054630
cmp dword [r14 + 0x90], eax
jne 0x1800504e6
mov edx, 1
call fcn.180054630
mov dword [r14 + 0x90], eax
mov rax, qword [0x180090dd0]
cmp byte [rax + 0x19], bl
je 0x1800504e6
xor edx, edx
call fcn.180054b80
test eax, eax
jle 0x1800504e6
mov dword [r14 + 0xa8], eax
mov rax, qword [0x180090ca8]
mov rcx, qword [0x180090c98]
test rax, rax
je 0x180050616
test rcx, rcx
je 0x180050616
mov r9, qword [rsp + 0x50]
lea rdx, str.Setting_P_d_as__ws__Skin:__ws___Extra_Moveset:__ws_
mov qword [rsp + 0x98], rbp
lea rbp, [rax + 0x80]
mov rax, rbp
sub rax, r14
neg rax
lea rax, [rcx + 0x80]
sbb ebx, ebx
lea rcx, str.CharacterDefinitionV2::LoadHook
cmp rax, r14
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x20], rax
jne 0x180050562
mov ebx, 1
mov r8d, ebx
call fcn.18004e350
jmp 0x180050573
mov r8d, ebx
call fcn.18004e350
cmp rbp, r14
jne 0x18005060e
mov rax, qword [0x180090dd0]
cmp dword [rax + 0x84], 0
jne 0x18005060e
cmp byte [rax + 0x17], 0
je 0x1800505a3
test ebx, ebx
jne 0x1800505a3
xor edx, edx
call fcn.180054630
test eax, eax
jle 0x1800505a3
mov dword [r14 + 0x90], eax
mov rax, qword [0x180090dd0]
cmp byte [rax + 0x18], 0
je 0x1800505c7
cmp ebx, 1
jne 0x1800505c7
mov edx, ebx
call fcn.180054630
test eax, eax
jle 0x1800505c7
mov dword [r14 + 0x90], eax
mov rax, qword [0x180090dd0]
cmp byte [rax + 0x19], 0
je 0x1800505ea
test ebx, ebx
jne 0x1800505ea
xor edx, edx
call fcn.180054b80
test eax, eax
jle 0x1800505ea
mov dword [r14 + 0xa8], eax
mov rax, qword [0x180090dd0]
cmp byte [rax + 0x1a], 0
je 0x18005060e
cmp ebx, 1
jne 0x18005060e
mov edx, ebx
call fcn.180054b80
test eax, eax
jle 0x18005060e
mov dword [r14 + 0xa8], eax
mov rbp, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.1800586a0
mov rbx, qword [rsp + 0xa8]
add rsp, 0x70
pop r14
pop rdi
pop rsi
ret