Function at 0x4250c0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
push edi
mov ebp, eax
push esi
push ebx
mov edi, 3
sub esp, 0xac
mov eax, dword [edx + 0x10]
mov dword [esp + 0x44], 0
mov dword [esp + 0x20], eax
lea eax, [esp + 0x44]
mov dword [esp], eax
call fcn.004ec370
xor eax, eax
mov dword [ebp + 0xc], 0
mov dword [ebp], 0
mov word [ebp + 0xe], di
mov word [esp + 0x54], ax
xor eax, eax
mov dword [ebp + 4], 0
mov dword [ebp + 8], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x60], 0
mov word [esp + 0x64], ax
call fcn.004ebf30
mov esi, eax
mov ecx, edx
xor eax, eax
sar ecx, 0x1f
mov word [esp + 0x84], ax
xor eax, eax
mov word [esp + 0x94], ax
mov edi, ecx
mov eax, ecx
mov ebx, edx
mov ecx, edx
and eax, 0xffffff80
sar ecx, 0x1f
sar ebx, 0x1f
and edi, 0xffffff80
and ecx, 0xffffff80
and ebx, 0xffffff80
add ax, 0x1b6
add cx, 0x1d6
add di, 0x1f6
add bx, 0x196
test edx, edx
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
cmove ebx, ecx
mov ecx, esi
cmove eax, edi
and ecx, 0x80000000
mov dword [esp + 0x90], 0
or ecx, edx
cmove ebx, eax
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
test eax, eax
je 0x425934
mov ecx, dword [eax + 4]
lea edi, [ecx + 0x200]
add ecx, 0x10
cmp edi, dword [eax]
mov dword [esp + 0x18], edi
ja 0x425934
lea edi, [eax + ecx]
mov ecx, dword [esp + 0x18]
mov dword [eax + 4], ecx
mov eax, 0x405
mov dword [esp + 0x80], str.free
mov dword [esp + 0x78], 4
mov word [esp + 0x86], ax
mov dword [edi], 4
mov eax, dword [esp + 0x7c]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x80]
mov dword [edi + 8], eax
mov eax, dword [esp + 0x84]
mov dword [edi + 0xc], eax
mov word [esp + 0x96], bx
xor ebx, ebx
mov dword [esp + 0x88], esi
mov dword [esp + 0x8c], edx
mov dword [edi + 0x10], esi
mov eax, dword [esp + 0x8c]
mov dword [edi + 0x14], eax
mov eax, dword [esp + 0x90]
mov dword [edi + 0x18], eax
mov eax, dword [esp + 0x94]
mov dword [edi + 0x1c], eax
call fcn.004ebf70
xor ecx, ecx
mov word [esp + 0x94], bx
mov esi, eax
mov word [esp + 0x84], cx
mov ecx, edx
mov dword [esp + 0x7c], 0
sar ecx, 0x1f
mov dword [esp + 0x90], 0
mov dword [esp + 0x80], 0x7462e5
and ecx, 0xffffff80
lea ebx, [ecx + 0x1d6]
mov ecx, edx
sar ecx, 0x1f
and ecx, 0xffffff80
add cx, 0x196
test edx, edx
cmove ecx, ebx
and esi, 0x80000000
mov ebx, ecx
or ebx, 0x20
or esi, edx
mov esi, 0x405
mov word [esp + 0x86], si
cmove ecx, ebx
mov dword [edi + 0x20], 5
mov ebx, dword [esp + 0x7c]
mov esi, 0x405
mov dword [edi + 0x24], ebx
mov ebx, dword [esp + 0x80]
mov dword [edi + 0x28], ebx
mov ebx, dword [esp + 0x84]
mov dword [edi + 0x2c], ebx
mov dword [esp + 0x8c], edx
xor ebx, ebx
mov word [esp + 0x96], cx
mov dword [edi + 0x30], eax
xor ecx, ecx
mov eax, dword [esp + 0x8c]
xor edx, edx
mov dword [edi + 0x34], eax
mov eax, dword [esp + 0x90]
mov dword [edi + 0x38], eax
mov eax, dword [esp + 0x94]
mov dword [edi + 0x3c], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x7c], 0
mov word [esp + 0x84], cx
mov word [esp + 0x94], bx
mov dword [esp + 0x90], 0
mov dword [esp + 0x78], 0x13
mov dword [esp + 0x80], str.resident_set_memory
mov ecx, eax
mov word [esp + 0x86], si
mov dword [edi + 0x40], 0x13
and ecx, 0x80000000
mov ebx, dword [esp + 0x7c]
cmp ecx, 1
sbb ecx, ecx
and ecx, 0x20
mov dword [edi + 0x44], ebx
mov ebx, dword [esp + 0x80]
add cx, 0x1d6
mov dword [edi + 0x48], ebx
mov ebx, dword [esp + 0x84]
mov dword [edi + 0x4c], ebx
mov dword [esp + 0x8c], edx
xor edx, edx
mov dword [esp + 0x88], eax
mov word [esp + 0x96], cx
mov dword [edi + 0x50], eax
mov eax, dword [esp + 0x8c]
mov dword [edi + 0x54], eax
mov eax, dword [esp + 0x90]
mov dword [edi + 0x58], eax
mov eax, dword [esp + 0x94]
mov dword [edi + 0x5c], eax
xor eax, eax
mov dword [esp + eax + 0x88], edx
add eax, 4
cmp eax, 0x18
jb 0x4253f9
lea ebx, [esp + 0x88]
xor esi, esi
mov dword [esp], ebx
call fcn.004ebf20
xor ecx, ecx
xor eax, eax
mov dword [esp + 0x28], edi
mov dword [esp + 0x2c], ebp
mov edi, eax
mov ebp, ecx
lea esi, [esi]
mov dword [esp + 0xc], 1
lea eax, [esp + 0x78]
movsd xmm0, qword [ebx + esi*8]
mov dword [esp], eax
movsd qword [esp + 4], xmm0
call fcn.00402040
cmp edi, esi
ja 0x4254f0
test edi, edi
jne 0x425964
test ebp, ebp
je 0x425ae1
mov edx, 0x100
mov dword [esp + 0x18], 0x10
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov dword [esp + 0x24], eax
mov eax, dword [eax + 4]
mov ecx, eax
mov dword [esp + 0x3c], eax
add eax, 0x10
mov dword [esp + 0x38], eax
sub eax, edi
add eax, dword [esp + 0x24]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x24]
cmp dword [esp + 0x34], ebp
mov eax, dword [eax]
mov dword [esp + 0x30], eax
je 0x425ac0
mov eax, dword [esp + 0x3c]
add eax, edx
cmp eax, dword [esp + 0x30]
jbe 0x425a90
mov eax, dword [esp + 0x20]
mov ecx, edx
cmp dword [eax + 4], edx
cmovae ecx, dword [eax + 4]
mov eax, dword [eax + 0xc]
test eax, eax
mov dword [esp + 0x30], ecx
je 0x425fb0
mov eax, dword [esp + 0x30]
add eax, 0x10
jne 0x425a50
mov edi, dword [esp + 0x18]
xor ebp, ebp
nop
lea esi, [esi]
mov edx, dword [esp + 0x78]
mov eax, esi
add esi, 1
shl eax, 4
add eax, ebp
cmp esi, 3
mov dword [eax], edx
mov edx, dword [esp + 0x7c]
mov dword [eax + 4], edx
mov edx, dword [esp + 0x80]
mov dword [eax + 8], edx
mov edx, dword [esp + 0x84]
mov dword [eax + 0xc], edx
jne 0x425430
mov dword [esp + 0x18], ebp
mov ebp, dword [esp + 0x2c]
xor eax, eax
mov word [esp + 0x84], ax
mov dword [esp + 0x24], edi
mov dword [esp + 0x7c], 0
mov edi, dword [esp + 0x28]
mov eax, dword [ebp]
mov esi, dword [ebp + 4]
mov dword [esp + 0x80], 0
mov ebx, dword [ebp + 8]
cmp eax, esi
jb 0x4255fd
test esi, esi
jne 0x425a10
test ebx, ebx
je 0x425eb1
mov ecx, 0x10
mov dword [esp + 0x2c], 0x200
mov edx, dword [esp + 0x20]
mov edx, dword [edx]
mov dword [esp + 0x28], edx
mov edx, dword [edx + 4]
mov dword [esp + 0x34], edx
add edx, 0x10
mov dword [esp + 0x30], edx
mov edx, dword [esp + 0x28]
mov edx, dword [edx]
mov dword [esp + 0x38], edx
mov edx, dword [esp + 0x30]
sub edx, esi
add edx, dword [esp + 0x28]
cmp ebx, edx
je 0x425d20
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x34]
add eax, edx
cmp eax, dword [esp + 0x38]
mov dword [esp + 0x3c], edx
jbe 0x425cb8
mov eax, dword [esp + 0x20]
cmp dword [eax + 4], edx
cmovae edx, dword [eax + 4]
mov eax, dword [eax + 0xc]
test eax, eax
mov dword [esp + 0x2c], edx
je 0x426046
mov eax, dword [esp + 0x2c]
add eax, 0x10
jne 0x425c66
mov eax, dword [ebp]
xor ebx, ebx
mov dword [ebp + 8], ebx
mov dword [ebp + 4], ecx
shl eax, 5
mov edx, 0x405
mov dword [esp + 0x80], 0x7462ff
add eax, ebx
mov word [esp + 0x86], dx
mov dword [esp + 0x78], 6
mov dword [eax], 6
mov edx, dword [esp + 0x7c]
mov ecx, 3
mov word [esp + 0x56], cx
mov dword [esp + 0x48], 3
mov dword [esp + 0x4c], 0x10
mov dword [esp + 0x50], edi
mov dword [eax + 4], edx
mov edx, dword [esp + 0x80]
mov dword [eax + 8], edx
mov edx, dword [esp + 0x84]
mov dword [eax + 0xc], edx
mov eax, dword [ebp]
shl eax, 5
add ebx, eax
mov eax, dword [esp + 0x54]
mov dword [ebx + 0x10], 3
mov dword [ebx + 0x14], 0x10
mov dword [ebx + 0x18], edi
mov dword [ebx + 0x1c], eax
mov eax, dword [ebp]
xor ebx, ebx
mov esi, dword [ebp + 4]
mov word [esp + 0x84], bx
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
add eax, 1
mov ebx, dword [ebp + 8]
cmp eax, esi
mov dword [ebp], eax
jb 0x42573c
test esi, esi
jne 0x4259d0
test ebx, ebx
je 0x425e27
mov ecx, 0x10
mov dword [esp + 0x28], 0x200
mov edi, dword [esp + 0x20]
mov edx, dword [edi]
mov edi, dword [edx + 4]
mov dword [esp + 0x34], edi
add edi, 0x10
mov dword [esp + 0x2c], edi
mov edi, dword [edx]
mov dword [esp + 0x30], edi
mov edi, dword [esp + 0x2c]
sub edi, esi
add edi, edx
cmp ebx, edi
je 0x425d00
mov edi, dword [esp + 0x28]
mov eax, dword [esp + 0x34]
add eax, edi
cmp dword [esp + 0x30], eax
jae 0x425c45
mov eax, dword [esp + 0x20]
cmp dword [eax + 4], edi
cmovae edi, dword [eax + 4]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x426069
mov eax, edi
add eax, 0x10
jne 0x425c0b
mov eax, dword [ebp]
xor ebx, ebx
mov dword [ebp + 8], ebx
mov dword [ebp + 4], ecx
shl eax, 5
mov edi, 0x405
mov dword [esp + 0x80], str.load_average
add eax, ebx
mov word [esp + 0x86], di
mov dword [esp + 0x78], 0xc
mov dword [eax], 0xc
mov edx, dword [esp + 0x7c]
mov esi, dword [esp + 0x18]
mov dword [esp + 0x58], 3
mov dword [eax + 4], edx
mov edx, dword [esp + 0x80]
mov dword [esp + 0x60], esi
mov dword [eax + 8], edx
mov edx, dword [esp + 0x84]
mov dword [eax + 0xc], edx
mov eax, dword [ebp]
mov edx, 4
mov word [esp + 0x66], dx
shl eax, 5
add ebx, eax
mov eax, dword [esp + 0x24]
mov dword [ebx + 0x18], esi
mov dword [ebx + 0x10], 3
mov dword [ebx + 0x14], eax
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x64]
mov dword [ebx + 0x1c], eax
add dword [ebp], 1
xor ebx, ebx
call fcn.006c4190
mov dword [esp + 0x18], eax
sar eax, 0x1f
mov edi, dword [ebp + 4]
and eax, 0xffffffe0
xor ecx, ecx
mov dword [esp + 0x6c], 0
add ax, 0x1f6
mov dword [esp + 0x70], 0
mov word [esp + 0x74], cx
mov word [esp + 0x24], ax
mov eax, dword [ebp]
mov dword [esp + 0x80], 0
mov word [esp + 0x84], bx
mov dword [esp + 0x1c], 0
mov esi, dword [ebp + 8]
cmp eax, edi
jb 0x4258b6
test edi, edi
jne 0x425990
test esi, esi
je 0x425d93
mov edx, 0x10
mov dword [esp + 0x28], 0x200
mov ebx, dword [esp + 0x20]
mov ebx, dword [ebx]
mov ecx, dword [ebx + 4]
mov dword [esp + 0x2c], ebx
mov ebx, dword [ebx]
mov dword [esp + 0x30], ecx
add ecx, 0x10
mov dword [esp + 0x34], ebx
mov ebx, dword [esp + 0x2c]
mov dword [esp + 0x38], ecx
sub ecx, edi
add ecx, ebx
cmp esi, ecx
je 0x425ce0
mov ebx, dword [esp + 0x28]
mov eax, dword [esp + 0x30]
add eax, ebx
cmp eax, dword [esp + 0x34]
mov dword [esp + 0x3c], ebx
jbe 0x425be4
mov eax, dword [esp + 0x20]
cmp dword [eax + 4], ebx
mov ecx, dword [eax + 0xc]
cmovae ebx, dword [eax + 4]
test ecx, ecx
mov dword [esp + 0x28], ebx
je 0x42608c
mov eax, dword [esp + 0x28]
add eax, 0x10
jne 0x425ba2
mov eax, dword [ebp]
xor esi, esi
mov dword [ebp + 8], esi
mov dword [ebp + 4], edx
mov edx, 0x405
shl eax, 5
movzx edi, word [esp + 0x24]
mov word [esp + 0x76], dx
mov edx, dword [esp + 0x6c]
add eax, esi
mov dword [eax], 0x14
mov dword [eax + 8], str.hardware_concurrency
mov ecx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov dword [eax + 4], edx
mov edx, dword [esp + 0x74]
mov dword [eax + 0xc], edx
mov eax, dword [ebp]
mov dword [esp + 0x7c], ebx
mov word [esp + 0x86], di
mov dword [esp + 0x78], ecx
shl eax, 5
add esi, eax
mov dword [esi + 0x10], ecx
mov eax, dword [esp + 0x7c]
mov dword [esi + 0x14], eax
mov eax, dword [esp + 0x80]
mov dword [esi + 0x18], eax
mov eax, dword [esp + 0x84]
mov dword [esi + 0x1c], eax
add dword [ebp], 1
add esp, 0xac
pop ebx
mov eax, ebp
pop esi
pop edi
pop ebp
ret
mov eax, dword [esp + 0x20]
mov edi, dword [eax + 4]
mov eax, dword [eax + 0xc]
cmp edi, 0x200
jbe 0x425ff6
test eax, eax
je 0x42611d
mov eax, edi
add eax, 0x10
jne 0x426008
xor edi, edi
jmp 0x4251fa
lea eax, [edi + 1]
mov edx, eax
mov dword [esp + 0x18], eax
mov eax, edi
shl edx, 4
shl eax, 4
test ebp, ebp
je 0x425aee
cmp eax, edx
mov edi, eax
jb 0x425474
mov edi, dword [esp + 0x18]
jmp 0x4254f0
lea edx, [edi + 1]
shr edx, 1
add edx, edi
cmp edi, edx
jae 0x4258b6
mov ebx, edx
shl edi, 5
shl ebx, 5
test esi, esi
je 0x426147
test ebx, ebx
je 0x426140
cmp edi, ebx
mov dword [esp + 0x28], ebx
jae 0x4258b0
jmp 0x42583e
lea edx, [esi + 1]
shr edx, 1
lea ecx, [edx + esi]
cmp esi, ecx
jae 0x42573c
mov edx, ecx
shl esi, 5
shl edx, 5
test ebx, ebx
je 0x42615b
test edx, edx
je 0x426154
cmp esi, edx
mov dword [esp + 0x28], edx
jae 0x425736
jmp 0x4256d2
lea edx, [esi + 1]
shr edx, 1
lea ecx, [edx + esi]
cmp esi, ecx
jae 0x4255fd
mov edx, ecx
shl esi, 5
shl edx, 5
test ebx, ebx
je 0x42616f
test edx, edx
je 0x426168
cmp esi, edx
mov dword [esp + 0x2c], edx
jae 0x4255f7
jmp 0x42557f
mov dword [esp], eax
mov dword [esp + 0x34], edx
call sub.msvcrt.dll_memset
test eax, eax
mov edx, eax
mov dword [esp + 0x24], eax
je 0x4254e5
mov eax, dword [esp + 0x30]
mov dword [edx + 4], 0
mov dword [esp + 0x38], 0x10
mov dword [edx], eax
mov eax, dword [esp + 0x20]
mov ecx, dword [eax]
mov dword [edx + 8], ecx
mov dword [eax], edx
mov edx, dword [esp + 0x34]
mov eax, edx
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x38]
add edx, ecx
mov dword [ecx + 4], eax
je 0x4254e5
test edi, edi
jne 0x425b70
mov edi, dword [esp + 0x18]
mov ebp, edx
jmp 0x4254f0
mov eax, ecx
sub eax, edi
lea ecx, [eax + edx]
cmp ecx, dword [esp + 0x30]
ja 0x4254ac
mov eax, dword [esp + 0x24]
mov edi, dword [esp + 0x18]
mov dword [eax + 4], ecx
jmp 0x4254f0
mov dword [esp + 0x18], 0x10
mov edx, 0x100
mov eax, dword [esp + 0x20]
mov ebp, edx
mov eax, dword [eax]
test eax, eax
je 0x425b07
mov edi, dword [eax + 4]
lea edx, [edx + edi]
add edi, 0x10
cmp edx, dword [eax]
jbe 0x425b61
mov eax, dword [esp + 0x20]
mov edx, ebp
cmp dword [eax + 4], ebp
cmovae edx, dword [eax + 4]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x425fd3
mov eax, edx
mov edi, dword [esp + 0x18]
add eax, 0x10
je 0x4254e9
mov dword [esp], eax
mov dword [esp + 0x24], edx
call sub.msvcrt.dll_memset
test eax, eax
je 0x4254e9
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
mov edi, 0x10
mov dword [eax + 4], 0
mov dword [eax], edx
mov edx, dword [ecx]
mov dword [eax + 8], edx
mov dword [ecx], eax
mov edx, ebp
lea ebp, [eax + edi]
mov dword [eax + 4], edx
mov edi, dword [esp + 0x18]
jmp 0x4254f0
cmp edi, 4
jae 0x425d40
test edi, edi
je 0x425aab
movzx eax, byte [ebp]
test edi, 2
mov byte [edx], al
je 0x425aab
movzx eax, word [ebp + edi - 2]
mov word [edx + edi - 2], ax
jmp 0x425aab
mov dword [esp], eax
mov dword [esp + 0x30], edx
call sub.msvcrt.dll_memset
test eax, eax
mov dword [esp + 0x2c], eax
mov edx, dword [esp + 0x30]
je 0x4258ab
mov ebx, eax
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x28]
mov dword [ebx + 4], 0
mov dword [esp + 0x38], 0x10
mov dword [ebx], eax
mov eax, dword [ecx]
mov dword [ebx + 8], eax
mov eax, dword [esp + 0x3c]
mov dword [ecx], ebx
mov ecx, dword [esp + 0x2c]
mov dword [ecx + 4], eax
mov eax, ecx
add eax, dword [esp + 0x38]
mov ebx, eax
je 0x4258ab
test edi, edi
jne 0x425f42
mov eax, dword [ebp]
mov esi, ebx
jmp 0x4258b0
mov dword [esp], eax
mov dword [esp + 0x2c], ecx
call sub.msvcrt.dll_memset
test eax, eax
mov edx, eax
mov ecx, dword [esp + 0x2c]
je 0x425731
mov dword [eax], edi
mov edi, dword [esp + 0x20]
mov dword [eax + 4], 0
mov dword [esp + 0x2c], 0x10
mov eax, dword [edi]
mov dword [edx + 8], eax
mov eax, dword [esp + 0x28]
mov dword [edi], edx
mov edi, dword [esp + 0x2c]
mov dword [edx + 4], eax
add edi, edx
je 0x425731
test esi, esi
jne 0x425f64
mov eax, dword [ebp]
mov ebx, edi
jmp 0x425736
mov dword [esp], eax
mov dword [esp + 0x30], ecx
call sub.msvcrt.dll_memset
test eax, eax
mov dword [esp + 0x28], eax
mov ecx, dword [esp + 0x30]
je 0x4255f2
mov edx, eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x30], 0x10
mov dword [edx + 4], 0
mov dword [edx], eax
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x28]
mov dword [esp + 0x2c], eax
mov eax, dword [eax]
mov dword [edx + 8], eax
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
mov dword [edx], eax
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x28]
mov dword [edx + 4], eax
add edx, dword [esp + 0x30]
je 0x4255f2
test esi, esi
jne 0x425f86
mov eax, dword [ebp]
mov ebx, edx
jmp 0x4255f7
mov ecx, dword [esp + 0x30]
sub ecx, edi
add ecx, dword [esp + 0x28]
cmp ecx, dword [esp + 0x34]
ja 0x42586c
mov dword [ebx + 4], ecx
jmp 0x4258b0
mov edi, dword [esp + 0x34]
sub edi, esi
add edi, dword [esp + 0x28]
cmp dword [esp + 0x30], edi
jb 0x4256fc
mov dword [edx + 4], edi
jmp 0x425736
mov edx, dword [esp + 0x34]
sub edx, esi
add edx, dword [esp + 0x2c]
cmp edx, dword [esp + 0x38]
ja 0x4255b3
mov esi, dword [esp + 0x28]
mov dword [esi + 4], edx
jmp 0x4255f7
mov eax, dword [ebp]
mov dword [edx], eax
mov eax, dword [ebp + edi - 4]
mov dword [edx + edi - 4], eax
lea eax, [edx + 4]
and eax, 0xfffffffc
mov ecx, eax
mov dword [esp + 0x24], eax
mov eax, edx
sub eax, ecx
sub ebp, eax
add eax, edi
and eax, 0xfffffffc
cmp eax, 4
jb 0x425aab
and eax, 0xfffffffc
mov dword [esp + 0x30], edx
mov edi, eax
xor eax, eax
mov ecx, dword [ebp + eax]
mov edx, dword [esp + 0x24]
mov dword [edx + eax], ecx
add eax, 4
cmp eax, edi
jb 0x425d78
mov edx, dword [esp + 0x30]
jmp 0x425aab
mov ebx, 0x200
mov edx, 0x10
mov esi, dword [esp + 0x20]
mov dword [esp + 0x28], ebx
mov edi, dword [esi]
test edi, edi
je 0x425db8
mov esi, dword [edi + 4]
lea ebx, [ebx + esi]
add esi, 0x10
cmp ebx, dword [edi]
jbe 0x425e1d
mov eax, dword [esp + 0x20]
mov esi, dword [esp + 0x28]
cmp dword [eax + 4], esi
cmovae esi, dword [eax + 4]
mov ebx, esi
mov esi, dword [eax + 0xc]
test esi, esi
je 0x4260f5
mov eax, ebx
add eax, 0x10
je 0x4258ab
mov dword [esp], eax
mov dword [esp + 0x2c], edx
xor esi, esi
call sub.msvcrt.dll_memset
mov edi, eax
mov edx, dword [esp + 0x2c]
mov eax, dword [ebp]
test edi, edi
je 0x4258b0
mov dword [edi], ebx
mov ebx, dword [esp + 0x20]
mov dword [edi + 4], 0
mov esi, dword [ebx]
mov dword [edi + 8], esi
mov esi, dword [esp + 0x28]
mov dword [ebx], edi
mov ebx, esi
mov esi, 0x10
add esi, edi
mov dword [edi + 4], ebx
jmp 0x4258b0
mov edx, 0x200
mov ecx, 0x10
mov esi, dword [esp + 0x20]
mov edi, edx
mov edx, dword [esi]
test edx, edx
je 0x425e4a
mov ebx, dword [edx + 4]
lea esi, [edi + ebx]
add ebx, 0x10
cmp esi, dword [edx]
jbe 0x425ea7
mov eax, dword [esp + 0x20]
mov esi, edi
cmp dword [eax + 4], edi
cmovae esi, dword [eax + 4]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x4260d2
mov eax, esi
add eax, 0x10
je 0x425731
mov dword [esp], eax
mov dword [esp + 0x28], ecx
xor ebx, ebx
call sub.msvcrt.dll_memset
mov edx, eax
mov ecx, dword [esp + 0x28]
mov eax, dword [ebp]
test edx, edx
je 0x425736
mov dword [edx], esi
mov esi, dword [esp + 0x20]
mov dword [edx + 4], 0
mov ebx, dword [esi]
mov dword [edx + 8], ebx
mov dword [esi], edx
mov ebx, 0x10
mov esi, edi
add ebx, edx
mov dword [edx + 4], esi
jmp 0x425736
mov edx, 0x200
mov ecx, 0x10
mov ebx, dword [esp + 0x20]
mov esi, edx
mov dword [esp + 0x28], edx
mov edx, dword [ebx]
test edx, edx
je 0x425ed7
mov ebx, dword [edx + 4]
add esi, ebx
add ebx, 0x10
cmp esi, dword [edx]
jbe 0x425f38
mov eax, dword [esp + 0x20]
mov esi, dword [esp + 0x28]
cmp dword [eax + 4], esi
cmovae esi, dword [eax + 4]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x4260af
mov eax, esi
add eax, 0x10
je 0x4255f2
mov dword [esp], eax
mov dword [esp + 0x2c], ecx
xor ebx, ebx
call sub.msvcrt.dll_memset
mov edx, eax
mov ecx, dword [esp + 0x2c]
mov eax, dword [ebp]
test edx, edx
je 0x4255f7
mov dword [edx], esi
mov esi, dword [esp + 0x20]
mov dword [edx + 4], 0
mov ebx, dword [esi]
mov dword [edx + 8], ebx
mov dword [esi], edx
mov ebx, 0x10
mov esi, dword [esp + 0x28]
add ebx, edx
mov dword [edx + 4], esi
jmp 0x4255f7
mov dword [esp + 4], esi
mov dword [esp + 8], edi
mov esi, eax
mov dword [esp], eax
mov dword [esp + 0x20], edx
call sub.msvcrt.dll_putchar
mov eax, dword [ebp]
mov edx, dword [esp + 0x20]
jmp 0x4258b0
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
mov ebx, edi
mov dword [esp], edi
mov dword [esp + 0x28], ecx
call sub.msvcrt.dll_putchar
mov eax, dword [ebp]
mov ecx, dword [esp + 0x28]
jmp 0x425736
mov dword [esp + 4], ebx
mov dword [esp], edx
mov dword [esp + 8], esi
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x28], edx
call sub.msvcrt.dll_putchar
mov edx, dword [esp + 0x28]
mov eax, dword [ebp]
mov ecx, dword [esp + 0x2c]
mov ebx, edx
jmp 0x4255f7
mov dword [esp], 1
mov dword [esp + 0x24], edx
call fcn.006ff530
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
mov dword [ecx + 0xc], eax
mov dword [ecx + 0x10], eax
jmp 0x4254d8
mov dword [esp], 1
mov dword [esp + 0x24], edx
call fcn.006ff530
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
mov dword [ecx + 0xc], eax
mov dword [ecx + 0x10], eax
jmp 0x425b1f
test eax, eax
je 0x426118
mov eax, 0x210
mov edi, 0x200
mov dword [esp], eax
mov dword [esp + 0x18], edx
call sub.msvcrt.dll_memset
test eax, eax
mov edx, dword [esp + 0x18]
je 0x42595d
mov dword [eax], edi
mov edi, dword [esp + 0x20]
mov dword [eax + 4], 0
mov dword [esp + 0x18], 0x200
mov ecx, dword [edi]
mov dword [eax + 8], ecx
mov dword [edi], eax
mov ecx, 0x10
jmp 0x4251f0
mov dword [esp], 1
mov dword [esp + 0x28], ecx
call fcn.006ff530
mov ecx, dword [esp + 0x20]
mov dword [ecx + 0xc], eax
mov dword [ecx + 0x10], eax
mov ecx, dword [esp + 0x28]
jmp 0x4255e5
mov dword [esp], 1
mov dword [esp + 0x2c], ecx
call fcn.006ff530
mov ecx, dword [esp + 0x20]
mov dword [ecx + 0xc], eax
mov dword [ecx + 0x10], eax
mov ecx, dword [esp + 0x2c]
jmp 0x425726
mov dword [esp], 1
mov dword [esp + 0x2c], edx
call fcn.006ff530
mov ebx, dword [esp + 0x20]
mov edx, dword [esp + 0x2c]
mov dword [ebx + 0xc], eax
mov dword [ebx + 0x10], eax
jmp 0x42589e
mov dword [esp], 1
mov dword [esp + 0x2c], ecx
call fcn.006ff530
mov ebx, dword [esp + 0x20]
mov ecx, dword [esp + 0x2c]
mov dword [ebx + 0xc], eax
mov dword [ebx + 0x10], eax
jmp 0x425ef1
mov dword [esp], 1
mov dword [esp + 0x28], ecx
call fcn.006ff530
mov ebx, dword [esp + 0x20]
mov ecx, dword [esp + 0x28]
mov dword [ebx + 0xc], eax
mov dword [ebx + 0x10], eax
jmp 0x425e62
mov dword [esp], 1
mov dword [esp + 0x2c], edx
call fcn.006ff530
mov esi, dword [esp + 0x20]
mov edx, dword [esp + 0x2c]
mov dword [esi + 0xc], eax
mov dword [esi + 0x10], eax
jmp 0x425dd4
mov edi, 0x200
mov dword [esp], 1
mov dword [esp + 0x18], edx
call fcn.006ff530
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x18]
mov dword [ecx + 0xc], eax
mov dword [ecx + 0x10], eax
jmp 0x425952
xor esi, esi
jmp 0x4258b0
test ebx, ebx
je 0x4258b0
jmp 0x425d9d
xor ebx, ebx
jmp 0x425736
test edx, edx
je 0x425736
jmp 0x425e31
xor ebx, ebx
jmp 0x4255f7
test edx, edx
je 0x4255f7
jmp 0x425ebb