Function at 0x10120540
Capabilities:
Enumerate network shares

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x25c
mov eax, dword [0x10250150]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
mov esi, ecx
push edi
mov dword [ebp - 0x234], esi
call fcn.100e9500
test eax, eax
jne 0x10120578
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10212f74
mov esp, ebp
pop ebp
ret
mov dword [ebp - 0x240], 0
mov dword [ebp - 0x24c], 0
mov dword [ebp - 0x248], 0
call fcn.10003980
mov ecx, eax
test ecx, ecx
je 0x10121496
mov eax, dword [ecx]
call dword [eax + 0xc]
mov dword [ebp - 0x25c], eax
lea eax, [ebp - 0x248]
push eax
lea eax, [ebp - 0x24c]
push eax
lea eax, [ebp - 0x240]
push eax
push 0xffffffffffffffff
lea eax, [ebp - 0x244]
push eax
push 0x1f6
push 0
call sub.NETAPI32.dll_NetShareEnum
mov dword [ebp - 0x258], eax
test eax, eax
je 0x101205ef
cmp eax, 0xea
jne 0x10121447
mov ebx, dword [ebp - 0x244]
mov dword [ebp - 0x238], ebx
test ebx, ebx
je 0x1012143c
mov edi, 1
mov dword [ebp - 0x23c], edi
cmp dword [ebp - 0x240], edi
jb 0x10121430
lea ebx, [ebx]
cmp dword [ebx + 4], 0
jne 0x1012140e
push ebx
mov ecx, esi
call fcn.101204a0
test eax, eax
jne 0x1012140e
push ebx
mov ecx, esi
call fcn.10120420
test eax, eax
jne 0x1012140e
mov edi, dword [ebx + 0x18]
mov dword [ebp - 0x22c], eax
mov dword [ebp - 0x228], eax
mov dword [ebp - 0x224], eax
call fcn.10003980
mov ecx, eax
test ecx, ecx
je 0x10121496
mov eax, dword [ecx]
call dword [eax + 0xc]
lea esi, [eax + 0x10]
mov dword [ebp - 0x214], esi
test edi, edi
je 0x101207a2
test edi, 0xffff0000
jne 0x1012078c
movzx eax, di
mov ecx, 0x1025ab98
push 0
mov dword [ebp - 0x220], eax
call fcn.101d9675
mov edi, eax
mov ebx, 1
test edi, edi
je 0x101207b7
mov eax, dword [ebp - 0x220]
shr eax, 4
inc eax
mov dword [ebp - 0x218], eax
push 0
push eax
push 6
push edi
call dword [sym.imp.KERNEL32.dll_FindResourceExW]
test eax, eax
je 0x101206e8
push dword [ebp - 0x220]
push eax
push edi
call fcn.100041b0
add esp, 0xc
test eax, eax
jne 0x10120706
push ebx
mov ecx, 0x1025ab98
call fcn.101d9675
mov edi, eax
inc ebx
test edi, edi
je 0x101207b7
mov eax, dword [ebp - 0x218]
jmp 0x101206c4
test edi, edi
je 0x101207b7
push 6
push dword [ebp - 0x218]
push edi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
test eax, eax
je 0x101207b7
push dword [ebp - 0x220]
push eax
push edi
call fcn.100041b0
mov ebx, eax
add esp, 0xc
test ebx, ebx
je 0x101207b7
movzx edx, word [ebx]
mov ecx, 1
mov eax, dword [esi - 8]
mov edi, edx
sub ecx, dword [esi - 4]
sub eax, edi
or eax, ecx
jge 0x10120766
push edi
lea ecx, [ebp - 0x214]
call fcn.10003eb0
movzx edx, word [ebx]
mov esi, dword [ebp - 0x214]
movzx eax, dx
push eax
lea eax, [ebx + 2]
push eax
push edi
push esi
call fcn.100a7400
add esp, 0x10
cmp edi, dword [esi - 8]
jg 0x1012148c
xor eax, eax
mov dword [esi - 0xc], edi
mov word [esi + edi*2], ax
jmp 0x101207b7
mov ecx, edi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10120791
sub ecx, edx
sar ecx, 1
jmp 0x101207a4
xor ecx, ecx
push ecx
push edi
lea ecx, [ebp - 0x214]
call fcn.10004050
mov esi, dword [ebp - 0x214]
mov eax, dword [ebp - 0x228]
lea ecx, [ebp - 0x214]
push ecx
cmp eax, dword [ebp - 0x224]
je 0x101207dc
mov ecx, eax
call fcn.1001e2c0
add dword [ebp - 0x228], 4
jmp 0x101207e8
push eax
lea ecx, [ebp - 0x22c]
call fcn.100206c0
add esi, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [esi + 0xc], eax
dec eax
test eax, eax
jg 0x10120800
mov ecx, dword [esi]
push esi
mov eax, dword [ecx]
call dword [eax + 4]
push 1
push 0
push ecx
mov ebx, esp
call fcn.10003980
mov ecx, eax
test ecx, ecx
je 0x10121496
mov eax, dword [ecx]
call dword [eax + 0xc]
mov esi, 0x10219d7c
add eax, 0x10
shr esi, 0x10
mov dword [ebx], eax
mov dword [ebp - 0x214], esi
push 0
test esi, esi
jne 0x101209c9
mov ecx, 0x1025ab98
call fcn.101d9675
mov esi, eax
mov edi, 1
test esi, esi
je 0x10120927
mov ecx, 0x10219d7c
movzx eax, cx
shr eax, 4
inc eax
mov dword [ebp - 0x218], eax
push 0
push eax
push 6
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceExW]
test eax, eax
je 0x1012088a
mov edx, 0x10219d7c
movzx ecx, dx
push ecx
push eax
push esi
call fcn.100041b0
add esp, 0xc
test eax, eax
jne 0x101208a8
push edi
mov ecx, 0x1025ab98
call fcn.101d9675
mov esi, eax
inc edi
test esi, esi
je 0x10120927
mov eax, dword [ebp - 0x218]
jmp 0x10120863
test esi, esi
je 0x10120927
push 6
push dword [ebp - 0x218]
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov ecx, eax
test ecx, ecx
je 0x10120927
mov edx, 0x10219d7c
movzx eax, dx
push eax
push ecx
push esi
call fcn.100041b0
mov edi, eax
add esp, 0xc
test edi, edi
je 0x10120927
mov eax, dword [ebx]
mov ecx, 1
movzx edx, word [edi]
mov esi, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, esi
or eax, ecx
jge 0x101208fd
push esi
mov ecx, ebx
call fcn.10003eb0
movzx edx, word [edi]
mov ecx, dword [ebx]
movzx eax, dx
push eax
lea eax, [edi + 2]
push eax
push esi
push ecx
call fcn.100a7400
mov eax, dword [ebx]
add esp, 0x10
cmp esi, dword [eax - 8]
jg 0x1012148c
mov dword [eax - 0xc], esi
xor ecx, ecx
mov eax, dword [ebx]
mov word [eax + esi*2], cx
mov esi, dword [ebp - 0x214]
push 1
push 0xffffffffffffffff
push 0xffffffffffffffff
push ecx
mov ebx, esp
call fcn.10003980
mov ecx, eax
test ecx, ecx
je 0x10121496
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebx], eax
push 0
test esi, esi
jne 0x10120af5
mov ecx, 0x1025ab98
call fcn.101d9675
mov esi, eax
mov edi, 1
test esi, esi
je 0x10120a59
mov ecx, 0x10219d7c
movzx eax, cx
shr eax, 4
inc eax
mov dword [ebp - 0x218], eax
push 0
push eax
push 6
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceExW]
test eax, eax
je 0x101209ab
mov edx, 0x10219d7c
movzx ecx, dx
push ecx
push eax
push esi
call fcn.100041b0
add esp, 0xc
test eax, eax
jne 0x101209da
push edi
mov ecx, 0x1025ab98
call fcn.101d9675
mov esi, eax
inc edi
test esi, esi
je 0x10120a59
mov eax, dword [ebp - 0x218]
jmp 0x10120984
push 0x10219d7c
mov ecx, ebx
call fcn.10004050
jmp 0x1012092d
test esi, esi
je 0x10120a59
push 6
push dword [ebp - 0x218]
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov ecx, eax
test ecx, ecx
je 0x10120a59
mov edx, 0x10219d7c
movzx eax, dx
push eax
push ecx
push esi
call fcn.100041b0
mov edi, eax
add esp, 0xc
test edi, edi
je 0x10120a59
mov eax, dword [ebx]
mov ecx, 1
movzx edx, word [edi]
mov esi, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, esi
or eax, ecx
jge 0x10120a2f
push esi
mov ecx, ebx
call fcn.10003eb0
movzx edx, word [edi]
mov ecx, dword [ebx]
movzx eax, dx
push eax
lea eax, [edi + 2]
push eax
push esi
push ecx
call fcn.100a7400
mov eax, dword [ebx]
add esp, 0x10
cmp esi, dword [eax - 8]
jg 0x1012148c
mov dword [eax - 0xc], esi
xor ecx, ecx
mov eax, dword [ebx]
mov word [eax + esi*2], cx
mov esi, dword [ebp - 0x214]
push ecx
mov ebx, esp
call fcn.10003980
mov ecx, eax
test ecx, ecx
je 0x10121496
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebx], eax
push 0
test esi, esi
jne 0x10120c25
mov ecx, 0x1025ab98
call fcn.101d9675
mov esi, eax
mov edi, 1
test esi, esi
je 0x10120b85
mov ecx, 0x10219d7c
movzx eax, cx
shr eax, 4
inc eax
mov dword [ebp - 0x218], eax
push 0
push eax
push 6
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceExW]
test eax, eax
je 0x10120ad7
mov edx, 0x10219d7c
movzx ecx, dx
push ecx
push eax
push esi
call fcn.100041b0
add esp, 0xc
test eax, eax
jne 0x10120b06
push edi
mov ecx, 0x1025ab98
call fcn.101d9675
mov esi, eax
inc edi
test esi, esi
je 0x10120b85
mov eax, dword [ebp - 0x218]
jmp 0x10120ab0
push 0x10219d7c
mov ecx, ebx
call fcn.10004050
jmp 0x10120a5f
test esi, esi
je 0x10120b85
push 6
push dword [ebp - 0x218]
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov ecx, eax
test ecx, ecx
je 0x10120b85
mov edx, 0x10219d7c
movzx eax, dx
push eax
push ecx
push esi
call fcn.100041b0
mov edi, eax
add esp, 0xc
test edi, edi
je 0x10120b85
mov eax, dword [ebx]
mov ecx, 1
movzx edx, word [edi]
mov esi, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, esi
or eax, ecx
jge 0x10120b5b
push esi
mov ecx, ebx
call fcn.10003eb0
movzx edx, word [edi]
mov ecx, dword [ebx]
movzx eax, dx
push eax
lea eax, [edi + 2]
push eax
push esi
push ecx
call fcn.100a7400
mov eax, dword [ebx]
add esp, 0x10
cmp esi, dword [eax - 8]
jg 0x1012148c
mov dword [eax - 0xc], esi
xor ecx, ecx
mov eax, dword [ebx]
mov word [eax + esi*2], cx
mov esi, dword [ebp - 0x214]
push ecx
mov ebx, esp
call fcn.10003980
test eax, eax
je 0x10121496
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0xc]
add eax, 0x10
mov dword [ebx], eax
push 0
test esi, esi
jne 0x10120ccf
mov ecx, 0x1025ab98
call fcn.101d9675
mov esi, eax
mov edi, 1
test esi, esi
je 0x10120cdb
mov ecx, 0x10219d7c
movzx eax, cx
shr eax, 4
inc eax
mov dword [ebp - 0x218], eax
lea esp, [esp]
push 0
push eax
push 6
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceExW]
test eax, eax
je 0x10120c07
mov edx, 0x10219d7c
movzx ecx, dx
push ecx
push eax
push esi
call fcn.100041b0
add esp, 0xc
test eax, eax
jne 0x10120c36
push edi
mov ecx, 0x1025ab98
call fcn.101d9675
mov esi, eax
inc edi
test esi, esi
je 0x10120cdb
mov eax, dword [ebp - 0x218]
jmp 0x10120be0
push 0x10219d7c
mov ecx, ebx
call fcn.10004050
jmp 0x10120b8b
test esi, esi
je 0x10120cdb
push 6
push dword [ebp - 0x218]
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov ecx, eax
test ecx, ecx
je 0x10120cdb
mov edx, 0x10219d7c
movzx eax, dx
push eax
push ecx
push esi
call fcn.100041b0
mov edi, eax
add esp, 0xc
test edi, edi
je 0x10120cdb
movzx ecx, word [edi]
mov edx, dword [ebx]
mov eax, ecx
mov esi, ecx
mov dword [ebp - 0x21c], eax
mov ecx, 1
mov eax, dword [edx - 8]
sub ecx, dword [edx - 4]
sub eax, esi
or ecx, eax
jge 0x10120c9f
push esi
mov ecx, ebx
call fcn.10003eb0
movzx eax, word [edi]
mov edx, dword [ebx]
jmp 0x10120ca5
mov eax, dword [ebp - 0x21c]
movzx eax, ax
push eax
lea eax, [edi + 2]
push eax
push esi
push edx
call fcn.100a7400
mov eax, dword [ebx]
add esp, 0x10
cmp esi, dword [eax - 8]
jg 0x1012148c
mov dword [eax - 0xc], esi
xor ecx, ecx
mov eax, dword [ebx]
mov word [eax + esi*2], cx
jmp 0x10120cdb
push 0x10219d7c
mov ecx, ebx
call fcn.10004050
call fcn.10003980
test eax, eax
je 0x10121496
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0xc]
push 0
mov ecx, 0x1025ab98
lea esi, [eax + 0x10]
mov dword [ebp - 0x220], esi
call fcn.101d9675
mov edi, eax
mov ebx, 1
test edi, edi
je 0x10120dd1
push 0
push 0x281
push 6
push edi
call dword [sym.imp.KERNEL32.dll_FindResourceExW]
test eax, eax
je 0x10120d3a
push 0x2807
push eax
push edi
call fcn.100041b0
add esp, 0xc
test eax, eax
jne 0x10120d51
push ebx
mov ecx, 0x1025ab98
call fcn.101d9675
mov edi, eax
inc ebx
test edi, edi
jne 0x10120d13
jmp 0x10120dd1
test edi, edi
je 0x10120dd1
push 6
push 0x281
push edi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
test eax, eax
je 0x10120dd1
push 0x2807
push eax
push edi
call fcn.100041b0
mov ebx, eax
add esp, 0xc
test ebx, ebx
je 0x10120dd1
movzx ecx, word [ebx]
mov eax, dword [esi - 8]
mov edi, ecx
mov edx, ecx
sub eax, edi
mov ecx, 1
sub ecx, dword [esi - 4]
or ecx, eax
jge 0x10120dad
push edi
lea ecx, [ebp - 0x220]
call fcn.10003eb0
movzx edx, word [ebx]
mov esi, dword [ebp - 0x220]
movzx eax, dx
push eax
lea eax, [ebx + 2]
push eax
push edi
push esi
call fcn.100a7400
add esp, 0x10
cmp edi, dword [esi - 8]
jg 0x1012148c
xor eax, eax
mov dword [esi - 0xc], edi
mov word [esi + edi*2], ax
call fcn.10003980
test eax, eax
je 0x10121496
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0xc]
push 0
mov ecx, 0x1025ab98
lea esi, [eax + 0x10]
mov dword [ebp - 0x230], esi
call fcn.101d9675
mov edi, eax
mov ebx, 1
test edi, edi
je 0x10120eca
lea esp, [esp]
push 0
push 0x9c9
push 6
push edi
call dword [sym.imp.KERNEL32.dll_FindResourceExW]
test eax, eax
je 0x10120e37
push 0x9c8b
push eax
push edi
call fcn.100041b0
add esp, 0xc
test eax, eax
jne 0x10120e4e
push ebx
mov ecx, 0x1025ab98
call fcn.101d9675
mov edi, eax
inc ebx
test edi, edi
jne 0x10120e10
jmp 0x10120eca
test edi, edi
je 0x10120eca
push 6
push 0x9c9
push edi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
test eax, eax
je 0x10120eca
push 0x9c8b
push eax
push edi
call fcn.100041b0
mov ebx, eax
add esp, 0xc
test ebx, ebx
je 0x10120eca
movzx ecx, word [ebx]
mov eax, dword [esi - 8]
mov edi, ecx
mov edx, ecx
sub eax, edi
mov ecx, 1
sub ecx, dword [esi - 4]
or ecx, eax
jge 0x10120ea6
push edi
lea ecx, [ebp - 0x230]
call fcn.10003eb0
movzx edx, word [ebx]
mov esi, dword [ebp - 0x230]
movzx eax, dx
push eax
lea eax, [ebx + 2]
push eax
push edi
push esi
call fcn.100a7400
add esp, 0x10
cmp edi, dword [esi - 8]
jg 0x1012148c
xor eax, eax
mov dword [esi - 0xc], edi
mov word [esi + edi*2], ax
mov edi, dword [ebp - 0x238]
mov edi, dword [edi]
call fcn.10003980
test eax, eax
je 0x10121496
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0xc]
lea esi, [eax + 0x10]
mov dword [ebp - 0x214], esi
test edi, edi
je 0x10121017
test edi, 0xffff0000
jne 0x10121001
movzx eax, di
mov ecx, 0x1025ab98
push 0
mov dword [ebp - 0x218], eax
call fcn.101d9675
mov edi, eax
mov ebx, 1
test edi, edi
je 0x10121026
mov eax, dword [ebp - 0x218]
shr eax, 4
inc eax
mov dword [ebp - 0x21c], eax
push 0
push eax
push 6
push edi
call dword [sym.imp.KERNEL32.dll_FindResourceExW]
test eax, eax
je 0x10120f5b
push dword [ebp - 0x218]
push eax
push edi
call fcn.100041b0
add esp, 0xc
test eax, eax
jne 0x10120f79
push ebx
mov ecx, 0x1025ab98
call fcn.101d9675
mov edi, eax
inc ebx
test edi, edi
je 0x10121026
mov eax, dword [ebp - 0x21c]
jmp 0x10120f37
test edi, edi
je 0x10121026
push 6
push dword [ebp - 0x21c]
push edi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
test eax, eax
je 0x10121026
push dword [ebp - 0x218]
push eax
push edi
call fcn.100041b0
mov ebx, eax
add esp, 0xc
test ebx, ebx
je 0x10121026
movzx ecx, word [ebx]
mov eax, dword [esi - 8]
mov edi, ecx
mov edx, ecx
sub eax, edi
mov ecx, 1
sub ecx, dword [esi - 4]
or ecx, eax
jge 0x10120fdb
push edi
lea ecx, [ebp - 0x214]
call fcn.10003eb0
movzx edx, word [ebx]
mov esi, dword [ebp - 0x214]
movzx eax, dx
push eax
lea eax, [ebx + 2]
push eax
push edi
push esi
call fcn.100a7400
add esp, 0x10
cmp edi, dword [esi - 8]
jg 0x1012148c
xor eax, eax
mov dword [esi - 0xc], edi
mov word [esi + edi*2], ax
jmp 0x10121026
mov ecx, edi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10121006
sub ecx, edx
sar ecx, 1
jmp 0x10121019
xor ecx, ecx
push ecx
push edi
lea ecx, [ebp - 0x214]
call fcn.10004050
call fcn.10003980
test eax, eax
je 0x10121496
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0xc]
push 0
mov ecx, 0x1025ab98
lea edi, [eax + 0x10]
mov dword [ebp - 0x21c], edi
call fcn.101d9675
mov esi, eax
mov ebx, 1
test esi, esi
je 0x1012111a
mov edi, edi
push 0
push 0x285
push 6
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceExW]
test eax, eax
je 0x10121087
push 0x284e
push eax
push esi
call fcn.100041b0
add esp, 0xc
test eax, eax
jne 0x1012109e
push ebx
mov ecx, 0x1025ab98
call fcn.101d9675
mov esi, eax
inc ebx
test esi, esi
jne 0x10121060
jmp 0x1012111a
test esi, esi
je 0x1012111a
push 6
push 0x285
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
test eax, eax
je 0x1012111a
push 0x284e
push eax
push esi
call fcn.100041b0
mov ebx, eax
add esp, 0xc
test ebx, ebx
je 0x1012111a
movzx ecx, word [ebx]
mov eax, dword [edi - 8]
mov esi, ecx
mov edx, ecx
sub eax, esi
mov ecx, 1
sub ecx, dword [edi - 4]
or ecx, eax
jge 0x101210f6
push esi
lea ecx, [ebp - 0x21c]
call fcn.10003eb0
movzx edx, word [ebx]
mov edi, dword [ebp - 0x21c]
movzx eax, dx
push eax
lea eax, [ebx + 2]
push eax
push esi
push edi
call fcn.100a7400
add esp, 0x10
cmp esi, dword [edi - 8]
jg 0x1012148c
xor eax, eax
mov dword [edi - 0xc], esi
mov word [edi + esi*2], ax
mov ecx, dword [edi - 0x10]
lea eax, [edi - 0x10]
mov dword [ebp - 0x254], eax
test ecx, ecx
je 0x10121135
mov eax, dword [ecx]
call dword [eax + 0x10]
mov ecx, eax
test ecx, ecx
jne 0x1012114b
call fcn.10003980
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x10]
mov ecx, eax
test ecx, ecx
je 0x10121496
mov eax, dword [ecx]
call dword [eax + 0xc]
lea esi, [eax + 0x10]
mov eax, dword [ebp - 0x214]
mov dword [ebp - 0x21c], esi
mov ecx, dword [eax - 0xc]
mov eax, dword [edi - 0xc]
mov dword [ebp - 0x250], ecx
mov dword [ebp - 0x218], eax
lea ebx, [ecx + eax]
test ebx, ebx
js 0x1012148c
mov eax, dword [esi - 8]
mov ecx, 1
sub ecx, dword [esi - 4]
sub eax, ebx
or ecx, eax
jge 0x1012119f
push ebx
lea ecx, [ebp - 0x21c]
call fcn.10003eb0
mov esi, dword [ebp - 0x21c]
mov eax, dword [ebp - 0x218]
add eax, eax
mov dword [ebp - 0x21c], eax
je 0x101211d6
test esi, esi
jne 0x101211c5
call fcn.102134ed
mov dword [eax], 0x16
call fcn.10200a90
jmp 0x101211d0
push eax
push edi
push esi
call fcn.102134e1
add esp, 0xc
mov eax, dword [ebp - 0x21c]
mov ecx, dword [ebp - 0x250]
add eax, esi
add ecx, ecx
je 0x101211fa
test eax, eax
jne 0x10121320
call fcn.102134ed
mov dword [eax], 0x16
call fcn.10200a90
mov edi, dword [ebp - 0x214]
cmp ebx, dword [esi - 8]
jg 0x1012148c
mov ecx, dword [ebp - 0x234]
xor eax, eax
push eax
push 0xffffffffffffffff
push 2
push eax
mov dword [esi - 0xc], ebx
mov word [esi + ebx*2], ax
lea eax, [ebp - 0x22c]
push eax
push 0
push 0x10219d7c
push dword [ebp - 0x220]
push dword [ebp - 0x230]
push esi
call fcn.100d6a20
mov ebx, eax
add esi, 0xfffffff0
or ecx, 0xffffffff
lock xadd dword [esi + 0xc], ecx
dec ecx
test ecx, ecx
jg 0x10121258
mov ecx, dword [esi]
push esi
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x254]
or esi, 0xffffffff
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10121275
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
add edi, 0xfffffff0
mov eax, esi
lock xadd dword [edi + 0xc], eax
dec eax
test eax, eax
jg 0x1012128c
mov ecx, dword [edi]
push edi
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x230]
mov eax, esi
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x101212a9
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x220]
mov eax, esi
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x101212c6
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x208
lea eax, [ebp - 0x20c]
push 0
push eax
call fcn.102134e7
mov dword [ebp - 0x210], ebx
lea ecx, [ebp - 0x20c]
mov ebx, dword [ebp - 0x238]
mov eax, ecx
add esp, 0xc
mov edx, 0x104
mov esi, dword [ebx]
sub esi, eax
lea esp, [esp]
lea eax, [edx + 0x7ffffefa]
test eax, eax
je 0x1012133d
movzx eax, word [ecx + esi]
test ax, ax
je 0x10121336
mov word [ecx], ax
add ecx, 2
sub edx, 1
jne 0x10121300
jmp 0x1012133a
mov edi, dword [ebp - 0x214]
push ecx
push edi
push eax
call fcn.102134e1
add esp, 0xc
jmp 0x10121200
test edx, edx
jne 0x1012133d
sub ecx, 2
xor eax, eax
mov word [ecx], ax
mov eax, dword [ebp - 0x234]
mov edx, dword [eax + 0xcc]
cmp edx, dword [eax + 0xd0]
je 0x10121371
mov ecx, 0x83
lea esi, [ebp - 0x210]
mov edi, edx
rep movsd dword es:[edi], dword [esi]
add dword [eax + 0xcc], 0x20c
jmp 0x10121384
lea ecx, [ebp - 0x210]
push ecx
push edx
lea ecx, [eax + 0xc8]
call fcn.1011fdf0
mov esi, dword [ebp - 0x22c]
test esi, esi
je 0x10121402
mov edi, dword [ebp - 0x228]
cmp esi, edi
je 0x101213cc
or ebx, 0xffffffff
jmp 0x101213a0
mov edx, dword [esi]
mov eax, ebx
sub edx, 0x10
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x101213b9
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
add esi, 4
cmp esi, edi
jne 0x101213a0
mov esi, dword [ebp - 0x22c]
mov ebx, dword [ebp - 0x238]
mov eax, dword [ebp - 0x224]
lea ecx, [ebp - 0x22c]
sub eax, esi
sar eax, 2
push eax
push esi
call fcn.10008350
mov dword [ebp - 0x22c], 0
mov dword [ebp - 0x228], 0
mov dword [ebp - 0x224], 0
mov edi, dword [ebp - 0x23c]
mov esi, dword [ebp - 0x234]
inc edi
add ebx, 0x28
mov dword [ebp - 0x23c], edi
mov dword [ebp - 0x238], ebx
cmp edi, dword [ebp - 0x240]
jbe 0x10120620
mov ebx, dword [ebp - 0x244]
push ebx
call sub.NETAPI32.dll_NetApiBufferFree
mov eax, dword [ebp - 0x258]
cmp eax, 0xea
je 0x101205b0
mov eax, dword [esi + 0xc0]
xor ecx, ecx
sub eax, dword [esi + 0xbc]
mov ebx, dword [ebp - 0x25c]
sar eax, 2
cmp ecx, eax
sbb esi, esi
or edi, 0xffffffff
neg esi
lock xadd dword [ebx + 0xc], edi
dec edi
test edi, edi
jg 0x10121479
mov ecx, dword [ebx]
push ebx
mov edx, dword [ecx]
call dword [edx + 4]
mov ecx, dword [ebp - 4]
mov eax, esi
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.10212f74
mov esp, ebp
pop ebp
ret
push 0x80070057
call fcn.100030c0
push 0x80004005
call fcn.100030c0
int3