Function at 0x41179a
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
mov eax, 0x49a3db
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x20]
push eax
push 0x49d770
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x108]
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x411802
push ebx
call fcn.004430f9
add esp, 4
mov ebx, dword [0x49d768]
add ebx, 0x28
mov dword [ebp - 0x20], ebx
push dword [ebp - 0x20]
push 0x49d874
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 8]
push 0x49d874
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0xc]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0xffffffff
jne 0x411841
jmp 0x411b55
mov eax, 0x49a3f5
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x20]
push eax
push 0x49d770
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x108]
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x41186f
push ebx
call fcn.004430f9
add esp, 4
push 1
push 0x49d840
push dword [ebp - 4]
push 0x49d874
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x10]
test eax, eax
je 0x411b4b
mov eax, dword [ebp - 4]
xor ecx, ecx
push eax
lea eax, [ebp - 8]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x411b41
mov ebx, dword [0x49d70c]
mov dword [ebp - 0x20], ebx
mov ebx, dword [0x49d840]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
push ebx
mov eax, dword [ebp - 8]
dec eax
pop ebx
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp - 0x24]
push dword [ebx]
mov ebx, dword [ebp - 0x20]
push dword [ebx]
mov ecx, 2
call fcn.0040106b
add esp, 8
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
push eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x4118ff
push ebx
call fcn.004430f9
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x10], 0
lea eax, [ebp - 0xc]
push eax
call fcn.00402387
test eax, eax
je 0x411946
push OleUIBusyA
push 0
mov eax, dword [ebp - 0xc]
test eax, eax
jne 0x41192e
mov eax, 0x4722d5
push eax
push 1
mov ebx, 0x238
call fcn.00446ff0
add esp, 0x10
jmp 0x41196b
lea eax, [ebp - 0xc]
push eax
call fcn.00411f29
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x20]
push eax
call fcn.004023aa
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x41196b
push ebx
call fcn.004430f9
add esp, 4
lea eax, [ebp - 0xc]
push eax
call fcn.00402a7d
and eax, 1
xor eax, 1
test eax, eax
je 0x41198e
mov dword [ebp - 0x10], 1
jmp 0x411a54
push 0x80000301
push 0
push 0x20
push OleUIBusyA
push 0
mov eax, dword [ebp - 0xc]
test eax, eax
jne 0x4119ad
mov eax, 0x4722d5
push eax
push 2
mov ebx, 0x260
call fcn.00446100
add esp, 0x1c
push OleUIBusyA
push 0
mov eax, dword [ebp - 0xc]
test eax, eax
jne 0x4119d3
mov eax, 0x4722d5
push eax
push 1
mov ebx, 0x268
call fcn.00446700
add esp, 0x10
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x20]
push eax
call fcn.00411ff7
mov dword [ebp - 0x24], eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x411a05
push ebx
call fcn.004430f9
add esp, 4
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x14], eax
mov ebx, dword [0x49d840]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
push ebx
mov eax, dword [ebp - 8]
dec eax
pop ebx
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebp - 0x20]
mov eax, dword [ebx]
cmp dword [ebp - 0x14], eax
je 0x411a4a
lea eax, [ebp - 0xc]
push eax
call fcn.0041207f
mov dword [ebp - 0x10], 1
jmp 0x411a54
cmp dword [ebp - 0x10], 1
jne 0x411b39
mov ebx, dword [0x49d848]
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebp - 0x20]
inc dword [ebx]
mov ebx, dword [0x49d840]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
push ebx
mov eax, dword [ebp - 8]
dec eax
pop ebx
shl eax, 2
add ebx, eax
mov dword [ebp - 0x20], ebx
push 0x49d844
push 4
mov eax, 2
call fcn.00445a40
add esp, 8
mov ebx, dword [ebp - 0x20]
mov eax, dword [ebx]
mov dword [ebp - 0x24], eax
mov ebx, dword [0x49d844]
mov dword [ebp - 0x28], ebx
call fcn.0040f923
mov dword [ebp - 0x2c], ecx
mov edi, dword [ebp - 0x28]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x411ad1
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x2c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x28]
call fcn.00443105
add esp, 8
mov dword [0x49d844], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x2c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x24]
push edi
push eax
push 0x14
call fcn.004430f3
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x411b2b
push eax
mov ebx, eax
call fcn.00401000
inc eax
push eax
call fcn.004430f3
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
pop eax
pop ebx
pop ecx
jmp 0x41189c
add esp, 0xc
mov dword [ebp - 0x18], 1
jmp 0x411b55
cmp dword [ebp - 0x18], 0
je 0x411e48
mov ebx, dword [0x49d848]
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebp - 0x20]
cmp dword [ebx], 0
jle 0x411d4d
mov ebx, dword [0x49d848]
mov dword [ebp - 0x20], ebx
push 0x80000301
push 0
mov ebx, dword [ebp - 0x20]
push dword [ebx]
push 1
mov ebx, 0x168
call fcn.00448520
add esp, 0x10
mov dword [ebp - 0x24], eax
push 0x49a40f
push dword [ebp - 0x24]
push 0x49a412
mov ecx, 3
call fcn.0040106b
add esp, 0xc
mov dword [ebp - 0x28], eax
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x411bcb
push ebx
call fcn.004430f9
add esp, 4
push 1
lea eax, [ebp - 0x28]
push eax
push 0x49d864
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x1a0]
mov ebx, eax
test ebx, ebx
je 0x411bf2
push ebx
call fcn.004430f9
add esp, 4
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x411c02
push ebx
call fcn.004430f9
add esp, 4
mov dword [ebp - 0x20], 0
push 0
push dword [ebp - 0x20]
push 1
push 0xff0000
push 0x49d864
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x188]
mov ebx, dword [0x49d848]
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebp - 0x20]
push dword [ebx]
push 0
push 0x49d86c
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x194]
push 1
push 0
push 0x49d86c
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x190]
mov eax, 0x49a415
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x20]
push eax
push 0x49d770
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x108]
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x411c93
push ebx
call fcn.004430f9
add esp, 4
push 0
push 0
push 0
push 0x41299e
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
nop
nop
nop
nop
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jle 0x411ce6
push dword [ebp - 0x1c]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
nop
nop
nop
nop
mov dword [ebp - 0x1c], 0
jmp 0x411f15
mov dword [ebp - 0x20], 0
push 0
push dword [ebp - 0x20]
push 0x10
push 1
mov eax, 0x49a3aa
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x24]
push eax
mov eax, 0x49a435
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x28]
push eax
push 1
push dword [0x49d84c]
push 0x49d738
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 8]
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x411d38
push ebx
call fcn.004430f9
add esp, 4
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x411d48
push ebx
call fcn.004430f9
add esp, 4
jmp 0x411e43
mov eax, 0x49a458
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x20]
push eax
push 0x49d770
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x108]
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x411d7b
push ebx
call fcn.004430f9
add esp, 4
push 1
mov eax, 0x49a483
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x20]
push eax
push 0x49d854
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x1a0]
mov ebx, eax
test ebx, ebx
je 0x411daa
push ebx
call fcn.004430f9
add esp, 4
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x411dba
push ebx
call fcn.004430f9
add esp, 4
mov ebx, dword [0x49d848]
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebp - 0x20]
cmp dword [ebx], 0
jne 0x411e43
push 1
push 0
push 0x49d86c
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x194]
push 1
push 1
push 0x49d86c
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x190]
push 1
mov eax, str.100_
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x20]
push eax
push 0x49d864
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x1a0]
mov ebx, eax
test ebx, ebx
je 0x411e33
push ebx
call fcn.004430f9
add esp, 4
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x411e43
push ebx
call fcn.004430f9
add esp, 4
jmp 0x411eef
mov eax, 0x49a494
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x20]
push eax
push 0x49d770
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x108]
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x411e76
push ebx
call fcn.004430f9
add esp, 4
mov dword [ebp - 0x20], 0
push 0
push dword [ebp - 0x20]
push 0x10
push 1
mov eax, 0x49a3aa
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x24]
push eax
mov eax, 0x49a4a5
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x28]
push eax
push 1
push dword [0x49d84c]
push 0x49d738
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 8]
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x411ec8
push ebx
call fcn.004430f9
add esp, 4
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x411ed8
push ebx
call fcn.004430f9
add esp, 4
push 0x49d770
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x90]
jmp 0x411f15
push 0xbb8
push 0xffffffff
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
nop
nop
nop
nop
push 0x49d770
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x90]
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x411f25
push ebx
call fcn.004430f9
add esp, 4
mov esp, ebp
pop ebp
ret