Function at 0x4528b6
Capabilities:
Identify system language via api

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x414
push esi
mov dword [ebp - 0xc], 2
mov dword [ebp - 0x22c], 0x780eec29
mov dword [ebp - 0x2b0], 0xdc509ca4
mov dword [ebp - 0x94], 0
jmp 0x4528f4
mov eax, dword [ebp - 0x94]
inc eax
mov dword [ebp - 0x94], eax
cmp dword [ebp - 0x94], 4
jge 0x452910
mov eax, dword [ebp - 0x94]
mov dword [ebp + eax*4 - 0x3e8], 2
jmp 0x4528e7
mov dword [ebp - 0xc], 0
jmp 0x452920
mov eax, dword [ebp - 0xc]
dec eax
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xfffffff8
jge 0x452b2e
mov dword [ebp - 0x8c], 0xfffffff8
mov dword [ebp - 0x2a8], 0x7b187b35
mov byte [ebp - 0x29], 0
movzx eax, byte [ebp - 0x29]
test eax, eax
je 0x452952
push 0
call dword [sym.imp.USER32.dll_ShowCursor]
mov eax, dword [ebp - 0xc]
cmp dword [ebp - 0xc], eax
jge 0x452966
mov dword [ebp - 0x144], 1
jmp 0x45296d
and dword [ebp - 0x144], 0
mov eax, dword [ebp - 0x144]
mov dword [ebp - 0x22c], eax
mov eax, dword [ebp - 0x22c]
mov dword [ebp - 0x188], eax
push 4
pop eax
shl eax, 1
mov ecx, dword [ebp - 0x188]
mov dword [ebp + eax - 0x3e8], ecx
cmp dword [ebp - 0x188], 0x3e75
jge 0x4529c4
cmp dword [ebp - 0x8c], 0
jne 0x4529c4
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x3e8], 0
jne 0x4529c4
and dword [ebp - 0x224], 0
jmp 0x4529ce
mov dword [ebp - 0x224], 1
mov eax, dword [ebp - 0x8c]
cmp dword [ebp - 0x224], eax
jle 0x4529e8
mov dword [ebp - 0xe4], 1
jmp 0x4529ef
and dword [ebp - 0xe4], 0
cmp dword [ebp - 0xe4], 0xffffffff
jae 0x452a04
mov dword [ebp - 0xe8], 1
jmp 0x452a0b
and dword [ebp - 0xe8], 0
cmp dword [ebp - 0xe8], 0xfff9
jne 0x452a2c
cmp dword [ebp - 0x8c], 0
je 0x452a2c
mov dword [ebp - 0x218], 1
jmp 0x452a33
and dword [ebp - 0x218], 0
cmp dword [ebp - 0x218], 0x75ff
jg 0x452a4b
mov dword [ebp - 0xf0], 1
jmp 0x452a52
and dword [ebp - 0xf0], 0
cmp dword [ebp - 0xf0], 1
jbe 0x452a67
mov dword [ebp - 0x190], 1
jmp 0x452a6e
and dword [ebp - 0x190], 0
mov eax, dword [ebp - 0xc]
cmp eax, dword [ebp - 0x190]
jg 0x452a85
mov dword [ebp - 0xf8], 1
jmp 0x452a8c
and dword [ebp - 0xf8], 0
mov eax, dword [ebp - 0xc]
cmp dword [ebp - 0xf8], eax
jne 0x452aa3
mov dword [ebp - 0x1e0], 1
jmp 0x452aaa
and dword [ebp - 0x1e0], 0
mov eax, dword [ebp - 0x1e0]
sub eax, dword [ebp - 0x8c]
cmp eax, dword [ebp - 0xc]
jge 0x452ac7
mov dword [ebp - 0x100], 1
jmp 0x452ace
and dword [ebp - 0x100], 0
mov eax, dword [ebp - 0xc]
cmp dword [ebp - 0x100], eax
jne 0x452ae5
mov dword [ebp - 0x198], 1
jmp 0x452aec
and dword [ebp - 0x198], 0
mov eax, dword [ebp - 0x198]
mov dword [ebp - 0x2b0], eax
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x3e8], 0xbf5cd53b
ja 0x452b16
mov dword [ebp - 0x108], 1
jmp 0x452b1d
and dword [ebp - 0x108], 0
mov eax, dword [ebp - 0x108]
mov dword [ebp - 0x2a8], eax
jmp 0x452919
mov byte [ebp - 0x3a], 0
movzx eax, byte [ebp - 0x3a]
test eax, eax
je 0x452b50
push 0
push 0
push 0x1dae
push 0x32e
push 0
call dword [sym.imp.USER32.dll_InsertMenuA]
movzx eax, byte [ebp + 0x2c]
test eax, eax
je 0x454295
lea eax, [ebp + 0x14]
mov dword [ebp - 0x260], eax
mov dword [ebp - 0x3bc], 0x1928c176
mov byte [ebp - 0x2e], 0
movzx eax, byte [ebp - 0x2e]
test eax, eax
je 0x452b98
push 0
push 0x1c84
push 0
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetTextExtentPointA]
mov byte [ebp - 0x39], 0
movzx eax, byte [ebp - 0x39]
test eax, eax
je 0x452bb1
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_IsZoomed]
mov eax, dword [ebp + 0x20]
mov dword [ebp - 0x278], eax
mov eax, dword [ebp + 0x28]
mov dword [ebp - 0x2c8], eax
mov dword [ebp - 0x248], 0x69ad59e5
mov dword [ebp - 0x80], 0
jmp 0x452bdd
mov eax, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0x80], eax
cmp dword [ebp - 0x80], 1
jge 0x452bf3
mov eax, dword [ebp - 0x80]
mov dword [ebp + eax*4 - 0x2b8], 7
jmp 0x452bd6
mov byte [ebp - 0x30], 0
movzx eax, byte [ebp - 0x30]
test eax, eax
je 0x452c05
call dword [sym.imp.KERNEL32.dll_GetUserDefaultUILanguage]
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x248]
mov dword [ebp + eax - 0x2b8], ecx
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x2a0], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x270], eax
lea eax, [ebp + 0x24]
mov dword [ebp - 0x2c0], eax
push 1
lea ecx, [ebp - 0x3d4]
call fcn.004113a6
mov dword [ebp - 0x70], 0
jmp 0x452c50
mov eax, dword [ebp - 0x70]
inc eax
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 1
jge 0x452c6c
push dword [ebp - 0x70]
lea ecx, [ebp - 0x3d4]
call fcn.00401484
mov dword [eax], 1
jmp 0x452c49
mov byte [ebp - 0x3b], 0
movzx eax, byte [ebp - 0x3b]
test eax, eax
je 0x452ca0
push 0x1dc1
push 0x1e42
push 0xca6
push 0x1bad
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_Rectangle]
mov byte [ebp - 0x2a], 0
movzx eax, byte [ebp - 0x2a]
test eax, eax
je 0x452cb9
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_IsZoomed]
lea ecx, [ebp - 0x3d4]
call fcn.00411478
lea eax, [ebp + 0x1c]
mov dword [ebp - 0x268], eax
mov dword [ebp - 0x1c], 0xfffffffa
mov dword [ebp - 0x54], 0xc42206dd
mov dword [ebp - 0x90], 0
jmp 0x452cf4
mov eax, dword [ebp - 0x90]
inc eax
mov dword [ebp - 0x90], eax
cmp dword [ebp - 0x90], 2
jge 0x452d10
mov eax, dword [ebp - 0x90]
mov dword [ebp + eax*4 - 0x404], 0xfffffff7
jmp 0x452ce7
mov dword [ebp - 0x1c], 0
jmp 0x452d20
mov eax, dword [ebp - 0x1c]
dec eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0xffffffe6
jne 0x452e19
mov dword [ebp - 0x40], 0xfffffffc
cmp dword [ebp - 0x40], 0
je 0x452d4c
mov eax, 0xbe4438b
test eax, eax
je 0x452d4c
mov dword [ebp - 0x1e8], 1
jmp 0x452d53
and dword [ebp - 0x1e8], 0
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x350], eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x37c], eax
cmp dword [ebp - 0x1c], 0x74952f34
jg 0x452d7a
mov dword [ebp - 0x208], 1
jmp 0x452d81
and dword [ebp - 0x208], 0
mov eax, dword [ebp - 0x40]
imul ecx, dword [ebp - 0x208], 0xffff
sub eax, ecx
cmp eax, 1
jbe 0x452da1
mov dword [ebp - 0x110], 1
jmp 0x452da8
and dword [ebp - 0x110], 0
mov eax, dword [ebp - 0x110]
dec eax
dec eax
cmp eax, dword [ebp - 0x40]
jle 0x452dc1
mov dword [ebp - 0x1a0], 1
jmp 0x452dc8
and dword [ebp - 0x1a0], 0
cmp dword [ebp - 0x1a0], 0xdebf889e
jbe 0x452de0
mov dword [ebp - 0x118], 1
jmp 0x452de7
and dword [ebp - 0x118], 0
mov eax, dword [ebp - 0x40]
add eax, dword [ebp - 0x118]
cmp dword [ebp - 0x1e8], eax
jle 0x452e04
mov dword [ebp - 0x120], 1
jmp 0x452e0b
and dword [ebp - 0x120], 0
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x54], eax
jmp 0x452d19
mov dword [ebp - 0x1c], 0
jmp 0x452e29
mov eax, dword [ebp - 0x1c]
dec eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0xffffffeb
jg 0x452e9d
mov dword [ebp - 0x1a8], 0x886a6c65
mov dword [ebp - 0x54], 1
jmp 0x452e49
mov eax, dword [ebp - 0x54]
dec eax
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0
jl 0x452e9b
mov dword [ebp - 0x78], 4
mov dword [ebp - 0x78], 1
jmp 0x452e66
mov eax, dword [ebp - 0x78]
dec eax
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 0
jl 0x452e8c
mov byte [ebp - 0x2b], 0
movzx eax, byte [ebp - 0x2b]
test eax, eax
je 0x452e8a
push 0x1709
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetWindowLongA]
jmp 0x452e5f
mov eax, dword [ebp - 0x1a8]
dec eax
mov dword [ebp - 0x1a8], eax
jmp 0x452e42
jmp 0x452e22
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x384], 0x45f1dbec
mov dword [ebp - 0x38c], 0x37ad4351
mov dword [ebp - 0x394], 0xe923e64f
mov dword [ebp - 0x88], 0x11
jmp 0x452ede
mov eax, dword [ebp - 0x88]
dec eax
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0xffffffeb
je 0x452f04
mov dword [ebp - 0xc4], 2
mov eax, dword [ebp - 0xc4]
inc eax
mov dword [ebp - 0xc4], eax
je 0x452f02
jmp 0x452ed1
jmp 0x452ed1
mov eax, dword [ebp - 0x2c0]
movzx eax, byte [eax]
test eax, eax
je 0x453e0d
mov eax, dword [ebp - 0x2a0]
mov dword [ebp - 0x27c], eax
mov dword [ebp - 0x28], 1
push 4
lea ecx, [ebp - 0xd4]
call fcn.004113a6
mov dword [ebp - 0x210], 0x8f9c3281
mov dword [ebp - 0x44], 0xf47f
push 3
lea ecx, [ebp - 0x304]
call fcn.004113a6
mov dword [ebp - 0x60], 0xfc0266d9
mov dword [ebp - 0x160], 0xae883781
mov dword [ebp - 8], 0
jmp 0x452f74
mov eax, dword [ebp - 8]
inc eax
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 4
jge 0x452f90
push dword [ebp - 8]
lea ecx, [ebp - 0xd4]
call fcn.00401484
mov dword [eax], 0xa3df603f
jmp 0x452f6d
mov dword [ebp - 8], 0
jmp 0x452fa0
mov eax, dword [ebp - 8]
inc eax
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 1
jge 0x452fb6
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0xb8], 0xfffffffe
jmp 0x452f99
mov dword [ebp - 8], 0
jmp 0x452fc6
mov eax, dword [ebp - 8]
inc eax
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 3
jge 0x452fe2
push dword [ebp - 8]
lea ecx, [ebp - 0x304]
call fcn.00401484
mov dword [eax], 0xf947f9f4
jmp 0x452fbf
mov dword [ebp - 0x28], 0
jmp 0x452ff2
mov eax, dword [ebp - 0x28]
dec eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0xffffffe4
jl 0x453176
mov dword [ebp - 0x10], 0x654fddd3
mov dword [ebp - 0x1b8], 0x68cd5467
mov dword [ebp - 0x10], 0
jmp 0x45301d
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jg 0x453171
mov dword [ebp - 0x254], 2
mov dword [ebp - 0x2a4], 0xfffffffd
push dword [ebp - 0x10]
lea ecx, [ebp - 0xd4]
call fcn.00401484
cmp dword [eax], 0
jne 0x45312c
push dword [ebp - 0x10]
lea ecx, [ebp - 0xd4]
call fcn.00401484
cmp dword [eax], 0
je 0x453077
cmp dword [ebp - 0x10], 1
jle 0x453077
mov dword [ebp - 0x128], 1
jmp 0x45307e
and dword [ebp - 0x128], 0
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x128], eax
jne 0x45309b
mov eax, 0xe76d
test eax, eax
jne 0x45309b
and dword [ebp - 0x228], 0
jmp 0x4530a5
mov dword [ebp - 0x228], 1
cmp dword [ebp - 0x228], 1
jle 0x4530ba
mov dword [ebp - 0x130], 1
jmp 0x4530c1
and dword [ebp - 0x130], 0
cmp dword [ebp - 0x130], 0
jl 0x4530d6
mov dword [ebp - 0x1b0], 1
jmp 0x4530dd
and dword [ebp - 0x1b0], 0
cmp dword [ebp - 0x1b0], 8
jb 0x4530f2
mov dword [ebp - 0x138], 1
jmp 0x4530f9
and dword [ebp - 0x138], 0
cmp dword [ebp - 0x138], 0
jg 0x45310e
mov dword [ebp - 0x1f0], 1
jmp 0x453115
and dword [ebp - 0x1f0], 0
mov eax, dword [ebp - 0x254]
cmp dword [ebp - 0x1f0], eax
jg 0x45312c
and dword [ebp - 0x140], 0
jmp 0x453136
mov dword [ebp - 0x140], 1
mov eax, dword [ebp - 0x140]
mov dword [ebp - 0x1b8], eax
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x1b8], eax
jg 0x453159
mov dword [ebp - 0x148], 1
jmp 0x453160
and dword [ebp - 0x148], 0
mov eax, dword [ebp - 0x148]
mov dword [ebp - 0x2a4], eax
jmp 0x453016
jmp 0x452feb
cmp dword [ebp - 0x28], 0
je 0x4532dd
push 0
lea ecx, [ebp - 0xd4]
call fcn.00401484
mov eax, dword [eax]
mov dword [ebp - 0x210], eax
mov eax, dword [ebp - 0x210]
mov dword [ebp - 0x39c], eax
mov esi, dword [ebp - 0x44]
push 2
lea ecx, [ebp - 0xd4]
call fcn.00401484
cmp esi, dword [eax]
jge 0x4531c1
mov dword [ebp - 0x98], 1
jmp 0x4531c8
and dword [ebp - 0x98], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x98]
mov dword [ebp + eax - 0xb8], ecx
mov esi, dword [ebp - 0x44]
imul esi, dword [ebp - 0x98]
push 1
lea ecx, [ebp - 0xd4]
call fcn.00401484
cmp dword [eax], esi
jne 0x453202
mov dword [ebp - 0x150], 1
jmp 0x453209
and dword [ebp - 0x150], 0
cmp dword [ebp - 0x150], 0xfffffff7
jne 0x45321e
mov dword [ebp - 0x1c0], 1
jmp 0x453225
and dword [ebp - 0x1c0], 0
push 0
lea ecx, [ebp - 0xd4]
call fcn.00401484
mov ecx, dword [ebp - 0x1c0]
cmp ecx, dword [eax]
jl 0x453248
mov dword [ebp - 0xa0], 1
jmp 0x45324f
and dword [ebp - 0xa0], 0
push 2
lea ecx, [ebp - 0x304]
call fcn.00401484
mov ecx, dword [ebp - 0xa0]
mov dword [eax], ecx
push 2
lea ecx, [ebp - 0xd4]
call fcn.00401484
mov eax, dword [eax]
cmp eax, dword [ebp - 0xa0]
jne 0x453287
mov dword [ebp - 0x158], 1
jmp 0x45328e
and dword [ebp - 0x158], 0
mov eax, dword [ebp - 0x158]
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0x60]
cmp dword [ebp - 0x28], eax
jge 0x4532ab
mov dword [ebp - 0x1f8], 1
jmp 0x4532b2
and dword [ebp - 0x1f8], 0
mov eax, dword [ebp - 0x1f8]
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0
je 0x4532dd
mov dword [ebp - 0x3a4], 0xffd02046
mov eax, dword [ebp - 0x160]
dec eax
mov dword [ebp - 0x160], eax
jmp 0x4533cf
mov dword [ebp - 0x25c], 0xfffffffb
mov dword [ebp - 0x168], 0x49dda4ad
mov dword [ebp - 0x264], 0xffffffff
mov dword [ebp - 0x1c8], 3
mov dword [ebp - 0x44], 0
jmp 0x453315
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0x31
jge 0x4533b8
mov dword [ebp - 0x2d0], 0xca5e
mov dword [ebp - 0x26c], 0xd35
mov eax, dword [ebp - 0x25c]
mov dword [ebp - 0x3ac], eax
mov eax, dword [ebp - 0x2d0]
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x3b4], eax
mov eax, 0xa8b0
sub eax, dword [ebp - 0x264]
mov dword [ebp - 0x1c8], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0xb8]
cmp dword [ebp - 0x1c8], eax
jge 0x453383
mov dword [ebp - 0x2ac], 1
jmp 0x45338a
and dword [ebp - 0x2ac], 0
mov eax, dword [ebp - 0x26c]
mov dword [ebp - 0x168], eax
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0x32c], eax
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0xb8], 0
jmp 0x45330e
mov byte [ebp - 0x2d], 0
movzx eax, byte [ebp - 0x2d]
test eax, eax
je 0x4533cf
push 0x6fb
call dword [sym.imp.GDI32.dll_GetStockObject]
lea ecx, [ebp - 0x304]
call fcn.00411478
lea ecx, [ebp - 0xd4]
call fcn.00411478
mov eax, dword [ebp - 0x2c8]
mov dword [ebp - 0x2cc], eax
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x58], 4
mov dword [ebp - 0xec], 0x8c83b913
mov dword [ebp - 0xb0], 0xba27438e
mov dword [ebp - 0xc0], 0xffffffff
mov dword [ebp - 0x11c], 9
mov dword [ebp - 0x3c4], 1
mov dword [ebp - 0x6c], 0
jmp 0x453441
mov eax, dword [ebp - 0x6c]
inc eax
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 1
jge 0x453457
mov eax, dword [ebp - 0x6c]
mov dword [ebp + eax*4 - 0xfc], 0x3e7a3298
jmp 0x45343a
mov dword [ebp - 4], 0
jmp 0x453467
mov eax, dword [ebp - 4]
inc eax
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0x13
jl 0x45363d
mov dword [ebp - 0x74], 0x213a
mov dword [ebp - 0xa8], 0x3380ee91
mov dword [ebp - 0x178], 0x74defc7
mov dword [ebp - 0xc8], 0xffffffff
mov dword [ebp - 0xdc], 6
mov dword [ebp - 0x2b4], 3
cmp dword [ebp - 4], 1
jae 0x4534bc
mov dword [ebp - 0x200], 1
jmp 0x4534c3
and dword [ebp - 0x200], 0
mov eax, dword [ebp - 4]
imul eax, dword [ebp - 4]
add eax, dword [ebp - 4]
je 0x4534d3
cmp dword [ebp - 0x74], 0
mov dword [ebp - 0xa8], 0
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 0xfffc
jne 0x4534fb
mov dword [ebp - 0x220], 1
jmp 0x453502
and dword [ebp - 0x220], 0
mov eax, dword [ebp - 0x220]
sub eax, dword [ebp - 0x74]
cmp eax, dword [ebp - 0x74]
jg 0x453514
cmp dword [ebp - 4], 0
cmp dword [ebp - 0x58], 0xfffffffa
jb 0x453526
mov dword [ebp - 0x170], 1
jmp 0x45352d
and dword [ebp - 0x170], 0
mov eax, dword [ebp - 0x74]
sub eax, dword [ebp - 0x170]
dec eax
cmp eax, 0xffffffff
je 0x453548
mov dword [ebp - 0x1d0], 1
jmp 0x45354f
and dword [ebp - 0x1d0], 0
mov eax, dword [ebp - 0x1d0]
mov dword [ebp - 0x178], eax
mov eax, dword [ebp - 0x178]
cmp dword [ebp - 0x200], eax
jl 0x453575
mov dword [ebp - 0x180], 1
jmp 0x45357c
and dword [ebp - 0x180], 0
cmp dword [ebp - 0x180], 0xfc1c5751
jb 0x45358e
cmp dword [ebp - 4], 0
je 0x4535a0
cmp dword [ebp - 0xa8], 0
je 0x4535a0
and dword [ebp - 0x1d8], 0
jmp 0x4535aa
mov dword [ebp - 0x1d8], 1
mov eax, dword [ebp - 0x1d8]
mov dword [ebp - 0xc8], eax
mov eax, dword [ebp - 0xdc]
cmp dword [ebp - 0xc8], eax
je 0x4535d0
mov dword [ebp - 0xe0], 1
jmp 0x4535d7
and dword [ebp - 0xe0], 0
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 0xe0]
sub ecx, dword [ebp - 0xdc]
sub eax, ecx
je 0x4535ff
cmp dword [ebp - 0xc8], 0
je 0x4535ff
mov dword [ebp - 0x274], 1
jmp 0x453606
and dword [ebp - 0x274], 0
mov eax, dword [ebp - 0xec]
sub eax, 0x7d436f9d
cmp eax, dword [ebp - 0xec]
jge 0x453625
mov dword [ebp - 0xf4], 1
jmp 0x45362c
and dword [ebp - 0xf4], 0
mov eax, dword [ebp - 0xf4]
mov dword [ebp - 0x2b4], eax
jmp 0x453460
mov eax, 0x2e43
test eax, eax
je 0x45370d
mov eax, dword [ebp - 4]
mov dword [ebp - 0x334], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0xfc]
mov dword [ebp - 0x104], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x104]
mov dword [ebp + eax - 0xfc], ecx
mov eax, dword [ebp - 0x11c]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x104]
sub eax, dword [ebp - 0x58]
imul eax, dword [ebp - 0xb0]
cmp eax, dword [ebp - 4]
jne 0x4536a3
mov dword [ebp - 0x10c], 1
jmp 0x4536aa
and dword [ebp - 0x10c], 0
cmp dword [ebp - 0x10c], 0xff0f
jg 0x4536ca
xor eax, eax
je 0x4536ca
xor eax, eax
je 0x4536ca
mov dword [ebp - 0x114], 1
jmp 0x4536d1
and dword [ebp - 0x114], 0
imul eax, dword [ebp - 0x114], 0xc659
cmp eax, dword [ebp - 0x11c]
jle 0x4536ef
mov dword [ebp - 0x124], 1
jmp 0x4536f6
and dword [ebp - 0x124], 0
mov eax, dword [ebp - 0x124]
sub eax, dword [ebp - 4]
je 0x45370d
mov dword [ebp - 0x12c], 1
jmp 0x453714
and dword [ebp - 0x12c], 0
mov eax, dword [ebp - 0x12c]
mov dword [ebp - 0xb0], eax
cmp dword [ebp - 0xb0], 0xffffffff
jae 0x453735
mov dword [ebp - 0x134], 1
jmp 0x45373c
and dword [ebp - 0x134], 0
cmp dword [ebp - 0x134], 0
jne 0x453751
mov dword [ebp - 0x13c], 1
jmp 0x453758
and dword [ebp - 0x13c], 0
mov eax, dword [ebp - 4]
cmp dword [ebp - 0x13c], eax
jge 0x45376f
mov dword [ebp - 0xd8], 1
jmp 0x453776
and dword [ebp - 0xd8], 0
mov eax, dword [ebp - 0xc0]
inc eax
mov dword [ebp - 0xc0], eax
mov eax, dword [ebp - 0xc0]
cmp eax, dword [ebp - 0xd8]
jge 0x45379d
mov dword [ebp - 0x14c], 1
jmp 0x4537a4
and dword [ebp - 0x14c], 0
mov eax, dword [ebp - 4]
cmp dword [ebp - 0x14c], eax
jne 0x4537bb
mov dword [ebp - 0x154], 1
jmp 0x4537c2
and dword [ebp - 0x154], 0
mov eax, dword [ebp - 4]
cmp dword [ebp - 0x154], eax
je 0x4537d9
mov dword [ebp - 0x15c], 1
jmp 0x4537e0
and dword [ebp - 0x15c], 0
mov eax, dword [ebp - 0x15c]
mov dword [ebp - 4], eax
mov dword [ebp - 0x3fc], 0xa5d6c05b
mov dword [ebp - 0x3f8], 0xa5d6c05b
mov dword [ebp - 0x3f4], 0xa5d6c05b
mov dword [ebp - 0x3f0], 0xa5d6c05b
mov dword [ebp - 0x7c], 1
mov dword [ebp - 0x398], 0xffffffff
mov dword [ebp - 0x33c], 0xffffffff
mov dword [ebp - 0x3ec], 0x7fbf2121
mov dword [ebp - 0x344], 0x7d7c118
mov dword [ebp - 0x3a0], 0xfffffffe
mov dword [ebp - 0x34c], 0xe32cf41
mov dword [ebp - 0x3c0], 0xd6b65720
mov dword [ebp - 0x354], 0x1943c6fe
mov dword [ebp - 0x358], 0xfffffff7
mov dword [ebp - 0x374], 0xfffffffd
mov dword [ebp - 0x3a8], 0xfffffffe
mov dword [ebp - 0x378], 0xfffffffa
mov dword [ebp - 0x3d8], 0xffffffff
mov dword [ebp - 0x380], 0
mov dword [ebp - 0x3b0], 0xfffffff8
mov dword [ebp - 0x388], 0xd7f19125
mov dword [ebp - 0x3c8], 0xfffffffb
push 3
lea ecx, [ebp - 0x2ec]
call fcn.004113a6
mov dword [ebp - 0x14], 0
jmp 0x4538df
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 4
jge 0x4538f5
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x414], 0x6b43d271
jmp 0x4538d8
mov dword [ebp - 0x14], 0
jmp 0x453905
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 3
jge 0x453921
push dword [ebp - 0x14]
lea ecx, [ebp - 0x2ec]
call fcn.00401484
mov dword [eax], 1
jmp 0x4538fe
mov dword [ebp - 0x7c], 3
jmp 0x453931
mov eax, dword [ebp - 0x7c]
dec eax
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 0
jl 0x453951
mov byte [ebp - 0x2f], 0
movzx eax, byte [ebp - 0x2f]
test eax, eax
je 0x45394f
push 0
push 0
push 0
call dword [sym.imp.ADVAPI32.dll_RegSetKeySecurity]
jmp 0x45392a
push 0
lea ecx, [ebp - 0x2ec]
call fcn.00401484
mov dword [ebp - 0x164], eax
mov eax, dword [ebp - 0x164]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x164]
mov dword [ecx], eax
lea ecx, [ebp - 0x2ec]
call fcn.00411478
mov eax, dword [ebp - 0x27c]
mov dword [ebp - 0x2bc], eax
push 1
lea ecx, [ebp - 0x328]
call fcn.004113a6
push 2
lea ecx, [ebp - 0x244]
call fcn.004113a6
mov dword [ebp - 0x18], 0
jmp 0x4539b6
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 1
jge 0x4539cf
push dword [ebp - 0x18]
lea ecx, [ebp - 0x328]
call fcn.00401484
or dword [eax], 0xffffffff
jmp 0x4539af
mov dword [ebp - 0x18], 0
jmp 0x4539df
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 2
jge 0x4539fb
push dword [ebp - 0x18]
lea ecx, [ebp - 0x244]
call fcn.00401484
mov dword [eax], 0x453606de
jmp 0x4539d8
push 0
lea ecx, [ebp - 0x244]
call fcn.00401484
and dword [eax], 0
jmp 0x453a31
push 0
lea ecx, [ebp - 0x244]
call fcn.00401484
mov dword [ebp - 0x16c], eax
mov eax, dword [ebp - 0x16c]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x16c]
mov dword [ecx], eax
push 0
lea ecx, [ebp - 0x244]
call fcn.00401484
cmp dword [eax], 0
jl 0x453ba1
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x174], 0xfffffffe
push 1
lea ecx, [ebp - 0x310]
call fcn.004113a6
mov dword [ebp - 0x84], 0
jmp 0x453a7e
mov eax, dword [ebp - 0x84]
inc eax
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 1
jge 0x453aa0
push dword [ebp - 0x84]
lea ecx, [ebp - 0x310]
call fcn.00401484
mov dword [eax], 0xc28cae2f
jmp 0x453a71
mov dword [ebp - 0x48], 0
jmp 0x453ab0
mov eax, dword [ebp - 0x48]
dec eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 0
jl 0x453b91
push 1
lea ecx, [ebp - 0x2f8]
call fcn.004113a6
mov dword [ebp - 0x5c], 0
jmp 0x453ad7
mov eax, dword [ebp - 0x5c]
inc eax
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], 1
jge 0x453af3
push dword [ebp - 0x5c]
lea ecx, [ebp - 0x2f8]
call fcn.00401484
mov dword [eax], 0xc07c2076
jmp 0x453ad0
push 0
lea ecx, [ebp - 0x328]
call fcn.00401484
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x174], eax
mov esi, dword [ebp - 0x174]
push 0
lea ecx, [ebp - 0x244]
call fcn.00401484
add esi, dword [eax]
cmp esi, 0x3161
jne 0x453b32
mov dword [ebp - 0x17c], 1
jmp 0x453b39
and dword [ebp - 0x17c], 0
mov eax, dword [ebp - 0x48]
imul eax, dword [ebp - 0x17c]
test eax, eax
je 0x453b65
push 0
lea ecx, [ebp - 0x2f8]
call fcn.00401484
cmp dword [eax], 0
je 0x453b65
mov dword [ebp - 0x184], 1
jmp 0x453b6c
and dword [ebp - 0x184], 0
push 0
lea ecx, [ebp - 0x310]
call fcn.00401484
mov ecx, dword [ebp - 0x184]
mov dword [eax], ecx
lea ecx, [ebp - 0x2f8]
call fcn.00411478
jmp 0x453aa9
lea ecx, [ebp - 0x310]
call fcn.00411478
jmp 0x453a0d
mov byte [ebp - 0x31], 0
movzx eax, byte [ebp - 0x31]
test eax, eax
je 0x453bb8
push 0xc92
call dword [sym.imp.KERNEL32.dll_SetErrorMode]
lea ecx, [ebp - 0x244]
call fcn.00411478
lea ecx, [ebp - 0x328]
call fcn.00411478
mov eax, dword [ebp - 0x2cc]
mov dword [ebp - 0x284], eax
push 3
lea ecx, [ebp - 0x2e0]
call fcn.004113a6
mov dword [ebp - 0x24], 0
jmp 0x453bf7
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 3
jge 0x453c13
push dword [ebp - 0x24]
lea ecx, [ebp - 0x2e0]
call fcn.00401484
mov dword [eax], 0x77862fd4
jmp 0x453bf0
mov dword [ebp - 0x24], 0
jmp 0x453c23
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 2
jge 0x453c36
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x68], 0xf57a7c20
jmp 0x453c1c
push 4
pop eax
shl eax, 0
mov dword [ebp + eax - 0x68], 2
jmp 0x453c5b
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x68]
dec eax
push 4
pop ecx
shl ecx, 0
mov dword [ebp + ecx - 0x68], eax
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x68], 0
jl 0x453de7
mov dword [ebp - 0x4c], 0xfffffffd
mov dword [ebp - 0x4c], 2
jmp 0x453c83
mov eax, dword [ebp - 0x4c]
dec eax
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0
jl 0x453cab
mov byte [ebp - 0x32], 0
movzx eax, byte [ebp - 0x32]
test eax, eax
je 0x453ca9
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SaveDC]
jmp 0x453c7c
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x68]
lea ecx, [ebp - 0x2e0]
call fcn.00401484
cmp dword [eax], 0
je 0x453ce9
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x68]
lea ecx, [ebp - 0x2e0]
call fcn.00401484
cmp dword [eax], 0
je 0x453ce4
jmp 0x453de7
jmp 0x453de2
mov dword [ebp - 0x9c], 0x4a0d
mov dword [ebp - 0x1b4], 0xbb101eb
mov dword [ebp - 0x9c], 0xffff
mov eax, 0xc8f0d071
test eax, eax
je 0x453dbe
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x68], 0xffffffff
jne 0x453d2d
mov dword [ebp - 0x18c], 1
jmp 0x453d34
and dword [ebp - 0x18c], 0
cmp dword [ebp - 0x18c], 0xf9c7
jne 0x453d4c
mov dword [ebp - 0x194], 1
jmp 0x453d53
and dword [ebp - 0x194], 0
mov eax, dword [ebp - 0x9c]
imul eax, dword [ebp - 0x194]
push 4
pop ecx
shl ecx, 0
sub eax, dword [ebp + ecx - 0x68]
cmp eax, 0xfffffffe
je 0x453d7b
mov dword [ebp - 0x19c], 1
jmp 0x453d82
and dword [ebp - 0x19c], 0
mov eax, dword [ebp - 0x4c]
cmp dword [ebp - 0x19c], eax
jg 0x453d99
mov dword [ebp - 0x1a4], 1
jmp 0x453da0
and dword [ebp - 0x1a4], 0
mov eax, dword [ebp - 0x1a4]
sub eax, dword [ebp - 0x9c]
je 0x453dbe
xor eax, eax
je 0x453dbe
mov dword [ebp - 0x1ac], 1
jmp 0x453dc5
and dword [ebp - 0x1ac], 0
mov eax, dword [ebp - 0x1b4]
imul eax, dword [ebp - 0x1ac]
push 4
pop ecx
shl ecx, 0
sub eax, dword [ebp + ecx - 0x68]
mov dword [ebp - 0x1b4], eax
jmp 0x453c46
lea ecx, [ebp - 0x2e0]
call fcn.00411478
mov eax, dword [ebp - 0x284]
mov eax, dword [eax]
shr eax, 1
push eax
mov ecx, dword [ebp - 0x2bc]
call fcn.0044115c
jmp 0x454293
mov dword [ebp - 0x38], 0xd4e06482
mov dword [ebp - 0x258], 0x62db8e96
push 1
lea ecx, [ebp - 0x238]
call fcn.004113a6
mov dword [ebp - 0x250], 0xfffffff8
mov dword [ebp - 0x1fc], 9
mov dword [ebp - 0x29c], 0xfffffffa
mov dword [ebp - 0x390], 0xa4f6
mov dword [ebp - 0xac], 0xfffffff8
mov dword [ebp - 0xbc], 0xffffffff
mov dword [ebp - 0xb4], 0xd89c1c50
mov dword [ebp - 0x24c], 0
push 3
lea ecx, [ebp - 0x31c]
call fcn.004113a6
mov dword [ebp - 0x20], 0
jmp 0x453e98
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 1
jge 0x453eb1
push dword [ebp - 0x20]
lea ecx, [ebp - 0x238]
call fcn.00401484
and dword [eax], 0
jmp 0x453e91
mov dword [ebp - 0x20], 0
jmp 0x453ec1
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 3
jge 0x453edd
push dword [ebp - 0x20]
lea ecx, [ebp - 0x31c]
call fcn.00401484
mov dword [eax], 0xfffffffa
jmp 0x453eba
mov dword [ebp - 0x38], 7
jmp 0x453eed
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 9
je 0x453f1f
mov byte [ebp - 0x2c], 0
movzx eax, byte [ebp - 0x2c]
test eax, eax
je 0x453f1d
push 0x5fc
push 0x2228
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
jmp 0x453ee6
cmp dword [ebp - 0x38], 0
jne 0x454102
mov eax, dword [ebp - 0x38]
dec eax
je 0x4540f9
mov eax, dword [ebp - 0xbc]
cmp dword [ebp - 0x38], eax
jge 0x453f4a
mov dword [ebp - 0x1bc], 1
jmp 0x453f51
and dword [ebp - 0x1bc], 0
cmp dword [ebp - 0x1bc], 0x6ffe
jle 0x453f69
mov dword [ebp - 0x1c4], 1
jmp 0x453f70
and dword [ebp - 0x1c4], 0
mov eax, dword [ebp - 0xb4]
cmp dword [ebp - 0x1c4], eax
je 0x453f8a
mov dword [ebp - 0x1cc], 1
jmp 0x453f91
and dword [ebp - 0x1cc], 0
push 0
lea ecx, [ebp - 0x238]
call fcn.00401484
mov eax, dword [eax]
cmp eax, dword [ebp - 0x1cc]
jl 0x453fb4
mov dword [ebp - 0x1d4], 1
jmp 0x453fbb
and dword [ebp - 0x1d4], 0
cmp dword [ebp - 0x1d4], 0xfff9
jae 0x453fd3
mov dword [ebp - 0x1dc], 1
jmp 0x453fda
and dword [ebp - 0x1dc], 0
cmp dword [ebp - 0x1dc], 0x231a2955
jg 0x453ffb
cmp dword [ebp - 0xb4], 0
je 0x453ffb
mov dword [ebp - 0x28c], 1
jmp 0x454002
and dword [ebp - 0x28c], 0
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0x3b8], eax
push 0
lea ecx, [ebp - 0x238]
call fcn.00401484
push 0
lea ecx, [ebp - 0x238]
call fcn.00401484
cmp dword [eax], 0x4418f7f2
jg 0x45403c
mov dword [ebp - 0x1e4], 1
jmp 0x454043
and dword [ebp - 0x1e4], 0
cmp dword [ebp - 0x1e4], 0x4f9f
jle 0x45405b
mov dword [ebp - 0xa4], 1
jmp 0x454062
and dword [ebp - 0xa4], 0
push 0
lea ecx, [ebp - 0x238]
call fcn.00401484
mov ecx, dword [ebp - 0xa4]
mov dword [eax], ecx
cmp dword [ebp - 0xa4], 0
jne 0x454090
push 4
pop eax
test eax, eax
jne 0x454090
and dword [ebp - 0x1ec], 0
jmp 0x45409a
mov dword [ebp - 0x1ec], 1
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0x2d4], eax
mov eax, dword [ebp - 0x1ec]
mov dword [ebp - 0x294], eax
mov eax, dword [ebp - 0xac]
dec eax
mov dword [ebp - 0xac], eax
mov eax, dword [ebp - 0x2d4]
cmp eax, dword [ebp - 0x294]
je 0x4540d9
mov dword [ebp - 0x1f4], 1
jmp 0x4540e0
and dword [ebp - 0x1f4], 0
mov eax, dword [ebp - 0x1f4]
mov dword [ebp - 0x1fc], eax
cmp dword [ebp - 0x1fc], 0
je 0x4540f9
xor eax, eax
jne 0x454102
and dword [ebp - 0x204], 0
jmp 0x45410c
mov dword [ebp - 0x204], 1
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0x204]
lea eax, [ecx + eax + 7]
cmp eax, 0x97140da8
jb 0x45412f
mov dword [ebp - 0x2c4], 1
jmp 0x454136
and dword [ebp - 0x2c4], 0
mov eax, dword [ebp - 0x29c]
mov dword [ebp - 0x330], eax
mov eax, dword [ebp - 0x24c]
mov dword [ebp - 0x338], eax
push 0
lea ecx, [ebp - 0x31c]
call fcn.00401484
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0x340], eax
mov eax, dword [ebp - 0x250]
mov dword [ebp - 0x348], eax
mov dword [ebp - 0x258], 1
lea ecx, [ebp - 0x31c]
call fcn.00411478
lea ecx, [ebp - 0x238]
call fcn.00411478
mov eax, dword [ebp - 0x260]
mov dword [ebp - 0x20c], eax
mov eax, dword [ebp - 0x268]
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x270]
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x278]
mov dword [ebp - 0x280], eax
lea ecx, [ebp - 0x370]
call fcn.0042057f
push 0x5713
push 1
push 0x3a8b
push 0x172
push 0x7125
push dword [ebp - 0x20c]
lea eax, [ebp - 0x370]
push eax
push 0x5d62
push 0x37ea
push 0
call fcn.0045004a
add esp, 0x28
and dword [ebp - 0x50], 0
jmp 0x454212
mov eax, dword [ebp - 0x50]
inc eax
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x20c]
mov ecx, dword [ebp - 0x50]
cmp ecx, dword [eax]
jae 0x454269
mov eax, dword [ebp - 0x214]
mov eax, dword [eax]
add eax, dword [ebp - 0x50]
xor edx, edx
div dword [0xa57340]
mov eax, dword [ebp - 0x21c]
mov eax, dword [eax + 4]
movzx edx, byte [eax + edx]
mov eax, dword [ebp - 0x214]
mov eax, dword [eax]
add eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x21c]
mov ecx, dword [ecx]
movzx ecx, byte [ecx + eax]
call fcn.004411cc
push eax
lea ecx, [ebp - 0x370]
call fcn.00455548
jmp 0x45420b
lea eax, [ebp - 0x370]
push eax
mov ecx, dword [ebp - 0x280]
call fcn.00420605
lea ecx, [ebp - 0x370]
call fcn.004205fb
jmp 0x4542d8
jmp 0x4542d8
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x290], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x288], eax
mov eax, dword [ebp + 0x30]
mov dword [ebp - 0x298], eax
push 1
push dword [ebp - 0x288]
push 0x6c
push 0x467
push dword [ebp - 0x290]
push dword [ebp - 0x298]
push 0x7550
call fcn.0044f9cb
add esp, 0x1c
pop esi
mov esp, ebp
pop ebp
ret