Function at 0x4710a0
Capabilities:
Link many functions at runtime

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0x14
mov eax, dword [0x61094c]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push dword [0x61204c]
mov esi, ecx
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, eax
test edx, edx
je 0x471408
mov ecx, dword [ebp - 0xc]
mov byte [ebp - 8], 1
xor eax, eax
mov dword [ebp - 0x14], edx
cmp byte [ebp - 8], 1
cmove eax, edx
mov dword [0x612048], eax
movzx eax, byte [ebp - 8]
sub eax, 0
jne 0x47110a
test ecx, ecx
je 0x47110a
mov eax, dword [ecx]
push 1
mov eax, dword [eax]
call eax
push dword [0x612084]
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, eax
test edx, edx
je 0x47142c
mov ecx, dword [ebp - 0xc]
mov byte [ebp - 8], 1
xor eax, eax
mov dword [ebp - 0x14], edx
cmp byte [ebp - 8], 1
cmove eax, edx
mov dword [0x612080], eax
movzx eax, byte [ebp - 8]
sub eax, 0
jne 0x47114e
test ecx, ecx
je 0x47114e
mov eax, dword [ecx]
push 1
mov eax, dword [eax]
call eax
push dword [0x612044]
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, eax
test edx, edx
je 0x471450
mov ecx, dword [ebp - 0xc]
mov byte [ebp - 8], 1
xor eax, eax
mov dword [ebp - 0x14], edx
cmp byte [ebp - 8], 1
cmove eax, edx
mov dword [0x612040], eax
movzx eax, byte [ebp - 8]
sub eax, 0
jne 0x471192
test ecx, ecx
je 0x471192
mov eax, dword [ecx]
push 1
mov eax, dword [eax]
call eax
push dword [0x612094]
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, eax
test edx, edx
je 0x471474
mov ecx, dword [ebp - 0xc]
mov byte [ebp - 8], 1
xor eax, eax
mov dword [ebp - 0x14], edx
cmp byte [ebp - 8], 1
cmove eax, edx
mov dword [0x612090], eax
movzx eax, byte [ebp - 8]
sub eax, 0
jne 0x4711d6
test ecx, ecx
je 0x4711d6
mov eax, dword [ecx]
push 1
mov eax, dword [eax]
call eax
push dword [0x61206c]
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, eax
test edx, edx
je 0x471498
mov ecx, dword [ebp - 0xc]
mov byte [ebp - 8], 1
xor eax, eax
mov dword [ebp - 0x14], edx
cmp byte [ebp - 8], 1
cmove eax, edx
mov dword [0x612068], eax
movzx eax, byte [ebp - 8]
sub eax, 0
jne 0x47121a
test ecx, ecx
je 0x47121a
mov eax, dword [ecx]
push 1
mov eax, dword [eax]
call eax
push dword [0x612074]
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, eax
test edx, edx
je 0x4714bc
mov ecx, dword [ebp - 0xc]
mov byte [ebp - 8], 1
xor eax, eax
mov dword [ebp - 0x14], edx
cmp byte [ebp - 8], 1
cmove eax, edx
mov dword [0x612070], eax
movzx eax, byte [ebp - 8]
sub eax, 0
jne 0x47125e
test ecx, ecx
je 0x47125e
mov eax, dword [ecx]
push 1
mov eax, dword [eax]
call eax
push dword [0x61208c]
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, eax
test edx, edx
je 0x4714e0
mov ecx, dword [ebp - 0xc]
mov byte [ebp - 8], 1
xor eax, eax
mov dword [ebp - 0x14], edx
cmp byte [ebp - 8], 1
cmove eax, edx
mov dword [0x612088], eax
movzx eax, byte [ebp - 8]
sub eax, 0
jne 0x4712a2
test ecx, ecx
je 0x4712a2
mov eax, dword [ecx]
push 1
mov eax, dword [eax]
call eax
push dword [0x61207c]
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, eax
test edx, edx
je 0x471504
mov ecx, dword [ebp - 0xc]
mov byte [ebp - 8], 1
xor eax, eax
mov dword [ebp - 0x14], edx
cmp byte [ebp - 8], 1
cmove eax, edx
mov dword [0x612078], eax
movzx eax, byte [ebp - 8]
sub eax, 0
jne 0x4712e6
test ecx, ecx
je 0x4712e6
mov eax, dword [ecx]
push 1
mov eax, dword [eax]
call eax
push dword [0x612064]
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, eax
test edx, edx
je 0x471528
mov ecx, dword [ebp - 0xc]
mov byte [ebp - 8], 1
xor eax, eax
mov dword [ebp - 0x14], edx
cmp byte [ebp - 8], 1
cmove eax, edx
mov dword [0x612060], eax
movzx eax, byte [ebp - 8]
sub eax, 0
jne 0x47132a
test ecx, ecx
je 0x47132a
mov eax, dword [ecx]
push 1
mov eax, dword [eax]
call eax
push dword [0x612054]
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, eax
test edx, edx
je 0x47154c
mov ecx, dword [ebp - 0xc]
mov byte [ebp - 8], 1
xor eax, eax
mov dword [ebp - 0x14], edx
cmp byte [ebp - 8], 1
cmove eax, edx
mov dword [0x612050], eax
movzx eax, byte [ebp - 8]
sub eax, 0
jne 0x47136e
test ecx, ecx
je 0x47136e
mov eax, dword [ecx]
push 1
mov eax, dword [eax]
call eax
push dword [0x61205c]
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, eax
test edx, edx
je 0x471570
mov ecx, dword [ebp - 0xc]
mov byte [ebp - 8], 1
xor eax, eax
mov dword [ebp - 0x14], edx
cmp byte [ebp - 8], 1
cmove eax, edx
mov dword [0x612058], eax
movzx eax, byte [ebp - 8]
sub eax, 0
jne 0x4713b2
test ecx, ecx
je 0x4713b2
mov eax, dword [ecx]
push 1
mov eax, dword [eax]
call eax
push dword [0x61209c]
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, eax
test edx, edx
je 0x471594
mov ecx, dword [ebp - 0xc]
mov byte [ebp - 8], 1
xor eax, eax
mov dword [ebp - 0x14], edx
cmp byte [ebp - 8], 1
cmove eax, edx
mov dword [0x612098], eax
movzx eax, byte [ebp - 8]
sub eax, 0
jne 0x4713f6
test ecx, ecx
je 0x4713f6
mov eax, dword [ecx]
push 1
mov eax, dword [eax]
call eax
mov ecx, dword [ebp - 4]
xor ecx, ebp
pop esi
call fcn.00553cca
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call dword [sym.imp.KERNEL32.dll_GetLastError]
xor ecx, ecx
mov dword [ebp - 0xc], 0
mov edx, eax
mov byte [ebp - 8], 0
mov dword [ebp - 0x10], 0x6206c0
mov dword [ebp - 0xc], ecx
jmp 0x4710e4
call dword [sym.imp.KERNEL32.dll_GetLastError]
xor ecx, ecx
mov dword [ebp - 0xc], 0
mov edx, eax
mov byte [ebp - 8], 0
mov dword [ebp - 0x10], 0x6206c0
mov dword [ebp - 0xc], ecx
jmp 0x471128
call dword [sym.imp.KERNEL32.dll_GetLastError]
xor ecx, ecx
mov dword [ebp - 0xc], 0
mov edx, eax
mov byte [ebp - 8], 0
mov dword [ebp - 0x10], 0x6206c0
mov dword [ebp - 0xc], ecx
jmp 0x47116c
call dword [sym.imp.KERNEL32.dll_GetLastError]
xor ecx, ecx
mov dword [ebp - 0xc], 0
mov edx, eax
mov byte [ebp - 8], 0
mov dword [ebp - 0x10], 0x6206c0
mov dword [ebp - 0xc], ecx
jmp 0x4711b0
call dword [sym.imp.KERNEL32.dll_GetLastError]
xor ecx, ecx
mov dword [ebp - 0xc], 0
mov edx, eax
mov byte [ebp - 8], 0
mov dword [ebp - 0x10], 0x6206c0
mov dword [ebp - 0xc], ecx
jmp 0x4711f4
call dword [sym.imp.KERNEL32.dll_GetLastError]
xor ecx, ecx
mov dword [ebp - 0xc], 0
mov edx, eax
mov byte [ebp - 8], 0
mov dword [ebp - 0x10], 0x6206c0
mov dword [ebp - 0xc], ecx
jmp 0x471238
call dword [sym.imp.KERNEL32.dll_GetLastError]
xor ecx, ecx
mov dword [ebp - 0xc], 0
mov edx, eax
mov byte [ebp - 8], 0
mov dword [ebp - 0x10], 0x6206c0
mov dword [ebp - 0xc], ecx
jmp 0x47127c
call dword [sym.imp.KERNEL32.dll_GetLastError]
xor ecx, ecx
mov dword [ebp - 0xc], 0
mov edx, eax
mov byte [ebp - 8], 0
mov dword [ebp - 0x10], 0x6206c0
mov dword [ebp - 0xc], ecx
jmp 0x4712c0
call dword [sym.imp.KERNEL32.dll_GetLastError]
xor ecx, ecx
mov dword [ebp - 0xc], 0
mov edx, eax
mov byte [ebp - 8], 0
mov dword [ebp - 0x10], 0x6206c0
mov dword [ebp - 0xc], ecx
jmp 0x471304
call dword [sym.imp.KERNEL32.dll_GetLastError]
xor ecx, ecx
mov dword [ebp - 0xc], 0
mov edx, eax
mov byte [ebp - 8], 0
mov dword [ebp - 0x10], 0x6206c0
mov dword [ebp - 0xc], ecx
jmp 0x471348
call dword [sym.imp.KERNEL32.dll_GetLastError]
xor ecx, ecx
mov dword [ebp - 0xc], 0
mov edx, eax
mov byte [ebp - 8], 0
mov dword [ebp - 0x10], 0x6206c0
mov dword [ebp - 0xc], ecx
jmp 0x47138c
call dword [sym.imp.KERNEL32.dll_GetLastError]
xor ecx, ecx
mov dword [ebp - 0xc], 0
mov edx, eax
mov byte [ebp - 8], 0
mov dword [ebp - 0x10], 0x6206c0
mov dword [ebp - 0xc], ecx
jmp 0x4713d0