Function at 0x1400524c0
Capabilities:
Inspect section memory permissions
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x30
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rsi
mov ebx, r8d
mov rsi, rdx
mov rdi, rcx
call fcn.1400482f0
nop
lea rax, vtable.CCustomTaiwan.0
mov qword [rdi], rax
mov qword [rdi + 0x10], rsi
mov dword [rdi + 0x18], ebx
test rsi, rsi
jne 0x14005251d
lea r8, str.CustomTaiwan.cpp
lea edx, [rsi + 0x2c]
lea rcx, str._VCpl__RETURN_ON_FALSE:_Line___d__File___s_n
call fcn.140055180
jmp case.0x140052cb1.341970974
xor eax, eax
mov qword [rdi + 0x80], rax
lea rbx, [rdi + 0x88]
xor edx, edx
lea r8d, [rax + 0x60]
mov rcx, rbx
call fcn.14029ff20
movzx ecx, word [rsi + 0x44a]
mov r8d, 0x1000
sub ecx, 0x1025
je 0x1400525fc
sub ecx, 0x1e
je 0x140052583
cmp ecx, 0x41f
jne 0x140052667
mov rax, qword [rdi + 0x10]
or dword [rax + 0x30], 0x400000
mov rax, qword [rdi + 0x10]
or dword [rax + 0x548], 0x400
jmp 0x140052667
mov rax, qword [rdi + 0x10]
or dword [rax + 0x30], r8d
mov rax, qword [rdi + 0x10]
or dword [rax + 0x2c], 0x800
mov rax, qword [rdi + 0x10]
or dword [rax + 0x58], 2
movzx eax, word [rsi + 0x448]
mov ecx, 0xf000
and ax, cx
cmp ax, r8w
jne 0x1400525cf
mov dword [rdi + 0x20], 0
mov dword [rdi + 0x28], 1
mov dword [rdi + 0x24], 0x1e
mov dword [rdi + 0x1c], 1
mov rax, qword [rdi + 0x10]
test dword [rax + 0x1a8], 0x10000
je 0x1400525ea
and dword [rax + 0x2c], 0xfffff7ff
mov rax, qword [rdi + 0x10]
cmp dword [rax + 0x168], 0x11
jne 0x140052667
or dword [rax + 0x34], 0x2000000
jmp 0x140052667
mov rax, qword [rdi + 0x10]
or dword [rax + 0x2c], 0x40000000
mov rax, qword [rdi + 0x10]
mov rcx, rax
test dword [rax + 0x274], 0x200000
je 0x140052628
test byte [rax + 0x70], 0x80
jne 0x140052628
or dword [rax + 0x30], 2
mov rcx, qword [rdi + 0x10]
or dword [rcx + 0x30], 1
mov rax, qword [rdi + 0x10]
cmp dword [rax + 0x1d38], 1
jne 0x14005264f
or dword [rax + 0x30], 0x4000000
mov rax, qword [rdi + 0x10]
or dword [rax + 0x34], 0x2000000
mov rax, qword [rdi + 0x10]
mov eax, dword [rax + 0x104]
shl eax, 2
xor eax, dword [rdi + 0x80]
and eax, 8
xor dword [rdi + 0x80], eax
mov eax, dword [rdi + 0x18]
lea rdx, [0x140000000]
cmp eax, 0x153
jg 0x140052744
je case.0x1400526a4.46
sub eax, 0x24
cmp eax, 0xca
ja case.0x1400526a4.48
cdqe
movzx eax, byte [rdx + rax + 0x52ecc]
mov ecx, dword [rdx + rax*4 + 0x52e98]
add rcx, rdx
jmp rcx
mov rax, qword [rdi + 0x10]
or dword [rax + 0x70], 1
mov rax, qword [rdi + 0x10]
or dword [rax + 0x70], 2
jmp case.0x1400526a4.48
mov rax, qword [rdi + 0x10]
or dword [rax + 0x70], 2
mov rax, qword [rdi + 0x10]
or dword [rax + 0x2c], 0x10
mov rax, qword [rdi + 0x10]
or dword [rax + 0x2c], 0x20
jmp case.0x1400526a4.48
mov rax, qword [rdi + 0x10]
or dword [rax + 0x2c], 0x8000000
mov rax, qword [rdi + 0x10]
or dword [rax + 0x2c], 0x20
jmp case.0x1400526a4.48
mov rax, qword [rdi + 0x10]
or dword [rax + 0x2c], 4
mov rax, qword [rdi + 0x10]
or dword [rax + 0x2c], 0x40
jmp case.0x1400526a4.48
mov rax, qword [rdi + 0x10]
or dword [rax + 0x2c], 8
jmp case.0x1400526a4.48
mov rax, qword [rdi + 0x10]
or dword [rax + 0x2c], 0x800
jmp case.0x1400526a4.48
mov rax, qword [rdi + 0x10]
and dword [rax + 0x2c], 0xfffff7ff
jmp case.0x1400526a4.48
mov rax, qword [rdi + 0x10]
or dword [rax + 0x2c], 0x100000
or dword [rdi + 0x80], 1
jmp case.0x1400526a4.48
mov rax, qword [rdi + 0x10]
or dword [rax + 0x2c], 0x10000000
jmp case.0x1400526a4.48
cmp eax, 0x15b
je case.0x1400526a4.46
add eax, 0xfffffe9e
cmp eax, 1
ja case.0x1400526a4.48
mov rax, qword [rdi + 0x10]
and dword [rax + 0x2c], 0xfffff7ff
mov rax, qword [rdi + 0x10]
or dword [rax + 0x2c], 0x200000
movzx ecx, word [rsi + 0x448]
movzx eax, word [rsi + 0x44a]
shl eax, 0x10
or ecx, eax
cmp ecx, 0x104316d3
ja 0x140052a7b
je 0x140052a6b
cmp ecx, 0x1025022b
ja 0x140052921
cmp ecx, 0x10250229
jae case.0x140052953.270860854
cmp ecx, 0x10250128
ja 0x1400527e2
je case.0x140052806.270860602
cmp ecx, 0x10192991
je 0x1400527d2
cmp ecx, 0x1019a88d
jne case.0x140052cb1.341970974
or dword [rdi + 0x80], 2
jmp case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x34], 0x400
jmp case.0x140052cb1.341970974
add ecx, 0xefdafec8
cmp ecx, 0xe9
ja case.0x140052cb1.341970974
movzx eax, byte [rdx + rcx + 0x52fbc]
mov ecx, dword [rdx + rax*4 + 0x52f98]
add rcx, rdx
jmp rcx
mov rax, qword [rdi + 0x10]
or dword [rax + 0x2c], 0x20
mov rax, qword [rdi + 0x10]
or dword [rax + 0x34], 0x8000
jmp case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x2c], 0x20
mov rax, qword [rdi + 0x10]
or dword [rax + 0x30], 0x80000
mov dword [rdi + 0x24], 0xa
mov dword [rdi + 0x1c], 1
jmp case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x2c], 0x20
mov rax, qword [rdi + 0x10]
or dword [rax + 0x30], 0x80000
mov dword [rdi + 0x24], 0xa
mov dword [rdi + 0x1c], 1
or dword [rdi + 0x80], 0x400
mov rax, qword [rdi + 0x10]
or dword [rax + 0x34], 0x20000
jmp case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x2c], 0x20
mov rax, qword [rdi + 0x10]
or dword [rax + 0x30], 0x80000
mov dword [rdi + 0x24], 0xa
mov dword [rdi + 0x1c], 1
mov rax, qword [rdi + 0x10]
or dword [rax + 0x34], 0x10
jmp case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x2c], 0x20
or dword [rdi + 0x80], 8
mov rax, qword [rdi + 0x10]
or dword [rax + 0x30], 0x2000000
mov rax, qword [rdi + 0x10]
or dword [rax + 0x30], 0x40000
or dword [rdi + 0x80], 0x40
movaps xmm0, xmmword [0x1403dae30]
movups xmmword [rbx], xmm0
movaps xmm1, xmmword [0x1403dae40]
movups xmmword [rbx + 0x10], xmm1
movaps xmm0, xmmword [0x1403dae50]
movups xmmword [rbx + 0x20], xmm0
movaps xmm1, xmmword [0x1403dae60]
movups xmmword [rbx + 0x30], xmm1
movaps xmm0, xmmword [0x1403dae70]
movups xmmword [rbx + 0x40], xmm0
movaps xmm1, xmmword [0x1403dae80]
movups xmmword [rbx + 0x50], xmm1
jmp case.0x140052cb1.341970974
cmp ecx, 0x10250518
ja 0x14005298e
je 0x1400529cb
add ecx, 0xefdafdcb
cmp ecx, 0xd6
ja case.0x140052cb1.341970974
movzx eax, byte [rdx + rcx + 0x530c0]
mov ecx, dword [rdx + rax*4 + 0x530a8]
add rcx, rdx
jmp rcx
mov rax, qword [rdi + 0x10]
or dword [rax + 0x30], 0x40000
or dword [rdi + 0x80], 0x408
jmp case.0x140052cb1.341970974
or dword [rdi + 0x80], 0x400
jmp case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x34], 0x2000000
jmp case.0x140052cb1.341970974
cmp ecx, 0x10431153
ja 0x140052a25
je 0x140052a0d
cmp ecx, 0x10250626
ja 0x1400529e4
je 0x1400529cb
cmp ecx, 0x10250563
jb case.0x140052cb1.341970974
cmp ecx, 0x10250564
jbe 0x1400529d8
lea eax, [rcx - 0x10250618]
test eax, 0xfffffffb
jne case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x50], 0x40
jmp case.0x140052cb1.341970974
or dword [rdi + 0x80], 8
jmp case.0x140052cb1.341970974
cmp ecx, 0x1025063f
jb case.0x140052cb1.341970974
cmp ecx, 0x10250642
jbe 0x1400529cb
cmp ecx, 0x10431033
je 0x140052a0d
cmp ecx, 0x10431053
je 0x140052a15
jmp case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x3c], 4
mov rax, qword [rdi + 0x10]
or dword [rax + 0x2c], 0x8000000
jmp case.0x140052cb1.341970974
cmp ecx, 0x10431343
ja 0x140052a4d
je 0x140052a5e
sub ecx, 0x10431163
je 0x140052a15
sub ecx, 0x60
je 0x140052ad0
cmp ecx, 0x175
je 0x140052a5e
jmp case.0x140052cb1.341970974
sub ecx, 0x104313b2
je 0x140052a5e
cmp ecx, 0x11
jne case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x70], 2
jmp case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x30], 0x800
jmp case.0x140052cb1.341970974
cmp ecx, 0x14621004
ja 0x140052c86
je case.0x140052cb1.341970972
cmp ecx, 0x1043831a
ja 0x140052b9d
je 0x140052bc7
cmp ecx, 0x104319a3
ja 0x140052b2d
je 0x140052ad0
cmp ecx, 0x10431873
ja 0x140052b1b
je 0x140052aec
sub ecx, 0x10431723
je 0x140052adf
sub ecx, 0x40
je 0x140052ad0
cmp ecx, 0xc0
jne case.0x140052cb1.341970974
or dword [rdi + 0x80], 0x200
jmp case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x34], 8
jmp case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x30], 0x80000000
mov rax, qword [rdi + 0x10]
or dword [rax + 0x34], 1
or dword [rdi + 0x80], 0x28
mov rax, qword [rdi + 0x10]
or dword [rax + 0x34], 2
mov rax, qword [rdi + 0x10]
or dword [rax + 0x34], 4
jmp case.0x140052cb1.341970974
sub ecx, 0x10431878
je 0x140052ad0
cmp ecx, 0x1b
je 0x140052ad0
jmp case.0x140052cb1.341970974
sub ecx, 0x104319b3
je 0x140052ad0
sub ecx, 0x6834
je case.0x140052806.270860601
sub ecx, 0xe4
je 0x140052b8d
sub ecx, 0x3c
je 0x140052b7e
cmp ecx, 0x10
jne case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x30], 0x80000000
mov rax, qword [rdi + 0x10]
or dword [rax + 0x34], 1
or dword [rdi + 0x80], 0x28
mov rax, qword [rdi + 0x10]
or dword [rax + 0x34], 2
jmp case.0x140052cb1.341970974
or dword [rdi + 0x80], 0x184
jmp case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x30], 0x200
jmp case.0x140052cb1.341970974
cmp ecx, 0x104384b0
ja 0x140052bfe
je 0x140052be7
sub ecx, 0x10438330
je 0x140052bc7
sub ecx, 0x1a
je 0x140052bc7
sub ecx, 0x15
je 0x140052bd7
sub ecx, 0x39
je 0x140052bc7
cmp ecx, 0x36
jne case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x34], 0x4000000
jmp case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x34], 0x80
jmp case.0x140052cb1.341970974
or dword [rdi + 0x80], 0x4000
mov rax, qword [rdi + 0x10]
or dword [rax + 0x34], 0x40
jmp case.0x140052cb1.341970974
sub ecx, 0x104384bc
je 0x140052c76
sub ecx, 0x2dc344
je 0x140052c55
sub ecx, 0x4808
je 0x140052c3b
sub ecx, 0x68
je 0x140052c34
cmp ecx, 0x97104
jne case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x2c], 0x20
jmp case.0x140052cb1.341970974
mov dword [rdi + 0x28], 1
mov dword [rdi + 0x20], 1
mov dword [rdi + 0x24], 3
mov dword [rdi + 0x1c], 1
jmp case.0x140052cb1.341970974
mov dword [rdi + 0x28], 1
mov dword [rdi + 0x20], 1
mov dword [rdi + 0x24], reloc.OLEAUT32.dll_SafeArrayDestroy
mov dword [rdi + 0x1c], 1
jmp case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x50], 0x4000
jmp case.0x140052cb1.341970974
cmp ecx, 0x14623783
ja 0x140052ce7
je 0x140052ccd
add ecx, 0xeb9defe4
cmp ecx, 0x64
ja case.0x140052cb1.341970974
movzx eax, byte [rdx + rcx + 0x531a4]
mov ecx, dword [rdx + rax*4 + 0x53198]
add rcx, rdx
jmp rcx
mov rax, qword [rdi + 0x10]
or dword [rax + 0x3c], 0x20
jmp case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x44], 1
jmp case.0x140052cb1.341970974
mov dword [rdi + 0x20], 1
mov dword [rdi + 0x28], 1
mov dword [rdi + 0x1c], 1
jmp case.0x140052cb1.341970974
cmp ecx, 0x14627517
ja 0x140052dde
je 0x1400528a2
cmp ecx, 0x14626481
ja 0x140052d75
je 0x140052d69
cmp ecx, 0x1462524b
ja 0x140052d38
cmp ecx, 0x1462524a
jae 0x140052da9
sub ecx, 0x14624aa7
je 0x140052d28
cmp ecx, 0xa
jne case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x2c], 0x400000
jmp case.0x140052cb1.341970974
cmp ecx, 0x1462531b
je 0x140052da9
cmp ecx, 0x14626300
jne case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x2c], 0x20
mov rax, qword [rdi + 0x10]
or dword [rax + 0x2c], 8
mov rax, qword [rdi + 0x10]
or dword [rax + 0x4c], 1
jmp case.0x140052cb1.341970974
or dword [rdi + 0x80], 4
jmp case.0x140052cb1.341970974
cmp ecx, 0x1462678a
je 0x140052dce
cmp ecx, 0x14627248
je 0x140052db9
cmp ecx, 0x1462736a
je 0x140052da9
cmp ecx, 0x14627441
jne case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x34], 0x2000
jmp case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x30], 0x4000
jmp case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x2c], 0x40
mov rax, qword [rdi + 0x10]
or dword [rax + 0x2c], 4
jmp case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x50], 0x400
jmp case.0x140052cb1.341970974
cmp ecx, 0x17ff0594
ja 0x140052e3e
je 0x140052e35
sub ecx, 0x15093005
je 0x140052e28
sub ecx, 0x2b6e0d2
je 0x140052e0c
sub ecx, 0x3ef4b9
je 0x140052d28
cmp ecx, 2
jmp 0x140052d22
mov rax, qword [rdi + 0x10]
or dword [rax + 0x34], 0x40
or dword [rdi + 0x80], r8d
mov rax, qword [rdi + 0x10]
mov dword [rax + 0x40], 1
jmp case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x30], 0x20000000
jmp case.0x140052cb1.341970974
or dword [rdi + 0x80], 0x10
jmp case.0x140052cb1.341970974
sub ecx, 0x1b0a00ad
je 0x140052e7b
sub ecx, 0x1a
je 0x140052e71
sub ecx, 8
je 0x140052e64
cmp ecx, 0x1fd1
jne case.0x140052cb1.341970974
or dword [rdi + 0x80], 0x8000
jmp case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x3c], 0x800
jmp case.0x140052cb1.341970974
mov rax, qword [rdi + 0x10]
or dword [rax + 0x4c], 8
jmp case.0x140052cb1.341970974
or dword [rdi + 0x80], 0x800
mov rax, rdi
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
ret