Function at 0x40d42b
Capabilities:
Link many functions at runtime

Disassembly:
push 0x80
mov eax, 0x430b9a
call fcn.0042fc6e
mov esi, ecx
mov dword [ebp - 0x88], esi
mov eax, dword [ebp + 8]
xor ebx, ebx
mov edi, dword [ebp + 0xc]
mov dword [ebp - 0x8c], esi
push 0x402cb0
mov dword [ebp - 0x78], eax
mov dword [esi], ebx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [esi + 4], eax
test eax, eax
jne 0x40d46c
call fcn.0040d33a
mov al, byte [ebp + 0x10]
mov dword [ebp - 4], ebx
mov dword [esi + 0x10], ebx
mov dword [esi + 0x14], ebx
mov dword [esi + 0x18], ebx
mov dword [esi + 0x1c], ebx
mov dword [esi + 0x20], ebx
mov dword [esi + 0x24], ebx
mov dword [esi + 0x28], ebx
mov dword [esi + 0x2c], ebx
mov dword [esi + 0x30], ebx
mov dword [esi + 0x34], ebx
mov ebx, 0x402cc0
push ebx
push dword [esi + 4]
mov byte [esi + 8], al
mov dword [esi + 0xc], 1
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [esi + 0x18], eax
test eax, eax
je 0x40d6d5
mov ebx, 0x402cdc
push ebx
push dword [esi + 4]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [esi + 0x1c], eax
test eax, eax
jne 0x40d4e4
push ebx
lea ecx, [ebp - 0x2c]
call fcn.0040c205
lea ecx, [ebp - 0x74]
call fcn.004065ce
mov byte [ebp - 4], 4
jmp 0x40d6ea
mov ebx, 0x402cf4
push ebx
push dword [esi + 4]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [esi + 0x24], eax
test eax, eax
jne 0x40d514
push ebx
lea ecx, [ebp - 0x2c]
call fcn.0040c205
lea ecx, [ebp - 0x74]
call fcn.004065ce
mov byte [ebp - 4], 6
jmp 0x40d6ea
mov ebx, 0x402d18
push ebx
push dword [esi + 4]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [esi + 0x20], eax
test eax, eax
jne 0x40d544
push ebx
lea ecx, [ebp - 0x2c]
call fcn.0040c205
lea ecx, [ebp - 0x74]
call fcn.004065ce
mov byte [ebp - 4], 8
jmp 0x40d6ea
mov ebx, 0x402d34
push ebx
push dword [esi + 4]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [esi + 0x28], eax
test eax, eax
jne 0x40d574
push ebx
lea ecx, [ebp - 0x2c]
call fcn.0040c205
lea ecx, [ebp - 0x74]
call fcn.004065ce
mov byte [ebp - 4], 0xa
jmp 0x40d6ea
push 0x402d58
push dword [esi + 4]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ebx, 0x402d80
mov dword [esi + 0x2c], eax
push ebx
push dword [esi + 4]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [esi + 0x30], eax
test eax, eax
jne 0x40d5b5
push ebx
lea ecx, [ebp - 0x2c]
call fcn.0040c205
lea ecx, [ebp - 0x74]
call fcn.004065ce
mov byte [ebp - 4], 0xc
jmp 0x40d6ea
mov ebx, 0x402da4
push ebx
push dword [esi + 4]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [esi + 0x34], eax
test eax, eax
jne 0x40d5e5
push ebx
lea ecx, [ebp - 0x2c]
call fcn.0040c205
lea ecx, [ebp - 0x74]
call fcn.004065ce
mov byte [ebp - 4], 0xe
jmp 0x40d6ea
push 0x402dc4
push dword [esi + 4]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ebx, eax
mov dword [esi + 0x14], ebx
test ebx, ebx
je 0x40d65b
xor eax, eax
cmp dword [edi + 0x10], eax
jbe 0x40d60d
cmp dword [edi + 0x14], 8
jb 0x40d60f
mov edi, dword [edi]
jmp 0x40d60f
mov edi, eax
push eax
push eax
push edi
push dword [ebp - 0x78]
mov ecx, ebx
push esi
call dword [0x43d41c]
call ebx
test eax, eax
jne 0x40d6b8
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x402de4
call fcn.0040e023
pop ecx
pop ecx
push 0x402e20
lea ecx, [ebp - 0x84]
call fcn.0040bb5e
push 0x437474
lea eax, [ebp - 0x84]
jmp 0x40d701
mov ebx, 0x402e44
push ebx
push dword [esi + 4]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
mov dword [esi + 0x10], edi
test edi, edi
jne 0x40d68a
push ebx
lea ecx, [ebp - 0x2c]
call fcn.0040c205
lea ecx, [ebp - 0x74]
call fcn.004065ce
mov byte [ebp - 4], 0x10
jmp 0x40d6ea
push 0
push dword [ebp - 0x78]
mov ecx, edi
push esi
call dword [0x43d41c]
call edi
test eax, eax
jne 0x40d6b8
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x402e60
call fcn.0040e023
pop ecx
pop ecx
push 0x402e98
jmp 0x40d640
cmp dword [esi + 0x14], 0
je 0x40d6cb
cmp dword [esi + 0x2c], 0
je 0x40d6cb
mov dword [esi + 0xc], 2
mov eax, esi
call fcn.0042fc1d
ret 0xc
push ebx
lea ecx, [ebp - 0x2c]
call fcn.0040c205
lea ecx, [ebp - 0x74]
call fcn.004065ce
mov byte [ebp - 4], 2
push eax
push 0x7f
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x58]
call fcn.0040d2a3
push 0x437530
lea eax, [ebp - 0x58]
push eax
call sub.msvcrt.dll__CxxThrowException
int3