Function at 0x70d8bf20
Capabilities:
Access peb ldr_data
Extract resource via kernel32 functions
Get kernel32 base address
Get process heap flags
Get process heap force flags

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x5bc
mov ebx, dword [eax + 0x210]
mov dword [esp + 0x34], eax
mov dword [esp + 0x3c], edx
cmp word [ebx], 0
je 0x70d8cf4c
mov edi, eax
mov eax, dword [sym.imp.kernel32.dll_lstrcmpiW]
xor ebp, ebp
xor esi, esi
mov dword [esp + 0x28], eax
lea esi, [esi]
mov dword [esp + 4], ebx
mov eax, dword [edi + 0x218]
mov dword [esp], eax
mov eax, dword [esp + 0x28]
call eax
sub esp, 8
test eax, eax
cmove esi, ebp
cmp word [ebx], 0
je 0x70d8c7a8
mov eax, ebx
nop
add eax, 2
cmp word [eax], 0
jne 0x70d8bf80
sub eax, ebx
add eax, 2
add ebx, eax
add ebp, 1
cmp word [ebx], 0
jne 0x70d8bf58
mov ebp, esi
mov eax, dword [esp + 0x34]
mov edi, dword [eax + 0x214]
cmp word [edi], 0
je 0x70d8cf07
mov ecx, dword [sym.imp.kernel32.dll_lstrcmpiW]
xor ebx, ebx
mov dword [esp + 0x2c], ebp
xor esi, esi
mov ebp, ebx
mov ebx, eax
mov dword [esp + 0x28], ecx
lea esi, [esi]
mov dword [esp + 4], edi
mov eax, dword [ebx + 0x21c]
mov dword [esp], eax
mov eax, dword [esp + 0x28]
call eax
sub esp, 8
test eax, eax
cmove esi, ebp
cmp word [edi], 0
je 0x70d8c798
mov eax, edi
nop
add eax, 2
cmp word [eax], 0
jne 0x70d8bff0
sub eax, edi
add eax, 2
add edi, eax
add ebp, 1
cmp word [edi], 0
jne 0x70d8bfc8
mov eax, dword [esp + 0x34]
mov dword [esp + 8], str.FILERESNAMES
mov ebx, ebp
mov dword [esp + 4], 1
mov ebp, dword [esp + 0x2c]
mov eax, dword [eax + 4]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_FindResourceW]
sub esp, 0xc
test eax, eax
je 0x70d8cef1
mov dword [esp + 4], eax
mov eax, dword [esp + 0x34]
imul ebx, ebp
mov eax, dword [eax + 4]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_LoadResource]
mov ecx, ebx
sub esp, 8
add ecx, esi
mov edx, eax
je 0x70d8c087
xor ebx, ebx
nop
cmp word [edx], 0
mov eax, edx
je 0x70d8c7b2
lea esi, [esi]
add eax, 2
cmp word [eax], 0
jne 0x70d8c070
sub eax, edx
add eax, 2
add ebx, 1
add edx, eax
cmp ecx, ebx
jne 0x70d8c060
mov eax, dword [esp + 0x34]
mov dword [esp + 4], edx
mov eax, dword [eax + 4]
mov dword [esp], eax
call fcn.70d93690
mov dword [esp + 0x28], eax
nop
lea eax, [esp + 0x60]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x28]
mov dword [esp], eax
call fcn.70d93810
mov ebx, eax
test eax, eax
je 0x70d8c640
mov eax, dword [esp + 0x60]
mov dword [esp + 0x14], 0xffffffff
mov dword [esp + 0x10], str.SysMetrics
mov dword [esp + 8], ebx
mov dword [esp + 4], 1
mov dword [esp + 0xc], eax
mov dword [esp], 0x800
call dword [sym.imp.kernel32.dll_CompareStringW]
sub esp, 0x18
cmp eax, 2
je 0x70d8c7bc
mov edx, dword [esp + 0x60]
xor eax, eax
mov ecx, 0x1e
lea edi, [esp + 0x1e0]
mov dword [esp + 0x2c], edi
lea ebp, [esp + 0x358]
rep stosd dword es:[edi], eax
lea edi, [esp + 0x258]
mov ecx, 0x1e
rep stosd dword es:[edi], eax
add edx, 1
mov eax, 0xff
mov ecx, ebp
cmp edx, eax
cmovbe eax, edx
cmp edx, 1
ja 0x70d8c15a
jmp 0x70d8c470
sub eax, 1
add ecx, 2
add ebx, 2
mov word [ecx - 2], dx
cmp eax, 1
je 0x70d8c162
movzx edx, word [ebx]
test dx, dx
jne 0x70d8c148
xor esi, esi
mov word [ecx], si
xor ecx, ecx
xor ebx, ebx
mov esi, dword [sym.imp.ucrtbase.dll_wcschr]
mov dword [esp], ebp
mov word [esp + 0xf0], bx
mov ebx, ebp
mov word [esp + 0x78], cx
mov dword [esp + 0x50], 0
mov dword [esp + 0x54], 0
mov dword [esp + 4], 0x3a
call esi
test eax, eax
je 0x70d8c1db
lea ebx, [eax + 4]
xor edx, edx
mov word [eax], dx
lea edi, [esp + 0x3ce]
mov eax, ebp
lea edx, [esp + 0x78]
jmp 0x70d8c1ce
add eax, 2
add edx, 2
mov word [edx - 2], cx
cmp eax, edi
je 0x70d8c1d6
movzx ecx, word [eax]
test cx, cx
jne 0x70d8c1c0
xor ebp, ebp
mov word [edx], bp
mov dword [esp + 4], 0x2e
mov dword [esp], ebx
call esi
test eax, eax
je 0x70d8c568
lea ebp, [eax + 2]
xor edi, edi
mov word [eax], di
lea edi, [esp + 0xf0]
lea ecx, [esp + 0x166]
mov eax, edi
jmp 0x70d8c21e
add eax, 2
add ebx, 2
mov word [eax - 2], dx
cmp eax, ecx
je 0x70d8c226
movzx edx, word [ebx]
test dx, dx
jne 0x70d8c210
xor ebx, ebx
mov word [eax], bx
mov dword [esp + 4], 0x28
mov dword [esp], ebp
call esi
test eax, eax
je 0x70d8c610
lea ebx, [eax + 2]
xor ecx, ecx
mov word [eax], cx
mov eax, dword [esp + 0x2c]
lea ecx, [esp + 0x256]
jmp 0x70d8c266
add eax, 2
add ebp, 2
mov word [eax - 2], dx
cmp eax, ecx
je 0x70d8c26f
movzx edx, word [ebp]
test dx, dx
jne 0x70d8c258
xor edx, edx
mov word [eax], dx
mov dword [esp + 4], 0x29
mov dword [esp], ebx
call esi
test eax, eax
je 0x70d8c0a0
lea ecx, [esp + 0x2ce]
xor ebp, ebp
mov word [eax], bp
lea eax, [esp + 0x258]
jmp 0x70d8c2ae
add eax, 2
add ebx, 2
mov word [eax - 2], dx
cmp eax, ecx
je 0x70d8c2b6
movzx edx, word [ebx]
test dx, dx
jne 0x70d8c2a0
xor ebp, ebp
mov word [eax], bp
cmp word [esp + 0xf0], 0
je 0x70d8c0a0
lea edx, [esp + 0x258]
xor eax, eax
mov dword [esp], edi
cmp word [esp + 0x258], 0
lea ecx, [esp + 0x54]
mov dword [esp + 0x10], ecx
lea ecx, [esp + 0x50]
cmove edx, eax
mov dword [esp + 0xc], ecx
cmp word [esp + 0x1e0], 0
cmovne eax, dword [esp + 0x2c]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
call fcn.70d8fb60
test eax, eax
je 0x70d8c0a0
mov dword [esp + 4], str.globals
mov dword [esp], edi
call dword [sym.imp.kernel32.dll_lstrcmpiW]
mov ecx, edi
sub esp, 8
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x34]
lea edx, [esp + 0x78]
mov eax, dword [eax + 0x220]
call fcn.70d8b9c0
mov esi, eax
test eax, eax
je 0x70d8cd82
mov ebp, dword [eax + 0x104]
mov edi, dword [esp + 0x54]
mov eax, esi
mov ebx, dword [esp + 0x50]
jmp 0x70d8c363
mov ebp, dword [ebp + 0xc]
test ebp, ebp
je 0x70d8c548
cmp ebx, dword [ebp]
jne 0x70d8c360
cmp edi, dword [ebp + 4]
jne 0x70d8c360
lea eax, [esp + 0x64]
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x68]
mov dword [esp + 0x30], eax
lea esi, [esp + 0x5c]
lea esi, [esi]
mov eax, dword [esp + 0x2c]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 8], eax
lea eax, [esp + 0x60]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x28]
mov dword [esp], eax
call fcn.70d938e0
test eax, eax
je 0x70d8c0a0
mov edi, dword [esp + 0x60]
lea ebx, [esp + 0x168]
mov edx, 0x3c
mov ecx, ebx
add edi, 1
cmp edi, edx
cmovbe edx, edi
cmp edi, 1
ja 0x70d8c3f2
jmp 0x70d8c458
sub edx, 1
add ecx, 2
add eax, 2
mov word [ecx - 2], di
cmp edx, 1
je 0x70d8c3fa
movzx edi, word [eax]
test di, di
jne 0x70d8c3e0
xor edi, edi
mov word [ecx], di
lea eax, [esp + 0x58]
mov dword [esp + 8], esi
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.70d8fd30
test eax, eax
jne 0x70d8c480
test byte [0x70d95058], 8
je 0x70d8c390
mov eax, ebx
call fcn.70d8b780
mov dword [esp + 0xc], str.Unknown_property__s_n
mov dword [esp + 0x10], eax
mov dword [esp + 8], str.MSSTYLES_ParseThemeIni
mov dword [esp + 4], 0x70d95058
mov dword [esp], 3
call fcn.70d8bad0
jmp 0x70d8c390
test edi, edi
je 0x70d8c3ff
lea ebx, [esp + 0x168]
mov ecx, ebx
jmp 0x70d8c3fa
test edx, edx
je 0x70d8c167
jmp 0x70d8c162
mov eax, dword [ebp + 8]
mov ebx, dword [esp + 0x5c]
mov edi, dword [esp + 0x58]
test eax, eax
jne 0x70d8c49f
jmp 0x70d8c4b8
mov eax, dword [eax + 0x14]
test eax, eax
je 0x70d8c4b8
cmp ebx, dword [eax + 4]
jne 0x70d8c498
cmp dword [eax], edi
je 0x70d8c390
test edi, edi
je 0x70d8c390
lea esi, [esi]
mov dword [esp + 8], 0x18
mov edx, dword [esp + 0x64]
mov dword [esp + 4], 0
mov ecx, dword [esp + 0x68]
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x30]
mov dword [esp + 0x40], edx
mov dword [esp + 0x38], ecx
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_HeapAlloc]
movd xmm1, ebx
movd xmm0, edi
sub esp, 0xc
punpckldq xmm0, xmm1
movq qword [eax], xmm0
mov ebx, dword [ebp + 4]
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x38]
mov dword [eax + 0x10], edx
xor edx, edx
mov dword [eax + 0xc], ecx
test ebx, ebx
jne 0x70d8c530
mov ecx, dword [ebp]
mov edx, 1
test ecx, ecx
jne 0x70d8c530
cmp dword [esp + 0x44], 1
mov edx, 2
adc edx, 0
mov dword [eax + 8], edx
mov edx, dword [ebp + 8]
mov dword [eax + 0x14], edx
mov dword [ebp + 8], eax
jmp 0x70d8c390
mov eax, dword [eax + 0x108]
test eax, eax
je 0x70d8cd2d
mov ebp, dword [eax + 0x104]
jmp 0x70d8c363
mov dword [esp + 4], 0x28
mov dword [esp], ebx
call esi
test eax, eax
je 0x70d8cb85
lea ebp, [eax + 2]
xor edi, edi
mov word [eax], di
lea edi, [esp + 0xf0]
lea ecx, [esp + 0x166]
mov eax, edi
jmp 0x70d8c5ae
add eax, 2
add ebx, 2
mov word [eax - 2], dx
cmp eax, ecx
je 0x70d8c5b6
movzx edx, word [ebx]
test dx, dx
jne 0x70d8c5a0
xor ecx, ecx
mov word [eax], cx
mov dword [esp + 4], 0x29
mov dword [esp], ebp
call esi
test eax, eax
je 0x70d8c0a0
lea ecx, [esp + 0x2ce]
xor edx, edx
mov word [eax], dx
lea eax, [esp + 0x258]
jmp 0x70d8c5fa
add eax, 2
add ebp, 2
mov word [eax - 2], dx
cmp eax, ecx
je 0x70d8c2b6
movzx edx, word [ebp]
test dx, dx
jne 0x70d8c5e8
jmp 0x70d8c2b6
mov eax, dword [esp + 0x2c]
lea ecx, [esp + 0x256]
jmp 0x70d8c632
add eax, 2
add ebp, 2
mov word [eax - 2], dx
cmp eax, ecx
je 0x70d8c2b6
movzx edx, word [ebp]
test dx, dx
jne 0x70d8c620
jmp 0x70d8c2b6
mov eax, dword [esp + 0x34]
mov ebx, dword [eax + 0x220]
test ebx, ebx
je 0x70d8c768
mov esi, dword [sym.imp.kernel32.dll_lstrcmpiW]
jmp 0x70d8c66a
mov ebx, dword [ebx + 0x10c]
test ebx, ebx
je 0x70d8c68b
cmp word [ebx + 0x10], 0
jne 0x70d8c660
lea eax, [ebx + 0x88]
mov dword [esp], str.globals
mov dword [esp + 4], eax
call esi
sub esp, 8
test eax, eax
jne 0x70d8c660
mov eax, dword [esp + 0x34]
mov ebp, dword [eax + 0x220]
jmp 0x70d8c6b0
cmp ebp, ebx
je 0x70d8c6aa
mov dword [ebp + 0x108], ebx
mov ebp, dword [ebp + 0x10c]
test ebp, ebp
je 0x70d8c768
cmp word [ebp + 0x10], 0
je 0x70d8c6a0
mov eax, dword [esp + 0x34]
lea edi, [ebp + 0x88]
mov esi, dword [eax + 0x220]
test esi, esi
jne 0x70d8c6e2
jmp 0x70d8c70d
mov esi, dword [esi + 0x10c]
test esi, esi
je 0x70d8c70d
cmp word [esi + 0x10], 0
jne 0x70d8c6d8
lea eax, [esi + 0x88]
mov dword [esp], edi
mov dword [esp + 4], eax
call dword [sym.imp.kernel32.dll_lstrcmpiW]
sub esp, 8
test eax, eax
je 0x70d8c6a4
mov esi, dword [esi + 0x10c]
test esi, esi
jne 0x70d8c6e2
mov dword [ebp + 0x108], 0
test byte [0x70d95058], 8
je 0x70d8c6aa
mov eax, edi
call fcn.70d8b780
mov esi, eax
lea eax, [ebp + 0x10]
call fcn.70d8b780
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.No_overrides_found_for_app__s_class__s_n
mov dword [esp + 8], str.MSSTYLES_ParseThemeIni
mov dword [esp + 4], 0x70d95058
mov dword [esp], 3
call fcn.70d8bad0
jmp 0x70d8c6aa
mov eax, dword [esp + 0x28]
mov dword [esp], eax
call fcn.70d937e0
mov eax, dword [esp + 0x34]
mov eax, dword [eax + 0x220]
test eax, eax
je 0x70d8ce25
add esp, 0x5bc
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, 2
jmp 0x70d8bffe
mov eax, 2
jmp 0x70d8bf8e
mov eax, 2
jmp 0x70d8c07e
lea edx, [esp + 0x258]
xor esi, esi
mov ecx, 0x40
mov edi, edx
mov eax, esi
rep stosd dword es:[edi], eax
mov eax, dword [sym.imp.user32.dll_SetThreadDpiAwarenessContext]
mov dword [esp], 0xffffffff
mov dword [esp + 0x44], eax
call eax
mov ecx, 0x96
sub esp, 4
mov ebx, eax
mov eax, esi
mov esi, dword [sym.imp.user32.dll_SystemParametersInfoW]
lea ebp, [esp + 0x358]
mov edi, ebp
rep stosd dword es:[edi], eax
mov dword [esp + 0xc], 0
mov dword [esp + 0x358], 0x1f8
mov dword [esp + 8], ebp
mov dword [esp + 4], 0x1f8
mov dword [esp], 0x29
mov dword [esp + 0x4c], esi
call esi
sub esp, 0x10
lea edi, [esp + 0x554]
mov dword [esp + 0xc], 0
mov dword [esp + 8], edi
mov dword [esp + 4], 0x5c
mov dword [esp], 0x1f
call esi
sub esp, 0x10
mov eax, dword [esp + 0x44]
mov dword [esp], ebx
call eax
sub esp, 4
lea eax, [esp + 0x64]
mov dword [esp + 0x48], ebp
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x68]
mov dword [esp + 0x30], eax
lea esi, [esi]
mov eax, dword [esp + 0x2c]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 8], eax
lea eax, [esp + 0x60]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x28]
mov dword [esp], eax
call fcn.70d938e0
test eax, eax
je 0x70d8cadf
mov esi, dword [esp + 0x60]
lea ebx, [esp + 0x168]
mov edx, 0x3c
mov ecx, ebx
add esi, 1
cmp esi, edx
cmovbe edx, esi
cmp esi, 1
ja 0x70d8c8e2
jmp 0x70d8ca41
sub edx, 1
add ecx, 2
add eax, 2
mov word [ecx - 2], si
cmp edx, 1
je 0x70d8c8ea
movzx esi, word [eax]
test si, si
jne 0x70d8c8d0
xor eax, eax
mov word [ecx], ax
lea eax, [esp + 0x5c]
mov dword [esp], ebx
mov dword [esp + 8], eax
lea eax, [esp + 0x58]
mov dword [esp + 4], eax
call fcn.70d8fd30
test eax, eax
je 0x70d8ca00
mov edi, dword [esp + 0x5c]
mov ebp, dword [esp + 0x68]
lea esi, [edi - 0x641]
cmp esi, 0x1e
jbe 0x70d8ca60
cmp edi, 0x3e9
jne 0x70d8c93a
mov eax, dword [esp + 0x3c]
test eax, eax
jne 0x70d8cea7
mov eax, dword [esp + 0x64]
lea esi, [edi - 0x321]
mov dword [esp + 0x38], eax
cmp esi, 8
jbe 0x70d8cbbf
lea esi, [edi - 0x4b1]
cmp esi, 9
jbe 0x70d8cced
mov eax, dword [esp + 0x34]
mov ebx, dword [esp + 0x58]
mov eax, dword [eax + 0x224]
test eax, eax
jne 0x70d8c97f
jmp 0x70d8c998
mov eax, dword [eax + 0x14]
test eax, eax
je 0x70d8c998
cmp dword [eax + 4], edi
jne 0x70d8c978
cmp dword [eax], ebx
je 0x70d8c878
test ebx, ebx
je 0x70d8c878
lea esi, [esi]
mov dword [esp + 8], 0x18
mov dword [esp + 4], 0
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_HeapAlloc]
movd xmm0, ebx
movd xmm2, edi
sub esp, 0xc
punpckldq xmm0, xmm2
mov dword [eax + 0xc], ebp
mov esi, dword [esp + 0x38]
movq qword [eax], xmm0
mov dword [eax + 8], 3
mov dword [eax + 0x10], esi
mov esi, dword [esp + 0x34]
mov edx, dword [esi + 0x224]
mov dword [esi + 0x224], eax
mov dword [eax + 0x14], edx
jmp 0x70d8c878
test byte [0x70d95058], 8
je 0x70d8c878
mov eax, ebx
call fcn.70d8b780
mov dword [esp + 0xc], str.Unknown_system_metric__s_n
mov dword [esp + 0x10], eax
mov dword [esp + 8], str.MSSTYLES_ParseThemeIni
mov dword [esp + 4], 0x70d95058
mov dword [esp], 3
call fcn.70d8bad0
jmp 0x70d8c878
test esi, esi
je 0x70d8c8ef
lea ebx, [esp + 0x168]
mov ecx, ebx
jmp 0x70d8c8ea
mov eax, dword [esp + 0x64]
lea ecx, [esp + 0x6c]
mov dword [esp + 0x6c], ebp
lea edx, [ebp + eax*2]
mov dword [esp + 0x38], eax
lea eax, [esp + 0x70]
mov dword [esp + 0x40], edx
mov dword [esp], eax
mov eax, ebp
call fcn.70d8b670
test eax, eax
jne 0x70d8cc05
test byte [0x70d95058], 1
je case.default.0x70d8cd26
mov eax, ebx
call fcn.70d8b780
mov dword [esp + 0xc], str.Invalid_color_value_for__s_n
mov dword [esp + 0x10], eax
mov dword [esp + 8], str.MSSTYLES_ParseThemeIni
mov dword [esp + 4], 0x70d95058
mov dword [esp], 0
call fcn.70d8bad0
mov eax, dword [esp + 0x64]
mov ebp, dword [esp + 0x68]
mov edi, dword [esp + 0x5c]
mov dword [esp + 0x38], eax
jmp case.default.0x70d8cd26
mov eax, dword [esp + 0x3c]
mov ebp, dword [esp + 0x48]
test eax, eax
je 0x70d8c0a0
mov eax, dword [esp + 0x258]
test eax, eax
jg 0x70d8ce80
cmp dword [esp + 0x354], 0xf
je 0x70d8cfdd
mov edi, dword [esp + 0x550]
test edi, edi
je 0x70d8c0a0
mov esi, dword [esp + 0x44]
mov dword [esp], 0xffffffff
call esi
sub esp, 4
mov ebx, eax
mov edi, dword [esp + 0x4c]
mov dword [esp + 0xc], 0
mov dword [esp + 8], ebp
mov dword [esp + 4], 0x1f8
mov dword [esp], 0x2a
call edi
sub esp, 0x10
lea eax, [esp + 0x554]
mov dword [esp + 0xc], 0
mov dword [esp + 8], eax
mov dword [esp + 4], 0x5c
mov dword [esp], 0x22
call edi
sub esp, 0x10
mov dword [esp], ebx
call esi
sub esp, 4
jmp 0x70d8c0a0
lea edi, [esp + 0xf0]
lea ecx, [esp + 0x166]
mov eax, edi
jmp 0x70d8cbb2
add eax, 2
add ebx, 2
mov word [eax - 2], dx
cmp eax, ecx
je 0x70d8c2b6
movzx edx, word [ebx]
test dx, dx
jne 0x70d8cba0
jmp 0x70d8c2b6
lea edi, [esp + 0x1e0]
xor eax, eax
mov ecx, 0x17
mov dword [esp + 0x40], edi
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x38]
lea ecx, [esp + 0x74]
mov edi, dword [esp + 0x40]
lea edx, [ebp + eax*2]
mov eax, ebp
mov dword [esp], edi
call fcn.70d8bd90
test eax, eax
js 0x70d8ccc8
cmp esi, 5
ja case.default.0x70d8cbfe
jmp dword [esi*4 + 0x70d97cdc]
lea eax, [esp + 0x74]
mov edx, dword [esp + 0x40]
mov dword [esp], eax
mov eax, dword [esp + 0x6c]
lea ecx, [esp + 0x6c]
call fcn.70d8b670
test eax, eax
je 0x70d8ca8e
lea eax, [esp + 0x1e0]
mov edx, dword [esp + 0x40]
mov dword [esp], eax
mov eax, dword [esp + 0x6c]
lea ecx, [esp + 0x6c]
call fcn.70d8b670
test eax, eax
je 0x70d8ca8e
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x1e0]
mov edx, dword [esp + 0x258]
shl eax, 8
shl ecx, 0x10
movzx eax, ax
and ecx, 0xff0000
mov dword [esp + edx*4 + 0x25c], esi
or eax, ecx
movzx ecx, byte [esp + 0x70]
or eax, ecx
lea ecx, [edx + 1]
mov dword [esp + 0x258], ecx
mov dword [esp + edx*4 + 0x2d8], eax
cmp edi, 0x65c
je 0x70d8d0ff
jg 0x70d8d0e6
cmp edi, 0x643
je 0x70d8d00a
cmp edi, 0x644
jne case.default.0x70d8cd26
or dword [esp + 0x354], 2
jmp case.default.0x70d8cd26
test byte [0x70d95058], 1
je case.default.0x70d8cbfe
mov eax, ebx
call fcn.70d8b780
mov dword [esp + 0xc], str.Invalid_font_value_for__s_n
mov dword [esp + 0x10], eax
jmp 0x70d8caae
mov eax, dword [esp + 0x38]
lea ecx, [esp + 0x74]
mov dword [esp + 0x74], ebp
lea edx, [ebp + eax*2]
lea eax, [esp + 0x1e0]
mov dword [esp], eax
mov eax, ebp
call fcn.70d8b670
test eax, eax
je 0x70d8ce5b
cmp esi, 8
ja case.default.0x70d8cd26
mov eax, dword [esp + 0x1e0]
jmp dword [esi*4 + 0x70d97cf4]
mov dword [esp + 8], 0x10
mov dword [esp + 4], 0
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_HeapAlloc]
movd xmm0, ebx
movd xmm3, edi
mov ebp, eax
mov dword [eax + 8], 0
punpckldq xmm0, xmm3
sub esp, 0xc
movq qword [eax], xmm0
mov eax, dword [esi + 0x104]
mov dword [ebp + 0xc], eax
mov dword [esi + 0x104], ebp
jmp 0x70d8c375
mov dword [esp + 8], 0x110
mov dword [esp + 4], 0
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_HeapAlloc]
sub esp, 0xc
mov dword [eax + 4], 0
mov esi, eax
mov dword [eax], 0x12bc6d83
mov eax, dword [esp + 0x34]
mov eax, dword [eax + 4]
mov dword [esi + 8], eax
xor eax, eax
lea esi, [esi]
movzx edx, word [esp + eax + 0x78]
mov word [esi + eax + 0x10], dx
add eax, 2
test dx, dx
jne 0x70d8cdc8
xor eax, eax
lea esi, [esi]
movzx edx, word [edi + eax]
mov word [esi + eax + 0x88], dx
add eax, 2
test dx, dx
jne 0x70d8cde0
mov dword [esi + 0x104], 0
mov edi, dword [esp + 0x34]
xor ebp, ebp
mov dword [esi + 0x108], 0
mov eax, dword [edi + 0x220]
mov dword [edi + 0x220], esi
mov dword [esi + 0x10c], eax
jmp 0x70d8c352
test byte [0x70d95058], 2
je 0x70d8c786
mov dword [esp + 0xc], str.Failed_to_parse_theme_ini_n
mov dword [esp + 8], str.MSSTYLES_ParseThemeIni
mov dword [esp + 4], 0x70d95058
mov dword [esp], 1
call fcn.70d8bad0
jmp 0x70d8c786
test byte [0x70d95058], 1
je case.default.0x70d8cd26
mov eax, ebx
call fcn.70d8b780
mov dword [esp + 0xc], str.Invalid_size_value_for__s_n
mov dword [esp + 0x10], eax
jmp 0x70d8caae
lea edx, [esp + 0x2d8]
mov dword [esp], eax
mov dword [esp + 8], edx
lea edx, [esp + 0x25c]
mov dword [esp + 4], edx
call dword [sym.imp.user32.dll_SetSysColors]
sub esp, 0xc
jmp 0x70d8cafe
mov dword [esp + 0xc], 0
movzx eax, word [ebp]
mov dword [esp + 4], 0
mov dword [esp], 0x1023
and eax, 0xffffffdf
cmp ax, 0x54
sete al
movzx eax, al
mov dword [esp + 8], eax
mov eax, dword [esp + 0x4c]
call eax
sub esp, 0x10
mov eax, dword [esp + 0x64]
mov ebp, dword [esp + 0x68]
mov edi, dword [esp + 0x5c]
mov dword [esp + 0x38], eax
jmp case.default.0x70d8cd26
test byte [0x70d95058], 8
jne 0x70d8cf53
mov dword [esp + 0x28], 0
jmp 0x70d8c0a0
mov eax, dword [esp + 0x34]
mov dword [esp + 8], str.FILERESNAMES
mov dword [esp + 4], 1
mov eax, dword [eax + 4]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_FindResourceW]
sub esp, 0xc
test eax, eax
je 0x70d8cef1
mov dword [esp + 4], eax
mov eax, dword [esp + 0x34]
mov eax, dword [eax + 4]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_LoadResource]
sub esp, 8
mov edx, eax
jmp 0x70d8c087
xor ebp, ebp
jmp 0x70d8bf9b
mov dword [esp + 0xc], str.FILERESNAMES_map_not_found_n
mov dword [esp + 8], str.MSSTYLES_GetActiveThemeIni
mov dword [esp + 4], 0x70d95058
mov dword [esp], 3
call fcn.70d8bad0
jmp 0x70d8cefa
lea edi, [esp + 0x4f0]
mov ecx, 0x17
mov esi, dword [esp + 0x40]
rep movsd dword es:[edi], dword [esi]
mov ebp, dword [esp + 0x68]
mov dword [esp + 0x550], 1
mov edi, dword [esp + 0x5c]
mov eax, dword [esp + 0x64]
mov dword [esp + 0x38], eax
jmp case.default.0x70d8cd26
lea edi, [esp + 0x554]
mov ecx, 0x17
jmp 0x70d8cf85
lea edi, [esp + 0x370]
jmp 0x70d8cf80
lea edi, [esp + 0x3d4]
jmp 0x70d8cf80
lea edi, [esp + 0x438]
jmp 0x70d8cf80
lea edi, [esp + 0x494]
jmp 0x70d8cf80
mov eax, dword [esp + 0x4c]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 1
mov dword [esp + 4], 0
mov dword [esp], 0x1009
call eax
sub esp, 0x10
jmp 0x70d8cb0c
or dword [esp + 0x354], 1
jmp case.default.0x70d8cd26
mov dword [esp + 0x430], eax
mov dword [esp + 0x550], 1
jmp case.default.0x70d8cd26
mov dword [esp + 0x3d0], eax
mov dword [esp + 0x550], 1
jmp case.default.0x70d8cd26
mov dword [esp + 0x3cc], eax
mov dword [esp + 0x550], 1
jmp case.default.0x70d8cd26
mov dword [esp + 0x36c], eax
mov dword [esp + 0x550], 1
jmp case.default.0x70d8cd26
mov dword [esp + 0x368], eax
mov dword [esp + 0x550], 1
jmp case.default.0x70d8cd26
mov dword [esp + 0x364], eax
mov dword [esp + 0x550], 1
jmp case.default.0x70d8cd26
mov dword [esp + 0x360], eax
mov dword [esp + 0x550], 1
jmp case.default.0x70d8cd26
mov dword [esp + 0x35c], eax
mov dword [esp + 0x550], 1
jmp case.default.0x70d8cd26
mov dword [esp + 0x434], eax
mov dword [esp + 0x550], 1
jmp case.default.0x70d8cd26
cmp edi, 0x65d
jne case.default.0x70d8cd26
or dword [esp + 0x354], 8
jmp case.default.0x70d8cd26
or dword [esp + 0x354], 4
jmp case.default.0x70d8cd26