Function at 0x10061c60
Capabilities:
Link many functions at runtime
Query environment variable

Disassembly:
endbr32
push esi
push edi
push ebx
push ebp
sub esp, 0x120
xor eax, eax
mov ecx, 0x105
lea ebx, [esp + 8]
mov edi, ebx
mov edx, dword [0x10234e38]
xor edx, esp
mov dword [ebx + 0x114], edx
mov dword [ebx - 4], 0
and eax, 0xffff
mov ah, al
mov edx, eax
shl eax, 0x10
or eax, edx
mov esi, ecx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, esi
and ecx, 3
rep stosb byte es:[edi], al
xor eax, eax
mov dword [esp + 0x110], eax
mov dword [esp + 0x114], eax
mov dword [esp + 0x118], eax
mov dword [esp + 0x110], str.msvcrt.dll
mov dword [esp + 0x114], str.ucrtbase.dll
cmp dword [0x1024bba0], 0
je 0x100620ba
push 0x1024bba0
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [0x102372a0], 0xffffffff
je 0x10062082
push 0x105
push ebx
push str.SYSTEMROOT
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
mov edi, eax
test edi, edi
je 0x10061d2b
push str._system32_
push 0x105
push ebx
call fcn.101b2501
add esp, 0xc
add edi, 0xa
cmp dword [esp + 4], 0
je 0x10061d36
xor esi, esi
jmp 0x10061d90
xor esi, esi
cmp dword [esp + esi*4 + 0x110], 0
je 0x10062052
mov byte [esp + edi + 8], 0
push dword [esp + esi*4 + 0x110]
push 0x105
push ebx
call fcn.101b2501
add esp, 0xc
lea eax, [esp + 4]
push eax
push ebx
push 1
call dword [sym.imp.KERNEL32.dll_GetModuleHandleExA]
mov ebp, eax
mov edx, dword [esp + 4]
test edx, edx
je 0x10062033
mov eax, str.ucrtbase.dll
cmp eax, dword [esp + esi*4 + 0x110]
je 0x10061eed
mov esi, ebp
mov ebx, 1
mov edx, dword [ebx*8 + 0x102372a4]
inc edx
push edx
push dword [esp + 8]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x10061eb7
mov dword [ebx*8 + 0x102372a0], eax
inc ebx
cmp ebx, 0x32
jl 0x10061d95
cmp esi, 0xffffffff
je 0x10061e05
mov dword [0x102372a0], 0xffffffff
push 0x1024bba0
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ecx, dword [esp + 0x11c]
mov dword [esp + 0x11c], 0
xor ecx, esp
cmp ecx, dword [0x10234e38]
jne 0x10061e00
mov eax, esi
add esp, 0x120
pop ebp
pop ebx
pop edi
pop esi
ret
call fcn.101a6152
mov edx, dword [0x10237428]
mov ecx, 0x100620e0
cmp ecx, dword [0x102372d0]
jne 0x10061e22
mov dword [0x102372d0], 0x100620f0
cmp ecx, dword [0x10237398]
jne 0x10061e34
mov dword [0x10237398], 0x100620f0
cmp ecx, dword [0x102373a8]
jne 0x10061e46
mov dword [0x102373a8], 0x100620f0
cmp ecx, dword [0x102373b0]
jne 0x10061e58
mov dword [0x102373b0], 0x100620f0
cmp ecx, dword [0x102373b8]
jne 0x10061e6a
mov dword [0x102373b8], 0x100620f0
cmp ecx, dword [0x102373c0]
jne 0x10061e7c
mov dword [0x102373c0], 0x100620f0
cmp ecx, dword [0x10237408]
jne 0x10061e8e
mov dword [0x10237408], 0x100620f0
cmp ecx, dword [0x10237418]
jne 0x10061ea0
mov dword [0x10237418], 0x100620f0
cmp edx, ecx
jne 0x10061dc2
mov dword [0x10237428], 0x100620d0
jmp 0x10061dc2
mov edx, dword [ebx*8 + 0x102372a0]
test edx, edx
je 0x10061edd
cmp edx, ebx
jge 0x10061db7
mov edx, dword [edx*8 + 0x102372a0]
mov dword [ebx*8 + 0x102372a0], edx
jmp 0x10061db7
mov dword [ebx*8 + 0x102372a0], 0x100620e0
jmp 0x10061db7
mov eax, 0x10217031
push eax
push edx
mov dword [esp + 8], edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [esp]
mov ecx, eax
mov eax, 0x10217045
push eax
push edx
mov dword [esp + 8], edx
mov dword [0x1024bc34], ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [esp]
test eax, eax
je 0x10061f28
mov dword [0x1024bc20], eax
jmp 0x10061f32
mov dword [0x1024bc20], 0x100620e0
mov eax, 0x10217045
push eax
push edx
mov dword [esp + 8], edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [esp]
test eax, eax
je 0x10061f51
mov dword [0x1024bc20], eax
jmp 0x10061f5b
mov dword [0x1024bc20], 0x100620e0
mov eax, 0x10217061
push eax
push edx
mov dword [esp + 8], edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [esp]
test eax, eax
je 0x10061f7a
mov dword [0x1024bc24], eax
jmp 0x10061f84
mov dword [0x1024bc24], 0x100620e0
mov eax, 0x1021707d
push eax
push edx
mov dword [esp + 8], edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [esp]
test eax, eax
je 0x10061fa3
mov dword [0x1024bc28], eax
jmp 0x10061fad
mov dword [0x1024bc28], 0x100620e0
mov eax, 0x10217099
push eax
push edx
mov dword [esp + 8], edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [esp]
test eax, eax
je 0x10061fcc
mov dword [0x1024bc2c], eax
jmp 0x10061fd6
mov dword [0x1024bc2c], 0x100620e0
mov eax, 0x102170b5
push eax
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x10061fee
mov dword [0x1024bc30], eax
jmp 0x10061ff8
mov dword [0x1024bc30], 0x100620e0
push 0
call dword [0x1024bc34]
mov dword [0x1024bbc0], eax
push 1
call dword [0x1024bc34]
mov dword [0x1024bbe0], eax
push 2
call dword [0x1024bc34]
add esp, 0xc
inc esi
mov dword [0x1024bc00], eax
cmp dword [esp + 4], 0
je 0x10061d38
jmp 0x10061d8e
xor eax, eax
push eax
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_LoadLibraryExA]
mov edx, eax
mov dword [esp + 4], edx
test edx, edx
jne 0x10061d7c
inc esi
jmp 0x10061d38
xor edx, edx
mov ecx, 0x100620e0
xor eax, eax
inc edx
mov dword [eax + 0x102372a8], ecx
mov dword [eax + 0x102372b0], ecx
add eax, 0x10
cmp edx, 0x18
jb 0x1006205b
mov edx, ecx
mov esi, 0xffffffff
mov dword [0x10237428], edx
jmp 0x10061e10
push 0x1024bba0
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ecx, dword [esp + 0x11c]
mov dword [esp + 0x11c], 0
xor ecx, esp
cmp ecx, dword [0x10234e38]
jne 0x10061e00
xor eax, eax
add esp, 0x120
pop ebp
pop ebx
pop edi
pop esi
ret
push 0x1024bba0
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
jmp 0x10061ce6