Function at 0x42ac30
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x14
mov dword [ecx + 0x14f8], 0
mov dword [ecx + 0x14f4], 0
mov eax, dword [esp + 0x30]
mov dword [esp + 0xc], ecx
test eax, eax
je 0x42ac6c
mov edx, dword [eax]
bswap edx
mov dword [ecx + 0x14f4], edx
mov eax, dword [eax + 4]
bswap eax
mov dword [ecx + 0x14f8], eax
mov ebp, 0x4fad05
mov esi, 0x63
mov eax, 0xc6
mov dword [esp], ebp
jmp 0x42aca4
mov edi, dword [esp]
movzx esi, byte [edi]
lea eax, [esi + esi]
mov edx, eax
xor edx, 0x11b
cmp eax, 0x100
cmovae eax, edx
mov edx, edi
add ecx, 4
add edx, 1
mov dword [esp], edx
mov edx, eax
mov edi, esi
mov ebx, eax
xor edx, esi
shl edi, 0x10
shl ebx, 0x18
mov ebp, edi
or ebx, edx
mov edi, esi
shl edi, 8
or ebx, ebp
mov dword [esp + 4], ebp
or ebx, edi
mov dword [esp + 8], edi
mov ebp, edx
mov dword [ecx], ebx
mov ebx, eax
shl ebp, 0x10
shl ebx, 0x10
or ebx, edi
mov edi, edx
shl edx, 8
or ebx, esi
shl edi, 0x18
or ebx, edi
mov dword [ecx + 0x400], ebx
mov ebx, esi
shl ebx, 0x18
mov edi, ebx
mov ebx, eax
shl ebx, 8
or ebx, edi
or edi, dword [esp + 4]
or ebx, esi
or esi, dword [esp + 8]
or ebx, ebp
mov dword [ecx + 0x800], ebx
or edx, edi
or eax, edx
or edi, esi
mov dword [ecx + 0xc00], eax
mov eax, 0x4fae04
cmp eax, dword [esp]
mov dword [ecx + 0x1000], edi
jne 0x42ac80
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0xc]
add eax, 7
test edx, edx
cmovns eax, dword [esp + 0x2c]
lea esi, [ecx + 0x1400]
sar eax, 3
cmp dword [esp + 0x2c], 0x10
lea eax, [eax + eax + 6]
mov dword [ecx + 0x14f0], eax
mov eax, dword [esp + 0x28]
mov ebx, dword [eax]
bswap ebx
mov dword [ecx + 0x1400], ebx
mov eax, dword [eax + 4]
bswap eax
mov dword [ecx + 0x1404], eax
mov dword [esp], eax
mov eax, dword [esp + 0x28]
mov eax, dword [eax + 8]
bswap eax
mov dword [ecx + 0x1408], eax
mov dword [esp + 4], eax
mov eax, dword [esp + 0x28]
mov ebp, dword [eax + 0xc]
bswap ebp
mov dword [ecx + 0x140c], ebp
je 0x42af09
cmp dword [esp + 0x2c], 0x18
je 0x42b3b7
cmp dword [esp + 0x2c], 0x20
je 0x42adb5
add esp, 0x14
pop ebx
pop esi
pop edi
pop ebp
ret 0xc
mov eax, dword [eax + 0x10]
mov dword [esp + 0xc], 0x501c20
mov dword [esp + 8], ebp
bswap eax
mov dword [ecx + 0x1410], eax
mov eax, dword [esp + 0x28]
mov eax, dword [eax + 0x14]
bswap eax
mov dword [ecx + 0x1414], eax
mov eax, dword [esp + 0x28]
mov eax, dword [eax + 0x18]
bswap eax
mov dword [ecx + 0x1418], eax
mov eax, dword [esp + 0x28]
mov eax, dword [eax + 0x1c]
bswap eax
mov dword [ecx + 0x141c], eax
jmp 0x42ae74
mov edi, eax
add esi, 0x20
ror edi, 8
mov eax, edi
mov ebp, edi
movzx eax, al
shr ebp, 0x18
movzx ebp, byte [ecx + ebp*4 + 0x1000]
mov eax, dword [ecx + eax*4 + 0x1000]
and eax, 0xff00
or eax, ebp
xor eax, dword [esi - 0x10]
mov ebp, edi
shr ebp, 0x10
mov dword [esp + 0x10], eax
mov eax, ebp
movzx ebp, al
mov eax, edi
movzx edi, ah
mov ebp, dword [ecx + ebp*4 + 0x1000]
mov eax, dword [esp + 0x10]
mov edi, dword [ecx + edi*4 + 0x1000]
and ebp, 0xff000000
and edi, 0xff0000
or ebp, edi
xor eax, ebp
mov dword [esi + 0x10], eax
xor eax, dword [esi - 0xc]
mov dword [esi + 0x14], eax
xor eax, dword [esi - 8]
xor edx, eax
mov dword [esi + 0x18], eax
mov dword [esi + 0x1c], edx
mov edx, dword [esi + 0x1c]
mov ebp, dword [esp + 0xc]
movzx eax, dl
xor ebx, dword [ebp]
movzx edi, dh
mov eax, dword [ecx + eax*4 + 0x1000]
mov edi, dword [ecx + edi*4 + 0x1000]
and eax, 0xff00
and edi, 0xff0000
xor ebx, eax
mov eax, edx
shr eax, 0x18
movzx eax, byte [ecx + eax*4 + 0x1000]
xor eax, ebx
mov ebx, edx
shr ebx, 0x10
movzx ebx, bl
mov ebx, dword [ecx + ebx*4 + 0x1000]
and ebx, 0xff000000
or ebx, edi
xor ebx, eax
xor dword [esp], ebx
mov eax, dword [esp]
xor dword [esp + 4], eax
mov edi, dword [esp + 4]
xor dword [esp + 8], edi
mov dword [esi + 0x20], ebx
mov dword [esi + 0x24], eax
mov dword [esi + 0x28], edi
mov eax, dword [esp + 8]
mov edi, ebp
add edi, 4
mov ebp, 0x501c3c
cmp ebp, edi
mov dword [esp + 0xc], edi
mov dword [esi + 0x2c], eax
jne 0x42ae00
add esp, 0x14
pop ebx
pop esi
pop edi
pop ebp
ret 0xc
mov eax, ebp
mov esi, ecx
xor ebx, 0x1000000
movzx eax, al
mov edx, ebp
mov ecx, dword [ecx + eax*4 + 0x1000]
mov eax, ebp
shr edx, 0x10
shr eax, 0x18
movzx edx, dl
movzx eax, byte [esi + eax*4 + 0x1000]
mov edx, dword [esi + edx*4 + 0x1000]
and ecx, 0xff00
xor ecx, ebx
mov ebx, dword [esp]
and edx, 0xff000000
xor ecx, eax
mov eax, ebp
movzx eax, ah
mov eax, dword [esi + eax*4 + 0x1000]
and eax, 0xff0000
or eax, edx
mov edx, ebp
mov ebp, esi
xor ecx, eax
mov eax, dword [esp + 4]
xor ebx, ecx
mov dword [esi + 0x1410], ecx
xor ecx, 0x2000000
mov dword [esi + 0x1414], ebx
xor eax, ebx
xor edx, eax
mov dword [esi + 0x1418], eax
mov dword [esp], eax
mov dword [esi + 0x141c], edx
mov esi, edx
shr esi, 0x10
mov eax, esi
movzx esi, al
mov eax, dword [esp]
mov esi, dword [ebp + esi*4 + 0x1000]
and esi, 0xff000000
mov edi, esi
movzx esi, dh
mov esi, dword [ebp + esi*4 + 0x1000]
and esi, 0xff0000
or esi, edi
movzx edi, dl
mov edi, dword [ebp + edi*4 + 0x1000]
and edi, 0xff00
xor ecx, edi
mov edi, edx
shr edi, 0x18
movzx edi, byte [ebp + edi*4 + 0x1000]
xor ecx, edi
xor ecx, esi
xor ebx, ecx
mov dword [ebp + 0x1420], ecx
xor ecx, 0x4000000
xor eax, ebx
mov dword [ebp + 0x1424], ebx
xor edx, eax
mov dword [ebp + 0x1428], eax
movzx esi, dl
mov dword [ebp + 0x142c], edx
movzx edi, dh
mov esi, dword [ebp + esi*4 + 0x1000]
mov edi, dword [ebp + edi*4 + 0x1000]
and esi, 0xff00
xor ecx, esi
mov esi, edx
shr esi, 0x18
movzx esi, byte [ebp + esi*4 + 0x1000]
xor ecx, esi
mov esi, edx
shr esi, 0x10
mov dword [esp], ecx
mov ecx, esi
movzx esi, cl
mov ecx, dword [esp]
mov esi, dword [ebp + esi*4 + 0x1000]
and esi, 0xff000000
and edi, 0xff0000
or esi, edi
xor ecx, esi
xor ebx, ecx
mov dword [ebp + 0x1430], ecx
xor ecx, 0x8000000
xor eax, ebx
mov dword [ebp + 0x1434], ebx
xor edx, eax
mov dword [ebp + 0x1438], eax
movzx esi, dl
mov dword [ebp + 0x143c], edx
mov edi, edx
mov esi, dword [ebp + esi*4 + 0x1000]
shr edi, 0x10
and esi, 0xff00
xor ecx, esi
mov esi, edx
shr esi, 0x18
movzx esi, byte [ebp + esi*4 + 0x1000]
xor ecx, esi
movzx esi, dh
mov dword [esp], ecx
mov ecx, edi
mov esi, dword [ebp + esi*4 + 0x1000]
movzx edi, cl
mov edi, dword [ebp + edi*4 + 0x1000]
and esi, 0xff0000
and edi, 0xff000000
or esi, edi
xor esi, dword [esp]
xor ebx, esi
mov dword [ebp + 0x1440], esi
xor esi, 0x10000000
xor eax, ebx
mov dword [ebp + 0x1444], ebx
xor edx, eax
mov dword [ebp + 0x1448], eax
movzx ecx, dl
mov dword [ebp + 0x144c], edx
mov edi, edx
mov ecx, dword [ebp + ecx*4 + 0x1000]
shr edi, 0x10
and ecx, 0xff00
xor esi, ecx
mov ecx, edx
shr ecx, 0x18
movzx ecx, byte [ebp + ecx*4 + 0x1000]
xor esi, ecx
movzx ecx, dh
mov ecx, dword [ebp + ecx*4 + 0x1000]
and ecx, 0xff0000
mov dword [esp], ecx
mov ecx, edi
movzx edi, cl
mov ecx, dword [esp]
mov edi, dword [ebp + edi*4 + 0x1000]
and edi, 0xff000000
or ecx, edi
xor esi, ecx
xor ebx, esi
mov dword [ebp + 0x1450], esi
xor eax, ebx
mov dword [ebp + 0x1454], ebx
xor edx, eax
mov dword [ebp + 0x1458], eax
xor esi, 0x20000000
movzx ecx, dl
mov dword [ebp + 0x145c], edx
mov edi, edx
mov ecx, dword [ebp + ecx*4 + 0x1000]
shr edi, 0x10
and ecx, 0xff00
xor esi, ecx
mov ecx, edx
shr ecx, 0x18
movzx ecx, byte [ebp + ecx*4 + 0x1000]
xor esi, ecx
movzx ecx, dh
mov ecx, dword [ebp + ecx*4 + 0x1000]
and ecx, 0xff0000
mov dword [esp], ecx
mov ecx, edi
movzx edi, cl
mov ecx, dword [esp]
mov edi, dword [ebp + edi*4 + 0x1000]
and edi, 0xff000000
or ecx, edi
mov edi, ebp
xor esi, ecx
mov ecx, ebx
xor ecx, esi
mov dword [ebp + 0x1460], esi
xor esi, 0x40000000
xor eax, ecx
mov dword [ebp + 0x1464], ecx
xor edx, eax
mov dword [edi + 0x1468], eax
mov ebx, eax
movzx eax, dl
mov dword [ebp + 0x146c], edx
mov edi, edx
mov eax, dword [ebp + eax*4 + 0x1000]
shr edi, 0x10
and eax, 0xff00
xor eax, esi
mov esi, edx
shr esi, 0x18
movzx esi, byte [ebp + esi*4 + 0x1000]
xor eax, esi
movzx esi, dh
mov dword [esp], eax
mov eax, edi
mov esi, dword [ebp + esi*4 + 0x1000]
movzx edi, al
mov edi, dword [ebp + edi*4 + 0x1000]
mov eax, dword [esp]
and esi, 0xff0000
and edi, 0xff000000
or esi, edi
mov edi, ebp
xor eax, esi
xor ecx, eax
mov dword [ebp + 0x1470], eax
add eax, 0x80000000
xor ebx, ecx
mov dword [edi + 0x1474], ecx
mov esi, ecx
xor edx, ebx
mov dword [ebp + 0x1478], ebx
movzx ecx, dl
mov dword [ebp + 0x147c], edx
mov edi, edx
mov ecx, dword [ebp + ecx*4 + 0x1000]
and ecx, 0xff00
xor eax, ecx
mov ecx, edx
shr ecx, 0x18
movzx ecx, byte [ebp + ecx*4 + 0x1000]
xor eax, ecx
movzx ecx, dh
mov ecx, dword [ebp + ecx*4 + 0x1000]
mov dword [esp], eax
and ecx, 0xff0000
shr edi, 0x10
mov eax, edi
movzx edi, al
mov edi, dword [ebp + edi*4 + 0x1000]
and edi, 0xff000000
or ecx, edi
xor ecx, dword [esp]
xor esi, ecx
mov dword [ebp + 0x1480], ecx
xor ecx, 0x1b000000
xor ebx, esi
mov dword [ebp + 0x1484], esi
xor edx, ebx
mov dword [ebp + 0x1488], ebx
movzx eax, dl
mov dword [ebp + 0x148c], edx
mov edi, edx
mov eax, dword [ebp + eax*4 + 0x1000]
shr edi, 0x10
and eax, 0xff00
xor eax, ecx
mov ecx, edx
shr ecx, 0x18
movzx ecx, byte [ebp + ecx*4 + 0x1000]
xor eax, ecx
movzx ecx, dh
mov dword [esp], eax
mov eax, edi
mov ecx, dword [ebp + ecx*4 + 0x1000]
movzx edi, al
mov eax, dword [esp]
mov edi, dword [ebp + edi*4 + 0x1000]
and ecx, 0xff0000
and edi, 0xff000000
or ecx, edi
xor eax, ecx
mov ecx, ebx
xor esi, eax
mov dword [ebp + 0x1490], eax
xor eax, 0x36000000
xor ecx, esi
mov dword [ebp + 0x1494], esi
xor edx, ecx
mov dword [ebp + 0x1498], ecx
mov ebx, edx
mov dword [ebp + 0x149c], edx
shr ebx, 0x10
movzx ebx, bl
mov ebx, dword [ebp + ebx*4 + 0x1000]
mov edi, ebx
movzx ebx, dh
mov ebx, dword [ebp + ebx*4 + 0x1000]
and edi, 0xff000000
and ebx, 0xff0000
or ebx, edi
movzx edi, dl
mov edi, dword [ebp + edi*4 + 0x1000]
and edi, 0xff00
xor eax, edi
mov edi, edx
shr edi, 0x18
movzx edi, byte [ebp + edi*4 + 0x1000]
xor eax, edi
xor eax, ebx
mov dword [ebp + 0x14a0], eax
xor eax, esi
mov dword [ebp + 0x14a4], eax
xor eax, ecx
mov dword [ebp + 0x14a8], eax
xor eax, edx
mov dword [ebp + 0x14ac], eax
add esp, 0x14
pop ebx
pop esi
pop edi
pop ebp
ret 0xc
mov eax, dword [eax + 0x10]
mov edi, ecx
xor ebx, 0x1000000
bswap eax
mov dword [ecx + 0x1410], eax
mov eax, dword [esp + 0x28]
mov eax, dword [eax + 0x14]
bswap eax
movzx edx, ah
mov dword [ecx + 0x1414], eax
mov ecx, dword [ecx + edx*4 + 0x1000]
mov edx, eax
shr edx, 0x10
movzx edx, dl
mov edx, dword [edi + edx*4 + 0x1000]
and ecx, 0xff0000
and edx, 0xff000000
or ecx, edx
movzx edx, al
mov esi, ecx
mov ecx, eax
mov edx, dword [edi + edx*4 + 0x1000]
shr ecx, 0x18
movzx ecx, byte [edi + ecx*4 + 0x1000]
and edx, 0xff00
xor edx, ebx
mov ebx, dword [esp + 4]
xor edx, ecx
xor edx, esi
mov esi, dword [esp]
mov dword [edi + 0x1418], edx
xor esi, edx
mov dword [edi + 0x141c], esi
mov dword [esp], esi
xor ebx, esi
mov esi, dword [edi + 0x1410]
xor ebp, ebx
mov dword [edi + 0x1420], ebx
mov dword [edi + 0x1424], ebp
xor esi, ebp
xor eax, esi
mov dword [edi + 0x1428], esi
mov esi, eax
mov dword [edi + 0x142c], eax
shr esi, 0x10
mov ecx, esi
movzx esi, cl
mov ecx, edi
mov edi, dword [edi + esi*4 + 0x1000]
movzx esi, ah
mov esi, dword [ecx + esi*4 + 0x1000]
and edi, 0xff000000
and esi, 0xff0000
or edi, esi
movzx esi, al
mov dword [esp + 4], edi
mov edi, dword [ecx + esi*4 + 0x1000]
mov esi, eax
shr esi, 0x18
movzx esi, byte [ecx + esi*4 + 0x1000]
and edi, 0xff00
or esi, edi
mov edi, ecx
xor esi, 0x2000000
xor esi, dword [esp + 4]
xor edx, esi
mov esi, dword [esp]
mov dword [ecx + 0x1430], edx
xor esi, edx
xor ebx, esi
mov dword [ecx + 0x1434], esi
mov dword [esp], esi
mov esi, dword [ecx + 0x1428]
xor ebp, ebx
mov dword [ecx + 0x1438], ebx
mov dword [ecx + 0x143c], ebp
xor esi, ebp
xor eax, esi
mov dword [ecx + 0x1440], esi
mov esi, eax
mov dword [ecx + 0x1444], eax
shr esi, 0x10
mov ecx, esi
movzx esi, cl
mov ecx, edi
mov edi, dword [edi + esi*4 + 0x1000]
movzx esi, ah
mov esi, dword [ecx + esi*4 + 0x1000]
and edi, 0xff000000
and esi, 0xff0000
or edi, esi
movzx esi, al
mov dword [esp + 4], edi
mov edi, dword [ecx + esi*4 + 0x1000]
mov esi, eax
shr esi, 0x18
movzx esi, byte [ecx + esi*4 + 0x1000]
and edi, 0xff00
or esi, edi
mov edi, ecx
xor esi, 0x4000000
xor esi, dword [esp + 4]
xor edx, esi
mov esi, dword [esp]
mov dword [ecx + 0x1448], edx
xor esi, edx
mov dword [ecx + 0x144c], esi
mov dword [esp], esi
xor ebx, esi
mov esi, dword [ecx + 0x1440]
xor ebp, ebx
mov dword [ecx + 0x1450], ebx
mov dword [ecx + 0x1454], ebp
xor esi, ebp
xor eax, esi
mov dword [ecx + 0x1458], esi
mov esi, eax
mov dword [ecx + 0x145c], eax
shr esi, 0x10
mov ecx, esi
movzx esi, cl
mov ecx, edi
mov edi, dword [edi + esi*4 + 0x1000]
movzx esi, ah
mov esi, dword [ecx + esi*4 + 0x1000]
and edi, 0xff000000
and esi, 0xff0000
or edi, esi
movzx esi, al
mov dword [esp + 4], edi
mov edi, dword [ecx + esi*4 + 0x1000]
mov esi, eax
shr esi, 0x18
movzx esi, byte [ecx + esi*4 + 0x1000]
and edi, 0xff00
or esi, edi
mov edi, ecx
xor esi, 0x8000000
xor esi, dword [esp + 4]
xor edx, esi
mov esi, dword [esp]
mov dword [ecx + 0x1460], edx
xor esi, edx
xor ebx, esi
mov dword [ecx + 0x1464], esi
mov dword [esp], esi
mov esi, dword [ecx + 0x1458]
xor ebp, ebx
mov dword [ecx + 0x1468], ebx
mov dword [ecx + 0x146c], ebp
xor esi, ebp
xor eax, esi
mov dword [ecx + 0x1470], esi
mov esi, eax
mov dword [ecx + 0x1474], eax
shr esi, 0x10
mov ecx, esi
movzx esi, cl
mov ecx, edi
mov edi, dword [edi + esi*4 + 0x1000]
movzx esi, ah
mov esi, dword [ecx + esi*4 + 0x1000]
and edi, 0xff000000
and esi, 0xff0000
or edi, esi
movzx esi, al
mov dword [esp + 4], edi
mov edi, dword [ecx + esi*4 + 0x1000]
mov esi, eax
and edi, 0xff00
shr esi, 0x18
movzx esi, byte [ecx + esi*4 + 0x1000]
or esi, edi
mov edi, ecx
xor esi, 0x10000000
xor esi, dword [esp + 4]
xor edx, esi
mov esi, dword [esp]
mov dword [ecx + 0x1478], edx
xor esi, edx
mov dword [ecx + 0x147c], esi
mov dword [esp], esi
xor ebx, esi
mov esi, dword [ecx + 0x1470]
xor ebp, ebx
mov dword [ecx + 0x1480], ebx
mov dword [ecx + 0x1484], ebp
xor esi, ebp
xor eax, esi
mov dword [ecx + 0x1488], esi
mov esi, eax
mov dword [ecx + 0x148c], eax
shr esi, 0x10
mov ecx, esi
movzx esi, cl
mov ecx, edi
mov edi, dword [edi + esi*4 + 0x1000]
movzx esi, ah
mov esi, dword [ecx + esi*4 + 0x1000]
and edi, 0xff000000
and esi, 0xff0000
or edi, esi
movzx esi, al
mov dword [esp + 4], edi
mov edi, dword [ecx + esi*4 + 0x1000]
mov esi, eax
shr esi, 0x18
movzx esi, byte [ecx + esi*4 + 0x1000]
and edi, 0xff00
or esi, edi
mov edi, ecx
xor esi, 0x20000000
xor esi, dword [esp + 4]
xor edx, esi
mov esi, dword [esp]
mov dword [ecx + 0x1490], edx
xor esi, edx
mov dword [ecx + 0x1494], esi
xor ebx, esi
mov dword [esp], esi
mov esi, dword [edi + 0x1488]
xor ebp, ebx
mov dword [edi + 0x1498], ebx
mov dword [edi + 0x149c], ebp
xor esi, ebp
xor eax, esi
mov dword [edi + 0x14a0], esi
mov esi, eax
mov dword [edi + 0x14a4], eax
shr esi, 0x10
mov ecx, esi
movzx esi, cl
mov ecx, edi
mov edi, dword [edi + esi*4 + 0x1000]
movzx esi, ah
mov esi, dword [ecx + esi*4 + 0x1000]
and edi, 0xff000000
and esi, 0xff0000
or edi, esi
movzx esi, al
mov dword [esp + 4], edi
mov edi, dword [ecx + esi*4 + 0x1000]
mov esi, eax
shr esi, 0x18
movzx esi, byte [ecx + esi*4 + 0x1000]
and edi, 0xff00
or esi, edi
mov edi, ecx
xor esi, 0x40000000
xor esi, dword [esp + 4]
xor edx, esi
mov esi, dword [esp]
mov dword [ecx + 0x14a8], edx
xor esi, edx
mov dword [ecx + 0x14ac], esi
mov dword [esp], esi
xor ebx, esi
mov esi, dword [edi + 0x14a0]
xor ebp, ebx
mov dword [edi + 0x14b0], ebx
mov dword [edi + 0x14b4], ebp
xor esi, ebp
xor eax, esi
mov dword [edi + 0x14b8], esi
mov esi, eax
mov dword [edi + 0x14bc], eax
shr esi, 0x10
mov ecx, esi
movzx esi, cl
mov ecx, edi
mov edi, dword [edi + esi*4 + 0x1000]
movzx esi, ah
mov esi, dword [ecx + esi*4 + 0x1000]
and edi, 0xff000000
and esi, 0xff0000
or edi, esi
movzx esi, al
shr eax, 0x18
movzx eax, byte [ecx + eax*4 + 0x1000]
mov esi, dword [ecx + esi*4 + 0x1000]
and esi, 0xff00
or esi, eax
mov eax, ecx
add esi, 0x80000000
xor edi, esi
xor edx, edi
mov dword [ecx + 0x14c0], edx
mov ecx, dword [esp]
xor ecx, edx
xor ebx, ecx
mov dword [eax + 0x14c4], ecx
xor ebp, ebx
mov dword [eax + 0x14c8], ebx
mov dword [eax + 0x14cc], ebp
add esp, 0x14
pop ebx
pop esi
pop edi
pop ebp
ret 0xc