Function at 0x10018a40
Capabilities:
Allocate or change rwx memory
Enumerate pe sections
Execute shellcode via indirect call
Extract resource via kernel32 functions
Link many functions at runtime
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1004d9b6
mov eax, dword fs:[0]
push eax
sub esp, 0xbc
mov eax, dword [0x10073498]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ecx, 1
mov edx, 0x10075308
xor eax, eax
lock cmpxchg dword [edx], ecx
test eax, eax
jne 0x100199d8
lea eax, [ebp - 0x28]
push eax
call fcn.100172c0
push 0
push 0
lea eax, [ebp - 0x88]
mov dword [ebp - 4], 0
push 0x10055af0
push eax
call fcn.1001d690
add esp, 0x14
mov esi, eax
push 0x5c
mov ecx, esi
mov byte [ebp - 4], 1
call fcn.10021ab0
mov dword [ebp - 0x48], 0
xor eax, eax
mov dword [ebp - 0x44], 0
movups xmm0, xmmword [esi]
movups xmmword [ebp - 0x58], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x48], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
push dword [ebp - 0x18]
cmovae eax, dword [ebp - 0x28]
lea ecx, [ebp - 0x58]
push eax
mov byte [ebp - 4], 2
call fcn.10020fc0
mov dword [ebp - 0x30], 0
xor ecx, ecx
mov dword [ebp - 0x2c], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x40], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x30], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
lea ecx, [ebp - 0x58]
call fcn.10015d60
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 5
call fcn.10015d60
push dword [0x10074ba4]
lea eax, [ebp - 0x70]
push eax
call fcn.10017120
add esp, 8
push 0xffffffffffffffff
push 0x1004fd94
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 6
call fcn.10021550
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 7
lea ecx, [eax + 1]
xor eax, eax
cmp dword [ebp - 0x60], ecx
mov word [ebp - 0x58], ax
lea eax, [ebp - 0x70]
cmovb ecx, dword [ebp - 0x60]
cmp dword [ebp - 0x5c], 8
push ecx
cmovae eax, dword [ebp - 0x70]
lea ecx, [ebp - 0x58]
push eax
call fcn.10021140
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x70]
call fcn.10015fa0
lea ecx, [ebp - 0x58]
call fcn.10015d60
cmp dword [ebp - 0x14], 8
lea edx, [ebp - 0x28]
mov ecx, dword [ebp - 0x18]
cmovae edx, dword [ebp - 0x28]
sub esp, 8
mov eax, esp
push ecx
push edx
mov dword [eax], str.vorbisFile.dll
mov dword [eax + 4], 0xe
call fcn.100216e0
add esp, 0x10
test al, al
je 0x10018d05
push 0x10
push str.vorbisHooked.dll
lea ecx, [ebp - 0x70]
call fcn.10020fc0
cmp dword [ebp - 0x5c], 8
lea eax, [ebp - 0x70]
push dword [ebp - 0x60]
cmovae eax, dword [ebp - 0x70]
xor ecx, ecx
mov word [ebp - 0x58], cx
lea ecx, [ebp - 0x58]
push eax
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 7
call fcn.10021140
lea eax, [ebp - 0x58]
mov byte [ebp - 4], 7
push eax
call fcn.10021470
add esp, 4
mov byte [ebp - 0x8d], al
lea ecx, [ebp - 0x58]
call fcn.10015d60
cmp byte [ebp - 0x8d], 0
je 0x10018c75
cmp dword [ebp - 0x5c], 8
lea eax, [ebp - 0x70]
push 0
cmovae eax, dword [ebp - 0x70]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
push eax
mov ecx, 0x100744b0
call fcn.1001b470
jmp 0x100199c0
push 0xa
push 0x65
push dword [0x10074ba4]
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov esi, eax
test esi, esi
je 0x100199c0
push esi
push dword [0x10074ba4]
call dword [sym.imp.KERNEL32.dll_LoadResource]
test eax, eax
je 0x100199c0
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
mov edi, eax
test edi, edi
je 0x100199c0
push esi
push dword [0x10074ba4]
call dword [sym.imp.KERNEL32.dll_SizeofResource]
test eax, eax
je 0x100199c0
push 1
push eax
push edi
call fcn.10001460
add esp, 8
mov ecx, 0x100744b0
push eax
call fcn.1001b470
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
lea ecx, [ebp - 0x8c]
push ecx
push 0x40
mov ecx, dword [eax + 0x3c]
push dword [ecx + eax + 0x50]
push eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
jmp 0x100199c0
cmp dword [ebp - 0x14], 8
lea edx, [ebp - 0x28]
mov ecx, dword [ebp - 0x18]
cmovae edx, dword [ebp - 0x28]
sub esp, 8
mov eax, esp
push ecx
push edx
mov dword [eax], str.dsound.dll
mov dword [eax + 4], 0xa
call fcn.100216e0
add esp, 0x10
test al, al
je 0x10018e51
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
cmovae eax, dword [ebp - 0x40]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
push 0x1004fd9c
push esi
mov dword [0x10074484], esi
call edi
push 0x1004fdac
push esi
mov dword [0x10074470], eax
call edi
push 0x1004fdc0
push esi
mov dword [0x10074474], eax
call edi
push 0x1004fdd4
push esi
mov dword [0x10074478], eax
call edi
push 0x1004fde8
push esi
mov dword [0x1007447c], eax
call edi
push 0x10050014
push dword [0x10074484]
mov dword [0x10074480], eax
call edi
push 0x10050030
push dword [0x10074484]
mov dword [0x10074488], eax
call edi
push 0x1005004c
push dword [0x10074484]
mov dword [0x1007448c], eax
call edi
push 0x1005006c
push dword [0x10074484]
mov dword [0x10074490], eax
call edi
push 0x1005008c
push dword [0x10074484]
mov dword [0x10074494], eax
call edi
push 0x100500a0
push dword [0x10074484]
mov dword [0x10074498], eax
call edi
push 0x100500b4
push dword [0x10074484]
mov dword [0x1007449c], eax
call edi
push 0x100500cc
push dword [0x10074484]
mov dword [0x100744a0], eax
call edi
push 0x100500e4
push dword [0x10074484]
mov dword [0x100744a4], eax
call edi
push 0x10050100
push dword [0x10074484]
mov dword [0x100744a8], eax
call edi
mov dword [0x100744ac], eax
jmp 0x100199c0
cmp dword [ebp - 0x14], 8
lea edx, [ebp - 0x28]
mov ecx, dword [ebp - 0x18]
cmovae edx, dword [ebp - 0x28]
sub esp, 8
mov eax, esp
push ecx
push edx
mov dword [eax], str.dinput8.dll
mov dword [eax + 4], 0xb
call fcn.100216e0
add esp, 0x10
test al, al
je 0x10018ef7
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
cmovae eax, dword [ebp - 0x40]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
push 0x1004fd9c
push esi
mov dword [0x10074540], esi
call edi
push 0x1004fdac
push esi
mov dword [0x10074470], eax
call edi
push 0x1004fdc0
push esi
mov dword [0x10074474], eax
call edi
push 0x1004fdd4
push esi
mov dword [0x10074478], eax
call edi
push 0x1004fde8
push esi
mov dword [0x1007447c], eax
call edi
push 0x10050000
push dword [0x10074540]
mov dword [0x10074480], eax
call edi
mov dword [0x10074544], eax
jmp 0x100199c0
cmp dword [ebp - 0x14], 8
lea edx, [ebp - 0x28]
mov ecx, dword [ebp - 0x18]
cmovae edx, dword [ebp - 0x28]
sub esp, 8
mov eax, esp
push ecx
push edx
mov dword [eax], str.ddraw.dll
mov dword [eax + 4], 9
call fcn.100216e0
add esp, 0x10
test al, al
je 0x10018f47
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
cmovae eax, dword [ebp - 0x40]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
push eax
mov ecx, 0x10074b50
call fcn.1001ade0
jmp 0x100199c0
cmp dword [ebp - 0x14], 8
lea edx, [ebp - 0x28]
mov ecx, dword [ebp - 0x18]
cmovae edx, dword [ebp - 0x28]
sub esp, 8
mov eax, esp
push ecx
push edx
mov dword [eax], str.d3d8.dll
mov dword [eax + 4], 8
call fcn.100216e0
add esp, 0x10
test al, al
je 0x10019064
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
cmovae eax, dword [ebp - 0x40]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
push 0x1004fd9c
push esi
mov dword [0x10074a38], esi
call edi
push 0x1004fdac
push esi
mov dword [0x10074470], eax
call edi
push 0x1004fdc0
push esi
mov dword [0x10074474], eax
call edi
push 0x1004fdd4
push esi
mov dword [0x10074478], eax
call edi
push 0x1004fde8
push esi
mov dword [0x1007447c], eax
call edi
push 0x1004fde8
push dword [0x10074a38]
mov dword [0x10074480], eax
call edi
push str.Direct3D8EnableMaximizedWindowedModeShim
push dword [0x10074a38]
mov dword [0x10074a3c], eax
call edi
push 0x10051e38
push dword [0x10074a38]
mov dword [0x10074a40], eax
call edi
push 0x10051e48
push dword [0x10074a38]
mov dword [0x10074a44], eax
call edi
push 0x10051e5c
push dword [0x10074a38]
mov dword [0x10074a48], eax
call edi
push 0x100752f0
push 0
push str.used3d8to9
push str.globalsets
mov dword [0x10074a4c], eax
call fcn.10017270
add esp, 0x10
test eax, eax
je 0x100199c0
mov dword [0x10074a44], 0x10001a70
jmp 0x100199c0
cmp dword [ebp - 0x14], 8
lea edx, [ebp - 0x28]
mov ecx, dword [ebp - 0x18]
cmovae edx, dword [ebp - 0x28]
sub esp, 8
mov eax, esp
push ecx
push edx
mov dword [eax], 0x100546a4
mov dword [eax + 4], 8
call fcn.100216e0
add esp, 0x10
test al, al
je 0x1001920a
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
cmovae eax, dword [ebp - 0x40]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
push 0x1004fd9c
push esi
mov dword [0x10074a50], esi
call edi
push 0x1004fdac
push esi
mov dword [0x10074470], eax
call edi
push 0x1004fdc0
push esi
mov dword [0x10074474], eax
call edi
push 0x1004fdd4
push esi
mov dword [0x10074478], eax
call edi
push 0x1004fde8
push esi
mov dword [0x1007447c], eax
call edi
push 0x10051e74
push dword [0x10074a50]
mov dword [0x10074480], eax
call edi
push 0x10051e88
push dword [0x10074a50]
mov dword [0x10074a54], eax
call edi
push 0x10051e9c
push dword [0x10074a50]
mov dword [0x10074a58], eax
call edi
push 0x10051eb0
push dword [0x10074a50]
mov dword [0x10074a5c], eax
call edi
push 0x10051ecc
push dword [0x10074a50]
mov dword [0x10074a60], eax
call edi
push 0x10051ee0
push dword [0x10074a50]
mov dword [0x10074a64], eax
call edi
push 0x10051ef4
push dword [0x10074a50]
mov dword [0x10074a68], eax
call edi
push 0x10051f08
push dword [0x10074a50]
mov dword [0x10074a6c], eax
call edi
push 0x1004fde8
push dword [0x10074a50]
mov dword [0x10074a70], eax
call edi
push 0x10051f18
push dword [0x10074a50]
mov dword [0x10074a74], eax
call edi
push 0x10051f44
push dword [0x10074a50]
mov dword [0x10074a78], eax
call edi
push 0x10051f54
push dword [0x10074a50]
mov dword [0x10074a7c], eax
call edi
push 0x10051f68
push dword [0x10074a50]
mov dword [0x10074a80], eax
call edi
mov dword [0x10074a84], eax
push 0x10051f88
push dword [0x10074a50]
call edi
push 0x10051f94
push dword [0x10074a50]
mov dword [0x10074a88], eax
call edi
mov dword [0x10074a8c], eax
jmp 0x100199c0
cmp dword [ebp - 0x14], 8
lea edx, [ebp - 0x28]
mov ecx, dword [ebp - 0x18]
cmovae edx, dword [ebp - 0x28]
sub esp, 8
mov eax, esp
push ecx
push edx
mov dword [eax], str.d3d11.dll
mov dword [eax + 4], 9
call fcn.100216e0
add esp, 0x10
test al, al
je 0x1001925a
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
cmovae eax, dword [ebp - 0x40]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
push eax
mov ecx, 0x10074a90
call fcn.1001ab20
jmp 0x100199c0
cmp dword [ebp - 0x14], 8
lea edx, [ebp - 0x28]
mov ecx, dword [ebp - 0x18]
cmovae edx, dword [ebp - 0x28]
sub esp, 8
mov eax, esp
push ecx
push edx
mov dword [eax], str.winmm.dll
mov dword [eax + 4], 9
call fcn.100216e0
add esp, 0x10
test al, al
je 0x100192aa
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
cmovae eax, dword [ebp - 0x40]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
push eax
mov ecx, 0x10074ba8
call fcn.1001c9a0
jmp 0x100199c0
cmp dword [ebp - 0x14], 8
lea edx, [ebp - 0x28]
mov ecx, dword [ebp - 0x18]
cmovae edx, dword [ebp - 0x28]
sub esp, 8
mov eax, esp
push ecx
push edx
mov dword [eax], str.msacm32.dll
mov dword [eax + 4], 0xb
call fcn.100216e0
add esp, 0x10
test al, al
je 0x100192fa
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
cmovae eax, dword [ebp - 0x40]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
push eax
mov ecx, 0x10074eb0
call fcn.1001af30
jmp 0x100199c0
cmp dword [ebp - 0x14], 8
lea edx, [ebp - 0x28]
mov ecx, dword [ebp - 0x18]
cmovae edx, dword [ebp - 0x28]
sub esp, 8
mov eax, esp
push ecx
push edx
mov dword [eax], str.dinput.dll
mov dword [eax + 4], 0xa
call fcn.100216e0
add esp, 0x10
test al, al
je 0x100193c8
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
cmovae eax, dword [ebp - 0x40]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
push 0x1004fd9c
push esi
mov dword [0x10074a28], esi
call edi
push 0x1004fdac
push esi
mov dword [0x10074470], eax
call edi
push 0x1004fdc0
push esi
mov dword [0x10074474], eax
call edi
push 0x1004fdd4
push esi
mov dword [0x10074478], eax
call edi
push 0x1004fde8
push esi
mov dword [0x1007447c], eax
call edi
push 0x10051dd0
push dword [0x10074a28]
mov dword [0x10074480], eax
call edi
push 0x10051de4
push dword [0x10074a28]
mov dword [0x10074a2c], eax
call edi
push 0x10051df8
push dword [0x10074a28]
mov dword [0x10074a30], eax
call edi
mov dword [0x10074a34], eax
jmp 0x100199c0
cmp dword [ebp - 0x14], 8
lea edx, [ebp - 0x28]
mov ecx, dword [ebp - 0x18]
cmovae edx, dword [ebp - 0x28]
sub esp, 8
mov eax, esp
push ecx
push edx
mov dword [eax], str.msvfw32.dll
mov dword [eax + 4], 0xb
call fcn.100216e0
add esp, 0x10
test al, al
je 0x10019418
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
cmovae eax, dword [ebp - 0x40]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
push eax
mov ecx, 0x10074f60
call fcn.1001b1b0
jmp 0x100199c0
cmp dword [ebp - 0x14], 8
lea edx, [ebp - 0x28]
mov ecx, dword [ebp - 0x18]
cmovae edx, dword [ebp - 0x28]
sub esp, 8
mov eax, esp
push ecx
push edx
mov dword [eax], str.wininet.dll
mov dword [eax + 4], 0xb
call fcn.100216e0
add esp, 0x10
test al, al
je 0x10019468
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
cmovae eax, dword [ebp - 0x40]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
push eax
mov ecx, 0x10074548
call fcn.1001b870
jmp 0x100199c0
cmp dword [ebp - 0x14], 8
lea edx, [ebp - 0x28]
mov ecx, dword [ebp - 0x18]
cmovae edx, dword [ebp - 0x28]
sub esp, 8
mov eax, esp
push ecx
push edx
mov dword [eax], str.version.dll
mov dword [eax + 4], 0xb
call fcn.100216e0
add esp, 0x10
test al, al
je 0x100195e9
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
cmovae eax, dword [ebp - 0x40]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0x10051c6c
push eax
mov dword [0x100749e0], eax
call esi
push 0x10051c80
push dword [0x100749e0]
mov dword [0x100749e4], eax
call esi
push 0x10051c9c
push dword [0x100749e0]
mov dword [0x100749e8], eax
call esi
push 0x10051cb4
push dword [0x100749e0]
mov dword [0x100749ec], eax
call esi
push 0x10051ccc
push dword [0x100749e0]
mov dword [0x100749f0], eax
call esi
push 0x10051ce4
push dword [0x100749e0]
mov dword [0x100749f4], eax
call esi
push 0x10051d00
push dword [0x100749e0]
mov dword [0x100749f8], eax
call esi
push 0x10051d1c
push dword [0x100749e0]
mov dword [0x100749fc], eax
call esi
push 0x10051d34
push dword [0x100749e0]
mov dword [0x10074a00], eax
call esi
push 0x10051d48
push dword [0x100749e0]
mov dword [0x10074a04], eax
call esi
push 0x10051d58
push dword [0x100749e0]
mov dword [0x10074a08], eax
call esi
push 0x10051d68
push dword [0x100749e0]
mov dword [0x10074a0c], eax
call esi
push 0x10051d78
push dword [0x100749e0]
mov dword [0x10074a10], eax
call esi
push 0x10051d88
push dword [0x100749e0]
mov dword [0x10074a14], eax
call esi
push 0x10051d9c
push dword [0x100749e0]
mov dword [0x10074a18], eax
call esi
push 0x10051db0
push dword [0x100749e0]
mov dword [0x10074a1c], eax
call esi
push 0x10051dc0
push dword [0x100749e0]
mov dword [0x10074a20], eax
call esi
mov dword [0x10074a24], eax
jmp 0x100199c0
cmp dword [ebp - 0x14], 8
lea edx, [ebp - 0x28]
mov ecx, dword [ebp - 0x18]
cmovae edx, dword [ebp - 0x28]
sub esp, 8
mov eax, esp
push ecx
push edx
mov dword [eax], str.binkw32.dll
mov dword [eax + 4], 0xb
call fcn.100216e0
add esp, 0x10
test al, al
je 0x100197ed
push str.binkw32Hooked.dll
lea ecx, [ebp - 0x70]
call fcn.10016600
push 0
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0x58]
call fcn.10014ba0
lea eax, [ebp - 0x58]
mov byte [ebp - 4], 8
push eax
call fcn.10021470
add esp, 4
mov byte [ebp - 0x8d], al
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 6
call fcn.10015d60
cmp byte [ebp - 0x8d], 0
je 0x10019685
cmp dword [ebp - 0x5c], 8
lea eax, [ebp - 0x70]
push 0
cmovae eax, dword [ebp - 0x70]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
push eax
mov ecx, 0x10075020
call fcn.10019a10
jmp 0x100199c0
xorps xmm0, xmm0
mov dword [ebp - 0xb0], 0
movups xmmword [ebp - 0xc8], xmm0
mov dword [ebp - 0xac], 0
mov dword [ebp - 0xa8], 0
push 1
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 9
call fcn.10016a90
mov esi, dword [ebp - 0xb0]
mov di, word [ebp - 0xc8]
cmp esi, dword [ebp - 0xac]
je 0x10019751
mov edx, 0x989680
nop dword [eax + eax]
mov ecx, dword [esi + 0x1c]
mov eax, dword [ecx + 0x3c]
mov eax, dword [eax + ecx + 8]
imul edx
add eax, 0xd53e8000
mov dword [ebp - 0xa4], eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0xa4]
adc edx, 0x19db1de
push eax
mov dword [ebp - 0xa0], edx
call dword [sym.imp.KERNEL32.dll_FileTimeToSystemTime]
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x50]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_SystemTimeToTzSpecificLocalTime]
test di, di
je 0x1001972f
cmp di, word [ebp - 0x80]
jbe 0x10019741
movups xmm0, xmmword [ebp - 0x80]
movups xmmword [ebp - 0xc8], xmm0
mov di, word [ebp - 0xc8]
add esi, 0x20
mov edx, 0x989680
cmp esi, dword [ebp - 0xac]
jne 0x100196e0
mov eax, 0x7d7
cmp di, ax
ja 0x10019762
mov eax, 0x69
jmp 0x10019782
mov eax, 0x7da
cmp di, ax
ja 0x10019773
mov eax, 0x6a
jmp 0x10019782
mov eax, 0x7dc
cmp ax, di
sbb eax, eax
neg eax
add eax, 0x6b
push 0xa
push eax
push dword [0x10074ba4]
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov esi, eax
test esi, esi
je 0x100197dd
push esi
push dword [0x10074ba4]
call dword [sym.imp.KERNEL32.dll_LoadResource]
test eax, eax
je 0x100197dd
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
mov edi, eax
test edi, edi
je 0x100197dd
push esi
push dword [0x10074ba4]
call dword [sym.imp.KERNEL32.dll_SizeofResource]
test eax, eax
je 0x100197dd
push 1
push eax
push edi
call fcn.10001460
add esp, 8
mov ecx, 0x10075020
push eax
call fcn.10019a10
lea ecx, [ebp - 0xb0]
call fcn.10015e20
jmp 0x100199c0
cmp dword [ebp - 0x14], 8
lea edx, [ebp - 0x28]
mov ecx, dword [ebp - 0x18]
cmovae edx, dword [ebp - 0x28]
sub esp, 8
mov eax, esp
push ecx
push edx
mov dword [eax], str.xlive.dll
mov dword [eax + 4], 9
call fcn.100216e0
add esp, 0x10
test al, al
je 0x100199f3
lea eax, [ebp - 0xa4]
mov dword [ebp - 0xb4], str..text
lea ecx, [ebp - 0xb4]
mov dword [ebp - 0xb0], 5
push eax
push ecx
lea ecx, [ebp - 0xa4]
mov dword [ebp - 0xac], 0x100547a8
mov dword [ebp - 0xa8], 6
call fcn.100156b0
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov ecx, eax
xor edx, edx
mov dword [ebp - 0xb8], ecx
mov eax, dword [ecx + 0x3c]
add eax, ecx
xor ecx, ecx
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x94], ecx
movzx edi, word [eax + 0x14]
add edi, 0x18
add edi, eax
cmp dx, word [eax + 6]
jae 0x100199b5
nop dword [eax + eax]
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0x98], eax
mov esi, dword [eax + 4]
cmp byte [esi + 0xd], 0
jne 0x100198fe
mov eax, edi
lea edx, [eax + 1]
nop word [eax + eax]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x100198c0
sub eax, edx
push eax
push edi
push dword [esi + 0x14]
push dword [esi + 0x10]
call fcn.10015400
add esp, 0x10
test eax, eax
jns 0x100198e8
mov esi, dword [esi + 8]
mov eax, dword [ebp - 0x98]
jmp 0x100198f2
mov eax, esi
mov esi, dword [esi]
mov dword [ebp - 0x98], eax
cmp byte [esi + 0xd], 0
je 0x100198b5
mov ecx, dword [ebp - 0x94]
cmp byte [eax + 0xd], 0
jne 0x10019999
mov edx, dword [eax + 0x10]
mov ecx, edi
mov esi, dword [eax + 0x14]
lea eax, [ecx + 1]
mov dword [ebp - 0x9c], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10019920
sub ecx, dword [ebp - 0x9c]
push esi
push edx
push ecx
push edi
call fcn.10015400
add esp, 0x10
test eax, eax
js 0x10019993
mov eax, dword [ebp - 0xa4]
cmp dword [ebp - 0x98], eax
je 0x10019993
mov ecx, dword [edi + 8]
lea edx, [ebp - 0x9c]
mov eax, dword [edi + 0x24]
add ecx, 0xfff
and eax, 0x20000000
mov dword [ebp - 0x9c], 0
and ecx, 0xfffff000
neg eax
push edx
sbb eax, eax
and eax, 0x3c
add eax, 4
push eax
mov eax, dword [edi + 0xc]
add eax, dword [ebp - 0xb8]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
je 0x10019a07
mov ecx, dword [ebp - 0x94]
mov eax, dword [ebp - 0x8c]
inc ecx
add edi, 0x28
mov dword [ebp - 0x94], ecx
movzx eax, word [eax + 6]
cmp ecx, eax
jl 0x100198a0
lea ecx, [ebp - 0xa4]
call fcn.10015d20
lea ecx, [ebp - 0x70]
call fcn.10015d60
lea ecx, [ebp - 0x40]
call fcn.10015d60
lea ecx, [ebp - 0x28]
call fcn.10015d60
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10026812
mov esp, ebp
pop ebp
ret
push 0x10
push str.ASI_Loader
push str.This_library_isnt_supported._Try_to_rename_it_to_d3d8.dll__d3d9.dll__d3d11.dll__winmm.dll__wininet.dll__version.dll______________msacm32.dll__dinput.dll__dinput8.dll__dsound.dll__vorbisFile.dll__msvfw32.dll__xlive.dll_or_ddraw.dll.
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]