Function at 0x1001d880
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, dword [ebp + 0xc]
mov eax, dword [eax]
sub esp, 0x5c
push ebx
xor ebx, ebx
push esi
push edi
cmp eax, ebx
jne 0x1001d8a1
push 0x80004003
call fcn.100830f0
mov ecx, dword [eax]
lea edx, [esp + 0x10]
push edx
push ebx
push 0x4ab
push eax
mov eax, dword [ecx + 0x108]
mov dword [esp + 0x20], ebx
call eax
mov eax, dword [esp + 0x10]
push ecx
mov ecx, esp
mov edi, eax
mov dword [ecx], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x18], ebx
cmp eax, ebx
je 0x1001d8da
mov ecx, dword [eax]
mov edx, dword [ecx + 4]
push eax
call edx
lea esi, [esp + 0x18]
call fcn.1000a080
cmp eax, ebx
jge 0x1001d8f4
cmp eax, 0x80004002
je 0x1001d8f4
push eax
call fcn.100830f0
cmp edi, ebx
je 0x1001d900
mov eax, dword [edi]
mov ecx, dword [eax + 8]
push edi
call ecx
mov edx, dword [ebp + 8]
mov esi, dword [sym.imp.USER32.DLL_CopyRect]
cmp dword [edx + 0x4c], ebx
je 0x1001da32
mov eax, dword [esp + 0x14]
cmp eax, ebx
je 0x1001da32
mov ecx, dword [eax]
lea edx, [esp + 0x58]
push edx
push eax
mov eax, dword [ecx + 0x40]
call eax
lea ecx, [esp + 0x58]
push ecx
lea edx, [esp + 0x3c]
push edx
call esi
mov eax, dword [0x100c7a60]
cmp eax, ebx
jne 0x1001d972
push 0x100a6b44
call dword [sym.imp.KERNEL32.DLL_GetModuleHandleW]
cmp eax, ebx
jne 0x1001d956
mov edi, 0xfffffffb
jmp 0x1001d978
push 0x100a9e44
push eax
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
mov dword [0x100c7a60], eax
cmp eax, ebx
jne 0x1001d972
mov edi, 0xfffffffb
jmp 0x1001d981
push 0xfffffffffffffffb
call eax
mov edi, eax
mov eax, dword [0x100c7a60]
cmp eax, ebx
jne 0x1001d9b3
push 0x100a6b44
call dword [sym.imp.KERNEL32.DLL_GetModuleHandleW]
cmp eax, ebx
jne 0x1001d997
mov eax, 6
jmp 0x1001d9b7
push 0x100a9e44
push eax
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
mov dword [0x100c7a60], eax
cmp eax, ebx
jne 0x1001d9b3
mov eax, 6
jmp 0x1001d9b7
push 6
call eax
push edi
push eax
lea eax, [esp + 0x40]
push eax
call dword [sym.imp.USER32.DLL_OffsetRect]
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + 0x4c]
mov edx, dword [esp + 0x38]
sub eax, 0xffffff80
mov dword [eax], edx
mov edx, dword [esp + 0x3c]
mov dword [eax + 4], edx
mov edx, dword [esp + 0x40]
mov dword [eax + 8], edx
mov edx, dword [esp + 0x44]
mov dword [eax + 0xc], edx
mov eax, dword [ecx + 0x4c]
lea edi, [esp + 0x10]
mov dword [esp + 0x10], ebx
call fcn.1000b250
cmp eax, ebx
jge 0x1001da09
cmp eax, 0x80004002
je 0x1001da09
push eax
call fcn.100830f0
mov edi, dword [esp + 0x10]
cmp edi, ebx
jne 0x1001da1b
push 0x80004003
call fcn.100830f0
mov eax, dword [edi]
mov edx, dword [eax + 0x44]
push 1
lea ecx, [esp + 0x3c]
push ecx
push edi
call edx
mov eax, dword [edi]
mov ecx, dword [eax + 8]
push edi
call ecx
mov edx, dword [ebp + 0xc]
mov eax, dword [edx]
cmp eax, ebx
jne 0x1001da45
push 0x80004003
call fcn.100830f0
mov ecx, dword [eax]
lea edx, [esp + 0x58]
push edx
push eax
mov eax, dword [ecx + 0x40]
call eax
lea ecx, [esp + 0x58]
push ecx
lea edx, [esp + 0x2c]
push edx
call esi
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x30]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x24], eax
mov eax, dword [0x100c7a60]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], edx
cmp eax, ebx
jne 0x1001dac6
mov edi, dword [sym.imp.KERNEL32.DLL_GetModuleHandleW]
push 0x100a6b44
call edi
mov esi, dword [sym.imp.KERNEL32.DLL_GetProcAddress]
cmp eax, ebx
jne 0x1001daa5
mov eax, 0x31
jmp 0x1001dad6
push 0x100a9e44
push eax
call esi
mov ecx, eax
mov dword [0x100c7a60], ecx
cmp ecx, ebx
jne 0x1001dac0
mov eax, 0x31
jmp 0x1001dadc
push 0x31
call ecx
jmp 0x1001dad6
push 0x31
call eax
mov esi, dword [sym.imp.KERNEL32.DLL_GetProcAddress]
mov edi, dword [sym.imp.KERNEL32.DLL_GetModuleHandleW]
mov ecx, dword [0x100c7a60]
add dword [esp + 0x18], eax
cmp ecx, ebx
jne 0x1001db11
push 0x100a6b44
call edi
cmp eax, ebx
jne 0x1001daf6
mov eax, 0x5e
jmp 0x1001db15
push 0x100a9e44
push eax
call esi
mov ecx, eax
mov dword [0x100c7a60], ecx
cmp ecx, ebx
jne 0x1001db11
mov eax, 0x5e
jmp 0x1001db1b
push 0x5e
call ecx
mov ecx, dword [0x100c7a60]
add dword [esp + 0x1c], eax
cmp ecx, ebx
jne 0x1001db50
push 0x100a6b44
call edi
cmp eax, ebx
jne 0x1001db35
mov eax, 0x96
jmp 0x1001db57
push 0x100a9e44
push eax
call esi
mov ecx, eax
mov dword [0x100c7a60], ecx
cmp ecx, ebx
jne 0x1001db50
mov eax, 0x96
jmp 0x1001db5d
push 0x96
call ecx
mov ecx, dword [0x100c7a60]
mov edx, dword [esp + 0x1c]
add eax, edx
mov dword [esp + 0x24], eax
cmp ecx, ebx
jne 0x1001db9e
push 0x100a6b44
call edi
cmp eax, ebx
jne 0x1001db7d
mov eax, 0x96
jmp 0x1001dba5
push 0x100a9e44
push eax
call esi
mov dword [0x100c7a60], eax
cmp eax, ebx
jne 0x1001db95
mov eax, 0x96
jmp 0x1001dba5
push 0x96
call eax
jmp 0x1001dba5
push 0x96
call ecx
mov ecx, dword [esp + 0x18]
add eax, ecx
mov dword [esp + 0x20], eax
mov eax, dword [ebp + 8]
cmp dword [eax + 0x3c], ebx
je 0x1001dbd7
mov eax, dword [eax + 0x3c]
cmp eax, ebx
jne 0x1001dbc8
push 0x80004003
call fcn.100830f0
mov edx, dword [eax]
mov edx, dword [edx + 0x44]
push 1
lea ecx, [esp + 0x1c]
push ecx
push eax
call edx
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x30]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x54], eax
mov eax, dword [0x100c7a60]
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x50], edx
cmp eax, ebx
jne 0x1001dc2a
push 0x100a6b44
call edi
cmp eax, ebx
jne 0x1001dc12
mov edi, 0x1e
jmp 0x1001dc30
push 0x100a9e44
push eax
call esi
mov dword [0x100c7a60], eax
cmp eax, ebx
jne 0x1001dc2a
mov edi, 0x1e
jmp 0x1001dc39
push 0x1e
call eax
mov edi, eax
mov eax, dword [0x100c7a60]
cmp eax, ebx
jne 0x1001dc67
push 0x100a6b44
call dword [sym.imp.KERNEL32.DLL_GetModuleHandleW]
cmp eax, ebx
jne 0x1001dc4f
mov eax, 0xc
jmp 0x1001dc6b
push 0x100a9e44
push eax
call esi
mov dword [0x100c7a60], eax
cmp eax, ebx
jne 0x1001dc67
mov eax, 0xc
jmp 0x1001dc6b
push 0xc
call eax
push edi
push eax
lea ecx, [esp + 0x50]
push ecx
call dword [sym.imp.USER32.DLL_OffsetRect]
mov esi, dword [ebp + 8]
cmp dword [esi + 0x40], ebx
je 0x1001dca0
mov eax, dword [esi + 0x40]
cmp eax, ebx
jne 0x1001dc91
push 0x80004003
call fcn.100830f0
mov edx, dword [eax]
mov edx, dword [edx + 0x44]
push 1
lea ecx, [esp + 0x4c]
push ecx
push eax
call edx
mov ecx, dword [esi + 0x48]
cmp ecx, ebx
je 0x1001dcb2
mov eax, dword [ecx]
mov edx, dword [eax]
push 1
call edx
mov dword [esi + 0x48], ebx
mov ecx, dword [esi + 0x44]
cmp ecx, ebx
je 0x1001dcc1
mov eax, dword [ecx]
mov edx, dword [eax]
push 1
call edx
mov dword [esi + 0x44], ebx
cmp dword [esi + 0x54], ebx
je 0x1001dcd2
mov ebx, esi
call fcn.1001de10
xor ebx, ebx
mov eax, dword [esp + 0x14]
cmp eax, ebx
je 0x1001dce2
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8