Function at 0x4dcde8
Capabilities:
Link many functions at runtime

Disassembly:
push ebx
push esi
push edi
test dl, dl
je 0x4dcdf7
add esp, 0xfffffff0
call fcn.00403dfc
mov ebx, edx
mov edi, eax
xor edx, edx
mov eax, edi
call fcn.00403a68
mov dl, 1
mov eax, dword [0x463178]
call fcn.004631e8
mov dword [edi + 0x90], eax
xor eax, eax
mov dword [edi + 4], eax
xor eax, eax
mov dword [edi + 8], eax
xor eax, eax
mov dword [edi + 0xc], eax
xor eax, eax
mov dword [edi + 0x10], eax
xor eax, eax
mov dword [edi + 0x14], eax
xor eax, eax
mov dword [edi + 0x18], eax
xor eax, eax
mov dword [edi + 0x1c], eax
xor eax, eax
mov dword [edi + 0x20], eax
xor eax, eax
mov dword [edi + 0x24], eax
xor eax, eax
mov dword [edi + 0x28], eax
xor eax, eax
mov dword [edi + 0x2c], eax
xor eax, eax
mov dword [edi + 0x30], eax
xor eax, eax
mov dword [edi + 0x34], eax
xor eax, eax
mov dword [edi + 0x38], eax
xor eax, eax
mov dword [edi + 0x3c], eax
xor eax, eax
mov dword [edi + 0x40], eax
xor eax, eax
mov dword [edi + 0x44], eax
xor eax, eax
mov dword [edi + 0x48], eax
xor eax, eax
mov dword [edi + 0x4c], eax
xor eax, eax
mov dword [edi + 0x50], eax
xor eax, eax
mov dword [edi + 0x54], eax
xor eax, eax
mov dword [edi + 0x58], eax
xor eax, eax
mov dword [edi + 0x5c], eax
xor eax, eax
mov dword [edi + 0x5c], eax
xor eax, eax
mov dword [edi + 0x64], eax
xor eax, eax
mov dword [edi + 0x68], eax
xor eax, eax
mov dword [edi + 0x6c], eax
xor eax, eax
mov dword [edi + 0x70], eax
xor eax, eax
mov dword [edi + 0x74], eax
xor eax, eax
mov dword [edi + 0x78], eax
xor eax, eax
mov dword [edi + 0x7c], eax
xor eax, eax
mov dword [edi + 0x80], eax
xor eax, eax
mov dword [edi + 0x84], eax
xor eax, eax
mov dword [edi + 0x88], eax
xor eax, eax
mov dword [edi + 0x8c], eax
mov eax, 0x4dd174
call fcn.004093c4
test al, al
je 0x4dd14e
push 0x4dd194
call sub.kernel32.dll_LoadLibraryA
mov esi, eax
mov dword [edi + 4], esi
test esi, esi
je 0x4dd14e
push 0x4dd1b4
push esi
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 8], eax
push 0x4dd1c0
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0xc], eax
push 0x4dd1cc
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x10], eax
push 0x4dd1dc
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x14], eax
push 0x4dd1e8
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x18], eax
push 0x4dd1fc
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x1c], eax
push 0x4dd208
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x20], eax
push 0x4dd214
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x24], eax
push 0x4dd220
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x28], eax
push 0x4dd230
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x2c], eax
push 0x4dd244
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x30], eax
push 0x4dd254
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x34], eax
push 0x4dd268
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x38], eax
push 0x4dd278
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x3c], eax
push 0x4dd28c
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x40], eax
push 0x4dd29c
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x44], eax
push 0x4dd2b0
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x48], eax
push 0x4dd2c4
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x4c], eax
push 0x4dd2d8
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x50], eax
push 0x4dd2ec
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x54], eax
push 0x4dd300
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x58], eax
push 0x4dd318
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x5c], eax
push 0x4dd328
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x60], eax
push 0x4dd338
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x64], eax
push 0x4dd348
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x68], eax
push 0x4dd358
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x6c], eax
push 0x4dd368
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x70], eax
push 0x4dd378
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x74], eax
push 0x4dd38c
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x78], eax
push 0x4dd3a0
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x7c], eax
push 0x4dd3b0
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x80], eax
push 0x4dd3c0
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x84], eax
push 0x4dd3d0
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x88], eax
push 0x4dd3dc
mov eax, dword [edi + 4]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [edi + 0x8c], eax
cmp dword [edi + 8], 0
je 0x4dd14e
call dword [edi + 8]
mov eax, edi
test bl, bl
je 0x4dd163
call fcn.00403e54
pop dword fs:[0]
add esp, 0xc
mov eax, edi
pop edi
pop esi
pop ebx
ret