Function at 0x100144cf
Capabilities:
Enumerate gui resources
Parse pe header
Resolve function by parsing pe exports
Set thread local storage value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10058ba0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
sub esp, 0x574
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
cmp dword [ebp + 0x10], 0
jbe 0x10014516
movzx eax, byte [ebp + 0x14]
test eax, eax
je 0x10014516
movzx eax, word [ebp + 0x10]
push eax
push dword [ebp + 8]
call fcn.1000ebfb
pop ecx
pop ecx
jmp 0x10016a0c
mov dword [ebp - 0x34], 0xfffffff9
push 1
lea ecx, [ebp - 0x3c4]
call fcn.100048ce
and dword [ebp - 4], 0
mov dword [ebp - 0x3ac], 0xfffffffd
mov dword [ebp - 0x2c], 0
jmp 0x10014548
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 1
jge 0x10014564
push dword [ebp - 0x2c]
lea ecx, [ebp - 0x3c4]
call fcn.1000496d
mov dword [eax], 0x56a0b349
jmp 0x10014541
mov dword [ebp - 0x2c], 0
jmp 0x10014574
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 2
jge 0x1001458a
mov eax, dword [ebp - 0x2c]
mov dword [ebp + eax*4 - 0x3ec], 0xfffffffd
jmp 0x1001456d
mov dword [ebp - 0x34], 0
jmp 0x1001459a
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0xc
jne 0x10014732
mov dword [ebp - 0x88], 0xffffffff
mov dword [ebp - 0x334], 0x4f68993d
mov eax, dword [ebp - 0x88]
mov dword [ebp - 0x488], eax
mov eax, dword [ebp - 0x88]
mov dword [ebp - 0x43c], eax
mov eax, dword [ebp - 0x34]
add eax, dword [ebp - 0x88]
cmp eax, 1
jb 0x100145ea
mov dword [ebp - 0x1bc], 1
jmp 0x100145f1
and dword [ebp - 0x1bc], 0
cmp dword [ebp - 0x1bc], 0
jae 0x10014606
mov dword [ebp - 0x2ac], 1
jmp 0x1001460d
and dword [ebp - 0x2ac], 0
cmp dword [ebp - 0x2ac], 3
jge 0x10014622
mov dword [ebp - 0x2b4], 1
jmp 0x10014629
and dword [ebp - 0x2b4], 0
mov eax, dword [ebp - 0x34]
cmp eax, dword [ebp - 0x2b4]
jg 0x10014640
mov dword [ebp - 0x2bc], 1
jmp 0x10014647
and dword [ebp - 0x2bc], 0
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0x2bc], eax
jle 0x10014662
xor eax, eax
je 0x10014662
mov dword [ebp - 0x2c4], 1
jmp 0x10014669
and dword [ebp - 0x2c4], 0
mov esi, dword [ebp - 0x88]
imul esi, dword [ebp - 0x2c4]
push 0
lea ecx, [ebp - 0x3c4]
call fcn.1000496d
mov dword [eax], esi
mov eax, 0x6fc2
sub eax, 0x7d19
cmp eax, 0xfff7
ja 0x100146a2
mov dword [ebp - 0x2d4], 1
jmp 0x100146a9
and dword [ebp - 0x2d4], 0
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0x2d4], eax
jne 0x100146bd
cmp dword [ebp - 0x88], 0
je 0x100146d2
cmp dword [ebp - 0x3ac], 0
je 0x100146d2
mov dword [ebp - 0x240], 1
jmp 0x100146d9
and dword [ebp - 0x240], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x240]
dec ecx
cmp ecx, dword [ebp + eax - 0x3ec]
je 0x100146fb
mov dword [ebp - 0x2a4], 1
jmp 0x10014702
and dword [ebp - 0x2a4], 0
cmp dword [ebp - 0x2a4], 0xe56e623b
jb 0x1001471a
mov dword [ebp - 0x1a0], 1
jmp 0x10014721
and dword [ebp - 0x1a0], 0
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x334], eax
jmp 0x10014593
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3c4]
call fcn.10004951
mov dword [ebp - 0x17c], 1
mov dword [ebp - 0x2c0], 0x5596960f
mov dword [ebp - 0x2d8], 0x70ade21
mov dword [ebp - 0x168], 0xe08974b6
mov dword [ebp - 0x140], 0xa3367f5e
mov dword [ebp - 0x16c], 0
mov dword [ebp - 0x374], 0xc3c39ba0
push 1
lea ecx, [ebp - 0x3d0]
call fcn.100048ce
mov dword [ebp - 4], 1
mov dword [ebp - 0x154], 0xfffffff8
mov dword [ebp - 0x114], 0xdc99cdf9
mov dword [ebp - 0x144], 0
jmp 0x100147c8
mov eax, dword [ebp - 0x144]
inc eax
mov dword [ebp - 0x144], eax
cmp dword [ebp - 0x144], 1
jge 0x100147ea
push dword [ebp - 0x144]
lea ecx, [ebp - 0x3d0]
call fcn.1000496d
mov dword [eax], 0xfffffff8
jmp 0x100147bb
mov eax, dword [ebp - 0x154]
inc eax
mov dword [ebp - 0x154], eax
mov dword [ebp - 0x2d8], 0
cmp dword [ebp - 0x2d8], 1
je 0x10014816
mov dword [ebp - 0x1a8], 1
jmp 0x1001481d
and dword [ebp - 0x1a8], 0
mov eax, dword [ebp - 0x154]
cmp dword [ebp - 0x1a8], eax
je 0x10014837
mov dword [ebp - 0x33c], 1
jmp 0x1001483e
and dword [ebp - 0x33c], 0
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0x464], eax
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x444], eax
cmp dword [ebp - 0x114], 0x5d01
jle 0x1001486e
mov dword [ebp - 0x248], 1
jmp 0x10014875
and dword [ebp - 0x248], 0
mov eax, dword [ebp - 0x140]
cmp dword [ebp - 0x248], eax
jg 0x1001488f
mov dword [ebp - 0x1b0], 1
jmp 0x10014896
and dword [ebp - 0x1b0], 0
mov eax, dword [ebp - 0x1b0]
mov dword [ebp - 0x168], eax
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0x490], eax
mov eax, dword [ebp - 0x140]
sub eax, dword [ebp - 0x374]
sub eax, 3
cmp eax, dword [ebp - 0x140]
je 0x100148d1
mov dword [ebp - 0x298], 1
jmp 0x100148d8
and dword [ebp - 0x298], 0
mov eax, dword [ebp - 0x16c]
add eax, dword [ebp - 0x298]
cmp eax, dword [ebp - 0x140]
jl 0x100148f8
mov dword [ebp - 0x1b8], 1
jmp 0x100148ff
and dword [ebp - 0x1b8], 0
cmp dword [ebp - 0x1b8], 0xb1460dee
jae 0x10014917
mov dword [ebp - 0x1c0], 1
jmp 0x1001491e
and dword [ebp - 0x1c0], 0
mov eax, dword [ebp - 0x114]
mov dword [ebp - 0x250], eax
push 0
lea ecx, [ebp - 0x3d0]
call fcn.1000496d
mov ecx, dword [ebp - 0x250]
mov dword [eax], ecx
mov eax, dword [ebp - 0x250]
mov dword [ebp - 0x2c0], eax
mov eax, dword [ebp - 0x17c]
imul eax, dword [ebp - 0x1c0]
cmp dword [ebp - 0x2c0], eax
jg 0x1001496c
mov dword [ebp - 0x1c8], 1
jmp 0x10014973
and dword [ebp - 0x1c8], 0
mov eax, dword [ebp - 0x1c8]
sub eax, 0xfffc
cmp eax, dword [ebp - 0x17c]
jle 0x10014992
mov dword [ebp - 0x258], 1
jmp 0x10014999
and dword [ebp - 0x258], 0
mov eax, dword [ebp - 0x154]
cmp dword [ebp - 0x258], eax
jg 0x100149bc
cmp dword [ebp - 0x114], 0
je 0x100149bc
mov dword [ebp - 0x1d0], 1
jmp 0x100149c3
and dword [ebp - 0x1d0], 0
mov eax, dword [ebp - 0x1d0]
inc eax
cmp dword [ebp - 0x114], eax
jge 0x100149de
mov dword [ebp - 0x2a0], 1
jmp 0x100149e5
and dword [ebp - 0x2a0], 0
mov eax, dword [ebp - 0x16c]
cmp dword [ebp - 0x2a0], eax
je 0x100149ff
mov dword [ebp - 0x1d8], 1
jmp 0x10014a06
and dword [ebp - 0x1d8], 0
mov eax, dword [ebp - 0x1d8]
mov dword [ebp - 0x16c], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3d0]
call fcn.10004951
cmp dword [ebp + 0x10], 0
jne 0x1001613b
mov edx, dword [ebp + 8]
mov ecx, dword [ebp + 0xc]
call fcn.100081fc
mov dword [ebp - 0xe0], eax
mov dword [ebp - 0x37c], 1
mov dword [ebp - 0xd4], 0
jmp 0x10014a5f
mov eax, dword [ebp - 0xd4]
inc eax
mov dword [ebp - 0xd4], eax
cmp dword [ebp - 0xd4], 3
jge 0x10014a7b
mov eax, dword [ebp - 0xd4]
mov dword [ebp + eax*4 - 0x4b4], 0xffffffff
jmp 0x10014a52
mov byte [ebp - 0x5b], 0
movzx eax, byte [ebp - 0x5b]
test eax, eax
je 0x10014a9b
push 0x1217
push 0
push 0
push 0x2700
call dword [sym.imp.USER32.dll_RedrawWindow]
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x4b4]
mov dword [ebp - 0x37c], eax
mov dword [ebp - 0x60], 2
mov dword [ebp - 0x2f8], 0
mov dword [ebp - 0x2f4], 0
mov dword [ebp - 0x2f0], 0
mov dword [ebp - 0x2ec], 0
mov dword [ebp - 0x180], 0xcf1d65f4
mov dword [ebp - 0x3b8], 1
mov dword [ebp - 0x370], 0
mov dword [ebp - 0x12c], 0
jmp 0x10014b13
mov eax, dword [ebp - 0x12c]
inc eax
mov dword [ebp - 0x12c], eax
cmp dword [ebp - 0x12c], 4
jge 0x10014b2f
mov eax, dword [ebp - 0x12c]
mov dword [ebp + eax*4 - 0x50c], 0x63a5bed8
jmp 0x10014b06
push 4
pop eax
shl eax, 0
push 4
pop ecx
imul ecx, ecx, 3
mov ecx, dword [ebp + ecx - 0x2f8]
cmp ecx, dword [ebp + eax - 0x2f8]
jg 0x10014b57
mov dword [ebp - 0x260], 1
jmp 0x10014b5e
and dword [ebp - 0x260], 0
cmp dword [ebp - 0x260], 0xa4bedcc5
jb 0x10014b76
mov dword [ebp - 0x1e0], 1
jmp 0x10014b7d
and dword [ebp - 0x1e0], 0
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x180], eax
cmp dword [ebp - 0x180], 0
jne 0x10014b9f
push 0xfffffffffffffffa
pop eax
test eax, eax
jne 0x10014b9f
and dword [ebp - 0x3a8], 0
jmp 0x10014ba9
mov dword [ebp - 0x3a8], 1
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x44c], eax
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x3e4], eax
cmp dword [ebp - 0x180], 0
jne 0x10014bd3
cmp dword [ebp - 0x60], 0
jne 0x10014bd3
and dword [ebp - 0x3b0], 0
jmp 0x10014bdd
mov dword [ebp - 0x3b0], 1
push 4
pop eax
imul eax, eax, 3
mov eax, dword [ebp + eax - 0x2f8]
mov dword [ebp - 0x400], eax
push 4
pop eax
imul eax, eax, 3
xor ecx, ecx
inc ecx
sub ecx, dword [ebp + eax - 0x2f8]
cmp ecx, dword [ebp - 0x3b8]
jg 0x10014c14
mov dword [ebp - 0x3b4], 1
jmp 0x10014c1b
and dword [ebp - 0x3b4], 0
mov eax, dword [ebp - 0x60]
cmp dword [ebp - 0x1e0], eax
jne 0x10014c32
mov dword [ebp - 0x188], 1
jmp 0x10014c39
and dword [ebp - 0x188], 0
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x188]
mov dword [ebp + eax - 0x50c], ecx
mov eax, dword [ebp - 0x60]
cmp eax, dword [ebp - 0x188]
jle 0x10014c72
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x2f8], 0
je 0x10014c72
mov dword [ebp - 0x2cc], 1
jmp 0x10014c79
and dword [ebp - 0x2cc], 0
mov eax, dword [ebp - 0x2cc]
mov dword [ebp - 0x370], eax
mov dword [ebp - 0x484], 0x3c692bea
mov dword [ebp - 0x480], 0x3c692bea
mov dword [ebp - 0x47c], 0x3c692bea
mov dword [ebp - 0x478], 0x3c692bea
mov dword [ebp - 0xdc], 0
mov dword [ebp - 0xdc], 0
jmp 0x10014cd0
mov eax, dword [ebp - 0xdc]
inc eax
mov dword [ebp - 0xdc], eax
cmp dword [ebp - 0xdc], 3
jg 0x10014e97
push 3
lea ecx, [ebp - 0x3dc]
call fcn.100048ce
mov dword [ebp - 4], 2
mov dword [ebp - 0x1e8], 0x42f
mov dword [ebp - 0x318], str.mqffnmykh_rygqxxq_yvejnsa
cmp dword [ebp - 0x1e8], 0x4a8
jle 0x10014dc8
and dword [ebp - 0xcc], 0
jmp 0x10014d2b
mov eax, dword [ebp - 0xcc]
inc eax
mov dword [ebp - 0xcc], eax
cmp dword [ebp - 0xcc], 0x5819
jge 0x10014dbc
and dword [ebp - 0xe4], 0
jmp 0x10014d51
mov eax, dword [ebp - 0xe4]
inc eax
mov dword [ebp - 0xe4], eax
cmp dword [ebp - 0xe4], 0x52d0
jge 0x10014db7
mov eax, dword [ebp - 0xcc]
cdq
idiv dword [ebp - 0xe4]
mov eax, edx
cdq
mov dword [ebp - 0x348], eax
mov dword [ebp - 0x344], edx
push dword [ebp - 0x344]
push dword [ebp - 0x348]
lea ecx, [ebp - 0x584]
call fcn.10001a95
pop ecx
pop ecx
mov dword [ebp - 0x32c], eax
mov ecx, dword [ebp - 0x32c]
call fcn.10004684
push eax
call fcn.1003fffd
pop ecx
lea ecx, [ebp - 0x584]
call fcn.1000467a
jmp 0x10014d44
jmp 0x10014d1e
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_EnumResourceTypesW]
mov dword [ebp - 0x134], 0
jmp 0x10014de1
mov eax, dword [ebp - 0x134]
inc eax
mov dword [ebp - 0x134], eax
cmp dword [ebp - 0x134], 3
jge 0x10014e03
push dword [ebp - 0x134]
lea ecx, [ebp - 0x3dc]
call fcn.1000496d
mov dword [eax], 0xe814b733
jmp 0x10014dd4
mov byte [ebp - 4], 3
cmp dword [ebp - 0x1e8], 0x83
jge 0x10014e1f
push dword [ebp - 0x318]
call fcn.1003fffd
pop ecx
jmp 0x10014e3b
mov dword [ebp - 4], 2
jmp 0x10014e4b
mov byte [ebp - 0x59], 0
movzx eax, byte [ebp - 0x59]
test eax, eax
je 0x10014e5f
push 0
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
push 1
lea ecx, [ebp - 0x3dc]
call fcn.1000496d
mov dword [ebp - 0x268], eax
mov eax, dword [ebp - 0x268]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x268]
mov dword [ecx], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3dc]
call fcn.10004951
jmp 0x10014cc3
cmp dword [0x1062b9dc], 0
jne 0x10016109
mov dword [ebp - 0x3c], 7
mov dword [ebp - 0x7c], 1
cmp dword [ebp - 0x3c], 0
je 0x10014eca
cmp dword [ebp - 0x3c], 0
je 0x10014eca
mov dword [ebp - 0x30c], 1
jmp 0x10014ed1
and dword [ebp - 0x30c], 0
mov eax, 0x91c5534b
cmp eax, 0x6e6f7fbf
jbe 0x10014ee9
mov dword [ebp - 0x1f0], 1
jmp 0x10014ef0
and dword [ebp - 0x1f0], 0
mov eax, dword [ebp - 0x3c]
cmp eax, dword [ebp - 0x1f0]
je 0x10014f07
mov dword [ebp - 0x2a8], 1
jmp 0x10014f0e
and dword [ebp - 0x2a8], 0
mov eax, dword [ebp - 0x2a8]
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x7c], 0x15
jmp 0x10014f27
mov eax, dword [ebp - 0x7c]
dec eax
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 0xfffffffb
jg 0x10015070
mov byte [ebp - 0x45], 0
movzx eax, byte [ebp - 0x45]
test eax, eax
je 0x10014f51
push 0
push 0
push 0x1ff9
push 0x1a05
call dword [sym.imp.USER32.dll_DefWindowProcA]
mov dword [ebp - 0x3c], 0
jmp 0x10014f61
mov eax, dword [ebp - 0x3c]
dec eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0xfffffff8
jge 0x1001506b
mov dword [ebp - 0xec], 0
jmp 0x10014f84
mov eax, dword [ebp - 0xec]
inc eax
mov dword [ebp - 0xec], eax
cmp dword [ebp - 0xec], 2
jge 0x10014fa0
mov eax, dword [ebp - 0xec]
mov dword [ebp + eax*4 - 0x3f8], 0xfffffff6
jmp 0x10014f77
cmp dword [ebp - 0x3c], 0
je 0x10015003
mov dword [ebp - 0x110], 4
mov dword [ebp - 0x110], 1
jmp 0x10014fc9
mov eax, dword [ebp - 0x110]
dec eax
mov dword [ebp - 0x110], eax
cmp dword [ebp - 0x110], 0
jl 0x10015001
mov byte [ebp - 0x3e], 0
movzx eax, byte [ebp - 0x3e]
test eax, eax
je 0x10014fe8
push 0
push 0
call dword [sym.imp.KERNEL32.dll_TlsSetValue]
mov byte [ebp - 0x3f], 0
movzx eax, byte [ebp - 0x3f]
test eax, eax
je 0x10014fff
push 0x2445
call dword [sym.imp.GDI32.dll_RealizePalette]
jmp 0x10014fbc
jmp 0x10015051
mov dword [ebp - 0xf4], 3
mov dword [ebp - 0xf4], 0
jmp 0x10015026
mov eax, dword [ebp - 0xf4]
inc eax
mov dword [ebp - 0xf4], eax
cmp dword [ebp - 0xf4], 0x1b
jle 0x10015051
mov byte [ebp - 0x5a], 0
movzx eax, byte [ebp - 0x5a]
test eax, eax
je 0x1001504f
push 0
push 0x25a1
push 0x3b5
push 0
call dword [sym.imp.GDI32.dll_SetPaletteEntries]
jmp 0x10015019
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x3f8], 0
je 0x10015066
jmp 0x10014f5a
jmp 0x10014f5a
jmp 0x10014f20
mov dword [ebp - 0x320], 0x8988
lea eax, [ebp - 0x320]
push eax
call fcn.1000ebba
pop ecx
mov dword [ebp - 0x24c], eax
mov dword [ebp - 0x270], 0x6310feca
mov dword [ebp - 0x10c], 0x9edca8fe
mov dword [ebp - 0x2c8], 0xffffffff
mov dword [ebp - 0x280], 0x7ad53a38
mov dword [ebp - 0x1f8], 0x6b12
mov dword [ebp - 0x328], str.szjagtni_ffxiul_kyrkkt
cmp dword [ebp - 0x1f8], 0x6d24
jle 0x100151e1
and dword [ebp - 0x118], 0
jmp 0x100150ef
mov eax, dword [ebp - 0x118]
inc eax
mov dword [ebp - 0x118], eax
cmp dword [ebp - 0x118], 0x7071
jge 0x100151e1
and dword [ebp - 0xfc], 0
jmp 0x10015115
mov eax, dword [ebp - 0xfc]
inc eax
mov dword [ebp - 0xfc], eax
cmp dword [ebp - 0xfc], 0x3ac1
jge 0x100151dc
and dword [ebp - 0x120], 0
jmp 0x1001513b
mov eax, dword [ebp - 0x120]
inc eax
mov dword [ebp - 0x120], eax
cmp dword [ebp - 0x120], 0x50ac
jge 0x100151d7
and dword [ebp - 0x104], 0
jmp 0x10015161
mov eax, dword [ebp - 0x104]
inc eax
mov dword [ebp - 0x104], eax
cmp dword [ebp - 0x104], 0x1b09
jge 0x100151d2
mov eax, dword [ebp - 0x118]
add eax, dword [ebp - 0xfc]
add eax, dword [ebp - 0x120]
mov ecx, dword [ebp - 0x104]
sar eax, cl
cdq
mov dword [ebp - 0x354], eax
mov dword [ebp - 0x350], edx
push dword [ebp - 0x350]
push dword [ebp - 0x354]
lea ecx, [ebp - 0x554]
call fcn.10001a95
pop ecx
pop ecx
mov dword [ebp - 0x378], eax
mov ecx, dword [ebp - 0x378]
call fcn.10004684
push eax
call fcn.1003fffd
pop ecx
lea ecx, [ebp - 0x554]
call fcn.1000467a
jmp 0x10015154
jmp 0x1001512e
jmp 0x10015108
jmp 0x100150e2
mov dword [ebp - 4], 5
cmp dword [ebp - 0x1f8], 0x69aa
jge 0x10015200
push dword [ebp - 0x328]
call fcn.1003fffd
pop ecx
jmp 0x1001521c
or dword [ebp - 4], 0xffffffff
jmp 0x10015226
mov dword [ebp - 0x128], 0
jmp 0x1001523f
mov eax, dword [ebp - 0x128]
inc eax
mov dword [ebp - 0x128], eax
cmp dword [ebp - 0x128], 2
jge 0x1001525b
mov eax, dword [ebp - 0x128]
mov dword [ebp + eax*4 - 0x14c], 0xf73838a1
jmp 0x10015232
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x14c]
mov dword [ebp - 0x408], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x14c]
mov dword [ebp - 0x10c], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x14c]
inc eax
cmp dword [ebp - 0x10c], eax
jl 0x100152b3
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x14c], 0
je 0x100152b3
mov dword [ebp - 0x3a4], 1
jmp 0x100152ba
and dword [ebp - 0x3a4], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x14c]
mov dword [ebp - 0x410], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x14c]
mov dword [ebp - 0x270], eax
mov eax, dword [ebp - 0x270]
cmp eax, dword [ebp - 0x10c]
jge 0x10015301
push 3
pop eax
test eax, eax
je 0x10015301
mov dword [ebp - 0x200], 1
jmp 0x10015308
and dword [ebp - 0x200], 0
mov eax, dword [ebp - 0x200]
mov dword [ebp - 0x2c8], eax
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x2c8]
cmp ecx, dword [ebp + eax - 0x14c]
jl 0x10015335
mov dword [ebp - 0x208], 1
jmp 0x1001533c
and dword [ebp - 0x208], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x14c]
cmp dword [ebp - 0x208], eax
jg 0x1001535d
mov dword [ebp - 0x278], 1
jmp 0x10015364
and dword [ebp - 0x278], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x14c]
cmp dword [ebp - 0x278], eax
jle 0x10015385
mov dword [ebp - 0x210], 1
jmp 0x1001538c
and dword [ebp - 0x210], 0
cmp dword [ebp - 0x210], 0xfe04
jl 0x100153a4
mov dword [ebp - 0x2b0], 1
jmp 0x100153ab
and dword [ebp - 0x2b0], 0
cmp dword [ebp - 0x2b0], 0xa05d
jne 0x100153c3
mov dword [ebp - 0x218], 1
jmp 0x100153ca
and dword [ebp - 0x218], 0
mov eax, dword [ebp - 0x218]
mov dword [ebp - 0x280], eax
mov eax, dword [ebp - 0x280]
mov dword [ebp - 0x10c], eax
mov dword [ebp - 0x330], 1
mov dword [ebp - 0x74], 0x252cb136
mov dword [ebp - 0x130], 0
jmp 0x1001540c
mov eax, dword [ebp - 0x130]
inc eax
mov dword [ebp - 0x130], eax
cmp dword [ebp - 0x130], 1
jge 0x10015428
mov eax, dword [ebp - 0x130]
mov dword [ebp + eax*4 - 0x380], 0xffff
jmp 0x100153ff
mov eax, dword [ebp - 0x330]
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x74], 0
jmp 0x10015441
mov eax, dword [ebp - 0x74]
inc eax
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 1
jge 0x10015457
mov eax, dword [ebp - 0x74]
mov dword [ebp + eax*4 - 0x380], 0xffff
jmp 0x1001543a
mov byte [ebp - 0xac], 2
mov byte [ebp - 0xab], 0x7a
mov byte [ebp - 0xaa], 0xc
mov byte [ebp - 0xa9], 0x23
mov byte [ebp - 0xa8], 9
mov byte [ebp - 0xa7], 0x39
mov byte [ebp - 0xa6], 4
mov byte [ebp - 0xa5], 0xf7
mov byte [ebp - 0xa4], 0x22
mov byte [ebp - 0xa3], 0xb2
mov byte [ebp - 0xa2], 0x3c
mov byte [ebp - 0xa1], 7
mov byte [ebp - 0xa0], 7
mov byte [ebp - 0x9f], 0
mov byte [ebp - 0x9e], 0x2e
mov byte [ebp - 0x9d], 5
mov byte [ebp - 0x9c], 0x35
mov byte [ebp - 0x9b], 1
mov byte [ebp - 0x9a], 0x17
mov byte [ebp - 0x99], 4
mov byte [ebp - 0x98], 0
mov byte [ebp - 0x97], 3
mov byte [ebp - 0x96], 0x33
mov byte [ebp - 0x95], 0xa
mov byte [ebp - 0x94], 0x13
mov byte [ebp - 0x93], 0xb
mov byte [ebp - 0x92], 0x3d
mov byte [ebp - 0x91], 6
mov byte [ebp - 0x90], 0xb
mov byte [ebp - 0x8f], 8
mov byte [ebp - 0x8e], 0x1c
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0xac]
and eax, 0xe
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0xac]
or ecx, 0xe
sub ecx, eax
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0xac]
mov byte [ebp + eax - 0x2e8], cl
mov dword [ebp - 0x14], 2
and dword [ebp - 0x84], 0
jmp 0x10015581
mov eax, dword [ebp - 0x14]
inc eax
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x1f
jae 0x1001565f
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0xac]
lea eax, [eax + eax + 2]
cmp dword [ebp - 0x14], eax
jne 0x100155cb
mov eax, dword [ebp - 0x14]
movzx eax, byte [ebp + eax - 0xac]
inc eax
mov dword [ebp - 0x84], eax
mov eax, dword [ebp - 0x14]
movzx eax, byte [ebp + eax - 0xac]
mov ecx, dword [ebp - 0x14]
lea eax, [ecx + eax - 1]
mov dword [ebp - 0x14], eax
jmp 0x10015579
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x84]
movzx eax, byte [ebp + eax - 0xae]
movsx eax, byte [ebp + eax - 0x2e8]
mov ecx, dword [ebp - 0x14]
movzx ecx, byte [ebp + ecx - 0xab]
and ecx, eax
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x84]
movzx eax, byte [ebp + eax - 0xae]
movsx eax, byte [ebp + eax - 0x2e8]
mov edx, dword [ebp - 0x14]
movzx edx, byte [ebp + edx - 0xab]
and edx, eax
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x84]
movzx eax, byte [ebp + eax - 0xae]
movsx eax, byte [ebp + eax - 0x2e8]
mov esi, dword [ebp - 0x14]
movzx ebx, byte [ebp + esi - 0xab]
add ebx, eax
sub ebx, edx
sub ebx, ecx
mov eax, dword [ebp - 0x14]
movzx eax, byte [ebp + eax - 0xac]
mov byte [ebp + eax - 0x2e8], bl
and dword [ebp - 0x84], 0
jmp 0x10015579
xor eax, eax
inc eax
imul eax, eax, 0xd
mov byte [ebp + eax - 0x2e8], 0
lea eax, [ebp - 0x2e8]
push eax
lea ecx, [ebp - 0x524]
call fcn.10017ac4
mov dword [ebp - 0x338], eax
mov eax, dword [ebp - 0x338]
mov dword [ebp - 0x394], eax
mov dword [ebp - 4], 7
mov edx, dword [ebp - 0x24c]
mov ecx, dword [ebp - 0x394]
call fcn.100081fc
mov dword [0x1062b9dc], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x524]
call fcn.10017af3
push 2
lea ecx, [ebp - 0x164]
call fcn.100048ce
mov dword [ebp - 4], 8
mov dword [ebp - 0x44], 5
mov dword [ebp - 0x184], 0xb839
mov dword [ebp - 0x34c], 5
mov dword [ebp - 0x28], 0
jmp 0x100156fc
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 2
jge 0x10015712
mov eax, dword [ebp - 0x28]
mov dword [ebp + eax*4 - 0x190], 0x8bbca631
jmp 0x100156f5
mov dword [ebp - 0x28], 0
jmp 0x10015722
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 2
jge 0x1001573e
push dword [ebp - 0x28]
lea ecx, [ebp - 0x164]
call fcn.1000496d
mov dword [eax], 1
jmp 0x1001571b
push 1
lea ecx, [ebp - 0x164]
call fcn.1000496d
mov dword [eax], 1
jmp 0x10015777
push 1
lea ecx, [ebp - 0x164]
call fcn.1000496d
mov dword [ebp - 0x220], eax
mov eax, dword [ebp - 0x220]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x220]
mov dword [ecx], eax
push 1
lea ecx, [ebp - 0x164]
call fcn.1000496d
cmp dword [eax], 0
jl 0x10015c51
mov dword [ebp - 0x18], 0xa18e418a
mov dword [ebp - 0x78], 0x3813bf58
mov dword [ebp - 0x20c], 0xc50ed6ca
push 1
lea ecx, [ebp - 0x164]
call fcn.1000496d
cmp dword [ebp - 0x18], 0
je 0x100157c9
or eax, 0xffffffff
je 0x100157c9
mov dword [ebp - 0x2d0], 1
jmp 0x100157d0
and dword [ebp - 0x2d0], 0
push 1
lea ecx, [ebp - 0x164]
call fcn.1000496d
mov eax, dword [eax]
cmp eax, dword [ebp - 0x2d0]
jne 0x100157f3
mov dword [ebp - 0x228], 1
jmp 0x100157fa
and dword [ebp - 0x228], 0
push 1
lea ecx, [ebp - 0x164]
call fcn.1000496d
mov ecx, dword [ebp - 0x228]
cmp ecx, dword [eax]
jg 0x1001581d
mov dword [ebp - 0x288], 1
jmp 0x10015824
and dword [ebp - 0x288], 0
cmp dword [ebp - 0x288], 0x921ded68
jb 0x10015842
cmp dword [ebp - 0x18], 0
je 0x10015842
mov dword [ebp - 0x230], 1
jmp 0x10015849
and dword [ebp - 0x230], 0
cmp dword [ebp - 0x230], 0
je 0x1001585d
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x44], eax
jmp 0x10015adb
mov dword [ebp - 0x8c], 0x21f20595
mov dword [ebp - 0x390], 3
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x78]
jge 0x1001588b
mov dword [ebp - 0x1ac], 1
jmp 0x10015892
and dword [ebp - 0x1ac], 0
mov eax, dword [ebp - 0x18]
add eax, 0xaa96
cmp eax, 0xd71b
je 0x100158b3
mov eax, 0x3846
test eax, eax
jne 0x100158b3
and dword [ebp - 0x340], 0
jmp 0x100158bd
mov dword [ebp - 0x340], 1
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x418], eax
mov eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x18]
jg 0x100158dd
mov dword [ebp - 0x2b8], 1
jmp 0x100158e4
and dword [ebp - 0x2b8], 0
mov eax, dword [ebp - 0x2b8]
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0x811ffbe6
jae 0x10015902
mov dword [ebp - 0x238], 1
jmp 0x10015909
and dword [ebp - 0x238], 0
push 1
lea ecx, [ebp - 0x164]
call fcn.1000496d
mov ecx, dword [ebp - 0x238]
cmp ecx, dword [eax]
je 0x1001592c
mov dword [ebp - 0x290], 1
jmp 0x10015933
and dword [ebp - 0x290], 0
mov eax, dword [ebp - 0x184]
imul eax, dword [ebp - 0x290]
cmp eax, dword [ebp - 0x8c]
jge 0x10015954
mov dword [ebp - 0x198], 1
jmp 0x1001595b
and dword [ebp - 0x198], 0
mov eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x198]
jle 0x10015972
mov dword [ebp - 0x19c], 1
jmp 0x10015979
and dword [ebp - 0x19c], 0
mov eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x19c]
jg 0x10015990
mov dword [ebp - 0x1a4], 1
jmp 0x10015997
and dword [ebp - 0x1a4], 0
mov eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x1a4]
jne 0x100159bb
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x190], 0
jne 0x100159bb
and dword [ebp - 0x1b4], 0
jmp 0x100159c5
mov dword [ebp - 0x1b4], 1
mov eax, dword [ebp - 0x1ac]
cmp eax, dword [ebp - 0x1b4]
jne 0x100159df
mov dword [ebp - 0x194], 1
jmp 0x100159e6
and dword [ebp - 0x194], 0
mov eax, dword [ebp - 0x194]
sub eax, dword [ebp - 0x18]
je 0x10015a06
mov eax, 0xec8f9491
test eax, eax
je 0x10015a06
mov dword [ebp - 0x1c4], 1
jmp 0x10015a0d
and dword [ebp - 0x1c4], 0
mov eax, dword [ebp - 0x8c]
cmp dword [ebp - 0x1c4], eax
jl 0x10015a27
mov dword [ebp - 0x1cc], 1
jmp 0x10015a2e
and dword [ebp - 0x1cc], 0
mov eax, dword [ebp - 0x1cc]
sub eax, dword [ebp - 0x18]
je 0x10015a4e
cmp dword [ebp - 0x8c], 0
je 0x10015a4e
mov dword [ebp - 0x1d4], 1
jmp 0x10015a55
and dword [ebp - 0x1d4], 0
mov eax, dword [ebp - 0x8c]
cmp dword [ebp - 0x1d4], eax
jg 0x10015a6c
cmp dword [ebp - 0x8c], 0
je 0x10015a7d
or eax, 0xffffffff
je 0x10015a7d
mov dword [ebp - 0x1dc], 1
jmp 0x10015a84
and dword [ebp - 0x1dc], 0
push 0
lea ecx, [ebp - 0x164]
call fcn.1000496d
mov ecx, dword [ebp - 0x1dc]
cmp ecx, dword [eax]
jle 0x10015aa7
mov dword [ebp - 0x1e4], 1
jmp 0x10015aae
and dword [ebp - 0x1e4], 0
mov eax, dword [ebp - 0x1e4]
inc eax
cmp eax, 0xbb265d63
jbe 0x10015ac8
mov dword [ebp - 0x1ec], 1
jmp 0x10015acf
and dword [ebp - 0x1ec], 0
mov eax, dword [ebp - 0x1ec]
mov dword [ebp - 0x390], eax
cmp dword [ebp - 0x78], 8
jbe 0x10015aed
mov dword [ebp - 0x22c], 1
jmp 0x10015af4
and dword [ebp - 0x22c], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x190]
mov dword [ebp - 0x420], eax
push 0
lea ecx, [ebp - 0x164]
call fcn.1000496d
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0
jne 0x10015b2f
cmp dword [ebp - 0x44], 0
jne 0x10015b2f
and dword [ebp - 0x1f4], 0
jmp 0x10015b39
mov dword [ebp - 0x1f4], 1
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x190]
imul eax, dword [ebp - 0x1f4]
test eax, eax
jne 0x10015b63
push 0
lea ecx, [ebp - 0x164]
call fcn.1000496d
cmp dword [eax], 0
je 0x10015b75
cmp dword [ebp - 0x78], 0
je 0x10015b75
mov dword [ebp - 0x1fc], 1
jmp 0x10015b7c
and dword [ebp - 0x1fc], 0
cmp dword [ebp - 0x1fc], 2
jne 0x10015b91
mov dword [ebp - 0x204], 1
jmp 0x10015b98
and dword [ebp - 0x204], 0
mov eax, dword [ebp - 0x204]
sub eax, dword [ebp - 0x184]
mov dword [ebp - 0x20c], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x190]
cmp eax, dword [ebp - 0x20c]
jne 0x10015bcb
mov dword [ebp - 0x214], 1
jmp 0x10015bd2
and dword [ebp - 0x214], 0
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x214], eax
jl 0x10015be9
mov dword [ebp - 0x21c], 1
jmp 0x10015bf0
and dword [ebp - 0x21c], 0
push 4
pop eax
imul eax, eax, 0
imul ecx, dword [ebp - 0x21c], 0x4cec
cmp ecx, dword [ebp + eax - 0x190]
jl 0x10015c15
mov dword [ebp - 0x224], 1
jmp 0x10015c1c
and dword [ebp - 0x224], 0
mov eax, dword [ebp - 0x78]
add eax, dword [ebp - 0x224]
cmp dword [ebp - 0x22c], eax
jge 0x10015c39
mov dword [ebp - 0x234], 1
jmp 0x10015c40
and dword [ebp - 0x234], 0
mov eax, dword [ebp - 0x234]
mov dword [ebp - 0x34c], eax
jmp 0x10015753
push 4
pop eax
imul eax, eax, 0
mov esi, dword [ebp + eax - 0x190]
sub esi, dword [ebp - 0x44]
push 1
lea ecx, [ebp - 0x164]
call fcn.1000496d
mov dword [eax], esi
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x164]
call fcn.10004951
and dword [ebp - 0x138], 0
jmp 0x10015c95
mov eax, dword [ebp - 0x138]
inc eax
mov dword [ebp - 0x138], eax
cmp dword [ebp - 0x138], 0xe
jae 0x10015cae
mov eax, dword [ebp - 0x138]
mov byte [ebp + eax - 0x2e8], 0
jmp 0x10015c88
mov byte [ebp - 0xc8], 6
mov byte [ebp - 0xc7], 0x4f
mov byte [ebp - 0xc6], 9
mov byte [ebp - 0xc5], 0x33
mov byte [ebp - 0xc4], 3
mov byte [ebp - 0xc3], 2
mov byte [ebp - 0xc2], 0xc
mov byte [ebp - 0xc1], 0x12
mov byte [ebp - 0xc0], 0
mov byte [ebp - 0xbf], 0x30
mov byte [ebp - 0xbe], 2
mov byte [ebp - 0xbd], 0x26
mov byte [ebp - 0xbc], 1
mov byte [ebp - 0xbb], 0x17
mov byte [ebp - 0xba], 5
mov byte [ebp - 0xb9], 0x17
mov byte [ebp - 0xb8], 0xd
mov byte [ebp - 0xb7], 0x32
mov byte [ebp - 0xb6], 4
mov byte [ebp - 0xb5], 0x23
mov byte [ebp - 0xb4], 0xb
mov byte [ebp - 0xb3], 7
mov byte [ebp - 0xb2], 8
mov byte [ebp - 0xb1], 0x1c
mov byte [ebp - 0xb0], 0xa
mov byte [ebp - 0xaf], 0xa
mov byte [ebp - 0xae], 7
mov byte [ebp - 0xad], 0x17
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0xc8]
and eax, 0x1f
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0xc8]
or ecx, 0x1f
sub ecx, eax
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0xc8]
mov byte [ebp + eax - 0x308], cl
mov dword [ebp - 0x20], 2
and dword [ebp - 0x170], 0
jmp 0x10015dc3
mov eax, dword [ebp - 0x20]
inc eax
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x1c
jae 0x10015e5a
mov eax, dword [ebp - 0x20]
sub eax, dword [ebp - 0x170]
movzx eax, byte [ebp + eax - 0xca]
movsx eax, byte [ebp + eax - 0x308]
mov ecx, dword [ebp - 0x20]
movzx ecx, byte [ebp + ecx - 0xc7]
and ecx, eax
mov eax, dword [ebp - 0x20]
sub eax, dword [ebp - 0x170]
movzx eax, byte [ebp + eax - 0xca]
movsx eax, byte [ebp + eax - 0x308]
mov edx, dword [ebp - 0x20]
movzx edx, byte [ebp + edx - 0xc7]
and edx, eax
mov eax, dword [ebp - 0x20]
sub eax, dword [ebp - 0x170]
movzx eax, byte [ebp + eax - 0xca]
movsx eax, byte [ebp + eax - 0x308]
mov esi, dword [ebp - 0x20]
movzx ebx, byte [ebp + esi - 0xc7]
add ebx, eax
sub ebx, edx
sub ebx, ecx
mov eax, dword [ebp - 0x20]
movzx eax, byte [ebp + eax - 0xc8]
mov byte [ebp + eax - 0x308], bl
jmp 0x10015dbb
xor eax, eax
inc eax
imul eax, eax, 0xe
mov byte [ebp + eax - 0x308], 0
mov dword [ebp - 0x428], 0x39b642c
mov dword [ebp - 0x460], 0x3d837bc7
mov dword [ebp - 0x468], 0x71d976ff
mov dword [ebp - 0x470], 0x1ca2961c
mov dword [ebp - 0x48c], 0xe307b5ca
mov dword [ebp - 0x434], 0xfffffff8
mov dword [ebp - 0x46c], 0x5a1fa147
mov dword [ebp - 0x3f0], 0x9e3cf957
mov dword [ebp - 0x454], 4
mov dword [ebp - 0x3fc], 5
mov dword [ebp - 0x3e0], 0
mov dword [ebp - 0x404], 0xfffffffd
mov dword [ebp - 0x45c], 0x8cf5a8b
mov dword [ebp - 0x40c], 0
mov dword [ebp - 0x430], 0xb6fe6d39
mov dword [ebp - 0x414], 1
mov dword [ebp - 0x23c], 0x3ae5
mov dword [ebp - 0x358], str.wrjav_fjag_wxbxnyjrj_xthtmzy_mqszlc_ugrpwmg_oktk_wfliap
cmp dword [ebp - 0x23c], 0x3c85
jle 0x10015fd2
and dword [ebp - 0x158], 0
jmp 0x10015f42
mov eax, dword [ebp - 0x158]
inc eax
mov dword [ebp - 0x158], eax
cmp dword [ebp - 0x158], 0x2d6b
jge 0x10015fd2
and dword [ebp - 0x11c], 0
jmp 0x10015f68
mov eax, dword [ebp - 0x11c]
inc eax
mov dword [ebp - 0x11c], eax
cmp dword [ebp - 0x11c], 0x6832
jge 0x10015fcd
mov eax, dword [ebp - 0x158]
mov ecx, dword [ebp - 0x11c]
sar eax, cl
cdq
mov dword [ebp - 0x360], eax
mov dword [ebp - 0x35c], edx
push dword [ebp - 0x35c]
push dword [ebp - 0x360]
lea ecx, [ebp - 0x56c]
call fcn.10001a95
pop ecx
pop ecx
mov dword [ebp - 0x398], eax
mov ecx, dword [ebp - 0x398]
call fcn.10004684
push eax
call fcn.1003fffd
pop ecx
lea ecx, [ebp - 0x56c]
call fcn.1000467a
jmp 0x10015f5b
jmp 0x10015f35
mov dword [ebp - 4], 9
cmp dword [ebp - 0x23c], 0x38ac
jge 0x10015ff1
push dword [ebp - 0x358]
call fcn.1003fffd
pop ecx
jmp 0x1001600d
or dword [ebp - 4], 0xffffffff
jmp 0x10016017
mov dword [ebp - 0x244], 0
mov dword [ebp - 0x438], 0x3b8a277e
mov dword [ebp - 0x13c], 0
jmp 0x10016044
mov eax, dword [ebp - 0x13c]
inc eax
mov dword [ebp - 0x13c], eax
cmp dword [ebp - 0x13c], 1
jge 0x10016060
mov eax, dword [ebp - 0x13c]
mov dword [ebp + eax*4 - 0x41c], 1
jmp 0x10016037
mov byte [ebp - 0x40], 0
movzx eax, byte [ebp - 0x40]
test eax, eax
je 0x1001607d
push 0
push 0
push 0
push 0x879
call dword [sym.imp.USER32.dll_SetWindowsHookExA]
mov eax, dword [ebp - 0x244]
dec eax
mov dword [ebp - 0x244], eax
lea eax, [ebp - 0x308]
push eax
lea ecx, [ebp - 0x53c]
call fcn.10017ac4
mov dword [ebp - 0x3a0], eax
mov eax, dword [ebp - 0x3a0]
mov dword [ebp - 0x364], eax
mov dword [ebp - 4], 0xb
mov edx, dword [ebp - 0x24c]
mov ecx, dword [ebp - 0x364]
call fcn.100081fc
mov dword [0x1062ba00], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x53c]
call fcn.10017af3
and dword [ebp - 0x124], 0
jmp 0x100160f0
mov eax, dword [ebp - 0x124]
inc eax
mov dword [ebp - 0x124], eax
cmp dword [ebp - 0x124], 0xf
jae 0x10016109
mov eax, dword [ebp - 0x124]
mov byte [ebp + eax - 0x308], 0
jmp 0x100160e3
mov eax, dword [0x1062b9dc]
cmp eax, dword [ebp - 0xe0]
je 0x10016123
mov eax, dword [0x1062ba00]
cmp eax, dword [ebp - 0xe0]
jne 0x1001613b
mov ecx, dword [ebp + 0xc]
call fcn.10004684
push eax
push dword [ebp + 8]
call fcn.1000ebfb
pop ecx
pop ecx
jmp 0x10016a0c
mov eax, dword [ebp + 8]
mov dword [ebp - 0xd8], eax
mov dword [ebp - 0xd0], 0
push 1
lea ecx, [ebp - 0x38c]
call fcn.100048ce
mov dword [ebp - 4], 0xc
mov dword [ebp - 0x174], 0x454b
mov dword [ebp - 0x39c], 0xeea53061
mov dword [ebp - 0x26c], 6
mov dword [ebp - 0x150], 0
jmp 0x10016199
mov eax, dword [ebp - 0x150]
inc eax
mov dword [ebp - 0x150], eax
cmp dword [ebp - 0x150], 1
jge 0x100161b8
push dword [ebp - 0x150]
lea ecx, [ebp - 0x38c]
call fcn.1000496d
and dword [eax], 0
jmp 0x1001618c
mov eax, dword [ebp - 0xd0]
mov dword [ebp - 0x440], eax
mov esi, dword [ebp - 0xd0]
push 0
lea ecx, [ebp - 0x38c]
call fcn.1000496d
mov dword [eax], esi
mov esi, dword [ebp - 0x174]
mov edi, dword [ebp - 0xd0]
push 0
lea ecx, [ebp - 0x38c]
call fcn.1000496d
imul eax, dword [eax], 0xfffa
add eax, edi
cmp eax, esi
jle 0x1001620a
mov dword [ebp - 0x254], 1
jmp 0x10016211
and dword [ebp - 0x254], 0
mov eax, dword [ebp - 0xd0]
cmp eax, dword [ebp - 0x254]
je 0x1001622b
mov dword [ebp - 0x25c], 1
jmp 0x10016232
and dword [ebp - 0x25c], 0
cmp dword [ebp - 0x25c], 6
jg 0x10016247
mov dword [ebp - 0x264], 1
jmp 0x1001624e
and dword [ebp - 0x264], 0
imul eax, dword [ebp - 0x264], 0xffffffff
mov dword [ebp - 0x39c], eax
mov eax, dword [ebp - 0x26c]
mov dword [ebp - 0x424], eax
mov eax, dword [ebp - 0x174]
mov dword [ebp - 0x448], eax
mov eax, dword [ebp - 0x26c]
mov dword [ebp - 0x42c], eax
push 0
lea ecx, [ebp - 0x38c]
call fcn.1000496d
cmp dword [ebp - 0x174], 0xfffffffe
je 0x100162a1
mov dword [ebp - 0x274], 1
jmp 0x100162a8
and dword [ebp - 0x274], 0
cmp dword [ebp - 0x274], 1
jg 0x100162c7
mov dword [ebp - 0x310], 0xec352115
mov dword [ebp - 0x310], 0xfffffff8
jmp 0x1001630c
mov byte [ebp - 0x3d], 0
movzx eax, byte [ebp - 0x3d]
test eax, eax
je 0x1001630c
push 0
push 0x2181
push 0x65
push 0
push 0x151f
push 0x423
push 0x181d
push 0x1330
push 0x2021
push 0x265a
push 0x51e
push 0x9e9
call dword [sym.imp.GDI32.dll_MaskBlt]
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x38c]
call fcn.10004951
cmp dword [ebp - 0xd8], 0
je 0x10016a0a
mov eax, dword [ebp - 0xd8]
movzx eax, word [eax]
cmp eax, 0x5a4d
jne 0x10016a0a
mov eax, dword [ebp - 0xd8]
mov ecx, dword [ebp - 0xd8]
add ecx, dword [eax + 0x3c]
mov dword [ebp - 0x80], ecx
mov eax, dword [ebp - 0x80]
cmp dword [eax], 0x4550
jne 0x10016a0a
mov eax, dword [ebp - 0x80]
cmp dword [eax + 0x74], 0
jbe 0x10016a0a
push 8
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x80]
cmp dword [ecx + eax + 0x78], 0
je 0x10016a0a
mov eax, dword [ebp + 8]
mov dword [ebp - 0x68], eax
push 8
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x80]
mov edx, dword [ebp - 0x68]
add edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x30], edx
mov eax, 0xffff
mov word [ebp - 0x24], ax
or dword [ebp - 0x64], 0xffffffff
cmp dword [ebp + 0x10], 0
jbe 0x100163c2
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp + 0x10]
cmp ecx, dword [eax + 0x14]
ja 0x100163bd
mov eax, dword [ebp + 0x10]
dec eax
mov word [ebp - 0x24], ax
jmp 0x1001655e
mov eax, dword [0x1062ba04]
and eax, 1
jne 0x100163f9
mov eax, dword [0x1062ba04]
or eax, 1
mov dword [0x1062ba04], eax
mov dword [ebp - 4], 0xd
mov ecx, 0x1062ba9c
call fcn.10017b63
push 0x10059c30
call fcn.1003ffd2
pop ecx
or dword [ebp - 4], 0xffffffff
movzx eax, byte [0x1062b9d9]
test eax, eax
je 0x10016462
mov ecx, 0x1062ba9c
call fcn.10017c28
movzx eax, al
test eax, eax
jne 0x10016462
lea eax, [ebp - 0xe0]
push eax
lea eax, [ebp - 0x27c]
push eax
mov ecx, 0x1062ba9c
call fcn.10017c31
lea eax, [ebp - 0x450]
push eax
mov ecx, 0x1062ba9c
call fcn.10017c1a
push eax
lea ecx, [ebp - 0x27c]
call fcn.10017b50
movzx eax, al
test eax, eax
je 0x10016462
lea ecx, [ebp - 0x27c]
call fcn.10017c46
mov eax, dword [eax + 4]
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 0xffffffff
jne 0x1001655e
mov ecx, 0x1062ba9c
call fcn.10017c8a
mov ecx, dword [ebp - 0x30]
add eax, dword [ecx + 0x18]
push eax
mov ecx, 0x1062ba9c
call fcn.10017c8e
and dword [ebp - 0x6c], 0
jmp 0x10016494
mov eax, dword [ebp - 0x6c]
inc eax
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x6c]
cmp ecx, dword [eax + 0x18]
jae 0x1001655e
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x68]
add ecx, dword [eax + 0x20]
mov eax, dword [ebp - 0x6c]
lea eax, [ecx + eax*4]
mov dword [ebp - 0x284], eax
cmp dword [ebp - 0x284], 0
je 0x10016559
mov eax, dword [ebp - 0x284]
mov ecx, dword [ebp - 0x68]
add ecx, dword [eax]
push ecx
lea ecx, [ebp - 0x4fc]
call fcn.10017ac4
mov dword [ebp - 4], 0xe
mov edx, dword [ebp + 8]
lea ecx, [ebp - 0x4fc]
call fcn.100081fc
mov dword [ebp - 0x28c], eax
movzx eax, byte [0x1062b9d9]
test eax, eax
je 0x10016513
mov ecx, 0x1062ba9c
call fcn.10017c28
movzx eax, al
test eax, eax
jne 0x10016530
lea eax, [ebp - 0x28c]
push eax
mov ecx, 0x1062ba9c
call fcn.10017c4c
mov ecx, dword [ebp - 0x6c]
mov dword [eax], ecx
mov byte [0x1062b9d9], 1
cmp dword [ebp - 0x64], 0xffffffff
jne 0x1001654a
mov eax, dword [ebp - 0x28c]
cmp eax, dword [ebp - 0xe0]
jne 0x1001654a
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x64], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x4fc]
call fcn.10017af3
jmp 0x1001648d
cmp dword [ebp + 0x10], 0
jne 0x1001657e
cmp dword [ebp - 0x64], 0xffffffff
je 0x1001657e
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x68]
add ecx, dword [eax + 0x24]
mov eax, dword [ebp - 0x64]
mov ax, word [ecx + eax*2]
mov word [ebp - 0x24], ax
mov dword [ebp - 0x29c], 0x161c
mov dword [ebp - 0x324], str.acix_ueur_vkpliixuv_emwcnww_bzvcq_jbzcl_hydfgzi_qitcqxemv_dwioxodu
cmp dword [ebp - 0x29c], 0x1641
jle 0x1001664e
and dword [ebp - 0xe8], 0
jmp 0x100165b8
mov eax, dword [ebp - 0xe8]
inc eax
mov dword [ebp - 0xe8], eax
cmp dword [ebp - 0xe8], 0x6c66
jge 0x1001664e
and dword [ebp - 0xf0], 0
jmp 0x100165de
mov eax, dword [ebp - 0xf0]
inc eax
mov dword [ebp - 0xf0], eax
cmp dword [ebp - 0xf0], 0x186b
jge 0x10016649
and dword [ebp - 0xf8], 0
jmp 0x10016600
mov eax, dword [ebp - 0xf8]
inc eax
mov dword [ebp - 0xf8], eax
cmp dword [ebp - 0xf8], 0x6092
jge 0x10016647
mov eax, dword [ebp - 0xe8]
mov ecx, dword [ebp - 0xf0]
shl eax, cl
mov ecx, dword [ebp - 0xf8]
shl eax, cl
cdq
mov dword [ebp - 0x36c], eax
mov dword [ebp - 0x368], edx
push dword [ebp - 0x368]
push dword [ebp - 0x36c]
mov ecx, 0x10071a98
call fcn.100046a4
jmp 0x100165f3
jmp 0x100165d1
jmp 0x100165ab
movzx eax, word [ebp - 0x24]
cmp eax, 0xffff
je 0x100169c1
movzx eax, word [ebp - 0x24]
mov ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x68]
add edx, dword [ecx + 0x1c]
lea eax, [edx + eax*4]
mov dword [ebp - 0x314], eax
mov eax, dword [ebp - 0x314]
mov ecx, dword [ebp - 0x68]
add ecx, dword [eax]
mov dword [ebp - 0x38], ecx
mov eax, dword [ebp - 0x38]
cmp eax, dword [ebp - 0x30]
jbe 0x100169bc
push 8
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x80]
mov edx, dword [ebp - 0x30]
add edx, dword [ecx + eax + 0x7c]
cmp dword [ebp - 0x38], edx
jae 0x100169bc
mov eax, dword [0x1062ba04]
and eax, 2
jne 0x100166d8
mov eax, dword [0x1062ba04]
or eax, 2
mov dword [0x1062ba04], eax
mov dword [ebp - 4], 0xf
push 0x4ba8
call fcn.1002f402
pop ecx
mov byte [0x1062ba10], al
or dword [ebp - 4], 0xffffffff
mov byte [ebp - 0x58], 0
mov byte [ebp - 0x57], 0xc0
mov byte [ebp - 0x56], 4
mov byte [ebp - 0x55], 0x2c
mov byte [ebp - 0x54], 0x99
mov byte [ebp - 0x53], 0x57
mov byte [ebp - 0x52], 6
mov byte [ebp - 0x51], 2
mov byte [ebp - 0x50], 8
mov byte [ebp - 0x4f], 1
mov byte [ebp - 0x4e], 0
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0x58]
and eax, 0xa4
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0x58]
or ecx, 0xa4
sub ecx, eax
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0x58]
mov byte [ebp + eax - 0x70], cl
mov dword [ebp - 0x1c], 2
and dword [ebp - 0x100], 0
jmp 0x1001674e
mov eax, dword [ebp - 0x1c]
inc eax
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0xb
jae 0x100167e3
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0x58]
lea eax, [eax + eax + 2]
cmp dword [ebp - 0x1c], eax
jne 0x1001678f
mov eax, dword [ebp - 0x1c]
movzx eax, byte [ebp + eax - 0x58]
inc eax
mov dword [ebp - 0x100], eax
mov eax, dword [ebp - 0x1c]
movzx eax, byte [ebp + eax - 0x58]
mov ecx, dword [ebp - 0x1c]
lea eax, [ecx + eax - 1]
mov dword [ebp - 0x1c], eax
jmp 0x10016746
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x100]
movzx eax, byte [ebp + eax - 0x5a]
movsx eax, byte [ebp + eax - 0x70]
mov ecx, dword [ebp - 0x1c]
movzx ecx, byte [ebp + ecx - 0x57]
and ecx, eax
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x100]
movzx eax, byte [ebp + eax - 0x5a]
movsx eax, byte [ebp + eax - 0x70]
mov edx, dword [ebp - 0x1c]
movzx edx, byte [ebp + edx - 0x57]
or edx, eax
sub edx, ecx
mov eax, dword [ebp - 0x1c]
movzx eax, byte [ebp + eax - 0x58]
mov byte [ebp + eax - 0x70], dl
and dword [ebp - 0x100], 0
jmp 0x10016746
xor eax, eax
inc eax
imul eax, eax, 3
mov byte [ebp + eax - 0x70], 0
mov eax, dword [0x1062ba04]
and eax, 4
jne 0x10016829
mov eax, dword [0x1062ba04]
or eax, 4
mov dword [0x1062ba04], eax
mov dword [ebp - 4], 0x10
lea eax, [ebp - 0x70]
push eax
mov ecx, 0x1062ba34
call fcn.10017ac4
push 0x10059c21
call fcn.1003ffd2
pop ecx
or dword [ebp - 4], 0xffffffff
and dword [ebp - 0x108], 0
jmp 0x1001683f
mov eax, dword [ebp - 0x108]
inc eax
mov dword [ebp - 0x108], eax
cmp dword [ebp - 0x108], 4
jae 0x10016855
mov eax, dword [ebp - 0x108]
mov byte [ebp + eax - 0x70], 0
jmp 0x10016832
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x4c], eax
movsx eax, byte [0x1062ba10]
mov ecx, dword [ebp - 0x4c]
movsx ecx, byte [ecx]
cmp ecx, eax
je 0x10016875
mov eax, dword [ebp - 0x4c]
inc eax
mov dword [ebp - 0x4c], eax
jmp 0x1001685b
mov eax, dword [ebp - 0x4c]
inc eax
mov dword [ebp - 0x4c], eax
push dword [ebp - 0x4c]
push dword [ebp - 0x38]
lea ecx, [ebp - 0x4a8]
call fcn.10018582
mov dword [ebp - 4], 0x11
push 0x1062ba34
lea ecx, [ebp - 0x4a8]
call fcn.10017afd
lea eax, [ebp - 0x458]
push eax
lea ecx, [ebp - 0x4a8]
call fcn.10017b22
push dword [eax]
lea eax, [ebp - 0x474]
push eax
lea ecx, [ebp - 0x4a8]
call fcn.10017b0e
push dword [eax]
lea ecx, [ebp - 0x4e4]
call fcn.100185ab
mov byte [ebp - 4], 0x12
lea eax, [ebp - 0x4e4]
push eax
call fcn.1000a9cd
pop ecx
mov dword [ebp - 0x178], eax
cmp dword [ebp - 0x178], 0
je 0x1001696b
push dword [ebp - 0x4c]
lea ecx, [ebp - 0x4cc]
call fcn.10017ac4
mov byte [ebp - 4], 0x13
lea edx, [ebp - 0x31c]
lea ecx, [ebp - 0x4cc]
call fcn.10008366
movzx eax, al
test eax, eax
je 0x1001693e
push 0
push dword [ebp - 0x31c]
push 0
push dword [ebp - 0x178]
call fcn.100144cf
add esp, 0x10
mov dword [ebp - 0x38], eax
jmp 0x1001695a
push 1
push 0
lea eax, [ebp - 0x4cc]
push eax
push dword [ebp - 0x178]
call fcn.100144cf
add esp, 0x10
mov dword [ebp - 0x38], eax
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x4cc]
call fcn.10017af3
jmp 0x1001699e
cmp dword [ebp + 0x10], 0
jne 0x10016981
mov ecx, dword [ebp + 0xc]
call fcn.10004684
mov dword [ebp - 0x294], eax
jmp 0x1001698b
movzx eax, word [ebp + 0x10]
mov dword [ebp - 0x294], eax
push dword [ebp - 0x294]
push dword [ebp + 8]
call fcn.1000ebfb
pop ecx
pop ecx
mov dword [ebp - 0x38], eax
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x4e4]
call fcn.100047de
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x4a8]
call fcn.10017af3
mov eax, dword [ebp - 0x38]
jmp 0x10016a0c
mov dword [ebp - 4], 0x14
cmp dword [ebp - 0x29c], 0x14e9
jge 0x100169e4
mov edx, dword [ebp - 0x324]
mov ecx, 0x10071a98
call fcn.10006c80
jmp 0x10016a00
or dword [ebp - 4], 0xffffffff
jmp 0x10016a0a
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret