Function at 0x410ca0
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1010c
call fcn.00423670
mov dword [ebp - 0xc], 0
lea eax, [ebp - 8]
push eax
call fcn.00412880
add esp, 4
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
je 0x41167c
mov ecx, dword [ebp + 8]
push ecx
lea edx, [ebp - 0x10018]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
push 0x433d84
lea eax, [ebp - 0x10018]
push eax
call fcn.0041f320
add esp, 8
xor ecx, ecx
mov word [eax], cx
push 0x44
lea edx, [ebp - 0x10078]
push edx
call fcn.0041f3b0
add esp, 8
mov dword [ebp - 0x10078], 0x44
mov dword [ebp - 0x1004c], 0x81
xor eax, eax
mov word [ebp - 0x10048], ax
mov ecx, dword [ebp + 0xc]
neg ecx
sbb ecx, ecx
and ecx, 4
mov dword [ebp - 0x1002c], ecx
lea edx, [ebp - 0x10028]
push edx
lea eax, [ebp - 0x10078]
push eax
lea ecx, [ebp - 0x10018]
push ecx
push 0
mov edx, dword [ebp - 0x1002c]
push edx
push 0
push 0
push 0
push 0
mov eax, dword [ebp + 8]
push eax
call dword [0x47cd50]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 1
jne 0x411672
push 0x433d88
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov dword [ebp - 0x10080], eax
push 0x433d9c
mov ecx, dword [ebp - 0x10080]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x10090], eax
push 0x433dac
mov edx, dword [ebp - 0x10080]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x10098], eax
push 0x433dc0
mov eax, dword [ebp - 0x10080]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x10084], eax
push 0x433dd4
mov ecx, dword [ebp - 0x10080]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x10088], eax
push 0x433dec
mov edx, dword [ebp - 0x10080]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x1008c], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x1007c], eax
cmp dword [ebp - 0x10090], 0
je 0x41162f
cmp dword [ebp - 0x10098], 0
je 0x41162f
cmp dword [ebp - 0x10084], 0
je 0x41162f
cmp dword [ebp - 0x10088], 0
je 0x41162f
cmp dword [ebp - 0x1008c], 0
je 0x41162f
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x100b0], eax
mov ecx, dword [ebp - 0x100b0]
mov edx, dword [ebp - 0x100b0]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x100a8], edx
mov eax, dword [ebp - 0x100a8]
add eax, 0x18
mov dword [ebp - 0x100ac], eax
mov dword [ebp - 0x100a4], 0
mov dword [ebp - 0x100a0], 0x91c
mov dword [ebp - 0x1009c], 0
push 0
push 0x8000000
push 4
lea ecx, [ebp - 0x100a0]
push ecx
push 0
push 6
lea edx, [ebp - 0x100a4]
push edx
call dword [ebp - 0x10090]
mov dword [ebp - 0x10094], eax
cmp dword [ebp - 0x10094], 0
jl 0x41162f
mov dword [ebp - 0x100b4], 0
mov dword [ebp - 0x100b8], 0x91c
push 4
push 0
push 2
lea eax, [ebp - 0x100b8]
push eax
push 0
push 0
push 0
lea ecx, [ebp - 0x100b4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
mov edx, dword [ebp - 0x100a4]
push edx
call dword [ebp - 0x10098]
mov dword [ebp - 0x10094], eax
cmp dword [ebp - 0x10094], 0
jl 0x411622
mov dword [ebp - 0x100bc], 0
push 4
push 0
push 2
lea eax, [ebp - 0x100b8]
push eax
push 0
push 0
push 0
lea ecx, [ebp - 0x100bc]
push ecx
mov edx, dword [ebp - 0x10028]
push edx
mov eax, dword [ebp - 0x100a4]
push eax
call dword [ebp - 0x10098]
mov dword [ebp - 0x10094], eax
cmp dword [ebp - 0x10094], 0
jl 0x41160e
mov dword [ebp - 0x100cc], 0
mov ecx, 0x4122c0
sub ecx, 0x411690
mov dword [ebp - 0x100c0], ecx
mov edx, dword [ebp - 0x100c0]
xor eax, eax
mov dword [ebp - 0x100c8], edx
mov dword [ebp - 0x100c4], eax
push 0
push 0x8000000
push 0x40
lea ecx, [ebp - 0x100c8]
push ecx
push 0
push 0xe
lea edx, [ebp - 0x100cc]
push edx
call dword [ebp - 0x10090]
mov dword [ebp - 0x10094], eax
cmp dword [ebp - 0x10094], 0
jl 0x41160e
mov dword [ebp - 0x100d0], 0
mov eax, dword [ebp - 0x100c0]
mov dword [ebp - 0x100d4], eax
push 0x40
push 0
push 2
lea ecx, [ebp - 0x100d4]
push ecx
push 0
push 0
push 0
lea edx, [ebp - 0x100d0]
push edx
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
mov eax, dword [ebp - 0x100cc]
push eax
call dword [ebp - 0x10098]
mov dword [ebp - 0x10094], eax
cmp dword [ebp - 0x10094], 0
jl 0x411601
mov dword [ebp - 0x100d8], 0
push 0x40
push 0
push 2
lea ecx, [ebp - 0x100d4]
push ecx
push 0
push 0
push 0
lea edx, [ebp - 0x100d8]
push edx
mov eax, dword [ebp - 0x10028]
push eax
mov ecx, dword [ebp - 0x100cc]
push ecx
call dword [ebp - 0x10098]
mov dword [ebp - 0x10094], eax
cmp dword [ebp - 0x10094], 0
jl 0x4115ed
mov edx, dword [ebp - 0x100c0]
push edx
push 0x411690
mov eax, dword [ebp - 0x100d0]
push eax
call fcn.00423ad0
add esp, 0xc
mov ecx, dword [ebp - 0x100b4]
mov dword [ebp - 0x100dc], ecx
push 0x433df4
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp - 0x100e0], eax
push 0x433e10
mov edx, dword [ebp - 0x100e0]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 0x100dc]
mov dword [ecx], eax
push 0x433e20
mov edx, dword [ebp - 0x100e0]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 0x100dc]
mov dword [ecx + 4], eax
push 0x433e30
mov edx, dword [ebp - 0x100dc]
add edx, 8
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
push 0x433e4c
mov eax, dword [ebp - 0x100dc]
add eax, 0xd2
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
push 0x433e64
mov ecx, dword [ebp - 0x100dc]
add ecx, 0x19c
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
push 0x433e78
mov edx, dword [ebp - 0x100dc]
add edx, 0x266
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0x433e80
mov eax, dword [ebp - 0x100dc]
add eax, 0x2ca
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0x433e90
mov ecx, dword [ebp - 0x100dc]
add ecx, 0x32e
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0x433e9c
mov edx, dword [ebp - 0x100dc]
add edx, 0x3f6
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0x433eac
mov eax, dword [ebp - 0x100dc]
add eax, 0x45a
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0x433eb8
mov ecx, dword [ebp - 0x100dc]
add ecx, 0x4be
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0x433ec4
mov edx, dword [ebp - 0x100dc]
add edx, 0x522
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0x433ed0
mov eax, dword [ebp - 0x100dc]
add eax, 0x586
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0x433edc
mov ecx, dword [ebp - 0x100dc]
add ecx, 0x5ea
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0x433eec
mov edx, dword [ebp - 0x100dc]
add edx, 0x6b2
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0x433f04
mov eax, dword [ebp - 0x100dc]
add eax, 0x64e
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0x433f18
mov ecx, dword [ebp - 0x100dc]
add ecx, 0x716
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov edx, dword [ebp - 0x100dc]
mov dword [edx + 0x77c], 1
mov eax, dword [ebp - 0x100dc]
mov ecx, dword [0x47184c]
mov dword [eax + 0x780], ecx
mov dword [ebp - 0x100ec], 0
mov eax, dword [ebp - 8]
cdq
mov dword [ebp - 0x100e8], eax
mov dword [ebp - 0x100e4], edx
push 0
push 0x8000000
push 4
lea edx, [ebp - 0x100e8]
push edx
push 0
push 6
lea eax, [ebp - 0x100ec]
push eax
call dword [ebp - 0x10090]
mov dword [ebp - 0x10094], eax
cmp dword [ebp - 0x10094], 0
jl 0x4115ed
mov dword [ebp - 0x100f4], 0
mov ecx, dword [ebp - 8]
mov dword [ebp - 0x100f0], ecx
push 4
push 0
push 2
lea edx, [ebp - 0x100f0]
push edx
push 0
push 0
push 0
lea eax, [ebp - 0x100f4]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
mov ecx, dword [ebp - 0x100ec]
push ecx
call dword [ebp - 0x10098]
mov dword [ebp - 0x10094], eax
cmp dword [ebp - 0x10094], 0
jl 0x4115e0
mov dword [ebp - 0x100f8], 0
push 4
push 0
push 2
lea edx, [ebp - 0x100f0]
push edx
push 0
push 0
push 0
lea eax, [ebp - 0x100f8]
push eax
mov ecx, dword [ebp - 0x10028]
push ecx
mov edx, dword [ebp - 0x100ec]
push edx
call dword [ebp - 0x10098]
mov dword [ebp - 0x10094], eax
cmp dword [ebp - 0x10094], 0
jl 0x4115cc
mov eax, dword [ebp - 8]
push eax
mov ecx, dword [ebp - 0x14]
push ecx
mov edx, dword [ebp - 0x100f4]
push edx
call fcn.00423ad0
add esp, 0xc
mov eax, dword [ebp - 8]
shr eax, 2
mov dword [ebp - 0x100fc], eax
mov dword [ebp - 0x10104], 0
jmp 0x411386
mov ecx, dword [ebp - 0x10104]
add ecx, 1
mov dword [ebp - 0x10104], ecx
mov edx, dword [ebp - 0x10104]
cmp edx, dword [ebp - 0x100fc]
jge 0x4113ba
mov eax, dword [ebp - 0x10104]
mov ecx, dword [ebp - 0x100f4]
mov edx, dword [ecx + eax*4]
xor edx, dword [0x47184c]
mov eax, dword [ebp - 0x10104]
mov ecx, dword [ebp - 0x100f4]
mov dword [ecx + eax*4], edx
jmp 0x411377
mov edx, dword [ebp - 0x100dc]
mov eax, dword [ebp - 0x100f8]
mov dword [edx + 0x914], eax
mov ecx, dword [ebp - 0x100dc]
mov edx, dword [ebp - 8]
mov dword [ecx + 0x918], edx
mov dword [ebp - 0x10100], 0
push str.3A541B9B_5359_4973_80C8_9EAED1B71F55
push 0
push 1
push 0
call dword [0x47cd4c]
mov dword [ebp - 0x10100], eax
cmp dword [ebp - 0x10100], 0
je 0x4115cc
mov dword [ebp - 0x10108], 0
push 0
lea eax, [ebp - 0x10108]
push eax
mov ecx, dword [ebp - 0x100bc]
push ecx
mov edx, dword [ebp - 0x100d8]
push edx
push 0
push 0
push 0
push 0
push 0
mov eax, dword [ebp - 0x10028]
push eax
call dword [ebp - 0x10084]
mov dword [ebp - 0x10094], eax
cmp dword [ebp - 0x10094], 0
jl 0x4115b2
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp - 0x10028]
mov dword [ecx], edx
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp - 0x10020]
mov dword [eax + 8], ecx
mov edx, dword [ebp + 0x10]
mov eax, dword [ebp - 0x10024]
mov dword [edx + 4], eax
push 0x1388
mov ecx, dword [ebp - 0x10100]
push ecx
call dword [0x47cd5c]
mov dword [ebp - 0x1010c], eax
mov edx, dword [ebp - 0x10100]
push edx
call dword [0x47ce08]
cmp dword [ebp - 0x1010c], 0x102
je 0x41156e
mov eax, dword [ebp - 0x100bc]
push eax
mov ecx, dword [ebp - 0x10028]
push ecx
call dword [ebp - 0x10088]
mov edx, dword [ebp - 0x100d8]
push edx
mov eax, dword [ebp - 0x10028]
push eax
call dword [ebp - 0x10088]
mov ecx, dword [ebp - 0x100f8]
push ecx
mov edx, dword [ebp - 0x10028]
push edx
call dword [ebp - 0x10088]
mov eax, dword [ebp - 0x100b4]
push eax
mov ecx, dword [ebp - 0x1007c]
push ecx
call dword [ebp - 0x10088]
mov edx, dword [ebp - 0x100d0]
push edx
mov eax, dword [ebp - 0x1007c]
push eax
call dword [ebp - 0x10088]
mov ecx, dword [ebp - 0x100f4]
push ecx
mov edx, dword [ebp - 0x1007c]
push edx
call dword [ebp - 0x10088]
mov eax, dword [ebp - 0x100a4]
push eax
call dword [ebp - 0x1008c]
mov ecx, dword [ebp - 0x100cc]
push ecx
call dword [ebp - 0x1008c]
mov edx, dword [ebp - 0x100ec]
push edx
call dword [ebp - 0x1008c]
mov eax, dword [ebp - 0x10100]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [ebp - 0x14]
push ecx
call dword [0x47cd48]
mov eax, 1
jmp 0x41167e
push 0
mov edx, dword [ebp - 0x10028]
push edx
call dword [0x47cd68]
mov eax, dword [ebp - 0x10028]
push eax
call dword [0x47cd34]
mov ecx, dword [ebp - 0x10024]
push ecx
call dword [0x47cd34]
mov dword [ebp - 0x10028], 0
mov dword [ebp - 0x10024], 0
mov dword [ebp - 0xc], 1
mov edx, dword [ebp - 0x10100]
push edx
call dword [0x47ce08]
mov eax, dword [ebp - 0x10100]
push eax
call dword [0x47cd34]
mov ecx, dword [ebp - 0x100f4]
push ecx
mov edx, dword [ebp - 0x1007c]
push edx
call dword [ebp - 0x10088]
mov eax, dword [ebp - 0x100ec]
push eax
call dword [ebp - 0x1008c]
mov ecx, dword [ebp - 0x100d0]
push ecx
mov edx, dword [ebp - 0x1007c]
push edx
call dword [ebp - 0x10088]
mov eax, dword [ebp - 0x100cc]
push eax
call dword [ebp - 0x1008c]
mov ecx, dword [ebp - 0x100b4]
push ecx
mov edx, dword [ebp - 0x1007c]
push edx
call dword [ebp - 0x10088]
mov eax, dword [ebp - 0x100a4]
push eax
call dword [ebp - 0x1008c]
cmp dword [ebp - 0xc], 0
jne 0x411672
push 0
mov ecx, dword [ebp - 0x10028]
push ecx
call dword [0x47cd68]
mov edx, dword [ebp - 0x10028]
push edx
call dword [0x47cd34]
mov eax, dword [ebp - 0x10024]
push eax
call dword [0x47cd34]
mov dword [ebp - 0x10028], 0
mov dword [ebp - 0x10024], 0
mov ecx, dword [ebp - 0x14]
push ecx
call dword [0x47cd48]
xor eax, eax
mov esp, ebp
pop ebp
ret