Function at 0x185f31d0
Capabilities:
Check for peb ntglobalflag flag
Contain obfuscated stackstrings
Get process heap flags
Get process heap force flags

Disassembly:
push ebp
lea ebp, [esp - 0x70]
sub esp, 0x70
push 0xffffffffffffffff
push 0x186bc0cd
mov eax, dword fs:[0]
push eax
sub esp, 0x20
mov eax, dword [0x1870626c]
xor eax, ebp
mov dword [ebp + 0x6c], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov eax, dword [0x1886cd98]
mov edx, dword [ebp + 0x78]
mov esi, dword [ebp + 0x7c]
mov dword [ebp - 0x24], esi
movd xmm1, dword [eax + 8]
cvtdq2pd xmm1, xmm1
movaps xmm0, xmm1
movsd qword [ebp + 0x10], xmm1
divsd xmm0, qword [ebx + 0xc8]
cvttsd2si eax, xmm0
movaps xmm0, xmm1
divsd xmm0, qword [ebx + 0xd0]
mov dword [ebp + 0x3c], eax
cvttsd2si eax, xmm0
mov dword [ebp + 0x40], eax
lea eax, [ebp + 0x44]
push eax
push edx
call dword [sym.imp.USER32.dll_GetClientRect]
push dword [esi]
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov ecx, dword [ebp + 0x50]
mov edi, eax
sub ecx, dword [ebp + 0x48]
push ecx
mov ecx, dword [ebp + 0x4c]
sub ecx, dword [ebp + 0x44]
push ecx
push dword [esi]
mov dword [ebp - 0x20], edi
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
push eax
push edi
mov dword [ebp - 0x2c], eax
call dword [sym.imp.GDI32.dll_SelectObject]
push 5
mov dword [ebp - 0x28], eax
call dword [sym.imp.USER32.dll_GetSysColor]
push eax
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
mov esi, eax
lea eax, [ebp + 0x44]
push esi
push eax
push edi
call dword [sym.imp.USER32.dll_FillRect]
push esi
call dword [sym.imp.GDI32.dll_DeleteObject]
and dword [ebp], 0
lea eax, [ebp]
push eax
push edi
call sub.gdiplus.dll_GdipCreateFromHDC
mov dword [ebp + 0x2c], eax
mov eax, dword [ebp]
mov dword [ebp + 0x28], eax
and dword [ebp - 4], 0
lea edi, [ebx + 0x140]
mov eax, dword [edi + 4]
mov ecx, dword [edi]
sub eax, ecx
sar eax, 4
mov dword [ebp + 4], edi
test eax, eax
je 0x185f32da
mov dword [ebx + 0x144], ecx
movsd xmm0, qword [ebp + 0x10]
divsd xmm0, qword [ebx + 0xe0]
and dword [ebp + 0x20], 0
and dword [ebp + 0x24], 0
cvttsd2si eax, xmm0
movd xmm0, dword [ebp + 0x3c]
cvtdq2ps xmm0, xmm0
movd xmm1, eax
lea eax, [ebp + 0x18]
push eax
push 4
push 0xf
sub esp, 0x18
movss dword [ebp + 0x18], xmm0
cvtdq2ps xmm1, xmm1
mov esi, esp
push ecx
mov ecx, esp
push 0x18864a20
movss dword [ebp + 0x1c], xmm1
call fcn.185b0640
push esi
call fcn.186caae0
pop ecx
pop ecx
lea eax, [ebp - 0x1c]
push eax
call fcn.186ca780
add esp, 0x28
lea eax, [ebp - 0x1c]
mov ecx, edi
push eax
call fcn.185d4841
movsd xmm0, qword [ebp + 0x10]
lea esi, [ebp + 0x30]
divsd xmm0, qword [ebx + 0xe0]
lea edi, [ebp + 0x18]
and dword [ebp + 0x38], 0
and dword [ebp + 0x3c], 0
movd xmm2, dword [ebp + 0x40]
cvttsd2si eax, xmm0
movss xmm0, dword [ebp - 0x14]
addss xmm0, dword [ebp - 0x1c]
cvtdq2ps xmm2, xmm2
movd xmm1, eax
lea eax, [ebp + 0x18]
cvtdq2ps xmm1, xmm1
push eax
push 4
push 0xf
sub esp, 0x18
addss xmm0, xmm2
movss dword [ebp + 0x34], xmm1
movss dword [ebp + 0x30], xmm0
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, esp
push ecx
mov ecx, esp
push 0x18864a58
call fcn.185b0640
push esi
call fcn.186caae0
pop ecx
pop ecx
lea eax, [ebp + 0x30]
push eax
call fcn.186ca780
mov esi, eax
lea edi, [ebp - 0x1c]
add esp, 0x28
lea eax, [ebp - 0x1c]
lea ecx, [ebx + 0x140]
movsd dword es:[edi], dword [esi]
push eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.185d4841
movsd xmm0, qword [ebp + 0x10]
lea esi, [ebp + 0x30]
divsd xmm0, qword [ebx + 0xe0]
lea edi, [ebp + 0x18]
and dword [ebp + 0x38], 0
and dword [ebp + 0x3c], 0
movd xmm2, dword [ebp + 0x40]
cvttsd2si eax, xmm0
movss xmm0, dword [ebp - 0x14]
addss xmm0, dword [ebp - 0x1c]
cvtdq2ps xmm2, xmm2
movd xmm1, eax
lea eax, [ebp + 0x18]
cvtdq2ps xmm1, xmm1
push eax
push 4
push 0xf
sub esp, 0x18
addss xmm0, xmm2
movss dword [ebp + 0x34], xmm1
movss dword [ebp + 0x30], xmm0
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, esp
push ecx
mov ecx, esp
push 0x18864a90
call fcn.185b0640
push esi
call fcn.186caae0
pop ecx
pop ecx
lea eax, [ebp + 0x30]
push eax
call fcn.186ca780
mov esi, eax
lea edi, [ebp - 0x1c]
add esp, 0x28
lea eax, [ebp - 0x1c]
lea ecx, [ebx + 0x140]
movsd dword es:[edi], dword [esi]
push eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.185d4841
mov ecx, dword [0x1886cd98]
lea eax, [ecx + 0x6c]
push eax
push dword [ecx + 0x8c]
lea ecx, [ebp + 0x28]
call fcn.185cbd50
mov ecx, dword [0x1886cd98]
lea eax, [ecx + 0x102c]
push eax
push dword [ecx + 0x104c]
lea ecx, [ebp + 0x28]
call fcn.185cbd50
cmp dword [ebx + 0x38], 1
mov ecx, dword [0x1886cd98]
jne 0x185f34b3
lea eax, [ecx + 0x14ac]
push eax
push dword [ecx + 0x14cc]
jmp 0x185f34c0
lea eax, [ecx + 0x12d8]
push eax
push dword [ecx + 0x12f8]
lea ecx, [ebp + 0x28]
call fcn.185cbd50
movsd xmm4, qword [ebp + 0x10]
lea esi, [ebp + 0x30]
movaps xmm0, xmm4
lea edi, [ebp + 0x18]
divsd xmm0, qword [ebx + 0xa8]
push 0x18861d8c
lea ecx, [ebp + 0x40]
cvttsd2si eax, xmm0
movaps xmm0, xmm4
divsd xmm0, qword [ebx + 0x98]
movd xmm3, eax
cvttsd2si eax, xmm0
movaps xmm0, xmm4
divsd xmm0, qword [ebx + 0x90]
movd xmm2, eax
cvttsd2si eax, xmm0
movaps xmm0, xmm4
divsd xmm0, qword [ebx + 0x88]
movd xmm1, eax
cvttsd2si eax, xmm0
cvtdq2ps xmm3, xmm3
movd xmm0, eax
cvtdq2ps xmm2, xmm2
cvtdq2ps xmm1, xmm1
cvtdq2ps xmm0, xmm0
movss dword [ebp + 0x34], xmm1
movss dword [ebp + 0x30], xmm0
movss dword [ebp + 0x38], xmm2
movss dword [ebp + 0x3c], xmm3
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.185b0640
lea eax, [ebp + 0x40]
mov byte [ebp - 4], 1
push eax
lea eax, [ebp + 0x38]
mov ecx, 0x1886cd80
push eax
call fcn.185c9d20
mov eax, dword [ebp + 0x38]
lea ecx, [ebp + 0x18]
push ecx
push dword [eax + 0x14]
lea eax, [ebx + 0x16c]
push 0
push 0
push ecx
mov dword [esp], 0x41900000
push eax
lea eax, [ebp + 0x28]
push eax
call fcn.186ca230
mov ecx, dword [ebp + 0x40]
add esp, 0x1c
mov byte [ebp - 4], 0
lea ecx, [ecx - 0x10]
call fcn.185ae8d0
mov eax, dword [ebx + 0x12c]
xor edi, edi
mov ecx, dword [ebx + 0x128]
sub eax, ecx
push 0x14
pop esi
cdq
idiv esi
mov dword [ebp + 0x3c], esi
test eax, eax
je 0x185f3600
xor esi, esi
lea eax, [ecx + 4]
add eax, esi
cmp byte [esi + ecx], 0
push eax
mov eax, dword [0x1886cd98]
lea ecx, [ebp + 0x28]
je 0x185f35d9
push dword [eax + 0xb0]
jmp 0x185f35df
push dword [eax + 0xd4]
call fcn.185cbd50
mov ecx, dword [ebx + 0x128]
inc edi
push 0x14
pop eax
add esi, eax
mov eax, dword [ebx + 0x12c]
sub eax, ecx
cdq
idiv dword [ebp + 0x3c]
cmp edi, eax
jb 0x185f35bd
movsd xmm0, qword [ebp + 0x10]
lea esi, [ebp + 0x30]
divsd xmm0, qword [ebx + 0xa8]
lea edi, [ebp + 0x18]
push 0x18861dc8
cvttsd2si eax, xmm0
movsd xmm0, qword [ebp + 0x10]
divsd xmm0, qword [ebx + 0x98]
movd xmm3, eax
cvttsd2si eax, xmm0
cvtdq2ps xmm3, xmm3
movd xmm2, eax
mov eax, dword [ecx + 8]
dec eax
movss dword [ebp + 0x3c], xmm3
cvtdq2ps xmm2, xmm2
movd xmm1, eax
mov eax, dword [ecx + 4]
lea ecx, [ebp + 0x40]
add eax, 0x1e
movss dword [ebp + 0x38], xmm2
cvtdq2ps xmm1, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp + 0x34], xmm1
movss dword [ebp + 0x30], xmm0
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.185b0640
lea eax, [ebp + 0x18]
mov byte [ebp - 4], 2
push eax
lea eax, [ebp + 0x40]
mov ecx, 0x1886cd80
push eax
lea eax, [ebp + 0x38]
push eax
call fcn.185c9d20
mov eax, dword [ebp + 0x38]
push dword [eax + 0x14]
push 0
push 0
push ecx
push ecx
mov dword [esp + 4], 0x41700000
mov ecx, esp
push 0x18864ac8
call fcn.185b0640
lea eax, [ebp + 0x54]
push eax
call fcn.186caae0
pop ecx
pop ecx
push eax
lea eax, [ebp + 0x28]
mov byte [ebp - 4], 3
push eax
call fcn.186ca230
add esp, 0x1c
lea ecx, [ebp + 0x54]
call fcn.185ac1f0
mov ecx, dword [ebp + 0x40]
mov byte [ebp - 4], 0
lea ecx, [ecx - 0x10]
call fcn.185ae8d0
movsd xmm0, qword [ebp + 0x10]
divsd xmm0, qword [ebx + 0xa8]
mov ecx, dword [ebx + 0x128]
cvttsd2si eax, xmm0
movsd xmm0, qword [ebp + 0x10]
divsd xmm0, qword [ebx + 0x98]
movd xmm3, eax
cvttsd2si eax, xmm0
cvtdq2ps xmm3, xmm3
movd xmm2, eax
mov eax, dword [ecx + 0x1c]
cvtdq2ps xmm2, xmm2
dec eax
movss dword [ebp + 0x38], xmm2
movss dword [ebp + 0x3c], xmm3
lea esi, [ebp + 0x30]
lea edi, [ebp + 0x18]
push 0x18861dc8
movd xmm1, eax
mov eax, dword [ecx + 0x18]
lea ecx, [ebp + 0x40]
add eax, 0x1e
cvtdq2ps xmm1, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp + 0x34], xmm1
movss dword [ebp + 0x30], xmm0
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.185b0640
lea eax, [ebp + 0x18]
mov byte [ebp - 4], 4
push eax
lea eax, [ebp + 0x40]
mov ecx, 0x1886cd80
push eax
lea eax, [ebp + 0x38]
push eax
call fcn.185c9d20
mov eax, dword [ebp + 0x38]
push dword [eax + 0x14]
push 0
push 0
push ecx
push ecx
mov dword [esp + 4], 0x41700000
mov ecx, esp
push 0x18864b00
call fcn.185b0640
lea eax, [ebp + 0x54]
push eax
call fcn.186caae0
pop ecx
pop ecx
push eax
lea eax, [ebp + 0x28]
mov byte [ebp - 4], 5
push eax
call fcn.186ca230
add esp, 0x1c
lea ecx, [ebp + 0x54]
call fcn.185ac1f0
mov ecx, dword [ebp + 0x40]
mov byte [ebp - 4], 0
lea ecx, [ecx - 0x10]
call fcn.185ae8d0
movsd xmm0, qword [ebp + 0x10]
divsd xmm0, qword [ebx + 0xa8]
mov ecx, dword [ebx + 0x128]
cvttsd2si eax, xmm0
movsd xmm0, qword [ebp + 0x10]
divsd xmm0, qword [ebx + 0x98]
movd xmm3, eax
cvttsd2si eax, xmm0
cvtdq2ps xmm3, xmm3
movd xmm2, eax
mov eax, dword [ecx + 0x30]
dec eax
movss dword [ebp + 0x3c], xmm3
cvtdq2ps xmm2, xmm2
movd xmm1, eax
mov eax, dword [ecx + 0x2c]
add eax, 0x1e
movss dword [ebp + 0x38], xmm2
cvtdq2ps xmm1, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp + 0x34], xmm1
movss dword [ebp + 0x30], xmm0
lea esi, [ebp + 0x30]
lea edi, [ebp + 0x18]
movsd dword es:[edi], dword [esi]
lea ecx, [ebp + 0x40]
push 0x18861dc8
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.185b0640
lea eax, [ebp + 0x18]
mov byte [ebp - 4], 6
push eax
lea eax, [ebp + 0x40]
mov ecx, 0x1886cd80
push eax
lea eax, [ebp + 0x38]
push eax
call fcn.185c9d20
mov eax, dword [ebp + 0x38]
push dword [eax + 0x14]
push 0
push 0
push ecx
push ecx
mov dword [esp + 4], 0x41700000
mov ecx, esp
push 0x18864b38
call fcn.185b0640
lea eax, [ebp + 0x54]
push eax
call fcn.186caae0
pop ecx
pop ecx
push eax
lea eax, [ebp + 0x28]
mov byte [ebp - 4], 7
push eax
call fcn.186ca230
add esp, 0x1c
lea ecx, [ebp + 0x54]
call fcn.185ac1f0
mov ecx, dword [ebp + 0x40]
mov byte [ebp - 4], 0
lea ecx, [ecx - 0x10]
call fcn.185ae8d0
movsd xmm0, qword [ebp + 0x10]
lea esi, [ebp + 0x30]
divsd xmm0, qword [ebx + 0xa8]
mov ecx, dword [ebx + 0x128]
lea edi, [ebp + 0x18]
push 0x18861dc8
cvttsd2si eax, xmm0
movsd xmm0, qword [ebp + 0x10]
divsd xmm0, qword [ebx + 0x98]
movd xmm3, eax
cvttsd2si eax, xmm0
cvtdq2ps xmm3, xmm3
movd xmm2, eax
mov eax, dword [ecx + 0x44]
dec eax
movss dword [ebp + 0x3c], xmm3
cvtdq2ps xmm2, xmm2
movd xmm1, eax
mov eax, dword [ecx + 0x40]
lea ecx, [ebp + 0x40]
add eax, 0x1e
movss dword [ebp + 0x38], xmm2
cvtdq2ps xmm1, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp + 0x34], xmm1
movss dword [ebp + 0x30], xmm0
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.185b0640
mov byte [ebp - 4], 8
lea eax, [ebp + 0x18]
mov ecx, 0x1886cd80
push eax
lea eax, [ebp + 0x40]
push eax
lea eax, [ebp + 0x38]
push eax
call fcn.185c9d20
mov eax, dword [ebp + 0x38]
push dword [eax + 0x14]
push 0
push 0
push ecx
push ecx
mov dword [esp + 4], 0x41700000
mov ecx, esp
push 0x18864b70
call fcn.185b0640
lea eax, [ebp + 0x54]
push eax
call fcn.186caae0
pop ecx
pop ecx
push eax
lea eax, [ebp + 0x28]
mov byte [ebp - 4], 9
push eax
call fcn.186ca230
add esp, 0x1c
lea ecx, [ebp + 0x54]
call fcn.185ac1f0
mov ecx, dword [ebp + 0x40]
mov byte [ebp - 4], 0
lea ecx, [ecx - 0x10]
call fcn.185ae8d0
movsd xmm0, qword [ebp + 0x10]
lea esi, [ebp + 0x30]
divsd xmm0, qword [ebx + 0xa8]
lea edi, [ebp + 0x18]
push 0x18861dc8
lea ecx, [ebp + 0x40]
cvttsd2si eax, xmm0
movsd xmm0, qword [ebp + 0x10]
divsd xmm0, qword [ebx + 0x98]
movd xmm3, eax
cvttsd2si eax, xmm0
cvtdq2ps xmm3, xmm3
movd xmm2, eax
mov eax, dword [ebx + 0x128]
cvtdq2ps xmm2, xmm2
mov eax, dword [eax + 0x58]
dec eax
movss dword [ebp + 0x3c], xmm3
movss dword [ebp + 0x38], xmm2
movd xmm1, eax
mov eax, dword [ebx + 0x128]
cvtdq2ps xmm1, xmm1
mov eax, dword [eax + 0x54]
add eax, 0x1e
movss dword [ebp + 0x34], xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp + 0x30], xmm0
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.185b0640
lea eax, [ebp + 0x18]
mov byte [ebp - 4], 0xa
push eax
lea eax, [ebp + 0x40]
mov ecx, 0x1886cd80
push eax
lea eax, [ebp + 0x38]
push eax
call fcn.185c9d20
mov eax, dword [ebp + 0x38]
push dword [eax + 0x14]
push 0
push 0
push ecx
push ecx
mov dword [esp + 4], 0x41700000
mov ecx, esp
push 0x18864ba8
call fcn.185b0640
lea eax, [ebp + 0x54]
push eax
call fcn.186caae0
pop ecx
pop ecx
push eax
lea eax, [ebp + 0x28]
mov byte [ebp - 4], 0xb
push eax
call fcn.186ca230
add esp, 0x1c
lea ecx, [ebp + 0x54]
call fcn.185ac1f0
mov ecx, dword [ebp + 0x40]
mov byte [ebp - 4], 0
lea ecx, [ecx - 0x10]
call fcn.185ae8d0
movsd xmm0, qword [ebp + 0x10]
lea esi, [ebp + 0x30]
divsd xmm0, qword [ebx + 0xa8]
lea edi, [ebp + 0x18]
push 0x18861dc8
lea ecx, [ebp + 0x40]
cvttsd2si eax, xmm0
movsd xmm0, qword [ebp + 0x10]
divsd xmm0, qword [ebx + 0x98]
movd xmm3, eax
cvttsd2si eax, xmm0
cvtdq2ps xmm3, xmm3
movd xmm2, eax
mov eax, dword [ebx + 0x128]
cvtdq2ps xmm2, xmm2
mov eax, dword [eax + 0x6c]
dec eax
movss dword [ebp + 0x3c], xmm3
movss dword [ebp + 0x38], xmm2
movd xmm1, eax
mov eax, dword [ebx + 0x128]
cvtdq2ps xmm1, xmm1
mov eax, dword [eax + 0x68]
add eax, 0x1e
movss dword [ebp + 0x34], xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp + 0x30], xmm0
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.185b0640
lea eax, [ebp + 0x18]
mov byte [ebp - 4], 0xc
push eax
lea eax, [ebp + 0x40]
mov ecx, 0x1886cd80
push eax
lea eax, [ebp + 0x38]
push eax
call fcn.185c9d20
mov eax, dword [ebp + 0x38]
push dword [eax + 0x14]
push 0
push 0
push ecx
push ecx
mov dword [esp + 4], 0x41700000
mov ecx, esp
push 0x18864be0
call fcn.185b0640
lea eax, [ebp + 0x54]
push eax
call fcn.186caae0
pop ecx
pop ecx
push eax
lea eax, [ebp + 0x28]
mov byte [ebp - 4], 0xd
push eax
call fcn.186ca230
add esp, 0x1c
lea ecx, [ebp + 0x54]
call fcn.185ac1f0
mov ecx, dword [ebp + 0x40]
mov byte [ebp - 4], 0
lea ecx, [ecx - 0x10]
call fcn.185ae8d0
movsd xmm0, qword [ebp + 0x10]
lea esi, [ebp + 0x30]
divsd xmm0, qword [ebx + 0xa8]
lea edi, [ebp + 0x18]
push 0x18861dc8
lea ecx, [ebp + 0x40]
cvttsd2si eax, xmm0
movsd xmm0, qword [ebp + 0x10]
divsd xmm0, qword [ebx + 0x98]
movd xmm3, eax
cvttsd2si eax, xmm0
cvtdq2ps xmm3, xmm3
movd xmm2, eax
mov eax, dword [ebx + 0x128]
cvtdq2ps xmm2, xmm2
mov eax, dword [eax + 0x80]
dec eax
movss dword [ebp + 0x3c], xmm3
movss dword [ebp + 0x38], xmm2
movd xmm1, eax
mov eax, dword [ebx + 0x128]
cvtdq2ps xmm1, xmm1
mov eax, dword [eax + 0x7c]
add eax, 0x1e
movss dword [ebp + 0x34], xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp + 0x30], xmm0
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.185b0640
lea eax, [ebp + 0x18]
mov byte [ebp - 4], 0xe
push eax
lea eax, [ebp + 0x40]
mov ecx, 0x1886cd80
push eax
lea eax, [ebp + 0x38]
push eax
call fcn.185c9d20
mov eax, dword [ebp + 0x38]
push dword [eax + 0x14]
push 0
push 0
push ecx
push ecx
mov dword [esp + 4], 0x41700000
mov ecx, esp
push str.TXT_POP_UP_CUSTOMIZE_REG_8
call fcn.185b0640
lea eax, [ebp + 0x54]
push eax
call fcn.186caae0
pop ecx
pop ecx
push eax
lea eax, [ebp + 0x28]
mov byte [ebp - 4], 0xf
push eax
call fcn.186ca230
add esp, 0x1c
lea ecx, [ebp + 0x54]
call fcn.185ac1f0
mov ecx, dword [ebp + 0x40]
mov byte [ebp - 4], 0
lea ecx, [ecx - 0x10]
call fcn.185ae8d0
movsd xmm0, qword [ebp + 0x10]
lea esi, [ebp + 0x30]
divsd xmm0, qword [ebx + 0xa8]
lea edi, [ebp + 0x18]
push 0x18861dc8
lea ecx, [ebp + 0x40]
cvttsd2si eax, xmm0
movsd xmm0, qword [ebp + 0x10]
divsd xmm0, qword [ebx + 0x98]
movd xmm3, eax
cvttsd2si eax, xmm0
cvtdq2ps xmm3, xmm3
movd xmm2, eax
mov eax, dword [ebx + 0x128]
cvtdq2ps xmm2, xmm2
mov eax, dword [eax + 0x94]
dec eax
movss dword [ebp + 0x3c], xmm3
movss dword [ebp + 0x38], xmm2
movd xmm1, eax
mov eax, dword [ebx + 0x128]
cvtdq2ps xmm1, xmm1
mov eax, dword [eax + 0x90]
add eax, 0x1e
movss dword [ebp + 0x34], xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp + 0x30], xmm0
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.185b0640
lea eax, [ebp + 0x18]
mov byte [ebp - 4], 0x10
push eax
lea eax, [ebp + 0x40]
mov ecx, 0x1886cd80
push eax
lea eax, [ebp + 0x38]
push eax
call fcn.185c9d20
mov eax, dword [ebp + 0x38]
push dword [eax + 0x14]
push 0
push 0
push ecx
push ecx
mov dword [esp + 4], 0x41700000
mov ecx, esp
push 0x18864c50
call fcn.185b0640
lea eax, [ebp + 0x54]
push eax
call fcn.186caae0
pop ecx
pop ecx
push eax
lea eax, [ebp + 0x28]
mov byte [ebp - 4], 0x11
push eax
call fcn.186ca230
add esp, 0x1c
lea ecx, [ebp + 0x54]
call fcn.185ac1f0
mov ecx, dword [ebp + 0x40]
mov byte [ebp - 4], 0
lea ecx, [ecx - 0x10]
call fcn.185ae8d0
movsd xmm0, qword [ebp + 0x10]
divsd xmm0, qword [ebx + 0xa8]
cvttsd2si eax, xmm0
movd xmm3, eax
movsd xmm0, qword [ebp + 0x10]
lea esi, [ebp + 0x30]
divsd xmm0, qword [ebx + 0x98]
lea edi, [ebp + 0x18]
push 0x18861dc8
lea ecx, [ebp + 0x40]
cvtdq2ps xmm3, xmm3
cvttsd2si eax, xmm0
movss dword [ebp + 0x3c], xmm3
movd xmm2, eax
mov eax, dword [ebx + 0x128]
cvtdq2ps xmm2, xmm2
mov eax, dword [eax + 0xa8]
dec eax
movss dword [ebp + 0x38], xmm2
movd xmm1, eax
mov eax, dword [ebx + 0x128]
cvtdq2ps xmm1, xmm1
mov eax, dword [eax + 0xa4]
add eax, 0x1e
movss dword [ebp + 0x34], xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp + 0x30], xmm0
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.185b0640
lea eax, [ebp + 0x18]
mov byte [ebp - 4], 0x12
push eax
lea eax, [ebp + 0x40]
mov ecx, 0x1886cd80
push eax
lea eax, [ebp + 0x38]
push eax
call fcn.185c9d20
mov eax, dword [ebp + 0x38]
push dword [eax + 0x14]
push 0
push 0
push ecx
push ecx
mov dword [esp + 4], 0x41700000
mov ecx, esp
push 0x18864c88
call fcn.185b0640
lea eax, [ebp + 0x54]
push eax
call fcn.186caae0
pop ecx
pop ecx
push eax
lea eax, [ebp + 0x28]
mov byte [ebp - 4], 0x13
push eax
call fcn.186ca230
add esp, 0x1c
lea ecx, [ebp + 0x54]
call fcn.185ac1f0
mov ecx, dword [ebp + 0x40]
mov byte [ebp - 4], 0
lea ecx, [ecx - 0x10]
call fcn.185ae8d0
movsd xmm0, qword [ebp + 0x10]
divsd xmm0, qword [ebx + 0xa8]
cvttsd2si eax, xmm0
movsd xmm0, qword [ebp + 0x10]
divsd xmm0, qword [ebx + 0x98]
movd xmm3, eax
cvttsd2si eax, xmm0
cvtdq2ps xmm3, xmm3
movd xmm2, eax
mov eax, dword [ebx + 0x128]
cvtdq2ps xmm2, xmm2
mov eax, dword [eax + 0xbc]
dec eax
movd xmm1, eax
mov eax, dword [ebx + 0x128]
lea esi, [ebp + 0x30]
cvtdq2ps xmm1, xmm1
lea edi, [ebp + 0x18]
lea ecx, [ebp + 0x40]
mov eax, dword [eax + 0xb8]
add eax, 0x1e
movss dword [ebp + 0x38], xmm2
movss dword [ebp + 0x34], xmm1
movss dword [ebp + 0x3c], xmm3
movd xmm0, eax
cvtdq2ps xmm0, xmm0
push 0x18861dc8
movss dword [ebp + 0x30], xmm0
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.185b0640
push 0x14
pop eax
mov byte [ebp - 4], al
mov ecx, 0x1886cd80
lea eax, [ebp + 0x18]
push eax
lea eax, [ebp + 0x40]
push eax
lea eax, [ebp + 0x38]
push eax
call fcn.185c9d20
mov eax, dword [ebp + 0x38]
push dword [eax + 0x14]
push 0
push 0
push ecx
push ecx
mov dword [esp + 4], 0x41700000
mov ecx, esp
push 0x18864cc0
call fcn.185b0640
lea eax, [ebp + 0x54]
push eax
call fcn.186caae0
pop ecx
pop ecx
push eax
lea eax, [ebp + 0x28]
mov byte [ebp - 4], 0x15
push eax
call fcn.186ca230
add esp, 0x1c
lea ecx, [ebp + 0x54]
call fcn.185ac1f0
mov ecx, dword [ebp + 0x40]
mov byte [ebp - 4], 0
lea ecx, [ecx - 0x10]
call fcn.185ae8d0
movsd xmm0, qword [ebp + 0x10]
divsd xmm0, qword [ebx + 0xa8]
cvttsd2si eax, xmm0
movsd xmm0, qword [ebp + 0x10]
divsd xmm0, qword [ebx + 0x98]
movd xmm3, eax
cvttsd2si eax, xmm0
cvtdq2ps xmm3, xmm3
movd xmm2, eax
mov eax, dword [ebx + 0x128]
cvtdq2ps xmm2, xmm2
mov eax, dword [eax + 0xd0]
dec eax
movd xmm1, eax
mov eax, dword [ebx + 0x128]
cvtdq2ps xmm1, xmm1
mov eax, dword [eax + 0xcc]
add eax, 0x1e
movss dword [ebp + 0x34], xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp + 0x30], xmm0
movss dword [ebp + 0x38], xmm2
lea esi, [ebp + 0x30]
movss dword [ebp + 0x3c], xmm3
lea edi, [ebp + 0x18]
movsd dword es:[edi], dword [esi]
lea ecx, [ebp + 0x40]
push 0x18861dc8
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.185b0640
lea eax, [ebp + 0x18]
mov byte [ebp - 4], 0x16
push eax
lea eax, [ebp + 0x40]
mov ecx, 0x1886cd80
push eax
lea eax, [ebp + 0x38]
push eax
call fcn.185c9d20
mov eax, dword [ebp + 0x38]
push dword [eax + 0x14]
push 0
push 0
push ecx
push ecx
mov dword [esp + 4], 0x41700000
mov ecx, esp
push 0x18864cf8
call fcn.185b0640
lea eax, [ebp + 0x54]
push eax
call fcn.186caae0
pop ecx
pop ecx
push eax
lea eax, [ebp + 0x28]
mov byte [ebp - 4], 0x17
push eax
call fcn.186ca230
add esp, 0x1c
lea ecx, [ebp + 0x54]
call fcn.185ac1f0
mov ecx, dword [ebp + 0x40]
mov byte [ebp - 4], 0
lea ecx, [ecx - 0x10]
call fcn.185ae8d0
movsd xmm0, qword [ebp + 0x10]
lea esi, [ebp + 0x30]
divsd xmm0, qword [ebx + 0xa8]
lea edi, [ebp + 0x18]
push 0x18861dc8
lea ecx, [ebp + 0x40]
cvttsd2si eax, xmm0
movsd xmm0, qword [ebp + 0x10]
divsd xmm0, qword [ebx + 0x98]
movd xmm3, eax
cvttsd2si eax, xmm0
cvtdq2ps xmm3, xmm3
movd xmm2, eax
mov eax, dword [ebx + 0x128]
cvtdq2ps xmm2, xmm2
mov eax, dword [eax + 0xe4]
dec eax
movss dword [ebp + 0x3c], xmm3
movss dword [ebp + 0x38], xmm2
movd xmm1, eax
mov eax, dword [ebx + 0x128]
cvtdq2ps xmm1, xmm1
mov eax, dword [eax + 0xe0]
add eax, 0x1e
movss dword [ebp + 0x34], xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp + 0x30], xmm0
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.185b0640
lea eax, [ebp + 0x18]
mov byte [ebp - 4], 0x18
push eax
lea eax, [ebp + 0x40]
mov ecx, 0x1886cd80
push eax
lea eax, [ebp + 0x38]
push eax
call fcn.185c9d20
mov eax, dword [ebp + 0x38]
push dword [eax + 0x14]
push 0
push 0
push ecx
push ecx
mov dword [esp + 4], 0x41700000
mov ecx, esp
push 0x18864d30
call fcn.185b0640
lea eax, [ebp + 0x54]
push eax
call fcn.186caae0
pop ecx
pop ecx
push eax
lea eax, [ebp + 0x28]
mov byte [ebp - 4], 0x19
push eax
call fcn.186ca230
add esp, 0x1c
lea ecx, [ebp + 0x54]
call fcn.185ac1f0
mov ecx, dword [ebp + 0x40]
mov byte [ebp - 4], 0
lea ecx, [ecx - 0x10]
call fcn.185ae8d0
movsd xmm0, qword [ebp + 0x10]
lea esi, [ebp + 0x30]
divsd xmm0, qword [ebx + 0xa8]
lea edi, [ebp + 0x18]
push 0x18861dc8
lea ecx, [ebp + 0x40]
cvttsd2si eax, xmm0
movsd xmm0, qword [ebp + 0x10]
divsd xmm0, qword [ebx + 0x98]
movd xmm3, eax
cvttsd2si eax, xmm0
cvtdq2ps xmm3, xmm3
movd xmm2, eax
mov eax, dword [ebx + 0x128]
cvtdq2ps xmm2, xmm2
mov eax, dword [eax + 0xf8]
dec eax
movss dword [ebp + 0x3c], xmm3
movss dword [ebp + 0x38], xmm2
movd xmm1, eax
mov eax, dword [ebx + 0x128]
cvtdq2ps xmm1, xmm1
mov eax, dword [eax + 0xf4]
add eax, 0x1e
movss dword [ebp + 0x34], xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp + 0x30], xmm0
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.185b0640
lea eax, [ebp + 0x18]
mov byte [ebp - 4], 0x1a
push eax
lea eax, [ebp + 0x40]
mov ecx, 0x1886cd80
push eax
lea eax, [ebp + 0x38]
push eax
call fcn.185c9d20
mov eax, dword [ebp + 0x38]
push dword [eax + 0x14]
push 0
push 0
push ecx
push ecx
mov dword [esp + 4], 0x41700000
mov ecx, esp
push 0x18864d68
call fcn.185b0640
lea eax, [ebp + 0x54]
push eax
call fcn.186caae0
pop ecx
pop ecx
push eax
lea eax, [ebp + 0x28]
mov byte [ebp - 4], 0x1b
push eax
call fcn.186ca230
add esp, 0x1c
lea ecx, [ebp + 0x54]
call fcn.185ac1f0
mov ecx, dword [ebp + 0x40]
mov byte [ebp - 4], 0
lea ecx, [ecx - 0x10]
call fcn.185ae8d0
movsd xmm0, qword [ebp + 0x10]
lea esi, [ebp + 0x30]
divsd xmm0, qword [ebx + 0xa8]
lea edi, [ebp + 0x18]
push 0x18861dc8
lea ecx, [ebp + 0x40]
cvttsd2si eax, xmm0
movsd xmm0, qword [ebp + 0x10]
divsd xmm0, qword [ebx + 0x98]
movd xmm3, eax
cvttsd2si eax, xmm0
cvtdq2ps xmm3, xmm3
movd xmm2, eax
mov eax, dword [ebx + 0x128]
cvtdq2ps xmm2, xmm2
mov eax, dword [eax + 0x10c]
dec eax
movss dword [ebp + 0x3c], xmm3
movss dword [ebp + 0x38], xmm2
movd xmm1, eax
mov eax, dword [ebx + 0x128]
cvtdq2ps xmm1, xmm1
mov eax, dword [eax + 0x108]
add eax, 0x1e
movss dword [ebp + 0x34], xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp + 0x30], xmm0
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.185b0640
lea eax, [ebp + 0x18]
mov byte [ebp - 4], 0x1c
push eax
lea eax, [ebp + 0x40]
mov ecx, 0x1886cd80
push eax
lea eax, [ebp + 0x38]
push eax
call fcn.185c9d20
mov eax, dword [ebp + 0x38]
push dword [eax + 0x14]
push 0
push 0
push ecx
push ecx
mov dword [esp + 4], 0x41700000
mov ecx, esp
push 0x18864da0
call fcn.185b0640
lea eax, [ebp + 0x54]
push eax
call fcn.186caae0
pop ecx
pop ecx
push eax
lea eax, [ebp + 0x28]
mov byte [ebp - 4], 0x1d
push eax
call fcn.186ca230
add esp, 0x1c
lea ecx, [ebp + 0x54]
call fcn.185ac1f0
mov ecx, dword [ebp + 0x40]
mov byte [ebp - 4], 0
lea ecx, [ecx - 0x10]
call fcn.185ae8d0
mov esi, dword [0x1886cd98]
mov ecx, dword [esi + 0x10b8]
call fcn.185d2da0
mov ecx, dword [esi + 0x10b8]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp + 0x3c], xmm0
call fcn.185cc0f0
movsd xmm3, qword [ebp + 0x10]
lea esi, [ebp + 8]
movaps xmm0, xmm3
lea edi, [ebp + 0x18]
divsd xmm0, qword [ebx + 0xf0]
lea ecx, [ebp + 0x28]
divsd xmm3, qword [ebx + 0xf8]
movd xmm2, eax
cvttsd2si eax, xmm0
cvtdq2ps xmm2, xmm2
movd xmm1, eax
cvttsd2si eax, xmm3
cvtdq2ps xmm1, xmm1
movd xmm0, eax
lea eax, [ebp + 0x18]
cvtdq2ps xmm0, xmm0
push eax
mov eax, dword [0x1886cd98]
movss dword [ebp + 0xc], xmm1
movss dword [ebp + 8], xmm0
movss xmm0, dword [ebp + 0x3c]
movss dword [ebp + 0x10], xmm2
movss dword [ebp + 0x14], xmm0
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push dword [eax + 0x10b8]
call fcn.185d2cf0
movss xmm0, dword [ebp + 0x1c]
lea edi, [ebx + 0x14c]
addss xmm0, dword [0x186d899c]
lea esi, [ebp + 0x18]
movsd dword es:[edi], dword [esi]
lea ecx, [ebp + 0x40]
push 0x18861d8c
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movss dword [ebp + 0x1c], xmm0
call fcn.185b0640
lea eax, [ebp + 0x18]
mov byte [ebp - 4], 0x1e
push eax
lea eax, [ebp + 0x40]
mov edi, 0x1886cd80
push eax
lea eax, [ebp + 0x10]
mov ecx, edi
push eax
call fcn.185c9d20
mov eax, dword [ebp + 0x10]
push dword [eax + 0x14]
push 1
push 0
push ecx
push ecx
mov dword [esp + 4], 0x41900000
mov ecx, esp
push 0x18864dd8
call fcn.185b0640
lea eax, [ebp + 0x54]
push eax
call fcn.186caae0
pop ecx
pop ecx
push eax
lea eax, [ebp + 0x28]
mov byte [ebp - 4], 0x1f
push eax
call fcn.186ca230
add esp, 0x1c
lea ecx, [ebp + 0x54]
call fcn.185ac1f0
mov ecx, dword [ebp + 0x40]
mov byte [ebp - 4], 0
lea ecx, [ecx - 0x10]
call fcn.185ae8d0
mov esi, 0x18862014
lea ecx, [ebp + 0x40]
push esi
call fcn.185b0640
mov ebx, dword [ebp + 4]
lea eax, [ebp + 0x40]
mov ecx, edi
mov byte [ebp - 4], 0x20
push dword [ebx]
push eax
lea eax, [ebp + 0x10]
push eax
call fcn.185c9d20
mov eax, dword [ebp + 0x10]
push dword [eax + 0x14]
push 0
push 4
push ecx
push ecx
mov dword [esp + 4], 0x41700000
mov ecx, esp
push 0x18864a20
call fcn.185b0640
lea eax, [ebp + 0x54]
push eax
call fcn.186caae0
pop ecx
pop ecx
push eax
lea eax, [ebp + 0x28]
mov byte [ebp - 4], 0x21
push eax
call fcn.186ca230
add esp, 0x1c
lea ecx, [ebp + 0x54]
call fcn.185ac1f0
mov ecx, dword [ebp + 0x40]
mov byte [ebp - 4], 0
lea ecx, [ecx - 0x10]
call fcn.185ae8d0
push esi
lea ecx, [ebp + 0x40]
call fcn.185b0640
mov eax, dword [ebx]
mov ecx, edi
add eax, 0x10
mov byte [ebp - 4], 0x22
push eax
lea eax, [ebp + 0x40]
push eax
lea eax, [ebp + 0x10]
push eax
call fcn.185c9d20
mov eax, dword [ebp + 0x10]
push dword [eax + 0x14]
push 0
push 4
push ecx
push ecx
mov dword [esp + 4], 0x41700000
mov ecx, esp
push 0x18864a58
call fcn.185b0640
lea eax, [ebp + 0x54]
push eax
call fcn.186caae0
pop ecx
pop ecx
push eax
lea eax, [ebp + 0x28]
mov byte [ebp - 4], 0x23
push eax
call fcn.186ca230
add esp, 0x1c
lea ecx, [ebp + 0x54]
call fcn.185ac1f0
mov ecx, dword [ebp + 0x40]
mov byte [ebp - 4], 0
lea ecx, [ecx - 0x10]
call fcn.185ae8d0
push esi
lea ecx, [ebp + 0x40]
call fcn.185b0640
mov eax, dword [ebx]
mov ecx, edi
add eax, 0x20
mov byte [ebp - 4], 0x24
push eax
lea eax, [ebp + 0x40]
push eax
lea eax, [ebp + 0x10]
push eax
call fcn.185c9d20
mov eax, dword [ebp + 0x10]
xor ebx, ebx
push dword [eax + 0x14]
push ebx
push 4
push ecx
push ecx
mov dword [esp + 4], 0x41700000
mov ecx, esp
push 0x18864a90
call fcn.185b0640
lea eax, [ebp + 0x54]
push eax
call fcn.186caae0
pop ecx
pop ecx
push eax
lea eax, [ebp + 0x28]
mov byte [ebp - 4], 0x25
push eax
call fcn.186ca230
add esp, 0x1c
lea ecx, [ebp + 0x54]
call fcn.185ac1f0
mov ecx, dword [ebp + 0x40]
lea ecx, [ecx - 0x10]
call fcn.185ae8d0
mov eax, dword [ebp + 0x50]
sub eax, dword [ebp + 0x48]
mov esi, dword [ebp - 0x20]
push 0xcc0020
push ebx
push ebx
push esi
push eax
mov eax, dword [ebp + 0x4c]
sub eax, dword [ebp + 0x44]
push eax
push dword [ebp + 0x48]
mov eax, dword [ebp - 0x24]
push dword [ebp + 0x44]
push dword [eax]
call dword [sym.imp.GDI32.dll_BitBlt]
push dword [ebp - 0x28]
push esi
call dword [sym.imp.GDI32.dll_SelectObject]
push dword [ebp - 0x2c]
call dword [sym.imp.GDI32.dll_DeleteObject]
push esi
call dword [sym.imp.GDI32.dll_DeleteDC]
push dword [ebp + 0x28]
call sub.gdiplus.dll_GdipDeleteGraphics
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x6c]
xor ecx, ebp
call fcn.18615399
add ebp, 0x70
leave
ret 8