Function at 0x30020d16
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x210
mov eax, dword [0x300930a4]
or dword [0x30098500], 0xffffffff
push ebx
push esi
xor ebx, ebx
push edi
mov dword [ebp - 4], eax
mov dword [0x3009393c], ebx
mov dword [0x300984f4], ebx
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov esi, dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov dword [0x300984fc], eax
xor eax, eax
mov ecx, 0xb38
mov edi, 0x30093bc8
push 0x30093c0c
mov dword [0x30098840], ebx
mov dword [0x30093950], ebx
rep stosd dword es:[edi], eax
call esi
call fcn.30020ca7
test eax, eax
je 0x30020fa7
xor eax, eax
push 0x18
mov ecx, 0x243
mov edi, 0x300968a8
rep stosd dword es:[edi], eax
pop ecx
mov edi, 0x3009e720
rep stosd dword es:[edi], eax
mov ecx, 0x89
mov edi, 0x300939a0
push 0x3009e728
rep stosd dword es:[edi], eax
call esi
push 0x30093900
call esi
push 0x300938e8
call esi
push 0x3009eb98
call esi
mov edx, 0x200
xor eax, eax
mov ecx, edx
mov edi, 0x30097cc8
rep stosd dword es:[edi], eax
push 0x1c
mov ecx, edx
mov edi, 0x300974c8
rep stosd dword es:[edi], eax
pop ecx
push 0x1c
mov edi, 0x30097458
rep stosd dword es:[edi], eax
pop ecx
mov edi, 0x300973e8
push 0x30096d6c
rep stosd dword es:[edi], eax
call fcn.30021b03
push 0x30096d7c
call fcn.30021b03
push 2
push 0x100
push 0x10
push 4
push 0x30093938
call fcn.300515b0
push ebx
push 0x300984d0
push ebx
push 0x30
call dword [sym.imp.USER32.dll_SystemParametersInfoA]
call fcn.30020c6e
test eax, eax
mov edi, dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
je 0x30020ebd
push 0x30002c34
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
cmp eax, ebx
mov dword [0x30093934], eax
je 0x30020ebd
push 0x30002c24
push eax
call esi
push 0x30002c18
push dword [0x30093934]
mov dword [0x3009ebb4], eax
call esi
push 0x30002c0c
push dword [0x30093934]
mov dword [0x3009ebb8], eax
call esi
push 0x30002c00
push dword [0x30093934]
mov dword [0x3009ebbc], eax
call esi
cmp dword [0x3009ebb4], ebx
mov dword [0x3009ebc0], eax
je 0x30020eaf
cmp dword [0x3009ebb8], ebx
je 0x30020eaf
cmp dword [0x3009ebbc], ebx
je 0x30020eaf
cmp eax, ebx
jne 0x30020ebd
push dword [0x30093934]
call edi
mov dword [0x30093934], ebx
push 0x30002bf4
call fcn.300241ad
cmp eax, ebx
mov dword [0x3009392c], eax
je 0x30020eef
push 0x30002be4
push eax
call esi
cmp eax, ebx
mov dword [0x30093930], eax
jne 0x30020eef
push dword [0x3009392c]
call edi
mov dword [0x3009392c], ebx
push 0x30002bd8
call fcn.300241ad
cmp eax, ebx
mov dword [0x30093918], eax
je 0x30020f6f
push 0x30002bc0
push eax
call esi
push 0x30002bac
push dword [0x30093918]
mov dword [0x30093928], eax
call esi
push 0x30002b9c
push dword [0x30093918]
mov dword [0x30093924], eax
call esi
push 0x30002b8c
push dword [0x30093918]
mov dword [0x30093920], eax
call esi
cmp dword [0x30093928], ebx
mov dword [0x3009391c], eax
je 0x30020f61
cmp dword [0x30093924], ebx
je 0x30020f61
cmp dword [0x30093920], ebx
je 0x30020f61
cmp eax, ebx
jne 0x30020f6f
push dword [0x30093918]
call edi
mov dword [0x30093918], ebx
xor eax, eax
mov esi, 0x30093940
mov edi, esi
stosd dword es:[edi], eax
stosd dword es:[edi], eax
push 0x104
lea eax, [ebp - 0x20c]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x30020fa7
lea eax, [ebp - 0x210]
push eax
push 4
push esi
lea eax, [ebp - 0x20c]
push eax
call fcn.300259f3
mov ecx, dword [ebp - 4]
pop edi
pop esi
pop ebx
call fcn.3005f839
leave
ret