Function at 0x3002c534
Capabilities:
Suspend thread

Disassembly:
push ebp
lea ebp, [esp - 0x1c0]
sub esp, 0x240
mov eax, dword [section..cdata]
push ebx
push edi
xor ebx, ebx
mov dword [ebp + 0x1bc], eax
xor eax, eax
mov dword [ebp - 0x80], ebx
lea edi, [ebp - 0x7c]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
cmp dword [0x3009b840], 5
mov ecx, 0x87
lea edi, [ebp - 0x60]
mov dword [ebp - 0x64], ebx
rep stosd dword es:[edi], eax
mov dword [ebp - 0x68], ebx
je 0x3002c57c
mov dword [0x300659b8], ebx
xor eax, eax
lea edi, [ebp - 0x74]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.30027b6b
mov edi, dword [ebp + 0x1c8]
lea eax, [edi + 0x44]
push eax
lea eax, [edi + 0x40]
push eax
call fcn.30027b3f
cmp dword [0x3009b840], 5
mov dword [0x300a1718], ebx
mov dword [0x300a171c], ebx
je 0x3002c5bf
mov dword [0x300a1738], ebx
push esi
mov esi, dword [ebp + 0x1cc]
lea eax, [esi + 0x1144]
mov dword [0x300a1740], eax
lea eax, [esi + 0x1160]
mov dword [0x300a1744], eax
lea eax, [esi + 0x116c]
mov dword [0x300a1748], eax
lea eax, [ebp - 0x74]
mov dword [0x300a174c], eax
mov eax, dword [esi + 0x111c]
mov dword [0x300a1750], eax
mov dword [0x300a1754], ebx
mov eax, dword [esi + 0x1110]
mov dword [0x300a1760], eax
mov eax, dword [esi + 0x1138]
mov dword [0x300a1764], eax
mov eax, dword [esi + 0x113c]
mov dword [0x300a1768], eax
lea eax, [esi + 0x1120]
mov dword [0x300a176c], edi
mov dword [0x300a1770], eax
mov ecx, dword [esi + 0x1180]
mov dword [eax + 0x14], ecx
mov dword [0x300a1774], ebx
test byte [esi + 0x1143], 0x10
mov dword [ebp + 0x1cc], eax
je 0x3002c704
cmp dword [0x3009b840], ebx
jne 0x3002c6c5
call fcn.30027b21
test eax, eax
je 0x3002c6b2
mov eax, dword [0x300998a8]
test byte [eax + 0x2c], 0x20
jne 0x3002c6b2
push 0x30099d7c
push 0x104
push 0x30099d8c
call fcn.30027354
mov eax, dword [0x300998a8]
test byte [eax + 0x38], 0x20
mov eax, 0x30004348
jne 0x3002c699
mov eax, 0x30004330
push 0xffffffffffffffff
push 0xffffffffffffffff
mov dword [esi + 0x113c], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.KERNEL32.dll_SetProcessWorkingSetSize]
jmp 0x3002c6c5
call fcn.30022b36
test eax, eax
je 0x3002c6c5
push 0x300015a0
call fcn.30022bd0
lea eax, [ebp - 0x64]
push eax
call fcn.3002fec4
push 1
lea eax, [ebp - 0x64]
push eax
call fcn.3003115b
test eax, eax
je 0x3002c6f6
lea eax, [ebp - 0x64]
push eax
push esi
push edi
call fcn.30031a61
test eax, eax
je 0x3002c6f6
mov dword [0x300a170c], 1
lea eax, [ebp - 0x64]
push eax
call fcn.30030ed2
jmp 0x3002c8f5
call fcn.3002a423
test eax, eax
je 0x3002c7a2
mov eax, dword [esi + 0x1104]
cmp eax, ebx
je 0x3002c8f5
cmp word [eax], bx
je 0x3002c8f5
mov dword [0x30096bb0], eax
mov dword [0x300a1774], 1
cmp dword [esi + 0x111c], ebx
push ebx
je 0x3002c74a
call fcn.3002c03d
jmp 0x3002c8f5
push 0x30020297
push dword [0x3009b4f4]
push 0x67
push dword [0x30065570]
call fcn.3001a019
mov eax, dword [0x300a1738]
cmp eax, ebx
je 0x3002c8f5
push 0x4e20
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
je 0x3002c78b
push dword [0x300a1738]
call dword [sym.imp.KERNEL32.dll_SuspendThread]
push dword [0x300a1738]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [0x300a1738], ebx
jmp 0x3002c8f5
xor eax, eax
mov dword [0x30096bdc], ebx
mov dword [0x30096c00], ebx
mov dword [0x30096c04], ebx
mov dword [0x30096c08], ebx
mov dword [0x30096c0c], ebx
mov dword [0x30096c10], ebx
mov byte [0x30097538], bl
mov dword [0x3009763c], ebx
mov dword [0x3009764c], ebx
mov dword [0x30097650], ebx
mov dword [0x30097684], ebx
push 0x41
mov edx, 0x200
mov ecx, 0x400
mov edi, 0x30097688
rep stosd dword es:[edi], eax
mov dword [0x30098688], ebx
mov dword [0x3009868c], ebx
mov ecx, edx
mov edi, 0x30098690
rep stosd dword es:[edi], eax
pop ecx
mov edi, 0x30098e90
rep stosd dword es:[edi], eax
push 0x41
mov ecx, edx
mov edi, 0x30098f94
rep stosd dword es:[edi], eax
pop ecx
mov edi, 0x30099794
rep stosd dword es:[edi], eax
lea eax, [esi + 0x800]
push 0x104
mov dword [0x30096c30], eax
push 0x30096c34
lea eax, [esi + 0x1000]
push eax
mov dword [0x30099898], ebx
mov dword [0x300998a0], ebx
mov dword [0x30096c2c], esi
call fcn.3004f0aa
cmp dword [0x3009b840], 5
mov eax, dword [esi + 0x1108]
mov dword [0x30097654], eax
mov eax, dword [esi + 0x110c]
mov dword [0x30097658], eax
mov eax, dword [esi + 0x1114]
mov dword [0x300998a4], eax
jne 0x3002c890
mov eax, dword [0x300a1758]
mov dword [0x300a171c], eax
cmp dword [esi + 0x111c], ebx
push ebx
je 0x3002c8a0
call fcn.3002bf34
jmp 0x3002c8ef
push 0x30020297
push dword [0x3009b4f4]
push 0x67
push dword [0x30065570]
call fcn.3001a019
mov eax, dword [0x300a1738]
cmp eax, ebx
je 0x3002c8ef
push 0x4e20
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
je 0x3002c8dd
push dword [0x300a1738]
call dword [sym.imp.KERNEL32.dll_SuspendThread]
push dword [0x300a1738]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [0x300a1738], ebx
mov edi, dword [ebp + 0x1c8]
xor eax, eax
inc eax
cmp dword [ebp - 0x6c], ebx
je 0x3002c908
mov dword [esi + 0x1118], eax
mov dword [0x300a170c], eax
mov ecx, dword [esi + 0x1110]
cmp ecx, ebx
je 0x3002c924
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x7c], eax
push 0xc
lea eax, [ebp - 0x80]
push eax
push ecx
call fcn.30026545
call fcn.3002a547
push ebx
push ebx
call dword [0x30096934]
test eax, eax
jl 0x3002c93c
mov dword [ebp - 0x68], 1
cmp dword [0x3009b840], 5
je 0x3002c951
cmp dword [esi + 0x111c], ebx
jne 0x3002c951
xor eax, eax
jmp 0x3002c954
xor eax, eax
inc eax
push eax
push ebx
lea eax, [ebp - 0x74]
push eax
push dword [ebp + 0x1cc]
call fcn.3001e514
cmp dword [ebp - 0x68], ebx
pop esi
je 0x3002c971
call dword [0x30096930]
mov eax, dword [edi + 0x20]
cmp eax, ebx
je 0x3002c97e
push eax
call fcn.30053354
mov eax, dword [edi]
cmp eax, ebx
je 0x3002c98a
push eax
call fcn.30053354
mov eax, dword [edi + 4]
cmp eax, ebx
je 0x3002c997
push eax
call fcn.30053354
mov eax, dword [edi + 8]
cmp eax, ebx
je 0x3002c9a4
push eax
call fcn.30053354
mov eax, dword [edi + 0xc]
cmp eax, ebx
je 0x3002c9b1
push eax
call fcn.30053354
mov eax, dword [edi + 0x10]
cmp eax, ebx
je 0x3002c9be
push eax
call fcn.30053354
mov edi, dword [edi + 0x38]
cmp edi, ebx
je 0x3002c9cb
push edi
call fcn.30053354
mov eax, dword [ebp - 0x70]
cmp eax, dword [0x300656a4]
je 0x3002c9e0
cmp eax, ebx
je 0x3002c9e0
push eax
call fcn.30053354
mov ecx, dword [ebp + 0x1bc]
pop edi
pop ebx
call fcn.30062195
add ebp, 0x1c0
leave
ret 8