Function at 0x7dc6f0
Capabilities:
Encode data using xor
Link many functions at runtime

Disassembly:
push ebx
push esi
push edi
mov edi, 0x75f0a8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, 8
jle 0x7dc70e
mov ecx, 8
jmp 0x7dc712
test ecx, ecx
jle 0x7dc731
or eax, 0xffffffff
mov dl, byte [eax + ecx + 0x7da508]
mov bl, byte [eax + ecx + 0x75f0a8]
xor bl, dl
mov byte [eax + ecx + 0x75f0a8], bl
dec ecx
test ecx, ecx
jg 0x7dc715
push 0x75f0a8
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
mov edi, 0x75f0a8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x75f0a8
mov edx, ecx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
test esi, esi
rep stosb byte es:[edi], al
jne 0x7dc771
push 0x75f1b4
call fcn.007df440
add esp, 4
mov edi, 0x75f0c4
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, 8
jle 0x7dc78c
mov ecx, 8
jmp 0x7dc790
test ecx, ecx
jle 0x7dc7af
or eax, 0xffffffff
mov dl, byte [eax + ecx + 0x7da508]
mov bl, byte [eax + ecx + 0x75f0c4]
xor bl, dl
mov byte [eax + ecx + 0x75f0c4], bl
dec ecx
test ecx, ecx
jg 0x7dc793
push 0x75f0c4
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, eax
mov edi, 0x75f0c4
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x75f0c4
mov ebx, ecx
mov dword [0x7e816c], edx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, ebx
and ecx, 3
test edx, edx
rep stosb byte es:[edi], al
jne 0x7dc7fb
push 0x75f1a0
push 0x75f198
call fcn.007df440
add esp, 8
mov edi, 0x75f0d0
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, 8
jle 0x7dc816
mov ecx, 8
jmp 0x7dc81a
test ecx, ecx
jle 0x7dc839
or eax, 0xffffffff
mov dl, byte [eax + ecx + 0x7da508]
mov bl, byte [eax + ecx + 0x75f0d0]
xor bl, dl
mov byte [eax + ecx + 0x75f0d0], bl
dec ecx
test ecx, ecx
jg 0x7dc81d
push 0x75f0d0
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, eax
mov edi, 0x75f0d0
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x75f0d0
mov ebx, ecx
mov dword [0x7e8170], edx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, ebx
and ecx, 3
test edx, edx
rep stosb byte es:[edi], al
jne 0x7dc885
push 0x75f184
push 0x75f17c
call fcn.007df440
add esp, 8
mov edi, 0x75f0dc
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, 8
jle 0x7dc8a0
mov ecx, 8
jmp 0x7dc8a4
test ecx, ecx
jle 0x7dc8c3
or eax, 0xffffffff
mov dl, byte [eax + ecx + 0x7da508]
mov bl, byte [eax + ecx + 0x75f0dc]
xor bl, dl
mov byte [eax + ecx + 0x75f0dc], bl
dec ecx
test ecx, ecx
jg 0x7dc8a7
push 0x75f0dc
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, eax
mov edi, 0x75f0dc
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x75f0dc
mov ebx, ecx
mov dword [0x7e8174], edx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, ebx
and ecx, 3
test edx, edx
rep stosb byte es:[edi], al
jne 0x7dc90f
push 0x75f164
push 0x75f17c
call fcn.007df440
add esp, 8
mov edi, 0x75f0f0
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, 8
jle 0x7dc92a
mov ecx, 8
jmp 0x7dc92e
test ecx, ecx
jle 0x7dc94d
or eax, 0xffffffff
mov dl, byte [eax + ecx + 0x7da508]
mov bl, byte [eax + ecx + 0x75f0f0]
xor bl, dl
mov byte [eax + ecx + 0x75f0f0], bl
dec ecx
test ecx, ecx
jg 0x7dc931
push 0x75f0f0
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, eax
mov edi, 0x75f0f0
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x75f0f0
mov ebx, ecx
mov dword [0x7e8178], edx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, ebx
and ecx, 3
test edx, edx
rep stosb byte es:[edi], al
jne 0x7dc999
push 0x75f150
push 0x75f17c
call fcn.007df440
add esp, 8
mov edi, 0x75f0fc
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, 8
jle 0x7dc9b4
mov ecx, 8
jmp 0x7dc9b8
test ecx, ecx
jle 0x7dc9d7
or eax, 0xffffffff
mov dl, byte [eax + ecx + 0x7da508]
mov bl, byte [eax + ecx + 0x75f0fc]
xor bl, dl
mov byte [eax + ecx + 0x75f0fc], bl
dec ecx
test ecx, ecx
jg 0x7dc9bb
mov ebx, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0x75f0fc
push esi
call ebx
mov edx, eax
mov edi, 0x75f0fc
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x75f0fc
mov esi, ecx
mov dword [0x7e817c], edx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, esi
and ecx, 3
test edx, edx
rep stosb byte es:[edi], al
jne 0x7dca25
push 0x75f13c
push 0x75f17c
call fcn.007df440
add esp, 8
mov edi, 0x75f0b8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, 8
jle 0x7dca40
mov ecx, 8
jmp 0x7dca44
test ecx, ecx
jle 0x7dca5a
or eax, 0xffffffff
mov dl, byte [eax + ecx + 0x7da508]
xor byte [eax + ecx + 0x75f0b8], dl
dec ecx
test ecx, ecx
jg 0x7dca47
push 0x75f0b8
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
mov edi, 0x75f0b8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x75f0b8
mov edx, ecx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
test esi, esi
rep stosb byte es:[edi], al
jne 0x7dca9f
push 0x75f12c
push 0x75f17c
call fcn.007df440
add esp, 8
mov edi, 0x75f10c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, 8
jle 0x7dcaba
mov ecx, 8
jmp 0x7dcabe
test ecx, ecx
jle 0x7dcad4
or eax, 0xffffffff
mov dl, byte [eax + ecx + 0x7da508]
xor byte [eax + ecx + 0x75f10c], dl
dec ecx
test ecx, ecx
jg 0x7dcac1
push 0x75f10c
push esi
call ebx
mov edx, eax
mov edi, 0x75f10c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x75f10c
mov esi, ecx
mov dword [fcn.007e8180], edx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, esi
and ecx, 3
rep stosb byte es:[edi], al
pop edi
pop esi
test edx, edx
pop ebx
jne 0x7dcb1f
push 0x75f118
push 0x75f17c
call fcn.007df440
add esp, 8
ret