Function at 0x1008562
Capabilities:
Link many functions at runtime

Disassembly:
push 0xb4
mov eax, 0x100dc51
call fcn.0100bf3d
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x20], edi
push 0xfffffffffffffff5
call dword [sym.imp.KERNEL32.dll_GetStdHandle]
mov dword [ebp - 0x30], eax
cmp eax, 0xffffffff
jne 0x10085ac
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, edi
jg 0x10085a0
mov esi, eax
jmp 0x1008b75
and eax, 0xffff
or eax, 0x80070000
jmp 0x1008599
push edi
push 0x1002398
mov esi, dword [ebp + 8]
push esi
call fcn.01003185
mov bl, 1
cmp al, bl
jne 0x1008749
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0x1c]
push eax
push 0x10013fc
push esi
call fcn.01003218
test al, al
je 0x10085e5
push dword [ebp - 0x24]
push esi
call fcn.01003267
push esi
call fcn.010032aa
mov esi, eax
cmp esi, edi
jl 0x100871d
cmp dword [ebp - 0x1c], edi
je 0x100860a
push dword [ebp - 0x1c]
push 0x709
call fcn.0100caaa
pop ecx
jmp 0x1008614
push 0x714
call fcn.0100caaa
pop ecx
push 0x1001300
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp - 0x20], eax
cmp eax, edi
je 0x1008639
push 0x1002378
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ebx, eax
cmp ebx, edi
jne 0x1008654
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, edi
jle 0x100864d
and eax, 0xffff
or eax, 0x80070000
mov esi, eax
jmp 0x1008715
push 0x100ba41
call dword [sym.imp.msvcrt.dll_void____cdecl___unsigned_int__struct__EXCEPTION_POINTERS_____cdecl__set_se_translator_void____cdecl___unsigned_int__struct__EXCEPTION_POINTERS___]
pop ecx
mov dword [ebp + 8], eax
xor esi, esi
mov dword [ebp - 4], edi
lea eax, [ebp - 0x34]
push eax
push dword [ebp - 0x1c]
call ebx
cmp eax, edi
jne 0x100868e
push dword [ebp - 0x34]
push 0x100235c
push dword [ebp - 0x30]
call fcn.01005ad3
add esp, 0xc
or dword [ebp - 4], 0xffffffff
jmp 0x100870b
jle 0x100869a
and eax, 0xffff
or eax, 0x80070000
mov esi, eax
mov dword [ebp - 0x14], esi
or dword [ebp - 4], 0xffffffff
jmp 0x1008715
push dword [ebp + 8]
call dword [sym.imp.msvcrt.dll_void____cdecl___unsigned_int__struct__EXCEPTION_POINTERS_____cdecl__set_se_translator_void____cdecl___unsigned_int__struct__EXCEPTION_POINTERS___]
pop ecx
test esi, esi
jge 0x1008b47
lea eax, [ebp - 0x18]
push eax
push esi
call fcn.0100d212
test eax, eax
jl 0x1008b66
push dword [ebp - 0x18]
push 0x1001330
push 0x579
call fcn.0100ca2c
add esp, 0xc
jmp 0x1008b66
push edi
push 0x1002354
push esi
call fcn.01003185
cmp al, bl
jne 0x1008843
push esi
call fcn.010032aa
mov esi, eax
cmp esi, edi
jl 0x100871d
push 0x70a
call fcn.0100c967
push 0x1001300
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp - 0x20], eax
test eax, eax
jne 0x1008792
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jmp 0x1008641
push 0x100233c
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
test edi, edi
je 0x1008785
push 0x100ba41
call dword [sym.imp.msvcrt.dll_void____cdecl___unsigned_int__struct__EXCEPTION_POINTERS_____cdecl__set_se_translator_void____cdecl___unsigned_int__struct__EXCEPTION_POINTERS___]
pop ecx
mov dword [ebp + 8], eax
xor esi, esi
mov dword [ebp - 4], 4
call edi
or dword [ebp - 4], 0xffffffff
jmp 0x100882a
push dword [ebp + 8]
call dword [sym.imp.msvcrt.dll_void____cdecl___unsigned_int__struct__EXCEPTION_POINTERS_____cdecl__set_se_translator_void____cdecl___unsigned_int__struct__EXCEPTION_POINTERS___]
pop ecx
test esi, esi
jl 0x100871d
xor esi, esi
jmp 0x1008715
push edi
push 0x1002334
push esi
call fcn.01003185
cmp al, bl
jne 0x100891d
push esi
call fcn.010032aa
mov esi, eax
cmp esi, edi
jl 0x100871d
push 0x70b
call fcn.0100c967
push 0x1001300
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp - 0x20], eax
test eax, eax
je 0x1008785
push 0x1002318
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
test edi, edi
je 0x1008785
push 0x100ba41
call dword [sym.imp.msvcrt.dll_void____cdecl___unsigned_int__struct__EXCEPTION_POINTERS_____cdecl__set_se_translator_void____cdecl___unsigned_int__struct__EXCEPTION_POINTERS___]
pop ecx
mov dword [ebp + 8], eax
xor esi, esi
mov dword [ebp - 4], 8
jmp 0x10087bc
push edi
push 0x1002310
push esi
call fcn.01003185
cmp al, bl
jne 0x1008b4b
mov dword [ebp + 8], edi
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0x1c]
push eax
push 0x10013fc
push esi
call fcn.01003218
test al, al
je 0x1008954
push dword [ebp - 0x24]
push esi
call fcn.01003267
push esi
call fcn.010032aa
mov esi, eax
cmp esi, edi
jl 0x1008aab
cmp dword [ebp - 0x1c], edi
je 0x1008979
push dword [ebp - 0x1c]
push 0x710
call fcn.0100caaa
pop ecx
jmp 0x1008983
push 0x716
call fcn.0100caaa
pop ecx
push 0x1001300
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov ebx, eax
mov dword [ebp - 0x20], ebx
cmp ebx, edi
jne 0x10089b3
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, edi
jle 0x10089ac
and eax, 0xffff
or eax, 0x80070000
mov esi, eax
jmp 0x1008aab
push 0x10022f0
push ebx
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
call esi
mov edi, eax
test edi, edi
jne 0x10089d3
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jg 0x10089a2
jmp 0x10089ac
push 0x10022dc
push ebx
call esi
mov dword [ebp - 0x2c], eax
test eax, eax
je 0x10089c7
push 0x100ba41
call dword [sym.imp.msvcrt.dll_void____cdecl___unsigned_int__struct__EXCEPTION_POINTERS_____cdecl__set_se_translator_void____cdecl___unsigned_int__struct__EXCEPTION_POINTERS___]
pop ecx
mov dword [ebp - 0x28], eax
xor esi, esi
mov dword [ebp - 4], 0xc
lea eax, [ebp + 8]
push eax
push 0x1001ec8
push esi
push dword [ebp - 0x1c]
call edi
cmp eax, esi
jne 0x1008a21
push dword [ebp + 8]
push dword [ebp - 0x30]
call fcn.01006852
or dword [ebp - 4], 0xffffffff
jmp 0x1008aa1
jle 0x1008a2d
and eax, 0xffff
or eax, 0x80070000
mov esi, eax
mov dword [ebp - 0x14], esi
or dword [ebp - 4], 0xffffffff
jmp 0x1008aab
push dword [ebp - 0x28]
call dword [sym.imp.msvcrt.dll_void____cdecl___unsigned_int__struct__EXCEPTION_POINTERS_____cdecl__set_se_translator_void____cdecl___unsigned_int__struct__EXCEPTION_POINTERS___]
pop ecx
cmp dword [ebp + 8], 0
je 0x1008715
push 0x100ba41
call dword [sym.imp.msvcrt.dll_void____cdecl___unsigned_int__struct__EXCEPTION_POINTERS_____cdecl__set_se_translator_void____cdecl___unsigned_int__struct__EXCEPTION_POINTERS___]
pop ecx
mov dword [ebp - 0x28], eax
xor esi, esi
mov dword [ebp - 4], 0x10
push dword [ebp + 8]
call dword [ebp - 0x2c]
or dword [ebp - 4], 0xffffffff
jmp 0x1008b3f
push dword [ebp - 0x28]
jmp 0x100870e
xor esi, esi
jmp 0x1008b66
push esi
call fcn.010032aa
mov esi, eax
cmp esi, edi
jl 0x1008b75
push 0x57c
call fcn.0100c8e3
mov esi, 0x80070057
cmp dword [ebp - 0x20], 0
je 0x1008b75
push dword [ebp - 0x20]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
cmp dword [ebp - 0x18], 0
je 0x1008b84
push dword [ebp - 0x18]
call dword [sym.imp.KERNEL32.dll_LocalFree]
mov eax, esi
call fcn.0100bfb6
ret 4