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

Disassembly:
mov r11, rsp
push rdi
sub rsp, 0x70
mov rdi, qword [0x140214710]
mov eax, dword [rdi + 0x3f70]
cmp dword [rdi + 0x3f74], eax
je 0x1400baa18
mov qword [r11 + 8], rbx
mov rbx, qword [rdi + 0x5e68]
mov qword [r11 + 0x10], rbp
mov qword [r11 + 0x18], rsi
movsxd rsi, dword [rdi + 0x5e60]
mov qword [r11 + 0x20], r12
shl rsi, 5
mov qword [r11 - 0x10], r14
add rsi, rbx
mov qword [r11 - 0x18], r15
movaps xmmword [rsp + 0x50], xmm6
cmp rbx, rsi
je 0x1400ba300
cmp dword [rbx + 4], 2
jne 0x1400ba2f7
mov rdx, rbx
mov rcx, rdi
call qword [rbx + 0x10]
add rbx, 0x20
cmp rbx, rsi
jne 0x1400ba2e8
mov rbx, qword [0x140214710]
cmp dword [rbx + 0x3fe8], 2
jl 0x1400ba31e
call fcn.1400b9ad0
cmp dword [rbx + 0x3fe8], 1
jg 0x1400ba310
xor r12d, r12d
lea rsi, [rdi + 0x5db0]
cmp qword [rdi + 0xc8], r12
je 0x1400ba3dc
mov rax, qword [rsi]
cmp rax, qword [rdi + 0x5dc0]
jne 0x1400ba352
mov rax, qword [rsi + 8]
cmp rax, qword [rdi + 0x5dc8]
je 0x1400ba3dc
mov ecx, dword [rdi + 0x5dd0]
call fcn.1400bbbf0
test byte [rdi + 0x5f0c], 0x40
mov rbx, rax
je 0x1400ba392
movss xmm3, dword [rsi + 8]
lea rcx, str._io__Calling_io.SetPlatformImeDataFn__:_WantVisible:__d__InputPos___.2f__.2f__n
movss xmm2, dword [rsi + 4]
movzx edx, byte [rsi]
cvtps2pd xmm3, xmm3
cvtps2pd xmm2, xmm2
movq r9, xmm3
movq r8, xmm2
call fcn.1400b0c30
test rbx, rbx
jne 0x1400ba3a8
mov rax, qword [0x140214710]
mov rcx, qword [rax + 0x4a28]
mov rbx, qword [rcx]
cmp qword [rbx + 0x50], r12
jne 0x1400ba3d0
mov rax, qword [rdi + 0xd0]
test rax, rax
je 0x1400ba3d0
mov rdx, rsi
mov qword [rbx + 0x50], rax
mov rcx, rbx
call qword [rdi + 0xc8]
mov qword [rbx + 0x50], r12
jmp 0x1400ba3dc
mov rdx, rsi
mov rcx, rbx
call qword [rdi + 0xc8]
mov rax, qword [rdi + 0x4018]
mov byte [rdi + 0x3f81], r12b
test rax, rax
je 0x1400ba3ff
cmp byte [rax + 0xed], r12b
jne 0x1400ba3ff
mov byte [rax + 0xeb], r12b
call fcn.1400b9ad0
mov rcx, qword [0x140214710]
mov rbx, rcx
cmp qword [rcx + 0x4c20], r12
je 0x1400ba423
call fcn.1400c3cc0
mov rcx, qword [0x140214710]
cmp qword [rbx + 0x4a98], r12
je 0x1400ba461
cmp byte [rcx + 0x4b11], r12b
je 0x1400ba461
cmp dword [rcx + 0x4b60], r12d
jne 0x1400ba461
cmp dword [rcx + 0x4bc0], r12d
jne 0x1400ba461
mov eax, dword [rbx + 0x4b14]
test al, 0xf
je 0x1400ba461
test al, al
js 0x1400ba461
call fcn.1400c2c80
mov rcx, qword [0x140214710]
mov ebp, r12d
xorps xmm6, xmm6
cmp dword [rdi + 0x5dd8], r12d
jle 0x1400ba5dd
mov r14, r12
nop word [rax + rax]
mov rax, qword [rdi + 0x5de0]
mov rsi, qword [rax + r14 + 8]
test rsi, rsi
je 0x1400ba5cb
mov eax, dword [rdi + 0x3f70]
cmp dword [rsi + 0xb0], eax
jne 0x1400ba5cb
movzx eax, byte [rsi + 0xcc]
test al, 1
je 0x1400ba5cb
mov rdx, qword [rsi + 0x88]
test rdx, rdx
je 0x1400ba5cb
cmp qword [rsi + 0x20], r12
jne 0x1400ba5cb
test al, 4
jne 0x1400ba5cb
movss xmm0, dword [rcx + 0x3918]
movss xmm3, dword [rsi + 0x48]
addss xmm0, xmm0
movss xmm1, dword [rsi + 0x4c]
movaps xmm4, xmm3
addss xmm4, dword [rsi + 0x50]
movaps xmm2, xmm1
addss xmm3, xmm6
addss xmm2, dword [rsi + 0x54]
addss xmm0, dword [rcx + 0x3d50]
lea rcx, [rsp + 0x30]
movss dword [rsp + 0x38], xmm4
movss dword [rsp + 0x30], xmm3
movss dword [rsp + 0x3c], xmm2
addss xmm0, xmm1
movss dword [rsp + 0x34], xmm0
movss xmm2, dword [rdx + 0x54]
movss xmm0, dword [rdx + 0x50]
movaps xmm3, xmm2
addss xmm3, dword [rdx + 0x5c]
movaps xmm1, xmm0
addss xmm1, dword [rdx + 0x58]
movss dword [rsp + 0x44], xmm2
lea rdx, [rsp + 0x40]
movss xmm2, dword [rdi + 0x39a4]
movss dword [rsp + 0x4c], xmm3
movss dword [rsp + 0x40], xmm0
movss dword [rsp + 0x48], xmm1
call fcn.1400e6a40
mov rcx, qword [rsi + 0x88]
xor r8d, r8d
mov ebx, eax
mov rdx, qword [rcx + 0x2d8]
lea rcx, [rdx + 0xa8]
call fcn.1400ebff0
mov rcx, qword [rsi + 0x88]
lea r8, [rsp + 0x38]
mov r9d, dword [rsi + 0x80]
lea rdx, [rsp + 0x30]
mov dword [rsp + 0x28], ebx
movss xmm0, dword [rcx + 0x88]
mov rcx, qword [rcx + 0x2d8]
movss dword [rsp + 0x20], xmm0
call fcn.1400e61c0
mov rcx, qword [0x140214710]
inc ebp
add r14, 0x10
cmp ebp, dword [rdi + 0x5dd8]
jl 0x1400ba480
cmp qword [rcx + 0x4a38], r12
je 0x1400ba5f7
mov dword [rcx + 0x4a30], 0x3f800000
mov qword [rcx + 0x4a38], r12
cmp byte [rdi + 0x4c58], r12b
je 0x1400ba67a
mov eax, dword [rdi + 0x4c7c]
inc eax
cmp eax, dword [rdi + 0x3f70]
jge 0x1400ba62c
test byte [rdi + 0x4c5c], 0x20
jne 0x1400ba628
mov ecx, dword [rdi + 0x4c64]
call fcn.1400befd0
test al, al
jne 0x1400ba62c
mov al, 1
jmp 0x1400ba62e
xor al, al
cmp byte [rdi + 0x4ca2], r12b
jne 0x1400ba63b
test al, al
je 0x1400ba640
call fcn.1400afd90
cmp byte [rdi + 0x4c58], r12b
je 0x1400ba67a
mov eax, dword [rdi + 0x3f70]
cmp dword [rdi + 0x4c60], eax
jge 0x1400ba67a
test byte [rdi + 0x4c5c], 1
jne 0x1400ba67a
lea rcx, [0x1401c2b00]
mov byte [rdi + 0x4c59], 1
call fcn.1400cb7a0
mov byte [rdi + 0x4c59], r12b
mov eax, dword [rdi + 0x3f70]
mov dword [rdi + 0x3f74], eax
mov byte [rdi + 0x3f80], r12b
mov rsi, qword [0x140214710]
cmp dword [rsi + 0x4078], r12d
jne 0x1400ba7b8
cmp dword [rsi + 0x4064], r12d
jne 0x1400ba7b8
mov rbx, qword [rsi + 0x4a98]
test rbx, rbx
je 0x1400ba6c7
cmp byte [rbx + 0xf1], r12b
jne 0x1400ba7b8
cmp byte [rsi + 0x3750], r12b
je 0x1400ba77a
mov r14, qword [rsi + 0x4020]
test r14, r14
je 0x1400ba70b
mov rbp, qword [r14 + 0x3b8]
test rbp, rbp
je 0x1400ba769
test dword [rbp + 0x14], 0x4000000
je 0x1400ba70e
mov ecx, dword [rbp + 0x104]
mov edx, 0x100
call fcn.1400bf2a0
test al, al
jne 0x1400ba70e
jmp 0x1400ba77a
mov rbp, r12
test rbp, rbp
je 0x1400ba769
mov rcx, r14
call fcn.1400cc740
cmp byte [rsi + 0x67], r12b
je 0x1400ba757
test byte [rbp + 0x14], 1
je 0x1400ba730
test byte [rbp + 0x42d], 1
je 0x1400ba757
lea rdx, [rsp + 0x40]
mov rcx, rbp
call fcn.1400ccb60
mov rcx, rax
lea rdx, [rsi + 0x36fc]
call fcn.1400a5ad0
test al, al
jne 0x1400ba757
mov qword [rsi + 0x4030], r12
cmp byte [rsi + 0x406d], r12b
je 0x1400ba77a
mov qword [rsi + 0x4030], r12
jmp 0x1400ba77a
test rbx, rbx
je 0x1400ba77a
mov edx, 2
xor ecx, ecx
call fcn.1400bc0e0
cmp byte [rsi + 0x3751], r12b
je 0x1400ba7b8
call fcn.1400bd470
mov rbx, qword [rsi + 0x4020]
mov rbp, rax
test rbx, rbx
je 0x1400ba7ab
test rax, rax
je 0x1400ba7ae
mov rdx, rax
mov rcx, rbx
call fcn.1400bf3a0
test al, al
jne 0x1400ba7ae
mov rbx, rbp
mov dl, 1
mov rcx, rbx
call fcn.1400b0150
mov r14, qword [0x140214710]
lea rsi, [r14 + 0x38c8]
mov ecx, dword [rsi + 4]
test ecx, ecx
jns 0x1400ba7e6
mov eax, ecx
cdq
sub eax, edx
mov edx, r12d
sar eax, 1
add eax, ecx
mov rcx, rsi
test eax, eax
cmovg edx, eax
call fcn.1400d27a0
mov dword [rsi], r12d
mov r15d, r12d
cmp dword [r14 + 0x4a20], r12d
jle 0x1400ba8a1
mov rbp, r12
nop dword [rax]
mov rax, qword [r14 + 0x4a28]
mov rbx, qword [rax + rbp*8]
movsd xmm0, qword [rbx + 8]
movsd qword [rbx + 0x78], xmm0
mov eax, dword [r14 + 0x3f70]
cmp dword [rbx + 0x6c], eax
jl 0x1400ba82d
comiss xmm6, dword [rbx + 0x10]
jae 0x1400ba82d
comiss xmm6, dword [rbx + 0x14]
jb 0x1400ba832
test rbp, rbp
jg 0x1400ba88e
mov rax, qword [rbx + 0x60]
test rax, rax
je 0x1400ba84d
cmp byte [rax + 0xeb], r12b
je 0x1400ba88e
cmp byte [rax + 0xf2], r12b
jne 0x1400ba88e
mov r8d, dword [rsi]
mov ecx, dword [rsi + 4]
cmp r8d, ecx
jne 0x1400ba881
inc r8d
test ecx, ecx
je 0x1400ba86a
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x1400ba86f
mov eax, 8
cmp eax, r8d
mov rcx, rsi
cmovg r8d, eax
mov edx, r8d
call fcn.1400d27a0
movsxd rcx, dword [rsi]
mov rax, qword [rsi + 8]
mov qword [rax + rcx*8], rbx
inc dword [rsi]
inc r15d
inc rbp
cmp r15d, dword [r14 + 0x4a20]
jl 0x1400ba800
mov rax, qword [r14 + 0x4a28]
lea rsi, [rdi + 0x3fd8]
movaps xmm6, xmmword [rsp + 0x50]
mov r15, qword [rsp + 0x60]
mov r14, qword [rsp + 0x68]
mov rcx, qword [rax]
mov word [rcx + 0x59], r12w
mov byte [rcx + 0x5b], r12b
mov ecx, dword [rsi + 4]
test ecx, ecx
jns 0x1400ba8ea
mov eax, ecx
cdq
sub eax, edx
mov edx, r12d
sar eax, 1
add eax, ecx
mov rcx, rsi
test eax, eax
cmovg edx, eax
call fcn.1400d27a0
mov dword [rsi], r12d
mov rcx, rsi
mov edx, dword [rdi + 0x3fb8]
call fcn.1400d27a0
mov rbx, qword [rdi + 0x3fc0]
movsxd rax, dword [rdi + 0x3fb8]
lea rbp, [rbx + rax*8]
cmp rbx, rbp
je 0x1400ba938
mov rdx, qword [rbx]
cmp byte [rdx + 0xeb], r12b
je 0x1400ba927
test dword [rdx + 0x14], 0x1000000
jne 0x1400ba92f
mov rcx, rsi
call fcn.1400aa8f0
add rbx, 8
cmp rbx, rbp
jne 0x1400ba912
mov ecx, dword [rsi]
mov eax, dword [rdi + 0x3fb8]
mov rbp, qword [rsp + 0x88]
mov dword [rsi], eax
mov eax, dword [rdi + 0x3fbc]
mov dword [rdi + 0x3fb8], ecx
mov ecx, dword [rsi + 4]
mov dword [rsi + 4], eax
mov rax, qword [rdi + 0x3fc0]
mov dword [rdi + 0x3fbc], ecx
mov rcx, qword [rsi + 8]
mov qword [rsi + 8], rax
mov eax, dword [rdi + 0x4008]
mov dword [rdi + 0xf4], eax
mov rax, qword [rdi + 0x38]
mov qword [rdi + 0x3fc0], rcx
mov byte [rax + 0x18], r12b
mov byte [rdi + 0x37e8], r12b
mov qword [rdi + 0xe18], r12
mov ecx, dword [rdi + 0x37f4]
test ecx, ecx
jns 0x1400ba9c1
mov eax, ecx
cdq
sub eax, edx
mov edx, r12d
sar eax, 1
add eax, ecx
lea rcx, [rdi + 0x37f0]
test eax, eax
cmovg edx, eax
call fcn.1400d2700
mov dword [rdi + 0x37f0], r12d
mov rbx, qword [rdi + 0x5e68]
movsxd rsi, dword [rdi + 0x5e60]
mov r12, qword [rsp + 0x98]
shl rsi, 5
add rsi, rbx
cmp rbx, rsi
je 0x1400baa08
nop word [rax + rax]
cmp dword [rbx + 4], 3
jne 0x1400ba9ff
mov rdx, rbx
mov rcx, rdi
call qword [rbx + 0x10]
add rbx, 0x20
cmp rbx, rsi
jne 0x1400ba9f0
mov rbx, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x90]
add rsp, 0x70
pop rdi
ret