Function at 0x40ebb0
Capabilities:
Check for time delay via gettickcount
Resume thread
Suspend thread

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x33c
mov dword [ebp - 0x328], eax
mov dword [ebp - 0x2f0], ebp
mov eax, dword [ebp - 0x2f0]
mov dword [esp], 8
mov dword [ebp - 0x324], eax
call sub.msvcrt.dll_malloc
test eax, eax
je 0x40ec73
mov dword [eax], 0
mov ebx, eax
lea eax, [ebp - 0x2e4]
mov dword [esp + 8], 0x1c
mov dword [esp], ebx
mov dword [esp + 4], eax
mov eax, dword [sym.imp.KERNEL32.dll_VirtualQuery]
mov dword [ebp - 0x304], eax
call eax
sub esp, 0xc
cmp eax, 0x1c
je 0x40ec2c
mov dword [esp], 0x422f00
call fcn.00410030
call dword [sym.imp.KERNEL32.dll_DebugBreak]
mov ecx, dword [0x4281cc]
mov edi, dword [ebp - 0x2e0]
test ecx, ecx
je 0x40f646
cmp edi, dword [ecx]
je 0x40f54c
mov eax, ecx
jmp 0x40ec54
cmp dword [eax], edi
je 0x40f54c
mov eax, dword [eax + 4]
test eax, eax
jne 0x40ec4c
mov eax, dword [0x428a70]
test eax, eax
jne 0x40f655
mov dword [ebx], edi
mov dword [ebx + 4], ecx
mov dword [0x4281cc], ebx
mov edx, dword [0x428b3c]
test edx, edx
je 0x40ed1d
mov dword [ebp - 0x2fc], 0
xor edi, edi
xor esi, esi
jmp 0x40ecab
mov eax, dword [0x428b38]
not ebx
mov dword [eax + edi*4], ebx
mov edx, dword [0x428b3c]
add edi, 1
add esi, 1
cmp esi, edx
jae 0x40ecfd
mov eax, dword [0x428b38]
mov ebx, dword [eax + esi*4]
mov eax, ebx
test bl, 1
not eax
cmovne ebx, eax
test ebx, ebx
je 0x40eca4
xor eax, eax
mov dword [esp], ebx
call eax
cmp eax, 1
je 0x40eed4
mov edx, dword [0x428b3c]
jb 0x40eca4
cmp eax, 2
je 0x40ec91
mov dword [esp], str.Bad_toggle_ref_status_returned_by_callback
add esi, 1
call fcn.00410030
call dword [sym.imp.KERNEL32.dll_DebugBreak]
mov edx, dword [0x428b3c]
cmp esi, edx
jb 0x40ecab
cmp edi, edx
jb 0x40f4e5
mov edi, dword [ebp - 0x2fc]
test edi, edi
je 0x40ed1d
mov esi, dword [0x4287d4]
test esi, esi
jne 0x40f236
mov ebx, dword [0x428a70]
test ebx, ebx
jne 0x40f26c
mov dword [ebp - 0x320], 0
mov dword [ebp - 0x31c], 0
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov dword [esp], 0x428224
mov dword [ebp - 0x2fc], eax
lea edi, [ebp - 0x2e8]
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov dword [ebp - 0x304], 0x4282c0
mov eax, dword [ebp - 0x304]
sub esp, 4
mov dword [ebp - 0x300], 0x4282c0
nop
lea esi, [esi]
mov esi, dword [eax]
test esi, esi
jne 0x40ed9a
jmp 0x40ef30
mov esi, dword [esi]
test esi, esi
je 0x40ef30
mov eax, dword [esi + 4]
mov edx, dword [eax]
test edx, edx
je 0x40ed90
mov edx, dword [ebp - 0x2fc]
cmp edx, dword [esi + 8]
je 0x40ed90
test byte [esi + 0x10], 0x21
jne 0x40ed90
mov ebx, dword [0x4287d8]
test ebx, ebx
je 0x40ee00
mov ecx, dword [0x4287d4]
test ecx, ecx
jne 0x40ee00
cmp eax, 0x42605c
je 0x40eddd
mov edx, dword [0x428a64]
test edx, edx
je 0x40f1d1
mov eax, esi
and eax, 0xfffff000
cmp esi, 0x428280
je 0x40ee00
mov edx, dword [0x428a64]
test edx, edx
je 0x40eef4
lea esi, [esi]
xor ebx, ebx
lea esi, [esi]
lea edi, [edi]
mov dword [esp + 4], edi
mov eax, dword [esi + 0xc]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetExitCodeThread]
sub esp, 8
test eax, eax
je 0x40ee37
cmp dword [ebp - 0x2e8], 0x103
jne 0x40f0e0
mov eax, dword [esi + 0xc]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_SuspendThread]
sub esp, 4
cmp eax, 0xffffffff
je 0x40ee99
cmp dword [0x4281c4], 1
sbb eax, eax
and eax, 0xbffffffc
add eax, 0x40010007
mov dword [ebp - 0x2e4], eax
lea eax, [ebp - 0x2e4]
mov dword [esp + 4], eax
mov eax, dword [esi + 0xc]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetThreadContext]
sub esp, 8
test eax, eax
jne 0x40f0f0
mov eax, dword [esi + 0xc]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_ResumeThread]
sub esp, 4
cmp eax, 0xffffffff
je 0x40ef10
cmp ebx, 1
jle 0x40eeae
mov dword [esp], 0
call dword [sym.imp.KERNEL32.dll_Sleep]
sub esp, 4
add ebx, 1
cmp ebx, 0xf423f
jle 0x40ee10
mov dword [esp], str.SuspendThread_loop_failed
call fcn.00410030
call dword [sym.imp.KERNEL32.dll_DebugBreak]
jmp 0x40ee10
mov eax, dword [0x428b38]
mov dword [ebp - 0x2fc], 1
mov dword [eax + edi*4], ebx
add edi, 1
mov edx, dword [0x428b3c]
jmp 0x40eca4
xor ecx, ecx
mov edx, 1
call fcn.00413410
jmp 0x40ee00
mov dword [esp], str.ResumeThread_failed_in_suspend_loop
call fcn.00410030
call dword [sym.imp.KERNEL32.dll_DebugBreak]
jmp 0x40ee99
add dword [ebp - 0x304], 4
mov eax, dword [ebp - 0x304]
cmp eax, 0x4286c0
jne 0x40ed80
lea edi, [ebp - 0x2e4]
mov dword [esp], 0x428224
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
xor eax, eax
mov ecx, 0x40
sub esp, 4
rep stosd dword es:[edi], eax
call fcn.00419f60
mov esi, dword [0x4287d8]
mov eax, dword [0x428b00]
test esi, esi
mov dword [ebp - 0x304], eax
jne 0x40f2b6
mov eax, dword [ebp - 0x304]
mov dword [0x428240], 0
test eax, eax
jne 0x40efa3
mov dword [0x428b00], 1
mov dword [0x428af8], 0
xor ebx, ebx
mov edi, dword [ebp - 0x324]
mov esi, dword [ebp - 0x328]
jmp 0x40efcf
mov eax, edi
call fcn.0040d9a0
test eax, eax
jne 0x40f220
add ebx, 1
call esi
test eax, eax
je 0x40efbd
test ebx, ebx
mov dword [ebp - 0x2fc], ebx
js 0x40f22a
mov dword [0x4280c8], ebx
mov esi, dword [sym.imp.KERNEL32.dll_ResumeThread]
mov edi, dword [sym.imp.KERNEL32.dll_DebugBreak]
mov eax, dword [ebp - 0x300]
nop
lea esi, [esi]
mov ebx, dword [eax]
test ebx, ebx
jne 0x40f016
jmp 0x40f08a
mov ebx, dword [ebx]
test ebx, ebx
je 0x40f08a
test byte [ebx + 0x10], 0x40
je 0x40f010
mov eax, dword [ebx + 0xc]
mov dword [esp], eax
call esi
sub esp, 4
cmp eax, 0xffffffff
je 0x40f160
mov eax, dword [0x4287d8]
test eax, eax
je 0x40f080
mov ecx, dword [0x4287d4]
test ecx, ecx
jne 0x40f080
mov eax, dword [ebx + 4]
cmp eax, 0x42605c
je 0x40f05b
mov edx, dword [0x428a64]
test edx, edx
je 0x40f173
mov eax, ebx
and eax, 0xfffff000
cmp ebx, 0x428280
je 0x40f080
mov edx, dword [0x428a64]
test edx, edx
je 0x40f1c0
nop
lea esi, [esi]
and byte [ebx + 0x10], 0xbf
mov ebx, dword [ebx]
test ebx, ebx
jne 0x40f016
add dword [ebp - 0x300], 4
mov eax, dword [ebp - 0x300]
cmp eax, 0x4286c0
jne 0x40f000
mov eax, dword [ebp - 0x320]
test eax, eax
jne 0x40f670
mov ecx, dword [ebp - 0x2fc]
mov eax, 1
test ecx, ecx
js 0x40f0cc
mov eax, dword [0x428a70]
test eax, eax
jne 0x40f6d7
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, esi
call fcn.0040b4d0
jmp 0x40ed90
mov eax, dword [ebp - 0x2e4]
mov dword [esi + 0x18], eax
mov eax, dword [ebp - 0x254]
mov dword [esi + 0x1c], eax
mov eax, dword [ebp - 0x248]
mov dword [esi + 0x20], eax
mov eax, dword [ebp - 0x244]
mov dword [esi + 0x24], eax
mov eax, dword [ebp - 0x240]
mov dword [esi + 0x28], eax
mov eax, dword [ebp - 0x23c]
mov dword [esi + 0x2c], eax
mov eax, dword [ebp - 0x238]
mov dword [esi + 0x30], eax
mov eax, dword [ebp - 0x234]
mov dword [esi + 0x34], eax
mov eax, dword [ebp - 0x230]
mov dword [esi + 0x38], eax
mov eax, dword [ebp - 0x220]
or byte [esi + 0x10], 0x40
mov dword [esi + 0x14], eax
jmp 0x40ed90
mov dword [esp], str.ResumeThread_failed
call fcn.00410030
call edi
jmp 0x40f030
and eax, 0xfffff000
xor ecx, ecx
mov edx, 1
call fcn.00413410
cmp ebx, 0x428280
je 0x40f080
mov eax, dword [0x4287d8]
test eax, eax
je 0x40f080
mov ecx, dword [0x4287d4]
mov eax, ebx
and eax, 0xfffff000
test ecx, ecx
jne 0x40f080
mov edx, dword [0x428a64]
test edx, edx
jne 0x40f080
xor ecx, ecx
mov edx, 1
call fcn.00413410
jmp 0x40f080
and eax, 0xfffff000
xor ecx, ecx
mov edx, 1
call fcn.00413410
cmp esi, 0x428280
je 0x40ee00
mov ebx, dword [0x4287d8]
test ebx, ebx
je 0x40ee00
mov ecx, dword [0x4287d4]
mov eax, esi
and eax, 0xfffff000
test ecx, ecx
jne 0x40ee00
jmp 0x40edec
mov dword [ebp - 0x2fc], 0xffffffff
add dword [0x428a14], 1
jmp 0x40efe9
mov ecx, dword [0x428b38]
shr ecx, 0xc
mov eax, ecx
and eax, 0x3ffff
shr eax, 5
lea edx, [eax*4 + 0xc1f0]
mov eax, 1
shl eax, cl
lock or dword [edx + 0x428a80], eax
mov ebx, dword [0x428a70]
test ebx, ebx
je 0x40ed2b
mov eax, dword [0x428aa4]
mov dword [esp], str._n____Marking_for_collection__lu_after__lu_allocated_bytes_n
mov dword [esp + 8], eax
mov eax, dword [0x428a14]
add eax, 1
mov dword [esp + 4], eax
call fcn.004101f0
mov ecx, dword [0x428a70]
test ecx, ecx
je 0x40ed2b
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x320], 1
mov dword [ebp - 0x31c], eax
jmp 0x40ed3f
mov esi, dword [0x4287d4]
test esi, esi
jne 0x40f514
mov ebx, dword [0x428a64]
test ebx, ebx
je 0x40f75e
cmp dword [ebp - 0x304], 5
jne 0x40f9c0
mov eax, dword [0x428b08]
test eax, eax
je 0x40f9b1
mov dword [ebp - 0x310], 0
mov edi, 1
mov eax, dword [ebp - 0x310]
jmp 0x40f371
mov eax, dword [0x43cc70]
add eax, esi
mov esi, dword [eax]
mov ebx, dword [eax + 4]
mov eax, dword [ebp - 0x310]
test eax, eax
je 0x40f345
cmp esi, dword [0x4260ac]
je 0x40f345
mov eax, dword [0x4260a8]
lea edx, [eax + 1]
cmp eax, 4
mov dword [0x4260a8], edx
jle 0x40f4c9
cmp dword [ebp - 0x304], 5
jne 0x40f483
add dword [ebp - 0x310], 1
mov eax, dword [ebp - 0x310]
cmp eax, dword [0x428b08]
je 0x40f74e
mov ebx, dword [0x428a64]
shl eax, 3
mov dword [ebp - 0x314], eax
mov esi, eax
mov eax, dword [0x43cc70]
lea ecx, [ebp - 0x2e8]
mov dword [esp + 0xc], 0x4260c0
mov dword [ebp - 0x2ec], 0x800
mov dword [esp + 0x14], ecx
lea ecx, [ebp - 0x2ec]
add eax, esi
mov dword [esp + 0x10], ecx
mov edx, dword [eax + 4]
mov dword [esp + 8], edx
mov eax, dword [eax]
mov dword [esp], 1
mov dword [esp + 4], eax
call ebx
sub esp, 0x18
test eax, eax
jne 0x40f310
cmp dword [ebp - 0x304], 5
mov eax, dword [ebp - 0x2ec]
mov dword [ebp - 0x318], eax
je 0x40f462
lea eax, [eax*4 + 0x4260c0]
cmp eax, 0x4260c0
mov dword [ebp - 0x308], eax
je 0x40f462
mov eax, dword [ebp - 0x2e8]
mov esi, 0x4260c0
mov dword [ebp - 0x30c], eax
nop
lea esi, [esi]
mov edx, dword [esi]
mov eax, dword [ebp - 0x30c]
add esi, 4
mov dword [ebp - 0x2fc], esi
lea ebx, [edx + eax]
lea esi, [esi]
lea edi, [edi]
mov ecx, edx
mov esi, edi
add edx, 0x1000
shr ecx, 0xc
mov eax, ecx
shl esi, cl
and eax, 0x3ffff
shr eax, 5
or dword [eax*4 + 0x42cc70], esi
cmp edx, ebx
jb 0x40f430
mov esi, dword [ebp - 0x2fc]
cmp dword [ebp - 0x308], esi
jne 0x40f410
cmp dword [ebp - 0x318], 0x800
jne 0x40f352
mov ebx, dword [0x428a64]
mov esi, dword [ebp - 0x314]
jmp 0x40f37c
shr ebx, 0xc
test ebx, ebx
je 0x40f352
shl ebx, 0xc
mov edx, esi
add ebx, esi
lea esi, [esi]
lea edi, [edi]
mov ecx, edx
mov esi, edi
add edx, 0x1000
shr ecx, 0xc
mov eax, ecx
shl esi, cl
and eax, 0x3ffff
shr eax, 5
or dword [eax*4 + 0x42cc70], esi
cmp edx, ebx
jne 0x40f4a0
jmp 0x40f352
mov dword [0x4260ac], esi
mov dword [esp + 4], esi
mov dword [esp], str.GC_Warning:_GC_gww_read_dirty_unexpectedly_failed_at__p:_Falling_back_to_marking_all_pages_dirty_n
call dword [0x42182c]
jmp 0x40f345
mov eax, edx
mov edx, dword [0x428b38]
mov dword [esp + 4], 0
sub eax, edi
shl eax, 2
lea edx, [edx + edi*4]
mov dword [esp + 8], eax
mov dword [esp], edx
call sub.msvcrt.dll_memset
mov dword [0x428b3c], edi
jmp 0x40ed05
cmp dword [ebp - 0x304], 5
jne 0x40f711
mov dword [esp + 8], 0x8000
mov dword [esp + 4], 0
mov dword [esp], 0x434c70
call sub.msvcrt.dll_memset
mov dword [0x428240], 0
jmp 0x40efa3
mov esi, 0x2710
mov dword [ebp - 0x2fc], ebx
mov dword [esp], esi
call sub.msvcrt.dll_malloc
test eax, eax
mov ebx, eax
je 0x40f6f7
lea eax, [ebp - 0x2e4]
mov dword [esp + 8], 0x1c
mov dword [esp], ebx
mov dword [esp + 4], eax
call dword [ebp - 0x304]
sub esp, 0xc
cmp eax, 0x1c
je 0x40f59e
mov dword [esp], 0x422f00
call fcn.00410030
call dword [sym.imp.KERNEL32.dll_DebugBreak]
mov dword [esp], ebx
mov edi, dword [ebp - 0x2e0]
add esi, esi
call sub.msvcrt.dll_free
mov ecx, dword [0x4281cc]
test ecx, ecx
je 0x40f640
mov eax, dword [ecx]
cmp eax, edi
mov dword [ebp - 0x300], eax
je 0x40f600
mov eax, ecx
jmp 0x40f5d4
cmp dword [eax], edi
je 0x40f600
mov eax, dword [eax + 4]
test eax, eax
jne 0x40f5d0
mov ebx, dword [ebp - 0x2fc]
mov eax, ecx
mov eax, dword [eax + 4]
test eax, eax
je 0x40ec5b
cmp dword [eax], edi
jne 0x40f5e3
jmp 0x40f630
mov eax, 0xcccccccd
mul dword [0x41f004]
shr edx, 3
cmp esi, edx
jae 0x40f61e
cmp esi, 0x7a11f
jbe 0x40f557
cmp dword [ebp - 0x300], edi
mov ebx, dword [ebp - 0x2fc]
jne 0x40f70a
mov dword [esp], ebx
call sub.msvcrt.dll_free
jmp 0x40ec73
mov ebx, dword [ebp - 0x2fc]
mov eax, dword [0x428a70]
xor ecx, ecx
test eax, eax
je 0x40ec68
mov dword [esp + 4], edi
mov dword [esp], str.Found_new_system_malloc_AllocationBase_at__p_n
call fcn.004101f0
mov ecx, dword [0x4281cc]
jmp 0x40ec68
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edi, dword [0x428a70]
sub eax, dword [ebp - 0x31c]
test edi, edi
mov ecx, eax
je 0x40f0b0
mov eax, dword [0x4280c4]
mov edx, dword [0x4280c0]
test eax, eax
js 0x40fa1b
cmp edx, 0x3e7
ja 0x40fa1b
cmp ecx, 0x7fffffff
mov ebx, 0x7fffffff
mov esi, dword [ebp - 0x2fc]
cmovbe ebx, ecx
add eax, ebx
lea ebx, [edx + 1]
test esi, esi
mov dword [0x4280c4], eax
mov dword [0x4280c0], ebx
js 0x40f9ee
mov eax, dword [ebp - 0x2fc]
mov dword [esp], str.Abandoned_stopped_marking_after__d_iterations_n
mov dword [esp + 4], eax
call fcn.004101f0
lea esp, [ebp - 0xc]
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
mov ebx, dword [ebp - 0x2fc]
mov dword [esp], ebx
call sub.msvcrt.dll_free
jmp 0x40ec73
mov eax, ecx
jmp 0x40f5e3
mov dword [esp + 8], 0x8000
mov dword [esp + 4], 0x434c70
mov dword [esp], 0x42cc70
call sub.msvcrt.dll_memcpy
mov dword [esp + 8], 0x8000
mov dword [esp + 4], 0
mov dword [esp], 0x434c70
call sub.msvcrt.dll_memset
jmp 0x40ef85
mov eax, dword [0x428b00]
mov dword [ebp - 0x304], eax
jmp 0x40ef85
cmp dword [ebp - 0x304], 5
jne 0x40f966
mov dword [esp + 8], 0x8000
mov dword [esp + 4], 0
mov dword [esp], 0x434c70
call sub.msvcrt.dll_memset
cmp dword [0x4281e8], 0x1000
mov eax, 2
cmovne esi, eax
mov ebx, dword [0x428b08]
test ebx, ebx
je 0x40ef85
mov dword [ebp - 0x2fc], 0
mov dword [ebp - 0x304], esi
jmp 0x40f80c
cmp dword [0x421828], 1
mov dword [esp + 0xc], 0x428264
mov dword [esp + 4], edi
mov dword [esp], esi
sbb eax, eax
and eax, 0xffffffe2
add eax, 0x20
mov dword [esp + 8], eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
sub esp, 0x10
test eax, eax
je 0x40f89a
add dword [ebp - 0x2fc], 1
mov eax, dword [ebp - 0x2fc]
cmp eax, dword [0x428b08]
jae 0x40f74e
mov ecx, dword [ebp - 0x2fc]
mov eax, dword [0x43cc70]
lea eax, [eax + ecx*8]
mov ecx, dword [ebp - 0x304]
mov esi, dword [eax]
mov edi, dword [eax + 4]
test ecx, ecx
jne 0x40f7c0
add edi, esi
mov eax, esi
cmp esi, edi
jae 0x40f85f
mov edx, esi
shr edx, 0x16
mov ecx, dword [edx*4 + 0x444474]
mov edx, esi
shr edx, 0xc
and edx, 0x3ff
mov edx, dword [ecx + edx*4]
cmp edx, 0xfff
ja 0x40f8d0
add esi, 0x1000
cmp esi, edi
mov eax, esi
jb 0x40f831
cmp eax, esi
jae 0x40f7f3
cmp dword [0x421828], 1
mov edx, esi
mov dword [esp + 0xc], 0x428264
mov dword [esp], eax
sbb ecx, ecx
sub edx, eax
and ecx, 0xffffffe2
mov dword [esp + 4], edx
add ecx, 0x20
mov dword [esp + 8], ecx
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
sub esp, 0x10
test eax, eax
jne 0x40f7f3
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esp], str.VirtualProtect_failed:_errcode_0x_X_n
mov dword [esp + 4], eax
call fcn.004101f0
mov dword [esp], str.VirtualProtect_failed
call fcn.00410030
call dword [sym.imp.KERNEL32.dll_DebugBreak]
jmp 0x40f7f3
test byte [edx + 0xd], 4
je 0x40f91f
mov ebx, dword [edx + 0x10]
shr ebx, 0xc
cmp eax, esi
jae 0x40f913
cmp dword [0x421828], 1
mov dword [esp + 0xc], 0x428264
mov dword [esp], eax
sbb edx, edx
and edx, 0xffffffe2
add edx, 0x20
mov dword [esp + 8], edx
mov edx, esi
sub edx, eax
mov dword [esp + 4], edx
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
sub esp, 0x10
test eax, eax
je 0x40f93c
shl ebx, 0xc
add esi, ebx
mov eax, esi
jmp 0x40f82d
mov ecx, dword [edx + 0x10]
mov edx, dword [edx + 0x14]
lea ebx, [ecx + 0xfff]
shr ebx, 0xc
test edx, edx
je 0x40f8dc
shl ebx, 0xc
add esi, ebx
jmp 0x40f82d
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esp], str.VirtualProtect_failed:_errcode_0x_X_n
mov dword [esp + 4], eax
call fcn.004101f0
mov dword [esp], str.VirtualProtect_failed
call fcn.00410030
call dword [sym.imp.KERNEL32.dll_DebugBreak]
jmp 0x40f913
mov dword [esp + 8], 0x8000
mov dword [esp + 4], 0x434c70
mov dword [esp], 0x42cc70
call sub.msvcrt.dll_memcpy
mov dword [esp + 8], 0x8000
mov dword [esp + 4], 0
mov dword [esp], 0x434c70
call sub.msvcrt.dll_memset
mov edx, dword [0x428a64]
test edx, edx
jne 0x40f799
jmp 0x40f787
mov dword [0x428240], 0
jmp 0x40efa3
mov dword [esp + 8], 0x8000
mov dword [esp + 4], 0
mov dword [esp], 0x42cc70
call sub.msvcrt.dll_memset
mov eax, dword [0x428b08]
test eax, eax
jne 0x40f2ec
jmp 0x40ef85
xor edx, edx
mov dword [esp + 8], 0
mov dword [esp + 4], ecx
div ebx
mov dword [esp], str.World_stopped_marking_took__lu_ms__lu_ns___u_ms_in_average__n
mov dword [esp + 0xc], eax
call fcn.004101f0
lea esp, [ebp - 0xc]
mov eax, 1
pop ebx
pop esi
pop edi
pop ebp
ret
shr eax, 1
shr edx, 1
jmp 0x40f6ab