Function at 0x100198f0
Capabilities:
Create pipe

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x118
push ebx
mov dword [ebp - 0x2c], ecx
xor ebx, ebx
mov dword [ebp - 0x3c], edx
xor ecx, ecx
push esi
mov dword [ebp - 0x1c], 0xf55e00fe
inc ecx
push edi
mov dword [ebp - 4], ebx
jmp 0x10019921
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x68], 0x8206
inc dword [ebp - 4]
cmp dword [ebp - 4], ecx
jl 0x10019913
mov dword [ebp - 4], ebx
jmp 0x10019939
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x30], 0x642c70bb
inc dword [ebp - 4]
cmp dword [ebp - 4], ecx
jl 0x1001992b
mov dword [ebp - 0x30], ebx
jmp 0x1001994d
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x68], ecx
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], ecx
jl 0x10019943
inc dword [ebp - 0x1c]
mov dword [ebp - 0x14], 0xfffa
mov byte [ebp - 9], bl
cmp byte [ebp - 9], bl
je 0x10019972
push 0x1244
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreatePipe]
mov byte [ebp - 9], bl
cmp byte [ebp - 9], bl
je 0x10019981
push ebx
call dword [sym.imp.GDI32.dll_CreatePenIndirect]
push 0xfffffffffffffff7
pop eax
mov dword [ebp - 0x20], eax
or edi, 0xffffffff
mov dword [ebp - 4], 4
mov dword [ebp - 0x14], 0x544bd1a6
push 2
pop esi
mov dword [ebp - 0x78], esi
mov dword [ebp - 0x74], esi
mov dword [ebp - 0x70], esi
mov dword [ebp - 0x6c], esi
mov dword [ebp - 0x18], edi
cmp dword [ebp - 4], 0x22124f84
jne 0x100199bd
cmp dword [ebp - 4], ebx
je 0x100199bd
xor eax, eax
inc eax
jmp 0x100199bf
mov eax, ebx
cmp eax, dword [ebp - 4]
je 0x100199ef
mov dword [ebp - 4], ebx
jmp 0x100199e4
mov dword [ebp - 0x1c], 0x5cc25bfc
mov byte [ebp - 9], bl
cmp byte [ebp - 9], bl
je 0x100199de
call dword [sym.imp.KERNEL32.dll_GetACP]
dec dword [ebp - 0x1c]
inc dword [ebp - 4]
cmp dword [ebp - 4], 0x1c
jg 0x100199c9
jmp 0x10019acb
mov dword [ebp - 8], 0x52509e71
mov dword [ebp - 4], ebx
cmp dword [ebp - 4], 0x3c
jne 0x10019ac5
mov dword [ebp - 0x10], 7
mov dword [ebp - 0x14], 0xfffffffb
mov dword [ebp - 0x10], ebx
jmp 0x10019a24
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x34], 0xfa9b
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 1
jl 0x10019a16
mov dword [ebp - 0x10], ebx
cmp dword [ebp - 0x10], ebx
jl 0x10019ab0
mov dword [ebp - 0x1c], 0x61943ec3
mov dword [ebp - 0x28], 0x58e7
mov dword [ebp - 0x1c], 0x594484f7
cmp dword [ebp - 8], ebx
je 0x10019a85
mov eax, dword [ebp - 0x10]
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x34]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x34]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x34]
cmp eax, 0xec0
setl cl
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 8]
cmp dword [ebp - 4], ebx
jne 0x10019a85
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x10]
xor ecx, ecx
mov esi, dword [ebp + eax*4 - 0x34]
mov eax, dword [ebp - 4]
cmp eax, 2
mov eax, dword [ebp - 8]
setne cl
xor edx, edx
cmp esi, ecx
setg dl
xor ecx, ecx
cmp edx, eax
setle cl
mov dword [ebp - 0x1c], ecx
dec dword [ebp - 0x10]
jns 0x10019a32
cmp dword [ebp - 0x14], ebx
jne 0x10019ac2
inc dword [ebp - 4]
cmp dword [ebp - 4], 0x3c
je 0x10019a03
push 2
pop esi
mov eax, dword [ebp - 8]
mov dword [ebp - 0x14], eax
mov dword [ebp - 4], ebx
jmp 0x10019af3
mov dword [ebp - 0x14], 0x3ac16b40
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x14], 0xfffffffd
mov dword [ebp - 0x78], ebx
mov dword [ebp - 0x74], ebx
mov dword [ebp - 0x70], ebx
mov dword [ebp - 0x6c], ebx
inc dword [ebp - 0x18]
inc dword [ebp - 4]
cmp dword [ebp - 4], 3
jle 0x10019ad0
mov dword [ebp - 0x9c], edi
mov dword [ebp - 0x98], edi
mov dword [ebp - 0x94], edi
mov dword [ebp - 0x90], edi
mov dword [ebp - 0x10], 0xf4f46db5
mov dword [ebp - 8], ebx
jmp 0x10019b27
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x40], edi
inc dword [ebp - 8]
cmp dword [ebp - 8], 1
jl 0x10019b1d
mov dword [ebp - 0x10], ebx
cmp dword [ebp - 0x10], ebx
jl 0x10019c9f
mov dword [ebp - 0x18], 3
mov dword [ebp - 8], ebx
jmp 0x10019b4f
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x24], edi
inc dword [ebp - 8]
cmp dword [ebp - 8], 1
jl 0x10019b45
mov dword [ebp - 0x24], ebx
cmp dword [ebp - 0x24], ebx
jl 0x10019c96
mov dword [ebp - 4], 1
mov dword [ebp - 0x18], 0xfad54077
mov dword [ebp - 0x18], ebx
mov dword [ebp - 4], ebx
cmp dword [ebp - 4], ebx
jl 0x10019bca
mov dword [ebp - 0x14], 0xfffffffe
xor edx, edx
mov dword [ebp - 0x28], 0xd3672969
mov eax, dword [ebp - 0x10]
mov esi, dword [ebp + eax*4 - 0x40]
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x40], esi
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
imul ecx, eax
mov eax, dword [ebp - 0x14]
imul eax, dword [ebp - 0x10]
cmp ecx, eax
setge dl
xor ecx, ecx
add edx, esi
sub edx, dword [ebp - 4]
mov eax, dword [ebp - 4]
sub edx, 0x246a63bb
cmp edx, eax
setne cl
mov dword [ebp - 0x28], ecx
dec dword [ebp - 4]
jns 0x10019b7a
push 2
mov dword [ebp - 4], ebx
pop esi
cmp dword [ebp - 4], 0x1c
jl 0x10019c8d
mov dword [ebp - 0xac], edi
mov dword [ebp - 0xa8], edi
mov dword [ebp - 0xa4], edi
mov dword [ebp - 0xa0], edi
mov dword [ebp - 8], ebx
jmp 0x10019c05
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x50], 0x16e2
inc dword [ebp - 8]
cmp dword [ebp - 8], esi
jl 0x10019bf7
mov byte [ebp - 9], bl
cmp byte [ebp - 9], bl
je 0x10019c25
push ebx
push ebx
push 0x4bf
push 0x2282
push ebx
call dword [sym.imp.USER32.dll_InsertMenuA]
cmp dword [ebp - 0x4c], ebx
jne 0x10019c4b
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
xor eax, eax
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
je 0x10019c5d
mov edx, eax
cmp dword [ebp - 0x4c], ebx
jne 0x10019c5f
mov edx, ebx
mov eax, dword [ebp - 0x10]
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x18], ecx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x18], 0xfffffffc
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0xa4], eax
inc dword [ebp - 4]
jmp 0x10019bd0
dec dword [ebp - 0x24]
jns 0x10019b61
dec dword [ebp - 0x10]
jns 0x10019b39
mov byte [ebp - 9], bl
cmp byte [ebp - 9], bl
je 0x10019cb3
push 0x15b9
push ebx
call dword [sym.imp.ADVAPI32.dll_InitializeSecurityDescriptor]
mov dword [ebp - 0x14], 0x9ced66e5
push 7
pop ecx
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x1c], 0x345fe46c
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x28], 0xc13fe66
mov dword [ebp - 0x18], 0x6b8d9637
mov dword [ebp - 0x28], 0xfffffff7
mov dword [ebp - 8], 0xf665
mov dword [ebp - 4], 9
mov dword [ebp - 4], ebx
jmp 0x10019d03
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0xc8], 0x45ccb972
inc dword [ebp - 4]
cmp dword [ebp - 4], 3
jl 0x10019cf2
mov dword [ebp - 4], ebx
jmp 0x10019d1b
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x8c], ecx
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x10019d0e
cmp dword [ebp - 0x10], ebx
jne 0x10019d78
mov eax, dword [ebp - 8]
xor edx, edx
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0xc4]
mov eax, dword [ebp - 0x10]
cmp eax, ecx
mov eax, dword [ebp - 0x14]
setg dl
xor ecx, ecx
cmp eax, edx
setg cl
xor edx, edx
cmp ecx, 0xdbc7
setl dl
add edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x8c]
inc dword [ebp - 0x8c]
cmp eax, edx
je 0x10019d78
cmp dword [ebp - 8], ebx
jne 0x10019d78
mov edx, ebx
jmp 0x10019d7b
xor edx, edx
inc edx
mov eax, dword [ebp - 0x18]
xor ecx, ecx
sub edx, eax
mov eax, dword [ebp - 0x10]
sub edx, 0x20c8
cmp edx, eax
mov eax, dword [ebp - 0xc4]
setg cl
xor ebx, ebx
cmp ecx, eax
mov eax, dword [ebp - 8]
setl bl
xor edx, edx
cmp ebx, eax
mov eax, dword [ebp - 0x1c]
setl dl
xor ecx, ecx
cmp edx, eax
setg cl
cmp ecx, edi
sbb eax, eax
neg eax
xor edx, edx
mov dword [ebp - 4], eax
mov dword [ebp - 0x10], edx
jmp 0x10019ddc
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x10019dd9
push edx
push 0x12a1
push edx
call dword [sym.imp.GDI32.dll_GetBitmapBits]
xor edx, edx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jle 0x10019dc1
mov dword [ebp - 8], 0x3cfcb8f1
push 8
pop ebx
cmp dword [ebp - 0x20], edx
je 0x10019f7d
mov dword [ebp - 0x18], 0x3f1571c0
push 4
mov dword [ebp - 0x14], edx
mov dword [ebp - 4], edx
pop ecx
jmp 0x10019e10
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x60], ebx
inc dword [ebp - 4]
cmp dword [ebp - 4], ecx
jl 0x10019e06
mov dword [ebp - 4], edx
jmp 0x10019e27
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0xe0], ecx
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x10019e1a
mov dword [ebp - 0x20], 0xffffffeb
cmp dword [ebp - 0x20], ebx
je 0x10019f5b
mov dword [ebp - 4], 0x32937a3a
mov dword [ebp - 0x18], edi
mov dword [ebp - 4], edx
jmp 0x10019f42
mov dword [ebp - 0x14], 9
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x10019e7b
push 0xd19
push 0x1a40
push 0x20cd
push 0x25de
push edx
call dword [sym.imp.USER32.dll_SetRect]
xor edx, edx
mov eax, dword [ebp - 0x54]
neg eax
sbb eax, eax
neg eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edx
jne 0x10019e95
cmp dword [ebp - 0x20], edx
jne 0x10019e95
mov esi, edx
jmp 0x10019e98
xor esi, esi
inc esi
mov eax, dword [ebp - 4]
xor ecx, ecx
mov edx, dword [ebp + eax*4 - 0x60]
mov eax, dword [ebp - 4]
cmp esi, eax
sete cl
xor eax, eax
cmp edx, ecx
setg al
cmp eax, 0xc257a10d
sbb eax, eax
neg eax
mov dword [ebp - 0x94], eax
mov eax, dword [ebp - 0x58]
imul eax, dword [ebp - 4]
sub eax, 0xfffffffa
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, edi
mov eax, dword [ebp - 4]
setle cl
xor edx, edx
mov eax, dword [ebp + eax*4 - 0x60]
imul eax, ecx
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edx
je 0x10019f08
push edx
lea eax, [ebp - 0x80]
mov dword [ebp - 0x80], 0x925f
push eax
call fcn.1001bbe8
xor edx, edx
pop ecx
pop ecx
cmp dword [ebp - 0x94], edx
jne 0x10019f4c
jmp 0x10019f3f
mov eax, dword [ebp - 4]
mov ecx, dword [ebp + eax*4 - 0x60]
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x60], ecx
mov dword [ebp - 8], 0xffffffe3
jmp 0x10019f39
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x60]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x60]
mov dword [ebp - 0xe0], eax
inc dword [ebp - 8]
cmp dword [ebp - 8], 0xfffffff1
jl 0x10019f1f
inc dword [ebp - 4]
cmp dword [ebp - 4], 3
jle 0x10019e4e
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jne 0x10019e3c
push 2
pop esi
mov ecx, dword [ebp - 0x54]
xor edx, edx
mov eax, dword [ebp - 0x94]
cmp ecx, eax
setg dl
xor eax, eax
cmp edx, 0xed83
setne al
xor edx, edx
mov dword [ebp - 8], eax
jmp 0x10019f87
mov dword [ebp - 0x14], 0x42f34c93
mov dword [ebp - 0x14], edi
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx + 0x10], edx
jne 0x10019f96
xor al, al
jmp 0x1001a568
push 5
pop eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x14], 0xfffffffa
mov dword [ebp - 0x14], 3
mov dword [ebp - 0x14], 0xd94543be
mov dword [ebp - 0x18], edx
mov dword [ebp - 8], edx
jmp 0x10019fd0
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x118], 8
inc dword [ebp - 8]
cmp dword [ebp - 8], 4
jl 0x10019fbf
inc dword [ebp - 0x18]
mov eax, dword [ebp - 0x3c]
mov edi, dword [sym.imp.USER32.dll_GetDesktopWindow]
mov dword [eax], edx
mov dword [ebp - 0x10], 0x825e7a66
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x1001a000
push edx
call edi
push eax
call dword [sym.imp.USER32.dll_MapDialogRect]
xor edx, edx
mov dword [ebp - 0x10], edx
cmp dword [ebp - 0x10], 0x14
jl 0x1001a0c0
mov dword [ebp - 0x20], 0xa727
mov dword [ebp - 8], edx
jmp 0x1001a02a
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0xd0], 0xc86992f1
inc dword [ebp - 8]
cmp dword [ebp - 8], esi
jl 0x1001a019
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
add eax, esi
je 0x1001a043
cmp dword [ebp - 0x20], edx
je 0x1001a043
xor eax, eax
inc eax
jmp 0x1001a045
mov eax, edx
mov ecx, dword [ebp - 0x20]
xor edx, edx
add ecx, eax
mov eax, dword [ebp - 0x10]
cmp ecx, eax
push 0
setne dl
xor ebx, ebx
imul edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x10]
cmp edx, eax
mov eax, dword [ebp - 0x10]
setg bl
xor ecx, ecx
cmp eax, 0xb568
setne cl
xor eax, eax
cmp ecx, ebx
mov ecx, 0xe5a945cb
setle al
sub eax, esi
neg eax
sbb eax, eax
inc eax
cmp ecx, eax
mov eax, dword [ebp - 0x20]
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
mov eax, dword [ebp - 0x20]
setge dl
sub edx, 0xf12a83a0
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
pop edx
setg cl
mov dword [ebp - 0xd0], ecx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0x14
jge 0x1001a00d
mov ebx, dword [ebp - 0x2c]
mov dword [ebp - 0x20], 0x6b8f3d42
mov dword [ebp - 0x10], 1
mov dword [ebp - 0x64], 0x6f65e790
mov dword [ebp - 8], edx
jmp 0x1001a0eb
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0xd8], 0xffffffff
inc dword [ebp - 8]
cmp dword [ebp - 8], esi
jl 0x1001a0da
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
neg eax
sbb eax, eax
neg eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 9
jle 0x1001a127
lea eax, [ebp - 0x7c]
mov dword [ebp - 0x7c], 0xd947597a
push eax
push 0x148f
push edx
lea eax, [ebp - 0x64]
push eax
call fcn.1001a5ad
add esp, 0x10
jmp 0x1001a162
mov dword [ebp - 0x14], 0xd2038e85
mov dword [ebp - 8], edx
jmp 0x1001a144
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x108], 0x53589fe5
inc dword [ebp - 8]
cmp dword [ebp - 8], 4
jl 0x1001a133
mov eax, dword [ebp - 0x20]
xor ecx, ecx
cmp ecx, eax
mov eax, dword [ebp - 0x14]
sbb edx, edx
inc edx
cmp eax, edx
setle cl
mov dword [ebp - 0x108], ecx
mov dword [ebp - 0x10], 0
jmp 0x1001a17b
mov eax, dword [ebp - 0x10]
cmp dword [ebp + eax*4 - 0xd8], 0
jne 0x1001a181
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 1
jle 0x1001a16b
cmp dword [ebx + 0x14], 0x10
jb 0x1001a18b
mov ecx, dword [ebx]
jmp 0x1001a18d
mov ecx, ebx
cmp dword [ebx + 0x14], 0x10
mov dword [ebp - 0x38], ecx
jb 0x1001a19a
mov edx, dword [ebx]
jmp 0x1001a19c
mov edx, ebx
mov eax, dword [ebx + 0x10]
add eax, edx
cmp ecx, eax
je 0x1001a424
mov al, byte [ecx]
cmp al, 0x30
jl 0x1001a3df
cmp al, 0x39
jg 0x1001a3df
mov dword [ebp - 0x20], 0xb0f73838
xor edx, edx
mov dword [ebp - 4], 0x64a53aa9
mov dword [ebp - 8], edx
mov dword [ebp - 0x1c], 0x1f199e1f
mov dword [ebp - 0x18], 0x92e7baa9
mov dword [ebp - 0x10], 8
mov eax, dword [ebp - 0x20]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], edx
je 0x1001a319
mov dword [ebp - 0x10], 0x93e0
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x14], 0x807c1abd
mov dword [ebp - 0x2c], 0xc769
mov dword [ebp - 0x28], 1
mov dword [ebp - 0x18], 0x1846e972
mov dword [ebp - 0x14], 0x6c2db602
mov dword [ebp - 8], edx
jmp 0x1001a235
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0xf8], 0xfffffff8
inc dword [ebp - 8]
cmp dword [ebp - 8], 4
jl 0x1001a224
mov eax, dword [ebp - 4]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], edx
je 0x1001a2e3
mov eax, dword [ebp - 0x10]
neg eax
sbb eax, eax
neg eax
add eax, dword [ebp - 0x10]
imul eax, dword [ebp - 0x10]
test eax, eax
je 0x1001a268
cmp dword [ebp - 0x20], edx
je 0x1001a268
xor eax, eax
inc eax
jmp 0x1001a26a
mov eax, edx
mov dword [ebp - 0x14], eax
xor ecx, ecx
mov eax, dword [ebp - 0x10]
cmp eax, 1
setle cl
mov dword [ebp - 0xec], ecx
mov eax, dword [ebp - 0x10]
sub ecx, eax
mov dword [ebp - 0x14], ecx
je 0x1001a290
cmp dword [ebp - 0x20], edx
je 0x1001a290
xor edx, edx
inc edx
mov eax, dword [ebp - 0x10]
xor ecx, ecx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x1c]
cmp edx, eax
mov eax, dword [ebp - 8]
setl cl
xor edx, edx
cmp ecx, 0x1defcecb
setg dl
xor ecx, ecx
cmp eax, edx
setge cl
sub ecx, dword [ebp - 0x2c]
jne 0x1001a2c3
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0xec]
xor edx, edx
mov eax, dword [ebp - 0x28]
cmp ecx, eax
setl dl
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0x1c]
inc eax
jne 0x1001a2e1
inc eax
xor edx, edx
jmp 0x1001a2e5
xor edx, edx
mov eax, edx
inc eax
cmp eax, dword [ebp - 0x2c]
jge 0x1001a2f0
cmp dword [ebp - 0x20], edx
jne 0x1001a2f9
cmp dword [ebp - 4], edx
jne 0x1001a2f9
mov eax, edx
jmp 0x1001a2fc
xor eax, eax
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], edx
jne 0x1001a307
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x18], 0x23541209
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
jmp 0x1001a3c0
push 9
pop eax
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0xb4], eax
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0x1c], 0x8161dbfa
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x14], 0xfff9
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], edx
jne 0x1001a358
mov eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 8]
jne 0x1001a35b
xor edx, edx
inc edx
mov eax, dword [ebp - 8]
xor ecx, ecx
cmp eax, 1
push 0xfffffffffffffff7
setle cl
mov dword [ebp - 4], ecx
xor ecx, ecx
mov dword [ebp - 0xb0], eax
mov eax, dword [ebp - 0x2c]
sub edx, eax
mov eax, dword [ebp - 0x14]
cmp edx, eax
pop eax
setne cl
cmp eax, ecx
mov eax, dword [ebp - 4]
push 0
sbb esi, esi
xor ecx, ecx
inc esi
test eax, eax
mov eax, dword [ebp - 0x2c]
setg cl
xor edx, edx
cmp ecx, esi
setge dl
xor ecx, ecx
cmp edx, eax
setge cl
cmp ecx, 0xbca0f963
sbb eax, eax
inc eax
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 8], eax
call fcn.1001c2de
pop ecx
push 2
xor edx, edx
pop esi
lea eax, [ebp - 0x38]
push eax
push edx
lea eax, [ebp - 0x3c]
push 0x4e4f
push eax
call fcn.1001c37d
mov ecx, dword [ebp - 0x38]
add esp, 0x10
inc ecx
jmp 0x1001a18d
lea eax, [ebp - 0x3c]
xor ebx, ebx
push eax
push ebx
call fcn.1001b9fb
mov dword [ebp - 0x14], 0x70ad6f2e
mov byte [ebp - 9], bl
pop ecx
pop ecx
cmp byte [ebp - 9], bl
je 0x1001a406
push ebx
call edi
push eax
call dword [sym.imp.USER32.dll_BeginPaint]
mov byte [ebp - 9], bl
cmp byte [ebp - 9], bl
je 0x10019f8f
push 0x6457
push ebx
call fcn.1001c048
pop ecx
pop ecx
jmp 0x10019f8f
xor ebx, ebx
mov dword [ebp - 0x10], 0xd29be1d9
mov dword [ebp - 8], ebx
jmp 0x1001a443
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x84], 0x48261f9c
inc dword [ebp - 8]
cmp dword [ebp - 8], 1
jl 0x1001a432
mov dword [ebp - 0x10], ebx
cmp dword [ebp - 0x10], ebx
jl 0x1001a476
mov dword [ebp - 0x1c], 0xfffffffc
mov dword [ebp - 0x1c], ebx
cmp dword [ebp - 0x1c], ebx
jl 0x1001a471
mov eax, dword [ebp - 0x10]
cmp dword [ebp + eax*4 - 0x84], ebx
jne 0x1001a471
dec dword [ebp - 0x1c]
jns 0x1001a460
dec dword [ebp - 0x10]
jns 0x1001a451
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], 4
mov dword [ebp - 4], 0x99841b3c
mov dword [ebp - 0x44], 7
mov dword [ebp - 0x14], 0xfffb
mov dword [ebp - 8], ebx
jmp 0x1001a4ae
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0xe8], 0xf9ed02e8
inc dword [ebp - 8]
cmp dword [ebp - 8], esi
jl 0x1001a49d
mov dword [ebp - 4], ebx
jmp 0x1001a4d0
mov byte [ebp - 9], bl
cmp byte [ebp - 9], bl
je 0x1001a4cd
push 0x2b44
push ebx
call fcn.1001be3a
pop ecx
pop ecx
inc dword [ebp - 4]
cmp dword [ebp - 4], 0x17
je 0x1001a4b8
mov dword [ebp - 4], 0x12
jmp 0x1001a55c
mov dword [ebp - 8], 0xc1464f16
mov dword [ebp - 0x48], 4
cmp dword [ebp - 4], ebx
jne 0x1001a531
mov eax, dword [ebp - 8]
sub eax, 0x3cc47d1a
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x44], eax
jne 0x1001a509
cmp dword [ebp - 8], ebx
je 0x1001a50c
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 4]
cmp dword [ebp - 0x14], 0xfffd
mov eax, dword [ebp - 4]
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
setne dl
sub edx, 6
jne 0x1001a531
cmp dword [ebp - 8], ebx
jne 0x1001a531
mov ecx, ebx
jmp 0x1001a534
xor ecx, ecx
inc ecx
mov eax, dword [ebp - 8]
imul eax, ecx
lea ecx, [ebp - 0x48]
sub eax, dword [ebp - 0x48]
mov dword [ebp - 0xe8], eax
lea eax, [ebp - 0x44]
push eax
push 0x61c7
push ebx
push ecx
call fcn.1001bd00
add esp, 0x10
dec dword [ebp - 4]
cmp dword [ebp - 4], 0xffffffe3
jge 0x1001a4df
mov al, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret