Function at 0x100230f5
Capabilities:
Connect pipe

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x98
push ebx
push esi
xor esi, esi
mov dword [ebp - 4], 0xba7b
inc esi
mov dword [ebp - 0x24], edx
push edi
mov dword [ebp - 0x14], esi
xor edi, edi
mov dword [ebp - 8], 0x35a7ab5b
mov bl, cl
mov dword [ebp - 0x10], edi
jmp 0x1002312f
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1c], 0xffffffff
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x10023121
mov dword [ebp - 0x10], edi
jmp 0x10023147
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x34], 8
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x10023139
mov dword [ebp - 0x10], edi
jmp 0x1002315f
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x8c], edi
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x10023152
cmp dword [ebp - 0x1c], edi
jne 0x100231b1
mov ecx, dword [ebp - 0x1c]
xor edx, edx
mov eax, dword [ebp - 4]
cmp eax, ecx
setg dl
cmp dword [ebp - 0x1c], edx
je 0x10023183
mov ecx, esi
cmp dword [ebp - 0x1c], edi
jne 0x10023185
mov ecx, edi
mov eax, dword [ebp - 0x1c]
add ecx, 0x1c58
xor edx, edx
cmp ecx, eax
setle dl
cmp edx, 5
je 0x100231a1
mov eax, edi
cmp dword [ebp - 0x1c], edi
je 0x100231a3
mov eax, esi
add eax, 0x28d9ba5f
cmp eax, 0xc516
mov eax, edi
jne 0x100231b3
mov eax, esi
cmp eax, dword [ebp - 0x1c]
jne 0x100231bf
mov edx, esi
cmp dword [ebp - 4], edi
jne 0x100231c1
mov edx, edi
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x14]
setg cl
add eax, ecx
imul eax, dword [ebp - 0x1c]
mov dword [ebp - 0x30], eax
mov dword [ebp - 4], esi
cmp dword [ebp - 4], edi
jl 0x10023292
mov dword [ebp - 0xc], 0xffffffff
xor ecx, ecx
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x34]
test eax, eax
mov eax, dword [ebp - 4]
setne cl
mov eax, dword [ebp + eax*4 - 0x34]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], ecx
jne 0x10023210
mov eax, dword [ebp - 4]
cmp dword [ebp + eax*4 - 0x34], edi
je 0x10023212
mov edi, esi
mov eax, dword [ebp - 0x88]
xor ecx, ecx
cmp eax, 0xfffffffd
mov eax, dword [ebp - 4]
push 0
setge cl
xor edx, edx
cmp ecx, edi
mov eax, dword [ebp + eax*4 - 0x34]
setg dl
xor ecx, ecx
cmp eax, edx
pop edi
setne cl
mov dword [ebp - 0x30], ecx
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x34], 0xc1e183a0
mov eax, dword [ebp - 8]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x34]
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x34]
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x34]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x34]
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setg cl
mov dword [ebp - 8], ecx
dec dword [ebp - 4]
jns 0x100231e3
test bl, bl
je 0x10023491
mov dword [ebp - 0xc], 0x5b9b55bb
mov dword [ebp - 0x14], 0xb50f6b3
mov dword [ebp - 0xc], 0xe
jmp 0x1002331e
push 3
mov dword [ebp - 0x20], 0x16652d0d
mov dword [ebp - 4], edi
pop ecx
jmp 0x100232ce
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x80], 0xfffffff9
inc dword [ebp - 4]
cmp dword [ebp - 4], ecx
jl 0x100232c0
mov dword [ebp - 4], edi
jmp 0x100232e6
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x74], 0xf7cd95da
inc dword [ebp - 4]
cmp dword [ebp - 4], ecx
jl 0x100232d8
mov eax, dword [ebp - 0xc]
xor edx, edx
mov eax, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x7c]
inc dword [ebp - 0x6c]
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x74]
mov eax, dword [ebp - 0xc]
shl ecx, 3
cmp ecx, eax
setg dl
cmp edx, dword [ebp - 0xc]
jge 0x10023316
mov eax, esi
cmp dword [ebp - 0x7c], edi
jne 0x10023318
mov eax, edi
mov dword [ebp - 0x14], eax
dec dword [ebp - 0xc]
cmp dword [ebp - 0xc], 0xffffffe8
jge 0x100232b1
push 2
pop ebx
mov dword [ebp - 4], ebx
xor edx, edx
mov dword [ebp - 0x20], 0xfffffff9
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x20], 0xb7834d8a
push 4
pop edi
mov dword [ebp - 0x64], edi
mov dword [ebp - 0x14], 0xf644accb
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x20], 0x2835357f
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 0x10], 0x86fa66fa
mov dword [ebp - 0xc], 0x5bb5
mov dword [ebp - 0x58], 0xffffffff
mov dword [ebp - 0x68], 0x3e62c90a
mov dword [ebp - 8], edx
jmp 0x1002338d
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x54], 0x2aa0a5de
inc dword [ebp - 8]
cmp dword [ebp - 8], esi
jl 0x1002337f
cmp dword [ebp - 4], edx
jne 0x100233a3
dec dword [ebp - 0xc]
mov ecx, esi
mov eax, dword [ebp - 0xc]
sub ecx, eax
je 0x100233cb
cmp dword [ebp - 0x14], edx
je 0x100233bd
mov dword [ebp - 0x14], esi
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x68]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0x64]
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x54]
cmp dword [ebp - 0x20], 0xf5dd
mov eax, esi
jge 0x100233cd
mov eax, edx
dec eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 8], esi
mov dword [ebp - 8], 0xd52a2848
mov dword [ebp - 0x14], 0xdf860956
mov dword [ebp - 0x20], edi
mov dword [ebp - 4], edx
jmp 0x100233f4
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x44], esi
inc dword [ebp - 4]
cmp dword [ebp - 4], ebx
jl 0x100233ea
mov dword [ebp - 4], edx
jmp 0x1002340c
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x60], 0xc0d133f2
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x100233fe
mov dword [ebp - 8], 5
mov eax, dword [ebp - 8]
dec eax
jne 0x10023426
cmp dword [ebp - 0x44], edx
jne 0x10023426
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x44]
xor ecx, ecx
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x60], esi
mov eax, dword [ebp - 0x44]
sub esi, eax
mov eax, dword [ebp - 0x40]
cmp esi, eax
setge cl
xor edx, edx
mov dword [ebp - 8], ecx
mov eax, dword [ebp - 8]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x44]
cmp ecx, eax
mov eax, dword [ebp - 8]
setne dl
xor ecx, ecx
cmp edx, eax
mov edx, dword [ebp - 0x24]
setge cl
xor eax, eax
cmp ecx, 0xdfe9
mov edx, dword [edx]
setl al
shl eax, 3
mov dword [ebp - 0x20], eax
mov eax, dword [ebp + 0xc]
imul ecx, dword [edx], 0xa
mov eax, dword [eax]
movsx eax, byte [eax]
add eax, 0xffffffd0
add eax, ecx
mov dword [edx], eax
jmp 0x10023797
mov dword [ebp - 0xc], esi
xor ebx, ebx
mov dword [ebp - 8], 0x714f98ca
mov dword [ebp - 0x10], 0xfffffffa
mov dword [ebp - 8], ebx
jmp 0x100234b7
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x50], 0x6d23
inc dword [ebp - 8]
cmp dword [ebp - 8], 3
jl 0x100234a9
cmp dword [ebp - 0xc], ebx
je 0x100234e2
mov dword [ebp - 8], 5
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 8]
jne 0x100234d8
mov eax, ebx
cmp dword [ebp - 0x10], ebx
je 0x100234da
mov eax, esi
cmp eax, dword [ebp - 0xc]
jg 0x100234e2
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x50]
xor edx, edx
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
cmp ecx, eax
mov eax, dword [ebp - 0x10]
setle dl
xor ecx, ecx
cmp edx, eax
push 4
setg cl
pop edi
inc ecx
je 0x10023511
mov dword [ebp - 8], 5
jmp 0x1002368a
mov dword [ebp - 4], 0x8a99
mov dword [ebp - 0x24], 0xfe49ba5c
mov dword [ebp - 0x10], 0x1c
jmp 0x10023680
mov dword [ebp - 0x24], edi
mov dword [ebp - 8], ebx
jmp 0x10023541
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x28], 0xfa870c38
inc dword [ebp - 8]
cmp dword [ebp - 8], esi
jl 0x10023533
mov dword [ebp - 8], 0xea3d
mov eax, dword [ebp - 4]
cmp dword [ebp - 8], eax
jl 0x1002356d
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x28]
cmp dword [ebp - 0x28], ebx
je 0x100235fb
mov dword [ebp - 0xc], 2
cmp dword [ebp - 0x28], ebx
je 0x10023591
mov edx, esi
cmp dword [ebp - 4], ebx
jne 0x10023593
mov edx, ebx
mov ecx, dword [ebp - 0x28]
xor ebx, ebx
mov eax, dword [ebp - 8]
cmp eax, ecx
mov eax, dword [ebp - 0x28]
setle bl
sub ebx, eax
mov eax, dword [ebp - 0x28]
sub ebx, eax
cmp esi, edx
sbb eax, eax
xor edx, edx
inc eax
cmp eax, ebx
mov eax, dword [ebp - 0xc]
setne dl
xor ecx, ecx
cmp eax, edx
setne cl
cmp ecx, 0xffffffff
sbb edx, edx
xor ecx, ecx
inc edx
imul edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x48]
neg edx
cmp edx, eax
setg cl
xor ebx, ebx
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0xc], ebx
jmp 0x100235f3
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], bl
je 0x100235f0
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_ConnectNamedPipe]
dec dword [ebp - 0xc]
cmp dword [ebp - 0xc], 0xffffffe4
jl 0x100235e0
jmp 0x10023637
mov dword [ebp - 0x24], esi
mov dword [ebp - 8], ebx
jmp 0x10023614
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x98], 0x506f8a13
inc dword [ebp - 8]
cmp dword [ebp - 8], 3
jl 0x10023603
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xc], ebx
jmp 0x10023631
mov eax, dword [ebp - 4]
mov dword [ebp - 0x24], eax
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 0x33
jg 0x10023628
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 4], 0xfcfb
jl 0x10023646
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x50]
xor ecx, ecx
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 4]
cmp eax, 0x6095
setge cl
xor eax, eax
cmp ecx, 0xffffffff
setne al
xor edx, edx
imul ecx, eax, 0xf119
mov eax, dword [ebp - 0x28]
cmp ecx, eax
setne dl
mov dword [ebp - 8], edx
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xe
jle 0x1002352b
mov dword [ebp - 0xc], 0xffffffff
mov dword [ebp - 8], ebx
jmp 0x100236a0
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x2c], ebx
inc dword [ebp - 8]
cmp dword [ebp - 8], esi
jl 0x10023696
mov dword [ebp - 0x2c], 0xffffffef
jmp 0x100236c2
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x100236bf
push ebx
push ebx
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0xfffffff1
jne 0x100236ae
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x2c]
add ecx, dword [ebp - 0xc]
neg ecx
sbb ecx, ecx
xor eax, eax
neg ecx
cmp ecx, 0x97f0
setne al
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 8], esi
mov dword [ebp - 8], 0xd52a2848
mov dword [ebp - 0x14], 0xdf860956
mov dword [ebp - 0x24], edi
mov dword [ebp - 4], ebx
jmp 0x1002370e
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x3c], esi
inc dword [ebp - 4]
cmp dword [ebp - 4], 2
jl 0x10023704
mov dword [ebp - 4], ebx
jmp 0x10023727
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x5c], 0xc0d133f2
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x10023719
mov dword [ebp - 8], 5
mov eax, dword [ebp - 8]
dec eax
jne 0x10023741
cmp dword [ebp - 0x3c], ebx
jne 0x10023741
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
xor ecx, ecx
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x5c], esi
mov eax, dword [ebp - 0x3c]
sub esi, eax
mov eax, dword [ebp - 0x38]
cmp esi, eax
setge cl
xor edx, edx
mov dword [ebp - 8], ecx
mov eax, dword [ebp - 8]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
cmp ecx, eax
mov eax, dword [ebp - 8]
setne dl
xor ecx, ecx
cmp edx, eax
setge cl
xor eax, eax
cmp ecx, 0xdfe9
setl al
shl eax, 3
mov dword [ebp - 0x24], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [eax], ebx
pop edi
pop esi
mov dword [ebp - 8], 0x491d0b6b
pop ebx
mov esp, ebp
pop ebp
ret