Function at 0x1001290c
Capabilities:
Enumerate gui resources
Set current directory

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x338
mov eax, dword [0x102cf440]
xor eax, esp
mov dword [esp + 0x334], eax
cmp byte [0x102eb580], 0
push esi
push edi
jne 0x10012f13
mov eax, 0x190
mov byte [0x102eb580], 1
push eax
push eax
push 0
call sym.project.dll_cairo_image_surface_create
add esp, 0xc
mov edi, eax
push edi
call sym.project.dll_cairo_create
fld qword [0x102bc200]
sub esp, 0x24
mov esi, eax
fstp qword [esp + 0x20]
fldz
fstp qword [esp + 0x18]
fld qword [0x102bc220]
fstp qword [esp + 0x10]
fld qword [0x102bc228]
fst qword [esp + 8]
fstp qword [esp]
push esi
call sym.project.dll_cairo_arc
add esp, 0x2c
push esi
call sym.project.dll_cairo_stroke_preserve
pop ecx
push esi
call sym.project.dll_cairo_fill
fld qword [0x102bc228]
sub esp, 0x1c
fst qword [esp + 0x18]
fstp qword [esp + 0x10]
fld qword [0x102bc230]
fst qword [esp + 8]
fstp qword [esp]
push esi
call sym.project.dll_cairo_rectangle
add esp, 0x24
push esi
call sym.project.dll_cairo_fill
fld qword [0x102bc248]
sub esp, 0xc
fst qword [esp + 8]
fstp qword [esp]
push esi
call sym.project.dll_cairo_move_to
fld qword [0x102bc248]
sub esp, 0x1c
fst qword [esp + 0x28]
fld qword [0x102bc260]
fst qword [esp + 0x20]
fstp qword [esp + 0x18]
fstp qword [esp + 0x10]
fld qword [0x102bc250]
fst qword [esp + 8]
fstp qword [esp]
push esi
call sym.project.dll_cairo_curve_to
add esp, 0x34
push esi
call sym.project.dll_cairo_stroke
pop ecx
test esi, esi
jne 0x10012a27
push 0x102b89f9
push edi
call sym.project.dll_cairo_surface_write_to_png
pop ecx
pop ecx
push esi
call sym.project.dll_cairo_destroy
pop ecx
push edi
call sym.project.dll_cairo_surface_destroy
xor eax, eax
lea edi, [esp + 0x58]
stosd dword es:[edi], eax
xor esi, esi
pop ecx
push 7
lea ecx, [esp + 0x58]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
pop edi
push esi
push 0x1000
mov dword [esp + 0x6c], esi
mov dword [esp + 0x70], edi
mov word [esp + 0x5c], ax
call fcn.100171cc
push 0x260
lea eax, [esp + 0xd4]
push esi
push eax
call fcn.101ed310
add esp, 0xc
lea ecx, [esp + 0xd0]
call fcn.10010ee9
push 0x30
mov dword [esp + 0x80], esi
call fcn.101eb095
lea ecx, [esp + 0x14]
mov dword [esp], 0x102b89f9
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [eax + 8], eax
mov word [eax + 0xc], 0x101
or dword [esp + 0x54], 0xffffffff
mov dword [esp + 0x7c], eax
call fcn.10015e4b
push 1
push 0x102bb238
mov ecx, eax
call fcn.10017316
push eax
lea ecx, [esp + 0x94]
call fcn.10015e12
push 0x102bb19c
lea ecx, [esp + 0x94]
call fcn.10015d78
push eax
lea ecx, [esp + 0xbc]
call fcn.10015e12
lea eax, [esp + 0xb8]
push eax
lea ecx, [esp + 0xd4]
call fcn.100111d1
lea ecx, [esp + 0xb8]
call fcn.1001725f
lea ecx, [esp + 0x90]
call fcn.1001725f
lea ecx, [esp + 0x10]
call fcn.1001725f
imul ecx, dword [esp + 0xe0], 0x370
mov eax, dword [esp + 0x78]
fld qword [0x102bc178]
mov dword [esp + 0x30], eax
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0xd8]
add ecx, 0x180
add eax, ecx
lea ecx, [esp + 0x7c]
push eax
fst qword [esp + 0x30]
lea eax, [esp + 0x10]
fstp qword [esp + 0x48]
push eax
call fcn.1002129f
lea eax, [esp + 0xd0]
mov dword [esp + 0x10], 0x102bbf34
mov dword [esp + 0x14], eax
lea ecx, [esp + 0x90]
lea eax, [esp + 0x78]
mov dword [esp + 0xb4], esi
mov dword [esp + 0x18], eax
lea eax, [esp + 0x50]
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x10]
push eax
mov dword [esp + 0x38], eax
call fcn.1001ee3c
lea eax, [esp + 0x2b0]
push eax
lea ecx, [esp + 0x14]
call fcn.1001ee3c
lea eax, [esp + 0x90]
push eax
lea ecx, [esp + 0x2b4]
call fcn.1001ee3c
lea ecx, [esp + 0x90]
call fcn.1001317a
lea ecx, [esp + 0x10]
call fcn.1001317a
lea eax, [esp + 0x50]
mov dword [esp + 0x10], 0x102bbc3c
mov dword [esp + 0x14], eax
lea ecx, [esp + 0x90]
lea eax, [esp + 0xd0]
mov dword [esp + 0xb4], esi
mov dword [esp + 0x18], eax
lea eax, [esp + 0x78]
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x10]
push eax
mov dword [esp + 0x38], eax
call fcn.1001ee3c
lea eax, [esp + 0x170]
push eax
lea ecx, [esp + 0x14]
call fcn.1001ee3c
lea eax, [esp + 0x90]
push eax
lea ecx, [esp + 0x174]
call fcn.1001ee3c
lea ecx, [esp + 0x90]
call fcn.1001317a
lea ecx, [esp + 0x10]
call fcn.1001317a
cmp dword [esp + 0x7c], 1
je 0x10012cb1
push str.libigl_viewer
lea ecx, [esp + 0x94]
call fcn.10015e4b
push ecx
push ecx
lea eax, [esp + 0x98]
push eax
push ecx
lea ecx, [esp + 0xe0]
call fcn.10010ab3
push ecx
lea ecx, [esp + 0xd4]
call fcn.10010cff
lea ecx, [esp + 0xd0]
call fcn.10010e0b
lea ecx, [esp + 0x90]
call fcn.1001725f
lea ecx, [esp + 0x78]
call fcn.1001315f
lea ecx, [esp + 0xd0]
call fcn.1001113f
cmp dword [esp + 0x68], edi
lea eax, [esp + 0x54]
push 0x1000
cmova eax, dword [esp + 0x58]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
cmp dword [esp + 0x68], edi
lea edx, [esp + 0x54]
mov esi, dword [esp + 0x64]
cmova edx, dword [esp + 0x54]
test esi, esi
je 0x10012d1a
lea eax, [esi - 1]
or ecx, 0xffffffff
cmp eax, ecx
push 0x5c
cmovb ecx, eax
pop eax
lea ecx, [edx + ecx*2]
jmp 0x10012d0f
cmp ecx, edx
je 0x10012d1a
sub ecx, 2
cmp word [ecx], ax
jne 0x10012d08
sub ecx, edx
sar ecx, 1
jmp 0x10012d1d
or ecx, 0xffffffff
xor eax, eax
lea edi, [esp + 0x78]
stosd dword es:[edi], eax
push 7
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [esp + 0x58]
and dword [esp + 0x8c], 0
and dword [esp + 0x90], 0
cmp esi, ecx
cmovb ecx, esi
pop esi
cmp dword [esp + 0x68], esi
push ecx
cmova eax, dword [esp + 0x58]
lea ecx, [esp + 0x7c]
push eax
call fcn.1001c9e0
lea eax, [esp + 0x78]
push eax
lea ecx, [esp + 0x58]
call fcn.10015b2b
lea ecx, [esp + 0x78]
call fcn.1001719e
cmp dword [esp + 0x68], esi
lea eax, [esp + 0x54]
cmova eax, dword [esp + 0x54]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
push str.IronBarCode.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
xor eax, eax
mov edi, eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], eax
mov eax, 0x7ffffffe
sub eax, dword [esp + 0x64]
mov dword [esp + 0x6c], edi
cmp eax, 1
jb 0x10012f27
cmp dword [esp + 0x68], esi
lea eax, [esp + 0x54]
push 1
cmova eax, dword [esp + 0x58]
push ecx
push dword [esp + 0x6c]
push eax
push ecx
push dword [esp + 0x8c]
lea ecx, [esp + 0xa8]
call fcn.1001e65b
push 0x11
push 0x102bb1d8
lea ecx, [esp + 0x98]
call fcn.10015a92
push eax
lea ecx, [esp + 0xbc]
call fcn.10015b62
lea ecx, [esp + 0x90]
call fcn.1001719e
cmp dword [esp + 0xcc], esi
lea eax, [esp + 0xb8]
lea ecx, [esp + 0x90]
cmova eax, dword [esp + 0xb8]
push eax
call fcn.10015b9d
push ecx
push ecx
lea edx, [esp + 0x98]
lea ecx, [esp + 0x80]
call fcn.1001284f
and dword [esp + 0x58], edi
mov esi, eax
lea eax, [esp + 0x74]
pop ecx
pop ecx
cmp eax, esi
je 0x10012e75
mov ecx, eax
call fcn.10013198
mov eax, dword [esi + 4]
mov edi, dword [esi]
mov dword [esp + 0x70], eax
mov eax, dword [esi + 8]
mov dword [esp + 0x74], eax
xor eax, eax
mov dword [esp + 0x6c], edi
mov dword [esi], eax
mov dword [esi + 4], eax
mov dword [esi + 8], eax
mov dword [esp + 0x50], edi
lea ecx, [esp + 0x78]
call fcn.10013198
lea ecx, [esp + 0x90]
call fcn.1001719e
push str.StarBurn.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
push 0x2531
push 0
lea esi, [eax + 0x1000]
push esi
mov dword [esp + 0x84], esi
call fcn.101ed310
mov esi, dword [esp + 0x5c]
add esp, 0xc
xor eax, eax
mov dword [esp + 8], eax
lea edx, [esi + eax]
mov cl, 9
movzx eax, al
imul eax, eax, 0x23
sub cl, al
mov eax, dword [esp + 8]
add byte [edx], cl
inc eax
mov ecx, 0x2531
mov dword [esp + 8], eax
cmp eax, ecx
jb 0x10012ebc
mov esi, dword [esp + 0x78]
push ecx
push edi
push esi
call fcn.101ecd90
add esp, 0xc
push 0
push esi
call dword [sym.imp.USER32.dll_EnumWindows]
lea ecx, [esp + 0xb8]
call fcn.1001719e
lea ecx, [esp + 0x6c]
call fcn.10013198
lea ecx, [esp + 0x54]
call fcn.1001719e
mov ecx, dword [esp + 0x33c]
pop edi
pop esi
xor ecx, esp
call fcn.101eafcd
mov esp, ebp
pop ebp
ret
call fcn.10001783
int3