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

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x50]
sub rsp, 0x150
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
mov rax, qword [0x1402fa010]
xor rax, rsp
mov qword [rbp + 0x20], rax
mov rsi, r8
mov qword [rbp - 0x38], r8
mov rdi, rdx
mov r13, rcx
mov rcx, rdx
call fcn.14002f0c0
xor r15d, r15d
mov qword [rbp + 0x10], r15
call fcn.1400195b0
mov rcx, rax
test rax, rax
je 0x1400c3942
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038716.0]
add rax, 0x18
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x18], r15
call fcn.1400195b0
mov rcx, rax
test rax, rax
je 0x1400c394d
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038716.0]
add rax, 0x18
mov qword [rbp + 0x18], rax
lea rax, [rsp + 0x38]
mov qword [rbp - 0x30], rax
call fcn.1400195b0
mov rcx, rax
test rax, rax
je 0x1400c3958
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038716.0]
add rax, 0x18
mov qword [rsp + 0x38], rax
lea rbx, str.Align
mov rdx, rbx
lea rcx, [rsp + 0x38]
call fcn.140018bd0
lea r12, [r15 - 1]
test al, al
jne 0x1400c2619
mov r8, r12
nop
inc r8
cmp word [rbx + r8*2], 0
jne 0x1400c2600
mov rdx, rbx
lea rcx, [rsp + 0x38]
call fcn.140018f70
nop
lea r8, [rbp + 0x10]
lea rdx, [rsp + 0x38]
mov rcx, rsi
call fcn.14007ead0
mov r14d, eax
cmp dword [r13 + 0x650], 0
je 0x1400c272b
lea rax, [rsp + 0x40]
mov qword [rbp - 0x30], rax
call fcn.1400195b0
mov rcx, rax
test rax, rax
je 0x1400c3963
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038716.0]
add rax, 0x18
mov qword [rsp + 0x40], rax
lea rbx, str.AlignRTL
mov rdx, rbx
lea rcx, [rsp + 0x40]
call fcn.140018bd0
test al, al
jne 0x1400c26a9
mov r8, r12
nop word [rax + rax]
inc r8
cmp word [rbx + r8*2], 0
jne 0x1400c2690
mov rdx, rbx
lea rcx, [rsp + 0x40]
call fcn.140018f70
nop
lea r8, [rbp + 0x18]
lea rdx, [rsp + 0x40]
mov rcx, rsi
call fcn.14007ead0
test eax, eax
mov rax, qword [rbp + 0x10]
je 0x1400c272f
mov rcx, qword [rbp + 0x18]
add rcx, 0xffffffffffffffe8
lea rbx, [rax - 0x18]
cmp rcx, rbx
je 0x1400c272f
cmp dword [rbx + 0x10], 0
jl 0x1400c271a
mov rax, qword [rbx]
cmp qword [rcx], rax
jne 0x1400c271a
call fcn.1400191a0
mov rsi, rax
mov ecx, r12d
lock xadd dword [rbx + 0x10], ecx
sub ecx, 1
jg 0x1400c270c
mov r8, qword [rbx]
mov rcx, qword [r8]
mov rax, qword [rcx + 8]
mov rdx, rbx
mov rcx, r8
call qword [case.0x140038716.0]
lea rax, [rsi + 0x18]
mov qword [rbp + 0x10], rax
mov rsi, qword [rbp - 0x38]
jmp 0x1400c272f
mov rdx, qword [rbp + 0x18]
mov r8d, dword [rdx - 0x10]
lea rcx, [rbp + 0x10]
call fcn.140018f70
mov rax, qword [rbp + 0x10]
test r14d, r14d
jne 0x1400c273d
lea r8d, [r14 + 0xd]
jmp 0x1400c2adf
mov rdx, r15
lea r8, str.left
nop word [rax + rax]
movzx ecx, word [rax + rdx*2]
inc rdx
cmp cx, word [r8 + rdx*2 - 2]
jne 0x1400c277c
cmp rdx, 5
jne 0x1400c2750
mov r8d, r15d
cmp dword [r13 + 0x650], r15d
setne r8b
add r8d, 0xe
jmp 0x1400c2adf
mov rdx, r15
lea r8, str.right
nop word [rax + rax]
movzx ecx, word [rax + rdx*2]
inc rdx
cmp cx, word [r8 + rdx*2 - 2]
jne 0x1400c27ba
cmp rdx, 6
jne 0x1400c2790
mov eax, dword [r13 + 0x650]
neg eax
sbb r8d, r8d
add r8d, 0xf
jmp 0x1400c2adf
mov rdx, r15
lea r8, [0x1402960d8]
nop dword [rax]
nop dword [rax + rax]
movzx ecx, word [rax + rdx*2]
inc rdx
cmp cx, word [r8 + rdx*2 - 2]
jne 0x1400c27ee
cmp rdx, 4
jne 0x1400c27d0
lea r8d, [rdx + 9]
jmp 0x1400c2adf
mov rdx, r15
lea r8, str.bottom
nop dword [rax + rax]
movzx ecx, word [rax + rdx*2]
inc rdx
cmp cx, word [r8 + rdx*2 - 2]
jne 0x1400c281e
cmp rdx, 7
jne 0x1400c2800
lea r8d, [rdx + 9]
jmp 0x1400c2adf
mov rdx, r15
lea r8, str.client
nop dword [rax + rax]
movzx ecx, word [rax + rdx*2]
inc rdx
cmp cx, word [r8 + rdx*2 - 2]
jne 0x1400c284e
cmp rdx, 7
jne 0x1400c2830
lea r8d, [rdx + 5]
jmp 0x1400c2adf
mov rdx, r15
lea r8, str.fixed
nop dword [rax + rax]
movzx ecx, word [rax + rdx*2]
inc rdx
cmp cx, word [r8 + rdx*2 - 2]
jne 0x1400c2883
cmp rdx, 6
jne 0x1400c2860
mov r14d, 1
mov r8d, r14d
jmp 0x1400c2ae5
lea r8, str.hardfixed
mov rdx, r15
nop dword [rax]
movzx ecx, word [rax + rdx*2]
cmp cx, word [r8 + rdx*2]
jne 0x1400c28bb
movzx ecx, word [rax + rdx*2 + 2]
cmp cx, word [r8 + rdx*2 + 2]
jne 0x1400c28bb
add rdx, 2
cmp rdx, 0xa
jne 0x1400c2890
lea r8d, [rdx - 8]
jmp 0x1400c2adf
mov rdx, r15
lea r8, str.stack
nop word [rax + rax]
movzx ecx, word [rax + rdx*2]
inc rdx
cmp cx, word [r8 + rdx*2 - 2]
jne 0x1400c28ee
cmp rdx, 6
jne 0x1400c28d0
lea r8d, [rdx - 3]
jmp 0x1400c2adf
mov rdx, r15
lea r8, str.center
nop dword [rax + rax]
movzx ecx, word [rax + rdx*2]
inc rdx
cmp cx, word [r8 + rdx*2 - 2]
jne 0x1400c291e
cmp rdx, 7
jne 0x1400c2900
lea r8d, [rdx - 3]
jmp 0x1400c2adf
lea r8, str.top_center
mov rdx, r12
nop dword [rax + rax]
movzx ecx, word [rax + rdx*2 + 2]
cmp cx, word [r8 + rdx*2 + 2]
jne 0x1400c2952
add rdx, 2
cmp rdx, 0xb
je 0x1400c2999
movzx ecx, word [rax + rdx*2]
cmp cx, word [r8 + rdx*2]
je 0x1400c2930
lea r9, str.rightbottom
mov r8d, InitCommonControls
mov rdx, r15
movzx ecx, word [rax + rdx*2]
cmp cx, word [r9 + rdx*2]
jne 0x1400c29a4
movzx ecx, word [rax + rdx*2 + 2]
cmp cx, word [r9 + rdx*2 + 2]
jne 0x1400c29a4
add rdx, 2
cmp rdx, r8
jne 0x1400c2962
mov eax, r15d
cmp dword [r13 + 0x650], eax
setne al
lea r8d, [rax + 6]
jmp 0x1400c2adf
mov r8d, 5
jmp 0x1400c2adf
lea r9, str.leftbottom
mov rdx, r12
nop
movzx ecx, word [rax + rdx*2 + 2]
cmp cx, word [r9 + rdx*2 + 2]
jne 0x1400c29d2
add rdx, 2
cmp rdx, 0xb
je 0x1400c2a39
movzx ecx, word [rax + rdx*2]
cmp cx, word [r9 + rdx*2]
je 0x1400c29b0
lea r9, str.righttop
mov rdx, r12
nop dword [rax]
movzx ecx, word [rax + rdx*2 + 2]
cmp cx, word [r9 + rdx*2 + 2]
jne 0x1400c2a02
add rdx, 2
cmp rdx, 9
je 0x1400c2a4d
movzx ecx, word [rax + rdx*2]
cmp cx, word [r9 + rdx*2]
je 0x1400c29e0
mov rdx, r15
lea r9, str.lefttop
nop dword [rax]
movzx ecx, word [rax + rdx*2]
inc rdx
cmp cx, word [r9 + rdx*2 - 2]
jne 0x1400c2a60
cmp rdx, 8
jne 0x1400c2a10
mov eax, dword [r13 + 0x650]
neg eax
sbb ecx, ecx
lea r8d, [rcx + 9]
jmp 0x1400c2adf
mov eax, dword [r13 + 0x650]
neg eax
sbb ecx, ecx
lea r8d, [rcx + 7]
jmp 0x1400c2adf
mov eax, r15d
cmp dword [r13 + 0x650], eax
setne al
lea r8d, [rax + 8]
jmp 0x1400c2adf
lea r9, str.leftcenter
mov rdx, r12
nop word [rax + rax]
movzx ecx, word [rax + rdx*2 + 2]
cmp cx, word [r9 + rdx*2 + 2]
jne 0x1400c2a96
add rdx, 2
cmp rdx, 0xb
je 0x1400c2c00
movzx ecx, word [rax + rdx*2]
cmp cx, word [r9 + rdx*2]
je 0x1400c2a70
lea r9, str.rightcenter
mov rdx, r15
movzx ecx, word [rax + rdx*2]
cmp cx, word [r9 + rdx*2]
jne 0x1400c3859
movzx ecx, word [rax + rdx*2 + 2]
cmp cx, word [r9 + rdx*2 + 2]
jne 0x1400c3859
add rdx, 2
cmp rdx, r8
jne 0x1400c2aa0
cmp dword [r13 + 0x650], 0
mov r8d, 0xa
jne 0x1400c2adf
mov r8d, 0xb
mov r14d, 1
mov rax, rdi
mov dword [rax], r8d
mov qword [rbp + 8], r15
call fcn.1400195b0
mov rcx, rax
test rax, rax
je 0x1400c396e
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038716.0]
add rax, 0x18
mov qword [rbp + 8], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x30], rax
call fcn.1400195b0
mov rcx, rax
test rax, rax
je 0x1400c3979
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038716.0]
add rax, 0x18
mov qword [rsp + 0x48], rax
lea rbx, [0x140295ff8]
mov rdx, rbx
lea rcx, [rsp + 0x48]
call fcn.140018bd0
test al, al
jne 0x1400c2b7a
mov r8, r12
inc r8
cmp word [rbx + r8*2], 0
jne 0x1400c2b61
mov rdx, rbx
lea rcx, [rsp + 0x48]
call fcn.140018f70
nop
lea r8, [rbp + 8]
lea rdx, [rsp + 0x48]
mov rcx, rsi
call fcn.14007ead0
lea r10, str.fit2parent
lea r9, str.fit2child
lea r8, str.fit2text
test eax, eax
je 0x1400c2cc5
mov rax, qword [rbp + 8]
mov rdx, r12
nop
movzx ecx, word [rax + rdx*2 + 2]
cmp cx, word [r8 + rdx*2 + 2]
jne 0x1400c2bd2
add rdx, 2
cmp rdx, 9
je 0x1400c2c16
movzx ecx, word [rax + rdx*2]
cmp cx, word [r8 + rdx*2]
je 0x1400c2bb0
mov rdx, r15
movzx ecx, word [rax + rdx*2]
cmp cx, word [r9 + rdx*2]
jne 0x1400c2c1f
movzx ecx, word [rax + rdx*2 + 2]
cmp cx, word [r9 + rdx*2 + 2]
jne 0x1400c2c1f
add rdx, 2
cmp rdx, 0xa
jne 0x1400c2bd5
mov dword [rdi + 0x34], r14d
jmp 0x1400c2cc5
mov eax, r15d
cmp dword [r13 + 0x650], eax
setne al
lea r8d, [rax + 0xa]
jmp 0x1400c2adf
mov dword [rdi + 0x2c], r14d
jmp 0x1400c2cc5
mov rdx, r12
movzx ecx, word [rax + rdx*2 + 2]
cmp cx, word [r10 + rdx*2 + 2]
jne 0x1400c2c44
add rdx, 2
cmp rdx, 0xb
je 0x1400c2c68
movzx ecx, word [rax + rdx*2]
cmp cx, word [r10 + rdx*2]
je 0x1400c2c22
mov r8d, r14d
lea rdx, [rbp - 8]
lea rcx, [rbp + 8]
call fcn.14001da50
nop
mov rcx, qword [rax]
cmp dword [rcx - 0x10], 1
jne 0x1400c2c6e
cmp word [rcx], 0x25
jne 0x1400c2c6e
mov bl, 1
jmp 0x1400c2c70
mov dword [rdi + 0x3c], r14d
jmp 0x1400c2cc5
xor bl, bl
mov rdx, qword [rbp - 8]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400c2c95
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038716.0]
mov rcx, qword [rbp + 8]
test bl, bl
je 0x1400c2cb4
mov dword [rdi + 0x24], r14d
call fcn.140207344
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movss dword [rdi + 4], xmm1
jmp 0x1400c2cc5
mov edx, dword [r13 + 0x670]
call fcn.1400ba7e0
movss dword [rdi + 4], xmm0
lea rax, [rsp + 0x50]
mov qword [rsp + 0x30], rax
call fcn.1400195b0
mov rcx, rax
test rax, rax
je 0x1400c3984
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038716.0]
add rax, 0x18
mov qword [rsp + 0x50], rax
lea rbx, [0x140296008]
mov rdx, rbx
lea rcx, [rsp + 0x50]
call fcn.140018bd0
test al, al
jne 0x1400c2d2a
mov r8, r12
inc r8
cmp word [rbx + r8*2], 0
jne 0x1400c2d11
mov rdx, rbx
lea rcx, [rsp + 0x50]
call fcn.140018f70
nop
lea r8, [rbp + 8]
lea rdx, [rsp + 0x50]
mov rcx, rsi
call fcn.14007ead0
test eax, eax
je 0x1400c2e63
mov rax, qword [rbp + 8]
mov rdx, r12
lea r8, str.fit2text
movzx ecx, word [rax + rdx*2 + 2]
cmp cx, word [r8 + rdx*2 + 2]
jne 0x1400c2d73
add rdx, 2
cmp rdx, 9
je 0x1400c2dad
movzx ecx, word [rax + rdx*2]
cmp cx, word [r8 + rdx*2]
je 0x1400c2d51
lea rdx, str.fit2child
nop word [rax + rax]
movzx ecx, word [rax + r15*2]
cmp cx, word [rdx + r15*2]
jne 0x1400c2db6
movzx ecx, word [rax + r15*2 + 2]
cmp cx, word [rdx + r15*2 + 2]
jne 0x1400c2db6
add r15, 2
cmp r15, 0xa
jne 0x1400c2d80
mov dword [rdi + 0x38], r14d
jmp 0x1400c2e63
mov dword [rdi + 0x30], r14d
jmp 0x1400c2e63
mov rdx, r12
lea r8, str.fit2parent
movzx ecx, word [rax + rdx*2 + 2]
cmp cx, word [r8 + rdx*2 + 2]
jne 0x1400c2de2
add rdx, 2
cmp rdx, 0xb
je 0x1400c2e06
movzx ecx, word [rax + rdx*2]
cmp cx, word [r8 + rdx*2]
je 0x1400c2dc0
mov r8d, r14d
lea rdx, [rbp - 0x30]
lea rcx, [rbp + 8]
call fcn.14001da50
nop
mov rcx, qword [rax]
cmp dword [rcx - 0x10], 1
jne 0x1400c2e0c
cmp word [rcx], 0x25
jne 0x1400c2e0c
mov bl, 1
jmp 0x1400c2e0e
mov dword [rdi + 0x40], r14d
jmp 0x1400c2e63
xor bl, bl
mov rdx, qword [rbp - 0x30]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400c2e33
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038716.0]
mov rcx, qword [rbp + 8]
test bl, bl
je 0x1400c2e52
mov dword [rdi + 0x28], r14d
call fcn.140207344
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movss dword [rdi + 8], xmm1
jmp 0x1400c2e63
mov edx, dword [r13 + 0x670]
call fcn.1400ba7e0
movss dword [rdi + 8], xmm0
lea rax, [rsp + 0x58]
mov qword [rsp + 0x30], rax
call fcn.1400195b0
mov rcx, rax
test rax, rax
je 0x1400c398f
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038716.0]
add rax, 0x18
mov qword [rsp + 0x58], rax
lea rbx, str.MinWidth
mov rdx, rbx
lea rcx, [rsp + 0x58]
call fcn.140018bd0
test al, al
jne 0x1400c2ec9
mov r8, r12
nop
inc r8
cmp word [rbx + r8*2], 0
jne 0x1400c2eb0
mov rdx, rbx
lea rcx, [rsp + 0x58]
call fcn.140018f70
nop
lea r8, [rbp + 8]
lea rdx, [rsp + 0x58]
mov rcx, rsi
call fcn.14007ead0
movss xmm6, dword [0x1402ae6d0]
test eax, eax
je 0x1400c2f26
mov ebx, dword [r13 + 0x670]
mov rcx, qword [rbp + 8]
call fcn.1402088f8
movd xmm7, eax
cvtdq2ps xmm7, xmm7
test ebx, ebx
jne 0x1400c2f12
call fcn.140038150
mov ecx, dword [rax]
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
jmp 0x1400c2f19
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm7
divss xmm0, xmm6
movss dword [rdi + 0xc], xmm0
lea rax, [rsp + 0x60]
mov qword [rsp + 0x30], rax
call fcn.1400195b0
mov rcx, rax
test rax, rax
je 0x1400c399a
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038716.0]
add rax, 0x18
mov qword [rsp + 0x60], rax
lea rbx, str.MinHeight
mov rdx, rbx
lea rcx, [rsp + 0x60]
call fcn.140018bd0
test al, al
jne 0x1400c2f8b
mov r8, r12
inc r8
cmp word [rbx + r8*2], 0
jne 0x1400c2f72
mov rdx, rbx
lea rcx, [rsp + 0x60]
call fcn.140018f70
nop
lea r8, [rbp + 8]
lea rdx, [rsp + 0x60]
mov rcx, rsi
call fcn.14007ead0
test eax, eax
je 0x1400c2fe0
mov ebx, dword [r13 + 0x670]
mov rcx, qword [rbp + 8]
call fcn.1402088f8
movd xmm7, eax
cvtdq2ps xmm7, xmm7
test ebx, ebx
jne 0x1400c2fcc
call fcn.140038150
mov ecx, dword [rax]
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
jmp 0x1400c2fd3
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm7
divss xmm0, xmm6
movss dword [rdi + 0x10], xmm0
lea rax, [rsp + 0x68]
mov qword [rsp + 0x30], rax
call fcn.1400195b0
mov rcx, rax
test rax, rax
je 0x1400c39a5
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038716.0]
add rax, 0x18
mov qword [rsp + 0x68], rax
lea rbx, str.MaxWidth
mov rdx, rbx
lea rcx, [rsp + 0x68]
call fcn.140018bd0
test al, al
jne 0x1400c3049
mov r8, r12
nop dword [rax]
inc r8
cmp word [rbx + r8*2], 0
jne 0x1400c3030
mov rdx, rbx
lea rcx, [rsp + 0x68]
call fcn.140018f70
nop
lea r8, [rbp + 8]
lea rdx, [rsp + 0x68]
mov rcx, rsi
call fcn.14007ead0
test eax, eax
je 0x1400c309e
mov ebx, dword [r13 + 0x670]
mov rcx, qword [rbp + 8]
call fcn.1402088f8
movd xmm7, eax
cvtdq2ps xmm7, xmm7
test ebx, ebx
jne 0x1400c308a
call fcn.140038150
mov ecx, dword [rax]
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
jmp 0x1400c3091
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm7
divss xmm0, xmm6
movss dword [rdi + 0x14], xmm0
lea rax, [rsp + 0x70]
mov qword [rsp + 0x30], rax
call fcn.1400195b0
mov rcx, rax
test rax, rax
je 0x1400c39b0
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038716.0]
add rax, 0x18
mov qword [rsp + 0x70], rax
lea rbx, str.MaxHeight
mov rdx, rbx
lea rcx, [rsp + 0x70]
call fcn.140018bd0
test al, al
jne 0x1400c3109
mov r8, r12
nop word [rax + rax]
inc r8
cmp word [rbx + r8*2], 0
jne 0x1400c30f0
mov rdx, rbx
lea rcx, [rsp + 0x70]
call fcn.140018f70
nop
lea r8, [rbp + 8]
lea rdx, [rsp + 0x70]
mov rcx, rsi
call fcn.14007ead0
test eax, eax
je 0x1400c315e
mov ebx, dword [r13 + 0x670]
mov rcx, qword [rbp + 8]
call fcn.1402088f8
movd xmm7, eax
cvtdq2ps xmm7, xmm7
test ebx, ebx
jne 0x1400c314a
call fcn.140038150
mov ecx, dword [rax]
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
jmp 0x1400c3151
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm7
divss xmm0, xmm6
movss dword [rdi + 0x18], xmm0
lea rax, [rsp + 0x78]
mov qword [rsp + 0x30], rax
call fcn.1400195b0
mov rcx, rax
test rax, rax
je 0x1400c39bb
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038716.0]
add rax, 0x18
mov qword [rsp + 0x78], rax
lea rbx, str.Left
mov rdx, rbx
lea rcx, [rsp + 0x78]
call fcn.140018bd0
test al, al
jne 0x1400c31c9
mov r8, r12
nop word [rax + rax]
inc r8
cmp word [rbx + r8*2], 0
jne 0x1400c31b0
mov rdx, rbx
lea rcx, [rsp + 0x78]
call fcn.140018f70
nop
lea r8, [rbp + 8]
lea rdx, [rsp + 0x78]
mov rcx, rsi
call fcn.14007ead0
test eax, eax
je 0x1400c321e
mov ebx, dword [r13 + 0x670]
mov rcx, qword [rbp + 8]
call fcn.1402088f8
movd xmm7, eax
cvtdq2ps xmm7, xmm7
test ebx, ebx
jne 0x1400c320a
call fcn.140038150
mov ecx, dword [rax]
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
jmp 0x1400c3211
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm7
divss xmm0, xmm6
movss dword [rdi + 0x1c], xmm0
lea rax, [rbp - 0x80]
mov qword [rsp + 0x30], rax
call fcn.1400195b0
mov rcx, rax
test rax, rax
je 0x1400c39c6
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038716.0]
add rax, 0x18
mov qword [rbp - 0x80], rax
lea rbx, [0x14029a060]
mov rdx, rbx
lea rcx, [rbp - 0x80]
call fcn.140018bd0
test al, al
jne 0x1400c3288
mov r8, r12
nop word [rax + rax]
inc r8
cmp word [rbx + r8*2], 0
jne 0x1400c3270
mov rdx, rbx
lea rcx, [rbp - 0x80]
call fcn.140018f70
nop
lea r8, [rbp + 8]
lea rdx, [rbp - 0x80]
mov rcx, rsi
call fcn.14007ead0
test eax, eax
je 0x1400c32e1
mov ebx, dword [r13 + 0x670]
mov rcx, qword [rbp + 8]
call fcn.1402088f8
movd xmm7, eax
cvtdq2ps xmm7, xmm7
test ebx, ebx
jne 0x1400c32c8
call fcn.140038150
mov ecx, dword [rax]
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
jmp 0x1400c32cf
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm7
divss xmm0, xmm6
lea rbx, [rdi + 0x20]
movss dword [rbx], xmm0
jmp 0x1400c32e5
lea rbx, [rdi + 0x20]
lea rax, [rbp - 0x78]
mov qword [rsp + 0x30], rax
call fcn.1400195b0
mov rcx, rax
test rax, rax
je 0x1400c39d1
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038716.0]
add rax, 0x18
mov qword [rbp - 0x78], rax
lea r15, str.Position
mov rdx, r15
lea rcx, [rbp - 0x78]
call fcn.140018bd0
test al, al
jne 0x1400c3348
mov r8, r12
nop
inc r8
cmp word [r15 + r8*2], 0
jne 0x1400c3330
mov rdx, r15
lea rcx, [rbp - 0x78]
call fcn.140018f70
nop
lea r8, [rbp + 8]
lea rdx, [rbp - 0x78]
mov rcx, rsi
call fcn.14007ead0
test eax, eax
je 0x1400c3384
lea rcx, [rdi + 8]
lea r9, [rdi + 4]
lea rdx, [rdi + 0x1c]
mov eax, dword [r13 + 0x670]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rcx
mov r8, rbx
mov rcx, qword [rbp + 8]
call fcn.1400ba830
lea rax, [rbp - 0x70]
mov qword [rsp + 0x30], rax
call fcn.1400195b0
mov rcx, rax
test rax, rax
je 0x1400c39dc
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038716.0]
add rax, 0x18
mov qword [rbp - 0x70], rax
lea rbx, str.Show
mov rdx, rbx
lea rcx, [rbp - 0x70]
call fcn.140018bd0
test al, al
jne 0x1400c33e8
mov r8, r12
nop dword [rax]
inc r8
cmp word [rbx + r8*2], 0
jne 0x1400c33d0
mov rdx, rbx
lea rcx, [rbp - 0x70]
call fcn.140018f70
nop
lea r8, [rbp + 8]
lea rdx, [rbp - 0x70]
mov rcx, rsi
call fcn.14007ead0
test eax, eax
je 0x1400c3429
lea rax, [rbp - 0x28]
mov qword [rsp + 0x30], rax
mov rcx, qword [rbp + 8]
add rcx, 0xffffffffffffffe8
call fcn.1400191a0
add rax, 0x18
mov qword [rbp - 0x28], rax
lea rcx, [rbp - 0x28]
call fcn.1400ba9d0
mov dword [rdi + 0x84], eax
lea rax, [rbp - 0x68]
mov qword [rsp + 0x30], rax
call fcn.1400195b0
mov rcx, rax
test rax, rax
je 0x1400c39e7
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038716.0]
add rax, 0x18
mov qword [rbp - 0x68], rax
lea rbx, str.Margin
mov rdx, rbx
lea rcx, [rbp - 0x68]
call fcn.140018bd0
test al, al
jne 0x1400c348a
mov r8, r12
inc r8
cmp word [rbx + r8*2], 0
jne 0x1400c3472
mov rdx, rbx
lea rcx, [rbp - 0x68]
call fcn.140018f70
nop
lea r8, [rbp + 8]
lea rdx, [rbp - 0x68]
mov rcx, rsi
call fcn.14007ead0
test eax, eax
je 0x1400c34c7
lea rcx, [rdi + 0x44]
lea r9, [rdi + 0x50]
lea r8, [rdi + 0x4c]
lea rdx, [rdi + 0x48]
mov eax, dword [r13 + 0x670]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rcx
mov rcx, qword [rbp + 8]
call fcn.1400ba830
lea rax, [rbp - 0x60]
mov qword [rsp + 0x30], rax
call fcn.1400195b0
mov rcx, rax
test rax, rax
je 0x1400c39f2
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038716.0]
add rax, 0x18
mov qword [rbp - 0x60], rax
lea rbx, str.Padding
mov rdx, rbx
lea rcx, [rbp - 0x60]
call fcn.140018bd0
test al, al
jne 0x1400c3528
mov r8, r12
inc r8
cmp word [rbx + r8*2], 0
jne 0x1400c3510
mov rdx, rbx
lea rcx, [rbp - 0x60]
call fcn.140018f70
nop
lea r8, [rbp + 8]
lea rdx, [rbp - 0x60]
mov rcx, rsi
call fcn.14007ead0
test eax, eax
je 0x1400c3565
lea rcx, [rdi + 0x54]
lea r9, [rdi + 0x60]
lea r8, [rdi + 0x5c]
lea rdx, [rdi + 0x58]
mov eax, dword [r13 + 0x670]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rcx
mov rcx, qword [rbp + 8]
call fcn.1400ba830
lea rax, [rbp - 0x58]
mov qword [rsp + 0x30], rax
call fcn.1400195b0
mov rcx, rax
test rax, rax
je 0x1400c39fd
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038716.0]
add rax, 0x18
mov qword [rbp - 0x58], rax
lea rbx, str.TextPadding
mov rdx, rbx
lea rcx, [rbp - 0x58]
call fcn.140018bd0
test al, al
jne 0x1400c35c8
mov r8, r12
nop
inc r8
cmp word [rbx + r8*2], 0
jne 0x1400c35b0
mov rdx, rbx
lea rcx, [rbp - 0x58]
call fcn.140018f70
nop
lea r8, [rbp + 8]
lea rdx, [rbp - 0x58]
mov rcx, rsi
call fcn.14007ead0
test eax, eax
je 0x1400c3605
lea rcx, [rdi + 0x64]
lea r9, [rdi + 0x70]
lea r8, [rdi + 0x6c]
lea rdx, [rdi + 0x68]
mov eax, dword [r13 + 0x670]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rcx
mov rcx, qword [rbp + 8]
call fcn.1400ba830
lea rax, [rbp - 0x50]
mov qword [rsp + 0x30], rax
call fcn.1400195b0
mov rcx, rax
test rax, rax
je 0x1400c3a08
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038716.0]
add rax, 0x18
mov qword [rbp - 0x50], rax
lea rbx, str.TextMargin
mov rdx, rbx
lea rcx, [rbp - 0x50]
call fcn.140018bd0
test al, al
jne 0x1400c3668
mov r8, r12
nop
inc r8
cmp word [rbx + r8*2], 0
jne 0x1400c3650
mov rdx, rbx
lea rcx, [rbp - 0x50]
call fcn.140018f70
nop
lea r8, [rbp + 8]
lea rdx, [rbp - 0x50]
mov rcx, rsi
call fcn.14007ead0
test eax, eax
je 0x1400c36a8
lea rcx, [rdi + 0x74]
lea r9, [rdi + 0x80]
lea r8, [rdi + 0x7c]
lea rdx, [rdi + 0x78]
mov eax, dword [r13 + 0x670]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rcx
mov rcx, qword [rbp + 8]
call fcn.1400ba830
lea rax, [rbp - 0x48]
mov qword [rsp + 0x30], rax
call fcn.1400195b0
mov rcx, rax
test rax, rax
je 0x1400c3a13
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038716.0]
add rax, 0x18
mov qword [rbp - 0x48], rax
lea rbx, str.HideWhenSmall
mov rdx, rbx
lea rcx, [rbp - 0x48]
call fcn.140018bd0
test al, al
jne 0x1400c3709
mov r8, r12
inc r8
cmp word [rbx + r8*2], 0
jne 0x1400c36f1
mov rdx, rbx
lea rcx, [rbp - 0x48]
call fcn.140018f70
nop
lea r8, [rbp + 8]
lea rdx, [rbp - 0x48]
mov rcx, rsi
call fcn.14007ead0
test eax, eax
je 0x1400c374a
lea rax, [rbp - 0x20]
mov qword [rsp + 0x30], rax
mov rcx, qword [rbp + 8]
add rcx, 0xffffffffffffffe8
call fcn.1400191a0
add rax, 0x18
mov qword [rbp - 0x20], rax
lea rcx, [rbp - 0x20]
call fcn.1400ba9d0
mov dword [rdi + 0x88], eax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x30], rax
call fcn.1400195b0
mov rcx, rax
test rax, rax
je 0x1400c3937
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038716.0]
add rax, 0x18
mov qword [rbp - 0x40], rax
lea rbx, str.FixedSize
mov rdx, rbx
lea rcx, [rbp - 0x40]
call fcn.140018bd0
test al, al
jne 0x1400c37ab
mov r8, r12
inc r8
cmp word [rbx + r8*2], 0
jne 0x1400c3793
mov rdx, rbx
lea rcx, [rbp - 0x40]
call fcn.140018f70
nop
lea r8, [rbp + 8]
lea rdx, [rbp - 0x40]
mov rcx, rsi
call fcn.14007ead0
mov rbx, qword [rbp + 8]
test eax, eax
je 0x1400c37ec
lea rax, [rbp - 0x18]
mov qword [rsp + 0x30], rax
lea rcx, [rbx - 0x18]
call fcn.1400191a0
add rax, 0x18
mov qword [rbp - 0x18], rax
lea rcx, [rbp - 0x18]
call fcn.1400ba9d0
mov dword [rdi + 0x8c], eax
cmp dword [r13 + 0x650], 0
je 0x1400c3836
movss xmm0, dword [rdi + 0x54]
mov eax, dword [rdi + 0x5c]
mov dword [rdi + 0x54], eax
movss dword [rdi + 0x5c], xmm0
movss xmm0, dword [rdi + 0x44]
mov eax, dword [rdi + 0x4c]
mov dword [rdi + 0x44], eax
movss dword [rdi + 0x4c], xmm0
movss xmm0, dword [rdi + 0x64]
mov eax, dword [rdi + 0x6c]
mov dword [rdi + 0x64], eax
movss dword [rdi + 0x6c], xmm0
movss xmm0, dword [rdi + 0x74]
mov eax, dword [rdi + 0x7c]
mov dword [rdi + 0x74], eax
movss dword [rdi + 0x7c], xmm0
lea rdx, [rbx - 0x18]
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400c38b9
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038716.0]
jmp 0x1400c38b9
lea rcx, [rbp - 0x10]
mov qword [rsp + 0x30], rcx
lea rcx, [rbp - 0x38]
mov qword [rbp], rcx
lea rcx, [rax - 0x18]
call fcn.1400191a0
add rax, 0x18
mov qword [rbp - 0x10], rax
mov rcx, qword [r13 + 0x350]
sub rcx, 0x18
call fcn.1400191a0
add rax, 0x18
mov qword [rbp - 0x38], rax
mov eax, dword [rsi + 0x7c]
mov dword [rsp + 0x28], eax
mov eax, dword [rsi + 0x78]
mov dword [rsp + 0x20], eax
lea r9, [rbp - 0x10]
lea r8, [rbp - 0x38]
mov edx, 0x201
mov rcx, r13
call fcn.1400c1910
mov r14d, r15d
mov rdx, qword [rbp + 0x18]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400c38df
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038716.0]
nop
mov rdx, qword [rbp + 0x10]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], r12d
sub r12d, 1
jg 0x1400c3903
mov rcx, qword [rdx]
mov r8, qword [rcx]
mov rax, qword [r8 + 8]
call qword [case.0x140038716.0]
mov eax, r14d
mov rcx, qword [rbp + 0x20]
xor rcx, rsp
call fcn.1401f3bf0
lea r11, [rsp + 0x150]
mov rbx, qword [r11 + 0x58]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov ecx, 0x80004005
call fcn.140019320
nop
mov ecx, 0x80004005
call fcn.140019320
nop
mov ecx, 0x80004005
call fcn.140019320
nop
mov ecx, 0x80004005
call fcn.140019320
int3
mov ecx, 0x80004005
call fcn.140019320
int3
mov ecx, 0x80004005
call fcn.140019320
nop
mov ecx, 0x80004005
call fcn.140019320
int3
mov ecx, 0x80004005
call fcn.140019320
int3
mov ecx, 0x80004005
call fcn.140019320
int3
mov ecx, 0x80004005
call fcn.140019320
int3
mov ecx, 0x80004005
call fcn.140019320
int3
mov ecx, 0x80004005
call fcn.140019320
int3
mov ecx, 0x80004005
call fcn.140019320
int3
mov ecx, 0x80004005
call fcn.140019320
int3
mov ecx, 0x80004005
call fcn.140019320
int3
mov ecx, 0x80004005
call fcn.140019320
int3
mov ecx, 0x80004005
call fcn.140019320
int3
mov ecx, 0x80004005
call fcn.140019320
int3
mov ecx, 0x80004005
call fcn.140019320
int3
mov ecx, 0x80004005
call fcn.140019320
int3
mov ecx, 0x80004005
call fcn.140019320
int3