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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x120]
sub rsp, 0x220
mov rax, qword [0x140088048]
xor rax, rsp
mov qword [rbp + 0x110], rax
mov rbx, rcx
mov qword [rsp + 0x60], rcx
xor edi, edi
call fcn.140029b70
test al, al
je 0x14002e64d
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x10], 9
mov qword [rbp - 8], reloc.OLEAUT32.dll_SafeArrayDestroy
movsd xmm0, qword [str.__iPoints]
movsd qword [rbp - 0x20], xmm0
movzx eax, byte [0x14007b6f8]
mov byte [rbp - 0x18], al
mov byte [rbp - 0x17], dil
lea rdx, [rbp - 0x20]
mov rcx, rbx
call fcn.140037340
mov rbx, rax
cmp byte [rax + 0x5c], 0
je 0x14002d28d
mov bl, 1
jmp 0x14002e613
mov qword [rax + 0x10], rdi
mov dword [rax], edi
mov dword [rax + 4], 2
mov word [rax + 0x60], 0x100
mov byte [rax + 0x5d], 1
mov byte [rax + 0x5f], 1
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x78], rdi
movups xmmword [rbp + 0x80], xmm0
mov ecx, 0x1b0
call fcn.140040954
mov rdi, rax
mov qword [rbp + 0x80], rax
mov r15d, 0x1af
mov qword [rbp + 0x90], r15
mov qword [rbp + 0x98], r15
mov rcx, rax
lea rdx, str.50_53_51_48_8B_59__Hero_k__BackingField_48_85_DB_0F_84_58_00_00_00_48_8B_8B__heroDeveloper_48_85_C9_0F_84_48_00_00_00_48_A1_00_04_EF_91_F9_7F_00_00_48_39_83__clan_0F_84_0D_00_00_00_48_39_83__companionOf_0F_85_24_00_00_00_8B_1D_B6_01_00_00_83_FB_FF_0F_84_03_00_00_00_89_59__UnspentAttributePoints_k__BackingField_8B_1D_A8_01_00_00_83_FB_FF_0F_84_03_00_00_00_89_59__UnspentFocusPoints_k__BackingField_59_5B_58_55_57_56_53_48_83_EC_38
mov eax, 3
nop dword [rax]
nop dword [rax + rax]
movups xmm0, xmmword [rdx]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rdx + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rdx + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rdx + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rdx + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rdx + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rdx + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rdx + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rdx, [rdx + 0x80]
sub rax, 1
jne 0x14002d300
movups xmm0, xmmword [rdx]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rdx + 0x10]
movups xmmword [rcx + 0x10], xmm1
mov rax, qword [rdx + 0x20]
mov qword [rcx + 0x20], rax
mov eax, dword [rdx + 0x28]
mov dword [rcx + 0x28], eax
movzx eax, word [rdx + 0x2c]
mov word [rcx + 0x2c], ax
movzx eax, byte [rdx + 0x2e]
mov byte [rcx + 0x2e], al
mov byte [rdi + 0x1af], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x60], xmm0
mov ecx, 0x20
call fcn.140040954
mov r14, rax
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x70], reloc.OLEAUT32.dll_SafeArrayUnaccessData
mov r12d, 0x1f
mov qword [rbp + 0x78], r12
movups xmm0, xmmword [str.55_57_56_53_48_83_EC_38]
movups xmmword [rax], xmm0
mov eax, dword [0x14007b8c0]
mov dword [r14 + 0x10], eax
movzx eax, word [0x14007b8c4]
mov word [r14 + 0x14], ax
movzx eax, byte [0x14007b8c6]
mov byte [r14 + 0x16], al
mov byte [r14 + 0x17], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x40], xmm0
lea ecx, [r12 + 1]
call fcn.140040954
mov rsi, rax
mov qword [rbp + 0x40], rax
mov qword [rbp + 0x50], reloc.OLEAUT32.dll_SafeArrayUnaccessData
mov r13d, r12d
mov qword [rbp + 0x58], r12
movups xmm0, xmmword [str.55_57_56_53_48_83_EC_38]
movups xmmword [rax], xmm0
mov eax, dword [0x14007b8c0]
mov dword [rsi + 0x10], eax
movzx eax, word [0x14007b8c4]
mov word [rsi + 0x14], ax
movzx eax, byte [0x14007b8c6]
mov byte [rsi + 0x16], al
mov byte [rsi + 0x17], 0
xor eax, eax
mov dword [rbx], eax
cmp dword [rbx + 4], 2
je 0x14002d43e
mov dword [rbx + 4], eax
lea rax, [rbx + 0x68]
lea rcx, [rbp + 0x40]
cmp rax, rcx
je 0x14002d464
mov r8d, reloc.OLEAUT32.dll_SafeArrayUnaccessData
mov rdx, rsi
mov rcx, rax
call fcn.1400043e0
mov r13, qword [rbp + 0x58]
mov rsi, qword [rbp + 0x40]
lea rax, [rbx + 0x88]
lea rcx, [rbp + 0x60]
cmp rax, rcx
je 0x14002d48d
mov r8d, reloc.OLEAUT32.dll_SafeArrayUnaccessData
mov rdx, r14
mov rcx, rax
call fcn.1400043e0
mov r12, qword [rbp + 0x78]
mov r14, qword [rbp + 0x60]
lea rax, [rbx + 0xa8]
lea rcx, [rbp + 0x80]
cmp rax, rcx
je 0x14002d4bc
mov r8, r15
mov rdx, rdi
mov rcx, rax
call fcn.1400043e0
mov r15, qword [rbp + 0x98]
mov rdi, qword [rbp + 0x80]
cmp r13, 0x10
jb 0x14002d4f4
lea rdx, [r13 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x14002d4eb
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002e683
mov rcx, rsi
call fcn.140040920
nop
cmp r12, 0x10
jb 0x14002d52d
lea rdx, [r12 + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x14002d524
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002e689
mov rcx, r14
call fcn.140040920
nop
cmp r15, 0x10
jb 0x14002d564
lea rdx, [r15 + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x14002d55c
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002e6d7
mov rcx, rdi
call fcn.140040920
mov r9d, 1
lea r8, str.TaleWorlds.CampaignSystem.ViewModelCollection.CharacterDeveloper.CharacterVM
lea rdx, str._Hero_k__BackingField
mov rcx, rbx
call fcn.140007160
mov r9d, 4
lea r8, str.TaleWorlds.CampaignSystem.Hero
lea rdx, str._heroDeveloper
mov rcx, rbx
call fcn.140007160
mov r9d, 4
lea r8, str.TaleWorlds.CampaignSystem.Hero
lea rdx, str._clan
mov rcx, rbx
call fcn.140007160
mov r9d, 4
lea r8, str.TaleWorlds.CampaignSystem.Hero
lea rdx, str._companionOf
mov rcx, rbx
call fcn.140007160
mov r14, qword [rsp + 0x60]
lea rsi, [r14 + 0x480]
mov rdx, rsi
lea rcx, [rbp - 0x80]
call fcn.1400042c0
mov rdi, rax
mov qword [rsp + 0x58], rax
mov r8, rax
cmp qword [rax + 0x18], 0x10
jb 0x14002d601
mov r8, qword [rax]
mov r9d, 1
lea rdx, str._UnspentAttributePoints_k__BackingField
mov rcx, rbx
call fcn.140007160
nop
mov rdx, qword [rdi + 0x18]
cmp rdx, 0x10
jb 0x14002d651
mov rcx, qword [rdi]
inc rdx
cmp rdx, 0x1000
jb 0x14002d64c
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14002e68f
mov rcx, r8
call fcn.140040920
xor r15d, r15d
mov qword [rdi + 0x10], r15
mov qword [rdi + 0x18], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rdi], r15b
mov rdx, rsi
lea rcx, [rbp - 0x80]
call fcn.1400042c0
mov rdi, rax
mov qword [rsp + 0x58], rax
mov r8, rax
cmp qword [rax + 0x18], 0x10
jb 0x14002d684
mov r8, qword [rax]
mov r9d, 1
lea rdx, str._UnspentFocusPoints_k__BackingField
mov rcx, rbx
call fcn.140007160
nop
mov rdx, qword [rdi + 0x18]
cmp rdx, 0x10
jb 0x14002d6d4
mov rcx, qword [rdi]
inc rdx
cmp rdx, 0x1000
jb 0x14002d6cf
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14002e695
mov rcx, r8
call fcn.140040920
mov qword [rdi + 0x10], r15
mov qword [rdi + 0x18], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rdi], 0
lea rdx, str.TaleWorlds.CampaignSystem.ViewModelCollection.CharacterDeveloper.CharacterVM::RefreshCharacterValues
mov rcx, qword [0x14008b2d8]
call fcn.1400029d0
test rax, rax
je 0x14002d701
lea rcx, [rax + 0x20]
jmp 0x14002d70f
mov rcx, 0xffffffffffffff10
mov rax, 0xffffffffffffff00
mov qword [rbx + 0x20], rax
mov qword [rbx + 0x28], rcx
lea rax, [r14 + 0xf8]
mov qword [rsp + 0x58], rax
movabs rdi, 0x7fffffffffffffff
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], 0x10000
xor r8d, r8d
mov rdx, rbx
mov rcx, rax
call fcn.14003c9a0
test al, al
jne 0x14002e1c4
mov rcx, qword [rsi + 0x10]
mov rax, rdi
sub rax, rcx
cmp rax, 0x20
jb 0x14002e69b
mov r9, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x14002d772
mov r9, qword [rsi]
mov qword [rsp + 0x30], 0x20
lea rax, str.::GetSkillPointsRequiredForLevel
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp - 0x80]
call fcn.140005200
mov r8d, 0x20
lea rdx, [rbp - 0x80]
mov rcx, rbx
call fcn.140007580
cmp qword [rbx + 0x20], 0xffffffffffffff00
jne 0x14002d807
mov rcx, qword [rsi + 0x10]
mov rax, rdi
sub rax, rcx
cmp rax, 0x17
jb 0x14002e6a1
mov r9, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x14002d7d2
mov r9, qword [rsi]
mov qword [rsp + 0x30], reloc.OLEAUT32.dll_SafeArrayUnaccessData
lea rax, str.::GetXpRequiredForLevel
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp - 0x80]
call fcn.140005200
mov r8d, 0x20
lea rdx, [rbp - 0x80]
mov rcx, rbx
call fcn.140007580
xorps xmm0, xmm0
movups xmmword [rbp + 0xa0], xmm0
mov ecx, 0x130
call fcn.140040954
mov rdi, rax
mov qword [rbp + 0xa0], rax
mov qword [rbp + 0xb0], 0x12b
mov r12d, 0x12f
mov qword [rbp + 0xb8], r12
mov rcx, rax
lea rdx, str.50_53_48_A1_00_04_EF_91_F9_7F_00_00_48_8B_59__Hero_k__BackingField_48_85_DB_74_2E_48_39_83__clan_74_09_48_39_83__companionOf_75_1C_8B_1D_D3_01_00_00_83_FB_FF_74_03_89_59__UnspentAttributePoints_k__BackingField_8B_1D_C9_01_00_00_83_FB_FF_74_03_89_59__UnspentFocusPoints_k__BackingField_5B_58_48_B9_s1
mov eax, 2
nop dword [rax]
movups xmm0, xmmword [rdx]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rdx + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rdx + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rdx + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rdx + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rdx + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rdx + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rdx + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rdx, [rdx + 0x80]
sub rax, 1
jne 0x14002d850
movups xmm0, xmmword [rdx]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rdx + 0x10]
movups xmmword [rcx + 0x10], xmm1
mov rax, qword [rdx + 0x20]
mov qword [rcx + 0x20], rax
movzx eax, word [rdx + 0x28]
mov word [rcx + 0x28], ax
movzx eax, byte [rdx + 0x2a]
mov byte [rcx + 0x2a], al
mov byte [rdi + 0x12b], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x20], xmm0
mov qword [rbp + 0x30], 8
mov r13d, reloc.OLEAUT32.dll_SafeArrayDestroy
mov qword [rbp + 0x38], r13
movabs r14, 0x3173203942203834
mov qword [rbp + 0x20], r14
mov byte [rbp + 0x28], 0
movups xmmword [rbp], xmm0
mov qword [rbp + 0x10], 8
mov r15d, r13d
mov qword [rbp + 0x18], r13
mov rsi, r14
mov qword [rbp], r14
mov byte [rbp + 8], 0
xor eax, eax
mov dword [rbx], eax
cmp dword [rbx + 4], 2
je 0x14002d924
mov dword [rbx + 4], eax
lea rax, [rbp]
lea rcx, [rbx + 0x68]
cmp rcx, rax
je 0x14002d948
mov r8d, 8
lea rdx, [rbp]
call fcn.1400043e0
mov r15, qword [rbp + 0x18]
mov rsi, qword [rbp]
lea rax, [rbp + 0x20]
lea rcx, [rbx + 0x88]
cmp rcx, rax
je 0x14002d96f
mov r8d, 8
lea rdx, [rbp + 0x20]
call fcn.1400043e0
mov r13, qword [rbp + 0x38]
mov r14, qword [rbp + 0x20]
lea rcx, [rbp + 0xa0]
lea rax, [rbx + 0xa8]
cmp rax, rcx
je 0x14002d9a1
mov r8d, 0x12b
mov rdx, rdi
mov rcx, rax
call fcn.1400043e0
mov r12, qword [rbp + 0xb8]
mov rdi, qword [rbp + 0xa0]
cmp r15, 0x10
jb 0x14002d9d9
lea rdx, [r15 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x14002d9d0
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002e6a7
mov rcx, rsi
call fcn.140040920
nop
cmp r13, 0x10
jb 0x14002da11
lea rdx, [r13 + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x14002da08
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002e6ad
mov rcx, r14
call fcn.140040920
nop
cmp r12, 0x10
jb 0x14002da49
lea rdx, [r12 + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x14002da41
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002e6d7
mov rcx, rdi
call fcn.140040920
mov r14, qword [rsp + 0x60]
lea r12, [r14 + 0x480]
mov rdx, r12
lea rcx, [rbp - 0x80]
call fcn.1400042c0
mov rdi, rax
mov qword [rsp + 0x50], rax
mov r8, rax
cmp qword [rax + 0x18], 0x10
jb 0x14002da76
mov r8, qword [rax]
mov r9d, 1
lea rdx, str._UnspentAttributePoints_k__BackingField
mov rcx, rbx
call fcn.140007160
nop
mov rdx, qword [rdi + 0x18]
cmp rdx, 0x10
jb 0x14002dac6
mov rcx, qword [rdi]
inc rdx
cmp rdx, 0x1000
jb 0x14002dac1
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14002e6b9
mov rcx, r8
call fcn.140040920
xor r15d, r15d
mov qword [rdi + 0x10], r15
mov qword [rdi + 0x18], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rdi], r15b
mov rdx, r12
lea rcx, [rbp - 0x80]
call fcn.1400042c0
mov rdi, rax
mov qword [rsp + 0x50], rax
mov r8, rax
cmp qword [rax + 0x18], 0x10
jb 0x14002daf9
mov r8, qword [rax]
mov r9d, 1
lea rdx, str._UnspentFocusPoints_k__BackingField
mov rcx, rbx
call fcn.140007160
nop
mov rdx, qword [rdi + 0x18]
cmp rdx, 0x10
jb 0x14002db49
mov rcx, qword [rdi]
inc rdx
cmp rdx, 0x1000
jb 0x14002db44
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14002e6bf
mov rcx, r8
call fcn.140040920
mov qword [rdi + 0x10], r15
mov qword [rdi + 0x18], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rdi], 0
mov rdx, r12
lea rcx, [rbp - 0x80]
call fcn.1400042c0
mov rdi, rax
mov qword [rsp + 0x50], rax
mov r8, rax
cmp qword [rax + 0x18], 0x10
jb 0x14002db79
mov r8, qword [rax]
mov r9d, 1
lea rdx, str._Hero_k__BackingField
mov rcx, rbx
call fcn.140007160
nop
mov rdx, qword [rdi + 0x18]
cmp rdx, 0x10
jb 0x14002dbc9
mov rcx, qword [rdi]
inc rdx
cmp rdx, 0x1000
jb 0x14002dbc4
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14002e6c5
mov rcx, r8
call fcn.140040920
mov qword [rdi + 0x10], r15
mov qword [rdi + 0x18], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rdi], 0
mov r9d, 4
lea r8, str.TaleWorlds.CampaignSystem.Hero
lea rdx, str._clan
mov rcx, rbx
call fcn.140007160
mov r9d, 4
lea r8, str.TaleWorlds.CampaignSystem.Hero
lea rdx, str._companionOf
mov rcx, rbx
call fcn.140007160
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], 2
mov qword [rbp - 0x68], reloc.OLEAUT32.dll_SafeArrayDestroy
mov eax, 0x3173
mov word [rbp - 0x80], ax
mov byte [rbp - 0x7e], 0
lea rax, [rbp - 0x80]
mov qword [rsp + 0x50], rax
movups xmmword [rbp + 0xe0], xmm0
movdqa xmm1, xmmword [0x14007d950]
movdqu xmmword [rbp + 0xf0], xmm1
mov byte [rbp + 0xe0], 0
lea rdx, [rbp - 0x80]
mov r8d, 2
lea rcx, [rbp + 0xe0]
call fcn.1400043e0
movdqa xmm0, xmmword [0x14007da20]
movdqu xmmword [rbp + 0x100], xmm0
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x14002dcbc
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002dcb7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002e6b3
call fcn.140040920
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rbp - 0x80], 0
mov r8d, 1
lea rdx, [rbp + 0xe0]
lea rcx, [rsp + 0x68]
call fcn.140037630
nop
lea r9, [fcn.140004190]
mov edx, 0x30
lea r8d, [rdx - 0x2f]
lea rcx, [rbp + 0xe0]
call fcn.140040bf0
cmp qword [rbx + 0x10], 0x10000
ja 0x14002e1c4
mov rax, qword [rbx + 0x20]
mov edx, 0x10000
test rax, rax
cmovne rdx, rax
mov rax, qword [rbx + 0x28]
movabs rcx, 0x7fffffffffffffff
test rax, rax
cmovne rcx, rax
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x38], rdx
mov eax, dword [rbx + 0x38]
mov dword [rsp + 0x28], eax
lea r9, [rsp + 0x68]
lea r13, [rbx + 0x68]
mov r8, r13
mov rdx, rbx
lea rcx, [r14 + 0xf8]
call fcn.14003c500
mov qword [rbx + 0x10], rax
cmp rax, 0x10000
jae 0x14002e1c4
mov r8d, SafeArrayDestroy
lea rdx, str.FF_FF_FF_FF
mov rcx, r13
call fcn.140004540
xorps xmm0, xmm0
movups xmmword [rbp + 0xc0], xmm0
mov ecx, 0x140
call fcn.140040954
mov rdi, rax
mov qword [rbp + 0xc0], rax
mov qword [rbp + 0xd0], 0x131
mov r15d, 0x13f
mov qword [rbp + 0xd8], r15
mov rcx, rax
lea rax, str.50_53_48_A1_00_04_EF_91_F9_7F_00_00_48_8B_59__Hero_k__BackingField_48_85_DB_74_2E_48_39_83__clan_74_09_48_39_83__companionOf_75_1C_8B_1D_D3_01_00_00_83_FB_FF_74_03_89_59__UnspentAttributePoints_k__BackingField_8B_1D_C9_01_00_00_83_FB_FF_74_03_89_59__UnspentFocusPoints_k__BackingField_5B_58_56_48_83_EC_20
mov edx, 2
nop dword [rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x14002ddd0
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movzx eax, byte [rax + 0x30]
mov byte [rcx + 0x30], al
mov byte [rdi + 0x131], dl
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x30], SafeArrayDestroy
mov r14d, reloc.OLEAUT32.dll_SafeArrayDestroy
mov qword [rbp - 0x28], r14
movsd xmm1, qword [str.56_48_83_EC_20]
movsd qword [rbp - 0x40], xmm1
mov ecx, dword [0x14007bca0]
mov dword [rbp - 0x38], ecx
movzx eax, word [0x14007bca4]
mov word [rbp - 0x34], ax
mov byte [rbp - 0x32], dl
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], SafeArrayDestroy
mov esi, r14d
mov qword [rbp - 0x48], r14
movsd qword [rbp - 0x60], xmm1
mov dword [rbp - 0x58], ecx
mov word [rbp - 0x54], ax
mov byte [rbp - 0x52], dl
xor eax, eax
mov dword [rbx], eax
cmp dword [rbx + 4], 2
je 0x14002deb1
mov dword [rbx + 4], eax
lea rax, [rbp - 0x60]
cmp r13, rax
je 0x14002ded0
mov r8d, SafeArrayDestroy
lea rdx, [rbp - 0x60]
mov rcx, r13
call fcn.1400043e0
mov rsi, qword [rbp - 0x48]
lea rcx, [rbp - 0x40]
lea rax, [rbx + 0x88]
cmp rax, rcx
je 0x14002def6
mov r8d, SafeArrayDestroy
lea rdx, [rbp - 0x40]
mov rcx, rax
call fcn.1400043e0
mov r14, qword [rbp - 0x28]
lea rcx, [rbp + 0xc0]
lea rax, [rbx + 0xa8]
cmp rax, rcx
je 0x14002df28
mov r8d, 0x131
mov rdx, rdi
mov rcx, rax
call fcn.1400043e0
mov r15, qword [rbp + 0xd8]
mov rdi, qword [rbp + 0xc0]
cmp rsi, 0x10
jb 0x14002df61
lea rdx, [rsi + 1]
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002df5b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002e6cb
call fcn.140040920
nop
cmp r14, 0x10
jb 0x14002df9a
lea rdx, [r14 + 1]
mov rcx, qword [rbp - 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002df94
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002e6d1
call fcn.140040920
nop
cmp r15, 0x10
jb 0x14002dfd1
lea rdx, [r15 + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x14002dfc9
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002e6d7
mov rcx, rdi
call fcn.140040920
mov rdx, r12
lea rcx, [rbp - 0x80]
call fcn.1400042c0
mov rdi, rax
mov qword [rsp + 0x50], rax
mov r8, rax
cmp qword [rax + 0x18], 0x10
jb 0x14002dff2
mov r8, qword [rax]
mov r9d, 1
lea rdx, str._UnspentAttributePoints_k__BackingField
mov rcx, rbx
call fcn.140007160
nop
mov rdx, qword [rdi + 0x18]
cmp rdx, 0x10
jb 0x14002e042
mov rcx, qword [rdi]
inc rdx
cmp rdx, 0x1000
jb 0x14002e03d
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14002e6dd
mov rcx, r8
call fcn.140040920
xor r15d, r15d
mov qword [rdi + 0x10], r15
mov qword [rdi + 0x18], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rdi], r15b
mov rdx, r12
lea rcx, [rbp - 0x80]
call fcn.1400042c0
mov rdi, rax
mov qword [rsp + 0x50], rax
mov r8, rax
cmp qword [rax + 0x18], 0x10
jb 0x14002e075
mov r8, qword [rax]
mov r9d, 1
lea rdx, str._UnspentFocusPoints_k__BackingField
mov rcx, rbx
call fcn.140007160
nop
mov rdx, qword [rdi + 0x18]
cmp rdx, 0x10
jb 0x14002e0c5
mov rcx, qword [rdi]
inc rdx
cmp rdx, 0x1000
jb 0x14002e0c0
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14002e6e3
mov rcx, r8
call fcn.140040920
mov qword [rdi + 0x10], r15
mov qword [rdi + 0x18], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rdi], 0
mov rdx, r12
lea rcx, [rbp - 0x80]
call fcn.1400042c0
mov rdi, rax
mov qword [rsp + 0x50], rax
mov r8, rax
cmp qword [rax + 0x18], 0x10
jb 0x14002e0f5
mov r8, qword [rax]
mov r9d, 1
lea rdx, str._Hero_k__BackingField
mov rcx, rbx
call fcn.140007160
nop
mov rdx, qword [rdi + 0x18]
cmp rdx, 0x10
jb 0x14002e145
mov rcx, qword [rdi]
inc rdx
cmp rdx, 0x1000
jb 0x14002e140
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14002e6e9
mov rcx, r8
call fcn.140040920
mov qword [rdi + 0x10], r15
mov qword [rdi + 0x18], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rdi], 0
mov r9d, 4
lea r8, str.TaleWorlds.CampaignSystem.Hero
lea rdx, str._clan
mov rcx, rbx
call fcn.140007160
mov r9d, 4
lea r8, str.TaleWorlds.CampaignSystem.Hero
lea rdx, str._companionOf
mov rcx, rbx
call fcn.140007160
movabs rax, 0x7fffffffffffffff
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], 0x10000
mov r8b, 1
mov rdx, rbx
mov rcx, qword [rsp + 0x58]
call fcn.14003c9a0
test al, al
jne 0x14002e1bf
xor bl, bl
jmp 0x14002e594
mov r14, qword [rsp + 0x60]
mov r8d, 0x800
mov rdx, qword [rbx + 0x10]
lea rcx, [r14 + 0xf8]
call fcn.14003c360
mov qword [rbx + 0x18], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], 5
mov qword [rbp - 0x68], reloc.OLEAUT32.dll_SafeArrayDestroy
mov eax, dword [str.iGold]
mov dword [rbp - 0x80], eax
movzx eax, byte [0x14007a9b0]
mov byte [rbp - 0x7c], al
mov byte [rbp - 0x7b], 0
lea rdx, [rbp - 0x80]
mov rcx, r14
call fcn.140037470
mov r9, qword [rax + 0x18]
add r9, 0x400
movabs r8, 0x7ff991ef0400
lea rdx, [rbx + 0xa8]
call fcn.140007ac0
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x14002e275
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002e270
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002e6ef
call fcn.140040920
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], 3
mov qword [rbp - 0x68], reloc.OLEAUT32.dll_SafeArrayDestroy
mov eax, dword [0x14007bca8]
mov word [rbp - 0x80], ax
movzx eax, byte [0x14007bcaa]
mov byte [rbp - 0x7e], al
mov byte [rbp - 0x7d], 0
mov rsi, qword [rbx + 0x18]
add rsi, 0x200
lea rdx, [rbp - 0x80]
mov rcx, r14
call fcn.140037470
mov rdi, rax
mov rcx, qword [0x14008b3e8]
test rcx, rcx
je 0x14002e2fb
mov dword [rsp + 0x58], 0xffffffff
mov rcx, qword [rcx + 0x70]
test rcx, rcx
je 0x14002e2fb
mov qword [rsp + 0x20], r15
mov r9d, 4
lea r8, [rsp + 0x58]
mov rdx, rsi
mov rcx, qword [rcx + 0x80]
call qword [0x14008b2f0]
mov qword [rdi + 0x10], rsi
mov dword [rdi + 0x3c], 1
mov eax, dword [rdi + 0x4c]
mov ecx, 1
cmp eax, 0x7fffffff
je 0x14002e31e
cmp eax, ecx
jge 0x14002e31e
mov dword [rdi + 0x3c], eax
mov ecx, eax
mov edx, dword [rdi + 0x50]
cmp edx, 0x80000000
je 0x14002e330
cmp ecx, eax
jge 0x14002e330
mov dword [rdi + 0x3c], edx
mov dword [rdi + 0x40], 0xffffffff
mov byte [rdi + 0x60], 1
mov byte [rdi + 0x5e], 0
mov dword [rdi], 2
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x14002e380
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002e37b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002e6f5
call fcn.140040920
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], 3
mov qword [rbp - 0x68], reloc.OLEAUT32.dll_SafeArrayDestroy
mov eax, dword [0x14007bca8]
mov word [rbp - 0x80], ax
movzx eax, byte [0x14007bcaa]
mov byte [rbp - 0x7e], al
mov byte [rbp - 0x7d], 0
lea rdx, [rbp - 0x80]
mov rcx, r14
call fcn.140037470
mov dword [rax + 8], 1
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x14002e3fd
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002e3f8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002e6fb
call fcn.140040920
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], 3
mov qword [rbp - 0x68], reloc.OLEAUT32.dll_SafeArrayDestroy
mov eax, dword [0x14007bcac]
mov word [rbp - 0x80], ax
movzx eax, byte [0x14007bcae]
mov byte [rbp - 0x7e], al
mov byte [rbp - 0x7d], 0
mov rdi, qword [rbx + 0x18]
add rdi, 0x204
lea rdx, [rbp - 0x80]
mov rcx, r14
call fcn.140037470
mov rbx, rax
mov rcx, qword [0x14008b3e8]
test rcx, rcx
je 0x14002e483
mov dword [rsp + 0x58], 0xffffffff
mov rcx, qword [rcx + 0x70]
test rcx, rcx
je 0x14002e483
mov qword [rsp + 0x20], r15
mov r9d, 4
lea r8, [rsp + 0x58]
mov rdx, rdi
mov rcx, qword [rcx + 0x80]
call qword [0x14008b2f0]
mov qword [rbx + 0x10], rdi
mov dword [rbx + 0x3c], 1
mov eax, dword [rbx + 0x4c]
mov ecx, 1
cmp eax, 0x7fffffff
je 0x14002e4a6
cmp eax, ecx
jge 0x14002e4a6
mov dword [rbx + 0x3c], eax
mov ecx, eax
mov edx, dword [rbx + 0x50]
cmp edx, 0x80000000
je 0x14002e4b8
cmp ecx, eax
jge 0x14002e4b8
mov dword [rbx + 0x3c], edx
mov dword [rbx + 0x40], 0xffffffff
mov byte [rbx + 0x60], 1
mov byte [rbx + 0x5e], 0
mov dword [rbx], 2
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x14002e508
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002e503
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002e701
call fcn.140040920
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], 3
mov qword [rbp - 0x68], reloc.OLEAUT32.dll_SafeArrayDestroy
mov eax, dword [0x14007bcac]
mov word [rbp - 0x80], ax
movzx eax, byte [0x14007bcae]
mov byte [rbp - 0x7e], al
mov byte [rbp - 0x7d], 0
lea rdx, [rbp - 0x80]
mov rcx, r14
call fcn.140037470
mov dword [rax + 8], 1
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x14002e585
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002e580
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002e707
call fcn.140040920
lea rdx, [rbp - 0x20]
mov rcx, r14
call fcn.140032ee0
movzx ebx, al
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x14002e613
mov rdx, qword [rsp + 0x70]
call fcn.140037840
mov rcx, qword [rsp + 0x78]
mov r8, qword [rsp + 0x68]
sub rcx, r8
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*2]
shl rdx, 4
mov rax, r8
cmp rdx, 0x1000
jb 0x14002e5fd
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002e70d
mov rcx, r8
call fcn.140040920
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x78], r15
mov rdx, qword [rbp - 8]
cmp rdx, 0x10
jb 0x14002e64a
inc rdx
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002e645
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002e67d
call fcn.140040920
movzx eax, bl
mov rcx, qword [rbp + 0x110]
xor rcx, rsp
call fcn.140040900
lea r11, [rsp + 0x220]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.14004727c
nop
call fcn.14004727c
nop
call fcn.14004727c
nop
call fcn.14004727c
int3
call fcn.14004727c
int3
call fcn.1400012c0
int3
call fcn.1400012c0
nop
call fcn.14004727c
nop
call fcn.14004727c
nop
call fcn.14004727c
int3
call fcn.14004727c
int3
call fcn.14004727c
int3
call fcn.14004727c
nop
call fcn.14004727c
nop
call fcn.14004727c
nop
call fcn.14004727c
int3
call fcn.14004727c
int3
call fcn.14004727c
int3
call fcn.14004727c
int3
call fcn.14004727c
int3
call fcn.14004727c
int3
call fcn.14004727c
int3
call fcn.14004727c
int3
call fcn.14004727c
nop
call fcn.14004727c
int3