Function at 0x100d19d0
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100e5736
mov eax, dword fs:[0]
push eax
sub esp, 0x80
push ebx
push esi
push edi
mov eax, dword [0x101279d8]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, dword [ebp + 0xc]
xorps xmm0, xmm0
mov edi, dword [ebp + 8]
movss dword [esi + 0x2c], xmm0
movss dword [esi + 0x30], xmm0
movss dword [esi + 0x4c], xmm0
movss dword [esi + 0x50], xmm0
mov word [esi + 0x34], 0x101
mov word [esi + 0x54], 0x101
movss xmm1, dword [ecx + 0x14]
movss dword [ebp - 0x28], xmm1
movss xmm1, dword [ecx + 0x18]
movss dword [ebp - 0x2c], xmm0
movss dword [ebp - 0x20], xmm0
movss xmm0, dword [0x100ea0c0]
push str.linebreak
mov ecx, edi
movss dword [ebp - 0x24], xmm1
movss dword [esi + 4], xmm0
movss dword [esi + 8], xmm0
movss dword [esi + 0xc], xmm0
movss dword [esi + 0x10], xmm0
call fcn.100d60b0
mov ecx, eax
call fcn.100d46e0
test eax, eax
jne 0x100d1a79
xor ecx, ecx
jmp 0x100d1a8f
mov ecx, eax
lea ebx, [ecx + 2]
mov edi, edi
mov dx, word [ecx]
add ecx, 2
test dx, dx
jne 0x100d1a80
sub ecx, ebx
sar ecx, 1
push ecx
push eax
mov ecx, esi
call fcn.10001cd0
push 0x10104160
mov ecx, edi
call fcn.100d60b0
mov edi, eax
push str.clip
mov ecx, edi
call fcn.100d60b0
mov ebx, eax
push 1
mov ecx, ebx
call fcn.100d3e50
mov ecx, ebx
test al, al
je 0x100d1b26
call fcn.100d46e0
push eax
lea ecx, [ebp + 0xc]
call fcn.10001e10
lea eax, [ebp + 0xc]
push str.frame
push eax
call fcn.1000fa40
add esp, 8
test al, al
je 0x100d1afe
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov dword [esi + 4], ecx
mov ecx, dword [ebp - 0x20]
mov dword [esi + 8], edx
mov dword [esi + 0xc], eax
mov dword [esi + 0x10], ecx
mov eax, dword [ebp + 0xc]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x100d1be0
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
jmp 0x100d1be0
push 0
push 0x100f0848
call fcn.100d60b0
mov ecx, eax
call fcn.100d3e50
test al, al
je 0x100d1b53
push 0x100f0848
mov ecx, ebx
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 4]
push 0
push 0x100f0a80
mov ecx, ebx
call fcn.100d60b0
mov ecx, eax
call fcn.100d3e50
test al, al
je 0x100d1b82
push 0x100f0a80
mov ecx, ebx
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 8]
push 0
push 0x100f0910
mov ecx, ebx
call fcn.100d60b0
mov ecx, eax
call fcn.100d3e50
test al, al
je 0x100d1bb1
push 0x100f0910
mov ecx, ebx
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0xc]
push 0
push 0x100f0988
mov ecx, ebx
call fcn.100d60b0
mov ecx, eax
call fcn.100d3e50
test al, al
je 0x100d1be0
push 0x100f0988
mov ecx, ebx
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0x10]
push 0x100c8350
push 0x100c69d0
push 2
push 0x30
lea ecx, [ebp - 0x8c]
push ecx
call fcn.100a8523
lea edx, [ebp - 0x18]
push edx
lea eax, [ebp + 0xc]
push eax
lea ecx, [ebp - 0x10]
push ecx
push 0x100f1238
lea ecx, [ebp - 0x8c]
mov dword [ebp - 4], 0
call fcn.100d3f40
test eax, eax
jne 0x100d1c63
cmp dword [ebp - 0x8c], eax
jne 0x100d1c4b
mov edx, dword [ebp - 0x84]
push 1
push edx
lea ecx, [ebp - 0x8c]
call fcn.100c7250
test al, al
jne 0x100d1c4b
push 0x8007000e
call fcn.10001150
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x10]
push eax
push ecx
push 0x100f1238
lea ecx, [ebp - 0x8c]
call fcn.100c8530
xorps xmm0, xmm0
lea edx, [ebp - 0x18]
push edx
movss dword [eax + 4], xmm0
lea eax, [ebp + 0xc]
push eax
lea ecx, [ebp - 0x10]
push ecx
push str.right
lea ecx, [ebp - 0x8c]
call fcn.100d3f40
test eax, eax
jne 0x100d1ccd
cmp dword [ebp - 0x8c], eax
jne 0x100d1cb5
mov edx, dword [ebp - 0x84]
push 1
push edx
lea ecx, [ebp - 0x8c]
call fcn.100c7250
test al, al
jne 0x100d1cb5
push 0x8007000e
call fcn.10001150
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x10]
push eax
push ecx
push str.right
lea ecx, [ebp - 0x8c]
call fcn.100c8530
xorps xmm0, xmm0
lea edx, [ebp - 0x18]
push edx
movss dword [eax + 4], xmm0
lea eax, [ebp + 0xc]
push eax
lea ecx, [ebp - 0x10]
push ecx
push str.bottom
lea ecx, [ebp - 0x8c]
call fcn.100d3f40
test eax, eax
jne 0x100d1d37
cmp dword [ebp - 0x8c], eax
jne 0x100d1d1f
mov edx, dword [ebp - 0x84]
push 1
push edx
lea ecx, [ebp - 0x8c]
call fcn.100c7250
test al, al
jne 0x100d1d1f
push 0x8007000e
call fcn.10001150
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x10]
push eax
push ecx
push str.bottom
lea ecx, [ebp - 0x8c]
call fcn.100c8530
fld dword [ebp - 0x24]
lea edx, [ebp - 0x18]
fsub qword [0x100e8068]
push edx
lea ecx, [ebp - 0x14]
fstp dword [ebp + 0xc]
fld dword [ebp + 0xc]
fstp dword [eax + 4]
lea eax, [ebp - 0x10]
push eax
push ecx
push str.left
lea ecx, [ebp - 0x8c]
call fcn.100d3f40
test eax, eax
jne 0x100d1dab
cmp dword [ebp - 0x8c], eax
jne 0x100d1d93
mov edx, dword [ebp - 0x84]
push 1
push edx
lea ecx, [ebp - 0x8c]
call fcn.100c7250
test al, al
jne 0x100d1d93
push 0x8007000e
call fcn.10001150
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x14]
push eax
push ecx
push str.left
lea ecx, [ebp - 0x8c]
call fcn.100c8530
fld dword [ebp - 0x28]
lea edx, [ebp - 0x1c]
fsub qword [0x100e8068]
push edx
lea ecx, [ebp - 0x18]
fstp dword [ebp - 0x10]
fld dword [ebp - 0x10]
fstp dword [eax + 4]
lea eax, [ebp - 0x14]
push eax
push ecx
push 0x100f1238
lea ecx, [ebp - 0x5c]
call fcn.100d3f40
test eax, eax
jne 0x100d1e10
cmp dword [ebp - 0x5c], eax
jne 0x100d1dfb
mov edx, dword [ebp - 0x54]
push 1
push edx
lea ecx, [ebp - 0x5c]
call fcn.100c7250
test al, al
jne 0x100d1dfb
push 0x8007000e
call fcn.10001150
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
push eax
push ecx
push 0x100f1238
lea ecx, [ebp - 0x5c]
call fcn.100c8530
movss xmm0, dword [ebp + 0xc]
lea edx, [ebp - 0x1c]
push edx
movss dword [eax + 4], xmm0
lea eax, [ebp + 0xc]
push eax
lea ecx, [ebp - 0x18]
push ecx
push str.right
lea ecx, [ebp - 0x5c]
call fcn.100d3f40
test eax, eax
jne 0x100d1e6d
cmp dword [ebp - 0x5c], eax
jne 0x100d1e58
mov edx, dword [ebp - 0x54]
push 1
push edx
lea ecx, [ebp - 0x5c]
call fcn.100c7250
test al, al
jne 0x100d1e58
push 0x8007000e
call fcn.10001150
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x18]
push eax
push ecx
push str.right
lea ecx, [ebp - 0x5c]
call fcn.100c8530
movss xmm0, dword [ebp - 0x10]
lea edx, [ebp - 0x1c]
push edx
movss dword [eax + 4], xmm0
lea eax, [ebp + 0xc]
push eax
lea ecx, [ebp - 0x18]
push ecx
push str.bottom
lea ecx, [ebp - 0x5c]
call fcn.100d3f40
test eax, eax
jne 0x100d1eca
cmp dword [ebp - 0x5c], eax
jne 0x100d1eb5
mov edx, dword [ebp - 0x54]
push 1
push edx
lea ecx, [ebp - 0x5c]
call fcn.100c7250
test al, al
jne 0x100d1eb5
push 0x8007000e
call fcn.10001150
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x18]
push eax
push ecx
push str.bottom
lea ecx, [ebp - 0x5c]
call fcn.100c8530
xorps xmm0, xmm0
lea edx, [ebp - 0x1c]
push edx
movss dword [eax + 4], xmm0
lea eax, [ebp + 0xc]
push eax
lea ecx, [ebp - 0x18]
push ecx
push str.left
lea ecx, [ebp - 0x5c]
call fcn.100d3f40
test eax, eax
jne 0x100d1f25
cmp dword [ebp - 0x5c], eax
jne 0x100d1f10
mov edx, dword [ebp - 0x54]
push 1
push edx
lea ecx, [ebp - 0x5c]
call fcn.100c7250
test al, al
jne 0x100d1f10
push 0x8007000e
call fcn.10001150
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x18]
push eax
push ecx
push str.left
lea ecx, [ebp - 0x5c]
call fcn.100c8530
xorps xmm0, xmm0
lea edx, [ebp - 0x8c]
push edx
movss dword [eax + 4], xmm0
lea eax, [esi + 0x14]
push eax
push 0x100f0848
push str.margin
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100cf2f0
lea ecx, [ebp - 0x8c]
push ecx
lea edx, [esi + 0x18]
push edx
push 0x100f0a80
push str.margin
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100cf2f0
lea eax, [ebp - 0x5c]
push eax
lea ecx, [esi + 0x1c]
push ecx
push 0x100f0910
push str.margin
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100cf2f0
lea edx, [ebp - 0x5c]
push edx
lea eax, [esi + 0x20]
push eax
push 0x100f0988
push str.margin
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100cf2f0
push 0x1013ea48
lea ecx, [esi + 0x28]
push ecx
push 0x1010415c
push str.align
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100cf2f0
push 0x1013ea78
lea edx, [esi + 0x24]
push edx
push 0x10104158
push str.align
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100cf2f0
push 0
push 0x10104154
push 0x100f0a88
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d3e50
test al, al
je 0x100d206a
push 0x10104154
push 0x100f0a88
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0x2c]
mov byte [esi + 0x34], 0
push 0
push str.yxvh
push 0x100f0a88
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d3e50
test al, al
je 0x100d20b5
push str.yxvh
push 0x100f0a88
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0x30]
mov byte [esi + 0x35], 0
push 0
lea eax, [esi + 0x38]
push eax
push 0x10104154
push str.offset
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100cf2f0
push 0
lea ecx, [esi + 0x3c]
push ecx
push str.yxvh
push str.offset
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100cf2f0
push 0x10104154
push 0x10104134
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0x40]
push str.yxvh
push 0x10104134
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0x44]
push 0x10104130
push 0x10104134
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0x48]
push 0
push 0x10104154
push 0x100f0a98
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d3e50
test al, al
je 0x100d21b0
push 0x10104154
push 0x100f0a98
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0x4c]
mov byte [esi + 0x54], 0
push 0
push str.yxvh
push 0x100f0a98
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d3e50
test al, al
je 0x100d21fb
push str.yxvh
push 0x100f0a98
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0x50]
mov byte [esi + 0x55], 0
push 0x10104124
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d46e0
push eax
lea ecx, [esi + 0x58]
call fcn.100d0140
mov ebx, dword [ebp + 8]
push str.font
mov ecx, ebx
call fcn.100d60b0
mov edi, eax
push str.face
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d46e0
test eax, eax
jne 0x100d2243
xor edx, edx
jmp 0x100d2260
mov edx, eax
lea ecx, [edx + 2]
mov dword [ebp + 8], ecx
jmp 0x100d2250
mov cx, word [edx]
add edx, 2
test cx, cx
jne 0x100d2250
sub edx, dword [ebp + 8]
sar edx, 1
push edx
push eax
lea ecx, [esi + 0x68]
call fcn.10001cd0
push str.size
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0x6c]
push 0x1013eaa8
lea edx, [esi + 0x70]
push edx
push str.weight
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100cf2f0
push 0x100f0b7c
push str.color
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0x74]
push 0x100f0a80
push str.color
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0x78]
push 0x10104120
push str.color
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0x7c]
push 0x100f0910
push str.color
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0x80]
push str.underline
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d6a10
push str.strikethrough
mov ecx, edi
mov byte [esi + 0x84], al
call fcn.100d60b0
mov ecx, eax
call fcn.100d6a10
push str.italic
mov ecx, edi
mov byte [esi + 0x85], al
call fcn.100d60b0
mov ecx, eax
call fcn.100d6a10
push str.spacing
mov ecx, edi
mov byte [esi + 0x86], al
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0x88]
push 0x101040ec
push str.scale
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0x8c]
push 0x101040e4
push str.scale
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0x90]
push str.kerning
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d6a10
push str.background
mov ecx, ebx
mov byte [esi + 0x94], al
call fcn.100d60b0
mov edi, eax
push 0x100f0b7c
push str.color
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0x98]
push 0x100f0a80
push str.color
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0x9c]
push 0x10104120
push str.color
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0xa0]
push 0x100f0910
push str.color
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0xa4]
push str.size
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0xa8]
push str.type
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d46e0
test eax, eax
jne 0x100d24c4
xor ecx, ecx
jmp 0x100d24e0
mov ecx, eax
lea edx, [ecx + 2]
mov dword [ebp + 8], edx
lea esp, [esp]
mov dx, word [ecx]
add ecx, 2
test dx, dx
jne 0x100d24d0
sub ecx, dword [ebp + 8]
sar ecx, 1
push ecx
push eax
lea ecx, [esi + 0xb0]
call fcn.10001cd0
push str.blur
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0xac]
push str.shadow
mov ecx, ebx
call fcn.100d60b0
mov edi, eax
push 0x100f0b7c
push str.color
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0xb4]
push 0x100f0a80
push str.color
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0xb8]
push 0x10104120
push str.color
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0xbc]
push 0x100f0910
push str.color
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0xc0]
push str.depth
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0xc4]
push 0x10104134
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0xc8]
push str.blur
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0xcc]
push str.fill
mov ecx, ebx
call fcn.100d60b0
mov edi, eax
push 0x100f0b7c
push str.color
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0xd4]
push 0x100f0a80
push str.color
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0xd8]
push 0x10104120
push str.color
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0xdc]
push 0x100f0910
push str.color
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0xe0]
push str.width
mov ecx, edi
call fcn.100d60b0
mov ecx, eax
call fcn.100d5d20
fstp dword [esi + 0xe4]
push 0x100c8350
push 2
push 0x30
lea eax, [ebp - 0x8c]
push eax
mov dword [ebp - 4], 0xffffffff
call fcn.100a84c0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8